diff options
| -rw-r--r-- | mesonbuild/compilers/compilers.py | 8 | ||||
| -rw-r--r-- | mesonbuild/compilers/mixins/clike.py | 10 | ||||
| -rw-r--r-- | mesonbuild/compilers/vala.py | 8 | ||||
| -rw-r--r-- | mesonbuild/dependencies/misc.py | 4 | ||||
| -rw-r--r-- | mesonbuild/interpreter/compiler.py | 2 |
5 files changed, 16 insertions, 16 deletions
diff --git a/mesonbuild/compilers/compilers.py b/mesonbuild/compilers/compilers.py index b5680ed56..838b15d6d 100644 --- a/mesonbuild/compilers/compilers.py +++ b/mesonbuild/compilers/compilers.py @@ -1371,18 +1371,18 @@ class Compiler(HoldableObject, metaclass=abc.ABCMeta): with self._build_wrapper(code, env, extra_args, dependencies, mode, disable_cache=disable_cache) as p: return p.returncode == 0, p.cached - def links(self, code: 'mesonlib.FileOrString', env: 'Environment', *, + def links(self, code: 'mesonlib.FileOrString', *, compiler: T.Optional['Compiler'] = None, extra_args: T.Union[None, T.List[str], CompilerArgs, T.Callable[[CompileCheckMode], T.List[str]]] = None, dependencies: T.Optional[T.List['Dependency']] = None, disable_cache: bool = False) -> T.Tuple[bool, bool]: if compiler: - with compiler._build_wrapper(code, env, dependencies=dependencies, want_output=True) as r: + with compiler._build_wrapper(code, self.environment, dependencies=dependencies, want_output=True) as r: objfile = mesonlib.File.from_absolute_file(r.output_name) - return self.compiles(objfile, env, extra_args=extra_args, + return self.compiles(objfile, self.environment, extra_args=extra_args, dependencies=dependencies, mode=CompileCheckMode.LINK, disable_cache=True) - return self.compiles(code, env, extra_args=extra_args, + return self.compiles(code, self.environment, extra_args=extra_args, dependencies=dependencies, mode=CompileCheckMode.LINK, disable_cache=disable_cache) def get_feature_args(self, kwargs: DFeatures, build_to_src: str) -> T.List[str]: diff --git a/mesonbuild/compilers/mixins/clike.py b/mesonbuild/compilers/mixins/clike.py index 0c088b63e..1f073d615 100644 --- a/mesonbuild/compilers/mixins/clike.py +++ b/mesonbuild/compilers/mixins/clike.py @@ -821,7 +821,7 @@ class CLikeCompiler(Compiler): head, main = self._no_prototype_templ() templ = head + stubs_fail + main - res, cached = self.links(templ.format(**fargs), env, extra_args=extra_args, + res, cached = self.links(templ.format(**fargs), extra_args=extra_args, dependencies=dependencies) if res: return True, cached @@ -863,7 +863,7 @@ class CLikeCompiler(Compiler): #endif return 0; }}''' - return self.links(t.format(**fargs), env, extra_args=extra_args, + return self.links(t.format(**fargs), extra_args=extra_args, dependencies=dependencies) def has_members(self, typename: str, membernames: T.List[str], @@ -1143,7 +1143,7 @@ class CLikeCompiler(Compiler): largs = self.get_linker_always_args() + self.get_allow_undefined_link_args() extra_args = cargs + self.linker_to_compiler_args(largs) - if self.links(code, env, extra_args=extra_args, disable_cache=True)[0]: + if self.links(code, extra_args=extra_args, disable_cache=True)[0]: return cargs # Don't do a manual search for internal libs if libname in self.internal_libs: @@ -1175,7 +1175,7 @@ class CLikeCompiler(Compiler): if not os.path.isfile(trial): continue extra_args = [trial] + lcargs - if self.links(code, env, extra_args=extra_args, disable_cache=True)[0]: + if self.links(code, extra_args=extra_args, disable_cache=True)[0]: trial_result = trial break @@ -1244,7 +1244,7 @@ class CLikeCompiler(Compiler): # then we must also pass -L/usr/lib to pick up libSystem.dylib extra_args = [] if allow_system else ['-Z', '-L/usr/lib'] link_args += ['-framework', name] - if self.links(code, env, extra_args=(extra_args + link_args), disable_cache=True)[0]: + if self.links(code, extra_args=(extra_args + link_args), disable_cache=True)[0]: return link_args return None diff --git a/mesonbuild/compilers/vala.py b/mesonbuild/compilers/vala.py index 6db3ff996..ef1916334 100644 --- a/mesonbuild/compilers/vala.py +++ b/mesonbuild/compilers/vala.py @@ -195,20 +195,20 @@ class ValaCompiler(Compiler): args += extra_args return args - def links(self, code: 'mesonlib.FileOrString', env: 'Environment', *, + def links(self, code: 'mesonlib.FileOrString', *, compiler: T.Optional['Compiler'] = None, extra_args: T.Union[None, T.List[str], CompilerArgs, T.Callable[[CompileCheckMode], T.List[str]]] = None, dependencies: T.Optional[T.List['Dependency']] = None, disable_cache: bool = False) -> T.Tuple[bool, bool]: self.force_link = True if compiler: - with compiler._build_wrapper(code, env, dependencies=dependencies, want_output=True) as r: + with compiler._build_wrapper(code, self.environment, dependencies=dependencies, want_output=True) as r: objfile = mesonlib.File.from_absolute_file(r.output_name) - result = self.compiles(objfile, env, extra_args=extra_args, + result = self.compiles(objfile, self.environment, extra_args=extra_args, dependencies=dependencies, mode=CompileCheckMode.LINK, disable_cache=True) self.force_link = False return result - result = self.compiles(code, env, extra_args=extra_args, + result = self.compiles(code, self.environment, extra_args=extra_args, dependencies=dependencies, mode=CompileCheckMode.LINK, disable_cache=disable_cache) self.force_link = False return result diff --git a/mesonbuild/dependencies/misc.py b/mesonbuild/dependencies/misc.py index 0fdbdd638..3e0bb305b 100644 --- a/mesonbuild/dependencies/misc.py +++ b/mesonbuild/dependencies/misc.py @@ -412,7 +412,7 @@ class IconvBuiltinDependency(BuiltinDependency): self.feature_since = ('0.60.0', "consider checking for `iconv_open` with and without `find_library('iconv')`") code = '''#include <iconv.h>\n\nint main() {\n iconv_open("","");\n}''' # [ignore encoding] this is C, not python, Mr. Lint - if self.clib_compiler.links(code, env)[0]: + if self.clib_compiler.links(code)[0]: self.is_found = True @@ -434,7 +434,7 @@ class IntlBuiltinDependency(BuiltinDependency): self.feature_since = ('0.59.0', "consider checking for `ngettext` with and without `find_library('intl')`") code = '''#include <libintl.h>\n\nint main() {\n gettext("Hello world");\n}''' - if self.clib_compiler.links(code, env)[0]: + if self.clib_compiler.links(code)[0]: self.is_found = True diff --git a/mesonbuild/interpreter/compiler.py b/mesonbuild/interpreter/compiler.py index 7c4d219d1..8fc4df9e6 100644 --- a/mesonbuild/interpreter/compiler.py +++ b/mesonbuild/interpreter/compiler.py @@ -563,7 +563,7 @@ class CompilerHolder(ObjectHolder['Compiler']): extra_args = functools.partial(self._determine_args, kwargs) deps, msg = self._determine_dependencies(kwargs['dependencies'], compile_only=False, endl=None) - result, cached = self.compiler.links(code, self.environment, + result, cached = self.compiler.links(code, compiler=compiler, extra_args=extra_args, dependencies=deps) |
