aboutsummaryrefslogtreecommitdiff
path: root/lib/chibios-contrib/testhal/STM32/STM32F7xx/USB_MSD/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'lib/chibios-contrib/testhal/STM32/STM32F7xx/USB_MSD/Makefile')
-rw-r--r--lib/chibios-contrib/testhal/STM32/STM32F7xx/USB_MSD/Makefile225
1 files changed, 225 insertions, 0 deletions
diff --git a/lib/chibios-contrib/testhal/STM32/STM32F7xx/USB_MSD/Makefile b/lib/chibios-contrib/testhal/STM32/STM32F7xx/USB_MSD/Makefile
new file mode 100644
index 000000000..4620d7308
--- /dev/null
+++ b/lib/chibios-contrib/testhal/STM32/STM32F7xx/USB_MSD/Makefile
@@ -0,0 +1,225 @@
1##############################################################################
2# Build global options
3# NOTE: Can be overridden externally.
4#
5
6# Compiler options here.
7ifeq ($(USE_OPT),)
8 USE_OPT = -Os -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 = no
34endif
35
36# If enabled, this option allows to compile the application in THUMB mode.
37ifeq ($(USE_THUMB),)
38 USE_THUMB = yes
39endif
40
41# Enable this if you want to see the full log while compiling.
42ifeq ($(USE_VERBOSE_COMPILE),)
43 USE_VERBOSE_COMPILE = no
44endif
45
46# If enabled, this option makes the build process faster by not compiling
47# modules not used in the current configuration.
48ifeq ($(USE_SMART_BUILD),)
49 USE_SMART_BUILD = yes
50endif
51
52#
53# Build global options
54##############################################################################
55
56##############################################################################
57# Architecture or project specific options
58#
59
60# Stack size to be allocated to the Cortex-M process stack. This stack is
61# the stack used by the main() thread.
62ifeq ($(USE_PROCESS_STACKSIZE),)
63 USE_PROCESS_STACKSIZE = 0x400
64endif
65
66# Stack size to the allocated to the Cortex-M main/exceptions stack. This
67# stack is used for processing interrupts and exceptions.
68ifeq ($(USE_EXCEPTIONS_STACKSIZE),)
69 USE_EXCEPTIONS_STACKSIZE = 0x400
70endif
71
72# Enables the use of FPU (no, softfp, hard).
73ifeq ($(USE_FPU),)
74 USE_FPU = no
75endif
76
77# FPU-related options.
78ifeq ($(USE_FPU_OPT),)
79 USE_FPU_OPT = -mfloat-abi=$(USE_FPU) -mfpu=fpv5-sp-d16 -fsingle-precision-constant
80endif
81
82#
83# Architecture or project specific options
84##############################################################################
85
86##############################################################################
87# Project, sources and paths
88#
89
90# Define project name here
91PROJECT = ch
92
93# Imported source files and paths
94CHIBIOS = ../../../../../ChibiOS
95CHIBIOS_CONTRIB = $(CHIBIOS)/../ChibiOS-Contrib
96# Licensing files.
97include $(CHIBIOS)/os/license/license.mk
98# Startup files.
99include $(CHIBIOS)/os/common/startup/ARMCMx/compilers/GCC/mk/startup_stm32f7xx.mk
100# HAL-OSAL files (optional).
101include $(CHIBIOS_CONTRIB)/os/hal/hal.mk
102include $(CHIBIOS_CONTRIB)/os/hal/ports/STM32/STM32F7xx/platform.mk
103include $(CHIBIOS)/os/hal/boards/ST_NUCLEO144_F767ZI/board.mk
104include $(CHIBIOS)/os/hal/osal/rt-nil/osal.mk
105# RTOS files (optional).
106include $(CHIBIOS)/os/rt/rt.mk
107include $(CHIBIOS)/os/common/ports/ARMCMx/compilers/GCC/mk/port_v7m.mk
108# Other files (optional).
109include $(CHIBIOS)/test/lib/test.mk
110include $(CHIBIOS)/test/rt/rt_test.mk
111include $(CHIBIOS)/test/oslib/oslib_test.mk
112include $(CHIBIOS)/os/hal/lib/streams/streams.mk
113include $(CHIBIOS)/os/various/shell/shell.mk
114
115# Define linker script file here
116LDSCRIPT= $(STARTUPLD)/STM32F76xxI.ld
117
118# C sources that can be compiled in ARM or THUMB mode depending on the global
119# setting.
120CSRC = $(ALLCSRC) \
121 $(TESTSRC) \
122 $(CHIBIOS_CONTRIB)/os/various/ramdisk.c \
123 $(CHIBIOS_CONTRIB)/os/various/lib_scsi.c \
124 usbcfg.c \
125 main.c
126
127# C++ sources that can be compiled in ARM or THUMB mode depending on the global
128# setting.
129CPPSRC = $(ALLCPPSRC)
130
131# C sources to be compiled in ARM mode regardless of the global setting.
132# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler
133# option that results in lower performance and larger code size.
134ACSRC =
135
136# C++ sources to be compiled in ARM mode regardless of the global setting.
137# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler
138# option that results in lower performance and larger code size.
139ACPPSRC =
140
141# C sources to be compiled in THUMB mode regardless of the global setting.
142# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler
143# option that results in lower performance and larger code size.
144TCSRC =
145
146# C sources to be compiled in THUMB mode regardless of the global setting.
147# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler
148# option that results in lower performance and larger code size.
149TCPPSRC =
150
151# List ASM source files here
152ASMSRC = $(ALLASMSRC)
153ASMXSRC = $(ALLXASMSRC)
154
155INCDIR = $(ALLINC) $(TESTINC) \
156 $(CHIBIOS_CONTRIB)/os/various
157
158#
159# Project, sources and paths
160##############################################################################
161
162##############################################################################
163# Compiler settings
164#
165
166MCU = cortex-m7
167
168#TRGT = arm-elf-
169TRGT = arm-none-eabi-
170CC = $(TRGT)gcc
171CPPC = $(TRGT)g++
172# Enable loading with g++ only if you need C++ runtime support.
173# NOTE: You can use C++ even without C++ support if you are careful. C++
174# runtime support makes code size explode.
175LD = $(TRGT)gcc
176#LD = $(TRGT)g++
177CP = $(TRGT)objcopy
178AS = $(TRGT)gcc -x assembler-with-cpp
179AR = $(TRGT)ar
180OD = $(TRGT)objdump
181SZ = $(TRGT)size
182HEX = $(CP) -O ihex
183BIN = $(CP) -O binary
184
185# ARM-specific options here
186AOPT =
187
188# THUMB-specific options here
189TOPT = -mthumb -DTHUMB
190
191# Define C warning options here
192CWARN = -Wall -Wextra -Wundef -Wstrict-prototypes
193
194# Define C++ warning options here
195CPPWARN = -Wall -Wextra -Wundef
196
197#
198# Compiler settings
199##############################################################################
200
201##############################################################################
202# Start of user section
203#
204
205# List all user C define here, like -D_DEBUG=1
206UDEFS =
207
208# Define ASM defines here
209UADEFS =
210
211# List all user directories here
212UINCDIR =
213
214# List the user directory to look for the libraries here
215ULIBDIR =
216
217# List all user libraries here
218ULIBS =
219
220#
221# End of user defines
222##############################################################################
223
224RULESPATH = $(CHIBIOS)/os/common/startup/ARMCMx/compilers/GCC/mk
225include $(RULESPATH)/rules.mk