diff options
author | Jussi Pakkanen <jpakkane@gmail.com> | 2014-05-24 18:18:47 +0300 |
---|---|---|
committer | Jussi Pakkanen <jpakkane@gmail.com> | 2014-05-24 18:18:47 +0300 |
commit | 8467c5b0a66c699c8854579a75d87d4ffc269e51 (patch) | |
tree | 5016f141753b0e014a240fdf8f50a19db4cdd9a2 /ninjabackend.py | |
parent | 0c853a7038eea5d1d23f4cf323d8afbfca29b723 (diff) | |
download | meson-8467c5b0a66c699c8854579a75d87d4ffc269e51.zip meson-8467c5b0a66c699c8854579a75d87d4ffc269e51.tar.gz meson-8467c5b0a66c699c8854579a75d87d4ffc269e51.tar.bz2 |
Can now generate GObject introspection data and install it.
Diffstat (limited to 'ninjabackend.py')
-rw-r--r-- | ninjabackend.py | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/ninjabackend.py b/ninjabackend.py index 45e19dd..ad06486 100644 --- a/ninjabackend.py +++ b/ninjabackend.py @@ -137,8 +137,19 @@ class NinjaBackend(backends.Backend): def generate_custom_target(self, target, outfile): ofilename = os.path.join(target.subdir, target.output) deps = [os.path.join(i.get_subdir(), i.get_filename()) for i in target.get_dependencies()] + srcs = [os.path.join(self.build_to_src, i) for i in target.sources] + deps += srcs elem = NinjaBuildElement(ofilename, 'CUSTOM_COMMAND', deps) - elem.add_item('COMMAND', target.command) + cmd = [] + for i in target.command: + if i == '@INPUT@': + cmd += srcs + elif i == '@OUTPUT@': + cmd.append(ofilename) + else: + cmd.append(i) + elem.add_item('COMMAND', cmd) + elem.add_item('description', 'Generating %s with a custom command.' % ofilename) elem.write(outfile) self.processed_targets[target.name] = True |