diff options
author | Alexis Jeandet <alexis.jeandet@member.fsf.org> | 2017-09-18 22:19:12 +0200 |
---|---|---|
committer | Alexis Jeandet <alexis.jeandet@member.fsf.org> | 2017-09-18 22:25:34 +0200 |
commit | e553d0807bad5db8290e26954ce7634bc0e181fd (patch) | |
tree | 3fb5c9c681bf7071c0765c0f2d55d067a27d70ce /mesonbuild/build.py | |
parent | bf64cf569b6ecf90db0f2bb181edb8f0ff0c9a3b (diff) | |
download | meson-e553d0807bad5db8290e26954ce7634bc0e181fd.zip meson-e553d0807bad5db8290e26954ce7634bc0e181fd.tar.gz meson-e553d0807bad5db8290e26954ce7634bc0e181fd.tar.bz2 |
Last round with listify function refactoring.
Signed-off-by: Alexis Jeandet <alexis.jeandet@member.fsf.org>
Diffstat (limited to 'mesonbuild/build.py')
-rw-r--r-- | mesonbuild/build.py | 24 |
1 files changed, 6 insertions, 18 deletions
diff --git a/mesonbuild/build.py b/mesonbuild/build.py index 9982742..281b060 100644 --- a/mesonbuild/build.py +++ b/mesonbuild/build.py @@ -787,8 +787,7 @@ This will become a hard error in a future Meson release.''') return self.include_dirs def add_deps(self, deps): - if not isinstance(deps, list): - deps = [deps] + deps = listify(deps) for dep in deps: if hasattr(dep, 'held_object'): dep = dep.held_object @@ -1016,9 +1015,7 @@ class Generator: self.arglist = args if 'output' not in kwargs: raise InvalidArguments('Generator must have "output" keyword argument.') - outputs = kwargs['output'] - if not isinstance(outputs, list): - outputs = [outputs] + outputs = listify(kwargs['output']) for rule in outputs: if not isinstance(rule, str): raise InvalidArguments('"output" may only contain strings.') @@ -1514,8 +1511,7 @@ class CustomTarget(Target): return deps def flatten_command(self, cmd): - if not isinstance(cmd, list): - cmd = [cmd] + cmd = listify(cmd) final_cmd = [] for c in cmd: if hasattr(c, 'held_object'): @@ -1550,9 +1546,7 @@ class CustomTarget(Target): self.sources.append(s) if 'output' not in kwargs: raise InvalidArguments('Missing keyword argument "output".') - self.outputs = kwargs['output'] - if not isinstance(self.outputs, list): - self.outputs = [self.outputs] + self.outputs = listify(kwargs['output']) # This will substitute values from the input into output and return it. inputs = get_sources_string_names(self.sources) values = get_filenames_templates_dict(inputs, []) @@ -1606,18 +1600,13 @@ class CustomTarget(Target): self.build_always = kwargs.get('build_always', False) if not isinstance(self.build_always, bool): raise InvalidArguments('Argument build_always must be a boolean.') - extra_deps = kwargs.get('depends', []) - if not isinstance(extra_deps, list): - extra_deps = [extra_deps] + extra_deps, depend_files = extract_as_list(kwargs, 'depends', 'depend_files', pop = False) for ed in extra_deps: while hasattr(ed, 'held_object'): ed = ed.held_object if not isinstance(ed, (CustomTarget, BuildTarget)): raise InvalidArguments('Can only depend on toplevel targets: custom_target or build_target (executable or a library)') self.extra_depends.append(ed) - depend_files = kwargs.get('depend_files', []) - if not isinstance(depend_files, list): - depend_files = [depend_files] for i in depend_files: if isinstance(i, (File, str)): self.depend_files.append(i) @@ -1767,8 +1756,7 @@ class Data: self.sources = sources self.install_dir = install_dir self.install_mode = install_mode - if not isinstance(self.sources, list): - self.sources = [self.sources] + self.sources = listify(self.sources) for s in self.sources: assert(isinstance(s, File)) |