From 2ececcd03eb37e706b3e89fcf4b962c8dce7484c Mon Sep 17 00:00:00 2001 From: Chris White Date: Wed, 29 Nov 2023 20:32:50 -0800 Subject: MFEM: add mpi link dir (#41337) Also fix netcdf-c zlib reference --- var/spack/repos/builtin/packages/mfem/package.py | 14 ++++++++------ var/spack/repos/builtin/packages/netcdf-c/package.py | 2 +- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/var/spack/repos/builtin/packages/mfem/package.py b/var/spack/repos/builtin/packages/mfem/package.py index 75eeda7b1f..588a4627ed 100644 --- a/var/spack/repos/builtin/packages/mfem/package.py +++ b/var/spack/repos/builtin/packages/mfem/package.py @@ -751,12 +751,14 @@ class Mfem(Package, CudaPackage, ROCmPackage): ) gfortran_lib = LibraryList(libfile) sp_lib += [ld_flags_from_library_list(gfortran_lib)] - if ("^mpich" in strumpack) or ("^mvapich2" in strumpack): - sp_lib += ["-lmpifort"] - elif "^openmpi" in strumpack: - sp_lib += ["-lmpi_mpifh"] - elif "^spectrum-mpi" in strumpack: - sp_lib += ["-lmpi_ibm_mpifh"] + if "+mpi" in strumpack: + mpi = strumpack["mpi"] + if ("^mpich" in strumpack) or ("^mvapich2" in strumpack): + sp_lib += [ld_flags_from_dirs([mpi.prefix.lib], ["mpifort"])] + elif "^openmpi" in strumpack: + sp_lib += [ld_flags_from_dirs([mpi.prefix.lib], ["mpi_mpifh"])] + elif "^spectrum-mpi" in strumpack: + sp_lib += [ld_flags_from_dirs([mpi.prefix.lib], ["mpi_ibm_mpifh"])] if "+openmp" in strumpack: # The '+openmp' in the spec means strumpack will TRY to find # OpenMP; if not found, we should not add any flags -- how do diff --git a/var/spack/repos/builtin/packages/netcdf-c/package.py b/var/spack/repos/builtin/packages/netcdf-c/package.py index f111264e81..220a1edc95 100644 --- a/var/spack/repos/builtin/packages/netcdf-c/package.py +++ b/var/spack/repos/builtin/packages/netcdf-c/package.py @@ -441,7 +441,7 @@ class AutotoolsBuilder(BaseBuilder, autotools.AutotoolsBuilder): if "~shared" in hdf5: if "+szip" in hdf5: extra_libs.append(hdf5["szip"].libs) - extra_libs.append(hdf5["zlib"].libs) + extra_libs.append(hdf5["zlib-api"].libs) if self.spec.satisfies("@4.9.0:+shared"): lib_search_dirs.extend(self.spec["zlib-api"].libs.directories) -- cgit v1.2.3-60-g2f50