Skip to content

Commit 2a937f8

Browse files
authored
Merge f427aef into d490636
2 parents d490636 + f427aef commit 2a937f8

File tree

1 file changed

+11
-1
lines changed

1 file changed

+11
-1
lines changed

mesonbuild/dependencies/detect.py

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,13 +108,23 @@ def find_external_dependency(name: str, env: 'Environment', kwargs: T.Dict[str,
108108

109109
for c in candidates:
110110
# try this dependency method
111+
d: T.Optional[ExternalDependency] = None
111112
try:
112113
d = c()
113114
d._check_version()
114115
pkgdep.append(d)
115116
except DependencyException as e:
116117
assert isinstance(c, functools.partial), 'for mypy'
117-
bettermsg = f'Dependency lookup for {name} with method {c.func.log_tried()!r} failed: {e}'
118+
if d is not None:
119+
method = f"with method '{d.log_tried()}'"
120+
elif isinstance(c.func, ExternalDependency):
121+
method = f"with method '{c.func.log_tried()}'"
122+
else:
123+
# It is possible for `c.func` to not be an `ExternalDependency`
124+
# initializer, in that case we can't figure out what method was
125+
# just tried.
126+
method = 'with unknown method'
127+
bettermsg = f'Dependency lookup for {name} {method!r} failed: {e}'
118128
mlog.debug(bettermsg)
119129
e.args = (bettermsg,)
120130
pkg_exc.append(e)

0 commit comments

Comments
 (0)