CMake nrf52480: fix startup/linker inclusion

pull/13566/head
Martin Kojtal 2020-11-04 09:36:17 +00:00 committed by Hugues Kamba
parent e80fa8b715
commit d48415cc67
1 changed files with 13 additions and 24 deletions

View File

@ -1,38 +1,27 @@
# Copyright (c) 2020 ARM Limited. All rights reserved. # Copyright (c) 2020 ARM Limited. All rights reserved.
# SPDX-License-Identifier: Apache-2.0 # SPDX-License-Identifier: Apache-2.0
function(_mbed_get_assembly_nrf52840_dk) if(${MBED_TOOLCHAIN} STREQUAL "GCC_ARM")
if(${MBED_TOOLCHAIN} STREQUAL "GCC_ARM") set(STARTUP_FILE TOOLCHAIN_GCC_ARM/startup_NRF52840.S)
set(STARTUP_FILE TOOLCHAIN_GCC_ARM/startup_NRF52840.S) set(LINKER_FILE ${CMAKE_CURRENT_SOURCE_DIR}/TOOLCHAIN_GCC_ARM/NRF52840.ld)
elseif(${MBED_TOOLCHAIN} STREQUAL "ARM") elseif(${MBED_TOOLCHAIN} STREQUAL "ARM")
set(STARTUP_FILE TOOLCHAIN_ARM_STD/startup_nrf52840.S) set(STARTUP_FILE TOOLCHAIN_ARM_STD/startup_nrf52840.S)
elseif(${MBED_TOOLCHAIN} STREQUAL "IAR") set(LINKER_FILE ${CMAKE_CURRENT_SOURCE_DIR}/TOOLCHAIN_ARM_STD/nRF52840.sct)
set(STARTUP_FILE TOOLCHAIN_IAR/startup_NRF52840_IAR.S) elseif(${MBED_TOOLCHAIN} STREQUAL "IAR")
endif() set(STARTUP_FILE TOOLCHAIN_IAR/startup_NRF52840_IAR.S)
target_sources(mbed-core INTERFACE ${STARTUP_FILE}) set(LINKER_FILE ${CMAKE_CURRENT_SOURCE_DIR}/TOOLCHAIN_IAR/nRF52840.icf)
endfunction() endif()
function(_mbed_set_linker_file) set_property(GLOBAL PROPERTY MBED_TARGET_LINKER_FILE ${LINKER_FILE})
if(${MBED_TOOLCHAIN} STREQUAL "GCC_ARM")
set(LINKER_FILE ${CMAKE_CURRENT_SOURCE_DIR}/TOOLCHAIN_GCC_ARM/NRF52840.ld)
elseif(${MBED_TOOLCHAIN} STREQUAL "ARM")
set(LINKER_FILE ${CMAKE_CURRENT_SOURCE_DIR}/TOOLCHAIN_ARM_STD/nRF52840.sct)
elseif(${MBED_TOOLCHAIN} STREQUAL "IAR")
set(LINKER_FILE ${CMAKE_CURRENT_SOURCE_DIR}/TOOLCHAIN_IAR/nRF52840.icf)
endif()
set_property(GLOBAL PROPERTY MBED_TARGET_LINKER_FILE ${LINKER_FILE})
endfunction()
_mbed_get_assembly_nrf52840_dk()
_mbed_set_linker_file()
target_include_directories(mbed-core target_include_directories(mbed-core
INTERFACE INTERFACE
${CMAKE_CURRENT_SOURCE_DIR} .
) )
target_sources(mbed-core target_sources(mbed-core
INTERFACE INTERFACE
${STARTUP_FILE}
cmsis_nvic.c cmsis_nvic.c
system_nrf52840.c system_nrf52840.c
) )