aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/build.py
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2017-01-15 20:10:05 +0200
committerGitHub <noreply@github.com>2017-01-15 20:10:05 +0200
commit72a346dacfe8decc9ada98860a9c4de62e2dd3e9 (patch)
tree6b138ac9f0c58da1aaaad01a1758ff89f36e7a64 /mesonbuild/build.py
parent0bc44da70220dad84c62840fd3e9b5405decd885 (diff)
parent78b030cf19709a7c050814e2589276f6e8c06a07 (diff)
downloadmeson-72a346dacfe8decc9ada98860a9c4de62e2dd3e9.zip
meson-72a346dacfe8decc9ada98860a9c4de62e2dd3e9.tar.gz
meson-72a346dacfe8decc9ada98860a9c4de62e2dd3e9.tar.bz2
Merge pull request #1257 from QuLogic/generator-files
Add support for Files passed to generators.
Diffstat (limited to 'mesonbuild/build.py')
-rw-r--r--mesonbuild/build.py10
1 files changed, 6 insertions, 4 deletions
diff --git a/mesonbuild/build.py b/mesonbuild/build.py
index 8fa6ada..cc33d39 100644
--- a/mesonbuild/build.py
+++ b/mesonbuild/build.py
@@ -918,9 +918,11 @@ class Generator():
def process_files(self, name, files, state, extra_args=[]):
output = GeneratedList(self, extra_args=extra_args)
for f in files:
- if not isinstance(f, str):
- raise InvalidArguments('{} arguments must be strings.'.format(name))
- output.add_file(os.path.join(state.subdir, f))
+ if isinstance(f, str):
+ f = File.from_source_file(state.environment.source_dir, state.subdir, f)
+ elif not isinstance(f, File):
+ raise InvalidArguments('{} arguments must be strings or files not {!r}.'.format(name, f))
+ output.add_file(f)
return output
@@ -938,7 +940,7 @@ class GeneratedList():
def add_file(self, newfile):
self.infilelist.append(newfile)
- outfiles = self.generator.get_base_outnames(newfile)
+ outfiles = self.generator.get_base_outnames(newfile.fname)
self.outfilelist += outfiles
self.outmap[newfile] = outfiles