aboutsummaryrefslogtreecommitdiff
path: root/lib/chibios/demos/STM32/RT-STM32F072RB-NUCLEO64/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'lib/chibios/demos/STM32/RT-STM32F072RB-NUCLEO64/Makefile')
-rw-r--r--lib/chibios/demos/STM32/RT-STM32F072RB-NUCLEO64/Makefile189
1 files changed, 189 insertions, 0 deletions
diff --git a/lib/chibios/demos/STM32/RT-STM32F072RB-NUCLEO64/Makefile b/lib/chibios/demos/STM32/RT-STM32F072RB-NUCLEO64/Makefile
new file mode 100644
index 000000000..90a699de5
--- /dev/null
+++ b/lib/chibios/demos/STM32/RT-STM32F072RB-NUCLEO64/Makefile
@@ -0,0 +1,189 @@
1##############################################################################
2# Build global options
3# NOTE: Can be overridden externally.
4#
5
6# Compiler options here.
7ifeq ($(USE_OPT),)
8 USE_OPT = -O2 -ggdb -fomit-frame-pointer -falign-functions=16
9endif
10
11# C specific options here (added to USE_OPT).
12ifeq ($(USE_COPT),)
13 USE_COPT =
14endif
15
16# C++ specific options here (added to USE_OPT).
17ifeq ($(USE_CPPOPT),)
18 USE_CPPOPT = -fno-rtti
19endif
20
21# Enable this if you want the linker to remove unused code and data.
22ifeq ($(USE_LINK_GC),)
23 USE_LINK_GC = yes
24endif
25
26# Linker extra options here.
27ifeq ($(USE_LDOPT),)
28 USE_LDOPT =
29endif
30
31# Enable this if you want link time optimizations (LTO).
32ifeq ($(USE_LTO),)
33 USE_LTO = yes
34endif
35
36# Enable this if you want to see the full log while compiling.
37ifeq ($(USE_VERBOSE_COMPILE),)
38 USE_VERBOSE_COMPILE = no
39endif
40
41# If enabled, this option makes the build process faster by not compiling
42# modules not used in the current configuration.
43ifeq ($(USE_SMART_BUILD),)
44 USE_SMART_BUILD = yes
45endif
46
47#
48# Build global options
49##############################################################################
50
51##############################################################################
52# Architecture or project specific options
53#
54
55# Stack size to be allocated to the Cortex-M process stack. This stack is
56# the stack used by the main() thread.
57ifeq ($(USE_PROCESS_STACKSIZE),)
58 USE_PROCESS_STACKSIZE = 0x200
59endif
60
61# Stack size to the allocated to the Cortex-M main/exceptions stack. This
62# stack is used for processing interrupts and exceptions.
63ifeq ($(USE_EXCEPTIONS_STACKSIZE),)
64 USE_EXCEPTIONS_STACKSIZE = 0x200
65endif
66
67# Enables the use of FPU (no, softfp, hard).
68ifeq ($(USE_FPU),)
69 USE_FPU = no
70endif
71
72# FPU-related options.
73ifeq ($(USE_FPU_OPT),)
74 USE_FPU_OPT = -mfloat-abi=$(USE_FPU) -mfpu=fpv4-sp-d16
75endif
76
77#
78# Architecture or project specific options
79##############################################################################
80
81##############################################################################
82# Project, target, sources and paths
83#
84
85# Define project name here
86PROJECT = ch
87
88# Target settings.
89MCU = cortex-m0
90
91# Imported source files and paths.
92CHIBIOS := ../../..
93CONFDIR := ./cfg
94BUILDDIR := ./build
95DEPDIR := ./.dep
96
97# Licensing files.
98include $(CHIBIOS)/os/license/license.mk
99# Startup files.
100include $(CHIBIOS)/os/common/startup/ARMCMx/compilers/GCC/mk/startup_stm32f0xx.mk
101# HAL-OSAL files (optional).
102include $(CHIBIOS)/os/hal/hal.mk
103include $(CHIBIOS)/os/hal/ports/STM32/STM32F0xx/platform.mk
104include $(CHIBIOS)/os/hal/boards/ST_NUCLEO64_F072RB/board.mk
105include $(CHIBIOS)/os/hal/osal/rt-nil/osal.mk
106# RTOS files (optional).
107include $(CHIBIOS)/os/rt/rt.mk
108include $(CHIBIOS)/os/common/ports/ARMCMx/compilers/GCC/mk/port_v6m.mk
109# Auto-build files in ./source recursively.
110include $(CHIBIOS)/tools/mk/autobuild.mk
111# Other files (optional).
112include $(CHIBIOS)/test/lib/test.mk
113include $(CHIBIOS)/test/rt/rt_test.mk
114include $(CHIBIOS)/test/oslib/oslib_test.mk
115
116# Define linker script file here
117LDSCRIPT= $(STARTUPLD)/STM32F072xB.ld
118
119# C sources that can be compiled in ARM or THUMB mode depending on the global
120# setting.
121CSRC = $(ALLCSRC) \
122 $(TESTSRC) \
123 main.c
124
125# C++ sources that can be compiled in ARM or THUMB mode depending on the global
126# setting.
127CPPSRC = $(ALLCPPSRC)
128
129# List ASM source files here.
130ASMSRC = $(ALLASMSRC)
131
132# List ASM with preprocessor source files here.
133ASMXSRC = $(ALLXASMSRC)
134
135# Inclusion directories.
136INCDIR = $(CONFDIR) $(ALLINC) $(TESTINC)
137
138# Define C warning options here.
139CWARN = -Wall -Wextra -Wundef -Wstrict-prototypes
140
141# Define C++ warning options here.
142CPPWARN = -Wall -Wextra -Wundef
143
144#
145# Project, target, sources and paths
146##############################################################################
147
148##############################################################################
149# Start of user section
150#
151
152# List all user C define here, like -D_DEBUG=1
153UDEFS =
154
155# Define ASM defines here
156UADEFS =
157
158# List all user directories here
159UINCDIR =
160
161# List the user directory to look for the libraries here
162ULIBDIR =
163
164# List all user libraries here
165ULIBS =
166
167#
168# End of user section
169##############################################################################
170
171##############################################################################
172# Common rules
173#
174
175RULESPATH = $(CHIBIOS)/os/common/startup/ARMCMx/compilers/GCC/mk
176include $(RULESPATH)/arm-none-eabi.mk
177include $(RULESPATH)/rules.mk
178
179#
180# Common rules
181##############################################################################
182
183##############################################################################
184# Custom rules
185#
186
187#
188# Custom rules
189##############################################################################