diff options
| author | Mengsk <[email protected]> | 2023-12-13 17:19:13 +0100 |
|---|---|---|
| committer | Mengsk <[email protected]> | 2023-12-13 17:20:51 +0100 |
| commit | 3eb7d6ede962521091e9869e2c54ed7fd2c86bb7 (patch) | |
| tree | 3e56357fe17abfb3db2dccdf514b44e355c467e2 /hw | |
| parent | ccc59e87632909a781851f3b93c42b934b8da8e6 (diff) | |
Enhance IAR CMake support.
Diffstat (limited to 'hw')
| -rw-r--r-- | hw/bsp/family_support.cmake | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/hw/bsp/family_support.cmake b/hw/bsp/family_support.cmake index bd072e89d..d6099eaa4 100644 --- a/hw/bsp/family_support.cmake +++ b/hw/bsp/family_support.cmake @@ -72,7 +72,7 @@ set(WARNING_FLAGS_GNU -Wredundant-decls ) -set(WARNINGS_FLAGS_IAR "") +set(WARNING_FLAGS_IAR "") # Filter example based on only.txt and skip.txt @@ -191,10 +191,12 @@ function(family_configure_common TARGET RTOS) ) # run size after build - add_custom_command(TARGET ${TARGET} POST_BUILD - COMMAND ${CMAKE_SIZE} $<TARGET_FILE:${TARGET}> - ) - + find_program(SIZE_EXE ${CMAKE_SIZE}) + if(NOT ${SIZE_EXE} STREQUAL SIZE_EXE-NOTFOUND) + add_custom_command(TARGET ${TARGET} POST_BUILD + COMMAND ${SIZE_EXE} $<TARGET_FILE:${TARGET}> + ) + endif () # Add warnings flags target_compile_options(${TARGET} PUBLIC ${WARNING_FLAGS_${CMAKE_C_COMPILER_ID}}) @@ -205,6 +207,10 @@ function(family_configure_common TARGET RTOS) target_link_options(${TARGET} PUBLIC "LINKER:--no-warn-rwx-segments") endif () endif() + if (CMAKE_C_COMPILER_ID STREQUAL "IAR") + target_link_options(${TARGET} PUBLIC "LINKER:--map=$<TARGET_FILE:${TARGET}>.map") + endif() + # ETM Trace option if (TRACE_ETM STREQUAL "1") @@ -367,7 +373,7 @@ function(family_flash_jlink TARGET) endif () file(GENERATE - OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${TARGET}.jlink + OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>/${TARGET}.jlink CONTENT "halt loadfile $<TARGET_FILE:${TARGET}> r @@ -377,7 +383,7 @@ exit" add_custom_target(${TARGET}-jlink DEPENDS ${TARGET} - COMMAND ${JLINKEXE} -device ${JLINK_DEVICE} -if swd -JTAGConf -1,-1 -speed auto -CommandFile ${CMAKE_CURRENT_BINARY_DIR}/${TARGET}.jlink + COMMAND ${JLINKEXE} -device ${JLINK_DEVICE} -if swd -JTAGConf -1,-1 -speed auto -CommandFile ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>/${TARGET}.jlink ) endfunction() |
