summaryrefslogtreecommitdiff
path: root/test cases/common/203 subproject with features/meson.build
diff options
context:
space:
mode:
Diffstat (limited to 'test cases/common/203 subproject with features/meson.build')
-rw-r--r--test cases/common/203 subproject with features/meson.build17
1 files changed, 17 insertions, 0 deletions
diff --git a/test cases/common/203 subproject with features/meson.build b/test cases/common/203 subproject with features/meson.build
new file mode 100644
index 000000000..5bdfefbc0
--- /dev/null
+++ b/test cases/common/203 subproject with features/meson.build
@@ -0,0 +1,17 @@
+project('proj', 'c')
+
+auto_subproj = subproject('sub', required: get_option('use-subproject'))
+assert(auto_subproj.found(), 'Subproject should always be buildable and thus found')
+
+auto_dep = dependency('', fallback: ['sub', 'libSub'], required: true)
+assert(auto_dep.found() == true, 'Subproject is required and foundable, dependency should be found.')
+
+disabled_subproj = subproject('disabled_sub', required: get_option('disabled-subproject'))
+assert(disabled_subproj.found() == false, 'Disabled subproject should be NOT found')
+
+disabled_dep = dependency('', fallback: ['disabled_sub', 'libSub'], required: false)
+assert(disabled_dep.found() == false, 'Subprojetc was disabled, it should never be built.')
+nothing = executable('nothing', 'nothing.c', dependencies: [disabled_dep])
+
+subproj_with_missing_dep = subproject('auto_sub_with_missing_dep', required: get_option('auto-sub-with-missing-dep'))
+assert(subproj_with_missing_dep.found() == false, 'Subproject with required=auto and missing dependency should be NOT found')