Merged in f5soh/librepilot/update_credits (pull request #529)
[librepilot.git] / flight / targets / boards / nucleof303re / firmware / Makefile
blobf6d69f6073af2c8e724ed45ea7e77e471850d3e8
2 # Copyright (C) 2015-2016, The LibrePilot Project, http://www.librepilot.org
3 # Copyright (C) 2009-2013, The OpenPilot Team, http://www.openpilot.org
4 # Copyright (C) 2012, PhoenixPilot, http://github.com/PhoenixPilot
6 # This program is free software; you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License as published by
8 # the Free Software Foundation; either version 3 of the License, or
9 # (at your option) any later version.
11 # This program is distributed in the hope that it will be useful, but
12 # WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
13 # or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 # for more details.
16 # You should have received a copy of the GNU General Public License along
17 # with this program; if not, write to the Free Software Foundation, Inc.,
18 # 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19 #####
21 ifndef FLIGHT_MAKEFILE
22 $(error Top level Makefile must be used to build this target)
23 endif
25 include ../board-info.mk
26 include $(FLIGHT_ROOT_DIR)/make/firmware-defs.mk
28 # C++ support
29 USE_CXX = YES
31 # ARM DSP library
32 USE_DSP_LIB ?= NO
34 DEBUG = NO
36 # List of mandatory modules to include
37 MODULES += Sensors
38 MODULES += StateEstimation
39 MODULES += Stabilization
40 MODULES += ManualControl
41 MODULES += Receiver
42 MODULES += Actuator
43 MODULES += FirmwareIAP
44 #MODULES += PathPlanner
45 #MODULES += PathFollower
46 #MODULES += Osd/osdoutout
47 #MODULES += Logging
48 MODULES += Telemetry
49 #MODULES += Notify
51 OPTMODULES += Airspeed
52 OPTMODULES += AutoTune
53 OPTMODULES += GPS
54 OPTMODULES += TxPID
55 OPTMODULES += CameraStab
56 OPTMODULES += CameraControl
57 OPTMODULES += Battery
58 OPTMODULES += ComUsbBridge
59 OPTMODULES += UAVOMSPBridge
60 OPTMODULES += UAVOMavlinkBridge
61 OPTMODULES += UAVOFrSKYSensorHubBridge
63 SRC += $(FLIGHTLIB)/notification.c
65 # Include all camera options
66 CDEFS += -DUSE_INPUT_LPF -DUSE_GIMBAL_LPF -DUSE_GIMBAL_FF
68 # Some diagnostics
69 CDEFS += -DDIAG_TASKS
71 # Misc options
72 CFLAGS += -ffast-math
74 # List C source files here (C dependencies are automatically generated).
75 # Use file-extension c for "c-only"-files
76 ifndef TESTAPP
77 ## Application Core
78 SRC += ../pios_usb_board_data.c
79 SRC += $(OPMODULEDIR)/System/systemmod.c
80 CPPSRC += $(OPSYSTEM)/main.cpp
81 SRC += $(OPSYSTEM)/pios_board.c
82 SRC += $(FLIGHTLIB)/alarms.c
83 SRC += $(OPUAVTALK)/uavtalk.c
84 SRC += $(OPUAVOBJ)/uavobjectmanager.c
85 SRC += $(OPUAVOBJ)/uavobjectpersistence.c
86 SRC += $(OPUAVOBJ)/eventdispatcher.c
87 SRC += $(PIOSCOMMON)/pios_flashfs_logfs.c
88 SRC += $(PIOSCOMMON)/pios_flash_jedec.c
90 ## Misc library functions
91 SRC += $(FLIGHTLIB)/instrumentation.c
92 SRC += $(FLIGHTLIB)/paths.c
93 SRC += $(FLIGHTLIB)/plans.c
94 SRC += $(FLIGHTLIB)/WorldMagModel.c
95 SRC += $(FLIGHTLIB)/insgps13state.c
96 SRC += $(FLIGHTLIB)/auxmagsupport.c
97 SRC += $(FLIGHTLIB)/lednotification.c
99 ## UAVObjects
100 include ./UAVObjects.inc
101 SRC += $(UAVOBJSRC)
102 else
103 ## Test Code
104 SRC += $(OPTESTS)/test_common.c
105 SRC += $(OPTESTS)/$(TESTAPP).c
106 endif
108 # Optional component libraries
109 #include $(FLIGHTLIB)/rscode/library.mk
110 #include $(FLIGHTLIB)/PyMite/pymite.mk
112 include $(FLIGHT_ROOT_DIR)/make/apps-defs.mk
113 include $(FLIGHT_ROOT_DIR)/make/common-defs.mk