mirror of
https://github.com/mesonbuild/meson.git
synced 2026-08-08 08:40:52 +00:00
compilers: Remove Environment parameter from Compiler.build_wrapper_args
This commit is contained in:
@@ -716,7 +716,7 @@ class Compiler(HoldableObject, metaclass=abc.ABCMeta):
|
||||
extra_args: T.Union[T.List[str], T.Callable[[CompileCheckMode], T.List[str]], None] = None,
|
||||
dependencies: T.Optional[T.List['Dependency']] = None) -> RunResult:
|
||||
run_check_cache = env.coredata.run_check_cache
|
||||
args = self.build_wrapper_args(env, extra_args, dependencies, CompileCheckMode('link'))
|
||||
args = self.build_wrapper_args(extra_args, dependencies, CompileCheckMode('link'))
|
||||
key = (code, tuple(args))
|
||||
if key in run_check_cache:
|
||||
p = run_check_cache[key]
|
||||
@@ -1301,7 +1301,7 @@ class Compiler(HoldableObject, metaclass=abc.ABCMeta):
|
||||
"""Arguments to the compiler to turn off all optimizations."""
|
||||
return []
|
||||
|
||||
def build_wrapper_args(self, env: 'Environment',
|
||||
def build_wrapper_args(self,
|
||||
extra_args: T.Union[None, CompilerArgs, T.List[str], T.Callable[[CompileCheckMode], T.List[str]]],
|
||||
dependencies: T.Optional[T.List['Dependency']],
|
||||
mode: CompileCheckMode = CompileCheckMode.COMPILE) -> CompilerArgs:
|
||||
@@ -1330,10 +1330,10 @@ class Compiler(HoldableObject, metaclass=abc.ABCMeta):
|
||||
|
||||
if mode is CompileCheckMode.COMPILE:
|
||||
# Add DFLAGS from the env
|
||||
args += env.coredata.get_external_args(self.for_machine, self.language)
|
||||
args += self.environment.coredata.get_external_args(self.for_machine, self.language)
|
||||
elif mode is CompileCheckMode.LINK:
|
||||
# Add LDFLAGS from the env
|
||||
args += env.coredata.get_external_link_args(self.for_machine, self.language)
|
||||
args += self.environment.coredata.get_external_link_args(self.for_machine, self.language)
|
||||
# extra_args must override all other arguments, so we add them last
|
||||
args += extra_args
|
||||
return args
|
||||
@@ -1349,7 +1349,7 @@ class Compiler(HoldableObject, metaclass=abc.ABCMeta):
|
||||
This method isn't meant to be called externally, it's mean to be
|
||||
wrapped by other methods like compiles() and links().
|
||||
"""
|
||||
args = self.build_wrapper_args(self.environment, extra_args, dependencies, mode)
|
||||
args = self.build_wrapper_args(extra_args, dependencies, mode)
|
||||
if disable_cache or want_output:
|
||||
with self.compile(code, extra_args=args, mode=mode, want_output=want_output, temp_dir=self.environment.scratch_dir) as r:
|
||||
yield r
|
||||
|
||||
@@ -395,7 +395,7 @@ class CLikeCompiler(Compiler):
|
||||
cargs += self.get_compiler_args_for_mode(mode)
|
||||
return cargs, largs
|
||||
|
||||
def build_wrapper_args(self, env: 'Environment',
|
||||
def build_wrapper_args(self,
|
||||
extra_args: T.Union[None, arglist.CompilerArgs, T.List[str], T.Callable[[CompileCheckMode], T.List[str]]],
|
||||
dependencies: T.Optional[T.List['Dependency']],
|
||||
mode: CompileCheckMode = CompileCheckMode.COMPILE) -> arglist.CompilerArgs:
|
||||
@@ -420,13 +420,13 @@ class CLikeCompiler(Compiler):
|
||||
cargs += d.get_compile_args()
|
||||
system_incdir = d.get_include_type() == 'system'
|
||||
for i in d.get_include_dirs():
|
||||
for idir in i.to_string_list(env.get_source_dir(), env.get_build_dir()):
|
||||
for idir in i.to_string_list(self.environment.get_source_dir(), self.environment.get_build_dir()):
|
||||
cargs.extend(self.get_include_args(idir, system_incdir))
|
||||
if mode is CompileCheckMode.LINK:
|
||||
# Add link flags needed to find dependencies
|
||||
largs += d.get_link_args()
|
||||
|
||||
ca, la = self._get_basic_compiler_args(env, mode)
|
||||
ca, la = self._get_basic_compiler_args(self.environment, mode)
|
||||
cargs += ca
|
||||
|
||||
cargs += self.get_compiler_check_args(mode)
|
||||
@@ -654,7 +654,7 @@ class CLikeCompiler(Compiler):
|
||||
# define {dname} {sentinel_undef}
|
||||
#endif
|
||||
{delim_start}{dname}{delim_end}'''
|
||||
args = self.build_wrapper_args(env, extra_args, dependencies,
|
||||
args = self.build_wrapper_args(extra_args, dependencies,
|
||||
mode=CompileCheckMode.PREPROCESS).to_native()
|
||||
func = functools.partial(self.cached_compile, code, env.coredata, extra_args=args, mode=CompileCheckMode.PREPROCESS)
|
||||
if disable_cache:
|
||||
|
||||
@@ -151,7 +151,7 @@ class ValaCompiler(Compiler):
|
||||
def get_option_link_args(self, target: 'BuildTarget', env: 'Environment', subproject: T.Optional[str] = None) -> T.List[str]:
|
||||
return []
|
||||
|
||||
def build_wrapper_args(self, env: 'Environment',
|
||||
def build_wrapper_args(self,
|
||||
extra_args: T.Union[None, CompilerArgs, T.List[str], T.Callable[[CompileCheckMode], T.List[str]]],
|
||||
dependencies: T.Optional[T.List['Dependency']],
|
||||
mode: CompileCheckMode = CompileCheckMode.COMPILE) -> CompilerArgs:
|
||||
@@ -187,10 +187,10 @@ class ValaCompiler(Compiler):
|
||||
|
||||
if mode is CompileCheckMode.COMPILE:
|
||||
# Add DFLAGS from the env
|
||||
args += env.coredata.get_external_args(self.for_machine, self.language)
|
||||
args += self.environment.coredata.get_external_args(self.for_machine, self.language)
|
||||
elif mode is CompileCheckMode.LINK:
|
||||
# Add LDFLAGS from the env
|
||||
args += env.coredata.get_external_link_args(self.for_machine, self.language)
|
||||
args += self.environment.coredata.get_external_link_args(self.for_machine, self.language)
|
||||
# extra_args must override all other arguments, so we add them last
|
||||
args += extra_args
|
||||
return args
|
||||
|
||||
Reference in New Issue
Block a user