aboutsummaryrefslogtreecommitdiffstats
path: root/meson/test cases/linuxlike/6 subdir include order
diff options
context:
space:
mode:
Diffstat (limited to 'meson/test cases/linuxlike/6 subdir include order')
-rw-r--r--meson/test cases/linuxlike/6 subdir include order/meson.build12
-rw-r--r--meson/test cases/linuxlike/6 subdir include order/prog.c7
-rw-r--r--meson/test cases/linuxlike/6 subdir include order/subdir/glib.h1
3 files changed, 20 insertions, 0 deletions
diff --git a/meson/test cases/linuxlike/6 subdir include order/meson.build b/meson/test cases/linuxlike/6 subdir include order/meson.build
new file mode 100644
index 000000000..fea3984bb
--- /dev/null
+++ b/meson/test cases/linuxlike/6 subdir include order/meson.build
@@ -0,0 +1,12 @@
+project('subdir include order', 'c')
+
+# Ensure that headers in subdirs override external dependencies
+cc = meson.get_compiler('c')
+
+glib = dependency('glib-2.0')
+
+# This will fail to compile if it picks up the system-installed glib instead of
+# the glib in the subdir
+executable('prog', 'prog.c',
+ include_directories : include_directories('subdir'),
+ dependencies : glib)
diff --git a/meson/test cases/linuxlike/6 subdir include order/prog.c b/meson/test cases/linuxlike/6 subdir include order/prog.c
new file mode 100644
index 000000000..2d47a93ae
--- /dev/null
+++ b/meson/test cases/linuxlike/6 subdir include order/prog.c
@@ -0,0 +1,7 @@
+#include <glib.h>
+
+#ifndef MESON_OUR_GLIB
+#error "Failed"
+#endif
+
+int main(void) { return 0; }
diff --git a/meson/test cases/linuxlike/6 subdir include order/subdir/glib.h b/meson/test cases/linuxlike/6 subdir include order/subdir/glib.h
new file mode 100644
index 000000000..444b2d0aa
--- /dev/null
+++ b/meson/test cases/linuxlike/6 subdir include order/subdir/glib.h
@@ -0,0 +1 @@
+#define MESON_OUR_GLIB 1