diff options
author | Christian Brauner <christian.brauner@ubuntu.com> | 2021-11-05 14:29:53 +0100 |
---|---|---|
committer | Luca Boccassi <luca.boccassi@gmail.com> | 2021-11-08 12:06:48 +0000 |
commit | a6d1760024d0884efb343e1c739f303619f7c8b9 (patch) | |
tree | c8dbba36a1918327990537b23aefe1b54941fd12 /tools/meson-render-jinja2.py | |
parent | bf47f71c1cd36c2b0eb5aeac4d8bdf58c67f2b33 (diff) | |
download | systemd-a6d1760024d0884efb343e1c739f303619f7c8b9.tar.gz |
build: preserve correct mode when generating files via jinja2
When using "capture : true" in custom_target()s the mode of the source
file is not preserved when the generated file is not installed and so
needs to be tweaked manually. Switch from output capture to creating the
target file and copy the permissions from the input file.
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Diffstat (limited to 'tools/meson-render-jinja2.py')
-rwxr-xr-x | tools/meson-render-jinja2.py | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/tools/meson-render-jinja2.py b/tools/meson-render-jinja2.py index 9a6fc7c31c..0f9fc43124 100755 --- a/tools/meson-render-jinja2.py +++ b/tools/meson-render-jinja2.py @@ -2,6 +2,7 @@ # SPDX-License-Identifier: LGPL-2.1-or-later import ast +import os import re import sys @@ -27,4 +28,8 @@ def render(filename, defines): if __name__ == '__main__': defines = parse_config_h(sys.argv[1]) - print(render(sys.argv[2], defines)) + output = render(sys.argv[2], defines) + with open(sys.argv[3], 'w') as f: + f.write(output) + info = os.stat(sys.argv[2]) + os.chmod(sys.argv[3], info.st_mode) |