diff options
author | Ole André Vadla RavnÄs <oleavr@gmail.com> | 2017-05-21 20:35:44 +0200 |
---|---|---|
committer | Jussi Pakkanen <jpakkane@gmail.com> | 2017-05-21 23:04:19 +0300 |
commit | b595cda4ed0ca699da3052a6bd30ba7d1dae1124 (patch) | |
tree | 587c4654ebe3d2956fdca855c23f62f32e5fa346 /mesonbuild/backend/vs2010backend.py | |
parent | 5794f37af5c5ce0010168d163f2568d7581b5a13 (diff) | |
download | meson-b595cda4ed0ca699da3052a6bd30ba7d1dae1124.zip meson-b595cda4ed0ca699da3052a6bd30ba7d1dae1124.tar.gz meson-b595cda4ed0ca699da3052a6bd30ba7d1dae1124.tar.bz2 |
Fix cross environment pollution.
Environment variables like CFLAGS and LDFLAGS should not affect the
cross environment.
Fixes #1772
Diffstat (limited to 'mesonbuild/backend/vs2010backend.py')
-rw-r--r-- | mesonbuild/backend/vs2010backend.py | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/mesonbuild/backend/vs2010backend.py b/mesonbuild/backend/vs2010backend.py index f97ab87..082f3c5 100644 --- a/mesonbuild/backend/vs2010backend.py +++ b/mesonbuild/backend/vs2010backend.py @@ -759,11 +759,12 @@ class Vs2010Backend(backends.Backend): for l, args in self.build.global_args.items(): if l in file_args: file_args[l] += args - # Compile args added from the env: CFLAGS/CXXFLAGS, etc. We want these - # to override all the defaults, but not the per-target compile args. - for l, args in self.environment.coredata.external_args.items(): - if l in file_args: - file_args[l] += args + if not target.is_cross: + # Compile args added from the env: CFLAGS/CXXFLAGS, etc. We want these + # to override all the defaults, but not the per-target compile args. + for l, args in self.environment.coredata.external_args.items(): + if l in file_args: + file_args[l] += args for args in file_args.values(): # This is where Visual Studio will insert target_args, target_defines, # etc, which are added later from external deps (see below). @@ -901,9 +902,10 @@ class Vs2010Backend(backends.Backend): # Add link args added using add_global_link_arguments() # These override per-project link arguments extra_link_args += self.build.get_global_link_args(compiler) - # Link args added from the env: LDFLAGS. We want these to - # override all the defaults but not the per-target link args. - extra_link_args += self.environment.coredata.external_link_args[compiler.get_language()] + if not target.is_cross: + # Link args added from the env: LDFLAGS. We want these to + # override all the defaults but not the per-target link args. + extra_link_args += self.environment.coredata.external_link_args[compiler.get_language()] # Only non-static built targets need link args and link dependencies extra_link_args += target.link_args # External deps must be last because target link libraries may depend on them. |