diff options
author | Andrei Alexeyev <akari@taisei-project.org> | 2024-10-06 13:30:32 +0200 |
---|---|---|
committer | Dylan Baker <dylan@pnwbakers.com> | 2025-04-04 09:31:48 -0700 |
commit | 31db63e2d8a5d2c3a3db533e86d3676b18bca84b (patch) | |
tree | 15c0bd0c540e5fbcb9659b4a486f9befe5c1acc5 | |
parent | a7ea0cd7e4bc0d89d607d5fc0e999a4a6ab5b531 (diff) | |
download | meson-31db63e2d8a5d2c3a3db533e86d3676b18bca84b.zip meson-31db63e2d8a5d2c3a3db533e86d3676b18bca84b.tar.gz meson-31db63e2d8a5d2c3a3db533e86d3676b18bca84b.tar.bz2 |
cmake: pass clib_compiler to resolve_cmake_trace_targets()
This is required to resolve ambiguous LINK_LIBRARIES passed as bare
names.
-rw-r--r-- | mesonbuild/cmake/interpreter.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/mesonbuild/cmake/interpreter.py b/mesonbuild/cmake/interpreter.py index 53f4f19..6fcebb5 100644 --- a/mesonbuild/cmake/interpreter.py +++ b/mesonbuild/cmake/interpreter.py @@ -251,6 +251,8 @@ class ConverterTarget: self.generated_raw: T.List[Path] = [] + self.clib_compiler = None + for i in target.files: languages: T.Set[str] = set() src_suffixes: T.Set[str] = set() @@ -276,6 +278,10 @@ class ConverterTarget: # Register the new languages and initialize the compile opts array for lang in languages: self.languages.add(lang) + + if self.clib_compiler is None: + self.clib_compiler = self.env.coredata.compilers[self.for_machine].get(lang) + if lang not in self.compile_opts: self.compile_opts[lang] = [] @@ -346,7 +352,7 @@ class ConverterTarget: if tgt: self.depends_raw = trace.targets[self.cmake_name].depends - rtgt = resolve_cmake_trace_targets(self.cmake_name, trace, self.env) + rtgt = resolve_cmake_trace_targets(self.cmake_name, trace, self.env, clib_compiler=self.clib_compiler) self.includes += [Path(x) for x in rtgt.include_directories] self.link_flags += rtgt.link_flags self.public_link_flags += rtgt.public_link_flags |