diff options
author | Eli Schwartz <eschwartz93@gmail.com> | 2024-06-23 16:41:21 -0400 |
---|---|---|
committer | Eli Schwartz <eschwartz93@gmail.com> | 2024-06-23 23:02:43 -0400 |
commit | aab2533ab4f7f4c16991620b400d71782f89be1c (patch) | |
tree | 5584674cd787dc85cf32955d68699967653581ea /mesonbuild/compilers/asm.py | |
parent | 1570289acf28272aa6f1e029a32229ad6f276d94 (diff) | |
download | meson-aab2533ab4f7f4c16991620b400d71782f89be1c.zip meson-aab2533ab4f7f4c16991620b400d71782f89be1c.tar.gz meson-aab2533ab4f7f4c16991620b400d71782f89be1c.tar.bz2 |
limit wrapped-due-to-env special case for `env` to only apply for env.set
In commit 2cb7350d1679fb61826bf4aebfb0f75a9b9103e3 we added a special
case for environment() objects to allow skipping `meson --internal exe`
overhead when /usr/bin/env exists and can be used to set environment
variables instead of using a pickled wrapper.
This special case assumed that environment is used for setting
variables, but it is also possible, albeit less common, to
append/prepend to them, in which case `meson --internal exe` will
compute the final value as an offset from whatever the current environment
variables inherited from ninja are. It is not possible to precompute
this when generating command lines for ninja, so using arguments to
/usr/bin/env is not possible. All it can do is set (override) an
environment variable.
In this case, we have to use the python wrapper and cannot optimize it
away. Add a tracking bit to the env object and propagate it to the
backend.
Diffstat (limited to 'mesonbuild/compilers/asm.py')
0 files changed, 0 insertions, 0 deletions