not all GCC compiler builds support --no-warn-rwx-segments; check_linker_flag is not available in all supported version of CMake, so just allow it to be passed in
This commit is contained in:

committed by
Liam Fraser

parent
0d72f153cf
commit
5f6152a87e
@@ -69,6 +69,10 @@ if (NOT FAMILY STREQUAL rp2040)
|
|||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if (NOT NO_WARN_RWX_SEGMENTS_SUPPORTED)
|
||||||
|
set(NO_WARN_RWX_SEGMENTS_SUPPORTED 1)
|
||||||
|
endif()
|
||||||
|
|
||||||
set(WARNING_FLAGS_GNU
|
set(WARNING_FLAGS_GNU
|
||||||
-Wall
|
-Wall
|
||||||
-Wextra
|
-Wextra
|
||||||
@@ -210,7 +214,7 @@ function(family_configure_common TARGET RTOS)
|
|||||||
# Generate linker map file
|
# Generate linker map file
|
||||||
if (CMAKE_C_COMPILER_ID STREQUAL "GNU")
|
if (CMAKE_C_COMPILER_ID STREQUAL "GNU")
|
||||||
target_link_options(${TARGET} PUBLIC "LINKER:-Map=$<TARGET_FILE:${TARGET}>.map")
|
target_link_options(${TARGET} PUBLIC "LINKER:-Map=$<TARGET_FILE:${TARGET}>.map")
|
||||||
if (CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL 12.0)
|
if (CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL 12.0 AND NO_WARN_RWX_SEGMENTS_SUPPORTED)
|
||||||
target_link_options(${TARGET} PUBLIC "LINKER:--no-warn-rwx-segments")
|
target_link_options(${TARGET} PUBLIC "LINKER:--no-warn-rwx-segments")
|
||||||
endif ()
|
endif ()
|
||||||
elseif (CMAKE_C_COMPILER_ID STREQUAL "Clang")
|
elseif (CMAKE_C_COMPILER_ID STREQUAL "Clang")
|
||||||
@@ -360,7 +364,7 @@ function(family_add_default_example_warnings TARGET)
|
|||||||
)
|
)
|
||||||
|
|
||||||
if (CMAKE_C_COMPILER_ID STREQUAL "GNU")
|
if (CMAKE_C_COMPILER_ID STREQUAL "GNU")
|
||||||
if (CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL 12.0)
|
if (CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL 12.0 AND NO_WARN_RWX_SEGMENTS_SUPPORTED)
|
||||||
target_link_options(${TARGET} PUBLIC "LINKER:--no-warn-rwx-segments")
|
target_link_options(${TARGET} PUBLIC "LINKER:--no-warn-rwx-segments")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user