aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/backend/backends.py
diff options
context:
space:
mode:
authorNicolas Schneider <nioncode+git@gmail.com>2016-05-26 13:08:33 +0200
committerNicolas Schneider <nioncode+git@gmail.com>2016-05-26 13:08:33 +0200
commita29d9c2c332bcf6147a6a87eeab408bc43fcd30b (patch)
tree51820af113b1c7070bb1b45f537ebe6abf05e7c5 /mesonbuild/backend/backends.py
parent7aa24c7d0a68959e4d29c41d157ee30ff97153ad (diff)
downloadmeson-a29d9c2c332bcf6147a6a87eeab408bc43fcd30b.zip
meson-a29d9c2c332bcf6147a6a87eeab408bc43fcd30b.tar.gz
meson-a29d9c2c332bcf6147a6a87eeab408bc43fcd30b.tar.bz2
vs: fix generators that use indexed output replacements (like @OUTPUT0@)
Diffstat (limited to 'mesonbuild/backend/backends.py')
-rw-r--r--mesonbuild/backend/backends.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/mesonbuild/backend/backends.py b/mesonbuild/backend/backends.py
index d4a0f99..4ff1553 100644
--- a/mesonbuild/backend/backends.py
+++ b/mesonbuild/backend/backends.py
@@ -433,6 +433,19 @@ class Backend():
final_args.append(a)
return final_args
+ def replace_outputs(self, args, private_dir, output_list):
+ newargs = []
+ regex = re.compile('@OUTPUT(\d+)@')
+ for arg in args:
+ m = regex.search(arg)
+ while m is not None:
+ index = int(m.group(1))
+ src = '@OUTPUT%d@' % index
+ arg = arg.replace(src, os.path.join(private_dir, output_list[index]))
+ m = regex.search(arg)
+ newargs.append(arg)
+ return newargs
+
def get_custom_target_provided_libraries(self, target):
libs = []
for t in target.get_generated_sources():