aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2024-05-24 05:27:57 +0100
committerEli Schwartz <eschwartz93@gmail.com>2024-05-24 17:10:20 -0400
commita66cb97e8cd29e6d8c89232b8e3763677ad3825f (patch)
tree9cdddf8ef906957b12be1a0c5dc4de38e9dba386
parent5365d9a842938dc9182b52bcdb9674a434475200 (diff)
downloadmeson-a66cb97e8cd29e6d8c89232b8e3763677ad3825f.zip
meson-a66cb97e8cd29e6d8c89232b8e3763677ad3825f.tar.gz
meson-a66cb97e8cd29e6d8c89232b8e3763677ad3825f.tar.bz2
Revert "rust: recursively pull proc-macro dependencies as well"
This reverts commit aee941559c4b88a062e88186819a820c69c200ae. The commit being reverted breaks compilation of a major Meson consumer (Mesa). As a result, various distros are either pinning to <1.4.0 (before the commit) or performing this same revert downstream. Fixing a regression takes priority, so let's revert. Fixes: https://github.com/mesonbuild/meson/issues/12973
-rw-r--r--mesonbuild/build.py2
-rw-r--r--test cases/rust/18 proc-macro/lib.rs8
-rw-r--r--test cases/rust/18 proc-macro/meson.build11
-rw-r--r--test cases/rust/18 proc-macro/subdir/meson.build1
-rw-r--r--test cases/rust/18 proc-macro/transitive-proc-macro.rs7
5 files changed, 2 insertions, 27 deletions
diff --git a/mesonbuild/build.py b/mesonbuild/build.py
index d8afd1b..313f73e 100644
--- a/mesonbuild/build.py
+++ b/mesonbuild/build.py
@@ -1292,6 +1292,8 @@ class BuildTarget(Target):
for t in self.link_targets:
if t in result:
continue
+ if t.rust_crate_type == 'proc-macro':
+ continue
if include_internals or not t.is_internal():
result.add(t)
if isinstance(t, StaticLibrary):
diff --git a/test cases/rust/18 proc-macro/lib.rs b/test cases/rust/18 proc-macro/lib.rs
deleted file mode 100644
index 5242886..0000000
--- a/test cases/rust/18 proc-macro/lib.rs
+++ /dev/null
@@ -1,8 +0,0 @@
-extern crate proc_macro_examples;
-use proc_macro_examples::make_answer;
-
-make_answer!();
-
-pub fn func() -> u32 {
- answer()
-}
diff --git a/test cases/rust/18 proc-macro/meson.build b/test cases/rust/18 proc-macro/meson.build
index e8b28ed..c5f0dfc 100644
--- a/test cases/rust/18 proc-macro/meson.build
+++ b/test cases/rust/18 proc-macro/meson.build
@@ -31,14 +31,3 @@ main = executable(
)
test('main_test2', main)
-
-subdir('subdir')
-
-staticlib = static_library('staticlib', 'lib.rs',
- link_with: pm_in_subdir,
- rust_dependency_map : {'proc_macro_examples3' : 'proc_macro_examples'}
-)
-
-executable('transitive-proc-macro', 'transitive-proc-macro.rs',
- link_with: staticlib,
-)
diff --git a/test cases/rust/18 proc-macro/subdir/meson.build b/test cases/rust/18 proc-macro/subdir/meson.build
deleted file mode 100644
index 04842c4..0000000
--- a/test cases/rust/18 proc-macro/subdir/meson.build
+++ /dev/null
@@ -1 +0,0 @@
-pm_in_subdir = rust.proc_macro('proc_macro_examples3', '../proc.rs')
diff --git a/test cases/rust/18 proc-macro/transitive-proc-macro.rs b/test cases/rust/18 proc-macro/transitive-proc-macro.rs
deleted file mode 100644
index 4c804b3..0000000
--- a/test cases/rust/18 proc-macro/transitive-proc-macro.rs
+++ /dev/null
@@ -1,7 +0,0 @@
-extern crate staticlib;
-use staticlib::func;
-
-
-fn main() {
- assert_eq!(42, func());
-}