aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNirbheek Chauhan <nirbheek@centricular.com>2017-06-09 12:59:34 +0530
committerNirbheek Chauhan <nirbheek@centricular.com>2017-06-09 20:21:01 +0530
commit38716f0fcb03c73ae1279036913e5b0ac41528a6 (patch)
tree94affbd862275f10ab1f911bd1de2dd7c1424a97
parent3a33a8ef49227c2fce1c0c7143e5529b4208d04e (diff)
downloadmeson-38716f0fcb03c73ae1279036913e5b0ac41528a6.zip
meson-38716f0fcb03c73ae1279036913e5b0ac41528a6.tar.gz
meson-38716f0fcb03c73ae1279036913e5b0ac41528a6.tar.bz2
tests: Improve llvm dependency test coverage
-rw-r--r--mesonbuild/dependencies/dev.py2
-rwxr-xr-xrun_unittests.py4
-rw-r--r--test cases/frameworks/15 llvm/meson.build7
3 files changed, 13 insertions, 0 deletions
diff --git a/mesonbuild/dependencies/dev.py b/mesonbuild/dependencies/dev.py
index 8d64379..d7a7181 100644
--- a/mesonbuild/dependencies/dev.py
+++ b/mesonbuild/dependencies/dev.py
@@ -202,6 +202,8 @@ class LLVMDependency(ExternalDependency):
out = out.strip()
if p.returncode != 0:
continue
+ # FIXME: As soon as some llvm-config is found, version checks
+ # in further dependnecy() calls will be ignored
if version_req:
if version_compare(out, version_req, strict=True):
if cls.__best_found and version_compare(out, '<={}'.format(cls.__best_found), strict=True):
diff --git a/run_unittests.py b/run_unittests.py
index b03534d..96aefc5 100755
--- a/run_unittests.py
+++ b/run_unittests.py
@@ -1256,6 +1256,10 @@ class FailureTests(BasePlatformTests):
for contents, match in a:
self.assertMesonRaises(contents, match)
+ def test_llvm_dependency(self):
+ self.assertMesonRaises("dependency('llvm', modules : 'fail')",
+ "(required.*fail|{})".format(self.dnf))
+
class WindowsTests(BasePlatformTests):
'''
diff --git a/test cases/frameworks/15 llvm/meson.build b/test cases/frameworks/15 llvm/meson.build
index 582ff37..af7f8c6 100644
--- a/test cases/frameworks/15 llvm/meson.build
+++ b/test cases/frameworks/15 llvm/meson.build
@@ -7,4 +7,11 @@ llvm_dep = dependency(
required : true,
)
+d = dependency('llvm', modules : 'not-found', required : false)
+assert(d.found() == false, 'not-found llvm module found')
+
+# XXX: Version checks are broken, see FIXME in LLVMDependency
+#d = dependency('llvm', version : '<0.1', required : false)
+#assert(d.found() == false, 'ancient llvm module found')
+
executable('sum', 'sum.c', dependencies : llvm_dep)