aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/backend/vs2010backend.py
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2017-03-25 18:55:47 +0200
committerGitHub <noreply@github.com>2017-03-25 18:55:47 +0200
commitd668bea11dbc7140459ad8f9e326cbe0aa1e738f (patch)
tree23391a9d61ee061eae7cbc8b76c66d412472c19d /mesonbuild/backend/vs2010backend.py
parentaeb694d9c379fbf7c4d01c3848e6441d690ce492 (diff)
parentb35a808972a4a51438e0c76f117c557fe3a1ffa1 (diff)
downloadmeson-d668bea11dbc7140459ad8f9e326cbe0aa1e738f.zip
meson-d668bea11dbc7140459ad8f9e326cbe0aa1e738f.tar.gz
meson-d668bea11dbc7140459ad8f9e326cbe0aa1e738f.tar.bz2
Merge pull request #1496 from centricular/fix-internal-dep-order
Preserve internal-dep include order in build target dependencies
Diffstat (limited to 'mesonbuild/backend/vs2010backend.py')
-rw-r--r--mesonbuild/backend/vs2010backend.py9
1 files changed, 6 insertions, 3 deletions
diff --git a/mesonbuild/backend/vs2010backend.py b/mesonbuild/backend/vs2010backend.py
index 07306aa..929fa93 100644
--- a/mesonbuild/backend/vs2010backend.py
+++ b/mesonbuild/backend/vs2010backend.py
@@ -751,12 +751,15 @@ class Vs2010Backend(backends.Backend):
# and from `include_directories:` of internal deps of the target.
#
# Target include dirs should override internal deps include dirs.
+ # This is handled in BuildTarget.process_kwargs()
#
# Include dirs from internal deps should override include dirs from
- # external deps.
+ # external deps and must maintain the order in which they are
+ # specified. Hence, we must reverse so that the order is preserved.
+ #
# These are per-target, but we still add them as per-file because we
# need them to be looked in first.
- for d in target.get_include_dirs():
+ for d in reversed(target.get_include_dirs()):
for i in d.get_incdirs():
curdir = os.path.join(d.get_curdir(), i)
args.append('-I' + self.relpath(curdir, target.subdir)) # build dir
@@ -806,7 +809,7 @@ class Vs2010Backend(backends.Backend):
# Split compile args needed to find external dependencies
# Link args are added while generating the link command
- for d in target.get_external_deps():
+ for d in reversed(target.get_external_deps()):
# Cflags required by external deps might have UNIX-specific flags,
# so filter them out if needed
d_compile_args = compiler.unix_args_to_native(d.get_compile_args())