1
1
# ******************************************************************************
2
2
# CONFIGURE
3
3
# - SDK_PATH : path to SDK directory
4
- # - SRC_PATH : path to src folder
5
4
#
6
5
# - SD_NAME : e.g s132, s140
7
6
# - SD_VERSION : SoftDevice version e.g 6.0.0
8
7
# - SD_HEX : to bootloader hex binary
9
8
# ******************************************************************************
10
- SRC_PATH = src
11
9
12
10
SDK_PATH = lib/sdk/components
13
11
SDK11_PATH = lib/sdk11/components
@@ -21,7 +19,8 @@ SD_FILENAME = $(SD_NAME)_nrf52_$(SD_VERSION)
21
19
SD_API_PATH = $(SD_PATH ) /$(SD_FILENAME ) _API
22
20
SD_HEX = $(SD_PATH ) /$(SD_FILENAME ) _softdevice.hex
23
21
24
- LD_FILE = $(SRC_PATH ) /linker/$(MCU_SUB_VARIANT ) _$(SD_NAME ) _v$(word 1, $(subst ., ,$(SD_VERSION ) ) ) .ld
22
+ # linker by MCU and SoftDevice eg. nrf52840_s140_v6.ld
23
+ LD_FILE = linker/$(MCU_SUB_VARIANT ) _$(SD_NAME ) _v$(word 1, $(subst ., ,$(SD_VERSION ) ) ) .ld
25
24
26
25
MERGED_FNAME = $(OUTPUT_FILENAME ) _$(SD_NAME ) _$(SD_VERSION )
27
26
@@ -102,22 +101,18 @@ endif
102
101
# SOURCE FILES
103
102
# ******************************************************************************
104
103
105
- # src
106
- C_SRC += $(SRC_PATH ) /boards.c
107
- C_SRC += $(SRC_PATH ) /dfu_ble_svc.c
108
- C_SRC += $(SRC_PATH ) /dfu_init.c
109
- C_SRC += $(SRC_PATH ) /flash_nrf5x.c
110
- C_SRC += $(SRC_PATH ) /main.c
104
+ # all files in src
105
+ C_SRC += $(wildcard src/* .c)
111
106
112
107
# all sources files in specific board
113
- C_SRC += $(wildcard $( SRC_PATH ) /boards/$(BOARD ) /* .c)
108
+ C_SRC += $(wildcard src /boards/$(BOARD ) /* .c)
114
109
115
110
# nrfx
116
111
C_SRC += $(NRFX_PATH ) /drivers/src/nrfx_power.c
117
112
C_SRC += $(NRFX_PATH ) /drivers/src/nrfx_nvmc.c
118
113
C_SRC += $(NRFX_PATH ) /mdk/system_$(MCU_SUB_VARIANT ) .c
119
114
120
- # SDK 11 files
115
+ # SDK 11 files: serial + OTA DFU
121
116
C_SRC += $(SDK11_PATH ) /libraries/bootloader_dfu/bootloader.c
122
117
C_SRC += $(SDK11_PATH ) /libraries/bootloader_dfu/bootloader_settings.c
123
118
C_SRC += $(SDK11_PATH ) /libraries/bootloader_dfu/bootloader_util.c
@@ -130,7 +125,7 @@ C_SRC += $(SDK11_PATH)/drivers_nrf/pstorage/pstorage_raw.c
130
125
C_SRC += $(SDK11_PATH ) /ble/ble_services/ble_dfu/ble_dfu.c
131
126
C_SRC += $(SDK11_PATH ) /ble/ble_services/ble_dis/ble_dis.c
132
127
133
- # Latest SDK files
128
+ # Latest SDK files: peripheral drivers
134
129
C_SRC += $(SDK_PATH ) /libraries/timer/app_timer.c
135
130
C_SRC += $(SDK_PATH ) /libraries/scheduler/app_scheduler.c
136
131
C_SRC += $(SDK_PATH ) /libraries/util/app_error.c
@@ -152,11 +147,10 @@ IPATH += $(SDK_PATH)/drivers_nrf/common
152
147
IPATH += $(SDK_PATH ) /drivers_nrf/uart
153
148
154
149
else
155
- # src
156
- C_SRC += $(SRC_PATH ) /usb/usb_desc.c
157
- C_SRC += $(SRC_PATH ) /usb/usb.c
158
- C_SRC += $(SRC_PATH ) /usb/msc_uf2.c
159
- C_SRC += $(SRC_PATH ) /usb/uf2/ghostfat.c
150
+
151
+ # USB Application ( MSC + UF2 )
152
+ C_SRC += $(wildcard src/usb/* .c)
153
+ C_SRC += $(wildcard src/usb/uf2/* .c)
160
154
161
155
# TinyUSB stack
162
156
C_SRC += $(TUSB_PATH ) /portable/nordic/nrf5x/dcd_nrf5x.c
@@ -180,12 +174,12 @@ ASM_SRC = $(NRFX_PATH)/mdk/gcc_startup_$(MCU_SUB_VARIANT).S
180
174
# ******************************************************************************
181
175
182
176
# src
183
- IPATH += $( SRC_PATH )
184
- IPATH += $( SRC_PATH ) /boards/$(BOARD )
177
+ IPATH += src
178
+ IPATH += src /boards/$(BOARD )
185
179
186
- IPATH += $( SRC_PATH ) /cmsis/include
187
- IPATH += $( SRC_PATH ) /usb
188
- IPATH += $( SRC_PATH ) /boards
180
+ IPATH += src /cmsis/include
181
+ IPATH += src /usb
182
+ IPATH += src /boards
189
183
IPATH += $(TUSB_PATH )
190
184
191
185
# nrfx
@@ -257,7 +251,7 @@ CFLAGS += -DMK_BOOTLOADER_VERSION='($(word 1,$(_VER)) << 16) + ($(word 2,$(_VER)
257
251
258
252
# keep every function in separate section. This will allow linker to dump unused functions
259
253
LDFLAGS += -Xlinker -Map=$(BUILD ) /$(OUTPUT_FILENAME ) .map
260
- LDFLAGS += -mthumb -mabi=aapcs -L $( SRC_PATH ) /linker -T$(LD_FILE )
254
+ LDFLAGS += -mthumb -mabi=aapcs -Llinker -T$(LD_FILE )
261
255
LDFLAGS += -mcpu=cortex-m4
262
256
LDFLAGS += -mfloat-abi=hard -mfpu=fpv4-sp-d16
263
257
0 commit comments