diff options
-rw-r--r-- | mesonbuild/compilers/c.py | 7 | ||||
-rw-r--r-- | mesonbuild/compilers/cpp.py | 8 |
2 files changed, 15 insertions, 0 deletions
diff --git a/mesonbuild/compilers/c.py b/mesonbuild/compilers/c.py index 4c6e3a2..5b376e9 100644 --- a/mesonbuild/compilers/c.py +++ b/mesonbuild/compilers/c.py @@ -804,6 +804,13 @@ class CCompiler(Compiler): return ['-pthread'] def has_multi_arguments(self, args, env): + for arg in args: + if arg.startswith('-Wl,'): + mlog.warning('''{} looks like a linker argument, but has_argument +and other similar methods only support checking compiler arguments. +Using them to check linker arguments are never supported, and results +are likely to be wrong regardless of the compiler you are using. +'''.format(arg)) return self.compiles('int i;\n', env, extra_args=args) diff --git a/mesonbuild/compilers/cpp.py b/mesonbuild/compilers/cpp.py index 5e32ace..3a7e753 100644 --- a/mesonbuild/compilers/cpp.py +++ b/mesonbuild/compilers/cpp.py @@ -14,6 +14,7 @@ import os.path +from .. import mlog from .. import coredata from ..mesonlib import version_compare @@ -174,6 +175,13 @@ class IntelCPPCompiler(IntelCompiler, CPPCompiler): return [] def has_multi_arguments(self, args, env): + for arg in args: + if arg.startswith('-Wl,'): + mlog.warning('''{} looks like a linker argument, but has_argument +and other similar methods only support checking compiler arguments. +Using them to check linker arguments are never supported, and results +are likely to be wrong regardless of the compiler you are using. +'''.format(arg)) return super().has_multi_arguments(args + ['-diag-error', '10006'], env) |