relenv 0.18.0__py3-none-any.whl → 0.18.2__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- relenv/__init__.py +1 -1
- relenv/__main__.py +1 -1
- relenv/_scripts/install_vc_build.ps1 +150 -0
- relenv/_toolchain/aarch64/aarch64-linux-gnu-ct-ng.config +798 -0
- relenv/_toolchain/aarch64/x86_64-linux-gnu-ct-ng.config +800 -0
- relenv/_toolchain/x86_64/aarch64-linux-gnu-ct-ng.config +799 -0
- relenv/_toolchain/x86_64/x86_64-linux-gnu-ct-ng.config +801 -0
- relenv/build/__init__.py +8 -1
- relenv/build/common.py +20 -5
- relenv/build/darwin.py +9 -10
- relenv/build/linux.py +69 -82
- relenv/build/windows.py +11 -9
- relenv/buildenv.py +10 -10
- relenv/check.py +1 -1
- relenv/common.py +11 -2
- relenv/create.py +1 -1
- relenv/fetch.py +1 -1
- relenv/relocate.py +1 -1
- relenv/runtime.py +23 -2
- relenv/toolchain.py +1 -1
- {relenv-0.18.0.dist-info → relenv-0.18.2.dist-info}/METADATA +3 -2
- relenv-0.18.2.dist-info/RECORD +38 -0
- {relenv-0.18.0.dist-info → relenv-0.18.2.dist-info}/WHEEL +1 -1
- tests/conftest.py +1 -1
- tests/test_build.py +1 -2
- tests/test_common.py +1 -1
- tests/test_create.py +1 -1
- tests/test_downloads.py +1 -1
- tests/test_fips_photon.py +1 -1
- tests/test_relocate.py +1 -1
- tests/test_runtime.py +1 -1
- tests/test_toolchain.py +1 -1
- tests/test_verify_build.py +91 -19
- relenv-0.18.0.dist-info/RECORD +0 -33
- {relenv-0.18.0.dist-info → relenv-0.18.2.dist-info}/entry_points.txt +0 -0
- {relenv-0.18.0.dist-info → relenv-0.18.2.dist-info/licenses}/LICENSE.md +0 -0
- {relenv-0.18.0.dist-info → relenv-0.18.2.dist-info/licenses}/NOTICE +0 -0
- {relenv-0.18.0.dist-info → relenv-0.18.2.dist-info}/top_level.txt +0 -0
relenv/build/__init__.py
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright 2022-
|
|
1
|
+
# Copyright 2022-2025 Broadcom.
|
|
2
2
|
# SPDX-License-Identifier: Apache-2
|
|
3
3
|
"""
|
|
4
4
|
The ``relenv build`` command.
|
|
@@ -86,6 +86,12 @@ def setup_parser(subparsers):
|
|
|
86
86
|
action="store_true",
|
|
87
87
|
help="Force downloading source tarballs even if they exist",
|
|
88
88
|
)
|
|
89
|
+
build_subparser.add_argument(
|
|
90
|
+
"--download-only",
|
|
91
|
+
default=False,
|
|
92
|
+
action="store_true",
|
|
93
|
+
help="Stop after downloading source tarballs",
|
|
94
|
+
)
|
|
89
95
|
build_subparser.add_argument(
|
|
90
96
|
"--step",
|
|
91
97
|
dest="steps",
|
|
@@ -179,6 +185,7 @@ def main(args):
|
|
|
179
185
|
clean=args.clean,
|
|
180
186
|
cleanup=not args.no_cleanup,
|
|
181
187
|
force_download=args.force_download,
|
|
188
|
+
download_only=args.download_only,
|
|
182
189
|
show_ui=show_ui,
|
|
183
190
|
log_level=args.log_level.upper(),
|
|
184
191
|
)
|
relenv/build/common.py
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright 2022-
|
|
1
|
+
# Copyright 2022-2025 Broadcom.
|
|
2
2
|
# SPDX-License-Identifier: Apache-2
|
|
3
3
|
"""
|
|
4
4
|
Build process common methods.
|
|
@@ -801,7 +801,6 @@ class Builder:
|
|
|
801
801
|
recipies=None,
|
|
802
802
|
build_default=build_default,
|
|
803
803
|
populate_env=populate_env,
|
|
804
|
-
force_download=False,
|
|
805
804
|
arch="x86_64",
|
|
806
805
|
version="",
|
|
807
806
|
):
|
|
@@ -824,7 +823,6 @@ class Builder:
|
|
|
824
823
|
|
|
825
824
|
self.build_default = build_default
|
|
826
825
|
self.populate_env = populate_env
|
|
827
|
-
self.force_download = force_download
|
|
828
826
|
self.toolchains = get_toolchain(root=self.dirs.root)
|
|
829
827
|
self.set_arch(self.arch)
|
|
830
828
|
|
|
@@ -842,7 +840,6 @@ class Builder:
|
|
|
842
840
|
recipies,
|
|
843
841
|
self.build_default,
|
|
844
842
|
self.populate_env,
|
|
845
|
-
self.force_download,
|
|
846
843
|
self.arch,
|
|
847
844
|
version,
|
|
848
845
|
)
|
|
@@ -1207,6 +1204,7 @@ class Builder:
|
|
|
1207
1204
|
clean=True,
|
|
1208
1205
|
cleanup=True,
|
|
1209
1206
|
force_download=False,
|
|
1207
|
+
download_only=False,
|
|
1210
1208
|
show_ui=False,
|
|
1211
1209
|
log_level="WARNING",
|
|
1212
1210
|
):
|
|
@@ -1267,6 +1265,8 @@ class Builder:
|
|
|
1267
1265
|
# Start a process for each build passing it an event used to notify each
|
|
1268
1266
|
# process if it's dependencies have finished.
|
|
1269
1267
|
self.download_files(steps, force_download=force_download, show_ui=show_ui)
|
|
1268
|
+
if download_only:
|
|
1269
|
+
return
|
|
1270
1270
|
self.build(steps, cleanup, show_ui=show_ui, log_level=log_level)
|
|
1271
1271
|
|
|
1272
1272
|
def check_versions(self):
|
|
@@ -1407,7 +1407,13 @@ def install_runtime(sitepackages):
|
|
|
1407
1407
|
relenv = sitepackages / "relenv"
|
|
1408
1408
|
os.makedirs(relenv, exist_ok=True)
|
|
1409
1409
|
|
|
1410
|
-
for name in [
|
|
1410
|
+
for name in [
|
|
1411
|
+
"runtime.py",
|
|
1412
|
+
"relocate.py",
|
|
1413
|
+
"common.py",
|
|
1414
|
+
"buildenv.py",
|
|
1415
|
+
"__init__.py",
|
|
1416
|
+
]:
|
|
1411
1417
|
src = MODULE_DIR / name
|
|
1412
1418
|
dest = relenv / name
|
|
1413
1419
|
with io.open(src, "r") as rfp:
|
|
@@ -1495,6 +1501,15 @@ def finalize(env, dirs, logfp):
|
|
|
1495
1501
|
format_shebang("../../../bin/python3"),
|
|
1496
1502
|
)
|
|
1497
1503
|
|
|
1504
|
+
shutil.copy(
|
|
1505
|
+
pathlib.Path(dirs.toolchain)
|
|
1506
|
+
/ env["RELENV_HOST"]
|
|
1507
|
+
/ "sysroot"
|
|
1508
|
+
/ "lib"
|
|
1509
|
+
/ "libstdc++.so.6",
|
|
1510
|
+
libdir,
|
|
1511
|
+
)
|
|
1512
|
+
|
|
1498
1513
|
# Moved in python 3.13 or removed?
|
|
1499
1514
|
if (pymodules / "cgi.py").exists():
|
|
1500
1515
|
patch_shebang(
|
relenv/build/darwin.py
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright
|
|
1
|
+
# Copyright 2025 Broadcom.
|
|
2
2
|
# SPDX-License-Identifier: Apache-2
|
|
3
3
|
"""
|
|
4
4
|
The darwin build process.
|
|
@@ -72,23 +72,22 @@ def build_python(env, dirs, logfp):
|
|
|
72
72
|
runcmd(["make", "install"], env=env, stderr=logfp, stdout=logfp)
|
|
73
73
|
|
|
74
74
|
|
|
75
|
-
build = builds.add("darwin", populate_env=populate_env, version="3.10.
|
|
75
|
+
build = builds.add("darwin", populate_env=populate_env, version="3.10.17")
|
|
76
76
|
|
|
77
77
|
build.add(
|
|
78
78
|
"openssl",
|
|
79
79
|
build_func=build_openssl,
|
|
80
80
|
download={
|
|
81
81
|
"url": "https://github.com/openssl/openssl/releases/download/openssl-{version}/openssl-{version}.tar.gz",
|
|
82
|
-
"version": "3.2.
|
|
83
|
-
"checksum": "
|
|
82
|
+
"version": "3.2.4",
|
|
83
|
+
"checksum": "2247802a1193c0f8eb41c870e8de45a2241422d5",
|
|
84
84
|
},
|
|
85
85
|
)
|
|
86
86
|
|
|
87
87
|
build.add(
|
|
88
88
|
"XZ",
|
|
89
89
|
download={
|
|
90
|
-
"
|
|
91
|
-
"url": "https://woz.io/relenv/dependencies/xz-{version}.tar.gz",
|
|
90
|
+
"url": "http://tukaani.org/xz/xz-{version}.tar.gz",
|
|
92
91
|
"version": "5.6.2",
|
|
93
92
|
"checksum": "0d6b10e4628fe08e19293c65e8dbcaade084a083",
|
|
94
93
|
},
|
|
@@ -117,7 +116,7 @@ build.add(
|
|
|
117
116
|
"url": "https://www.python.org/ftp/python/{version}/Python-{version}.tar.xz",
|
|
118
117
|
"fallback_url": "https://woz.io/relenv/dependencies/Python-{version}.tar.gz",
|
|
119
118
|
"version": build.version,
|
|
120
|
-
"checksum": "
|
|
119
|
+
"checksum": "d31d548cd2c5ca2ae713bebe346ba15e8406633a",
|
|
121
120
|
},
|
|
122
121
|
)
|
|
123
122
|
|
|
@@ -131,16 +130,16 @@ build.add(
|
|
|
131
130
|
)
|
|
132
131
|
|
|
133
132
|
build = build.copy(
|
|
134
|
-
version="3.11.
|
|
133
|
+
version="3.11.11", checksum="acf539109b024d3c5f1fc63d6e7f08cd294ba56d"
|
|
135
134
|
)
|
|
136
135
|
builds.add("darwin", builder=build)
|
|
137
136
|
|
|
138
137
|
build = build.copy(
|
|
139
|
-
version="3.12.
|
|
138
|
+
version="3.12.9", checksum="465d8a664e63dc5aa1f0d90cd1d0000a970ee2fb"
|
|
140
139
|
)
|
|
141
140
|
builds.add("darwin", builder=build)
|
|
142
141
|
|
|
143
142
|
build = build.copy(
|
|
144
|
-
version="3.13.
|
|
143
|
+
version="3.13.3", checksum="f26085cf12daef7b60b8a6fe93ef988b9a094aea"
|
|
145
144
|
)
|
|
146
145
|
builds.add("darwin", builder=build)
|
relenv/build/linux.py
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright
|
|
1
|
+
# Copyright 2025 Broadcom.
|
|
2
2
|
# SPDX-License-Identifier: Apache-2
|
|
3
3
|
"""
|
|
4
4
|
The linux build process.
|
|
@@ -35,38 +35,36 @@ def populate_env(env, dirs):
|
|
|
35
35
|
:type dirs: ``relenv.build.common.Dirs``
|
|
36
36
|
"""
|
|
37
37
|
# CC and CXX need to be to have the full path to the executable
|
|
38
|
-
env["CC"] = "{}/bin/{}-gcc
|
|
39
|
-
env["CXX"] = "{}/bin/{}-g++
|
|
38
|
+
env["CC"] = f"{dirs.toolchain}/bin/{env['RELENV_HOST']}-gcc"
|
|
39
|
+
env["CXX"] = f"{dirs.toolchain}/bin/{env['RELENV_HOST']}-g++"
|
|
40
40
|
# Add our toolchain binaries to the path. We also add the bin directory of
|
|
41
41
|
# our prefix so that libtirpc can find krb5-config
|
|
42
|
-
env["PATH"] = "{}/bin/:{}/bin/:{PATH}"
|
|
42
|
+
env["PATH"] = f"{dirs.toolchain}/bin/:{dirs.prefix}/bin/:{env['PATH']}"
|
|
43
43
|
ldflags = [
|
|
44
44
|
"-Wl,--build-id=sha1",
|
|
45
|
-
"-Wl,--rpath={prefix}/lib",
|
|
46
|
-
"-L{prefix}/lib",
|
|
47
|
-
"-L{}/{RELENV_HOST}/sysroot/lib"
|
|
48
|
-
"-static-libstdc++",
|
|
45
|
+
f"-Wl,--rpath={dirs.prefix}/lib",
|
|
46
|
+
f"-L{dirs.prefix}/lib",
|
|
47
|
+
f"-L{dirs.toolchain}/{env['RELENV_HOST']}/sysroot/lib",
|
|
49
48
|
]
|
|
50
|
-
env["LDFLAGS"] = " ".join(ldflags)
|
|
49
|
+
env["LDFLAGS"] = " ".join(ldflags)
|
|
51
50
|
cflags = [
|
|
52
51
|
"-g",
|
|
53
|
-
"-I{prefix}/include",
|
|
54
|
-
"-I{prefix}/include/readline",
|
|
55
|
-
"-I{prefix}/include/ncursesw",
|
|
56
|
-
"-I{}/{RELENV_HOST}/sysroot/usr/include"
|
|
52
|
+
f"-I{dirs.prefix}/include",
|
|
53
|
+
f"-I{dirs.prefix}/include/readline",
|
|
54
|
+
f"-I{dirs.prefix}/include/ncursesw",
|
|
55
|
+
f"-I{dirs.toolchain}/{env['RELENV_HOST']}/sysroot/usr/include",
|
|
57
56
|
]
|
|
58
|
-
env["CFLAGS"] = " ".join(cflags)
|
|
57
|
+
env["CFLAGS"] = " ".join(cflags)
|
|
59
58
|
# CPPFLAGS are needed for Python's setup.py to find the 'nessicery bits'
|
|
60
59
|
# for things like zlib and sqlite.
|
|
61
60
|
cpplags = [
|
|
62
|
-
"-I{prefix}/include",
|
|
63
|
-
"-I{prefix}/include/readline",
|
|
64
|
-
"-I{prefix}/include/ncursesw",
|
|
65
|
-
"-I{}/{RELENV_HOST}/sysroot/usr/include"
|
|
61
|
+
f"-I{dirs.prefix}/include",
|
|
62
|
+
f"-I{dirs.prefix}/include/readline",
|
|
63
|
+
f"-I{dirs.prefix}/include/ncursesw",
|
|
64
|
+
f"-I{dirs.toolchain}/{env['RELENV_HOST']}/sysroot/usr/include",
|
|
66
65
|
]
|
|
67
|
-
env["
|
|
68
|
-
env["
|
|
69
|
-
env["LD_LIBRARY_PATH"] = "{prefix}/lib"
|
|
66
|
+
# env["CXXFLAGS"] = " ".join(cpplags)
|
|
67
|
+
env["CPPFLAGS"] = " ".join(cpplags)
|
|
70
68
|
env["PKG_CONFIG_PATH"] = f"{dirs.prefix}/lib/pkgconfig"
|
|
71
69
|
|
|
72
70
|
|
|
@@ -85,12 +83,12 @@ def build_bzip2(env, dirs, logfp):
|
|
|
85
83
|
[
|
|
86
84
|
"make",
|
|
87
85
|
"-j8",
|
|
88
|
-
"PREFIX={
|
|
89
|
-
"LDFLAGS={
|
|
86
|
+
f"PREFIX={dirs.prefix}",
|
|
87
|
+
f"LDFLAGS={env['LDFLAGS']}",
|
|
90
88
|
"CFLAGS=-fPIC",
|
|
91
|
-
"CC={
|
|
92
|
-
"BUILD=
|
|
93
|
-
"HOST={
|
|
89
|
+
f"CC={env['CC']}",
|
|
90
|
+
"BUILD=x86_64-linux-gnu",
|
|
91
|
+
f"HOST={env['RELENV_HOST']}",
|
|
94
92
|
"install",
|
|
95
93
|
],
|
|
96
94
|
env=env,
|
|
@@ -102,10 +100,10 @@ def build_bzip2(env, dirs, logfp):
|
|
|
102
100
|
"make",
|
|
103
101
|
"-f",
|
|
104
102
|
"Makefile-libbz2_so",
|
|
105
|
-
"CC={
|
|
106
|
-
"LDFLAGS={
|
|
107
|
-
"BUILD=
|
|
108
|
-
"HOST={
|
|
103
|
+
f"CC={env['CC']}",
|
|
104
|
+
f"LDFLAGS={env['LDFLAGS']}",
|
|
105
|
+
"BUILD=x86_64-linux-gnu",
|
|
106
|
+
f"HOST={env['RELENV_HOST']}",
|
|
109
107
|
],
|
|
110
108
|
env=env,
|
|
111
109
|
stderr=logfp,
|
|
@@ -128,10 +126,10 @@ def build_libxcrypt(env, dirs, logfp):
|
|
|
128
126
|
runcmd(
|
|
129
127
|
[
|
|
130
128
|
"./configure",
|
|
131
|
-
"--prefix={
|
|
129
|
+
f"--prefix={dirs.prefix}",
|
|
132
130
|
# "--enable-libgdbm-compat",
|
|
133
|
-
"--build={
|
|
134
|
-
"--host={
|
|
131
|
+
f"--build={env['RELENV_BUILD']}",
|
|
132
|
+
f"--host={env['RELENV_HOST']}",
|
|
135
133
|
],
|
|
136
134
|
env=env,
|
|
137
135
|
stderr=logfp,
|
|
@@ -155,10 +153,10 @@ def build_gdbm(env, dirs, logfp):
|
|
|
155
153
|
runcmd(
|
|
156
154
|
[
|
|
157
155
|
"./configure",
|
|
158
|
-
"--prefix={
|
|
156
|
+
f"--prefix={dirs.prefix}",
|
|
159
157
|
"--enable-libgdbm-compat",
|
|
160
|
-
"--build={
|
|
161
|
-
"--host={
|
|
158
|
+
f"--build={env['RELENV_BUILD']}",
|
|
159
|
+
f"--host={env['RELENV_HOST']}",
|
|
162
160
|
],
|
|
163
161
|
env=env,
|
|
164
162
|
stderr=logfp,
|
|
@@ -205,19 +203,20 @@ def build_ncurses(env, dirs, logfp):
|
|
|
205
203
|
"--disable-stripping",
|
|
206
204
|
f"--with-pkg-config={dirs.prefix}/lib/pkgconfig",
|
|
207
205
|
"--enable-pc-files",
|
|
208
|
-
"--build={
|
|
209
|
-
"--host={
|
|
206
|
+
f"--build={env['RELENV_BUILD']}",
|
|
207
|
+
f"--host={env['RELENV_HOST']}",
|
|
210
208
|
],
|
|
211
209
|
env=env,
|
|
212
210
|
stderr=logfp,
|
|
213
211
|
stdout=logfp,
|
|
214
212
|
)
|
|
215
213
|
runcmd(["make", "-j8"], env=env, stderr=logfp, stdout=logfp)
|
|
214
|
+
ticdir = str(pathlib.Path(dirs.tmpbuild) / "progs" / "tic")
|
|
216
215
|
runcmd(
|
|
217
216
|
[
|
|
218
217
|
"make",
|
|
219
|
-
"DESTDIR={
|
|
220
|
-
"TIC_PATH={}"
|
|
218
|
+
f"DESTDIR={dirs.prefix}",
|
|
219
|
+
f"TIC_PATH={ticdir}",
|
|
221
220
|
"install",
|
|
222
221
|
],
|
|
223
222
|
env=env,
|
|
@@ -240,12 +239,12 @@ def build_readline(env, dirs, logfp):
|
|
|
240
239
|
env["LDFLAGS"] = f"{env['LDFLAGS']} -ltinfow"
|
|
241
240
|
cmd = [
|
|
242
241
|
"./configure",
|
|
243
|
-
"--prefix={
|
|
242
|
+
f"--prefix={dirs.prefix}",
|
|
244
243
|
]
|
|
245
244
|
if env["RELENV_HOST"].find("linux") > -1:
|
|
246
245
|
cmd += [
|
|
247
|
-
"--build={
|
|
248
|
-
"--host={
|
|
246
|
+
f"--build={env['RELENV_BUILD']}",
|
|
247
|
+
f"--host={env['RELENV_HOST']}",
|
|
249
248
|
]
|
|
250
249
|
runcmd(cmd, env=env, stderr=logfp, stdout=logfp)
|
|
251
250
|
runcmd(["make", "-j8"], env=env, stderr=logfp, stdout=logfp)
|
|
@@ -266,10 +265,10 @@ def build_libffi(env, dirs, logfp):
|
|
|
266
265
|
runcmd(
|
|
267
266
|
[
|
|
268
267
|
"./configure",
|
|
269
|
-
"--prefix={
|
|
268
|
+
f"--prefix={dirs.prefix}",
|
|
270
269
|
"--disable-multi-os-directory",
|
|
271
|
-
"--build={
|
|
272
|
-
"--host={
|
|
270
|
+
f"--build={env['RELENV_BUILD']}",
|
|
271
|
+
f"--host={env['RELENV_HOST']}",
|
|
273
272
|
],
|
|
274
273
|
env=env,
|
|
275
274
|
stderr=logfp,
|
|
@@ -294,12 +293,12 @@ def build_zlib(env, dirs, logfp):
|
|
|
294
293
|
:param logfp: A handle for the log file
|
|
295
294
|
:type logfp: file
|
|
296
295
|
"""
|
|
297
|
-
env["CFLAGS"] = "-fPIC {
|
|
296
|
+
env["CFLAGS"] = f"-fPIC {env['CFLAGS']}"
|
|
298
297
|
runcmd(
|
|
299
298
|
[
|
|
300
299
|
"./configure",
|
|
301
|
-
"--prefix={
|
|
302
|
-
"--libdir={}/lib"
|
|
300
|
+
f"--prefix={dirs.prefix}",
|
|
301
|
+
f"--libdir={dirs.prefix}/lib",
|
|
303
302
|
"--shared",
|
|
304
303
|
],
|
|
305
304
|
env=env,
|
|
@@ -329,11 +328,11 @@ def build_krb(env, dirs, logfp):
|
|
|
329
328
|
runcmd(
|
|
330
329
|
[
|
|
331
330
|
"./configure",
|
|
332
|
-
"--prefix={
|
|
331
|
+
f"--prefix={dirs.prefix}",
|
|
333
332
|
"--without-system-verto",
|
|
334
333
|
"--without-libedit",
|
|
335
|
-
"--build={
|
|
336
|
-
"--host={
|
|
334
|
+
f"--build={env['RELENV_BUILD']}",
|
|
335
|
+
f"--host={env['RELENV_HOST']}",
|
|
337
336
|
],
|
|
338
337
|
env=env,
|
|
339
338
|
stderr=logfp,
|
|
@@ -354,9 +353,9 @@ def build_python(env, dirs, logfp):
|
|
|
354
353
|
:param logfp: A handle for the log file
|
|
355
354
|
:type logfp: file
|
|
356
355
|
"""
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
356
|
+
ldflagopt = f"-Wl,--rpath={dirs.prefix}/lib"
|
|
357
|
+
if ldflagopt not in env["LDFLAGS"]:
|
|
358
|
+
env["LDFLAGS"] = f"{ldflagopt} {env['LDFLAGS']}"
|
|
360
359
|
|
|
361
360
|
# Needed when using a toolchain even if build and host match.
|
|
362
361
|
runcmd(
|
|
@@ -433,6 +432,8 @@ def build_python(env, dirs, logfp):
|
|
|
433
432
|
with io.open("Modules/Setup", "a+") as fp:
|
|
434
433
|
fp.seek(0, io.SEEK_END)
|
|
435
434
|
fp.write("*disabled*\n" "_tkinter\n" "nsl\n" "nis\n")
|
|
435
|
+
for _ in ["LDFLAGS", "CFLAGS", "CPPFLAGS", "CXX", "CC"]:
|
|
436
|
+
env.pop(_)
|
|
436
437
|
runcmd(["make", "-j8"], env=env, stderr=logfp, stdout=logfp)
|
|
437
438
|
runcmd(["make", "install"], env=env, stderr=logfp, stdout=logfp)
|
|
438
439
|
|
|
@@ -444,16 +445,15 @@ def build_python(env, dirs, logfp):
|
|
|
444
445
|
# runcmd([str(python), "-m", "ensurepip", "-U"], env=env, stderr=logfp, stdout=logfp)
|
|
445
446
|
|
|
446
447
|
|
|
447
|
-
build = builds.add("linux", populate_env=populate_env, version="3.10.
|
|
448
|
+
build = builds.add("linux", populate_env=populate_env, version="3.10.17")
|
|
448
449
|
|
|
449
450
|
build.add(
|
|
450
451
|
"openssl",
|
|
451
452
|
build_func=build_openssl,
|
|
452
453
|
download={
|
|
453
454
|
"url": "https://github.com/openssl/openssl/releases/download/openssl-{version}/openssl-{version}.tar.gz",
|
|
454
|
-
"
|
|
455
|
-
"
|
|
456
|
-
"checksum": "1c04294b2493a868ac5f65d166c29625181a31ed",
|
|
455
|
+
"version": "3.2.4",
|
|
456
|
+
"checksum": "2247802a1193c0f8eb41c870e8de45a2241422d5",
|
|
457
457
|
"checkfunc": tarball_version,
|
|
458
458
|
"checkurl": "https://www.openssl.org/source/",
|
|
459
459
|
},
|
|
@@ -466,7 +466,6 @@ build.add(
|
|
|
466
466
|
wait_on=["openssl"],
|
|
467
467
|
download={
|
|
468
468
|
"url": "https://www.openssl.org/source/openssl-{version}.tar.gz",
|
|
469
|
-
"fallback_url": "https://woz.io/relenv/dependencies/openssl-{version}.tar.gz",
|
|
470
469
|
"version": "3.0.8",
|
|
471
470
|
"checksum": "580d8a7232327fe1fa6e7db54ac060d4321f40ab",
|
|
472
471
|
"checkfunc": tarball_version,
|
|
@@ -479,8 +478,8 @@ build.add(
|
|
|
479
478
|
"libxcrypt",
|
|
480
479
|
download={
|
|
481
480
|
"url": "https://github.com/besser82/libxcrypt/releases/download/v{version}/libxcrypt-{version}.tar.xz",
|
|
482
|
-
"version": "4.4.
|
|
483
|
-
"checksum": "
|
|
481
|
+
"version": "4.4.38",
|
|
482
|
+
"checksum": "9aa2fa261be6144af492e9b6bfd03bfaa47f7159",
|
|
484
483
|
"checkfunc": github_version,
|
|
485
484
|
"checkurl": "https://github.com/besser82/libxcrypt/releases/",
|
|
486
485
|
},
|
|
@@ -490,7 +489,6 @@ build.add(
|
|
|
490
489
|
"XZ",
|
|
491
490
|
download={
|
|
492
491
|
"url": "http://tukaani.org/xz/xz-{version}.tar.gz",
|
|
493
|
-
"fallback_url": "https://woz.io/relenv/dependencies/xz-{version}.tar.gz",
|
|
494
492
|
"version": "5.6.2",
|
|
495
493
|
"checksum": "0d6b10e4628fe08e19293c65e8dbcaade084a083",
|
|
496
494
|
"checkfunc": tarball_version,
|
|
@@ -502,7 +500,6 @@ build.add(
|
|
|
502
500
|
build_func=build_sqlite,
|
|
503
501
|
download={
|
|
504
502
|
"url": "https://sqlite.org/2024/sqlite-autoconf-{version}.tar.gz",
|
|
505
|
-
"fallback_url": "https://woz.io/relenv/dependencies/sqlite-autoconf-{version}.tar.gz",
|
|
506
503
|
"version": "3460100",
|
|
507
504
|
"checksum": "1fdbada080f3285ac864c314bfbfc581b13e804b",
|
|
508
505
|
"checkfunc": sqlite_version,
|
|
@@ -515,7 +512,6 @@ build.add(
|
|
|
515
512
|
build_func=build_bzip2,
|
|
516
513
|
download={
|
|
517
514
|
"url": "https://sourceware.org/pub/bzip2/bzip2-{version}.tar.gz",
|
|
518
|
-
"fallback_url": "https://woz.io/relenv/dependencies/bzip2-{version}.tar.gz",
|
|
519
515
|
"version": "1.0.8",
|
|
520
516
|
"checksum": "bf7badf7e248e0ecf465d33c2f5aeec774209227",
|
|
521
517
|
"checkfunc": tarball_version,
|
|
@@ -527,9 +523,8 @@ build.add(
|
|
|
527
523
|
build_func=build_gdbm,
|
|
528
524
|
download={
|
|
529
525
|
"url": "https://ftp.gnu.org/gnu/gdbm/gdbm-{version}.tar.gz",
|
|
530
|
-
"
|
|
531
|
-
"
|
|
532
|
-
"checksum": "7bd455f28c9e4afacc042e0c712aac1b2391fef2",
|
|
526
|
+
"version": "1.25",
|
|
527
|
+
"checksum": "d55bdf2bb5f92f80006166dd8a8323cb2a428bd1",
|
|
533
528
|
"checkfunc": tarball_version,
|
|
534
529
|
},
|
|
535
530
|
)
|
|
@@ -539,7 +534,6 @@ build.add(
|
|
|
539
534
|
build_func=build_ncurses,
|
|
540
535
|
download={
|
|
541
536
|
"url": "https://ftp.gnu.org/pub/gnu/ncurses/ncurses-{version}.tar.gz",
|
|
542
|
-
"fallback_url": "https://woz.io/relenv/dependencies/ncurses-{version}.tar.gz",
|
|
543
537
|
# XXX: Need to work out tinfo linkage
|
|
544
538
|
# "version": "6.5",
|
|
545
539
|
# "checksum": "cde3024ac3f9ef21eaed6f001476ea8fffcaa381",
|
|
@@ -554,9 +548,8 @@ build.add(
|
|
|
554
548
|
build_libffi,
|
|
555
549
|
download={
|
|
556
550
|
"url": "https://github.com/libffi/libffi/releases/download/v{version}/libffi-{version}.tar.gz",
|
|
557
|
-
"
|
|
558
|
-
"
|
|
559
|
-
"checksum": "19251dfee520dff42acefe36bfe76d7168071e01",
|
|
551
|
+
"version": "3.4.8",
|
|
552
|
+
"checksum": "6930b77aebe2465a8e1a8617c4c9a8fa3199b256",
|
|
560
553
|
"checkfunc": github_version,
|
|
561
554
|
"checkurl": "https://github.com/libffi/libffi/releases/",
|
|
562
555
|
},
|
|
@@ -567,7 +560,6 @@ build.add(
|
|
|
567
560
|
build_zlib,
|
|
568
561
|
download={
|
|
569
562
|
"url": "https://zlib.net/fossils/zlib-{version}.tar.gz",
|
|
570
|
-
"fallback_url": "https://woz.io/relenv/dependencies/zlib-{version}.tar.gz",
|
|
571
563
|
"version": "1.3.1",
|
|
572
564
|
"checksum": "f535367b1a11e2f9ac3bec723fb007fbc0d189e5",
|
|
573
565
|
"checkfunc": tarball_version,
|
|
@@ -578,7 +570,6 @@ build.add(
|
|
|
578
570
|
"uuid",
|
|
579
571
|
download={
|
|
580
572
|
"url": "https://sourceforge.net/projects/libuuid/files/libuuid-{version}.tar.gz",
|
|
581
|
-
"fallback_url": "https://woz.io/relenv/dependencies/libuuid-{version}.tar.gz",
|
|
582
573
|
"version": "1.0.3",
|
|
583
574
|
"checksum": "46eaedb875ae6e63677b51ec583656199241d597",
|
|
584
575
|
"checkfunc": uuid_version,
|
|
@@ -591,7 +582,6 @@ build.add(
|
|
|
591
582
|
wait_on=["openssl"],
|
|
592
583
|
download={
|
|
593
584
|
"url": "https://kerberos.org/dist/krb5/{version}/krb5-{version}.tar.gz",
|
|
594
|
-
"fallback_url": "https://woz.io/relenv/dependencies/krb5-{version}.tar.gz",
|
|
595
585
|
"version": "1.21",
|
|
596
586
|
"checksum": "e2ee531443122376ac8b62b3848d94376f646089",
|
|
597
587
|
"checkfunc": krb_version,
|
|
@@ -605,7 +595,6 @@ build.add(
|
|
|
605
595
|
wait_on=["ncurses"],
|
|
606
596
|
download={
|
|
607
597
|
"url": "https://ftp.gnu.org/gnu/readline/readline-{version}.tar.gz",
|
|
608
|
-
"fallback_url": "https://woz.io/relenv/dependencies/readline-{version}.tar.gz",
|
|
609
598
|
"version": "8.2.13",
|
|
610
599
|
"checksum": "5ffb6a334c2422acbe8f4d2cb11e345265c8d930",
|
|
611
600
|
"checkfunc": tarball_version,
|
|
@@ -620,7 +609,6 @@ build.add(
|
|
|
620
609
|
download={
|
|
621
610
|
"url": "https://sourceforge.net/projects/libtirpc/files/libtirpc-{version}.tar.bz2",
|
|
622
611
|
# "url": "https://downloads.sourceforge.net/projects/libtirpc/files/libtirpc-{version}.tar.bz2",
|
|
623
|
-
"fallback_url": "https://woz.io/relenv/dependencies/libtirpc-{version}.tar.bz2",
|
|
624
612
|
"version": "1.3.4",
|
|
625
613
|
"checksum": "63c800f81f823254d2706637bab551dec176b99b",
|
|
626
614
|
"checkfunc": tarball_version,
|
|
@@ -647,9 +635,8 @@ build.add(
|
|
|
647
635
|
],
|
|
648
636
|
download={
|
|
649
637
|
"url": "https://www.python.org/ftp/python/{version}/Python-{version}.tar.xz",
|
|
650
|
-
"fallback_url": "https://woz.io/relenv/dependencies/Python-{version}.tar.xz",
|
|
651
638
|
"version": build.version,
|
|
652
|
-
"checksum": "
|
|
639
|
+
"checksum": "d31d548cd2c5ca2ae713bebe346ba15e8406633a",
|
|
653
640
|
"checkfunc": python_version,
|
|
654
641
|
"checkurl": "https://www.python.org/ftp/python/",
|
|
655
642
|
},
|
|
@@ -666,16 +653,16 @@ build.add(
|
|
|
666
653
|
)
|
|
667
654
|
|
|
668
655
|
build = build.copy(
|
|
669
|
-
version="3.11.
|
|
656
|
+
version="3.11.11", checksum="acf539109b024d3c5f1fc63d6e7f08cd294ba56d"
|
|
670
657
|
)
|
|
671
658
|
builds.add("linux", builder=build)
|
|
672
659
|
|
|
673
660
|
build = build.copy(
|
|
674
|
-
version="3.12.
|
|
661
|
+
version="3.12.9", checksum="465d8a664e63dc5aa1f0d90cd1d0000a970ee2fb"
|
|
675
662
|
)
|
|
676
663
|
builds.add("linux", builder=build)
|
|
677
664
|
|
|
678
665
|
build = build.copy(
|
|
679
|
-
version="3.13.
|
|
666
|
+
version="3.13.3", checksum="f26085cf12daef7b60b8a6fe93ef988b9a094aea"
|
|
680
667
|
)
|
|
681
668
|
builds.add("linux", builder=build)
|
relenv/build/windows.py
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright 2022-
|
|
1
|
+
# Copyright 2022-2025 Broadcom.
|
|
2
2
|
# SPDX-License-Identifier: Apache-2
|
|
3
3
|
"""
|
|
4
4
|
The windows build process.
|
|
@@ -60,7 +60,9 @@ def build_python(env, dirs, logfp):
|
|
|
60
60
|
plat,
|
|
61
61
|
"--no-tkinter",
|
|
62
62
|
]
|
|
63
|
+
log.info("Start PCbuild")
|
|
63
64
|
runcmd(cmd, env=env, stderr=logfp, stdout=logfp)
|
|
65
|
+
log.info("PCbuild finished")
|
|
64
66
|
|
|
65
67
|
# This is where build.bat puts everything
|
|
66
68
|
# TODO: For now we'll only support 64bit
|
|
@@ -128,7 +130,7 @@ def build_python(env, dirs, logfp):
|
|
|
128
130
|
)
|
|
129
131
|
|
|
130
132
|
|
|
131
|
-
build = builds.add("win32", populate_env=populate_env, version="3.10.
|
|
133
|
+
build = builds.add("win32", populate_env=populate_env, version="3.10.17")
|
|
132
134
|
|
|
133
135
|
build.add(
|
|
134
136
|
"python",
|
|
@@ -136,7 +138,7 @@ build.add(
|
|
|
136
138
|
download={
|
|
137
139
|
"url": "https://www.python.org/ftp/python/{version}/Python-{version}.tar.xz",
|
|
138
140
|
"version": build.version,
|
|
139
|
-
"checksum": "
|
|
141
|
+
"checksum": "d31d548cd2c5ca2ae713bebe346ba15e8406633a",
|
|
140
142
|
},
|
|
141
143
|
)
|
|
142
144
|
|
|
@@ -153,7 +155,6 @@ def finalize(env, dirs, logfp):
|
|
|
153
155
|
:type logfp: file
|
|
154
156
|
"""
|
|
155
157
|
# Lay down site customize
|
|
156
|
-
bindir = pathlib.Path(dirs.prefix) / "Scripts"
|
|
157
158
|
sitepackages = dirs.prefix / "Lib" / "site-packages"
|
|
158
159
|
|
|
159
160
|
install_runtime(sitepackages)
|
|
@@ -164,11 +165,12 @@ def finalize(env, dirs, logfp):
|
|
|
164
165
|
|
|
165
166
|
def runpip(pkg):
|
|
166
167
|
# XXX Support cross pip installs on windows
|
|
167
|
-
pip = bindir / "pip3.exe"
|
|
168
168
|
env = os.environ.copy()
|
|
169
169
|
target = None
|
|
170
170
|
cmd = [
|
|
171
|
-
str(
|
|
171
|
+
str(python),
|
|
172
|
+
"-m",
|
|
173
|
+
"pip",
|
|
172
174
|
"install",
|
|
173
175
|
str(pkg),
|
|
174
176
|
]
|
|
@@ -210,16 +212,16 @@ build.add(
|
|
|
210
212
|
)
|
|
211
213
|
|
|
212
214
|
build = build.copy(
|
|
213
|
-
version="3.11.
|
|
215
|
+
version="3.11.11", checksum="acf539109b024d3c5f1fc63d6e7f08cd294ba56d"
|
|
214
216
|
)
|
|
215
217
|
builds.add("win32", builder=build)
|
|
216
218
|
|
|
217
219
|
build = build.copy(
|
|
218
|
-
version="3.12.
|
|
220
|
+
version="3.12.9", checksum="465d8a664e63dc5aa1f0d90cd1d0000a970ee2fb"
|
|
219
221
|
)
|
|
220
222
|
builds.add("win32", builder=build)
|
|
221
223
|
|
|
222
224
|
build = build.copy(
|
|
223
|
-
version="3.13.
|
|
225
|
+
version="3.13.3", checksum="f26085cf12daef7b60b8a6fe93ef988b9a094aea"
|
|
224
226
|
)
|
|
225
227
|
builds.add("win32", builder=build)
|