summaryrefslogtreecommitdiff
path: root/test cases
diff options
context:
space:
mode:
authorNirbheek Chauhan <nirbheek@centricular.com>2016-11-29 00:57:01 +0530
committerJussi Pakkanen <jpakkane@gmail.com>2016-12-03 21:46:20 +0200
commite1c9d94708fe4b13986fa61aa3fa308f3b6e8a70 (patch)
tree6f6e57749addb4f687c6aba3f39a68f35a5c6e34 /test cases
parent2f804e9074f391e8efbf4a2deb9f1cc3ebaaaf2e (diff)
downloadmeson-e1c9d94708fe4b13986fa61aa3fa308f3b6e8a70.tar.gz
Allow many version conditions for pkg-config deps
Sometimes we want to restrict the acceptable versions to a list of versions, or a smallest-version + largest-version, or both. For instance, GStreamer's opencv plugin is only compatible with 3.1.0 >= opencv >= 2.3.0
Diffstat (limited to 'test cases')
-rw-r--r--test cases/failing/37 pkgconfig dependency impossible conditions/meson.build3
-rw-r--r--test cases/linuxlike/5 dependency versions/meson.build11
2 files changed, 14 insertions, 0 deletions
diff --git a/test cases/failing/37 pkgconfig dependency impossible conditions/meson.build b/test cases/failing/37 pkgconfig dependency impossible conditions/meson.build
new file mode 100644
index 000000000..54d434c09
--- /dev/null
+++ b/test cases/failing/37 pkgconfig dependency impossible conditions/meson.build
@@ -0,0 +1,3 @@
+project('impossible-dep-test', 'c', version : '1.0')
+
+dependency('zlib', version : ['>=1.0', '<1.0'])
diff --git a/test cases/linuxlike/5 dependency versions/meson.build b/test cases/linuxlike/5 dependency versions/meson.build
index 1de87c80a..7f2956428 100644
--- a/test cases/linuxlike/5 dependency versions/meson.build
+++ b/test cases/linuxlike/5 dependency versions/meson.build
@@ -10,6 +10,17 @@ assert(zlib.type_name() == 'pkgconfig', 'zlib should be of type "pkgconfig" not
zlibver = dependency('zlib', version : '<1.0', required : false)
assert(zlibver.found() == false, 'zlib <1.0 should not be found!')
+# Find external dependencies with various version restrictions
+dependency('zlib', version : '>=1.0')
+dependency('zlib', version : '<=9999')
+dependency('zlib', version : '=' + zlib.version())
+
+# Find external dependencies with multiple version restrictions
+dependency('zlib', version : ['>=1.0', '<=9999'])
+if dependency('zlib', version : ['<=1.0', '>=9999', '=' + zlib.version()], required : false).found()
+ error('zlib <=1.0 >=9999 should not have been found')
+endif
+
# Test https://github.com/mesonbuild/meson/pull/610
dependency('somebrokenlib', version : '>=2.0', required : false)
dependency('somebrokenlib', version : '>=1.0', required : false)