Skip to content

Commit 23343ee

Browse files
authored
Merge pull request #86 from bedroge/a64fx_rust_1.65.0
add parse hook that replaces build dependencies on Rust 1.65.0 by 1.75.0 on A64FX
2 parents 28c1750 + e8230f7 commit 23343ee

File tree

1 file changed

+23
-0
lines changed

1 file changed

+23
-0
lines changed

eb_hooks.py

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -154,6 +154,9 @@ def parse_hook(ec, *args, **kwargs):
154154
if cpu_target == CPU_TARGET_ZEN4:
155155
parse_hook_zen4_module_only(ec, eprefix)
156156

157+
# All A64FX builds for the 2022b toolchain should use a newer Rust version, as the original one does not work
158+
parse_hook_bump_rust_version_in_2022b_for_a64fx(ec, eprefix)
159+
157160
# inject the GPU property (if required)
158161
ec = inject_gpu_property(ec)
159162

@@ -448,6 +451,26 @@ def parse_hook_openblas_relax_lapack_tests_num_errors(ec, eprefix):
448451
raise EasyBuildError("OpenBLAS-specific hook triggered for non-OpenBLAS easyconfig?!")
449452

450453

454+
def parse_hook_bump_rust_version_in_2022b_for_a64fx(ec, eprefix):
455+
"""
456+
Replace Rust 1.65.0 build dependency by version 1.75.0 for A64FX builds,
457+
because version 1.65.0 has build issues.
458+
"""
459+
cpu_target = get_eessi_envvar('EESSI_SOFTWARE_SUBDIR')
460+
if cpu_target == CPU_TARGET_A64FX:
461+
if is_gcccore_1220_based(ecname=ec['name'], ecversion=ec['version'],
462+
tcname=ec['toolchain']['name'], tcversion=ec['toolchain']['version']):
463+
464+
build_deps = ec['builddependencies']
465+
rust_name = 'Rust'
466+
rust_original_version = '1.65.0'
467+
rust_new_version = '1.75.0'
468+
for idx, build_dep in enumerate(build_deps):
469+
if build_dep[0] == rust_name and build_dep[1] == rust_original_version:
470+
build_deps[idx] = (rust_name, rust_new_version)
471+
break
472+
473+
451474
def parse_hook_pybind11_replace_catch2(ec, eprefix):
452475
"""
453476
Replace Catch2 build dependency in pybind11 easyconfigs with one that doesn't use system toolchain.

0 commit comments

Comments
 (0)