diff options
| author | Dylan Baker <dylan@pnwbakers.com> | 2025-11-13 09:24:26 -0800 |
|---|---|---|
| committer | Dylan Baker <dylan@pnwbakers.com> | 2025-11-19 10:48:48 -0800 |
| commit | 40b4151f33ea05f1f305f09831c24caa8a920a19 (patch) | |
| tree | bbce1aaf6978f7c9331bea51de65d2eec0471155 /mesonbuild | |
| parent | e848d8f223db1c2db2f0ced86b652a4d74644377 (diff) | |
| download | meson-40b4151f33ea05f1f305f09831c24caa8a920a19.tar.gz | |
compilers: Remove Environment parameter from Compiler.has_header_symbol
Diffstat (limited to 'mesonbuild')
| -rw-r--r-- | mesonbuild/compilers/c.py | 3 | ||||
| -rw-r--r-- | mesonbuild/compilers/compilers.py | 3 | ||||
| -rw-r--r-- | mesonbuild/compilers/cpp.py | 7 | ||||
| -rw-r--r-- | mesonbuild/compilers/cuda.py | 3 | ||||
| -rw-r--r-- | mesonbuild/compilers/mixins/clike.py | 3 | ||||
| -rw-r--r-- | mesonbuild/dependencies/misc.py | 2 | ||||
| -rw-r--r-- | mesonbuild/interpreter/compiler.py | 2 |
7 files changed, 9 insertions, 14 deletions
diff --git a/mesonbuild/compilers/c.py b/mesonbuild/compilers/c.py index d82689446..99761f99b 100644 --- a/mesonbuild/compilers/c.py +++ b/mesonbuild/compilers/c.py @@ -78,8 +78,7 @@ class CCompiler(CLikeCompiler, Compiler): code = 'int main(void) { int class=0; return class; }\n' return self._sanity_check_impl(work_dir, 'sanitycheckc.c', code) - def has_header_symbol(self, hname: str, symbol: str, prefix: str, - env: 'Environment', *, + def has_header_symbol(self, hname: str, symbol: str, prefix: str, *, extra_args: T.Union[None, T.List[str], T.Callable[['CompileCheckMode'], T.List[str]]] = None, dependencies: T.Optional[T.List['Dependency']] = None) -> T.Tuple[bool, bool]: fargs = {'prefix': prefix, 'header': hname, 'symbol': symbol} diff --git a/mesonbuild/compilers/compilers.py b/mesonbuild/compilers/compilers.py index d53970e36..01098086b 100644 --- a/mesonbuild/compilers/compilers.py +++ b/mesonbuild/compilers/compilers.py @@ -672,8 +672,7 @@ class Compiler(HoldableObject, metaclass=abc.ABCMeta): """ raise EnvironmentException('Language %s does not support header checks.' % self.get_display_language()) - def has_header_symbol(self, hname: str, symbol: str, prefix: str, - env: 'Environment', *, + def has_header_symbol(self, hname: str, symbol: str, prefix: str, *, extra_args: T.Union[None, T.List[str], T.Callable[[CompileCheckMode], T.List[str]]] = None, dependencies: T.Optional[T.List['Dependency']] = None) -> T.Tuple[bool, bool]: raise EnvironmentException('Language %s does not support header symbol checks.' % self.get_display_language()) diff --git a/mesonbuild/compilers/cpp.py b/mesonbuild/compilers/cpp.py index 421046150..27461449d 100644 --- a/mesonbuild/compilers/cpp.py +++ b/mesonbuild/compilers/cpp.py @@ -94,12 +94,11 @@ class CPPCompiler(CLikeCompiler, Compiler): # too strict without this and always fails. return super().get_compiler_check_args(mode) + ['-fpermissive'] - def has_header_symbol(self, hname: str, symbol: str, prefix: str, - env: 'Environment', *, + def has_header_symbol(self, hname: str, symbol: str, prefix: str, *, extra_args: T.Union[None, T.List[str], T.Callable[[CompileCheckMode], T.List[str]]] = None, dependencies: T.Optional[T.List['Dependency']] = None) -> T.Tuple[bool, bool]: # Check if it's a C-like symbol - found, cached = super().has_header_symbol(hname, symbol, prefix, env, + found, cached = super().has_header_symbol(hname, symbol, prefix, extra_args=extra_args, dependencies=dependencies) if found: @@ -185,7 +184,7 @@ class _StdCPPLibMixin(CompilerMixinBase): def language_stdlib_provider(self, env: Environment) -> str: # https://stackoverflow.com/a/31658120 header = 'version' if self.has_header('version', '', env)[0] else 'ciso646' - is_libcxx = self.has_header_symbol(header, '_LIBCPP_VERSION', '', env)[0] + is_libcxx = self.has_header_symbol(header, '_LIBCPP_VERSION', '')[0] lib = 'c++' if is_libcxx else 'stdc++' return lib diff --git a/mesonbuild/compilers/cuda.py b/mesonbuild/compilers/cuda.py index be9605322..e7cf21963 100644 --- a/mesonbuild/compilers/cuda.py +++ b/mesonbuild/compilers/cuda.py @@ -590,8 +590,7 @@ class CudaCompiler(Compiler): if stde == '': self.detected_cc = stdo - def has_header_symbol(self, hname: str, symbol: str, prefix: str, - env: 'Environment', *, + def has_header_symbol(self, hname: str, symbol: str, prefix: str, *, extra_args: T.Union[None, T.List[str], T.Callable[[CompileCheckMode], T.List[str]]] = None, dependencies: T.Optional[T.List['Dependency']] = None) -> T.Tuple[bool, bool]: if extra_args is None: diff --git a/mesonbuild/compilers/mixins/clike.py b/mesonbuild/compilers/mixins/clike.py index 700ae66de..5f37ce84f 100644 --- a/mesonbuild/compilers/mixins/clike.py +++ b/mesonbuild/compilers/mixins/clike.py @@ -333,8 +333,7 @@ class CLikeCompiler(Compiler): return self.compiles(code, extra_args=extra_args, dependencies=dependencies, mode=CompileCheckMode.PREPROCESS, disable_cache=disable_cache) - def has_header_symbol(self, hname: str, symbol: str, prefix: str, - env: 'Environment', *, + def has_header_symbol(self, hname: str, symbol: str, prefix: str, *, extra_args: T.Union[None, T.List[str], T.Callable[[CompileCheckMode], T.List[str]]] = None, dependencies: T.Optional[T.List['Dependency']] = None) -> T.Tuple[bool, bool]: t = f'''{prefix} diff --git a/mesonbuild/dependencies/misc.py b/mesonbuild/dependencies/misc.py index 1035969ce..413bbae33 100644 --- a/mesonbuild/dependencies/misc.py +++ b/mesonbuild/dependencies/misc.py @@ -494,7 +494,7 @@ class OpensslSystemDependency(SystemDependency): if self._add_sub_dependency(libcrypto_factory(env, self.for_machine, dependency_kwargs)): self.is_found = True elif name == 'libcrypto': - use_threads = self.clib_compiler.has_header_symbol('openssl/opensslconf.h', 'OPENSSL_THREADS', '', env, dependencies=[self])[0] + use_threads = self.clib_compiler.has_header_symbol('openssl/opensslconf.h', 'OPENSSL_THREADS', '', dependencies=[self])[0] if not use_threads or self._add_sub_dependency(threads_factory(env, self.for_machine, {})): self.is_found = True # only relevant on platforms where it is distributed with the libc, in which case it always succeeds diff --git a/mesonbuild/interpreter/compiler.py b/mesonbuild/interpreter/compiler.py index 77e7cad43..02f83d9e2 100644 --- a/mesonbuild/interpreter/compiler.py +++ b/mesonbuild/interpreter/compiler.py @@ -639,7 +639,7 @@ class CompilerHolder(ObjectHolder['Compiler']): return False extra_args = functools.partial(self._determine_args, kwargs) deps, msg = self._determine_dependencies(kwargs['dependencies']) - haz, cached = self.compiler.has_header_symbol(hname, symbol, kwargs['prefix'], self.environment, + haz, cached = self.compiler.has_header_symbol(hname, symbol, kwargs['prefix'], extra_args=extra_args, dependencies=deps) if required and not haz: |
