diff options
author | Nomura <nomura.rh@gmail.com> | 2023-10-02 15:28:58 +0200 |
---|---|---|
committer | Dylan Baker <dylan@pnwbakers.com> | 2023-10-05 09:59:43 -0700 |
commit | 3cac6ea54572214d40234042f59de85618b0c131 (patch) | |
tree | 4c1c7a8f7946371df46bd611b91abed3b6b5d6fb /test cases | |
parent | 03a0d3ddfb092ceb48f1a30fdf5e4b6af2890235 (diff) | |
download | meson-3cac6ea54572214d40234042f59de85618b0c131.zip meson-3cac6ea54572214d40234042f59de85618b0c131.tar.gz meson-3cac6ea54572214d40234042f59de85618b0c131.tar.bz2 |
Add env kwarg in generator.process()
Diffstat (limited to 'test cases')
3 files changed, 35 insertions, 0 deletions
diff --git a/test cases/common/272 env in generator.process/generate_main.py b/test cases/common/272 env in generator.process/generate_main.py new file mode 100644 index 0000000..993c5ac --- /dev/null +++ b/test cases/common/272 env in generator.process/generate_main.py @@ -0,0 +1,11 @@ +#!/usr/bin/env python3 +import os +import sys + +ENV_VAR_VALUE = os.environ.get('ENV_VAR_VALUE') +assert ENV_VAR_VALUE is not None + +with open(sys.argv[1], 'r') as infile, \ + open(sys.argv[2], 'w') as outfile: + + outfile.write(infile.read().replace('ENV_VAR_VALUE', ENV_VAR_VALUE)) diff --git a/test cases/common/272 env in generator.process/main.template b/test cases/common/272 env in generator.process/main.template new file mode 100644 index 0000000..3c3340e --- /dev/null +++ b/test cases/common/272 env in generator.process/main.template @@ -0,0 +1,3 @@ +int main(void) { + return ENV_VAR_VALUE; +}
\ No newline at end of file diff --git a/test cases/common/272 env in generator.process/meson.build b/test cases/common/272 env in generator.process/meson.build new file mode 100644 index 0000000..5d74040 --- /dev/null +++ b/test cases/common/272 env in generator.process/meson.build @@ -0,0 +1,21 @@ +project('test_env_in_generator_process', 'c') + +generate_main_py = find_program('generate_main.py') + +main_generator = generator(generate_main_py, + arguments: ['@INPUT@', '@OUTPUT@'], + output: '@BASENAME@' + '.c' +) + +main_template = files('main.template') + +# With explicit values +my_executable = executable('myexecutable', main_generator.process(main_template, env: {'ENV_VAR_VALUE': '0'})) +test('explicit_value', my_executable) + +# With env object +env = environment() +env.set('ENV_VAR_VALUE', '0') + +my_executable2 = executable('myexecutable2', main_generator.process(main_template, env: env)) +test('env_object', my_executable2) |