aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/backend
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2018-03-25 20:26:02 +0300
committerGitHub <noreply@github.com>2018-03-25 20:26:02 +0300
commitf6f07840388db4aa5800ac4b69211c8b2cb87a70 (patch)
tree61b4217ad03893063fb1ecdd32eb8230aa642185 /mesonbuild/backend
parent979eaa804aaced2823f446242eaecd043d33521a (diff)
parentea6e9298fa585244112e4519513690c52959039e (diff)
downloadmeson-f6f07840388db4aa5800ac4b69211c8b2cb87a70.zip
meson-f6f07840388db4aa5800ac4b69211c8b2cb87a70.tar.gz
meson-f6f07840388db4aa5800ac4b69211c8b2cb87a70.tar.bz2
Merge pull request #2976 from dzabraev/fix-reversed-order
Fix bug include_directories(['p1','p2']) add -Ip2 -Ip1 (reversed order)
Diffstat (limited to 'mesonbuild/backend')
-rw-r--r--mesonbuild/backend/ninjabackend.py5
-rw-r--r--mesonbuild/backend/vs2010backend.py3
2 files changed, 6 insertions, 2 deletions
diff --git a/mesonbuild/backend/ninjabackend.py b/mesonbuild/backend/ninjabackend.py
index 39e4ce9..bfac4c7 100644
--- a/mesonbuild/backend/ninjabackend.py
+++ b/mesonbuild/backend/ninjabackend.py
@@ -2169,7 +2169,10 @@ rule FORTRAN_DEP_HACK
# Hence, we must reverse the list so that the order is preserved.
for i in reversed(target.get_include_dirs()):
basedir = i.get_curdir()
- for d in i.get_incdirs():
+ # We should iterate include dirs in reversed orders because
+ # -Ipath will add to begin of array. And without reverse
+ # flags will be added in reversed order.
+ for d in reversed(i.get_incdirs()):
# Avoid superfluous '/.' at the end of paths when d is '.'
if d not in ('', '.'):
expdir = os.path.join(basedir, d)
diff --git a/mesonbuild/backend/vs2010backend.py b/mesonbuild/backend/vs2010backend.py
index 28e6722..5e972f2 100644
--- a/mesonbuild/backend/vs2010backend.py
+++ b/mesonbuild/backend/vs2010backend.py
@@ -769,7 +769,8 @@ class Vs2010Backend(backends.Backend):
# These are per-target, but we still add them as per-file because we
# need them to be looked in first.
for d in reversed(target.get_include_dirs()):
- for i in d.get_incdirs():
+ # reversed is used to keep order of includes
+ for i in reversed(d.get_incdirs()):
curdir = os.path.join(d.get_curdir(), i)
args.append('-I' + self.relpath(curdir, target.subdir)) # build dir
args.append('-I' + os.path.join(proj_to_src_root, curdir)) # src dir