aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDylan Baker <dylan@pnwbakers.com>2022-06-02 16:05:49 -0700
committerJussi Pakkanen <jpakkane@gmail.com>2022-06-08 23:19:09 +0300
commitf235b814c3a60095e2a086ef5e8b1d775318415d (patch)
tree9ea31fd1aa368e43528e31c098eb0c8db4c2bacb
parentd0a0e04c987ea92473073f9c3017fe648fc59f04 (diff)
downloadmeson-f235b814c3a60095e2a086ef5e8b1d775318415d.zip
meson-f235b814c3a60095e2a086ef5e8b1d775318415d.tar.gz
meson-f235b814c3a60095e2a086ef5e8b1d775318415d.tar.bz2
build: Fix annotations for CustomTarget
and fix a bug in the backend that the correct annotations uncover
-rw-r--r--mesonbuild/backend/backends.py4
-rw-r--r--mesonbuild/build.py2
2 files changed, 5 insertions, 1 deletions
diff --git a/mesonbuild/backend/backends.py b/mesonbuild/backend/backends.py
index 682e83f..0ccb6cd 100644
--- a/mesonbuild/backend/backends.py
+++ b/mesonbuild/backend/backends.py
@@ -1299,6 +1299,10 @@ class Backend:
elif isinstance(i, build.ExtractedObjects):
outputs = i.get_outputs(self)
fname = self.get_extracted_obj_paths(i.target, outputs)
+ elif isinstance(i, programs.ExternalProgram):
+ assert i.found(), "This shouldn't be possible"
+ assert i.path is not None, 'for mypy'
+ fname = [i.path]
else:
fname = [i.rel_to_builddir(self.build_to_src)]
if target.absolute_paths:
diff --git a/mesonbuild/build.py b/mesonbuild/build.py
index 7b8966b..05a3cea 100644
--- a/mesonbuild/build.py
+++ b/mesonbuild/build.py
@@ -2529,7 +2529,7 @@ class CustomTarget(Target, CommandBase):
def get_filename(self) -> str:
return self.outputs[0]
- def get_sources(self) -> T.List[T.Union[str, File, 'CustomTarget', 'CustomTargetIndex', 'GeneratedList', 'ExtractedObjects']]:
+ def get_sources(self) -> T.List[T.Union[str, File, BuildTarget, GeneratedTypes, ExtractedObjects, programs.ExternalProgram]]:
return self.sources
def get_generated_lists(self) -> T.List[GeneratedList]: