diff --git a/examples/cortex-m/armv7em/stm32f303/coroLab/base/base.oil b/examples/cortex-m/armv7em/stm32f303/coroLab/base/base.oil index 5e5820693..e1ea1916d 100644 --- a/examples/cortex-m/armv7em/stm32f303/coroLab/base/base.oil +++ b/examples/cortex-m/armv7em/stm32f303/coroLab/base/base.oil @@ -24,6 +24,7 @@ CPU blink { APP_CPPSRC = "buttonTasks.cpp"; APP_NAME = "base.elf"; CFLAGS = "-Os -fstack-usage -Wno-strict-aliasing"; + CPPFLAGS = " -Wno-register"; LIBRARY = coroBoard; LDFLAGS = "-Map=blink.map"; COMPILER = "arm-none-eabi-gcc"; diff --git a/goil/templates/build/build_py.goilTemplate b/goil/templates/build/build_py.goilTemplate index 107bdb390..382bc00d4 100755 --- a/goil/templates/build/build_py.goilTemplate +++ b/goil/templates/build/build_py.goilTemplate @@ -217,13 +217,21 @@ end foreach let GLOBAL_LIB_PATH := OS::BUILD_S::TRAMPOLINE_BASE_PATH + "/libraries/" +# Build the set of libraries paths +# This is to prevent multiple instances of the same path. +let LIB_PATH_SET := @! ! foreach library in exists USEDLIB default ( @() ) do - if library::GLOBAL == true then% -includeDirs += ["-I","% !GLOBAL_LIB_PATH + library::PATH %"]% - else% -includeDirs += ["-I","% !MACHINESPATH + "/" + library::PATH %"]% + if library::GLOBAL == true then + let LIB_PATH_SET := LIB_PATH_SET + (GLOBAL_LIB_PATH + library::PATH) + else + let LIB_PATH_SET := LIB_PATH_SET + (MACHINESPATH + "/" + library::PATH) end if end foreach +# Output the libraries paths +foreach libPath in LIB_PATH_SET do +% +includeDirs += ["-I","% !libPath %"]% +end foreach % if with_ioc: includeDirs += ["-I", "% !OS::BUILD_S::TRAMPOLINE_BASE_PATH %/ioc"] diff --git a/machines/cortex-m/tpl_sc_handler.S b/machines/cortex-m/tpl_sc_handler.S index 1397548b9..ad2bcddc3 100644 --- a/machines/cortex-m/tpl_sc_handler.S +++ b/machines/cortex-m/tpl_sc_handler.S @@ -129,7 +129,7 @@ tpl_sc_handler: /*------------------------------------------------------------------------- * 0 - registers R0-R3 have to be restored from the stack. First the PSP * (process stack pointer) is copied in R0. Second registers R0-R3 are - * loaded from the process stack + * loaded from the process stack */ mrs r0,psp ldmia r0,{r0, r1, r2, r3}