aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2017-06-17 13:29:13 +0300
committerJussi Pakkanen <jpakkane@gmail.com>2017-06-17 13:29:13 +0300
commit85a263a6708f865bffe77c2fe9bb5e888c466709 (patch)
treeb4d1702344d400800735cad0d72c5a87190ad956
parentf75d39468317fa642fca264ef05c4ef7c86fd9ca (diff)
downloadmeson-85a263a6708f865bffe77c2fe9bb5e888c466709.zip
meson-85a263a6708f865bffe77c2fe9bb5e888c466709.tar.gz
meson-85a263a6708f865bffe77c2fe9bb5e888c466709.tar.bz2
Failing test for -D dedupping.
-rwxr-xr-xrun_unittests.py8
-rw-r--r--test cases/unit/10 d dedup/meson.build6
-rw-r--r--test cases/unit/10 d dedup/prog.c14
3 files changed, 28 insertions, 0 deletions
diff --git a/run_unittests.py b/run_unittests.py
index a405b01..7e3a2f1 100755
--- a/run_unittests.py
+++ b/run_unittests.py
@@ -1221,6 +1221,14 @@ int main(int argc, char **argv) {
for path in rpath.split(':'):
self.assertTrue(path.startswith('$ORIGIN'), msg=(each, path))
+ def test_dash_d_dedup(self):
+ testdir = os.path.join(self.unit_test_dir, '10 d dedup')
+ self.init(testdir)
+ cmd = self.get_compdb()[0]['command']
+ self.assertTrue('-D FOO -D BAR' in cmd or \
+ '/D FOO /D BAR' in cmd)
+
+
class FailureTests(BasePlatformTests):
'''
diff --git a/test cases/unit/10 d dedup/meson.build b/test cases/unit/10 d dedup/meson.build
new file mode 100644
index 0000000..08f3a6c
--- /dev/null
+++ b/test cases/unit/10 d dedup/meson.build
@@ -0,0 +1,6 @@
+project('d dedup', 'c')
+
+add_project_arguments('-D', 'FOO', '-D', 'BAR', language : 'c')
+
+executable('prog', 'prog.c')
+
diff --git a/test cases/unit/10 d dedup/prog.c b/test cases/unit/10 d dedup/prog.c
new file mode 100644
index 0000000..505f122
--- /dev/null
+++ b/test cases/unit/10 d dedup/prog.c
@@ -0,0 +1,14 @@
+#include<stdio.h>
+
+#ifndef FOO
+#error FOO is not defined.
+#endif
+
+#ifndef BAR
+#error BAR is not defined.
+#endif
+
+int main(int argc, char **argv) {
+ printf("All is well.\n");
+ return 0;
+}