-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathproject_stm32.yml
123 lines (116 loc) · 2.68 KB
/
project_stm32.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
---
:project:
:use_exceptions: TRUE
:use_mocks: TRUE
:use_test_preprocessor: TRUE
:use_preprocessor_directives: FALSE
:use_auxiliary_dependencies: TRUE
:auto_link_deep_dependencies: TRUE
:build_root: build
:release_build: TRUE
:test_file_prefix: test_
:which_ceedling: vendor/ceedling
:ceedling_version: 0.30.0
:options_paths:
- options/
:default_tasks:
- test:all
:release_build:
:output: project_name.elf
:use_assembly: TRUE
:environment:
- :mcu: cortex-m4
:extension:
:executable: .elf
:assembly: .s
:paths:
:test:
- +:test/**
- -:test/support
:source:
- src/**
:include:
- src/
- src/Core/Inc
- src/Drivers/STM32F4xx_HAL_Driver/Inc
- src/Drivers/CMSIS/Device/ST/STM32F4xx/Include
- src/Drivers/CMSIS/Include
:support:
- test/support
:libraries: []
:files:
:assembly:
- +:src/Core/Startup/startup_stm32f407vgtx.s
:defines:
# in order to add common defines:
# 1) remove the trailing [] from the :common: section
# 2) add entries to the :common: section (e.g. :test: has TEST defined)
# :common: &common_defines []
:common: &common_defines
:test:
- *common_defines
- TEST
:test_preprocess:
- *common_defines
- TEST
:release:
- USE_HAL_DRIVER
- STM32F407xx
:tools:
:release_assembler:
:executable: arm-none-eabi-gcc
:arguments:
- -mcpu=#{ENV['MCU']}
- -mthumb
- -mlittle-endian
- --specs=nano.specs
- -ffunction-sections
- -fdata-sections
- -Wl,--gc-sections
- -Os
- -D$: COLLECTION_DEFINES_RELEASE_AND_VENDOR
- -I$: COLLECTION_PATHS_SOURCE_INCLUDE_VENDOR
- -I$: COLLECTION_PATHS_RELEASE_TOOLCHAIN_INCLUDE
- -g
- -gdwarf-2
- -Wall
- -c ${1}
- -o ${2}
:release_compiler:
:executable: arm-none-eabi-gcc
:arguments:
- -mcpu=#{ENV['MCU']}
- -mthumb
- -mlittle-endian
- --specs=nano.specs
- -ffunction-sections
- -fdata-sections
- -Wl,--gc-sections
- -Os
- -D$: COLLECTION_DEFINES_RELEASE_AND_VENDOR
- -I$: COLLECTION_PATHS_SOURCE_INCLUDE_VENDOR
- -I$: COLLECTION_PATHS_RELEASE_TOOLCHAIN_INCLUDE
- -g
- -gdwarf-2
- -Wall
- -c ${1}
- -o ${2}
:release_linker:
:executable: arm-none-eabi-gcc
:arguments:
- -mcpu=#{ENV['MCU']}
- -mthumb
- -mlittle-endian
- -Tlinker/STM32F407VGTX_FLASH.ld
- --specs=nano.specs
- -ffunction-sections
- -fdata-sections
- -Wl,--gc-sections
- ${1}
- -o ${2}
:post_link_execute:
:executable: arm-none-eabi-objcopy
:arguments:
- -O binary
- ${1}
- build/release/pku.hex