aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/build.py
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2017-05-12 18:54:46 +0300
committerGitHub <noreply@github.com>2017-05-12 18:54:46 +0300
commit1e14438a380c4c9591f94001d5389caf4c323004 (patch)
tree107d5519176443fb7a9edea86a89d2c87f1876ea /mesonbuild/build.py
parent67b195f919a6b0066db987edb672431604fca4fd (diff)
parent410937c08e4eb964d385c467e0044574e1cfe67a (diff)
downloadmeson-1e14438a380c4c9591f94001d5389caf4c323004.zip
meson-1e14438a380c4c9591f94001d5389caf4c323004.tar.gz
meson-1e14438a380c4c9591f94001d5389caf4c323004.tar.bz2
Merge pull request #1735 from dcbaker/list-of-files
Allow passing a list of Files to CustomTarget. Closes #1720
Diffstat (limited to 'mesonbuild/build.py')
-rw-r--r--mesonbuild/build.py15
1 files changed, 4 insertions, 11 deletions
diff --git a/mesonbuild/build.py b/mesonbuild/build.py
index 0d58394..c2d4583 100644
--- a/mesonbuild/build.py
+++ b/mesonbuild/build.py
@@ -638,9 +638,7 @@ class BuildTarget(Target):
self.vala_gir = kwargs.get('vala_gir', None)
dlist = stringlistify(kwargs.get('d_args', []))
self.add_compiler_args('d', dlist)
- self.link_args = kwargs.get('link_args', [])
- if not isinstance(self.link_args, list):
- self.link_args = [self.link_args]
+ self.link_args = flatten(kwargs.get('link_args', []))
for i in self.link_args:
if not isinstance(i, str):
raise InvalidArguments('Link_args arguments must be strings.')
@@ -813,9 +811,7 @@ You probably should put it in link_with instead.''')
return self.external_deps
def link(self, target):
- if not isinstance(target, list):
- target = [target]
- for t in target:
+ for t in flatten(target):
if hasattr(t, 'held_object'):
t = t.held_object
if not isinstance(t, (StaticLibrary, SharedLibrary)):
@@ -829,9 +825,7 @@ You probably should put it in link_with instead.''')
self.link_targets.append(t)
def link_whole(self, target):
- if not isinstance(target, list):
- target = [target]
- for t in target:
+ for t in flatten(target):
if hasattr(t, 'held_object'):
t = t.held_object
if not isinstance(t, StaticLibrary):
@@ -1443,8 +1437,7 @@ class CustomTarget(Target):
def process_kwargs(self, kwargs):
super().process_kwargs(kwargs)
self.sources = kwargs.get('input', [])
- if not isinstance(self.sources, list):
- self.sources = [self.sources]
+ self.sources = flatten(self.sources)
if 'output' not in kwargs:
raise InvalidArguments('Missing keyword argument "output".')
self.outputs = kwargs['output']