aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDylan Baker <dylan@pnwbakers.com>2021-01-21 10:49:01 -0800
committerDylan Baker <dylan@pnwbakers.com>2021-01-21 10:59:15 -0800
commitd02149ad90fe9c922c3511528f7748b4378b6e67 (patch)
tree47ceaba9d124ee14cdc47e12f989828b3f9cfcdb
parent4550cf9500fd60570e29eb134fc862563fff262a (diff)
downloadmeson-d02149ad90fe9c922c3511528f7748b4378b6e67.zip
meson-d02149ad90fe9c922c3511528f7748b4378b6e67.tar.gz
meson-d02149ad90fe9c922c3511528f7748b4378b6e67.tar.bz2
tests/rust: Add a generated library to generated main test
Which is broken, of course.
-rw-r--r--test cases/rust/11 generated main/gen.py6
-rw-r--r--test cases/rust/11 generated main/generated_lib_main.rs5
-rw-r--r--test cases/rust/11 generated main/meson.build2
-rw-r--r--test cases/rust/11 generated main/sub/meson.build7
4 files changed, 19 insertions, 1 deletions
diff --git a/test cases/rust/11 generated main/gen.py b/test cases/rust/11 generated main/gen.py
index ebbc2a7..c8cfe76 100644
--- a/test cases/rust/11 generated main/gen.py
+++ b/test cases/rust/11 generated main/gen.py
@@ -6,10 +6,14 @@ import argparse
def main() -> None:
parser = argparse.ArgumentParser()
parser.add_argument('out')
+ parser.add_argument('--mode', choices=['main', 'lib'], default='main')
args = parser.parse_args()
with open(args.out, 'w') as f:
- f.write('fn main() { println!("I prefer tarnish, actually.") }')
+ if args.mode == 'main':
+ f.write('fn main() { println!("I prefer tarnish, actually.") }')
+ elif args.mode == 'lib':
+ f.write('pub fn libfun() { println!("I prefer tarnish, actually.") }')
if __name__ == "__main__":
diff --git a/test cases/rust/11 generated main/generated_lib_main.rs b/test cases/rust/11 generated main/generated_lib_main.rs
new file mode 100644
index 0000000..d9b373e
--- /dev/null
+++ b/test cases/rust/11 generated main/generated_lib_main.rs
@@ -0,0 +1,5 @@
+extern crate static_lib_generated as lib;
+
+fn main() {
+ lib::libfun();
+}
diff --git a/test cases/rust/11 generated main/meson.build b/test cases/rust/11 generated main/meson.build
index b42da8a..695124c 100644
--- a/test cases/rust/11 generated main/meson.build
+++ b/test cases/rust/11 generated main/meson.build
@@ -17,3 +17,5 @@ executable('generator_main', gener.process(['gen.py']))
subdir('sub')
executable('custom_target_subdir_main', s)
+
+executable('link_with_generated_lib', 'generated_lib_main.rs', link_with : lib)
diff --git a/test cases/rust/11 generated main/sub/meson.build b/test cases/rust/11 generated main/sub/meson.build
index 01bdeb9..3ce96e5 100644
--- a/test cases/rust/11 generated main/sub/meson.build
+++ b/test cases/rust/11 generated main/sub/meson.build
@@ -4,3 +4,10 @@ s = custom_target(
output : ['main.rs'],
)
+l = custom_target(
+ 'lib_target',
+ command : [gen, '@OUTPUT@', '--mode', 'lib'],
+ output : ['lib.rs'],
+)
+
+lib = static_library('static_lib_generated', l)