xref: /btstack/port/samv71-xplained-atwilc3000/example/template/config.mk (revision 7d0ceef15816750577c88837cf6ac3eede3224d2)
1*7d0ceef1SMatthias Ringwald#
2*7d0ceef1SMatthias Ringwald# Copyright (c) 2011 Atmel Corporation. All rights reserved.
3*7d0ceef1SMatthias Ringwald#
4*7d0ceef1SMatthias Ringwald# \asf_license_start
5*7d0ceef1SMatthias Ringwald#
6*7d0ceef1SMatthias Ringwald# \page License
7*7d0ceef1SMatthias Ringwald#
8*7d0ceef1SMatthias Ringwald# Redistribution and use in source and binary forms, with or without
9*7d0ceef1SMatthias Ringwald# modification, are permitted provided that the following conditions are met:
10*7d0ceef1SMatthias Ringwald#
11*7d0ceef1SMatthias Ringwald# 1. Redistributions of source code must retain the above copyright notice,
12*7d0ceef1SMatthias Ringwald#    this list of conditions and the following disclaimer.
13*7d0ceef1SMatthias Ringwald#
14*7d0ceef1SMatthias Ringwald# 2. Redistributions in binary form must reproduce the above copyright notice,
15*7d0ceef1SMatthias Ringwald#    this list of conditions and the following disclaimer in the documentation
16*7d0ceef1SMatthias Ringwald#    and/or other materials provided with the distribution.
17*7d0ceef1SMatthias Ringwald#
18*7d0ceef1SMatthias Ringwald# 3. The name of Atmel may not be used to endorse or promote products derived
19*7d0ceef1SMatthias Ringwald#    from this software without specific prior written permission.
20*7d0ceef1SMatthias Ringwald#
21*7d0ceef1SMatthias Ringwald# 4. This software may only be redistributed and used in connection with an
22*7d0ceef1SMatthias Ringwald#    Atmel microcontroller product.
23*7d0ceef1SMatthias Ringwald#
24*7d0ceef1SMatthias Ringwald# THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
25*7d0ceef1SMatthias Ringwald# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
26*7d0ceef1SMatthias Ringwald# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
27*7d0ceef1SMatthias Ringwald# EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
28*7d0ceef1SMatthias Ringwald# ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
29*7d0ceef1SMatthias Ringwald# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
30*7d0ceef1SMatthias Ringwald# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
31*7d0ceef1SMatthias Ringwald# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
32*7d0ceef1SMatthias Ringwald# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
33*7d0ceef1SMatthias Ringwald# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
34*7d0ceef1SMatthias Ringwald# POSSIBILITY OF SUCH DAMAGE.
35*7d0ceef1SMatthias Ringwald#
36*7d0ceef1SMatthias Ringwald# \asf_license_stop
37*7d0ceef1SMatthias Ringwald#
38*7d0ceef1SMatthias Ringwald
39*7d0ceef1SMatthias Ringwald# Path to top level ASF directory relative to this project directory.
40*7d0ceef1SMatthias RingwaldPRJ_PATH = ../../ASF
41*7d0ceef1SMatthias Ringwald
42*7d0ceef1SMatthias Ringwald# Target CPU architecture: cortex-m3, cortex-m4
43*7d0ceef1SMatthias RingwaldARCH = cortex-m7
44*7d0ceef1SMatthias Ringwald
45*7d0ceef1SMatthias Ringwald# Target part: none, sam3n4 or sam4l4aa
46*7d0ceef1SMatthias RingwaldPART = samv71q21
47*7d0ceef1SMatthias Ringwald
48*7d0ceef1SMatthias Ringwald# Application target name. Given with suffix .a for library and .elf for a
49*7d0ceef1SMatthias Ringwald# standalone application.
50*7d0ceef1SMatthias RingwaldTARGET_FLASH = le_counter_flash.elf
51*7d0ceef1SMatthias RingwaldTARGET_SRAM =  le_counter_sram.elf
52*7d0ceef1SMatthias Ringwald
53*7d0ceef1SMatthias Ringwald# List of C source files.
54*7d0ceef1SMatthias RingwaldCSRCS = \
55*7d0ceef1SMatthias Ringwald       ../main            \
56*7d0ceef1SMatthias Ringwald       common/services/clock/samv71/sysclk.c              \
57*7d0ceef1SMatthias Ringwald       common/services/serial/usart_serial.c              \
58*7d0ceef1SMatthias Ringwald       common/utils/interrupt/interrupt_sam_nvic.c        \
59*7d0ceef1SMatthias Ringwald       common/utils/stdio/read.c                          \
60*7d0ceef1SMatthias Ringwald       common/utils/stdio/write.c                         \
61*7d0ceef1SMatthias Ringwald       sam/boards/samv71_xplained_ultra/init.c            \
62*7d0ceef1SMatthias Ringwald       sam/drivers/matrix/matrix.c                        \
63*7d0ceef1SMatthias Ringwald       sam/drivers/mpu/mpu.c                              \
64*7d0ceef1SMatthias Ringwald       sam/drivers/pio/pio.c                              \
65*7d0ceef1SMatthias Ringwald       sam/drivers/pio/pio_handler.c                      \
66*7d0ceef1SMatthias Ringwald       sam/drivers/pmc/pmc.c                              \
67*7d0ceef1SMatthias Ringwald       sam/drivers/pmc/sleep.c                            \
68*7d0ceef1SMatthias Ringwald       sam/drivers/tc/tc.c                                \
69*7d0ceef1SMatthias Ringwald       sam/drivers/uart/uart.c                            \
70*7d0ceef1SMatthias Ringwald       sam/drivers/usart/usart.c                          \
71*7d0ceef1SMatthias Ringwald       sam/utils/cmsis/samv71/source/templates/gcc/startup_samv71.c \
72*7d0ceef1SMatthias Ringwald       sam/utils/cmsis/samv71/source/templates/system_samv71.c \
73*7d0ceef1SMatthias Ringwald       sam/utils/syscalls/gcc/syscalls.c                  \
74*7d0ceef1SMatthias Ringwald
75*7d0ceef1SMatthias Ringwald# List of assembler source files.
76*7d0ceef1SMatthias RingwaldASSRCS =
77*7d0ceef1SMatthias Ringwald
78*7d0ceef1SMatthias Ringwald# List of include paths.
79*7d0ceef1SMatthias RingwaldINC_PATH = \
80*7d0ceef1SMatthias Ringwald       common/boards                                      \
81*7d0ceef1SMatthias Ringwald       common/services/clock                              \
82*7d0ceef1SMatthias Ringwald       common/services/gpio                               \
83*7d0ceef1SMatthias Ringwald       common/services/ioport                             \
84*7d0ceef1SMatthias Ringwald       common/services/delay                              \
85*7d0ceef1SMatthias Ringwald       common/services/serial                             \
86*7d0ceef1SMatthias Ringwald       common/services/serial/sam_uart                    \
87*7d0ceef1SMatthias Ringwald       common/utils                                       \
88*7d0ceef1SMatthias Ringwald       common/utils/stdio/stdio_serial                    \
89*7d0ceef1SMatthias Ringwald       sam/boards                                         \
90*7d0ceef1SMatthias Ringwald       sam/boards/samv71_xplained_ultra                   \
91*7d0ceef1SMatthias Ringwald       sam/drivers/matrix                                 \
92*7d0ceef1SMatthias Ringwald       sam/drivers/mpu                                    \
93*7d0ceef1SMatthias Ringwald       sam/drivers/pio                                    \
94*7d0ceef1SMatthias Ringwald       sam/drivers/pmc                                    \
95*7d0ceef1SMatthias Ringwald       sam/drivers/tc                                     \
96*7d0ceef1SMatthias Ringwald       sam/drivers/uart                                   \
97*7d0ceef1SMatthias Ringwald       sam/drivers/usart                                  \
98*7d0ceef1SMatthias Ringwald       sam/drivers/xdmac                                  \
99*7d0ceef1SMatthias Ringwald       sam/utils                                          \
100*7d0ceef1SMatthias Ringwald       sam/utils/cmsis/samv71/include                     \
101*7d0ceef1SMatthias Ringwald       sam/utils/cmsis/samv71/source/templates            \
102*7d0ceef1SMatthias Ringwald       sam/utils/fpu                                      \
103*7d0ceef1SMatthias Ringwald       sam/utils/header_files                             \
104*7d0ceef1SMatthias Ringwald       sam/utils/preprocessor                             \
105*7d0ceef1SMatthias Ringwald       thirdparty/CMSIS/Include                           \
106*7d0ceef1SMatthias Ringwald       thirdparty/CMSIS/Lib/GCC \
107*7d0ceef1SMatthias Ringwald       ..
108*7d0ceef1SMatthias Ringwald
109*7d0ceef1SMatthias RingwaldBTSTACK_ROOT = ../../..
110*7d0ceef1SMatthias RingwaldINC_PATH += ${BTSTACK_ROOT}/src/ble
111*7d0ceef1SMatthias RingwaldINC_PATH += ${BTSTACK_ROOT}/src/ble/gatt-service
112*7d0ceef1SMatthias RingwaldINC_PATH += ${BTSTACK_ROOT}/src/classic
113*7d0ceef1SMatthias RingwaldINC_PATH += ${BTSTACK_ROOT}/src
114*7d0ceef1SMatthias RingwaldINC_PATH += ${BTSTACK_ROOT}/3rd-party/micro-ecc
115*7d0ceef1SMatthias RingwaldINC_PATH += ${BTSTACK_ROOT}/platform/embedded
116*7d0ceef1SMatthias RingwaldINC_PATH += ${BTSTACK_ROOT}/chipset/atwilc3000
117*7d0ceef1SMatthias Ringwald
118*7d0ceef1SMatthias Ringwald# VPATH += ${BTSTACK_ROOT}/src
119*7d0ceef1SMatthias Ringwald# VPATH += ${BTSTACK_ROOT}/src/ble
120*7d0ceef1SMatthias Ringwald# VPATH += ${BTSTACK_ROOT}/src/ble/gatt-service
121*7d0ceef1SMatthias Ringwald# VPATH += ${BTSTACK_ROOT}/src/classic
122*7d0ceef1SMatthias Ringwald# VPATH += ${BTSTACK_ROOT}/platform/embedded
123*7d0ceef1SMatthias Ringwald# VPATH += ${BTSTACK_ROOT}/example
124*7d0ceef1SMatthias Ringwald# VPATH += ${BTSTACK_ROOT}/3rd-party/micro-ecc
125*7d0ceef1SMatthias Ringwald
126*7d0ceef1SMatthias RingwaldCSRCS += \
127*7d0ceef1SMatthias Ringwald	${BTSTACK_ROOT}/src/ad_parser.c \
128*7d0ceef1SMatthias Ringwald	${BTSTACK_ROOT}/src/ble/ancs_client.c \
129*7d0ceef1SMatthias Ringwald	${BTSTACK_ROOT}/src/ble/att_db.c \
130*7d0ceef1SMatthias Ringwald	${BTSTACK_ROOT}/src/ble/att_dispatch.c \
131*7d0ceef1SMatthias Ringwald	${BTSTACK_ROOT}/src/ble/att_server.c \
132*7d0ceef1SMatthias Ringwald	${BTSTACK_ROOT}/src/ble/gatt-service/battery_service_server.c \
133*7d0ceef1SMatthias Ringwald	${BTSTACK_ROOT}/src/btstack_linked_list.c \
134*7d0ceef1SMatthias Ringwald	${BTSTACK_ROOT}/src/btstack_memory.c \
135*7d0ceef1SMatthias Ringwald	${BTSTACK_ROOT}/src/btstack_memory_pool.c \
136*7d0ceef1SMatthias Ringwald	${BTSTACK_ROOT}/src/btstack_ring_buffer.c \
137*7d0ceef1SMatthias Ringwald	${BTSTACK_ROOT}/src/btstack_run_loop.c \
138*7d0ceef1SMatthias Ringwald	${BTSTACK_ROOT}/platform/embedded/btstack_run_loop_embedded.c \
139*7d0ceef1SMatthias Ringwald	${BTSTACK_ROOT}/platform/embedded/btstack_uart_block_embedded.c \
140*7d0ceef1SMatthias Ringwald	${BTSTACK_ROOT}/src/btstack_util.c \
141*7d0ceef1SMatthias Ringwald	${BTSTACK_ROOT}/src/ble/gatt-service/device_information_service_server.c \
142*7d0ceef1SMatthias Ringwald	${BTSTACK_ROOT}/src/ble/gatt_client.c \
143*7d0ceef1SMatthias Ringwald	${BTSTACK_ROOT}/src/hci.c \
144*7d0ceef1SMatthias Ringwald	${BTSTACK_ROOT}/src/hci_cmd.c \
145*7d0ceef1SMatthias Ringwald	${BTSTACK_ROOT}/src/hci_dump.c \
146*7d0ceef1SMatthias Ringwald	${BTSTACK_ROOT}/src/hci_transport_h4.c \
147*7d0ceef1SMatthias Ringwald	${BTSTACK_ROOT}/src/l2cap.c \
148*7d0ceef1SMatthias Ringwald	${BTSTACK_ROOT}/src/l2cap_signaling.c \
149*7d0ceef1SMatthias Ringwald	${BTSTACK_ROOT}/src/ble/le_device_db_memory.c \
150*7d0ceef1SMatthias Ringwald	${BTSTACK_ROOT}/src/ble/sm.c \
151*7d0ceef1SMatthias Ringwald	${BTSTACK_ROOT}/example/le_counter.c \
152*7d0ceef1SMatthias Ringwald	${BTSTACK_ROOT}/chipset/atwilc3000/btstack_chipset_atwilc3000.c \
153*7d0ceef1SMatthias Ringwald	${BTSTACK_ROOT}/chipset/atwilc3000/wilc3000_bt_firmware.c \
154*7d0ceef1SMatthias Ringwald
155*7d0ceef1SMatthias Ringwald	# ${BTSTACK_ROOT}/3rd-party/micro-ecc/uECC.c \
156*7d0ceef1SMatthias Ringwald
157*7d0ceef1SMatthias Ringwald# Additional search paths for libraries.
158*7d0ceef1SMatthias RingwaldLIB_PATH =  \
159*7d0ceef1SMatthias Ringwald       thirdparty/CMSIS/Lib/GCC
160*7d0ceef1SMatthias Ringwald
161*7d0ceef1SMatthias Ringwald# List of libraries to use during linking.
162*7d0ceef1SMatthias RingwaldLIBS =  \
163*7d0ceef1SMatthias Ringwald       arm_cortexM7lfsp_math_softfp                       \
164*7d0ceef1SMatthias Ringwald       m
165*7d0ceef1SMatthias Ringwald
166*7d0ceef1SMatthias Ringwald# Path relative to top level directory pointing to a linker script.
167*7d0ceef1SMatthias RingwaldLINKER_SCRIPT_FLASH = sam/utils/linker_scripts/samv71/samv71q21/gcc/flash.ld
168*7d0ceef1SMatthias RingwaldLINKER_SCRIPT_SRAM  = sam/utils/linker_scripts/samv71/samv71q21/gcc/sram.ld
169*7d0ceef1SMatthias Ringwald
170*7d0ceef1SMatthias Ringwald# Path relative to top level directory pointing to a linker script.
171*7d0ceef1SMatthias RingwaldDEBUG_SCRIPT_FLASH = sam/boards/samv71_xplained_ultra/debug_scripts/gcc/samv71_xplained_ultra_flash.gdb
172*7d0ceef1SMatthias RingwaldDEBUG_SCRIPT_SRAM  = sam/boards/samv71_xplained_ultra/debug_scripts/gcc/samv71_xplained_ultra_sram.gdb
173*7d0ceef1SMatthias Ringwald
174*7d0ceef1SMatthias Ringwald# Project type parameter: all, sram or flash
175*7d0ceef1SMatthias RingwaldPROJECT_TYPE        = flash
176*7d0ceef1SMatthias Ringwald
177*7d0ceef1SMatthias Ringwald# Additional options for debugging. By default the common Makefile.in will
178*7d0ceef1SMatthias Ringwald# add -g3.
179*7d0ceef1SMatthias RingwaldDBGFLAGS =
180*7d0ceef1SMatthias Ringwald
181*7d0ceef1SMatthias Ringwald# Application optimization used during compilation and linking:
182*7d0ceef1SMatthias Ringwald# -O0, -O1, -O2, -O3 or -Os
183*7d0ceef1SMatthias RingwaldOPTIMIZATION = -O1
184*7d0ceef1SMatthias Ringwald
185*7d0ceef1SMatthias Ringwald# Extra flags to use when archiving.
186*7d0ceef1SMatthias RingwaldARFLAGS =
187*7d0ceef1SMatthias Ringwald
188*7d0ceef1SMatthias Ringwald# Extra flags to use when assembling.
189*7d0ceef1SMatthias RingwaldASFLAGS =  \
190*7d0ceef1SMatthias Ringwald       -mfloat-abi=softfp                                 \
191*7d0ceef1SMatthias Ringwald       -mfpu=fpv5-sp-d16
192*7d0ceef1SMatthias Ringwald
193*7d0ceef1SMatthias Ringwald# Extra flags to use when compiling.
194*7d0ceef1SMatthias RingwaldCFLAGS =  \
195*7d0ceef1SMatthias Ringwald       -mfloat-abi=softfp                                 \
196*7d0ceef1SMatthias Ringwald       -mfpu=fpv5-sp-d16
197*7d0ceef1SMatthias Ringwald
198*7d0ceef1SMatthias Ringwald# Extra flags to use when preprocessing.
199*7d0ceef1SMatthias Ringwald#
200*7d0ceef1SMatthias Ringwald# Preprocessor symbol definitions
201*7d0ceef1SMatthias Ringwald#   To add a definition use the format "-D name[=definition]".
202*7d0ceef1SMatthias Ringwald#   To cancel a definition use the format "-U name".
203*7d0ceef1SMatthias Ringwald#
204*7d0ceef1SMatthias Ringwald# The most relevant symbols to define for the preprocessor are:
205*7d0ceef1SMatthias Ringwald#   BOARD      Target board in use, see boards/board.h for a list.
206*7d0ceef1SMatthias Ringwald#   EXT_BOARD  Optional extension board in use, see boards/board.h for a list.
207*7d0ceef1SMatthias RingwaldCPPFLAGS = \
208*7d0ceef1SMatthias Ringwald       -D ARM_MATH_CM7=true                               \
209*7d0ceef1SMatthias Ringwald       -D BOARD=SAMV71_XPLAINED_ULTRA                     \
210*7d0ceef1SMatthias Ringwald       -D __SAMV71Q21__                                   \
211*7d0ceef1SMatthias Ringwald       -D printf=iprintf                                  \
212*7d0ceef1SMatthias Ringwald       -D scanf=iscanf
213*7d0ceef1SMatthias Ringwald
214*7d0ceef1SMatthias Ringwald# Extra flags to use when linking
215*7d0ceef1SMatthias RingwaldLDFLAGS = \
216*7d0ceef1SMatthias Ringwald
217*7d0ceef1SMatthias Ringwald# Pre- and post-build commands
218*7d0ceef1SMatthias RingwaldPREBUILD_CMD =
219*7d0ceef1SMatthias RingwaldPOSTBUILD_CMD =
220