aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/interpreterbase/baseobjects.py
diff options
context:
space:
mode:
authorDaniel Mensinger <daniel@mensinger-ka.de>2021-06-20 11:29:06 +0200
committerJussi Pakkanen <jpakkane@gmail.com>2021-06-21 20:19:06 +0300
commit5cd9f88d6cafbbc2b748ffc85226d53800a05aac (patch)
tree314ae3accb148ac6f180da3373c9b4949b9e54f4 /mesonbuild/interpreterbase/baseobjects.py
parent2e8729a7e6cee460f8e75e231ecdd01933fbd277 (diff)
downloadmeson-5cd9f88d6cafbbc2b748ffc85226d53800a05aac.zip
meson-5cd9f88d6cafbbc2b748ffc85226d53800a05aac.tar.gz
meson-5cd9f88d6cafbbc2b748ffc85226d53800a05aac.tar.bz2
fix: Ensure that build targets have all methods from ExternalProgram
As a side-effect from #8885 `find_program()` returns now `Executable` objects when `meson.override_find_program` is called with an executable target. To resolve this conflict the missing methods from `ExternalProgram` are added to `BuildTarget`.
Diffstat (limited to 'mesonbuild/interpreterbase/baseobjects.py')
-rw-r--r--mesonbuild/interpreterbase/baseobjects.py2
1 files changed, 1 insertions, 1 deletions
diff --git a/mesonbuild/interpreterbase/baseobjects.py b/mesonbuild/interpreterbase/baseobjects.py
index d910e51..d82aad2 100644
--- a/mesonbuild/interpreterbase/baseobjects.py
+++ b/mesonbuild/interpreterbase/baseobjects.py
@@ -58,7 +58,7 @@ class InterpreterObject:
if not getattr(method, 'no-args-flattening', False):
args = flatten(args)
return method(args, kwargs)
- raise InvalidCode('Unknown method "%s" in object.' % method_name)
+ raise InvalidCode(f'Unknown method "{method_name}" in object {self} of type {type(self).__name__}.')
class MesonInterpreterObject(InterpreterObject):
''' All non-elementary objects and non-object-holders should be derived from this '''