diff --git a/var/spack/repos/builtin/packages/flang/package.py b/var/spack/repos/builtin/packages/flang/package.py index f0f49ae5068..4fd754eab35 100644 --- a/var/spack/repos/builtin/packages/flang/package.py +++ b/var/spack/repos/builtin/packages/flang/package.py @@ -71,6 +71,11 @@ def cmake_args(self): spec['python'].command.path) ] + # Make sure llvm-flang can find GCC's libstdc++ + if self.compiler.name == "gcc": + gcc_prefix = ancestor(self.compiler.cc, 2) + options.append('-DGCC_INSTALL_PREFIX=' + gcc_prefix) + if '+cuda' in spec: options.append('-DFLANG_OPENMP_GPU_NVIDIA=ON') else: diff --git a/var/spack/repos/builtin/packages/llvm-flang/package.py b/var/spack/repos/builtin/packages/llvm-flang/package.py index 99948fd76f4..d5b93701699 100644 --- a/var/spack/repos/builtin/packages/llvm-flang/package.py +++ b/var/spack/repos/builtin/packages/llvm-flang/package.py @@ -195,6 +195,11 @@ def cmake_args(self): args.append('-DLIBOMP_FORTRAN_MODULES=ON') args.append('-DLIBOMP_ENABLE_SHARED=TRUE') + # Make sure llvm-flang can find GCC's libstdc++ + if self.compiler.name == "gcc": + gcc_prefix = ancestor(self.compiler.cc, 2) + args.append('-DGCC_INSTALL_PREFIX=' + gcc_prefix) + # used by libomptarget for NVidia gpu if '+cuda' in spec: args.append('-DOPENMP_ENABLE_LIBOMPTARGET=ON')