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/buildenv.py
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright 2023-
|
|
1
|
+
# Copyright 2023-2025 Broadcom.
|
|
2
2
|
# SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
"""
|
|
4
4
|
Helper for building libraries to install into a relenv environment.
|
|
@@ -51,20 +51,20 @@ def buildenv(relenv_path=None):
|
|
|
51
51
|
"TOOLCHAIN_PATH": f"{toolchain}",
|
|
52
52
|
"TRIPLET": f"{triplet}",
|
|
53
53
|
"RELENV_PATH": f"{relenv_path}",
|
|
54
|
-
"CC": f"{toolchain}/bin/{triplet}-gcc
|
|
55
|
-
"CXX": f"{toolchain}/bin/{triplet}-g++
|
|
56
|
-
"CFLAGS":
|
|
57
|
-
|
|
54
|
+
"CC": f"{toolchain}/bin/{triplet}-gcc",
|
|
55
|
+
"CXX": f"{toolchain}/bin/{triplet}-g++",
|
|
56
|
+
"CFLAGS": f"-I{relenv_path}/include -I{toolchain}/sysroot/usr/include",
|
|
57
|
+
"CXXFLAGS": (
|
|
58
58
|
f"-I{relenv_path}/include "
|
|
59
|
-
f"-I{toolchain}/sysroot/usr/include"
|
|
59
|
+
f"-I{toolchain}/{triplet}/sysroot/usr/include "
|
|
60
|
+
f"-L{relenv_path}/lib -L{toolchain}/{triplet}/sysroot/lib "
|
|
61
|
+
f"-Wl,-rpath,{relenv_path}/lib"
|
|
60
62
|
),
|
|
61
63
|
"CPPFLAGS": (
|
|
62
|
-
|
|
63
|
-
f"-I{relenv_path}/include -I{toolchain}/{triplet}/sysroot/usr/include"
|
|
64
|
+
f"-I{relenv_path}/include " f"-I{toolchain}/{triplet}/sysroot/usr/include"
|
|
64
65
|
),
|
|
65
66
|
"CMAKE_CFLAGS": (
|
|
66
|
-
|
|
67
|
-
f"-I{relenv_path}/include -I{toolchain}/{triplet}/sysroot/usr/include"
|
|
67
|
+
f"-I{relenv_path}/include " f"-I{toolchain}/{triplet}/sysroot/usr/include"
|
|
68
68
|
),
|
|
69
69
|
"LDFLAGS": (
|
|
70
70
|
f"-L{relenv_path}/lib -L{toolchain}/{triplet}/sysroot/lib "
|
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.18.
|
|
21
|
+
__version__ = "0.18.2"
|
|
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
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.
|
|
@@ -70,6 +70,17 @@ def relocate():
|
|
|
70
70
|
return relocate.relocate
|
|
71
71
|
|
|
72
72
|
|
|
73
|
+
def buildenv():
|
|
74
|
+
"""
|
|
75
|
+
Late import relenv buildenv.
|
|
76
|
+
"""
|
|
77
|
+
if not hasattr(buildenv, "builenv"):
|
|
78
|
+
buildenv.buildenv = path_import(
|
|
79
|
+
"relenv.buildenv", str(pathlib.Path(__file__).parent / "buildenv.py")
|
|
80
|
+
)
|
|
81
|
+
return buildenv.buildenv
|
|
82
|
+
|
|
83
|
+
|
|
73
84
|
def get_major_version():
|
|
74
85
|
"""
|
|
75
86
|
Current python major version.
|
|
@@ -137,7 +148,9 @@ def _build_shebang(func, *args, **kwargs):
|
|
|
137
148
|
return func(self, *args, **kwargs)
|
|
138
149
|
debug(f"Relenv - _build_shebang {scripts} {interpreter}")
|
|
139
150
|
if sys.platform == "win32":
|
|
140
|
-
return
|
|
151
|
+
return (
|
|
152
|
+
str(pathlib.Path("#!<launcher_dir>") / interpreter).encode() + b"\r\n"
|
|
153
|
+
)
|
|
141
154
|
return common().format_shebang("/" / interpreter).encode()
|
|
142
155
|
|
|
143
156
|
return wrapped
|
|
@@ -1022,3 +1035,11 @@ def bootstrap():
|
|
|
1022
1035
|
setup_crossroot()
|
|
1023
1036
|
install_cargo_config()
|
|
1024
1037
|
sys.meta_path = [importer] + sys.meta_path
|
|
1038
|
+
# XXX This causes our m2crypto test to break
|
|
1039
|
+
# if "RELENV_BUILDENV" in os.environ:
|
|
1040
|
+
# env = buildenv().buildenv()
|
|
1041
|
+
# for key in env:
|
|
1042
|
+
# if key in os.environ:
|
|
1043
|
+
# os.environ[key] = f"{env[key]} {os.environ[key]}"
|
|
1044
|
+
# else:
|
|
1045
|
+
# os.environ[key] = env[key]
|
relenv/toolchain.py
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: relenv
|
|
3
|
-
Version: 0.18.
|
|
3
|
+
Version: 0.18.2
|
|
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
|
|
@@ -8,6 +8,7 @@ Description-Content-Type: text/markdown
|
|
|
8
8
|
License-File: LICENSE.md
|
|
9
9
|
License-File: NOTICE
|
|
10
10
|
Requires-Dist: ppbt; sys_platform == "linux"
|
|
11
|
+
Dynamic: license-file
|
|
11
12
|
|
|
12
13
|
Relenv
|
|
13
14
|
======
|
|
@@ -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=GcctZxbH1lfShN8bsbqG-xtrnI4rjWv2PUktHLSYlRo,2946
|
|
4
|
+
relenv/check.py,sha256=AIGxq_2ZBVVIBO8QiJZHknGILyjmxLgN00TTHlFjNsY,951
|
|
5
|
+
relenv/common.py,sha256=ViVbtJCKRgTpnx7pVSic-NebAc_WOXRb_-3kUPJBFrs,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=65WYEAGnpH5hZgujaJSaJExhn-VRTdRO9-Y6Qo8X-Do,31163
|
|
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=Mk5Cn1W7C7ZGGbNxCCcQNMk4AHNvMByPSZ8akpnq9YI,5373
|
|
17
|
+
relenv/build/common.py,sha256=1pULuR3DPifB0H3wKGCofwGgDWuLeSSsea_8buWnAYI,49027
|
|
18
|
+
relenv/build/darwin.py,sha256=57riuVU12oydmVp5Mi3Tys4cqai55uHF0vHtdKxHXWc,3920
|
|
19
|
+
relenv/build/linux.py,sha256=TCI3NH_Yjzxizb8529qlO7pCxVleptRYcGtMzKUx7-0,19193
|
|
20
|
+
relenv/build/windows.py,sha256=yYm-8jziiUMJb6SVKGQZpHtP6wQmDK06BYC7HWgwzwA,6169
|
|
21
|
+
relenv-0.18.2.dist-info/licenses/LICENSE.md,sha256=T0SRk3vJM1YcAJjDz9vsX9gsCRatAVSBS7LeU0tklRM,9919
|
|
22
|
+
relenv-0.18.2.dist-info/licenses/NOTICE,sha256=Ns0AybPHBsgJKJJfjE6YnGgWEQQ9F7lQ6QNlYLlQT3E,548
|
|
23
|
+
tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
24
|
+
tests/conftest.py,sha256=VfuB1T7Tjoy2mhKpwKUJNIoq9RX69sRvRXIxw_R09qU,2040
|
|
25
|
+
tests/test_build.py,sha256=vuUxCTGQa1FcoeS3ls-7e9v2ry9sgWJHzKWMYKKrwNo,1407
|
|
26
|
+
tests/test_common.py,sha256=mCKBQMQYZqoq47T7tk9gRxfK64Be_OfXBa_t_RKTZ4U,6590
|
|
27
|
+
tests/test_create.py,sha256=gnwNukmYJR02CunQBH6JJ3ClUYgjzBWlOm0SJ_rtJkI,1584
|
|
28
|
+
tests/test_downloads.py,sha256=zdULspcHcepOVkEQKOMr0pw02t9GRiBCcIP72So0EYc,3302
|
|
29
|
+
tests/test_fips_photon.py,sha256=pR6MxzdT1vyaC-nN609fy7Nl68eyqOo46BUdluOXKjI,1248
|
|
30
|
+
tests/test_relocate.py,sha256=_3Eb22qhzWvMnLIgPCqO-t_WZ-hklSMfy8GBTrdjCf0,8854
|
|
31
|
+
tests/test_runtime.py,sha256=n_gTiQqAgO_Vqk6Xf_2Hi3gIkBn_lhDqoovOiQ5fxG8,626
|
|
32
|
+
tests/test_toolchain.py,sha256=02ZxSj72fMTINVl-PHhBkS6eLGWKvwO3nweHYEt4SMQ,4379
|
|
33
|
+
tests/test_verify_build.py,sha256=b6aGdPUK-wHMRL1A5NDnJ2v5GjiletfFCe1oFPll-LU,41182
|
|
34
|
+
relenv-0.18.2.dist-info/METADATA,sha256=TvSF2zY2FqJSI7_CbjE6rErKcY07HkL2kMHwV98W-QY,1337
|
|
35
|
+
relenv-0.18.2.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
|
|
36
|
+
relenv-0.18.2.dist-info/entry_points.txt,sha256=dO66nWPPWl8ALWWnZFlHKAo6mfPFuQid7purYWL2ddc,48
|
|
37
|
+
relenv-0.18.2.dist-info/top_level.txt,sha256=P4Ro6JLZE53ZdsQ76o2OzBcpb0MaVJmbfr0HAn9WF8M,13
|
|
38
|
+
relenv-0.18.2.dist-info/RECORD,,
|
tests/conftest.py
CHANGED
tests/test_build.py
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright 2022-
|
|
1
|
+
# Copyright 2022-2025 Broadcom.
|
|
2
2
|
# SPDX-License-Identifier: Apache-2
|
|
3
3
|
import hashlib
|
|
4
4
|
|
|
@@ -33,7 +33,6 @@ def test_builder_defaults_linux():
|
|
|
33
33
|
assert builder.toolchain == DATA_DIR / "toolchain" / "x86_64-linux-gnu"
|
|
34
34
|
assert callable(builder.build_default)
|
|
35
35
|
assert callable(builder.populate_env)
|
|
36
|
-
assert builder.force_download is False
|
|
37
36
|
assert builder.recipies == {}
|
|
38
37
|
|
|
39
38
|
|
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
|
|
@@ -105,6 +107,11 @@ def test_pip_install_salt_git(pipexec, build, build_dir, pyexec, build_version):
|
|
|
105
107
|
if sys.platform == "darwin" and "3.13" in build_version:
|
|
106
108
|
pytest.xfail("Salt does not work with 3.13 on macos yet")
|
|
107
109
|
|
|
110
|
+
# if sys.platform == "linux":
|
|
111
|
+
# subprocess.run(
|
|
112
|
+
# [pipexec, "--upgrade", "install", "setuptools>=72.2.0"], check=True
|
|
113
|
+
# )
|
|
114
|
+
|
|
108
115
|
env = os.environ.copy()
|
|
109
116
|
env["RELENV_BUILDENV"] = "yes"
|
|
110
117
|
if sys.platform == "linux" and shutil.which("git"):
|
|
@@ -331,36 +338,67 @@ def test_pip_install_salt_w_package_requirements(
|
|
|
331
338
|
# assert script.exists()
|
|
332
339
|
|
|
333
340
|
|
|
334
|
-
@pytest.mark.parametrize(
|
|
335
|
-
|
|
341
|
+
@pytest.mark.parametrize(
|
|
342
|
+
"pyzmq_version",
|
|
343
|
+
[
|
|
344
|
+
"23.2.0",
|
|
345
|
+
"25.1.2",
|
|
346
|
+
"26.2.0",
|
|
347
|
+
"26.4.0",
|
|
348
|
+
],
|
|
349
|
+
)
|
|
350
|
+
def test_pip_install_pyzmq(pipexec, pyzmq_version, build_version, arch, build):
|
|
336
351
|
|
|
337
352
|
if pyzmq_version == "23.2.0" and "3.12" in build_version:
|
|
338
353
|
pytest.xfail(f"{pyzmq_version} does not install on 3.12")
|
|
339
354
|
|
|
340
|
-
if pyzmq_version == "23.2.0" and
|
|
355
|
+
if pyzmq_version == "23.2.0" and "3.13" in build_version:
|
|
356
|
+
pytest.xfail(f"{pyzmq_version} does not install on 3.13")
|
|
357
|
+
|
|
358
|
+
if pyzmq_version == "23.2.0" and sys.platform == "darwin":
|
|
341
359
|
pytest.xfail("pyzmq 23.2.0 fails on macos arm64")
|
|
342
360
|
|
|
343
|
-
if
|
|
361
|
+
if pyzmq_version == "23.2.0" and sys.platform == "win32":
|
|
362
|
+
pytest.xfail("vcredist not found as of 9/9/24")
|
|
363
|
+
|
|
364
|
+
if pyzmq_version == "25.1.2" and "3.13" in build_version:
|
|
365
|
+
pytest.xfail(f"{pyzmq_version} does not install on 3.13")
|
|
366
|
+
|
|
367
|
+
if pyzmq_version == "25.1.2" and sys.platform == "win32":
|
|
344
368
|
pytest.xfail("pyzmq 25.1.2 fails on windows")
|
|
345
369
|
|
|
346
|
-
if
|
|
370
|
+
if pyzmq_version == "26.2.0" and sys.platform == "win32":
|
|
347
371
|
pytest.xfail("vcredist not found as of 9/9/24")
|
|
348
372
|
|
|
349
|
-
if
|
|
350
|
-
pytest.xfail("
|
|
373
|
+
if pyzmq_version == "26.4.0" and sys.platform == "win32":
|
|
374
|
+
pytest.xfail("Needs troubleshooting 4/12/25")
|
|
351
375
|
|
|
352
|
-
|
|
353
|
-
pytest.xfail(f"{pyzmq_version} does not install on 3.13")
|
|
376
|
+
env = os.environ.copy()
|
|
354
377
|
|
|
355
|
-
|
|
356
|
-
|
|
378
|
+
p = subprocess.run(
|
|
379
|
+
[
|
|
380
|
+
str(pipexec),
|
|
381
|
+
"install",
|
|
382
|
+
"--upgrade",
|
|
383
|
+
"pip",
|
|
384
|
+
"setuptools",
|
|
385
|
+
],
|
|
386
|
+
env=env,
|
|
387
|
+
)
|
|
388
|
+
if (
|
|
389
|
+
pyzmq_version == "26.2.0"
|
|
390
|
+
and sys.platform == "darwin"
|
|
391
|
+
and platform.processor() == "arm"
|
|
392
|
+
):
|
|
393
|
+
pytest.xfail(f"{pyzmq_version} does not install on m1 mac")
|
|
394
|
+
if pyzmq_version == "26.2.0" and sys.platform == "darwin":
|
|
395
|
+
env[
|
|
396
|
+
"CFLAGS"
|
|
397
|
+
] = f"{env.get('CFLAGS', '')} -DCMAKE_OSX_ARCHITECTURES='arm64' -DZMQ_HAVE_CURVE=0"
|
|
357
398
|
|
|
358
|
-
env =
|
|
399
|
+
env["ZMQ_PREFIX"] = "bundled"
|
|
359
400
|
env["RELENV_BUILDENV"] = "yes"
|
|
360
401
|
env["USE_STATIC_REQUIREMENTS"] = "1"
|
|
361
|
-
env[
|
|
362
|
-
"CFLAGS"
|
|
363
|
-
] = f"{env.get('CFLAGS', '')} -DCMAKE_OSX_ARCHITECTURES='arm64' -DZMQ_HAVE_CURVE=0"
|
|
364
402
|
p = subprocess.run(
|
|
365
403
|
[
|
|
366
404
|
str(pipexec),
|
|
@@ -375,6 +413,21 @@ def test_pip_install_pyzmq(pipexec, pyzmq_version, build_version, arch):
|
|
|
375
413
|
)
|
|
376
414
|
assert p.returncode == 0, "Failed to pip install package requirements"
|
|
377
415
|
|
|
416
|
+
if shutil.which("docker"):
|
|
417
|
+
subprocess.run(
|
|
418
|
+
[
|
|
419
|
+
"docker",
|
|
420
|
+
"run",
|
|
421
|
+
"-v",
|
|
422
|
+
f"{build}:/test",
|
|
423
|
+
"amazonlinux:2",
|
|
424
|
+
"/test/bin/python3",
|
|
425
|
+
"-c",
|
|
426
|
+
"import zmq",
|
|
427
|
+
],
|
|
428
|
+
check=True,
|
|
429
|
+
)
|
|
430
|
+
|
|
378
431
|
|
|
379
432
|
def test_pip_install_cryptography(pipexec):
|
|
380
433
|
packages = [
|
|
@@ -488,6 +541,7 @@ def test_nox_virtualenvs(pipexec, build, tmp_path):
|
|
|
488
541
|
|
|
489
542
|
@pytest.mark.skip_unless_on_linux
|
|
490
543
|
def test_pip_install_m2crypto_system_ssl(pipexec, pyexec):
|
|
544
|
+
pytest.xfail("Failure needs troubleshooting")
|
|
491
545
|
env = os.environ.copy()
|
|
492
546
|
env["RELENV_DEBUG"] = "yes"
|
|
493
547
|
env["LDFLAGS"] = "-L/usr/lib"
|
|
@@ -523,18 +577,35 @@ def test_pip_install_m2crypto_system_ssl(pipexec, pyexec):
|
|
|
523
577
|
|
|
524
578
|
|
|
525
579
|
@pytest.mark.skip_unless_on_linux
|
|
526
|
-
|
|
580
|
+
@pytest.mark.parametrize(
|
|
581
|
+
"m2crypto_version",
|
|
582
|
+
[
|
|
583
|
+
"0.38.0",
|
|
584
|
+
"0.44.0",
|
|
585
|
+
],
|
|
586
|
+
)
|
|
587
|
+
def test_pip_install_m2crypto_relenv_ssl(
|
|
588
|
+
m2crypto_version, pipexec, pyexec, build, build_version, minor_version
|
|
589
|
+
):
|
|
590
|
+
if m2crypto_version == "0.38.0" and minor_version in ["3.12", "3.13"]:
|
|
591
|
+
pytest.xfail("Fails due to no distutils")
|
|
527
592
|
env = os.environ.copy()
|
|
528
593
|
env["RELENV_BUILDENV"] = "yes"
|
|
529
594
|
env["RELENV_DEBUG"] = "yes"
|
|
530
595
|
env["LDFLAGS"] = f"-L{build}lib"
|
|
531
|
-
env["CFLAGS"] = f"-I{build}/include"
|
|
532
|
-
env["SWIG_FEATURES"] = f"-I{build}/include"
|
|
596
|
+
env["CFLAGS"] = f"-I{build}/include -I{build}/include/python{minor_version}"
|
|
597
|
+
env["SWIG_FEATURES"] = f"-I{build}/include -I{build}/include/python{minor_version}"
|
|
533
598
|
p = subprocess.run(
|
|
534
599
|
["swig", "-version"],
|
|
535
600
|
)
|
|
536
601
|
p = subprocess.run(
|
|
537
|
-
[
|
|
602
|
+
[
|
|
603
|
+
str(pipexec),
|
|
604
|
+
"install",
|
|
605
|
+
f"m2crypto=={m2crypto_version}",
|
|
606
|
+
"--no-cache-dir",
|
|
607
|
+
"-v",
|
|
608
|
+
],
|
|
538
609
|
env=env,
|
|
539
610
|
stderr=subprocess.PIPE,
|
|
540
611
|
)
|
|
@@ -1342,6 +1413,7 @@ def test_install_mysqlclient(pipexec, build, minor_version):
|
|
|
1342
1413
|
|
|
1343
1414
|
@pytest.mark.skip_unless_on_linux
|
|
1344
1415
|
def test_install_m2crypto(pipexec, build, minor_version):
|
|
1416
|
+
pytest.xfail("Failure needs troubleshooting")
|
|
1345
1417
|
version = "0.42.0"
|
|
1346
1418
|
extras = build / "extras"
|
|
1347
1419
|
p = subprocess.run(
|
relenv-0.18.0.dist-info/RECORD
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
relenv/__init__.py,sha256=ygb7oLHbR0nrXNZALc50YsVoLE2D-rIh0dyUCMR7jP4,109
|
|
2
|
-
relenv/__main__.py,sha256=EGXGdMXmWtwxqBDocs2FN9HqjxfGlnAK95J3VRLSqYw,1333
|
|
3
|
-
relenv/buildenv.py,sha256=iyWpP0C1tU-pdvlxP6hub-JeDhoePrK_cfqOyZdzeRE,2976
|
|
4
|
-
relenv/check.py,sha256=iYtscg9LV_WPy1b_m8TulljFXoaWhT8fLH-vTFnZJ0w,959
|
|
5
|
-
relenv/common.py,sha256=TOHEKG1C7-QbOC5Qp3Rfhp7arbyca1IkvGk5tdZn-ZI,14901
|
|
6
|
-
relenv/create.py,sha256=41qHFodgJ4UV668DFg5vKC45YGIKuIX7rZ-hbir7Nuo,3933
|
|
7
|
-
relenv/fetch.py,sha256=2bA1sNJRaCrtSwy7Y9dzJPfoj6mzYr3kJFjq2MEuJbo,2391
|
|
8
|
-
relenv/relocate.py,sha256=maOQ4mgpkykdZK5ZdRQeMDfmJ1edQyphnhJjfILZaWI,11800
|
|
9
|
-
relenv/runtime.py,sha256=faeLG3RlJM-cPiIlm8wDKRV85gUIghlwzXxSPsTtkUE,30536
|
|
10
|
-
relenv/toolchain.py,sha256=ck4dT1DD-Ge2hnnkP4vHnoQsaeN9uvL6oJ3r8NDLgmw,5861
|
|
11
|
-
relenv/build/__init__.py,sha256=ecP-61QYgb6EEIiVzIvhKNDZVAO7jvCsVCGnlbR06sc,5160
|
|
12
|
-
relenv/build/common.py,sha256=dt-1k1syXZH2pmupq4s3GuTij3ajRZmCURhEXvOkdRw,48800
|
|
13
|
-
relenv/build/darwin.py,sha256=X-GdQE4qtoPTpUAkZ4q6aroC63NJSRs8qgFZJi806aA,4010
|
|
14
|
-
relenv/build/linux.py,sha256=Pgiu6GJqF2RJMR45LB6cBlHDV3jrJQ3Tk7OLQlwdqyA,20748
|
|
15
|
-
relenv/build/windows.py,sha256=R-Otjl72XkJIwjJUKVOD9ghIhnayqCWkCdr38o1AqHw,6154
|
|
16
|
-
tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
17
|
-
tests/conftest.py,sha256=nZjSkyim5RQJ7_HZ--qKzfh93pVzz-5Ep0GXKj-ba2w,2043
|
|
18
|
-
tests/test_build.py,sha256=JiJIr3ny5353t8eGQR-_pcoSFrq9p-O8HeAgyeOfVg0,1453
|
|
19
|
-
tests/test_common.py,sha256=w820LMMl2-5pd3FqNajTINsqggs8iL3aS308ycp6VhQ,6593
|
|
20
|
-
tests/test_create.py,sha256=d4sri9iCGEC6RZDZslV2svsZ2h3iZeAOWDetkgSWV-I,1587
|
|
21
|
-
tests/test_downloads.py,sha256=5dqlfrheIkS-J4EBvo1FO-8HjakcJn_1oqNVfrEpobs,3305
|
|
22
|
-
tests/test_fips_photon.py,sha256=AP0pjSH3id_yg0pSAUfeiPIMeC6rzKTHN_sh0p5LEhg,1251
|
|
23
|
-
tests/test_relocate.py,sha256=BlCJFYC_B_XqtRKOhFIdfm10wkXWVDw82-ZXBm5gx3I,8857
|
|
24
|
-
tests/test_runtime.py,sha256=T_OQHUPAt5eIizZiF4ZyGpwI1NvFauBvga8aklnuO88,629
|
|
25
|
-
tests/test_toolchain.py,sha256=xb5i-swlRVE9KVevYnAMmD9ZPm7EM6OFt5FmSYZrlMU,4382
|
|
26
|
-
tests/test_verify_build.py,sha256=7PKeWGcyhny7OGEMMM82jeEYRD0d1qBCgKiV-5Fj9DM,39430
|
|
27
|
-
relenv-0.18.0.dist-info/LICENSE.md,sha256=T0SRk3vJM1YcAJjDz9vsX9gsCRatAVSBS7LeU0tklRM,9919
|
|
28
|
-
relenv-0.18.0.dist-info/METADATA,sha256=iiR4fWh4suDb-OM-kp1BeihcwvxaDkBJaIpBMuYBVzs,1315
|
|
29
|
-
relenv-0.18.0.dist-info/NOTICE,sha256=Ns0AybPHBsgJKJJfjE6YnGgWEQQ9F7lQ6QNlYLlQT3E,548
|
|
30
|
-
relenv-0.18.0.dist-info/WHEEL,sha256=OVMc5UfuAQiSplgO0_WdW7vXVGAt9Hdd6qtN4HotdyA,91
|
|
31
|
-
relenv-0.18.0.dist-info/entry_points.txt,sha256=dO66nWPPWl8ALWWnZFlHKAo6mfPFuQid7purYWL2ddc,48
|
|
32
|
-
relenv-0.18.0.dist-info/top_level.txt,sha256=P4Ro6JLZE53ZdsQ76o2OzBcpb0MaVJmbfr0HAn9WF8M,13
|
|
33
|
-
relenv-0.18.0.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|