summaryrefslogtreecommitdiffstats
path: root/test cases/unit/12 promote/subprojects
diff options
context:
space:
mode:
Diffstat (limited to 'test cases/unit/12 promote/subprojects')
-rw-r--r--test cases/unit/12 promote/subprojects/s1/meson.build7
-rw-r--r--test cases/unit/12 promote/subprojects/s1/s1.c6
-rw-r--r--test cases/unit/12 promote/subprojects/s1/subprojects/s3/meson.build3
-rw-r--r--test cases/unit/12 promote/subprojects/s1/subprojects/s3/s3.c3
-rw-r--r--test cases/unit/12 promote/subprojects/s1/subprojects/scommon/meson.build3
-rw-r--r--test cases/unit/12 promote/subprojects/s1/subprojects/scommon/scommon_broken.c1
-rw-r--r--test cases/unit/12 promote/subprojects/s2/meson.build5
-rw-r--r--test cases/unit/12 promote/subprojects/s2/s2.c6
-rw-r--r--test cases/unit/12 promote/subprojects/s2/subprojects/athing.wrap1
-rw-r--r--test cases/unit/12 promote/subprojects/s2/subprojects/scommon/meson.build3
-rw-r--r--test cases/unit/12 promote/subprojects/s2/subprojects/scommon/scommon_ok.c3
11 files changed, 41 insertions, 0 deletions
diff --git a/test cases/unit/12 promote/subprojects/s1/meson.build b/test cases/unit/12 promote/subprojects/s1/meson.build
new file mode 100644
index 0000000..88c467b
--- /dev/null
+++ b/test cases/unit/12 promote/subprojects/s1/meson.build
@@ -0,0 +1,7 @@
+project('s1', 'c')
+
+sc = subproject('scommon')
+s3 = subproject('s3')
+
+executable('s1', 's1.c',
+ link_with : [sc.get_variable('clib'), s3.get_variable('l')])
diff --git a/test cases/unit/12 promote/subprojects/s1/s1.c b/test cases/unit/12 promote/subprojects/s1/s1.c
new file mode 100644
index 0000000..7d1d775
--- /dev/null
+++ b/test cases/unit/12 promote/subprojects/s1/s1.c
@@ -0,0 +1,6 @@
+int func();
+int func2();
+
+int main(int argc, char **argv) {
+ return func() + func2();
+}
diff --git a/test cases/unit/12 promote/subprojects/s1/subprojects/s3/meson.build b/test cases/unit/12 promote/subprojects/s1/subprojects/s3/meson.build
new file mode 100644
index 0000000..71db691
--- /dev/null
+++ b/test cases/unit/12 promote/subprojects/s1/subprojects/s3/meson.build
@@ -0,0 +1,3 @@
+project('s3', 'c')
+
+l = static_library('s3', 's3.c')
diff --git a/test cases/unit/12 promote/subprojects/s1/subprojects/s3/s3.c b/test cases/unit/12 promote/subprojects/s1/subprojects/s3/s3.c
new file mode 100644
index 0000000..0166603
--- /dev/null
+++ b/test cases/unit/12 promote/subprojects/s1/subprojects/s3/s3.c
@@ -0,0 +1,3 @@
+int func2() {
+ return -42;
+}
diff --git a/test cases/unit/12 promote/subprojects/s1/subprojects/scommon/meson.build b/test cases/unit/12 promote/subprojects/s1/subprojects/scommon/meson.build
new file mode 100644
index 0000000..8ca550a
--- /dev/null
+++ b/test cases/unit/12 promote/subprojects/s1/subprojects/scommon/meson.build
@@ -0,0 +1,3 @@
+project('scommon', 'c')
+
+clib = static_library('scommon', 'scommon_broken.c')
diff --git a/test cases/unit/12 promote/subprojects/s1/subprojects/scommon/scommon_broken.c b/test cases/unit/12 promote/subprojects/s1/subprojects/scommon/scommon_broken.c
new file mode 100644
index 0000000..3665a9c
--- /dev/null
+++ b/test cases/unit/12 promote/subprojects/s1/subprojects/scommon/scommon_broken.c
@@ -0,0 +1 @@
+#error This file must not be used. The other scommon one should be instead.
diff --git a/test cases/unit/12 promote/subprojects/s2/meson.build b/test cases/unit/12 promote/subprojects/s2/meson.build
new file mode 100644
index 0000000..4aaeb59
--- /dev/null
+++ b/test cases/unit/12 promote/subprojects/s2/meson.build
@@ -0,0 +1,5 @@
+project('s2', 'c')
+
+sc = subproject('scommon')
+
+executable('s2', 's2.c', link_with : sc.get_variable('clib'))
diff --git a/test cases/unit/12 promote/subprojects/s2/s2.c b/test cases/unit/12 promote/subprojects/s2/s2.c
new file mode 100644
index 0000000..2a6d1e6
--- /dev/null
+++ b/test cases/unit/12 promote/subprojects/s2/s2.c
@@ -0,0 +1,6 @@
+int func();
+
+
+int main(int argc, char **argv) {
+ return func() != 42;
+}
diff --git a/test cases/unit/12 promote/subprojects/s2/subprojects/athing.wrap b/test cases/unit/12 promote/subprojects/s2/subprojects/athing.wrap
new file mode 100644
index 0000000..11b2178
--- /dev/null
+++ b/test cases/unit/12 promote/subprojects/s2/subprojects/athing.wrap
@@ -0,0 +1 @@
+[wrap-file]
diff --git a/test cases/unit/12 promote/subprojects/s2/subprojects/scommon/meson.build b/test cases/unit/12 promote/subprojects/s2/subprojects/scommon/meson.build
new file mode 100644
index 0000000..54049a8
--- /dev/null
+++ b/test cases/unit/12 promote/subprojects/s2/subprojects/scommon/meson.build
@@ -0,0 +1,3 @@
+project('scommon', 'c')
+
+clib = static_library('scommon', 'scommon_ok.c')
diff --git a/test cases/unit/12 promote/subprojects/s2/subprojects/scommon/scommon_ok.c b/test cases/unit/12 promote/subprojects/s2/subprojects/scommon/scommon_ok.c
new file mode 100644
index 0000000..652f4eb
--- /dev/null
+++ b/test cases/unit/12 promote/subprojects/s2/subprojects/scommon/scommon_ok.c
@@ -0,0 +1,3 @@
+int func() {
+ return 42;
+}