summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDylan Baker <dylan@pnwbakers.com>2025-11-13 09:37:58 -0800
committerDylan Baker <dylan@pnwbakers.com>2025-11-19 10:48:48 -0800
commit249c22df004e971bdc3d4121f526358e7552591e (patch)
tree242700aa239812629553f938ee88008845de1bb6
parent81bd5d3fe409dd46cad307fbb18703fda1261e38 (diff)
downloadmeson-249c22df004e971bdc3d4121f526358e7552591e.tar.gz
compilers: Remove Environment parameter from Compiler.get_option_std_args
-rw-r--r--mesonbuild/backend/backends.py2
-rw-r--r--mesonbuild/backend/ninjabackend.py2
-rw-r--r--mesonbuild/backend/vs2010backend.py2
-rw-r--r--mesonbuild/backend/xcodebackend.py2
-rw-r--r--mesonbuild/compilers/c.py26
-rw-r--r--mesonbuild/compilers/compilers.py2
-rw-r--r--mesonbuild/compilers/cpp.py34
-rw-r--r--mesonbuild/compilers/cuda.py4
-rw-r--r--mesonbuild/compilers/fortran.py6
-rw-r--r--mesonbuild/compilers/mixins/elbrus.py6
-rw-r--r--mesonbuild/compilers/objc.py8
-rw-r--r--mesonbuild/compilers/objcpp.py8
-rw-r--r--mesonbuild/compilers/rust.py2
-rw-r--r--mesonbuild/compilers/swift.py4
-rw-r--r--mesonbuild/interpreter/compiler.py2
15 files changed, 55 insertions, 55 deletions
diff --git a/mesonbuild/backend/backends.py b/mesonbuild/backend/backends.py
index 446e15e8a..bf29e5306 100644
--- a/mesonbuild/backend/backends.py
+++ b/mesonbuild/backend/backends.py
@@ -939,7 +939,7 @@ class Backend:
# Add compile args for c_* or cpp_* build options set on the
# command-line or default_options inside project().
commands += compiler.get_option_compile_args(target, self.environment, target.subproject)
- commands += compiler.get_option_std_args(target, self.environment, target.subproject)
+ commands += compiler.get_option_std_args(target, target.subproject)
optimization = self.get_target_option(target, 'optimization')
assert isinstance(optimization, str), 'for mypy'
diff --git a/mesonbuild/backend/ninjabackend.py b/mesonbuild/backend/ninjabackend.py
index 3ef5f6267..bd4f86099 100644
--- a/mesonbuild/backend/ninjabackend.py
+++ b/mesonbuild/backend/ninjabackend.py
@@ -1829,7 +1829,7 @@ class NinjaBackend(backends.Backend):
args += cython.get_debug_args(self.get_target_option(target, 'debug'))
args += cython.get_optimization_args(self.get_target_option(target, 'optimization'))
args += cython.get_option_compile_args(target, self.environment, target.subproject)
- args += cython.get_option_std_args(target, self.environment, target.subproject)
+ args += cython.get_option_std_args(target, target.subproject)
args += self.build.get_global_args(cython, target.for_machine)
args += self.build.get_project_args(cython, target.subproject, target.for_machine)
args += target.get_extra_args('cython')
diff --git a/mesonbuild/backend/vs2010backend.py b/mesonbuild/backend/vs2010backend.py
index 8188b1826..98efa1fe5 100644
--- a/mesonbuild/backend/vs2010backend.py
+++ b/mesonbuild/backend/vs2010backend.py
@@ -1034,7 +1034,7 @@ class Vs2010Backend(backends.Backend):
file_args[l] += comp.get_option_compile_args(
target, self.environment, target.subproject)
file_args[l] += comp.get_option_std_args(
- target, self.environment, target.subproject)
+ target, target.subproject)
# Add compile args added using add_project_arguments()
for l, args in self.build.projects_args[target.for_machine].get(target.subproject, {}).items():
diff --git a/mesonbuild/backend/xcodebackend.py b/mesonbuild/backend/xcodebackend.py
index 95a62a02a..f07c1982d 100644
--- a/mesonbuild/backend/xcodebackend.py
+++ b/mesonbuild/backend/xcodebackend.py
@@ -1744,7 +1744,7 @@ class XCodeBackend(backends.Backend):
# Start with warning args
warn_args = compiler.get_warn_args(self.get_target_option(target, 'warning_level'))
std_args = compiler.get_option_compile_args(target, self.environment, target.subproject)
- std_args += compiler.get_option_std_args(target, self.environment, target.subproject)
+ std_args += compiler.get_option_std_args(target, target.subproject)
# Add compile args added using add_project_arguments()
pargs = self.build.projects_args[target.for_machine].get(target.subproject, {}).get(lang, [])
# Add compile args added using add_global_arguments()
diff --git a/mesonbuild/compilers/c.py b/mesonbuild/compilers/c.py
index adad9179c..7143d9e92 100644
--- a/mesonbuild/compilers/c.py
+++ b/mesonbuild/compilers/c.py
@@ -128,7 +128,7 @@ class ClangCCompiler(ClangCStds, ClangCompiler, CCompiler):
gnu_winlibs)
return opts
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args = []
std = self.get_compileropt_value('std', target, subproject)
assert isinstance(std, str)
@@ -213,7 +213,7 @@ class ArmclangCCompiler(ArmclangCompiler, CCompiler):
std_opt.set_versions(['c90', 'c99', 'c11'], gnu=True)
return opts
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args = []
std = self.get_compileropt_value('std', target, subproject)
assert isinstance(std, str)
@@ -256,7 +256,7 @@ class GnuCCompiler(GnuCStds, GnuCompiler, CCompiler):
gnu_winlibs)
return opts
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args = []
key = OptionKey('c_std', machine=self.for_machine)
std = self.get_compileropt_value(key, target, subproject)
@@ -373,7 +373,7 @@ class IntelCCompiler(IntelGnuLikeCompiler, CCompiler):
std_opt.set_versions(stds, gnu=True)
return opts
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args: T.List[str] = []
std = self.get_compileropt_value('std', target, subproject)
assert isinstance(std, str)
@@ -435,7 +435,7 @@ class VisualStudioCCompiler(MSVCCompiler, VisualStudioLikeCCompilerMixin, CCompi
std_opt.set_versions(stds, gnu=True, gnu_deprecated=True)
return opts
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args = []
std = self.get_compileropt_value('std', target, subproject)
@@ -456,7 +456,7 @@ class ClangClCCompiler(ClangCStds, ClangClCompiler, VisualStudioLikeCCompilerMix
env, linker=linker, full_version=full_version)
ClangClCompiler.__init__(self, target)
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
std = self.get_compileropt_value('std', target, subproject)
assert isinstance(std, str)
if std != "none":
@@ -484,7 +484,7 @@ class IntelClCCompiler(IntelVisualStudioLikeCompiler, VisualStudioLikeCCompilerM
std_opt.set_versions(['c89', 'c99', 'c11'])
return opts
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args: T.List[str] = []
std = self.get_compileropt_value('std', target, subproject)
assert isinstance(std, str)
@@ -517,7 +517,7 @@ class ArmCCompiler(ArmCompiler, CCompiler):
std_opt.set_versions(['c89', 'c99', 'c11'])
return opts
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args = []
std = self.get_compileropt_value('std', target, subproject)
assert isinstance(std, str)
@@ -550,7 +550,7 @@ class CcrxCCompiler(CcrxCompiler, CCompiler):
def get_no_stdinc_args(self) -> T.List[str]:
return []
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args = []
std = self.get_compileropt_value('std', target, subproject)
assert isinstance(std, str)
@@ -598,7 +598,7 @@ class Xc16CCompiler(Xc16Compiler, CCompiler):
def get_no_stdinc_args(self) -> T.List[str]:
return []
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args = []
std = self.get_compileropt_value('std', target, subproject)
assert isinstance(std, str)
@@ -693,7 +693,7 @@ class TICCompiler(TICompiler, CCompiler):
def get_no_stdinc_args(self) -> T.List[str]:
return []
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args = []
std = self.get_compileropt_value('std', target, subproject)
assert isinstance(std, str)
@@ -727,7 +727,7 @@ class MetrowerksCCompilerARM(MetrowerksCompiler, CCompiler):
self._update_language_stds(opts, ['c99'])
return opts
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args = []
std = self.get_compileropt_value('std', target, subproject)
assert isinstance(std, str)
@@ -755,7 +755,7 @@ class MetrowerksCCompilerEmbeddedPowerPC(MetrowerksCompiler, CCompiler):
self._update_language_stds(opts, ['c99'])
return opts
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args = []
std = self.get_compileropt_value('std', target, subproject)
assert isinstance(std, str)
diff --git a/mesonbuild/compilers/compilers.py b/mesonbuild/compilers/compilers.py
index 845f798d7..34ac57133 100644
--- a/mesonbuild/compilers/compilers.py
+++ b/mesonbuild/compilers/compilers.py
@@ -635,7 +635,7 @@ class Compiler(HoldableObject, metaclass=abc.ABCMeta):
def get_option_compile_args(self, target: 'BuildTarget', env: 'Environment', subproject: T.Optional[str] = None) -> T.List[str]:
return []
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
return []
def get_option_link_args(self, target: 'BuildTarget', subproject: T.Optional[str] = None) -> T.List[str]:
diff --git a/mesonbuild/compilers/cpp.py b/mesonbuild/compilers/cpp.py
index 857fccef3..266bfde40 100644
--- a/mesonbuild/compilers/cpp.py
+++ b/mesonbuild/compilers/cpp.py
@@ -286,7 +286,7 @@ class ClangCPPCompiler(_StdCPPLibMixin, ClangCPPStds, ClangCompiler, CPPCompiler
return args
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args: T.List[str] = []
std = self.get_compileropt_value('std', target, subproject)
assert isinstance(std, str)
@@ -359,7 +359,7 @@ class EmscriptenCPPCompiler(EmscriptenMixin, ClangCPPCompiler):
ClangCPPCompiler.__init__(self, ccache, exelist, version, for_machine, env,
linker=linker, defines=defines, full_version=full_version)
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args: T.List[str] = []
std = self.get_compileropt_value('std', target, subproject)
assert isinstance(std, str)
@@ -402,7 +402,7 @@ class ArmclangCPPCompiler(ArmclangCompiler, CPPCompiler):
std_opt.set_versions(['c++98', 'c++03', 'c++11', 'c++14', 'c++17'], gnu=True)
return opts
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args: T.List[str] = []
std = self.get_compileropt_value('std', target, subproject)
assert isinstance(std, str)
@@ -488,7 +488,7 @@ class GnuCPPCompiler(_StdCPPLibMixin, GnuCPPStds, GnuCompiler, CPPCompiler):
args.append('-D_GLIBCXX_DEBUG=1')
return args
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args: T.List[str] = []
std = self.get_compileropt_value('std', target, subproject)
assert isinstance(std, str)
@@ -636,7 +636,7 @@ class ElbrusCPPCompiler(ElbrusCompiler, CPPCompiler):
args.append('-D_GLIBCXX_DEBUG=1')
return args
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args: T.List[str] = []
std = self.get_compileropt_value('std', target, subproject)
assert isinstance(std, str)
@@ -720,7 +720,7 @@ class IntelCPPCompiler(IntelGnuLikeCompiler, CPPCompiler):
args.append('-D_GLIBCXX_DEBUG=1')
return args
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args: T.List[str] = []
std = self.get_compileropt_value('std', target, subproject)
assert isinstance(std, str)
@@ -817,7 +817,7 @@ class VisualStudioLikeCPPCompilerMixin(CompilerMixinBase):
return args
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args: T.List[str] = []
std = self.get_compileropt_value('std', target, subproject)
assert isinstance(std, str)
@@ -840,21 +840,21 @@ class CPP11AsCPP14Mixin(CompilerMixinBase):
This is a limitation of Clang and MSVC that ICL doesn't share.
"""
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
# Note: there is no explicit flag for supporting C++11; we attempt to do the best we can
# which means setting the C++ standard version to C++14, in compilers that support it
# (i.e., after VS2015U3)
# if one is using anything before that point, one cannot set the standard.
stdkey = self.form_compileropt_key('std').evolve(subproject=subproject)
if target is not None:
- std = env.coredata.get_option_for_target(target, stdkey)
+ std = self.environment.coredata.get_option_for_target(target, stdkey)
else:
- std = env.coredata.optstore.get_value_for(stdkey)
+ std = self.environment.coredata.optstore.get_value_for(stdkey)
if std in {'vc++11', 'c++11'}:
mlog.warning(self.id, 'does not support C++11;',
'attempting best effort; setting the standard to C++14',
once=True, fatal=False)
- original_args = super().get_option_std_args(target, env, subproject)
+ original_args = super().get_option_std_args(target, subproject)
std_mapping = {'/std:c++11': '/std:c++14'}
processed_args = [std_mapping.get(x, x) for x in original_args]
return processed_args
@@ -890,12 +890,12 @@ class VisualStudioCPPCompiler(CPP11AsCPP14Mixin, VisualStudioLikeCPPCompilerMixi
cpp_stds.extend(['c++20', 'vc++20'])
return self._get_options_impl(super().get_options(), cpp_stds)
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
std = self.get_compileropt_value('std', target, subproject)
if std != 'none' and version_compare(self.version, '<19.00.24210'):
mlog.warning('This version of MSVC does not support cpp_std arguments', fatal=False)
- args = super().get_option_std_args(target, env, subproject)
+ args = super().get_option_std_args(target, subproject)
if version_compare(self.version, '<19.11'):
try:
@@ -967,7 +967,7 @@ class ArmCPPCompiler(ArmCompiler, CPPCompiler):
std_opt.set_versions(['c++03', 'c++11'])
return opts
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args: T.List[str] = []
std = self.get_compileropt_value('std', target, subproject)
assert isinstance(std, str)
@@ -1024,7 +1024,7 @@ class TICPPCompiler(TICompiler, CPPCompiler):
std_opt.set_versions(['c++03'])
return opts
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args: T.List[str] = []
std = self.get_compileropt_value('std', target, subproject)
assert isinstance(std, str)
@@ -1063,7 +1063,7 @@ class MetrowerksCPPCompilerARM(MetrowerksCompiler, CPPCompiler):
self._update_language_stds(opts, [])
return opts
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args: T.List[str] = []
std = self.get_compileropt_value('std', target, subproject)
assert isinstance(std, str)
@@ -1090,7 +1090,7 @@ class MetrowerksCPPCompilerEmbeddedPowerPC(MetrowerksCompiler, CPPCompiler):
self._update_language_stds(opts, [])
return opts
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args: T.List[str] = []
std = self.get_compileropt_value('std', target, subproject)
assert isinstance(std, str)
diff --git a/mesonbuild/compilers/cuda.py b/mesonbuild/compilers/cuda.py
index 3978632ec..ad104b4d9 100644
--- a/mesonbuild/compilers/cuda.py
+++ b/mesonbuild/compilers/cuda.py
@@ -657,7 +657,7 @@ class CudaCompiler(Compiler):
host_compiler_args = []
return args + self._to_host_flags(host_compiler_args)
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
# On Windows, the version of the C++ standard used by nvcc is dictated by
# the combination of CUDA version and MSVC version; the --std= is thus ignored
# and attempting to use it will result in a warning: https://stackoverflow.com/a/51272091/741027
@@ -668,7 +668,7 @@ class CudaCompiler(Compiler):
return ['--std=' + std]
try:
- host_compiler_args = self.host_compiler.get_option_std_args(target, env, subproject)
+ host_compiler_args = self.host_compiler.get_option_std_args(target, subproject)
except KeyError:
host_compiler_args = []
return self._to_host_flags(host_compiler_args)
diff --git a/mesonbuild/compilers/fortran.py b/mesonbuild/compilers/fortran.py
index 44a05b971..6b5b30176 100644
--- a/mesonbuild/compilers/fortran.py
+++ b/mesonbuild/compilers/fortran.py
@@ -281,7 +281,7 @@ class GnuFortranCompiler(GnuCompiler, FortranCompiler):
self._update_language_stds(opts, fortran_stds)
return opts
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args: T.List[str] = []
std = self.get_compileropt_value('std', target, subproject)
assert isinstance(std, str)
@@ -411,7 +411,7 @@ class IntelFortranCompiler(IntelGnuLikeCompiler, FortranCompiler):
self._update_language_stds(opts, ['none', 'legacy', 'f95', 'f2003', 'f2008', 'f2018'])
return opts
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args: T.List[str] = []
std = self.get_compileropt_value('std', target, subproject)
stds = {'legacy': 'none', 'f95': 'f95', 'f2003': 'f03', 'f2008': 'f08', 'f2018': 'f18'}
@@ -469,7 +469,7 @@ class IntelClFortranCompiler(IntelVisualStudioLikeCompiler, FortranCompiler):
self._update_language_stds(opts, ['none', 'legacy', 'f95', 'f2003', 'f2008', 'f2018'])
return opts
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args: T.List[str] = []
std = self.get_compileropt_value('std', target, subproject)
stds = {'legacy': 'none', 'f95': 'f95', 'f2003': 'f03', 'f2008': 'f08', 'f2018': 'f18'}
diff --git a/mesonbuild/compilers/mixins/elbrus.py b/mesonbuild/compilers/mixins/elbrus.py
index e4e2cc71a..7cc980e6b 100644
--- a/mesonbuild/compilers/mixins/elbrus.py
+++ b/mesonbuild/compilers/mixins/elbrus.py
@@ -83,13 +83,13 @@ class ElbrusCompiler(GnuLikeCompiler):
# Actually it's not supported for now, but probably will be supported in future
return 'pch'
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args: T.List[str] = []
key = OptionKey(f'{self.language}_std', subproject=subproject, machine=self.for_machine)
if target:
- std = env.coredata.get_option_for_target(target, key)
+ std = self.environment.coredata.get_option_for_target(target, key)
else:
- std = env.coredata.optstore.get_value_for(key)
+ std = self.environment.coredata.optstore.get_value_for(key)
assert isinstance(std, str)
if std != 'none':
args.append('-std=' + std)
diff --git a/mesonbuild/compilers/objc.py b/mesonbuild/compilers/objc.py
index e32b71d60..d62113b1b 100644
--- a/mesonbuild/compilers/objc.py
+++ b/mesonbuild/compilers/objc.py
@@ -75,13 +75,13 @@ class GnuObjCCompiler(GnuCStds, GnuCompiler, ObjCCompiler):
self.supported_warn_args(gnu_common_warning_args) +
self.supported_warn_args(gnu_objc_warning_args))}
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args: T.List[str] = []
key = OptionKey('c_std', subproject=subproject, machine=self.for_machine)
if target:
- std = env.coredata.get_option_for_target(target, key)
+ std = self.environment.coredata.get_option_for_target(target, key)
else:
- std = env.coredata.optstore.get_value_for(key)
+ std = self.environment.coredata.optstore.get_value_for(key)
assert isinstance(std, str)
if std != 'none':
args.append('-std=' + std)
@@ -113,7 +113,7 @@ class ClangObjCCompiler(ClangCStds, ClangCompiler, ObjCCompiler):
return 'c_std'
return super().make_option_name(key)
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args = []
key = OptionKey('c_std', machine=self.for_machine)
std = self.get_compileropt_value(key, target, subproject)
diff --git a/mesonbuild/compilers/objcpp.py b/mesonbuild/compilers/objcpp.py
index ae3750335..927ca7e0b 100644
--- a/mesonbuild/compilers/objcpp.py
+++ b/mesonbuild/compilers/objcpp.py
@@ -79,13 +79,13 @@ class GnuObjCPPCompiler(GnuCPPStds, GnuCompiler, ObjCPPCompiler):
self.supported_warn_args(gnu_common_warning_args) +
self.supported_warn_args(gnu_objc_warning_args))}
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args: T.List[str] = []
key = OptionKey('cpp_std', subproject=subproject, machine=self.for_machine)
if target:
- std = env.coredata.get_option_for_target(target, key)
+ std = self.environment.coredata.get_option_for_target(target, key)
else:
- std = env.coredata.optstore.get_value_for(key)
+ std = self.environment.coredata.optstore.get_value_for(key)
assert isinstance(std, str)
if std != 'none':
args.append('-std=' + std)
@@ -108,7 +108,7 @@ class ClangObjCPPCompiler(ClangCPPStds, ClangCompiler, ObjCPPCompiler):
'3': default_warn_args + ['-Wextra', '-Wpedantic'],
'everything': ['-Weverything']}
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args = []
key = OptionKey('cpp_std', machine=self.for_machine)
std = self.get_compileropt_value(key, target, subproject)
diff --git a/mesonbuild/compilers/rust.py b/mesonbuild/compilers/rust.py
index 6b76a47af..da0c7ee1d 100644
--- a/mesonbuild/compilers/rust.py
+++ b/mesonbuild/compilers/rust.py
@@ -329,7 +329,7 @@ class RustCompiler(Compiler):
# provided by the linker flags.
return []
- def get_option_std_args(self, target: BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args = []
std = self.get_compileropt_value('std', target, subproject)
assert isinstance(std, str)
diff --git a/mesonbuild/compilers/swift.py b/mesonbuild/compilers/swift.py
index ee908a8d7..d5f87a236 100644
--- a/mesonbuild/compilers/swift.py
+++ b/mesonbuild/compilers/swift.py
@@ -128,7 +128,7 @@ class SwiftCompiler(Compiler):
return opts
- def get_option_std_args(self, target: build.BuildTarget, env: Environment, subproject: T.Optional[str] = None) -> T.List[str]:
+ def get_option_std_args(self, target: build.BuildTarget, subproject: T.Optional[str] = None) -> T.List[str]:
args: T.List[str] = []
std = self.get_compileropt_value('std', target, subproject)
@@ -145,7 +145,7 @@ class SwiftCompiler(Compiler):
c_lang = first(c_langs, lambda x: x in target.compilers)
if c_lang is not None:
cc = target.compilers[c_lang]
- args.extend(arg for c_arg in cc.get_option_std_args(target, env, subproject) for arg in ['-Xcc', c_arg])
+ args.extend(arg for c_arg in cc.get_option_std_args(target, subproject) for arg in ['-Xcc', c_arg])
return args
diff --git a/mesonbuild/interpreter/compiler.py b/mesonbuild/interpreter/compiler.py
index b24ea6d8b..6673aa7c1 100644
--- a/mesonbuild/interpreter/compiler.py
+++ b/mesonbuild/interpreter/compiler.py
@@ -231,7 +231,7 @@ class CompilerHolder(ObjectHolder['Compiler']):
args.extend(self.compiler.get_include_args(idir, False))
if not kwargs['no_builtin_args']:
args += self.compiler.get_option_compile_args(None, self.interpreter.environment, self.subproject)
- args += self.compiler.get_option_std_args(None, self.interpreter.environment, self.subproject)
+ args += self.compiler.get_option_std_args(None, self.subproject)
if mode is CompileCheckMode.LINK:
args.extend(self.compiler.get_option_link_args(None, self.subproject))
if kwargs.get('werror', False):