diff --git a/CMakeLists.txt b/CMakeLists.txt index 8647e51faa8..49d294d7f4a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -162,6 +162,10 @@ zephyr_compile_options( ) endif() +zephyr_ld_options( + ${TOOLCHAIN_LD_FLAGS} +) + if(NOT CONFIG_NATIVE_APPLICATION) zephyr_ld_options( -nostdlib diff --git a/cmake/compiler/gcc.cmake b/cmake/compiler/gcc.cmake index 2a8e501a712..63d51f061df 100644 --- a/cmake/compiler/gcc.cmake +++ b/cmake/compiler/gcc.cmake @@ -82,15 +82,22 @@ else() -mthumb -mcpu=${GCC_M_CPU} ) + list(APPEND TOOLCHAIN_LD_FLAGS + -mthumb + -mcpu=${GCC_M_CPU} + ) include(${ZEPHYR_BASE}/cmake/fpu-for-gcc-m-cpu.cmake) if(CONFIG_FLOAT) list(APPEND TOOLCHAIN_C_FLAGS -mfpu=${FPU_FOR_${GCC_M_CPU}}) + list(APPEND TOOLCHAIN_LD_FLAGS -mfpu=${FPU_FOR_${GCC_M_CPU}}) if (CONFIG_FP_SOFTABI) list(APPEND TOOLCHAIN_C_FLAGS -mfloat-abi=softfp) + list(APPEND TOOLCHAIN_LD_FLAGS -mfloat-abi=softfp) elseif(CONFIG_FP_HARDABI) list(APPEND TOOLCHAIN_C_FLAGS -mfloat-abi=hard) + list(APPEND TOOLCHAIN_LD_FLAGS -mfloat-abi=hard) endif() endif() elseif("${ARCH}" STREQUAL "arc")