aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXavier Claessens <xavier.claessens@collabora.com>2022-10-13 14:20:06 -0400
committerXavier Claessens <xavier.claessens@collabora.com>2022-10-23 12:21:46 +0200
commit1d56df94097678fbdf05fa9ca04e0b90ff65cf2c (patch)
tree4aa7672e2a39bde0f317418561d2bf3c40c6a954
parent42a7f8e8efe1753bafe535a0be9acb7ed93a4dbb (diff)
downloadmeson-1d56df94097678fbdf05fa9ca04e0b90ff65cf2c.zip
meson-1d56df94097678fbdf05fa9ca04e0b90ff65cf2c.tar.gz
meson-1d56df94097678fbdf05fa9ca04e0b90ff65cf2c.tar.bz2
Add unit test for cc.preprocess()
-rw-r--r--test cases/common/255 preprocess/bar.c3
-rw-r--r--test cases/common/255 preprocess/foo.c1
-rw-r--r--test cases/common/255 preprocess/foo.h2
-rw-r--r--test cases/common/255 preprocess/meson.build15
-rw-r--r--test cases/common/255 preprocess/src/file.map.in3
-rw-r--r--test cases/common/255 preprocess/src/meson.build4
6 files changed, 28 insertions, 0 deletions
diff --git a/test cases/common/255 preprocess/bar.c b/test cases/common/255 preprocess/bar.c
new file mode 100644
index 0000000..43737b9
--- /dev/null
+++ b/test cases/common/255 preprocess/bar.c
@@ -0,0 +1,3 @@
+int bar(void) {
+ return BAR;
+}
diff --git a/test cases/common/255 preprocess/foo.c b/test cases/common/255 preprocess/foo.c
new file mode 100644
index 0000000..c9d16c5
--- /dev/null
+++ b/test cases/common/255 preprocess/foo.c
@@ -0,0 +1 @@
+#include <foo.h>
diff --git a/test cases/common/255 preprocess/foo.h b/test cases/common/255 preprocess/foo.h
new file mode 100644
index 0000000..ba60bf3
--- /dev/null
+++ b/test cases/common/255 preprocess/foo.h
@@ -0,0 +1,2 @@
+int bar(void);
+int main(void) { return FOO + bar(); }
diff --git a/test cases/common/255 preprocess/meson.build b/test cases/common/255 preprocess/meson.build
new file mode 100644
index 0000000..4824598
--- /dev/null
+++ b/test cases/common/255 preprocess/meson.build
@@ -0,0 +1,15 @@
+project('preprocess', 'c')
+
+cc = meson.get_compiler('c')
+
+add_project_arguments(['-DFOO=0', '-DBAR=0'], language: 'c')
+
+pp_files = cc.preprocess('foo.c', 'bar.c', output: '@PLAINNAME@')
+
+foreach f : pp_files
+ message(f.full_path())
+endforeach
+
+subdir('src')
+
+test('test-foo', executable('app', pp_files, link_depends: file_map))
diff --git a/test cases/common/255 preprocess/src/file.map.in b/test cases/common/255 preprocess/src/file.map.in
new file mode 100644
index 0000000..152fb65
--- /dev/null
+++ b/test cases/common/255 preprocess/src/file.map.in
@@ -0,0 +1,3 @@
+#if 1
+Hello World
+#endif
diff --git a/test cases/common/255 preprocess/src/meson.build b/test cases/common/255 preprocess/src/meson.build
new file mode 100644
index 0000000..3169bb5
--- /dev/null
+++ b/test cases/common/255 preprocess/src/meson.build
@@ -0,0 +1,4 @@
+file_map = cc.preprocess('file.map.in',
+ output: '@BASENAME@',
+ compile_args: ['-x', 'assembler-with-cpp'],
+)