diff --git a/eb_hooks.py b/eb_hooks.py index feb65b1a..cb1ddbc8 100644 --- a/eb_hooks.py +++ b/eb_hooks.py @@ -717,26 +717,26 @@ def post_prepare_hook_highway_handle_test_compilation_issues(self, *args, **kwar update_build_option('optarch', self.orig_optarch) -def pre_prepare_hook_llvm15_a64fx(self, *args, **kwargs): +def pre_prepare_hook_llvm_a64fx(self, *args, **kwargs): """ - Solve issues with compiling LLVM 15.0.5 on A64FX by changing the optarch build option. + Solve issues with compiling LLVM 14 and 15 on A64FX by changing the optarch build option. Rust 1.65.0 also includes LLVM 15, so we do the same for that application. cfr. https://github.com/EESSI/software-layer/issues/1213 """ cpu_target = get_eessi_envvar('EESSI_SOFTWARE_SUBDIR') if cpu_target == CPU_TARGET_A64FX: - if (self.name == 'LLVM' and self.version == '15.0.5') or (self.name == 'Rust' and self.version == '1.65.0'): + if (self.name == 'LLVM' and self.version in ['14.0.6', '15.0.5']) or (self.name == 'Rust' and self.version == '1.65.0'): self.orig_optarch = build_option('optarch') update_build_option('optarch', 'march=armv8.2-a') -def post_prepare_hook_llvm15_a64fx(self, *args, **kwargs): +def post_prepare_hook_llvm_a64fx(self, *args, **kwargs): """ - Post-prepare hook for LLVM 15 to reset optarch build option. + Post-prepare hook for LLVM 14 and 15 on A64FX to reset optarch build option. """ cpu_target = get_eessi_envvar('EESSI_SOFTWARE_SUBDIR') if cpu_target == CPU_TARGET_A64FX: - if (self.name == 'LLVM' and self.version == '15.0.5') or (self.name == 'Rust' and self.version == '1.65.0'): + if (self.name == 'LLVM' and self.version in ['14.0.6', '15.0.5']) or (self.name == 'Rust' and self.version == '1.65.0'): update_build_option('optarch', self.orig_optarch) @@ -1620,15 +1620,15 @@ def post_easyblock_hook(self, *args, **kwargs): PRE_PREPARE_HOOKS = { 'Highway': pre_prepare_hook_highway_handle_test_compilation_issues, - 'LLVM': pre_prepare_hook_llvm15_a64fx, - 'Rust': pre_prepare_hook_llvm15_a64fx, + 'LLVM': pre_prepare_hook_llvm_a64fx, + 'Rust': pre_prepare_hook_llvm_a64fx, } POST_PREPARE_HOOKS = { 'GCCcore': post_prepare_hook_gcc_prefixed_ld_rpath_wrapper, 'Highway': post_prepare_hook_highway_handle_test_compilation_issues, - 'LLVM': post_prepare_hook_llvm15_a64fx, - 'Rust': post_prepare_hook_llvm15_a64fx, + 'LLVM': post_prepare_hook_llvm_a64fx, + 'Rust': post_prepare_hook_llvm_a64fx, } PRE_CONFIGURE_HOOKS = {