cmake: fix check_set_linker_property() function
Fix check_set_linker_property() to correctly handle multiple linker flags passed on function call. Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
This commit is contained in:
parent
22c45c9234
commit
1728e04b8c
1 changed files with 11 additions and 9 deletions
|
@ -2393,18 +2393,20 @@ function(check_set_linker_property)
|
||||||
|
|
||||||
list(GET LINKER_PROPERTY_PROPERTY 0 property)
|
list(GET LINKER_PROPERTY_PROPERTY 0 property)
|
||||||
list(REMOVE_AT LINKER_PROPERTY_PROPERTY 0)
|
list(REMOVE_AT LINKER_PROPERTY_PROPERTY 0)
|
||||||
set(option ${LINKER_PROPERTY_PROPERTY})
|
|
||||||
|
|
||||||
string(MAKE_C_IDENTIFIER check${option} check)
|
foreach(option ${LINKER_PROPERTY_PROPERTY})
|
||||||
|
string(MAKE_C_IDENTIFIER check${option} check)
|
||||||
|
|
||||||
set(SAVED_CMAKE_REQUIRED_FLAGS ${CMAKE_REQUIRED_FLAGS})
|
set(SAVED_CMAKE_REQUIRED_FLAGS ${CMAKE_REQUIRED_FLAGS})
|
||||||
set(CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS} ${option}")
|
set(CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS} ${option}")
|
||||||
zephyr_check_compiler_flag(C "" ${check})
|
zephyr_check_compiler_flag(C "" ${check})
|
||||||
set(CMAKE_REQUIRED_FLAGS ${SAVED_CMAKE_REQUIRED_FLAGS})
|
set(CMAKE_REQUIRED_FLAGS ${SAVED_CMAKE_REQUIRED_FLAGS})
|
||||||
|
|
||||||
if(${${check}})
|
if(${${check}})
|
||||||
set_property(TARGET ${LINKER_PROPERTY_TARGET} ${APPEND} PROPERTY ${property} ${option})
|
set_property(TARGET ${LINKER_PROPERTY_TARGET} ${APPEND} PROPERTY ${property} ${option})
|
||||||
endif()
|
set(APPEND "APPEND")
|
||||||
|
endif()
|
||||||
|
endforeach()
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
# 'set_compiler_property' is a function that sets the property for the C and
|
# 'set_compiler_property' is a function that sets the property for the C and
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue