aboutsummaryrefslogtreecommitdiff
path: root/lib/chibios/demos/SPC5/NIL-SPC560D-EVB/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'lib/chibios/demos/SPC5/NIL-SPC560D-EVB/Makefile')
-rw-r--r--lib/chibios/demos/SPC5/NIL-SPC560D-EVB/Makefile191
1 files changed, 191 insertions, 0 deletions
diff --git a/lib/chibios/demos/SPC5/NIL-SPC560D-EVB/Makefile b/lib/chibios/demos/SPC5/NIL-SPC560D-EVB/Makefile
new file mode 100644
index 000000000..f0419cd84
--- /dev/null
+++ b/lib/chibios/demos/SPC5/NIL-SPC560D-EVB/Makefile
@@ -0,0 +1,191 @@
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 -mno-spe -msoft-float
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 VLE mode.
37ifeq ($(USE_VLE),)
38 USE_VLE = 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 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 optional exceptions stack. This
67# stack is used for processing interrupts and exceptions.
68ifeq ($(USE_EXCEPTIONS_STACKSIZE),)
69 USE_EXCEPTIONS_STACKSIZE = 0
70endif
71
72#
73# Architecture or project specific options
74##############################################################################
75
76##############################################################################
77# Project, sources and paths
78#
79
80# Define project name here
81PROJECT = ch
82
83# Imported source files and paths
84CHIBIOS = ../../..
85# Startup files.
86include $(CHIBIOS)/os/common/startup/e200/compilers/GCC/mk/startup_spc560dxx.mk
87# HAL-OSAL files (optional).
88include $(CHIBIOS)/os/hal/hal.mk
89include $(CHIBIOS)/os/hal/boards/ST_EVB_SPC560D/board.mk
90include $(CHIBIOS)/os/hal/ports/SPC5/SPC560Dxx/platform.mk
91include $(CHIBIOS)/os/hal/osal/rt-nil/osal.mk
92# RTOS files (optional).
93include $(CHIBIOS)/os/nil/nil.mk
94include $(CHIBIOS)/os/common/ports/e200/compilers/GCC/mk/port.mk
95# Other files (optional).
96include $(CHIBIOS)/test/lib/test.mk
97include $(CHIBIOS)/test/nil/nil_test.mk
98include $(CHIBIOS)/test/oslib/oslib_test.mk
99
100# Define linker script file here
101LDSCRIPT= $(STARTUPLD)/SPC560D40.ld
102
103# C sources here.
104CSRC = $(STARTUPSRC) \
105 $(KERNSRC) \
106 $(LIBSRC) \
107 $(PORTSRC) \
108 $(OSALSRC) \
109 $(HALSRC) \
110 $(PLATFORMSRC) \
111 $(BOARDSRC) \
112 $(TESTSRC) \
113 main.c
114
115# C++ sources here.
116CPPSRC =
117
118# List ASM source files here
119ASMSRC =
120ASMXSRC = $(STARTUPASM) $(PORTASM) $(OSALASM)
121
122INCDIR = $(CHIBIOS)/os/license \
123 $(STARTUPINC) $(KERNINC) $(LIBINC) $(PORTINC) $(OSALINC) \
124 $(HALINC) $(PLATFORMINC) $(BOARDINC) $(TESTINC) \
125 $(CHIBIOS)/os/various
126
127#
128# Project, sources and paths
129##############################################################################
130
131##############################################################################
132# Compiler settings
133#
134
135#MCU = e200zx -meabi -msdata=none -mnew-mnemonics -mregnames # HighTec
136MCU = e200z0 -meabi -msdata=none -mregnames # Free GCC
137
138#TRGT = ppc-vle-
139TRGT = powerpc-eabivle-
140#TRGT = ppc-freevle-eabi-
141CC = $(TRGT)gcc
142CPPC = $(TRGT)g++
143# Enable loading with g++ only if you need C++ runtime support.
144# NOTE: You can use C++ even without C++ support if you are careful. C++
145# runtime support makes code size explode.
146LD = $(TRGT)gcc
147#LD = $(TRGT)g++
148CP = $(TRGT)objcopy
149AS = $(TRGT)gcc -x assembler-with-cpp
150AR = $(TRGT)ar
151OD = $(TRGT)objdump
152SZ = $(TRGT)size
153HEX = $(CP) -O ihex
154MOT = $(CP) -O srec
155BIN = $(CP) -O binary
156
157# Define C warning options here
158CWARN = -Wall -Wextra -Wundef -Wstrict-prototypes
159
160# Define C++ warning options here
161CPPWARN = -Wall -Wextra -Wundef
162
163#
164# Compiler settings
165##############################################################################
166
167##############################################################################
168# Start of user section
169#
170
171# List all user C define here, like -D_DEBUG=1
172UDEFS = -DTEST_CFG_SIZE_REPORT=0
173
174# Define ASM defines here
175UADEFS =
176
177# List all user directories here
178UINCDIR =
179
180# List the user directory to look for the libraries here
181ULIBDIR =
182
183# List all user libraries here
184ULIBS =
185
186#
187# End of user defines
188##############################################################################
189
190RULESPATH = $(CHIBIOS)/os/common/startup/e200/compilers/GCC
191include $(RULESPATH)/rules.mk