aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--test cases/common/80 shared subproject 2/a.c13
-rw-r--r--test cases/common/80 shared subproject 2/meson.build10
-rw-r--r--test cases/common/80 shared subproject 2/subprojects/B/b.c9
-rw-r--r--test cases/common/80 shared subproject 2/subprojects/B/meson.build4
-rw-r--r--test cases/common/80 shared subproject 2/subprojects/C/c.c3
-rw-r--r--test cases/common/80 shared subproject 2/subprojects/C/meson.build2
6 files changed, 41 insertions, 0 deletions
diff --git a/test cases/common/80 shared subproject 2/a.c b/test cases/common/80 shared subproject 2/a.c
new file mode 100644
index 0000000..6ed96fa
--- /dev/null
+++ b/test cases/common/80 shared subproject 2/a.c
@@ -0,0 +1,13 @@
+#include<assert.h>
+char func_b();
+char func_c();
+
+int main(int argc, char **argv) {
+ if(func_b() != 'b') {
+ return 1;
+ }
+ if(func_c() != 'c') {
+ return 2;
+ }
+ return 0;
+}
diff --git a/test cases/common/80 shared subproject 2/meson.build b/test cases/common/80 shared subproject 2/meson.build
new file mode 100644
index 0000000..a0ce0f4
--- /dev/null
+++ b/test cases/common/80 shared subproject 2/meson.build
@@ -0,0 +1,10 @@
+project('A', 'c')
+
+C = subproject('C')
+c = C.get_variable('c')
+
+B = subproject('B')
+b = B.get_variable('b')
+
+a = executable('a', 'a.c', link_with : [b, c])
+test('a test', a)
diff --git a/test cases/common/80 shared subproject 2/subprojects/B/b.c b/test cases/common/80 shared subproject 2/subprojects/B/b.c
new file mode 100644
index 0000000..03b0cc7
--- /dev/null
+++ b/test cases/common/80 shared subproject 2/subprojects/B/b.c
@@ -0,0 +1,9 @@
+#include<stdlib.h>
+char func_c();
+
+char func_b() {
+ if(func_c() != 'c') {
+ exit(3);
+ }
+ return 'b';
+}
diff --git a/test cases/common/80 shared subproject 2/subprojects/B/meson.build b/test cases/common/80 shared subproject 2/subprojects/B/meson.build
new file mode 100644
index 0000000..280c60c
--- /dev/null
+++ b/test cases/common/80 shared subproject 2/subprojects/B/meson.build
@@ -0,0 +1,4 @@
+project('B', 'c')
+C = subproject('C')
+c = C.get_variable('c')
+b = shared_library('b', 'b.c', link_with : c)
diff --git a/test cases/common/80 shared subproject 2/subprojects/C/c.c b/test cases/common/80 shared subproject 2/subprojects/C/c.c
new file mode 100644
index 0000000..3bbac08
--- /dev/null
+++ b/test cases/common/80 shared subproject 2/subprojects/C/c.c
@@ -0,0 +1,3 @@
+char func_c() {
+ return 'c';
+}
diff --git a/test cases/common/80 shared subproject 2/subprojects/C/meson.build b/test cases/common/80 shared subproject 2/subprojects/C/meson.build
new file mode 100644
index 0000000..abf0b1e
--- /dev/null
+++ b/test cases/common/80 shared subproject 2/subprojects/C/meson.build
@@ -0,0 +1,2 @@
+project('C', 'c')
+c = shared_library('c', 'c.c')