cmake: Toolchain abstraction: security
Introduce the first of the toolchain_cc-family of macros: toolchain_cc_security_fortify and toolchain_cc_security_canaries. No functional change expected. Fortify source is not supported by Clang, but this commit retains current behavior. This is motivated by the wish to abstract Zephyr's usage of toolchains, permitting easier porting to other (commercial) toolchains. Signed-off-by: Mark Ruvald Pedersen <mped@oticon.com>
This commit is contained in:
parent
4575f44337
commit
01592071f1
6 changed files with 43 additions and 11 deletions
|
@ -51,3 +51,8 @@ list(APPEND TOOLCHAIN_LIBS gcc)
|
|||
|
||||
set(CMAKE_REQUIRED_FLAGS -nostartfiles -nostdlib ${isystem_include_flags} -Wl,--unresolved-symbols=ignore-in-object-files)
|
||||
string(REPLACE ";" " " CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS}")
|
||||
|
||||
# Load toolchain_cc-family macros
|
||||
# Clang and GCC are almost feature+flag compatible, so reuse freestanding gcc
|
||||
include(${ZEPHYR_BASE}/cmake/compiler/gcc/target_security_fortify.cmake)
|
||||
include(${ZEPHYR_BASE}/cmake/compiler/gcc/target_security_canaries.cmake)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue