aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mesonbuild/backend/backends.py10
-rw-r--r--test cases/common/107 postconf/postconf.py4
-rw-r--r--test cases/common/108 postconf with args/postconf.py4
3 files changed, 12 insertions, 6 deletions
diff --git a/mesonbuild/backend/backends.py b/mesonbuild/backend/backends.py
index 311e16c..286afa9 100644
--- a/mesonbuild/backend/backends.py
+++ b/mesonbuild/backend/backends.py
@@ -438,6 +438,12 @@ class Backend():
return (srcs, ofilenames, cmd)
def run_postconf_scripts(self):
+ env = {'MESON_SOURCE_ROOT' : self.environment.get_source_dir(),
+ 'MESON_BUILD_ROOT' : self.environment.get_build_dir()
+ }
+ child_env = os.environ.copy()
+ child_env.update(env)
+
for s in self.build.postconf_scripts:
- cmd = s['exe'].get_command() + [self.environment.get_source_dir(), self.environment.get_build_dir()] + s['args']
- subprocess.check_call(cmd)
+ cmd = s['exe'].get_command() + s['args']
+ subprocess.check_call(cmd, env=child_env)
diff --git a/test cases/common/107 postconf/postconf.py b/test cases/common/107 postconf/postconf.py
index d185f94..209b7af 100644
--- a/test cases/common/107 postconf/postconf.py
+++ b/test cases/common/107 postconf/postconf.py
@@ -7,5 +7,5 @@ template = '''#pragma once
#define THE_NUMBER {}
'''
-data = open(os.path.join(sys.argv[1], 'raw.dat')).readline().strip()
-open(os.path.join(sys.argv[2], 'generated.h'), 'w').write(template.format(data))
+data = open(os.path.join(os.environ['MESON_SOURCE_ROOT'], 'raw.dat')).readline().strip()
+open(os.path.join(os.environ['MESON_BUILD_ROOT'], 'generated.h'), 'w').write(template.format(data))
diff --git a/test cases/common/108 postconf with args/postconf.py b/test cases/common/108 postconf with args/postconf.py
index b229d62..4cfbb7c 100644
--- a/test cases/common/108 postconf with args/postconf.py
+++ b/test cases/common/108 postconf with args/postconf.py
@@ -9,5 +9,5 @@ template = '''#pragma once
#define THE_ARG2 {}
'''
-data = open(os.path.join(sys.argv[1], 'raw.dat')).readline().strip()
-open(os.path.join(sys.argv[2], 'generated.h'), 'w').write(template.format(data, sys.argv[3], sys.argv[4]))
+data = open(os.path.join(os.environ['MESON_SOURCE_ROOT'], 'raw.dat')).readline().strip()
+open(os.path.join(os.environ['MESON_BUILD_ROOT'], 'generated.h'), 'w').write(template.format(data, sys.argv[1], sys.argv[2]))