diff options
author | Xavier Claessens <xavier.claessens@collabora.com> | 2020-07-02 16:39:10 -0400 |
---|---|---|
committer | Jussi Pakkanen <jpakkane@gmail.com> | 2020-07-04 13:57:08 +0300 |
commit | f66c8c35dab22f547601a48217ee8a53be28e858 (patch) | |
tree | 8efde19c1b3460deb04cbbf61d1bdc4ae58cc348 /mesonbuild/interpreter.py | |
parent | 92075f5ef3c5df3b5e6ec4ae5189e58acb2e7c3f (diff) | |
download | meson-f66c8c35dab22f547601a48217ee8a53be28e858.zip meson-f66c8c35dab22f547601a48217ee8a53be28e858.tar.gz meson-f66c8c35dab22f547601a48217ee8a53be28e858.tar.bz2 |
qt: Fix has_tools() when required=False
Improve logs by making it clear when the program is found but has
wrong version.
Diffstat (limited to 'mesonbuild/interpreter.py')
-rw-r--r-- | mesonbuild/interpreter.py | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/mesonbuild/interpreter.py b/mesonbuild/interpreter.py index aad77b0..633615d 100644 --- a/mesonbuild/interpreter.py +++ b/mesonbuild/interpreter.py @@ -3320,7 +3320,8 @@ external dependencies (including libraries) must go to "dependencies".''') # TODO update modules to always pass `for_machine`. It is bad-form to assume # the host machine. def find_program_impl(self, args, for_machine: MachineChoice = MachineChoice.HOST, - required=True, silent=True, wanted='', search_dirs=None): + required=True, silent=True, wanted='', search_dirs=None, + version_func=None): args = mesonlib.listify(args) extra_info = [] @@ -3336,7 +3337,10 @@ external dependencies (including libraries) must go to "dependencies".''') return progobj if wanted: - version = progobj.get_version(self) + if version_func: + version = version_func(progobj) + else: + version = progobj.get_version(self) is_found, not_found, found = mesonlib.version_compare_many(version, wanted) if not is_found: mlog.log('Program', mlog.bold(progobj.get_name()), 'found:', mlog.red('NO'), |