summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
authorMartin Lang <67915889+lang-m@users.noreply.github.com>2024-03-20 18:55:54 +0100
committerGitHub <noreply@github.com>2024-03-20 18:55:54 +0100
commit9802649716b40e980cb97cbbd5ca1d8850d95b3f (patch)
treeaf22aa09e61ecdbce933f4bdec7c409ad4e7ce94 /var
parent8d9d721f07f257e2046ae455fc9ea2ed84e0aa23 (diff)
downloadspack-9802649716b40e980cb97cbbd5ca1d8850d95b3f.tar.gz
spack-9802649716b40e980cb97cbbd5ca1d8850d95b3f.tar.bz2
spack-9802649716b40e980cb97cbbd5ca1d8850d95b3f.tar.xz
spack-9802649716b40e980cb97cbbd5ca1d8850d95b3f.zip
berkeleygw: update FCPP flags for gcc (#42848)
Compilation with the old flags fails on PowerPC (power8le) due to syntax errors in the output from the preprocessor. Compilation with the extended set of flags works both on PowerPC and x86_64. The correct set of flags was suggested from the berkeleygw developers: https://groups.google.com/a/berkeleygw.org/g/help/c/ewi3RZgOyeE/m/jSIoe45PAgAJ Uses spack-provided compiler prefix to call cpp when compiling berkeleygw with gcc.
Diffstat (limited to 'var')
-rw-r--r--var/spack/repos/builtin/packages/berkeleygw/package.py6
1 files changed, 5 insertions, 1 deletions
diff --git a/var/spack/repos/builtin/packages/berkeleygw/package.py b/var/spack/repos/builtin/packages/berkeleygw/package.py
index 980ebbc260..dbd1ea7fc7 100644
--- a/var/spack/repos/builtin/packages/berkeleygw/package.py
+++ b/var/spack/repos/builtin/packages/berkeleygw/package.py
@@ -232,7 +232,11 @@ class Berkeleygw(MakefilePackage):
f90_flags += " -fallow-argument-mismatch"
buildopts.append("COMPFLAG=-DGNU")
buildopts.append("MOD_OPT=-J ")
- buildopts.append("FCPP=cpp -C -nostdinc")
+ # std c11 prevents problems with linebreaks and fortran comments
+ # containing // (which is interpreted as C++ style comment)
+ buildopts.append(
+ "FCPP=%s -C -nostdinc -std=c11" % join_path(self.compiler.prefix, "bin", "cpp")
+ )
if "+mpi" in spec:
buildopts.append("F90free=%s %s" % (spec["mpi"].mpifc, f90_flags))
buildopts.append("C_COMP=%s %s" % (spec["mpi"].mpicc, c_flags))