summaryrefslogtreecommitdiff
path: root/mesonbuild/compilers
diff options
context:
space:
mode:
authorAndrew Lister <andrew.lister@stfc.ac.uk>2025-06-20 15:33:59 +0100
committerDylan Baker <dylan@pnwbakers.com>2025-06-27 09:29:55 -0700
commit68d29ef7f62df5481aa4de8eaf421f25243f4cb2 (patch)
tree6c19d50608dc012264a6ced7d6a1d41d9a2ab6cf /mesonbuild/compilers
parentfea9f6918a6647430f4e22ca908f074b3e93e489 (diff)
downloadmeson-68d29ef7f62df5481aa4de8eaf421f25243f4cb2.tar.gz
compilers-fortran: Fix preprocessing when fortran uses concat operator
Diffstat (limited to 'mesonbuild/compilers')
-rw-r--r--mesonbuild/compilers/fortran.py5
-rw-r--r--mesonbuild/compilers/mixins/gnu.py2
2 files changed, 7 insertions, 0 deletions
diff --git a/mesonbuild/compilers/fortran.py b/mesonbuild/compilers/fortran.py
index 180a2dbfa..6f4f3d2c1 100644
--- a/mesonbuild/compilers/fortran.py
+++ b/mesonbuild/compilers/fortran.py
@@ -446,6 +446,11 @@ class IntelLLVMFortranCompiler(IntelFortranCompiler):
id = 'intel-llvm'
+ def get_preprocess_only_args(self) -> T.List[str]:
+ return ['-preprocess-only']
+
+ def get_dependency_gen_args(self, outtarget: str, outfile: str) -> T.List[str]:
+ return []
class IntelClFortranCompiler(IntelVisualStudioLikeCompiler, FortranCompiler):
diff --git a/mesonbuild/compilers/mixins/gnu.py b/mesonbuild/compilers/mixins/gnu.py
index 9ea591e04..ddcd14a15 100644
--- a/mesonbuild/compilers/mixins/gnu.py
+++ b/mesonbuild/compilers/mixins/gnu.py
@@ -534,6 +534,8 @@ class GnuLikeCompiler(Compiler, metaclass=abc.ABCMeta):
# We want to allow preprocessing files with any extension, such as
# foo.c.in. In that case we need to tell GCC/CLANG to treat them as
# assembly file.
+ if self.language == 'fortran':
+ return self.get_preprocess_only_args()
lang = gnu_lang_map.get(self.language, 'assembler-with-cpp')
return self.get_preprocess_only_args() + [f'-x{lang}']