aboutsummaryrefslogtreecommitdiff
path: root/test cases/common/58 multiple generators
diff options
context:
space:
mode:
Diffstat (limited to 'test cases/common/58 multiple generators')
-rw-r--r--test cases/common/58 multiple generators/data2.dat1
-rw-r--r--test cases/common/58 multiple generators/main.cpp6
-rw-r--r--test cases/common/58 multiple generators/meson.build13
-rwxr-xr-xtest cases/common/58 multiple generators/mygen.py22
-rw-r--r--test cases/common/58 multiple generators/subdir/data.dat1
-rw-r--r--test cases/common/58 multiple generators/subdir/meson.build4
6 files changed, 47 insertions, 0 deletions
diff --git a/test cases/common/58 multiple generators/data2.dat b/test cases/common/58 multiple generators/data2.dat
new file mode 100644
index 0000000..0cfbf08
--- /dev/null
+++ b/test cases/common/58 multiple generators/data2.dat
@@ -0,0 +1 @@
+2
diff --git a/test cases/common/58 multiple generators/main.cpp b/test cases/common/58 multiple generators/main.cpp
new file mode 100644
index 0000000..f1a01bd
--- /dev/null
+++ b/test cases/common/58 multiple generators/main.cpp
@@ -0,0 +1,6 @@
+#include"source1.h"
+#include"source2.h"
+
+int main(void) {
+ return func1() + func2();
+}
diff --git a/test cases/common/58 multiple generators/meson.build b/test cases/common/58 multiple generators/meson.build
new file mode 100644
index 0000000..66f7fa9
--- /dev/null
+++ b/test cases/common/58 multiple generators/meson.build
@@ -0,0 +1,13 @@
+project('trickier generator', 'cpp')
+
+comp = find_program('mygen.py')
+subdir('subdir')
+
+generated2 = custom_target('generated2',
+ output : ['source2.h', 'source2.cpp'],
+ input : 'data2.dat',
+ command : [comp, '@INPUT0@', '@OUTDIR@'])
+
+exe = executable('prog', 'main.cpp', generated, generated2,
+ include_directories : include_directories('subdir'))
+ test('generated test', exe)
diff --git a/test cases/common/58 multiple generators/mygen.py b/test cases/common/58 multiple generators/mygen.py
new file mode 100755
index 0000000..99dc331
--- /dev/null
+++ b/test cases/common/58 multiple generators/mygen.py
@@ -0,0 +1,22 @@
+#!/usr/bin/env python3
+
+import sys, os
+
+if len(sys.argv) != 3:
+ print("You is fail.")
+ sys.exit(1)
+
+with open(sys.argv[1]) as f:
+ val = f.read().strip()
+outdir = sys.argv[2]
+
+outhdr = os.path.join(outdir, 'source%s.h' % val)
+outsrc = os.path.join(outdir, 'source%s.cpp' % val)
+
+with open(outhdr, 'w') as f:
+ f.write('int func%s();\n' % val)
+with open(outsrc, 'w') as f:
+ f.write('''int func%s() {
+ return 0;
+}
+''' % val)
diff --git a/test cases/common/58 multiple generators/subdir/data.dat b/test cases/common/58 multiple generators/subdir/data.dat
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ b/test cases/common/58 multiple generators/subdir/data.dat
@@ -0,0 +1 @@
+1
diff --git a/test cases/common/58 multiple generators/subdir/meson.build b/test cases/common/58 multiple generators/subdir/meson.build
new file mode 100644
index 0000000..2456ecb
--- /dev/null
+++ b/test cases/common/58 multiple generators/subdir/meson.build
@@ -0,0 +1,4 @@
+generated = custom_target('generated',
+output : ['source1.h', 'source1.cpp'],
+input : 'data.dat',
+command : [comp, '@INPUT0@', '@OUTDIR@'])