aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXavier Claessens <xavier.claessens@collabora.com>2023-04-27 13:55:00 -0400
committerXavier Claessens <xavier.claessens@collabora.com>2023-05-01 12:57:45 -0400
commit25f4f77a3b22630032827b1f29eb353b6ff07507 (patch)
treee8f7e2865c7768c3490289a919cc74be99df5554
parent3162b901cab46d66a30c66a4406195523714ecdc (diff)
downloadmeson-25f4f77a3b22630032827b1f29eb353b6ff07507.zip
meson-25f4f77a3b22630032827b1f29eb353b6ff07507.tar.gz
meson-25f4f77a3b22630032827b1f29eb353b6ff07507.tar.bz2
Rust: Allow Rust static libraries to link_whole other libraries
Rustc can do it without needing Meson to extract all objects.
-rw-r--r--mesonbuild/build.py2
1 files changed, 1 insertions, 1 deletions
diff --git a/mesonbuild/build.py b/mesonbuild/build.py
index 0038753..b341014 100644
--- a/mesonbuild/build.py
+++ b/mesonbuild/build.py
@@ -1428,7 +1428,7 @@ You probably should put it in link_with instead.''')
raise InvalidArguments(msg + ' This is not possible in a cross build.')
else:
mlog.warning(msg + ' This will fail in cross build.')
- if isinstance(self, StaticLibrary):
+ if isinstance(self, StaticLibrary) and not self.uses_rust():
if isinstance(t, (CustomTarget, CustomTargetIndex)) or t.uses_rust():
# There are cases we cannot do this, however. In Rust, for
# example, this can't be done with Rust ABI libraries, though