From a1bb98fd5c4b898b6f6f426a1b9f43195e00abbd Mon Sep 17 00:00:00 2001 From: Ivan Kravets Date: Mon, 25 May 2015 13:18:52 +0300 Subject: [PATCH 1/3] Reversed order for CPPATH --- platformio/builder/tools/platformio.py | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/platformio/builder/tools/platformio.py b/platformio/builder/tools/platformio.py index 6011a711..e01804b1 100644 --- a/platformio/builder/tools/platformio.py +++ b/platformio/builder/tools/platformio.py @@ -288,17 +288,15 @@ def BuildDependentLibraries(env, src_dir): # pylint: disable=R0914 # end internal prototypes deplibs = _get_dep_libs(src_dir) - env.Prepend( - CPPPATH=[join("$BUILD_DIR", l) for (l, _) in deplibs] - ) - - # add automatically "utility" dir from the lib (Arduino issue) - env.Prepend( - CPPPATH=[ - join("$BUILD_DIR", l, "utility") for (l, ld) in deplibs - if isdir(join(ld, "utility")) - ] - ) + for l, ld in deplibs: + env.Prepend( + CPPPATH=[join("$BUILD_DIR", l)] + ) + # add automatically "utility" dir from the lib (Arduino issue) + if isdir(join(ld, "utility")): + env.Prepend( + CPPPATH=[join("$BUILD_DIR", l, "utility")] + ) libs = [] for (libname, inc_dir) in deplibs: From 92313c0686f8698977a9d003d3694e90be6295d3 Mon Sep 17 00:00:00 2001 From: Ivan Kravets Date: Mon, 25 May 2015 13:35:26 +0300 Subject: [PATCH 2/3] Reversed order for CPPATH via Append --- platformio/builder/tools/platformio.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/platformio/builder/tools/platformio.py b/platformio/builder/tools/platformio.py index e01804b1..e9bbb7c6 100644 --- a/platformio/builder/tools/platformio.py +++ b/platformio/builder/tools/platformio.py @@ -289,12 +289,12 @@ def BuildDependentLibraries(env, src_dir): # pylint: disable=R0914 deplibs = _get_dep_libs(src_dir) for l, ld in deplibs: - env.Prepend( + env.Append( CPPPATH=[join("$BUILD_DIR", l)] ) # add automatically "utility" dir from the lib (Arduino issue) if isdir(join(ld, "utility")): - env.Prepend( + env.Append( CPPPATH=[join("$BUILD_DIR", l, "utility")] ) From 9ba3136a24a517347255cf226de79494af486c7a Mon Sep 17 00:00:00 2001 From: Ivan Kravets Date: Mon, 25 May 2015 19:35:40 +0300 Subject: [PATCH 3/3] Fix library order --- platformio/builder/tools/platformio.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/platformio/builder/tools/platformio.py b/platformio/builder/tools/platformio.py index e9bbb7c6..522eb160 100644 --- a/platformio/builder/tools/platformio.py +++ b/platformio/builder/tools/platformio.py @@ -74,7 +74,7 @@ def BuildFirmware(env): return firmenv.Program( join("$BUILD_DIR", "firmware"), [firmenv.GlobCXXFiles(vdir) for vdir in vdirs], - LIBS=list(env.get("LIBS", []) + deplibs)[::-1], + LIBS=env.get("LIBS", []) + deplibs, LIBPATH=env.get("LIBPATH", []) + ["$BUILD_DIR"], PROGSUFFIX=".elf" )