aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXavier Claessens <xavier.claessens@collabora.com>2020-07-02 22:58:13 -0400
committerJussi Pakkanen <jpakkane@gmail.com>2020-07-04 13:57:51 +0300
commitb510d644feb8e0268236f0871a96c1ae86de5cab (patch)
treecaa29697b5bff287793a3fd69b981da8a9872fc2
parentf66c8c35dab22f547601a48217ee8a53be28e858 (diff)
downloadmeson-b510d644feb8e0268236f0871a96c1ae86de5cab.zip
meson-b510d644feb8e0268236f0871a96c1ae86de5cab.tar.gz
meson-b510d644feb8e0268236f0871a96c1ae86de5cab.tar.bz2
find_program: Do not use fallback when before parsing project()
Mesa is doing `project(... find_program() ...)` so environment.wrap_resolver is not defined yet.
-rw-r--r--mesonbuild/environment.py1
-rw-r--r--mesonbuild/interpreter.py2
2 files changed, 2 insertions, 1 deletions
diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py
index 8083aa8..bf09a88 100644
--- a/mesonbuild/environment.py
+++ b/mesonbuild/environment.py
@@ -643,6 +643,7 @@ class Environment:
self.clang_static_linker = ['llvm-ar']
self.default_cmake = ['cmake']
self.default_pkgconfig = ['pkg-config']
+ self.wrap_resolver = None
def create_new_coredata(self, options):
# WARNING: Don't use any values from coredata in __init__. It gets
diff --git a/mesonbuild/interpreter.py b/mesonbuild/interpreter.py
index 633615d..11dac38 100644
--- a/mesonbuild/interpreter.py
+++ b/mesonbuild/interpreter.py
@@ -3364,7 +3364,7 @@ external dependencies (including libraries) must go to "dependencies".''')
fallback = None
wrap_mode = self.coredata.get_builtin_option('wrap_mode')
- if wrap_mode != WrapMode.nofallback:
+ if wrap_mode != WrapMode.nofallback and self.environment.wrap_resolver:
fallback = self.environment.wrap_resolver.find_program_provider(args)
if fallback and wrap_mode == WrapMode.forcefallback:
return self.find_program_fallback(fallback, args, required, extra_info)