From 9802649716b40e980cb97cbbd5ca1d8850d95b3f Mon Sep 17 00:00:00 2001 From: Martin Lang <67915889+lang-m@users.noreply.github.com> Date: Wed, 20 Mar 2024 18:55:54 +0100 Subject: 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. --- var/spack/repos/builtin/packages/berkeleygw/package.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'var') 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)) -- cgit v1.2.3-70-g09d2