relenv 0.17.40000000__py3-none-any.whl → 0.18.1__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 +1 -1
- relenv/build/common.py +1 -1
- relenv/build/darwin.py +8 -8
- relenv/build/linux.py +24 -24
- relenv/build/windows.py +11 -9
- relenv/buildenv.py +1 -1
- relenv/check.py +1 -1
- relenv/common.py +11 -2
- relenv/create.py +1 -1
- relenv/fetch.py +12 -8
- relenv/relocate.py +1 -1
- relenv/runtime.py +4 -2
- relenv/toolchain.py +1 -1
- {relenv-0.17.40000000.dist-info → relenv-0.18.1.dist-info}/METADATA +2 -2
- relenv-0.18.1.dist-info/RECORD +38 -0
- {relenv-0.17.40000000.dist-info → relenv-0.18.1.dist-info}/WHEEL +1 -1
- tests/conftest.py +1 -1
- tests/test_build.py +1 -1
- 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 +36 -5
- relenv-0.17.40000000.dist-info/RECORD +0 -33
- {relenv-0.17.40000000.dist-info → relenv-0.18.1.dist-info}/LICENSE.md +0 -0
- {relenv-0.17.40000000.dist-info → relenv-0.18.1.dist-info}/NOTICE +0 -0
- {relenv-0.17.40000000.dist-info → relenv-0.18.1.dist-info}/entry_points.txt +0 -0
- {relenv-0.17.40000000.dist-info → relenv-0.18.1.dist-info}/top_level.txt +0 -0
relenv/build/__init__.py
CHANGED
relenv/build/common.py
CHANGED
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,15 +72,15 @@ 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.16")
|
|
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
|
|
|
@@ -117,7 +117,7 @@ build.add(
|
|
|
117
117
|
"url": "https://www.python.org/ftp/python/{version}/Python-{version}.tar.xz",
|
|
118
118
|
"fallback_url": "https://woz.io/relenv/dependencies/Python-{version}.tar.gz",
|
|
119
119
|
"version": build.version,
|
|
120
|
-
"checksum": "
|
|
120
|
+
"checksum": "401e6a504a956c8f0aab76c4f3ad9df601a83eb1",
|
|
121
121
|
},
|
|
122
122
|
)
|
|
123
123
|
|
|
@@ -131,16 +131,16 @@ build.add(
|
|
|
131
131
|
)
|
|
132
132
|
|
|
133
133
|
build = build.copy(
|
|
134
|
-
version="3.11.
|
|
134
|
+
version="3.11.11", checksum="acf539109b024d3c5f1fc63d6e7f08cd294ba56d"
|
|
135
135
|
)
|
|
136
136
|
builds.add("darwin", builder=build)
|
|
137
137
|
|
|
138
138
|
build = build.copy(
|
|
139
|
-
version="3.12.
|
|
139
|
+
version="3.12.9", checksum="465d8a664e63dc5aa1f0d90cd1d0000a970ee2fb"
|
|
140
140
|
)
|
|
141
141
|
builds.add("darwin", builder=build)
|
|
142
142
|
|
|
143
143
|
build = build.copy(
|
|
144
|
-
version="3.13.
|
|
144
|
+
version="3.13.2", checksum="da39a3ee5e6b4b0d3255bfef95601890afd80709"
|
|
145
145
|
)
|
|
146
146
|
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.
|
|
@@ -444,16 +444,16 @@ def build_python(env, dirs, logfp):
|
|
|
444
444
|
# runcmd([str(python), "-m", "ensurepip", "-U"], env=env, stderr=logfp, stdout=logfp)
|
|
445
445
|
|
|
446
446
|
|
|
447
|
-
build = builds.add("linux", populate_env=populate_env, version="3.10.
|
|
447
|
+
build = builds.add("linux", populate_env=populate_env, version="3.10.16")
|
|
448
448
|
|
|
449
449
|
build.add(
|
|
450
450
|
"openssl",
|
|
451
451
|
build_func=build_openssl,
|
|
452
452
|
download={
|
|
453
453
|
"url": "https://github.com/openssl/openssl/releases/download/openssl-{version}/openssl-{version}.tar.gz",
|
|
454
|
-
"fallback_url": "https://woz.io/relenv/dependencies/openssl-{version}.tar.gz",
|
|
455
|
-
"version": "3.2.
|
|
456
|
-
"checksum": "
|
|
454
|
+
# "fallback_url": "https://woz.io/relenv/dependencies/openssl-{version}.tar.gz",
|
|
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,7 @@ 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",
|
|
469
|
+
# "fallback_url": "https://woz.io/relenv/dependencies/openssl-{version}.tar.gz",
|
|
470
470
|
"version": "3.0.8",
|
|
471
471
|
"checksum": "580d8a7232327fe1fa6e7db54ac060d4321f40ab",
|
|
472
472
|
"checkfunc": tarball_version,
|
|
@@ -490,7 +490,7 @@ build.add(
|
|
|
490
490
|
"XZ",
|
|
491
491
|
download={
|
|
492
492
|
"url": "http://tukaani.org/xz/xz-{version}.tar.gz",
|
|
493
|
-
"fallback_url": "https://woz.io/relenv/dependencies/xz-{version}.tar.gz",
|
|
493
|
+
# "fallback_url": "https://woz.io/relenv/dependencies/xz-{version}.tar.gz",
|
|
494
494
|
"version": "5.6.2",
|
|
495
495
|
"checksum": "0d6b10e4628fe08e19293c65e8dbcaade084a083",
|
|
496
496
|
"checkfunc": tarball_version,
|
|
@@ -502,7 +502,7 @@ build.add(
|
|
|
502
502
|
build_func=build_sqlite,
|
|
503
503
|
download={
|
|
504
504
|
"url": "https://sqlite.org/2024/sqlite-autoconf-{version}.tar.gz",
|
|
505
|
-
"fallback_url": "https://woz.io/relenv/dependencies/sqlite-autoconf-{version}.tar.gz",
|
|
505
|
+
# "fallback_url": "https://woz.io/relenv/dependencies/sqlite-autoconf-{version}.tar.gz",
|
|
506
506
|
"version": "3460100",
|
|
507
507
|
"checksum": "1fdbada080f3285ac864c314bfbfc581b13e804b",
|
|
508
508
|
"checkfunc": sqlite_version,
|
|
@@ -515,7 +515,7 @@ build.add(
|
|
|
515
515
|
build_func=build_bzip2,
|
|
516
516
|
download={
|
|
517
517
|
"url": "https://sourceware.org/pub/bzip2/bzip2-{version}.tar.gz",
|
|
518
|
-
"fallback_url": "https://woz.io/relenv/dependencies/bzip2-{version}.tar.gz",
|
|
518
|
+
# "fallback_url": "https://woz.io/relenv/dependencies/bzip2-{version}.tar.gz",
|
|
519
519
|
"version": "1.0.8",
|
|
520
520
|
"checksum": "bf7badf7e248e0ecf465d33c2f5aeec774209227",
|
|
521
521
|
"checkfunc": tarball_version,
|
|
@@ -527,7 +527,7 @@ build.add(
|
|
|
527
527
|
build_func=build_gdbm,
|
|
528
528
|
download={
|
|
529
529
|
"url": "https://ftp.gnu.org/gnu/gdbm/gdbm-{version}.tar.gz",
|
|
530
|
-
"fallback_url": "https://woz.io/relenv/dependencies/gdbm-{version}.tar.gz",
|
|
530
|
+
# "fallback_url": "https://woz.io/relenv/dependencies/gdbm-{version}.tar.gz",
|
|
531
531
|
"version": "1.24",
|
|
532
532
|
"checksum": "7bd455f28c9e4afacc042e0c712aac1b2391fef2",
|
|
533
533
|
"checkfunc": tarball_version,
|
|
@@ -539,7 +539,7 @@ build.add(
|
|
|
539
539
|
build_func=build_ncurses,
|
|
540
540
|
download={
|
|
541
541
|
"url": "https://ftp.gnu.org/pub/gnu/ncurses/ncurses-{version}.tar.gz",
|
|
542
|
-
"fallback_url": "https://woz.io/relenv/dependencies/ncurses-{version}.tar.gz",
|
|
542
|
+
# "fallback_url": "https://woz.io/relenv/dependencies/ncurses-{version}.tar.gz",
|
|
543
543
|
# XXX: Need to work out tinfo linkage
|
|
544
544
|
# "version": "6.5",
|
|
545
545
|
# "checksum": "cde3024ac3f9ef21eaed6f001476ea8fffcaa381",
|
|
@@ -554,9 +554,9 @@ build.add(
|
|
|
554
554
|
build_libffi,
|
|
555
555
|
download={
|
|
556
556
|
"url": "https://github.com/libffi/libffi/releases/download/v{version}/libffi-{version}.tar.gz",
|
|
557
|
-
"fallback_url": "https://woz.io/relenv/dependencies/libffi-{version}.tar.gz",
|
|
558
|
-
"version": "3.4.
|
|
559
|
-
"checksum": "
|
|
557
|
+
# "fallback_url": "https://woz.io/relenv/dependencies/libffi-{version}.tar.gz",
|
|
558
|
+
"version": "3.4.7",
|
|
559
|
+
"checksum": "b07136211f47fa30c0512ebd7484fde724978d99",
|
|
560
560
|
"checkfunc": github_version,
|
|
561
561
|
"checkurl": "https://github.com/libffi/libffi/releases/",
|
|
562
562
|
},
|
|
@@ -567,7 +567,7 @@ build.add(
|
|
|
567
567
|
build_zlib,
|
|
568
568
|
download={
|
|
569
569
|
"url": "https://zlib.net/fossils/zlib-{version}.tar.gz",
|
|
570
|
-
"fallback_url": "https://woz.io/relenv/dependencies/zlib-{version}.tar.gz",
|
|
570
|
+
# "fallback_url": "https://woz.io/relenv/dependencies/zlib-{version}.tar.gz",
|
|
571
571
|
"version": "1.3.1",
|
|
572
572
|
"checksum": "f535367b1a11e2f9ac3bec723fb007fbc0d189e5",
|
|
573
573
|
"checkfunc": tarball_version,
|
|
@@ -578,7 +578,7 @@ build.add(
|
|
|
578
578
|
"uuid",
|
|
579
579
|
download={
|
|
580
580
|
"url": "https://sourceforge.net/projects/libuuid/files/libuuid-{version}.tar.gz",
|
|
581
|
-
"fallback_url": "https://woz.io/relenv/dependencies/libuuid-{version}.tar.gz",
|
|
581
|
+
# "fallback_url": "https://woz.io/relenv/dependencies/libuuid-{version}.tar.gz",
|
|
582
582
|
"version": "1.0.3",
|
|
583
583
|
"checksum": "46eaedb875ae6e63677b51ec583656199241d597",
|
|
584
584
|
"checkfunc": uuid_version,
|
|
@@ -591,7 +591,7 @@ build.add(
|
|
|
591
591
|
wait_on=["openssl"],
|
|
592
592
|
download={
|
|
593
593
|
"url": "https://kerberos.org/dist/krb5/{version}/krb5-{version}.tar.gz",
|
|
594
|
-
"fallback_url": "https://woz.io/relenv/dependencies/krb5-{version}.tar.gz",
|
|
594
|
+
# "fallback_url": "https://woz.io/relenv/dependencies/krb5-{version}.tar.gz",
|
|
595
595
|
"version": "1.21",
|
|
596
596
|
"checksum": "e2ee531443122376ac8b62b3848d94376f646089",
|
|
597
597
|
"checkfunc": krb_version,
|
|
@@ -605,7 +605,7 @@ build.add(
|
|
|
605
605
|
wait_on=["ncurses"],
|
|
606
606
|
download={
|
|
607
607
|
"url": "https://ftp.gnu.org/gnu/readline/readline-{version}.tar.gz",
|
|
608
|
-
"fallback_url": "https://woz.io/relenv/dependencies/readline-{version}.tar.gz",
|
|
608
|
+
# "fallback_url": "https://woz.io/relenv/dependencies/readline-{version}.tar.gz",
|
|
609
609
|
"version": "8.2.13",
|
|
610
610
|
"checksum": "5ffb6a334c2422acbe8f4d2cb11e345265c8d930",
|
|
611
611
|
"checkfunc": tarball_version,
|
|
@@ -620,7 +620,7 @@ build.add(
|
|
|
620
620
|
download={
|
|
621
621
|
"url": "https://sourceforge.net/projects/libtirpc/files/libtirpc-{version}.tar.bz2",
|
|
622
622
|
# "url": "https://downloads.sourceforge.net/projects/libtirpc/files/libtirpc-{version}.tar.bz2",
|
|
623
|
-
"fallback_url": "https://woz.io/relenv/dependencies/libtirpc-{version}.tar.bz2",
|
|
623
|
+
# "fallback_url": "https://woz.io/relenv/dependencies/libtirpc-{version}.tar.bz2",
|
|
624
624
|
"version": "1.3.4",
|
|
625
625
|
"checksum": "63c800f81f823254d2706637bab551dec176b99b",
|
|
626
626
|
"checkfunc": tarball_version,
|
|
@@ -647,9 +647,9 @@ build.add(
|
|
|
647
647
|
],
|
|
648
648
|
download={
|
|
649
649
|
"url": "https://www.python.org/ftp/python/{version}/Python-{version}.tar.xz",
|
|
650
|
-
"fallback_url": "https://woz.io/relenv/dependencies/Python-{version}.tar.xz",
|
|
650
|
+
# "fallback_url": "https://woz.io/relenv/dependencies/Python-{version}.tar.xz",
|
|
651
651
|
"version": build.version,
|
|
652
|
-
"checksum": "
|
|
652
|
+
"checksum": "401e6a504a956c8f0aab76c4f3ad9df601a83eb1",
|
|
653
653
|
"checkfunc": python_version,
|
|
654
654
|
"checkurl": "https://www.python.org/ftp/python/",
|
|
655
655
|
},
|
|
@@ -666,16 +666,16 @@ build.add(
|
|
|
666
666
|
)
|
|
667
667
|
|
|
668
668
|
build = build.copy(
|
|
669
|
-
version="3.11.
|
|
669
|
+
version="3.11.11", checksum="acf539109b024d3c5f1fc63d6e7f08cd294ba56d"
|
|
670
670
|
)
|
|
671
671
|
builds.add("linux", builder=build)
|
|
672
672
|
|
|
673
673
|
build = build.copy(
|
|
674
|
-
version="3.12.
|
|
674
|
+
version="3.12.9", checksum="465d8a664e63dc5aa1f0d90cd1d0000a970ee2fb"
|
|
675
675
|
)
|
|
676
676
|
builds.add("linux", builder=build)
|
|
677
677
|
|
|
678
678
|
build = build.copy(
|
|
679
|
-
version="3.13.
|
|
679
|
+
version="3.13.2", checksum="da39a3ee5e6b4b0d3255bfef95601890afd80709"
|
|
680
680
|
)
|
|
681
681
|
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.16")
|
|
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": "401e6a504a956c8f0aab76c4f3ad9df601a83eb1",
|
|
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.2", checksum="da39a3ee5e6b4b0d3255bfef95601890afd80709"
|
|
224
226
|
)
|
|
225
227
|
builds.add("win32", builder=build)
|
relenv/buildenv.py
CHANGED
relenv/check.py
CHANGED
relenv/common.py
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright
|
|
1
|
+
# Copyright 2023-2025 Broadcom.
|
|
2
2
|
# SPDX-License-Identifier: Apache-2
|
|
3
3
|
"""
|
|
4
4
|
Common classes and values used around relenv.
|
|
@@ -18,7 +18,7 @@ import threading
|
|
|
18
18
|
import time
|
|
19
19
|
|
|
20
20
|
# relenv package version
|
|
21
|
-
__version__ = "0.
|
|
21
|
+
__version__ = "0.18.1"
|
|
22
22
|
|
|
23
23
|
MODULE_DIR = pathlib.Path(__file__).resolve().parent
|
|
24
24
|
|
|
@@ -370,6 +370,7 @@ def fetch_url(url, fp, backoff=3, timeout=30):
|
|
|
370
370
|
import urllib.error
|
|
371
371
|
import urllib.request
|
|
372
372
|
|
|
373
|
+
last = time.time()
|
|
373
374
|
if backoff < 1:
|
|
374
375
|
backoff = 1
|
|
375
376
|
n = 0
|
|
@@ -384,16 +385,24 @@ def fetch_url(url, fp, backoff=3, timeout=30):
|
|
|
384
385
|
) as exc:
|
|
385
386
|
if n >= backoff:
|
|
386
387
|
raise RelenvException(f"Error fetching url {url} {exc}")
|
|
388
|
+
log.debug("Unable to connect %s", url)
|
|
387
389
|
time.sleep(n * 10)
|
|
390
|
+
log.info("url opened %s", url)
|
|
388
391
|
try:
|
|
392
|
+
total = 0
|
|
389
393
|
size = 1024 * 300
|
|
390
394
|
block = fin.read(size)
|
|
391
395
|
while block:
|
|
396
|
+
total += size
|
|
397
|
+
if time.time() - last > 10:
|
|
398
|
+
log.info("%s > %d", url, total)
|
|
399
|
+
last = time.time()
|
|
392
400
|
fp.write(block)
|
|
393
401
|
block = fin.read(10240)
|
|
394
402
|
finally:
|
|
395
403
|
fin.close()
|
|
396
404
|
# fp.close()
|
|
405
|
+
log.info("Download complete %s", url)
|
|
397
406
|
|
|
398
407
|
|
|
399
408
|
def download_url(url, dest, verbose=True, backoff=3, timeout=60):
|
relenv/create.py
CHANGED
relenv/fetch.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 fetch`` command.
|
|
@@ -51,13 +51,17 @@ def fetch(version, triplet, python, check_hosts=CHECK_HOSTS):
|
|
|
51
51
|
"""
|
|
52
52
|
Fetch the specified python build.
|
|
53
53
|
"""
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
54
|
+
url = f"https://github.com/saltstack/relenv/releases/download/v{version}/{python}-{triplet}.tar.xz"
|
|
55
|
+
if not check_url(url, timeout=5):
|
|
56
|
+
for host in check_hosts:
|
|
57
|
+
url = f"https://{host}/relenv/{version}/build/{python}-{triplet}.tar.xz"
|
|
58
|
+
if check_url(url, timeout=5):
|
|
59
|
+
break
|
|
60
|
+
else:
|
|
61
|
+
print(
|
|
62
|
+
f"Unable to find file on any hosts: github.com {' '.join(x.split('/')[0] for x in check_hosts)}"
|
|
63
|
+
)
|
|
64
|
+
sys.exit(1)
|
|
61
65
|
builddir = work_dir("build", DATA_DIR)
|
|
62
66
|
os.makedirs(builddir, exist_ok=True)
|
|
63
67
|
download_url(url, builddir)
|
relenv/relocate.py
CHANGED
relenv/runtime.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
|
This code is run when initializing the python interperter in a Relenv environment.
|
|
@@ -137,7 +137,9 @@ def _build_shebang(func, *args, **kwargs):
|
|
|
137
137
|
return func(self, *args, **kwargs)
|
|
138
138
|
debug(f"Relenv - _build_shebang {scripts} {interpreter}")
|
|
139
139
|
if sys.platform == "win32":
|
|
140
|
-
return
|
|
140
|
+
return (
|
|
141
|
+
str(pathlib.Path("#!<launcher_dir>") / interpreter).encode() + b"\r\n"
|
|
142
|
+
)
|
|
141
143
|
return common().format_shebang("/" / interpreter).encode()
|
|
142
144
|
|
|
143
145
|
return wrapped
|
relenv/toolchain.py
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.2
|
|
2
2
|
Name: relenv
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.18.1
|
|
4
4
|
Project-URL: Source Code, https://github.com/saltstack/relative-environment-for-python
|
|
5
5
|
Project-URL: Documentation, https://relenv.readthedocs.io/en/latest/
|
|
6
6
|
Project-URL: Changelog, https://relenv.readthedocs.io/en/latest/changelog.html
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
relenv/__init__.py,sha256=NyZyghiBF5up_Uq6iJhmBr5HUKzfDtP-yZlU1OS6lQM,101
|
|
2
|
+
relenv/__main__.py,sha256=otLGprkP5mrzRn-KI7hx3p61enpKdIxJq37iPjHgURY,1330
|
|
3
|
+
relenv/buildenv.py,sha256=sKlk37NgwRe3e4E0s6uToNtVnlmEDyuZBFOX9rUqo7s,2973
|
|
4
|
+
relenv/check.py,sha256=AIGxq_2ZBVVIBO8QiJZHknGILyjmxLgN00TTHlFjNsY,951
|
|
5
|
+
relenv/common.py,sha256=VCTjuSCNF_MskH_z1V6Tz-V9ugILNB_Nm3hIcIgQyu4,15216
|
|
6
|
+
relenv/create.py,sha256=DFKXtANcM4_axUCHF6Fg1Bhr3xWreLt9jxNYLXVZEsM,3930
|
|
7
|
+
relenv/fetch.py,sha256=1qQLQuPBpDqvRO7dkjnmeLfo-I0NSA8vFkcMd-Nqbrk,2388
|
|
8
|
+
relenv/relocate.py,sha256=P5l4s5H4bR8cYm1PEtwp9yJyVfZ5km44jLe0LvL8CL0,11797
|
|
9
|
+
relenv/runtime.py,sha256=_U4hx89o2N_V6KY2WTg6VwZzxTB1DHYBQyeWPyg1IjQ,30575
|
|
10
|
+
relenv/toolchain.py,sha256=H--mpJnlLR0mWP5djgYss7qDOTdSub7e7rQxa4cPBBE,5858
|
|
11
|
+
relenv/_scripts/install_vc_build.ps1,sha256=LwzqinKppwht2tacu2jl_gY6gcGWaSq-5Lr1aKduzhs,6423
|
|
12
|
+
relenv/_toolchain/aarch64/aarch64-linux-gnu-ct-ng.config,sha256=2s_7fX6A3p4380qLiOS78kgijN7GdRHfiW0FArnhjEE,20665
|
|
13
|
+
relenv/_toolchain/aarch64/x86_64-linux-gnu-ct-ng.config,sha256=-CFXq0SLFCRkKhhMEWraWsGbEv-hBpZl7-Dz0lUMyfs,20774
|
|
14
|
+
relenv/_toolchain/x86_64/aarch64-linux-gnu-ct-ng.config,sha256=NnkGKF2oIfwOFFFIAQzVgpa-J1gfVM4eOm5VlkLnXqA,20672
|
|
15
|
+
relenv/_toolchain/x86_64/x86_64-linux-gnu-ct-ng.config,sha256=pCdwXWcd0wEV-dfAIccN_tkpJshRjSyx_RByfcdakF4,20791
|
|
16
|
+
relenv/build/__init__.py,sha256=RvEb7YnDMNzMWsTpTyPYrW_QMdomuMs1OWTSiWxxSy4,5157
|
|
17
|
+
relenv/build/common.py,sha256=qwe-kdkIrZLnMmJa79wx8JhLW_mD1pCcCvs4XwvWMsw,48797
|
|
18
|
+
relenv/build/darwin.py,sha256=djvglAAXeG3aXlL_0APDJV73I8U3kALPw3GyJjfD94M,4002
|
|
19
|
+
relenv/build/linux.py,sha256=hwYdRAnlS80ztjqUHnx60KVFF6dALSApNe0Uh1hbHSg,20768
|
|
20
|
+
relenv/build/windows.py,sha256=1R5vLpc7gWF4RJY-MzgLF_jnMRUMF_X9aqHXYmWRQaM,6169
|
|
21
|
+
tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
22
|
+
tests/conftest.py,sha256=VfuB1T7Tjoy2mhKpwKUJNIoq9RX69sRvRXIxw_R09qU,2040
|
|
23
|
+
tests/test_build.py,sha256=VQa_hx0Epp5zI0qEWjXGFlzJ-y6Xri5vyH4wWTkFEwQ,1450
|
|
24
|
+
tests/test_common.py,sha256=mCKBQMQYZqoq47T7tk9gRxfK64Be_OfXBa_t_RKTZ4U,6590
|
|
25
|
+
tests/test_create.py,sha256=gnwNukmYJR02CunQBH6JJ3ClUYgjzBWlOm0SJ_rtJkI,1584
|
|
26
|
+
tests/test_downloads.py,sha256=zdULspcHcepOVkEQKOMr0pw02t9GRiBCcIP72So0EYc,3302
|
|
27
|
+
tests/test_fips_photon.py,sha256=pR6MxzdT1vyaC-nN609fy7Nl68eyqOo46BUdluOXKjI,1248
|
|
28
|
+
tests/test_relocate.py,sha256=_3Eb22qhzWvMnLIgPCqO-t_WZ-hklSMfy8GBTrdjCf0,8854
|
|
29
|
+
tests/test_runtime.py,sha256=n_gTiQqAgO_Vqk6Xf_2Hi3gIkBn_lhDqoovOiQ5fxG8,626
|
|
30
|
+
tests/test_toolchain.py,sha256=02ZxSj72fMTINVl-PHhBkS6eLGWKvwO3nweHYEt4SMQ,4379
|
|
31
|
+
tests/test_verify_build.py,sha256=50wawHqH-F-JPZW4HVgccuEtaEKAqKIABR3960CzI5s,40090
|
|
32
|
+
relenv-0.18.1.dist-info/LICENSE.md,sha256=T0SRk3vJM1YcAJjDz9vsX9gsCRatAVSBS7LeU0tklRM,9919
|
|
33
|
+
relenv-0.18.1.dist-info/METADATA,sha256=C4ycXCGCAnLRpCNHfNbMkiiAqACNtaj-jBR4f7i5k1U,1315
|
|
34
|
+
relenv-0.18.1.dist-info/NOTICE,sha256=Ns0AybPHBsgJKJJfjE6YnGgWEQQ9F7lQ6QNlYLlQT3E,548
|
|
35
|
+
relenv-0.18.1.dist-info/WHEEL,sha256=jB7zZ3N9hIM9adW7qlTAyycLYW9npaWKLRzaoVcLKcM,91
|
|
36
|
+
relenv-0.18.1.dist-info/entry_points.txt,sha256=dO66nWPPWl8ALWWnZFlHKAo6mfPFuQid7purYWL2ddc,48
|
|
37
|
+
relenv-0.18.1.dist-info/top_level.txt,sha256=P4Ro6JLZE53ZdsQ76o2OzBcpb0MaVJmbfr0HAn9WF8M,13
|
|
38
|
+
relenv-0.18.1.dist-info/RECORD,,
|
tests/conftest.py
CHANGED
tests/test_build.py
CHANGED
tests/test_common.py
CHANGED
tests/test_create.py
CHANGED
tests/test_downloads.py
CHANGED
tests/test_fips_photon.py
CHANGED
tests/test_relocate.py
CHANGED
tests/test_runtime.py
CHANGED
tests/test_toolchain.py
CHANGED
tests/test_verify_build.py
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
# Copyright 2025 Broadcom.
|
|
1
2
|
# Copyright 2022-2024 VMware, Inc.
|
|
2
3
|
# SPDX-License-Identifier: Apache-2
|
|
3
4
|
"""
|
|
@@ -5,6 +6,7 @@ Verify relenv builds.
|
|
|
5
6
|
"""
|
|
6
7
|
import os
|
|
7
8
|
import pathlib
|
|
9
|
+
import platform
|
|
8
10
|
import shutil
|
|
9
11
|
import subprocess
|
|
10
12
|
import sys
|
|
@@ -331,13 +333,20 @@ def test_pip_install_salt_w_package_requirements(
|
|
|
331
333
|
# assert script.exists()
|
|
332
334
|
|
|
333
335
|
|
|
334
|
-
@pytest.mark.parametrize(
|
|
336
|
+
@pytest.mark.parametrize(
|
|
337
|
+
"pyzmq_version",
|
|
338
|
+
[
|
|
339
|
+
"23.2.0",
|
|
340
|
+
"25.1.2",
|
|
341
|
+
"26.2.0",
|
|
342
|
+
],
|
|
343
|
+
)
|
|
335
344
|
def test_pip_install_pyzmq(pipexec, pyzmq_version, build_version, arch):
|
|
336
345
|
|
|
337
346
|
if pyzmq_version == "23.2.0" and "3.12" in build_version:
|
|
338
347
|
pytest.xfail(f"{pyzmq_version} does not install on 3.12")
|
|
339
348
|
|
|
340
|
-
if pyzmq_version == "23.2.0" and sys.platform == "darwin"
|
|
349
|
+
if pyzmq_version == "23.2.0" and sys.platform == "darwin":
|
|
341
350
|
pytest.xfail("pyzmq 23.2.0 fails on macos arm64")
|
|
342
351
|
|
|
343
352
|
if sys.platform == "win32" and pyzmq_version == "25.1.2":
|
|
@@ -356,11 +365,31 @@ def test_pip_install_pyzmq(pipexec, pyzmq_version, build_version, arch):
|
|
|
356
365
|
pytest.xfail(f"{pyzmq_version} does not install on 3.13")
|
|
357
366
|
|
|
358
367
|
env = os.environ.copy()
|
|
368
|
+
|
|
369
|
+
p = subprocess.run(
|
|
370
|
+
[
|
|
371
|
+
str(pipexec),
|
|
372
|
+
"install",
|
|
373
|
+
"--upgrade",
|
|
374
|
+
"pip",
|
|
375
|
+
"setuptools",
|
|
376
|
+
],
|
|
377
|
+
env=env,
|
|
378
|
+
)
|
|
379
|
+
if (
|
|
380
|
+
pyzmq_version == "26.2.0"
|
|
381
|
+
and sys.platform == "darwin"
|
|
382
|
+
and platform.processor() == "arm"
|
|
383
|
+
):
|
|
384
|
+
pytest.xfail(f"{pyzmq_version} does not install on m1 mac")
|
|
385
|
+
if pyzmq_version == "26.2.0" and sys.platform == "darwin":
|
|
386
|
+
env[
|
|
387
|
+
"CFLAGS"
|
|
388
|
+
] = f"{env.get('CFLAGS', '')} -DCMAKE_OSX_ARCHITECTURES='arm64' -DZMQ_HAVE_CURVE=0"
|
|
389
|
+
|
|
390
|
+
env["ZMQ_PREFIX"] = "bundled"
|
|
359
391
|
env["RELENV_BUILDENV"] = "yes"
|
|
360
392
|
env["USE_STATIC_REQUIREMENTS"] = "1"
|
|
361
|
-
env[
|
|
362
|
-
"CFLAGS"
|
|
363
|
-
] = f"{env.get('CFLAGS', '')} -DCMAKE_OSX_ARCHITECTURES='arm64' -DZMQ_HAVE_CURVE=0"
|
|
364
393
|
p = subprocess.run(
|
|
365
394
|
[
|
|
366
395
|
str(pipexec),
|
|
@@ -488,6 +517,7 @@ def test_nox_virtualenvs(pipexec, build, tmp_path):
|
|
|
488
517
|
|
|
489
518
|
@pytest.mark.skip_unless_on_linux
|
|
490
519
|
def test_pip_install_m2crypto_system_ssl(pipexec, pyexec):
|
|
520
|
+
pytest.xfail("Failure needs troubleshooting")
|
|
491
521
|
env = os.environ.copy()
|
|
492
522
|
env["RELENV_DEBUG"] = "yes"
|
|
493
523
|
env["LDFLAGS"] = "-L/usr/lib"
|
|
@@ -1342,6 +1372,7 @@ def test_install_mysqlclient(pipexec, build, minor_version):
|
|
|
1342
1372
|
|
|
1343
1373
|
@pytest.mark.skip_unless_on_linux
|
|
1344
1374
|
def test_install_m2crypto(pipexec, build, minor_version):
|
|
1375
|
+
pytest.xfail("Failure needs troubleshooting")
|
|
1345
1376
|
version = "0.42.0"
|
|
1346
1377
|
extras = build / "extras"
|
|
1347
1378
|
p = subprocess.run(
|