aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mesonbuild/interpreter.py2
-rw-r--r--test cases/common/187 subproject version/meson.build10
-rw-r--r--test cases/common/187 subproject version/subprojects/a/meson.build5
3 files changed, 16 insertions, 1 deletions
diff --git a/mesonbuild/interpreter.py b/mesonbuild/interpreter.py
index 16798a4..c87a49b 100644
--- a/mesonbuild/interpreter.py
+++ b/mesonbuild/interpreter.py
@@ -2349,7 +2349,7 @@ to directly access options of other subprojects.''')
def check_subproject_version(wanted, found):
if wanted == 'undefined':
return True
- if found == 'undefined' or not mesonlib.version_compare(found, wanted):
+ if found == 'undefined' or not mesonlib.version_compare_many(found, wanted)[0]:
return False
return True
diff --git a/test cases/common/187 subproject version/meson.build b/test cases/common/187 subproject version/meson.build
new file mode 100644
index 0000000..bd8fc03
--- /dev/null
+++ b/test cases/common/187 subproject version/meson.build
@@ -0,0 +1,10 @@
+project('subproject version', 'c',
+ version : '2.3.4',
+ license: 'mylicense')
+
+subproject('a')
+
+liba_dep = dependency('a',
+ fallback: ['a', 'liba_dep'],
+ version: ['>= 0.30.0', '!= 0.99.0'])
+
diff --git a/test cases/common/187 subproject version/subprojects/a/meson.build b/test cases/common/187 subproject version/subprojects/a/meson.build
new file mode 100644
index 0000000..dae3130
--- /dev/null
+++ b/test cases/common/187 subproject version/subprojects/a/meson.build
@@ -0,0 +1,5 @@
+project('mysubproject', 'c',
+ version : '1.0.0',
+ license : 'sublicense')
+
+liba_dep = declare_dependency (version : '1.0.0')