Skip to content

Commit

Permalink
Taking into account that many librariers may have the same PATH
Browse files Browse the repository at this point in the history
  • Loading branch information
jlbirccyn committed Feb 29, 2024
1 parent d12ff88 commit 0a09a25
Show file tree
Hide file tree
Showing 3 changed files with 14 additions and 5 deletions.
1 change: 1 addition & 0 deletions examples/cortex-m/armv7em/stm32f303/coroLab/base/base.oil
Original file line number Diff line number Diff line change
Expand Up @@ -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";
Expand Down
16 changes: 12 additions & 4 deletions goil/templates/build/build_py.goilTemplate
Original file line number Diff line number Diff line change
Expand Up @@ -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"]
Expand Down
2 changes: 1 addition & 1 deletion machines/cortex-m/tpl_sc_handler.S
Original file line number Diff line number Diff line change
Expand Up @@ -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}
Expand Down

0 comments on commit 0a09a25

Please sign in to comment.