Skip to content

Commit a918ba4

Browse files
committed
CMake: add STM32F4 targets
1 parent 6582c0a commit a918ba4

File tree

32 files changed

+570
-26
lines changed

32 files changed

+570
-26
lines changed

targets/TARGET_STM/TARGET_STM32F4/CMakeLists.txt

Lines changed: 28 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,36 @@
11
# Copyright (c) 2020 ARM Limited. All rights reserved.
22
# SPDX-License-Identifier: Apache-2.0
33

4-
if("STM32F401xE" IN_LIST MBED_TARGET_LABELS)
4+
if("MTS_DRAGONFLY_F411RE" IN_LIST MBED_TARGET_LABELS)
5+
add_subdirectory(TARGET_MTS_DRAGONFLY_F411RE)
6+
elseif("MTS_MDOT_F411RE" IN_LIST MBED_TARGET_LABELS)
7+
add_subdirectory(TARGET_MTS_MDOT_F411RE)
8+
elseif("STM32F401xC" IN_LIST MBED_TARGET_LABELS)
9+
add_subdirectory(TARGET_STM32F401xC)
10+
elseif("STM32F401xE" IN_LIST MBED_TARGET_LABELS)
511
add_subdirectory(TARGET_STM32F401xE)
12+
elseif("STM32F407xE" IN_LIST MBED_TARGET_LABELS)
13+
add_subdirectory(TARGET_STM32F407xE)
14+
elseif("STM32F407xG" IN_LIST MBED_TARGET_LABELS)
15+
add_subdirectory(TARGET_STM32F407xG)
16+
elseif("STM32F410xB" IN_LIST MBED_TARGET_LABELS)
17+
add_subdirectory(TARGET_STM32F410xB)
18+
elseif("STM32F411xE" IN_LIST MBED_TARGET_LABELS)
19+
add_subdirectory(TARGET_STM32F411xE)
20+
elseif("STM32F412xG" IN_LIST MBED_TARGET_LABELS)
21+
add_subdirectory(TARGET_STM32F412xG)
22+
elseif("STM32F413xH" IN_LIST MBED_TARGET_LABELS)
23+
add_subdirectory(TARGET_STM32F413xH)
24+
elseif("STM32F429xI" IN_LIST MBED_TARGET_LABELS)
25+
add_subdirectory(TARGET_STM32F429xI)
26+
elseif("STM32F437xG" IN_LIST MBED_TARGET_LABELS)
27+
add_subdirectory(TARGET_STM32F437xG)
628
elseif("STM32F439xI" IN_LIST MBED_TARGET_LABELS)
7-
add_subdirectory(TARGET_STM32F439xI)
29+
add_subdirectory(TARGET_STM32F439xI)
30+
elseif("STM32F446xE" IN_LIST MBED_TARGET_LABELS)
31+
add_subdirectory(TARGET_STM32F446xE)
32+
elseif("STM32F469xI" IN_LIST MBED_TARGET_LABELS)
33+
add_subdirectory(TARGET_STM32F469xI)
834
endif()
935

1036
target_sources(mbed-core
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# Copyright (c) 2020 ARM Limited. All rights reserved.
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
if(${MBED_TOOLCHAIN} STREQUAL "GCC_ARM")
5+
set(STARTUP_FILE TOOLCHAIN_GCC_ARM/startup_stm32f411xe.S)
6+
set(LINKER_FILE TOOLCHAIN_GCC_ARM/STM32F411XE.ld)
7+
elseif(${MBED_TOOLCHAIN} STREQUAL "ARM")
8+
set(STARTUP_FILE TOOLCHAIN_ARM/startup_stm32f411xe.S)
9+
set(LINKER_FILE TOOLCHAIN_ARM/stm32f411re.sct)
10+
endif()
11+
12+
set_property(GLOBAL PROPERTY MBED_TARGET_LINKER_FILE ${CMAKE_CURRENT_SOURCE_DIR}/${LINKER_FILE})
13+
14+
target_sources(mbed-core
15+
INTERFACE
16+
system_clock.c
17+
ONBOARD_TELIT_HE910.cpp
18+
${STARTUP_FILE}
19+
)
20+
21+
target_include_directories(mbed-core
22+
INTERFACE
23+
.
24+
)
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# Copyright (c) 2020 ARM Limited. All rights reserved.
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
if(${MBED_TOOLCHAIN} STREQUAL "GCC_ARM")
5+
set(STARTUP_FILE TOOLCHAIN_GCC_ARM/startup_stm32f411xe.S)
6+
set(LINKER_FILE TOOLCHAIN_GCC_ARM/STM32F411XE.ld)
7+
elseif(${MBED_TOOLCHAIN} STREQUAL "ARM")
8+
set(STARTUP_FILE TOOLCHAIN_ARM/startup_stm32f411xe.S)
9+
set(LINKER_FILE TOOLCHAIN_ARM/stm32f411re.sct)
10+
endif()
11+
12+
set_property(GLOBAL PROPERTY MBED_TARGET_LINKER_FILE ${CMAKE_CURRENT_SOURCE_DIR}/${LINKER_FILE})
13+
14+
target_sources(mbed-core
15+
INTERFACE
16+
system_clock.c
17+
PeripheralPins.c
18+
${STARTUP_FILE}
19+
)
20+
21+
target_include_directories(mbed-core
22+
INTERFACE
23+
.
24+
)
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
# Copyright (c) 2020 ARM Limited. All rights reserved.
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
if(${MBED_TOOLCHAIN} STREQUAL "GCC_ARM")
5+
set(STARTUP_FILE TOOLCHAIN_GCC_ARM/startup_stm32f401xc.S)
6+
set(LINKER_FILE TOOLCHAIN_GCC_ARM/STM32F401XC.ld)
7+
endif()
8+
9+
set_property(GLOBAL PROPERTY MBED_TARGET_LINKER_FILE ${CMAKE_CURRENT_SOURCE_DIR}/${LINKER_FILE})
10+
11+
target_sources(mbed-core
12+
INTERFACE
13+
system_clock.c
14+
PeripheralPins.c
15+
${STARTUP_FILE}
16+
)
17+
18+
target_include_directories(mbed-core
19+
INTERFACE
20+
.
21+
)

targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F401xE/CMakeLists.txt

Lines changed: 13 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,25 @@
11
# Copyright (c) 2020 ARM Limited. All rights reserved.
22
# SPDX-License-Identifier: Apache-2.0
33

4-
function(_mbed_get_assembly_stm32f401xe)
5-
if(${MBED_TOOLCHAIN} STREQUAL "GCC_ARM")
6-
set(STARTUP_FILE TOOLCHAIN_GCC_ARM/startup_stm32f401xe.S)
7-
elseif(${MBED_TOOLCHAIN} STREQUAL "ARM")
8-
set(STARTUP_FILE TOOLCHAIN_ARM/startup_stm32f401xe.S)
9-
elseif(${MBED_TOOLCHAIN} STREQUAL "IAR")
10-
set(STARTUP_FILE TOOLCHAIN_IAR/startup_stm32f401xe.S)
11-
endif()
12-
target_sources(mbed-core INTERFACE ${STARTUP_FILE})
13-
endfunction()
14-
15-
function(_mbed_set_linker_file)
16-
if(${MBED_TOOLCHAIN} STREQUAL "GCC_ARM")
17-
set(LINKER_FILE ${CMAKE_CURRENT_SOURCE_DIR}/TOOLCHAIN_GCC_ARM/STM32F401XE.ld)
18-
elseif(${MBED_TOOLCHAIN} STREQUAL "ARM")
19-
set(LINKER_FILE ${CMAKE_CURRENT_SOURCE_DIR}/TOOLCHAIN_ARM/stm32f401xe.sct)
20-
elseif(${MBED_TOOLCHAIN} STREQUAL "IAR")
21-
set(LINKER_FILE ${CMAKE_CURRENT_SOURCE_DIR}/TOOLCHAIN_IAR/stm32f401xe.icf)
22-
endif()
23-
set_property(GLOBAL PROPERTY MBED_TARGET_LINKER_FILE ${LINKER_FILE})
24-
endfunction()
4+
if(${MBED_TOOLCHAIN} STREQUAL "GCC_ARM")
5+
set(STARTUP_FILE TOOLCHAIN_GCC_ARM/startup_stm32f401xe.S)
6+
set(LINKER_FILE TOOLCHAIN_GCC_ARM/STM32F401XE.ld)
7+
elseif(${MBED_TOOLCHAIN} STREQUAL "ARM")
8+
set(STARTUP_FILE TOOLCHAIN_ARM/startup_stm32f401xe.S)
9+
set(LINKER_FILE TOOLCHAIN_ARM/stm32f401xe.sct)
10+
endif()
2511

26-
_mbed_get_assembly_stm32f401xe()
27-
_mbed_set_linker_file()
12+
set_property(GLOBAL PROPERTY MBED_TARGET_LINKER_FILE ${CMAKE_CURRENT_SOURCE_DIR}/${LINKER_FILE})
2813

2914
if("NUCLEO_F401RE" IN_LIST MBED_TARGET_LABELS)
3015
add_subdirectory(TARGET_NUCLEO_F401RE)
3116
endif()
3217

18+
target_sources(mbed-core
19+
INTERFACE
20+
${STARTUP_FILE}
21+
)
22+
3323
target_include_directories(mbed-core
3424
INTERFACE
3525
.
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# Copyright (c) 2020 ARM Limited. All rights reserved.
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
if("ARCH_MAX" IN_LIST MBED_TARGET_LABELS)
5+
add_subdirectory(TARGET_ARCH_MAX)
6+
endif()
7+
8+
if(${MBED_TOOLCHAIN} STREQUAL "GCC_ARM")
9+
set(STARTUP_FILE TOOLCHAIN_GCC_ARM/startup_stm32f401xe.S)
10+
set(LINKER_FILE TOOLCHAIN_GCC_ARM/STM32F401XE.ld)
11+
elseif(${MBED_TOOLCHAIN} STREQUAL "ARM")
12+
set(STARTUP_FILE TOOLCHAIN_ARM/startup_stm32f401xe.S)
13+
set(LINKER_FILE TOOLCHAIN_ARM/stm32f401xe.sct)
14+
endif()
15+
16+
set_property(GLOBAL PROPERTY MBED_TARGET_LINKER_FILE ${CMAKE_CURRENT_SOURCE_DIR}/${LINKER_FILE})
17+
18+
target_sources(mbed-core
19+
INTERFACE
20+
${STARTUP_FILE}
21+
)
22+
23+
target_include_directories(mbed-core
24+
INTERFACE
25+
.
26+
)
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
# Copyright (c) 2020 ARM Limited. All rights reserved.
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
target_sources(mbed-core
5+
INTERFACE
6+
PeripheralPins.c
7+
system_clock.c
8+
)
9+
10+
target_include_directories(mbed-core
11+
INTERFACE
12+
.
13+
)
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
# Copyright (c) 2020 ARM Limited. All rights reserved.
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
if(${MBED_TOOLCHAIN} STREQUAL "GCC_ARM")
5+
set(STARTUP_FILE TOOLCHAIN_GCC_ARM/startup_stm32f407xx.S)
6+
set(LINKER_FILE TOOLCHAIN_GCC_ARM/STM32F407XG.ld)
7+
elseif(${MBED_TOOLCHAIN} STREQUAL "ARM")
8+
set(STARTUP_FILE TOOLCHAIN_ARM/startup_STM32F407xx.S)
9+
set(LINKER_FILE TOOLCHAIN_ARM/STM32F407xx.sct)
10+
endif()
11+
12+
set_property(GLOBAL PROPERTY MBED_TARGET_LINKER_FILE ${CMAKE_CURRENT_SOURCE_DIR}/${LINKER_FILE})
13+
14+
target_sources(mbed-core
15+
INTERFACE
16+
${STARTUP_FILE}
17+
)
18+
19+
target_include_directories(mbed-core
20+
INTERFACE
21+
.
22+
)
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
# Copyright (c) 2020 ARM Limited. All rights reserved.
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
if(${MBED_TOOLCHAIN} STREQUAL "GCC_ARM")
5+
set(STARTUP_FILE TOOLCHAIN_GCC_ARM/startup_stm32f410rx.S)
6+
set(LINKER_FILE TOOLCHAIN_GCC_ARM/STM32F410xB.ld)
7+
elseif(${MBED_TOOLCHAIN} STREQUAL "ARM")
8+
set(STARTUP_FILE TOOLCHAIN_ARM/startup_stm32f410rx.S)
9+
set(LINKER_FILE TOOLCHAIN_ARM/stm32f410xb.sct)
10+
endif()
11+
12+
set_property(GLOBAL PROPERTY MBED_TARGET_LINKER_FILE ${CMAKE_CURRENT_SOURCE_DIR}/${LINKER_FILE})
13+
14+
target_sources(mbed-core
15+
INTERFACE
16+
${STARTUP_FILE}
17+
)
18+
19+
target_include_directories(mbed-core
20+
INTERFACE
21+
.
22+
)
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# Copyright (c) 2020 ARM Limited. All rights reserved.
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
if("NUCLEO_F411RE" IN_LIST MBED_TARGET_LABELS)
5+
add_subdirectory(TARGET_NUCLEO_F411RE)
6+
endif()
7+
8+
if(${MBED_TOOLCHAIN} STREQUAL "GCC_ARM")
9+
set(STARTUP_FILE TOOLCHAIN_GCC_ARM/startup_stm32f411xe.S)
10+
set(LINKER_FILE TOOLCHAIN_GCC_ARM/STM32F411XE.ld)
11+
elseif(${MBED_TOOLCHAIN} STREQUAL "ARM")
12+
set(STARTUP_FILE TOOLCHAIN_ARM/startup_stm32f411xe.S)
13+
set(LINKER_FILE TOOLCHAIN_ARM/stm32f411re.sct)
14+
endif()
15+
16+
set_property(GLOBAL PROPERTY MBED_TARGET_LINKER_FILE ${CMAKE_CURRENT_SOURCE_DIR}/${LINKER_FILE})
17+
18+
target_sources(mbed-core
19+
INTERFACE
20+
${STARTUP_FILE}
21+
)
22+
23+
target_include_directories(mbed-core
24+
INTERFACE
25+
.
26+
)

0 commit comments

Comments
 (0)