summaryrefslogtreecommitdiff
path: root/test cases
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2025-10-24 10:37:39 +0200
committerPaolo Bonzini <pbonzini@redhat.com>2025-12-22 11:59:07 +0100
commit71e56514f07ab972375bde5f094ad7a39d996ac0 (patch)
treed5baf8531298beb7a7ffcfe4760c9753ef8e5028 /test cases
parent7a1aa179087a274d6f6b13c2c666043ac9760ea5 (diff)
downloadmeson-71e56514f07ab972375bde5f094ad7a39d996ac0.tar.gz
test: rust.workspace: add another member to the workspace
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'test cases')
-rw-r--r--test cases/rust/32 rust.workspace workspace/Cargo.lock5
-rw-r--r--test cases/rust/32 rust.workspace workspace/Cargo.toml3
-rw-r--r--test cases/rust/32 rust.workspace workspace/meson.build6
-rw-r--r--test cases/rust/32 rust.workspace workspace/more/Cargo.toml7
-rw-r--r--test cases/rust/32 rust.workspace workspace/more/meson.build8
-rw-r--r--test cases/rust/32 rust.workspace workspace/more/src/lib.rs3
-rw-r--r--test cases/rust/32 rust.workspace workspace/src/main.rs1
7 files changed, 30 insertions, 3 deletions
diff --git a/test cases/rust/32 rust.workspace workspace/Cargo.lock b/test cases/rust/32 rust.workspace workspace/Cargo.lock
index 0434b6028..7a697ea54 100644
--- a/test cases/rust/32 rust.workspace workspace/Cargo.lock
+++ b/test cases/rust/32 rust.workspace workspace/Cargo.lock
@@ -11,9 +11,14 @@ name = "hello"
version = "1.0.0"
[[package]]
+name = "more"
+version = "0.1.0"
+
+[[package]]
name = "workspace_test"
version = "0.1.0"
dependencies = [
"answer",
"hello",
+ "more",
]
diff --git a/test cases/rust/32 rust.workspace workspace/Cargo.toml b/test cases/rust/32 rust.workspace workspace/Cargo.toml
index 44e4a18ef..ae2ae4aa7 100644
--- a/test cases/rust/32 rust.workspace workspace/Cargo.toml
+++ b/test cases/rust/32 rust.workspace workspace/Cargo.toml
@@ -1,5 +1,5 @@
[workspace]
-members = ["."]
+members = [".", "more"]
[package]
name = "workspace_test"
@@ -14,3 +14,4 @@ feature2 = []
[dependencies]
hello = { version = "1.0", path = "subprojects/hello-1.0", optional = true }
answer = { version = "2.1", path = "subprojects/answer-2.1", optional = true }
+more = { path = "more" }
diff --git a/test cases/rust/32 rust.workspace workspace/meson.build b/test cases/rust/32 rust.workspace workspace/meson.build
index 185759413..7a7ddd333 100644
--- a/test cases/rust/32 rust.workspace workspace/meson.build
+++ b/test cases/rust/32 rust.workspace workspace/meson.build
@@ -4,7 +4,7 @@ rust = import('rust')
cargo_ws = rust.workspace()
# Test workspace.packages() method
-assert(cargo_ws.packages() == ['answer', 'hello', 'workspace_test'])
+assert(cargo_ws.packages() == ['answer', 'hello', 'more', 'workspace_test'])
main_pkg = cargo_ws.package()
assert(main_pkg.name() == 'workspace_test')
@@ -27,8 +27,10 @@ assert(answer_rs.api() == '2')
assert(answer_rs.all_features() == ['default', 'large'])
assert(answer_rs.features() == ['default', 'large'])
+subdir('more')
+
e = executable('workspace-test', 'src/main.rs',
- dependencies: [hello_rs.dependency(), answer_rs.dependency()],
+ dependencies: [hello_rs.dependency(), answer_rs.dependency(), more_dep],
)
test('workspace-test', e)
diff --git a/test cases/rust/32 rust.workspace workspace/more/Cargo.toml b/test cases/rust/32 rust.workspace workspace/more/Cargo.toml
new file mode 100644
index 000000000..1e7e46a5f
--- /dev/null
+++ b/test cases/rust/32 rust.workspace workspace/more/Cargo.toml
@@ -0,0 +1,7 @@
+[package]
+name = "more"
+version = "0.1.0"
+edition = "2021"
+
+[lib]
+crate-type = ["rlib"] \ No newline at end of file
diff --git a/test cases/rust/32 rust.workspace workspace/more/meson.build b/test cases/rust/32 rust.workspace workspace/more/meson.build
new file mode 100644
index 000000000..1c57b1e5b
--- /dev/null
+++ b/test cases/rust/32 rust.workspace workspace/more/meson.build
@@ -0,0 +1,8 @@
+more_pkg = cargo_ws.package('more')
+
+assert(more_pkg.name() == 'more')
+assert(more_pkg.features() == ['default'])
+assert(more_pkg.all_features() == ['default'])
+
+l = static_library('more', 'src/lib.rs')
+more_dep = declare_dependency(link_with: l)
diff --git a/test cases/rust/32 rust.workspace workspace/more/src/lib.rs b/test cases/rust/32 rust.workspace workspace/more/src/lib.rs
new file mode 100644
index 000000000..178adaca9
--- /dev/null
+++ b/test cases/rust/32 rust.workspace workspace/more/src/lib.rs
@@ -0,0 +1,3 @@
+pub fn do_something() {
+ println!("Doing something in more crate");
+} \ No newline at end of file
diff --git a/test cases/rust/32 rust.workspace workspace/src/main.rs b/test cases/rust/32 rust.workspace workspace/src/main.rs
index 13c02dd64..3c8c968e2 100644
--- a/test cases/rust/32 rust.workspace workspace/src/main.rs
+++ b/test cases/rust/32 rust.workspace workspace/src/main.rs
@@ -5,4 +5,5 @@ fn main() {
println!("{}", farewell());
println!("{}", answer::answer());
println!("{}", answer::large_answer());
+ more::do_something();
}