aboutsummaryrefslogtreecommitdiff
path: root/STM32F429ZIT6_HelloWorld/CMakeLists.txt
blob: 8f02a0ba4d52c01f1343a595e991e5905309683a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
cmake_minimum_required(VERSION 3.21)
project(STM32 C ASM)

set(CMAKE_VERBOSE_MAKEFILE ON)

set(CMAKE_C_COMPILER arm-none-eabi-gcc)
set(CMAKE_CXX_COMPILER arm-none-eabi-g++)
set(CMAKE_ASM_COMPILER arm-none-eabi-gcc)
set(CMAKE_AR arm-none-eabi-ar)
set(CMAKE_OBJCOPY arm-none-eabi-objcopy)
set(CMAKE_OBJDUMP arm-none-eabi-objdump)
set(SIZE arm-none-eabi-size)

set(CMAKE_C_STANDARD 99)
set(CMAKE_SYSTEM_PROCESSOR cortex-m4)

add_link_options(-Wl,--print-memory-usage,-Map=${PROJECT_BINARY_DIR}/${PROJECT_NAME}.map)
add_link_options(--specs=nosys.specs)
add_link_options(-mcpu=${CMAKE_SYSTEM_PROCESSOR} -mthumb -nostdlib)
add_link_options(-T ${CMAKE_SOURCE_DIR}/linker.ld)
add_compile_options(-mcpu=${CMAKE_SYSTEM_PROCESSOR} -mthumb)
add_compile_options(-O0)
add_executable(STM32 linker.ld core.S boot.S main.c)