diff --git a/mpcdf_common.py b/mpcdf_common.py index 3e1c69b4cb3ca4a55f5ef9df7cd7866ed4768b2d..9632887b1f115d9f12f5fedd3fff60aa6999e2c8 100644 --- a/mpcdf_common.py +++ b/mpcdf_common.py @@ -620,6 +620,11 @@ def openmpi_flavor_dependencies(flavor, distribution): return () +def openmpi_flavor_kind(flavor): + import re + return re.sub("(_[0-9]+)*$", "", flavor) + + def mpcdf_setup_subproject(api_url, project, distribution, microarchitecture, parent=None, dry_run=False, diff=False, remove_old=False, remove_old_matching=None, all_possible=False, only_project=False): import re @@ -810,10 +815,9 @@ Macros: dependencies = ((project, compiler),) if not parent: dependencies = openmpi_flavor_dependencies(of, distribution) + dependencies - flavor_kind = re.sub("(_[0-9]+)*$", "", of) repo(mpi + "_" + compiler + "_" + of, dependencies, mpi=True, mpi_repository=mpi, mpi_module=mpi_module(mpi), - openmpi_flavor=flavor_kind) + openmpi_flavor=openmpi_flavor_kind(of)) for cuda in cudas: for compiler in filter(partial(valid_cuda, cuda), compilers): @@ -837,7 +841,8 @@ Macros: dependencies = openmpi_flavor_dependencies(of, distribution) + dependencies repo(cuda + "_aware_" + mpi + "_" + compiler + "_" + of, dependencies, - cuda_aware_mpi=True, openmpi_flavor=of, + cuda_aware_mpi=True, + openmpi_flavor=openmpi_flavor_kind(of), additional_tags=("Prefer: mpcdf_" + cuda,)) if old_repos: