diff options
author | Mosè Giordano <giordano@users.noreply.github.com> | 2023-01-26 10:59:54 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-01-26 11:59:54 +0100 |
commit | eeba92e788f4baf1b745c0ab6c61354a35ba13fa (patch) | |
tree | 14361125c3a7b8791bbb48e8eccf55bf00934c06 | |
parent | 84917cfa79e29265b387b483d5773b9d20db3ec9 (diff) | |
download | spack-eeba92e788f4baf1b745c0ab6c61354a35ba13fa.tar.gz spack-eeba92e788f4baf1b745c0ab6c61354a35ba13fa.tar.bz2 spack-eeba92e788f4baf1b745c0ab6c61354a35ba13fa.tar.xz spack-eeba92e788f4baf1b745c0ab6c61354a35ba13fa.zip |
wrf: Fix patching of config file when using GCC for v3.9.1.1 (#35140)
The regex doesn't actually work because dollar signs and parentheses have to be
escaped. Also, compiling with OpenMPI requires defining the macro
`MPI2SUPPORT`.
-rw-r--r-- | var/spack/repos/builtin/packages/wrf/package.py | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/var/spack/repos/builtin/packages/wrf/package.py b/var/spack/repos/builtin/packages/wrf/package.py index b0d87af04a..c2a3352d0c 100644 --- a/var/spack/repos/builtin/packages/wrf/package.py +++ b/var/spack/repos/builtin/packages/wrf/package.py @@ -287,10 +287,16 @@ class Wrf(Package): config = FileFilter(join_path("arch", "configure.defaults")) if self.spec.satisfies("@3.9.1.1 %gcc"): + # Compiling with OpenMPI requires using `-DMPI2SUPPORT`. + other_flags = " -DMPI2SUPPORT" if self.spec.satisfies("^openmpi") else "" config.filter( - "^DM_FC.*mpif90 -f90=$(SFC)", "DM_FC = {0}".format(self.spec["mpi"].mpifc) + r"^DM_FC.*mpif90 -f90=\$\(SFC\)", + "DM_FC = {0}".format(self.spec["mpi"].mpifc) + other_flags, + ) + config.filter( + r"^DM_CC.*mpicc -cc=\$\(SCC\)", + "DM_CC = {0}".format(self.spec["mpi"].mpicc) + other_flags, ) - config.filter("^DM_CC.*mpicc -cc=$(SCC)", "DM_CC = {0}".format(self.spec["mpi"].mpicc)) if self.spec.satisfies("%aocc"): config.filter( |