7 $(addprefix pg
/,$(notdir $(wildcard $(SRC_DIR
)/pg
/*.c
))) \
8 $(addprefix common
/,$(notdir $(wildcard $(SRC_DIR
)/common
/*.c
))) \
9 $(addprefix config
/,$(notdir $(wildcard $(SRC_DIR
)/config
/*.c
))) \
11 drivers
/buf_writer.c \
13 drivers
/bus_i2c_config.c \
14 drivers
/bus_i2c_busdev.c \
15 drivers
/bus_i2c_soft.c \
17 drivers
/bus_spi_config.c \
18 drivers
/bus_spi_pinconfig.c \
28 drivers
/serial_pinconfig.c \
29 drivers
/serial_uart.c \
30 drivers
/serial_uart_pinconfig.c \
31 drivers
/sound_beeper.c \
32 drivers
/stack_check.c \
34 drivers
/timer_common.c \
36 drivers
/transponder_ir_arcitimer.c \
37 drivers
/transponder_ir_ilap.c \
38 drivers
/transponder_ir_erlt.c \
46 interface
/tramp_protocol.c \
47 interface
/smartaudio_protocol.c \
51 io
/statusindicator.c \
54 scheduler
/scheduler.c \
55 sensors
/adcinternal.c \
59 target
/config_helper.c
62 io
/displayport_max7456.c \
63 osd_slave
/osd_slave_init.c \
68 fc/controlrate_profile.c \
69 drivers
/camera_control.c \
70 drivers
/accgyro
/gyro_sync.c \
71 drivers
/pwm_esc_detect.c \
72 drivers
/pwm_output.c \
74 drivers
/rx
/rx_xn297.c \
76 drivers
/serial_softserial.c \
87 flight
/mixer_tricopter.c \
90 flight
/servos_tricopter.c \
92 interface
/settings.c \
94 io
/serial_4way_avrootloader.c \
95 io
/serial_4way_stk500v2.c \
106 io
/spektrum_vtx_control.c \
112 sensors
/acceleration.c \
113 sensors
/boardalignment.c \
116 sensors
/gyroanalyse.c \
117 sensors
/initialisation.c \
118 blackbox
/blackbox.c \
119 blackbox
/blackbox_encoding.c \
120 blackbox
/blackbox_io.c \
122 cms
/cms_menu_blackbox.c \
123 cms
/cms_menu_builtin.c \
125 cms
/cms_menu_ledstrip.c \
126 cms
/cms_menu_misc.c \
128 cms
/cms_menu_power.c \
129 cms
/cms_menu_vtx_rtc6705.c \
130 cms
/cms_menu_vtx_smartaudio.c \
131 cms
/cms_menu_vtx_tramp.c \
132 drivers
/display_ug2864hsweg01.c \
133 drivers
/light_ws2811strip.c \
134 drivers
/rangefinder
/rangefinder_hcsr04.c \
135 drivers
/rangefinder
/rangefinder_lidartf.c \
136 drivers
/serial_escserial.c \
137 drivers
/vtx_common.c \
139 io
/displayport_max7456.c \
140 io
/displayport_msp.c \
141 io
/displayport_oled.c \
142 io
/displayport_rcdevice.c \
143 io
/displayport_srxl.c \
144 io
/displayport_crsf.c \
152 sensors
/barometer.c \
153 sensors
/rangefinder.c \
154 telemetry
/telemetry.c \
157 telemetry
/frsky_hub.c \
159 telemetry
/jetiexbus.c \
160 telemetry
/smartport.c \
162 telemetry
/mavlink.c \
163 telemetry
/msp_shared.c \
165 telemetry
/ibus_shared.c \
166 sensors
/esc_sensor.c \
170 io
/vtx_smartaudio.c \
174 COMMON_DEVICE_SRC
= \
176 $(DEVICE_STDPERIPH_SRC
)
178 ifeq ($(OSD_SLAVE
),yes
)
179 TARGET_FLAGS
:= -DUSE_OSD_SLAVE
$(TARGET_FLAGS
)
180 COMMON_SRC
:= $(COMMON_SRC
) $(OSD_SLAVE_SRC
) $(COMMON_DEVICE_SRC
)
182 COMMON_SRC
:= $(COMMON_SRC
) $(FC_SRC
) $(COMMON_DEVICE_SRC
)
185 ifeq ($(SIMULATOR_BUILD
),yes
)
186 TARGET_FLAGS
:= -DSIMULATOR_BUILD
$(TARGET_FLAGS
)
189 SPEED_OPTIMISED_SRC
:= ""
190 SIZE_OPTIMISED_SRC
:= ""
192 ifneq ($(TARGET
),$(filter $(TARGET
),$(F1_TARGETS
)))
193 SPEED_OPTIMISED_SRC
:= $(SPEED_OPTIMISED_SRC
) \
197 common
/typeconversion.c \
198 drivers
/accgyro
/accgyro_fake.c \
199 drivers
/accgyro
/accgyro_mpu.c \
200 drivers
/accgyro
/accgyro_mpu3050.c \
201 drivers
/accgyro
/accgyro_mpu6050.c \
202 drivers
/accgyro
/accgyro_mpu6500.c \
203 drivers
/accgyro
/accgyro_spi_bmi160.c \
204 drivers
/accgyro
/accgyro_spi_icm20689.c \
205 drivers
/accgyro
/accgyro_spi_mpu6000.c \
206 drivers
/accgyro
/accgyro_spi_mpu6500.c \
207 drivers
/accgyro
/accgyro_spi_mpu9250.c \
208 drivers
/accgyro_legacy
/accgyro_adxl345.c \
209 drivers
/accgyro_legacy
/accgyro_bma280.c \
210 drivers
/accgyro_legacy
/accgyro_l3g4200d.c \
211 drivers
/accgyro_legacy
/accgyro_l3gd20.c \
212 drivers
/accgyro_legacy
/accgyro_lsm303dlhc.c \
213 drivers
/accgyro_legacy
/accgyro_mma845x.c \
215 drivers
/buf_writer.c \
220 drivers
/pwm_output.c \
223 drivers
/serial_uart.c \
230 fc/runtime_config.c \
244 scheduler
/scheduler.c \
245 sensors
/acceleration.c \
246 sensors
/boardalignment.c \
248 sensors
/gyroanalyse.c \
250 $(DEVICE_STDPERIPH_SRC
) \
252 SIZE_OPTIMISED_SRC
:= $(SIZE_OPTIMISED_SRC
) \
253 bus_bst_stm32f30x.c \
254 drivers
/barometer
/barometer_bmp085.c \
255 drivers
/barometer
/barometer_bmp280.c \
256 drivers
/barometer
/barometer_fake.c \
257 drivers
/barometer
/barometer_ms5611.c \
258 drivers
/barometer
/barometer_lps.c \
259 drivers
/barometer
/barometer_qmp6988.c \
260 drivers
/bus_i2c_config.c \
261 drivers
/bus_spi_config.c \
262 drivers
/bus_spi_pinconfig.c \
263 drivers
/compass
/compass_ak8963.c \
264 drivers
/compass
/compass_ak8975.c \
265 drivers
/compass
/compass_fake.c \
266 drivers
/compass
/compass_hmc5883l.c \
267 drivers
/compass
/compass_qmc5883l.c \
268 drivers
/display_ug2864hsweg01.c \
270 drivers
/light_ws2811strip.c \
271 drivers
/light_ws2811strip_hal.c \
272 drivers
/light_ws2811strip_stdperiph.c \
273 drivers
/serial_escserial.c \
274 drivers
/serial_pinconfig.c \
275 drivers
/serial_tcp.c \
276 drivers
/serial_uart_init.c \
277 drivers
/serial_uart_pinconfig.c \
278 drivers
/serial_usb_vcp.c \
279 drivers
/transponder_ir_io_hal.c \
280 drivers
/transponder_ir_io_stdperiph.c \
281 drivers
/vtx_rtc6705_soft_spi.c \
282 drivers
/vtx_rtc6705.c \
283 drivers
/vtx_common.c \
285 config
/config_eeprom.c \
287 config
/config_streamer.c \
290 interface
/settings.c \
295 io
/serial_4way_avrootloader.c \
296 io
/serial_4way_stk500v2.c \
297 io
/transponder_ir.c \
300 cms
/cms_menu_blackbox.c \
301 cms
/cms_menu_builtin.c \
303 cms
/cms_menu_ledstrip.c \
304 cms
/cms_menu_misc.c \
306 cms
/cms_menu_power.c \
307 cms
/cms_menu_vtx_rtc6705.c \
308 cms
/cms_menu_vtx_smartaudio.c \
309 cms
/cms_menu_vtx_tramp.c \
313 io
/vtx_smartaudio.c \
316 io
/spektrum_vtx_control.c \
319 # F4 and F7 optimizations
320 ifneq ($(TARGET
),$(filter $(TARGET
),$(F3_TARGETS
)))
321 SPEED_OPTIMISED_SRC
:= $(SPEED_OPTIMISED_SRC
) \
322 drivers
/bus_i2c_hal.c \
323 drivers
/bus_spi_ll.c \
325 drivers
/pwm_output_dshot.c \
326 drivers
/pwm_output_dshot_hal.c
330 # check if target.mk supplied
331 SRC
:= $(STARTUP_SRC
) $(MCU_COMMON_SRC
) $(TARGET_SRC
) $(VARIANT_SRC
)
335 INCLUDE_DIRS
+= $(DSP_LIB
)/Include
337 SRC
+= $(DSP_LIB
)/Source
/BasicMathFunctions
/arm_mult_f32.c
338 SRC
+= $(DSP_LIB
)/Source
/TransformFunctions
/arm_rfft_fast_f32.c
339 SRC
+= $(DSP_LIB
)/Source
/TransformFunctions
/arm_cfft_f32.c
340 SRC
+= $(DSP_LIB
)/Source
/TransformFunctions
/arm_rfft_fast_init_f32.c
341 SRC
+= $(DSP_LIB
)/Source
/TransformFunctions
/arm_cfft_radix8_f32.c
342 SRC
+= $(DSP_LIB
)/Source
/CommonTables
/arm_common_tables.c
344 SRC
+= $(DSP_LIB
)/Source
/ComplexMathFunctions
/arm_cmplx_mag_f32.c
345 SRC
+= $(DSP_LIB
)/Source
/StatisticsFunctions
/arm_max_f32.c
347 SRC
+= $(wildcard $(DSP_LIB
)/Source
/*/*.S
)
350 ifneq ($(filter ONBOARDFLASH
,$(FEATURES
)),)
353 drivers
/flash_m25p16.c \
354 drivers
/flash_w25m.c \
363 SRC
:= $(filter-out $(MCU_EXCLUDES
), $(SRC
))
365 ifneq ($(filter SDCARD
,$(FEATURES
)),)
368 drivers
/sdcard_standard.c \
369 io
/asyncfatfs
/asyncfatfs.c \
370 io
/asyncfatfs
/fat_standard.c \
374 ifneq ($(filter SDIO
,$(FEATURES
)),)
376 drivers
/sdcard_sdio_baremetal.c \
377 drivers
/sdcard_standard.c \
378 io
/asyncfatfs
/asyncfatfs.c \
379 io
/asyncfatfs
/fat_standard.c \
384 ifneq ($(filter VCP
,$(FEATURES
)),)
388 ifneq ($(filter MSC
,$(FEATURES
)),)
391 # end target specific make file checks
393 # Search path and source files for the ST stdperiph library
394 VPATH
:= $(VPATH
):$(STDPERIPH_DIR
)/src