diff options
author | Jussi Pakkanen <jpakkane@gmail.com> | 2020-03-08 14:49:23 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-03-08 14:49:23 +0200 |
commit | 44ff3e6c7de0db188284cc834b304e7b0e960d00 (patch) | |
tree | da5c45cecc16083c5120a3977383b42bd9d4cbf2 /mesonbuild/backend | |
parent | 91976a3489acbe53593e866fdb11951b515fda54 (diff) | |
parent | 06b1a317d26cbe2a1bd7a232dd9726590d0c0a48 (diff) | |
download | meson-44ff3e6c7de0db188284cc834b304e7b0e960d00.zip meson-44ff3e6c7de0db188284cc834b304e7b0e960d00.tar.gz meson-44ff3e6c7de0db188284cc834b304e7b0e960d00.tar.bz2 |
Merge pull request #6736 from dcbaker/mesonlib-type-annotations
Mesonlib type annotations
Diffstat (limited to 'mesonbuild/backend')
-rw-r--r-- | mesonbuild/backend/backends.py | 18 | ||||
-rw-r--r-- | mesonbuild/backend/ninjabackend.py | 7 |
2 files changed, 8 insertions, 17 deletions
diff --git a/mesonbuild/backend/backends.py b/mesonbuild/backend/backends.py index a8f4789..e9ab9f4 100644 --- a/mesonbuild/backend/backends.py +++ b/mesonbuild/backend/backends.py @@ -21,7 +21,7 @@ from .. import mlog import json import subprocess from ..mesonlib import MachineChoice, MesonException, OrderedSet, OptionOverrideProxy -from ..mesonlib import classify_unity_sources +from ..mesonlib import classify_unity_sources, unholder from ..mesonlib import File from ..compilers import CompilerArgs, VisualStudioLikeCompiler from ..interpreter import Interpreter @@ -748,9 +748,7 @@ class Backend: else: extra_paths = [] cmd_args = [] - for a in t.cmd_args: - if hasattr(a, 'held_object'): - a = a.held_object + for a in unholder(t.cmd_args): if isinstance(a, build.BuildTarget): extra_paths += self.determine_windows_extra_paths(a, []) if isinstance(a, mesonlib.File): @@ -868,14 +866,10 @@ class Backend: # also be built by default. XXX: Sometime in the future these should be # built only before running tests. for t in self.build.get_tests(): - exe = t.exe - if hasattr(exe, 'held_object'): - exe = exe.held_object + exe = unholder(t.exe) if isinstance(exe, (build.CustomTarget, build.BuildTarget)): result[exe.get_id()] = exe - for arg in t.cmd_args: - if hasattr(arg, 'held_object'): - arg = arg.held_object + for arg in unholder(t.cmd_args): if not isinstance(arg, (build.CustomTarget, build.BuildTarget)): continue result[arg.get_id()] = arg @@ -915,9 +909,7 @@ class Backend: Returns the path to them relative to the build root directory. ''' srcs = [] - for i in target.get_sources(): - if hasattr(i, 'held_object'): - i = i.held_object + for i in unholder(target.get_sources()): if isinstance(i, str): fname = [os.path.join(self.build_to_src, target.subdir, i)] elif isinstance(i, build.BuildTarget): diff --git a/mesonbuild/backend/ninjabackend.py b/mesonbuild/backend/ninjabackend.py index 24c91f3..c80d832 100644 --- a/mesonbuild/backend/ninjabackend.py +++ b/mesonbuild/backend/ninjabackend.py @@ -32,7 +32,8 @@ from ..compilers import (Compiler, CompilerArgs, CCompiler, FortranCompiler, PGICCompiler, VisualStudioLikeCompiler) from ..linkers import ArLinker from ..mesonlib import ( - File, LibType, MachineChoice, MesonException, OrderedSet, PerMachine, ProgressBar, quote_arg + File, LibType, MachineChoice, MesonException, OrderedSet, PerMachine, + ProgressBar, quote_arg, unholder, ) from ..mesonlib import get_compiler_for_source, has_path_sep from .backends import CleanTrees @@ -648,9 +649,7 @@ int dummy; self.generate_target(t) def custom_target_generator_inputs(self, target): - for s in target.sources: - if hasattr(s, 'held_object'): - s = s.held_object + for s in unholder(target.sources): if isinstance(s, build.GeneratedList): self.generate_genlist_for_target(s, target) |