1
0
mirror of https://bitbucket.org/librepilot/librepilot.git synced 2024-12-01 09:24:10 +01:00

Final step: lot of small fixes, last commit in this commit series

This is the first cleanup pass through makefiles and pios.
Probably it is difficult to track changes due to the nature of them.
I would recommend to look at resulting files and compiled code instead.

NOTE: original branch was rebased and lot of conflicts were fixed on
the way. So do not expect that every commit in this series will be
buildable (unlike original branch). Only final result was tested.

The main goal was to remove as much duplication of code (and copy/paste
errors) as possible, moving common parts out of Makefiles. It still is
not perfect, and mostly no code changes made - Makefiles and #ifdefs only.
But please while testing make sure that all code works as before, and no
modules/options are missed by accident.

Brief list of changes:
- Moved common parts of Makefiles into the set of *.mk files.
- Changed method of passing common vars from top Makefile to lower ones.
- Some pios cleanup, mostly #ifdefs, and all pios_config.h files.
- Many obsolete files removed (for instance, AHRS files, op_config.h).
- Many obsolete or unused macros removed or fixed/renamed (ALL_DIGNOSTICS).
- Unified pios_config.h template. Please don't remove lines for board
  configs, only comment/uncomment them. Adding new PIOS options, please
  propagate them to all board files keeping the same order.
- Some formatting, spacing, indentation (no line endings change yet).
- Some cosmetic fixes (no more C:\X\Y\filename.c printings on Windows).
- Added some library.mk files to move libs into AR achives later.
- EntireFlash target now uses cross-platform python script to generate bin
  files. So it works on all supported platforms: Linux, OSX, Windows.
- Top level packaging is completely rewritten. Now it is a part of top
  Makefile. As such, all dependencies are checked and accounted, no
  more 'make -j' problems should occur.
- Default GCS_BUILD_CONF is release now, may be changed if necessary
  using 'make GCS_BUILD_CONF=debug gcs'.
- GCS build paths are separated into debug and release, so no more obj
  file clashes. Packaging system supports only release builds.
- New target is introduced: 'clean_package'. Now 'make package' does not
  clean build directory. Use clean_package instead for distributable builds.
- Targets like 'all', 'opfw_resource', etc now will print extra contex
  in parallel builds too.
- If any of 'package', 'clean_package', 'opfw_resource' targets are given
  on command line, GCS build will depend on the resource, so all fw_*.opfw
  targets will be built and embedded into GCS. By default GCS does not
  depend on resource, and will be built w/o firmware (unless the resource
  files already exist and the Qt resource file is generated).
- fw_simposix (ELF executable) is now packaged for linux. Run'n'play!
- Make help is refined and is now up to date.

Still broken:
- UnitTests, should be fixed
- SimPosix: buildable, but should be reworked.

Next planned passes to do:
- toolchain bootstrapping and packaging (including windows - WIP)
- CMSIS/StdPeriph lib cleanup
- more PIOS cleanup
- move libs into AR archives to save build time
- sim targets refactir and cleanup
- move android-related directories under <top>/android
- unit test targets fix
- source code line ending changes (there are many different, were not changed)
- coding style

Merging this, please use --no-ff git option to make it the real commit point

Conflicts:
	A lot of... :-)
This commit is contained in:
Oleg Semyonov 2013-03-24 13:02:08 +02:00
parent 151bd73bda
commit 8f977a4411
35 changed files with 286 additions and 243 deletions

View File

@ -172,7 +172,7 @@ By default a lot of diagnostic objects that were enabled by default are now
disabled in the build. This include TaskInfo (and all the FreeRTOS options
that provide that debugging information). Also MixerStatus, I2CStatus,
WatchdogStatus and RateDesired. These can be reenabled for debugging with
-DDIAGNOSTICS.
-DDIAG_ALL.
2011-08-04
Fixed packaging aesthetic issues. Also avoid runtime issues on OSX Lion by

View File

@ -105,7 +105,7 @@ export GIT := git
export PYTHON := python
export INSTALL := install
# version-info cmd to extract some repository data
# Command to extract version info data from the repository and source tree
export VERSION_INFO := $(PYTHON) "$(ROOT_DIR)/make/scripts/version-info.py" --path="$(ROOT_DIR)"
# Test if quotes are needed for the echo-command
@ -253,7 +253,7 @@ export DOXYGENDIR := $(ROOT_DIR)/flight/Doc/Doxygen
export OPUAVSYNTHDIR := $(BUILD_DIR)/uavobject-synthetics/flight
# Define supported board lists
ALL_BOARDS := coptercontrol pipxtreme revolution revomini simposix osd
ALL_BOARDS := coptercontrol pipxtreme revolution revomini osd simposix
ALL_BOARDS_BU := coptercontrol pipxtreme simposix
# Friendly names of each board (used to find source tree)
@ -261,16 +261,16 @@ coptercontrol_friendly := CopterControl
pipxtreme_friendly := PipXtreme
revolution_friendly := Revolution
revomini_friendly := RevoMini
simposix_friendly := SimPosix
osd_friendly := OSD
simposix_friendly := SimPosix
# Short names of each board (used to display board name in parallel builds)
coptercontrol_short := 'cc '
pipxtreme_short := 'pipx'
revolution_short := 'revo'
revomini_short := 'rm '
simposix_short := 'posx'
osd_short := 'osd '
simposix_short := 'posx'
# SimPosix only builds on Linux so drop it from the list for
# all other platforms.
@ -841,7 +841,7 @@ endef
# and call platform-specific packaging script
.PHONY: package
package: all_fw all_ground uavobjects_matlab
$(V1) $(ECHO) "Packaging for $(UNAME) $(ARCH) into $(call toprel, $(PACKAGE_DIR)) directory"
@$(ECHO) "Packaging for $(UNAME) $(ARCH) into $(call toprel, $(PACKAGE_DIR)) directory"
$(V1) [ ! -d "$(PACKAGE_DIR)" ] || $(RM) -rf "$(PACKAGE_DIR)"
$(V1) $(MKDIR) -p "$(PACKAGE_DIR)/firmware"
$(foreach fw_targ, $(PACKAGE_FW_TARGETS), $(call COPY_FW_FILES,$(fw_targ),.opfw,.opfw))

View File

@ -47,7 +47,7 @@ int32_t TaskMonitorInitialize(void)
lock = xSemaphoreCreateRecursiveMutex();
memset(handles, 0, sizeof(xTaskHandle)*TASKINFO_RUNNING_NUMELEM);
lastMonitorTime = 0;
#if defined(DIAG_TASKS)
#ifdef DIAG_TASKS
lastMonitorTime = portGET_RUN_TIME_COUNTER_VALUE();
#endif
return 0;
@ -104,7 +104,7 @@ bool TaskMonitorQueryRunning(TaskInfoRunningElem task)
*/
void TaskMonitorUpdateAll(void)
{
#if defined(DIAG_TASKS)
#ifdef DIAG_TASKS
TaskInfoData data;
int n;

View File

@ -128,7 +128,7 @@ int32_t ActuatorInitialize()
// Primary output of this module
ActuatorCommandInitialize();
#if defined(MIXERSTATUS_DIAGNOSTICS)
#ifdef DIAG_MIXERSTATUS
// UAVO only used for inspecting the internal status of the mixer during debug
MixerStatusInitialize();
#endif
@ -218,7 +218,7 @@ static void actuatorTask(void* parameters)
ActuatorDesiredGet(&desired);
ActuatorCommandGet(&command);
#if defined(MIXERSTATUS_DIAGNOSTICS)
#ifdef DIAG_MIXERSTATUS
MixerStatusGet(&mixerStatus);
#endif
int nMixers = 0;
@ -379,7 +379,7 @@ static void actuatorTask(void* parameters)
// Update in case read only (eg. during servo configuration)
ActuatorCommandGet(&command);
#if defined(MIXERSTATUS_DIAGNOSTICS)
#ifdef DIAG_MIXERSTATUS
MixerStatusSet(&mixerStatus);
#endif

View File

@ -120,7 +120,7 @@ int32_t StabilizationInitialize()
// Initialize variables
StabilizationSettingsInitialize();
ActuatorDesiredInitialize();
#if defined(RATEDESIRED_DIAGNOSTICS)
#ifdef DIAG_RATEDESIRED
RateDesiredInitialize();
#endif
@ -173,7 +173,7 @@ static void stabilizationTask(void* parameters)
StabilizationDesiredGet(&stabDesired);
AttitudeActualGet(&attitudeActual);
GyrosGet(&gyrosData);
#if defined(RATEDESIRED_DIAGNOSTICS)
#ifdef DIAG_RATEDESIRED
RateDesiredGet(&rateDesired);
#endif
@ -350,7 +350,7 @@ static void stabilizationTask(void* parameters)
if (settings.VbarPiroComp == STABILIZATIONSETTINGS_VBARPIROCOMP_TRUE)
stabilization_virtual_flybar_pirocomp(gyro_filtered[2], dT);
#if defined(RATEDESIRED_DIAGNOSTICS)
#ifdef DIAG_RATEDESIRED
RateDesiredSet(&rateDesired);
#endif

View File

@ -92,7 +92,7 @@ static void hwSettingsUpdatedCb(UAVObjEvent * ev);
static void updateStats();
static void updateSystemAlarms();
static void systemTask(void *parameters);
#if defined(I2C_WDG_STATS_DIAGNOSTICS)
#ifdef DIAG_I2C_WDG_STATS
static void updateI2Cstats();
static void updateWDGstats();
#endif
@ -125,10 +125,10 @@ int32_t SystemModInitialize(void)
SystemStatsInitialize();
FlightStatusInitialize();
ObjectPersistenceInitialize();
#if defined(DIAG_TASKS)
#ifdef DIAG_TASKS
TaskInfoInitialize();
#endif
#if defined(I2C_WDG_STATS_DIAGNOSTICS)
#ifdef DIAG_I2C_WDG_STATS
I2CStatsInitialize();
WatchdogStatusInitialize();
#endif
@ -181,12 +181,12 @@ static void systemTask(void *parameters)
// Update the system alarms
updateSystemAlarms();
#if defined(I2C_WDG_STATS_DIAGNOSTICS)
#ifdef DIAG_I2C_WDG_STATS
updateI2Cstats();
updateWDGstats();
#endif
#if defined(DIAG_TASKS)
#ifdef DIAG_TASKS
// Update the task status object
TaskMonitorUpdateAll();
#endif
@ -334,7 +334,7 @@ static void hwSettingsUpdatedCb(UAVObjEvent * ev)
/**
* Called periodically to update the I2C statistics
*/
#if defined(I2C_WDG_STATS_DIAGNOSTICS)
#ifdef DIAG_I2C_WDG_STATS
static void updateI2Cstats()
{
#if defined(PIOS_INCLUDE_I2C)

View File

@ -288,14 +288,12 @@ extern uint32_t pios_rfm22b_id;
//-------------------------
// Packet Handler
//-------------------------
#if defined(PIOS_INCLUDE_PACKET_HANDLER)
extern uint32_t pios_packet_handler;
#define PIOS_PACKET_HANDLER (pios_packet_handler)
#define PIOS_PH_MAX_PACKET 255
#define PIOS_PH_WIN_SIZE 3
#define PIOS_PH_MAX_CONNECTIONS 1
#define RS_ECC_NPARITY 4
#endif /* PIOS_INCLUDE_PACKET_HANDLER */
//-------------------------
// Reed-Solomon ECC

View File

@ -8,7 +8,7 @@ EXTRAINCDIRS += $(CMSIS2_DIR)Include
# Rules to build the ARM DSP library
ifeq ($(USE_DSP_LIB), YES)
DSPLIB_NAME := dsp
CMSIS_DSPLIB := $(CMSIS2_DIR)/DSP_Lib/Source
CMSIS_DSPLIB := $(CMSIS2_DIR)DSP_Lib/Source
# Compile all files into output directory
DSPLIB_SRC := $(wildcard $(CMSIS_DSPLIB)/*/*.c)

View File

@ -1,5 +1,5 @@
#
# Rules to (help) build the F1xx device support.
# Rules to (help) build the F10x device support.
#
# Directory containing this makefile
@ -12,7 +12,6 @@ LINKER_SCRIPTS_PATH = $(PIOS_DEVLIB)
CDEFS += -DSTM32F10X -DSTM32F10X_$(MODEL)
CDEFS += -DUSE_STDPERIPH_DRIVER
CDEFS += -DARM_MATH_CM3
ARCHFLAGS += -mcpu=cortex-m3
# Board-specific startup files
@ -22,6 +21,7 @@ ASRC += $(PIOS_DEVLIB)startup_stm32f10x_$(MODEL)$(MODEL_SUFFIX).S
SRC += $(wildcard $(PIOS_DEVLIB)*.c)
# CMSIS for the F1
include $(PIOS)/Common/Libraries/CMSIS2/library.mk
CMSIS_DIR = $(PIOS_DEVLIB)Libraries/CMSIS/Core/CM3
SRC += $(CMSIS_DIR)/core_cm3.c
SRC += $(CMSIS_DIR)/system_stm32f10x.c

View File

@ -16,6 +16,7 @@ CDEFS += -DSTM32F4XX
CDEFS += -DSYSCLK_FREQ=$(SYSCLK_FREQ)
CDEFS += -DHSE_VALUE=$(OSCILLATOR_FREQ)
CDEFS += -DUSE_STDPERIPH_DRIVER
CDEFS += -DARM_MATH_CM4 -D__FPU_PRESENT=1
ARCHFLAGS += -mcpu=cortex-m4 -march=armv7e-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard
# PIOS device library source and includes

View File

@ -71,12 +71,6 @@
/* PIOS common functions */
#include <pios_crc.h>
/* PIOS bootloader helper */
#ifdef PIOS_INCLUDE_BL_HELPER
/* #define PIOS_INCLUDE_BL_HELPER_WRITE_SUPPORT */
#include <pios_bl_helper.h>
#endif
/* PIOS FreeRTOS support */
#ifdef PIOS_INCLUDE_FREERTOS
#include "FreeRTOS.h"
@ -85,6 +79,12 @@
#include "semphr.h"
#endif
/* PIOS bootloader helper */
#ifdef PIOS_INCLUDE_BL_HELPER
/* #define PIOS_INCLUDE_BL_HELPER_WRITE_SUPPORT */
#include <pios_bl_helper.h>
#endif
/* PIOS system functions */
#ifdef PIOS_INCLUDE_DELAY
#include <pios_delay.h>
@ -220,6 +220,10 @@
#include <pios_ppm.h>
#endif
#ifdef PIOS_INCLUDE_PPM_FLEXI
/* PPM on CC flexi port */
#endif
#ifdef PIOS_INCLUDE_DSM
#include <pios_dsm.h>
#endif
@ -232,6 +236,11 @@
/* only priv header */
#endif
/* PIOS abstract receiver interface */
#ifdef PIOS_INCLUDE_RCVR
#include <pios_rcvr.h>
#endif
/* PIOS common peripherals */
#ifdef PIOS_INCLUDE_LED
#include <pios_led.h>
@ -271,19 +280,17 @@
#include <pios_eeprom.h>
#endif
/* PIOS Radio modules */
/* PIOS radio modules */
#ifdef PIOS_INCLUDE_RFM22B
/* #define PIOS_INCLUDE_PACKET_HANDLER */
/* #define PIOS_INCLUDE_PPM_OUT */
/* #define PIOS_RFM22B_DEBUG_ON_TELEM */
#include <pios_rfm22b.h>
#ifdef PIOS_INCLUDE_RFM22B_COM
#include <pios_rfm22b_com.h>
#endif
#ifdef PIOS_INCLUDE_RFM22B_RCVR
#include <pios_rfm22b_rcvr.h>
#endif
#endif /* PIOS_INCLUDE_RFM22B */
/* PIOS misc peripherals */
@ -299,11 +306,6 @@
#include <pios_udp.h>
#endif
/* PIOS abstract receiver interface */
#ifdef PIOS_INCLUDE_RCVR
#include <pios_rcvr.h>
#endif
/* PIOS abstract comms interface with options */
#ifdef PIOS_INCLUDE_COM
/* #define PIOS_INCLUDE_COM_MSG */
@ -320,6 +322,9 @@
#include <pios_com.h>
#endif
/* Stabilization options */
/* #define PIOS_QUATERNION_STABILIZATION */
/* Performance counters */
/* #define IDLE_COUNTS_PER_SEC_AT_NO_LOAD 995998 */

View File

@ -1,3 +1 @@
Check the wiki
Check the wiki: http://wiki.openpilot.org/display/Doc/OpenPilot+Developer+Manual

View File

@ -23,6 +23,9 @@ endif
include $(ROOT_DIR)/make/boards/$(BOARD_NAME)/board-info.mk
include $(ROOT_DIR)/make/firmware-defs.mk
# ARM DSP library
override USE_DSP_LIB := NO
# Paths
TOPDIR = .
OPSYSTEM = $(TOPDIR)

View File

@ -66,14 +66,8 @@ ifndef TESTAPP
SRC += $(OPUAVTALK)/uavtalk.c
SRC += $(OPUAVOBJ)/uavobjectmanager.c
SRC += $(OPUAVOBJ)/eventdispatcher.c
else
## Test Code
SRC += $(OPTESTS)/test_common.c
SRC += $(OPTESTS)/$(TESTAPP).c
endif
## UAVObjects
ifndef TESTAPP
## UAVObjects
SRC += $(OPUAVSYNTHDIR)/accessorydesired.c
SRC += $(OPUAVSYNTHDIR)/objectpersistence.c
SRC += $(OPUAVSYNTHDIR)/gcstelemetrystats.c
@ -114,6 +108,10 @@ ifndef TESTAPP
SRC += $(OPUAVSYNTHDIR)/txpidsettings.c
SRC += $(OPUAVSYNTHDIR)/airspeedactual.c
SRC += $(OPUAVSYNTHDIR)/mpu6000settings.c
else
## Test Code
SRC += $(OPTESTS)/test_common.c
SRC += $(OPTESTS)/$(TESTAPP).c
endif
include $(ROOT_DIR)/make/apps-defs.mk

View File

@ -76,7 +76,7 @@ NVIC value of 255. */
#endif
/* Enable run time stats collection */
#if defined(DIAG_TASKS)
#ifdef DIAG_TASKS
#define configCHECK_FOR_STACK_OVERFLOW 2
#define configGENERATE_RUN_TIME_STATS 1

View File

@ -39,8 +39,14 @@
/* #define PIOS_INCLUDE_DEBUG_CONSOLE */
/* #define DEBUG_LEVEL 0 */
/* PIOS system functions */
/* PIOS FreeRTOS support */
#define PIOS_INCLUDE_FREERTOS
/* PIOS bootloader helper */
#define PIOS_INCLUDE_BL_HELPER
/* #define PIOS_INCLUDE_BL_HELPER_WRITE_SUPPORT */
/* PIOS system functions */
#define PIOS_INCLUDE_DELAY
#define PIOS_INCLUDE_INITCALL
#define PIOS_INCLUDE_SYS
@ -81,10 +87,14 @@
/* PIOS receiver drivers */
#define PIOS_INCLUDE_PWM
#define PIOS_INCLUDE_PPM
#define PIOS_INCLUDE_PPM_FLEXI
#define PIOS_INCLUDE_DSM
#define PIOS_INCLUDE_SBUS
#define PIOS_INCLUDE_GCSRCVR
/* PIOS abstract receiver interface */
#define PIOS_INCLUDE_RCVR
/* PIOS common peripherals */
#define PIOS_INCLUDE_LED
#define PIOS_INCLUDE_IAP
@ -98,15 +108,19 @@
#define PIOS_INCLUDE_FLASH_SECTOR_SETTINGS
/* #define FLASH_FREERTOS */
/* #define PIOS_INCLUDE_FLASH_EEPROM */
/* PIOS radio modules */
/* #define PIOS_INCLUDE_RFM22B */
/* #define PIOS_INCLUDE_PACKET_HANDLER */
/* #define PIOS_INCLUDE_RFM22B_COM */
/* #define PIOS_INCLUDE_RFM22B_RCVR */
/* #define PIOS_INCLUDE_PPM_OUT */
/* #define PIOS_RFM22B_DEBUG_ON_TELEM */
/* PIOS misc peripherals */
/* #define PIOS_INCLUDE_VIDEO */
/* #define PIOS_INCLUDE_WAVE */
/* #define PIOS_INCLUDE_UDP */
/* PIOS abstract receiver interface */
#define PIOS_INCLUDE_RCVR
/* PIOS abstract comms interface with options */
#define PIOS_INCLUDE_COM
/* #define PIOS_INCLUDE_COM_MSG */
@ -121,9 +135,8 @@
#define PIOS_INCLUDE_GPS_UBX_PARSER
/* #define PIOS_GPS_SETS_HOMELOCATION */
/* PIOS bootloader helper */
#define PIOS_INCLUDE_BL_HELPER
/* #define PIOS_INCLUDE_BL_HELPER_WRITE_SUPPORT */
/* Stabilization options */
/* #define PIOS_QUATERNION_STABILIZATION */
/* Performance counters */
#define IDLE_COUNTS_PER_SEC_AT_NO_LOAD 1995998
@ -144,12 +157,12 @@
#define PIOS_TELEM_STACK_SIZE 500
#define PIOS_EVENTDISPATCHER_STACK_SIZE 130
/* Stabilization options */
/* #define PIOS_QUATERNION_STABILIZATION */
/* This can't be too high to stop eventdispatcher thread overflowing */
#define PIOS_EVENTDISAPTCHER_QUEUE 10
/* Revolution series */
/* #define REVOLUTION */
#endif /* PIOS_CONFIG_H */
/**
* @}

View File

@ -23,6 +23,9 @@ endif
include $(ROOT_DIR)/make/boards/$(BOARD_NAME)/board-info.mk
include $(ROOT_DIR)/make/firmware-defs.mk
# ARM DSP library
override USE_DSP_LIB := NO
# List of mandatory modules to include
MODULES += Osd/osdgen
MODULES += Osd/osdinput
@ -60,16 +63,11 @@ ifndef TESTAPP
SRC += $(OPSYSTEM)/cm3_fault_handlers.c
#endif
## Misc library functions
SRC += $(FLIGHTLIB)/printf2.c
SRC += $(FLIGHTLIB)/WorldMagModel.c
else
## Test Code
SRC += $(OPTESTS)/test_common.c
SRC += $(OPTESTS)/$(TESTAPP).c
endif
## UAVObjects
ifndef TESTAPP
## UAVObjects
SRC += $(OPUAVSYNTHDIR)/objectpersistence.c
SRC += $(OPUAVSYNTHDIR)/gcstelemetrystats.c
SRC += $(OPUAVSYNTHDIR)/flighttelemetrystats.c
@ -92,7 +90,12 @@ ifndef TESTAPP
SRC += $(OPUAVSYNTHDIR)/osdsettings.c
SRC += $(OPUAVSYNTHDIR)/baroaltitude.c
SRC += $(OPUAVSYNTHDIR)/magnetometer.c
else
## Test Code
SRC += $(OPTESTS)/test_common.c
SRC += $(OPTESTS)/$(TESTAPP).c
endif
# Optional component libraries
include $(PIOS)/Common/Libraries/dosfs/library.mk

View File

@ -39,8 +39,14 @@
/* #define PIOS_INCLUDE_DEBUG_CONSOLE */
/* #define DEBUG_LEVEL 0 */
/* PIOS system functions */
/* PIOS FreeRTOS support */
#define PIOS_INCLUDE_FREERTOS
/* PIOS bootloader helper */
#define PIOS_INCLUDE_BL_HELPER
/* #define PIOS_INCLUDE_BL_HELPER_WRITE_SUPPORT */
/* PIOS system functions */
#define PIOS_INCLUDE_DELAY
#define PIOS_INCLUDE_INITCALL
#define PIOS_INCLUDE_SYS
@ -81,10 +87,14 @@
/* PIOS receiver drivers */
/* #define PIOS_INCLUDE_PWM */
/* #define PIOS_INCLUDE_PPM */
/* #define PIOS_INCLUDE_PPM_FLEXI */
/* #define PIOS_INCLUDE_DSM */
/* #define PIOS_INCLUDE_SBUS */
/* #define PIOS_INCLUDE_GCSRCVR */
/* PIOS abstract receiver interface */
/* #define PIOS_INCLUDE_RCVR */
/* PIOS common peripherals */
#define PIOS_INCLUDE_LED
#define PIOS_INCLUDE_IAP
@ -98,15 +108,18 @@
/* #define PIOS_INCLUDE_FLASH_SECTOR_SETTINGS */
/* #define FLASH_FREERTOS */
/* #define PIOS_INCLUDE_FLASH_EEPROM */
/* PIOS radio modules */
/* #define PIOS_INCLUDE_RFM22B */
/* #define PIOS_INCLUDE_PACKET_HANDLER */
/* #define PIOS_INCLUDE_RFM22B_COM */
/* #define PIOS_INCLUDE_RFM22B_RCVR */
/* #define PIOS_INCLUDE_PPM_OUT */
/* #define PIOS_RFM22B_DEBUG_ON_TELEM */
#define PIOS_INCLUDE_VIDEO
/* #define PIOS_INCLUDE_WAVE */
/* #define PIOS_INCLUDE_UDP */
/* PIOS abstract receiver interface */
/* #define PIOS_INCLUDE_RCVR */
/* PIOS abstract comms interface with options */
#define PIOS_INCLUDE_COM
/* #define PIOS_INCLUDE_COM_MSG */
@ -121,9 +134,8 @@
#define PIOS_INCLUDE_GPS_UBX_PARSER
#define PIOS_GPS_SETS_HOMELOCATION
/* PIOS bootloader helper */
#define PIOS_INCLUDE_BL_HELPER
/* #define PIOS_INCLUDE_BL_HELPER_WRITE_SUPPORT */
/* Stabilization options */
#define PIOS_QUATERNION_STABILIZATION
/* Performance counters */
#define IDLE_COUNTS_PER_SEC_AT_NO_LOAD 8379692
@ -144,9 +156,6 @@
/* #define PIOS_TELEM_STACK_SIZE 500 */
/* #define PIOS_EVENTDISPATCHER_STACK_SIZE 130 */
/* Stabilization options */
#define PIOS_QUATERNION_STABILIZATION
/* This can't be too high to stop eventdispatcher thread overflowing */
/* #define PIOS_EVENTDISAPTCHER_QUEUE 10 */

View File

@ -23,6 +23,9 @@ endif
include $(ROOT_DIR)/make/boards/$(BOARD_NAME)/board-info.mk
include $(ROOT_DIR)/make/firmware-defs.mk
# ARM DSP library
override USE_DSP_LIB := NO
# List of mandatory modules to include
MODULES += RadioComBridge
@ -40,18 +43,16 @@ ifndef TESTAPP
SRC += $(OPUAVTALK)/uavtalk.c
SRC += $(OPUAVOBJ)/uavobjectmanager.c
SRC += $(OPUAVOBJ)/eventdispatcher.c
else
## Test Code
SRC += $(OPTESTS)/test_common.c
SRC += $(OPTESTS)/$(TESTAPP).c
endif
## UAVObjects
ifndef TESTAPP
## UAVObjects
SRC += $(OPUAVSYNTHDIR)/gcsreceiver.c
SRC += $(OPUAVSYNTHDIR)/oplinkstatus.c
SRC += $(OPUAVSYNTHDIR)/oplinksettings.c
SRC += $(OPUAVSYNTHDIR)/objectpersistence.c
else
## Test Code
SRC += $(OPTESTS)/test_common.c
SRC += $(OPTESTS)/$(TESTAPP).c
endif
# Optional component libraries

View File

@ -76,7 +76,7 @@ NVIC value of 255. */
#endif
/* Enable run time stats collection */
#if defined(STACK_DIAGNOSTICS)
#if defined(DIAG_STACK)
#define configCHECK_FOR_STACK_OVERFLOW 2
#define configGENERATE_RUN_TIME_STATS 1

View File

@ -39,8 +39,14 @@
/* #define PIOS_INCLUDE_DEBUG_CONSOLE */
/* #define DEBUG_LEVEL 0 */
/* PIOS system functions */
/* PIOS FreeRTOS support */
#define PIOS_INCLUDE_FREERTOS
/* PIOS bootloader helper */
#define PIOS_INCLUDE_BL_HELPER
/* #define PIOS_INCLUDE_BL_HELPER_WRITE_SUPPORT */
/* PIOS system functions */
#define PIOS_INCLUDE_DELAY
#define PIOS_INCLUDE_INITCALL
#define PIOS_INCLUDE_SYS
@ -81,10 +87,14 @@
/* PIOS receiver drivers */
/* #define PIOS_INCLUDE_PWM */
#define PIOS_INCLUDE_PPM
/* #define PIOS_INCLUDE_PPM_FLEXI */
/* #define PIOS_INCLUDE_DSM */
/* #define PIOS_INCLUDE_SBUS */
/* #define PIOS_INCLUDE_GCSRCVR */
/* PIOS abstract receiver interface */
#define PIOS_INCLUDE_RCVR
/* PIOS common peripherals */
#define PIOS_INCLUDE_LED
#define PIOS_INCLUDE_IAP
@ -98,19 +108,19 @@
/* #define PIOS_INCLUDE_FLASH_SECTOR_SETTINGS */
/* #define FLASH_FREERTOS */
#define PIOS_INCLUDE_FLASH_EEPROM
/* PIOS radio modules */
#define PIOS_INCLUDE_RFM22B
#define PIOS_INCLUDE_PACKET_HANDLER
#define PIOS_INCLUDE_RFM22B_COM
/* #define PIOS_INCLUDE_RFM22B_RCVR */
#define PIOS_INCLUDE_PPM_OUT
/* Turn on debugging signals on the telemetry port */
/* #define PIOS_RFM22B_DEBUG_ON_TELEM */
/* PIOS misc peripherals */
/* #define PIOS_INCLUDE_VIDEO */
/* #define PIOS_INCLUDE_WAVE */
/* #define PIOS_INCLUDE_UDP */
/* PIOS abstract receiver interface */
#define PIOS_INCLUDE_RCVR
/* PIOS abstract comms interface with options */
#define PIOS_INCLUDE_COM
/* #define PIOS_INCLUDE_COM_MSG */
@ -125,9 +135,8 @@
/* #define PIOS_INCLUDE_GPS_UBX_PARSER */
/* #define PIOS_GPS_SETS_HOMELOCATION */
/* PIOS bootloader helper */
#define PIOS_INCLUDE_BL_HELPER
/* #define PIOS_INCLUDE_BL_HELPER_WRITE_SUPPORT */
/* Stabilization options */
/* #define PIOS_QUATERNION_STABILIZATION */
/* Performance counters */
#define IDLE_COUNTS_PER_SEC_AT_NO_LOAD 1995998
@ -148,9 +157,6 @@
#define PIOS_TELEM_STACK_SIZE 500
#define PIOS_EVENTDISPATCHER_STACK_SIZE 130
/* Stabilization options */
/* #define PIOS_QUATERNION_STABILIZATION */
/* This can't be too high to stop eventdispatcher thread overflowing */
#define PIOS_EVENTDISAPTCHER_QUEUE 10

View File

@ -24,6 +24,9 @@ endif
include $(ROOT_DIR)/make/boards/$(BOARD_NAME)/board-info.mk
include $(ROOT_DIR)/make/firmware-defs.mk
# ARM DSP library
USE_DSP_LIB ?= NO
# List of mandatory modules to include
MODULES += Sensors
MODULES += Attitude/revolution
@ -41,16 +44,16 @@ MODULES += FirmwareIAP
MODULES += Radio
MODULES += PathPlanner
MODULES += FixedWingPathFollower
#MODULES += VtolPathFollower ## OP-700: VtolPathFollower disabled because its currently unsafe - remove this line once Sambas code has been merged
MODULES += Telemetry
#MODULES += VtolPathFollower ## OP-700: VtolPathFollower disabled because its currently unsafe - remove this line once Sambas code has been merged
OPTMODULES =
# Include all camera options
CDEFS += -DUSE_INPUT_LPF -DUSE_GIMBAL_LPF -DUSE_GIMBAL_FF
# All diagnostics
CDEFS += -DDIAGNOSTICS -DDIAG_TASKS
# Some diagnostics
CDEFS += -DDIAG_TASKS
# Misc options
CFLAGS += -ffast-math
@ -73,21 +76,20 @@ ifndef TESTAPP
SRC += $(OPSYSTEM)/cm3_fault_handlers.c
#endif
## Misc library functions
SRC += $(FLIGHTLIB)/paths.c
SRC += $(FLIGHTLIB)/WorldMagModel.c
SRC += $(FLIGHTLIB)/insgps13state.c
## UAVObjects
include ./UAVObjects.inc
SRC += $(UAVOBJSRC)
else
## Test Code
SRC += $(OPTESTS)/test_common.c
SRC += $(OPTESTS)/$(TESTAPP).c
endif
## UAVObjects
ifndef TESTAPP
include ./UAVObjects.inc
SRC += $(UAVOBJSRC)
endif
# Optional component libraries
include $(FLIGHTLIB)/rscode/library.mk

View File

@ -308,7 +308,6 @@ ifeq ($(DEBUG),YES)
CFLAGS = -g$(DEBUGF) -DDEBUG
endif
CFLAGS += -DDIAGNOSTICS
CFLAGS += -DDIAG_TASKS
CFLAGS += $(CFLAGS_UAVOBJECTS)

View File

@ -39,8 +39,14 @@
/* #define PIOS_INCLUDE_DEBUG_CONSOLE */
/* #define DEBUG_LEVEL 0 */
/* PIOS system functions */
/* PIOS FreeRTOS support */
#define PIOS_INCLUDE_FREERTOS
/* PIOS bootloader helper */
#define PIOS_INCLUDE_BL_HELPER
/* #define PIOS_INCLUDE_BL_HELPER_WRITE_SUPPORT */
/* PIOS system functions */
#define PIOS_INCLUDE_DELAY
#define PIOS_INCLUDE_INITCALL
#define PIOS_INCLUDE_SYS
@ -81,10 +87,14 @@
/* PIOS receiver drivers */
#define PIOS_INCLUDE_PWM
#define PIOS_INCLUDE_PPM
/* #define PIOS_INCLUDE_PPM_FLEXI */
#define PIOS_INCLUDE_DSM
#define PIOS_INCLUDE_SBUS
#define PIOS_INCLUDE_GCSRCVR
/* PIOS abstract receiver interface */
#define PIOS_INCLUDE_RCVR
/* PIOS common peripherals */
#define PIOS_INCLUDE_LED
#define PIOS_INCLUDE_IAP
@ -98,16 +108,19 @@
#define PIOS_INCLUDE_FLASH_SECTOR_SETTINGS
#define FLASH_FREERTOS
/* #define PIOS_INCLUDE_FLASH_EEPROM */
/* PIOS radio modules */
#define PIOS_INCLUDE_RFM22B
#define PIOS_INCLUDE_RFM22B_COM
#define PIOS_INCLUDE_RFM22B_RCVR
/* #define PIOS_INCLUDE_PPM_OUT */
/* #define PIOS_RFM22B_DEBUG_ON_TELEM */
/* PIOS misc peripherals */
/* #define PIOS_INCLUDE_VIDEO */
/* #define PIOS_INCLUDE_WAVE */
/* #define PIOS_INCLUDE_UDP */
/* PIOS abstract receiver interface */
#define PIOS_INCLUDE_RCVR
/* PIOS abstract comms interface with options */
#define PIOS_INCLUDE_COM
/* #define PIOS_INCLUDE_COM_MSG */
@ -122,9 +135,8 @@
#define PIOS_INCLUDE_GPS_UBX_PARSER
#define PIOS_GPS_SETS_HOMELOCATION
/* PIOS bootloader helper */
#define PIOS_INCLUDE_BL_HELPER
/* #define PIOS_INCLUDE_BL_HELPER_WRITE_SUPPORT */
/* Stabilization options */
/* #define PIOS_QUATERNION_STABILIZATION */
/* Performance counters */
#define IDLE_COUNTS_PER_SEC_AT_NO_LOAD 8379692
@ -145,9 +157,6 @@
/* #define PIOS_TELEM_STACK_SIZE 500 */
/* #define PIOS_EVENTDISPATCHER_STACK_SIZE 130 */
/* Stabilization options */
/* #define PIOS_QUATERNION_STABILIZATION */
/* This can't be too high to stop eventdispatcher thread overflowing */
#define PIOS_EVENTDISAPTCHER_QUEUE 10

View File

@ -24,6 +24,9 @@ endif
include $(ROOT_DIR)/make/boards/$(BOARD_NAME)/board-info.mk
include $(ROOT_DIR)/make/firmware-defs.mk
# ARM DSP library
USE_DSP_LIB ?= NO
# List of mandatory modules to include
MODULES += Sensors
MODULES += Attitude/revolution
@ -34,24 +37,23 @@ MODULES += Stabilization
MODULES += ManualControl
MODULES += Actuator
MODULES += GPS
#MODULES += TxPID
MODULES += CameraStab
#MODULES += Battery
MODULES += FirmwareIAP
#MODULES += Radio
MODULES += PathPlanner
MODULES += FixedWingPathFollower
#MODULES += VtolPathFollower ## OP-700: VtolPathFollower disabled because its currently unsafe - remove this line once Sambas code has been merged
MODULES += OveroSync
MODULES += Telemetry
#MODULES += VtolPathFollower ## OP-700: VtolPathFollower disabled because its currently unsafe - remove this line once Sambas code has been merged
#MODULES += Battery
#MODULES += TxPID
OPTMODULES =
# Include all camera options
CDEFS += -DUSE_INPUT_LPF -DUSE_GIMBAL_LPF -DUSE_GIMBAL_FF
# All diagnostics
CDEFS += -DDIAGNOSTICS -DDIAG_TASKS
# Some diagnostics
CDEFS += -DDIAG_TASKS
# Misc options
CFLAGS += -ffast-math
@ -74,20 +76,19 @@ ifndef TESTAPP
SRC += $(OPSYSTEM)/cm3_fault_handlers.c
#endif
## Misc library functions
SRC += $(FLIGHTLIB)/paths.c
SRC += $(FLIGHTLIB)/WorldMagModel.c
SRC += $(FLIGHTLIB)/insgps13state.c
## UAVObjects
include ./UAVObjects.inc
SRC += $(UAVOBJSRC)
else
## Test Code
SRC += $(OPTESTS)/test_common.c
SRC += $(OPTESTS)/$(TESTAPP).c
endif
## UAVObjects
ifndef TESTAPP
include ./UAVObjects.inc
SRC += $(UAVOBJSRC)
endif
include $(ROOT_DIR)/make/apps-defs.mk
include $(ROOT_DIR)/make/common-defs.mk

View File

@ -311,7 +311,6 @@ ifeq ($(DEBUG),YES)
CFLAGS += -g$(DEBUGF) -DDEBUG
endif
CFLAGS += -DDIAGNOSTICS
CFLAGS += -DDIAG_TASKS
CFLAGS += $(CFLAGS_UAVOBJECTS)

View File

@ -39,8 +39,14 @@
/* #define PIOS_INCLUDE_DEBUG_CONSOLE */
/* #define DEBUG_LEVEL 0 */
/* PIOS system functions */
/* PIOS FreeRTOS support */
#define PIOS_INCLUDE_FREERTOS
/* PIOS bootloader helper */
#define PIOS_INCLUDE_BL_HELPER
/* #define PIOS_INCLUDE_BL_HELPER_WRITE_SUPPORT */
/* PIOS system functions */
#define PIOS_INCLUDE_DELAY
#define PIOS_INCLUDE_INITCALL
#define PIOS_INCLUDE_SYS
@ -81,10 +87,14 @@
/* PIOS receiver drivers */
#define PIOS_INCLUDE_PWM
#define PIOS_INCLUDE_PPM
/* #define PIOS_INCLUDE_PPM_FLEXI */
#define PIOS_INCLUDE_DSM
#define PIOS_INCLUDE_SBUS
#define PIOS_INCLUDE_GCSRCVR
/* PIOS abstract receiver interface */
#define PIOS_INCLUDE_RCVR
/* PIOS common peripherals */
#define PIOS_INCLUDE_LED
#define PIOS_INCLUDE_IAP
@ -98,15 +108,19 @@
#define PIOS_INCLUDE_FLASH_SECTOR_SETTINGS
#define FLASH_FREERTOS
/* #define PIOS_INCLUDE_FLASH_EEPROM */
/* PIOS radio modules */
/* #define PIOS_INCLUDE_RFM22B */
/* #define PIOS_INCLUDE_PACKET_HANDLER */
/* #define PIOS_INCLUDE_RFM22B_COM */
/* #define PIOS_INCLUDE_RFM22B_RCVR */
/* #define PIOS_INCLUDE_PPM_OUT */
/* #define PIOS_RFM22B_DEBUG_ON_TELEM */
/* PIOS misc peripherals */
/* #define PIOS_INCLUDE_VIDEO */
/* #define PIOS_INCLUDE_WAVE */
/* #define PIOS_INCLUDE_UDP */
/* PIOS abstract receiver interface */
#define PIOS_INCLUDE_RCVR
/* PIOS abstract comms interface with options */
#define PIOS_INCLUDE_COM
/* #define PIOS_INCLUDE_COM_MSG */
@ -121,9 +135,8 @@
#define PIOS_INCLUDE_GPS_UBX_PARSER
#define PIOS_GPS_SETS_HOMELOCATION
/* PIOS bootloader helper */
#define PIOS_INCLUDE_BL_HELPER
/* #define PIOS_INCLUDE_BL_HELPER_WRITE_SUPPORT */
/* Stabilization options */
/* #define PIOS_QUATERNION_STABILIZATION */
/* Performance counters */
#define IDLE_COUNTS_PER_SEC_AT_NO_LOAD 8379692
@ -144,9 +157,6 @@
/* #define PIOS_TELEM_STACK_SIZE 500 */
/* #define PIOS_EVENTDISPATCHER_STACK_SIZE 130 */
/* Stabilization options */
/* #define PIOS_QUATERNION_STABILIZATION */
/* This can't be too high to stop eventdispatcher thread overflowing */
#define PIOS_EVENTDISAPTCHER_QUEUE 10

View File

@ -20,23 +20,6 @@ ifndef OPENPILOT_IS_COOL
$(error Top level Makefile must be used to build this target)
endif
# Set developer code and compile options.
# Set to YES to compile for debugging
DEBUG ?= NO
# Set to YES to use the Servo output pins for debugging via scope or logic analyser
ENABLE_DEBUG_PINS ?= NO
# Include objects that are just nice information to show
STACK_DIAGNOSTICS ?= NO
MIXERSTATUS_DIAGNOSTICS ?= NO
RATEDESIRED_DIAGNOSTICS ?= NO
I2C_WDG_STATS_DIAGNOSTICS ?= NO
DIAG_TASKS ?= NO
# Or just turn on all the above diagnostics. WARNING: this consumes massive amounts of memory.
ALL_DIGNOSTICS ?= NO
# Paths
TOPDIR = .
OPSYSTEM = $(TOPDIR)/System
@ -100,26 +83,26 @@ SRC += $(PIOSCOMMON)/pios_flash_jedec.c
SRC += $(PIOSCOMMON)/pios_rcvr.c
SRC += $(PIOSCOMMON)/pios_rfm22b.c
SRC += $(PIOSCOMMON)/pios_rfm22b_com.c
SRC += $(PIOSCOMMON)/pios_rfm22b_rcvr.c
SRC += $(PIOSCOMMON)/pios_sbus.c
SRC += $(PIOSCOMMON)/pios_sdcard.c
# PIOS USB related files
## PIOS USB related files
SRC += $(PIOSCOMMON)/pios_usb_desc_hid_cdc.c
SRC += $(PIOSCOMMON)/pios_usb_desc_hid_only.c
SRC += $(PIOSCOMMON)/pios_usb_util.c
## Libraries for flight calculations
## Misc library functions
SRC += $(FLIGHTLIB)/fifo_buffer.c
SRC += $(FLIGHTLIB)/taskmonitor.c
SRC += $(FLIGHTLIB)/packet_handler.c
SRC += $(FLIGHTLIB)/sanitycheck.c
SRC += $(FLIGHTLIB)/CoordinateConversions.c
SRC += $(MATHLIB)/sin_lookup.c
SRC += $(MATHLIB)/pid.c
## Modules
SRC += ${foreach MOD, ${MODULES}, ${wildcard ${OPMODULEDIR}/${MOD}/*.c}}
SRC += ${foreach MOD, ${OPTMODULES}, ${wildcard ${OPMODULEDIR}/${MOD}/*.c}}
SRC += $(foreach mod, $(MODULES), $(wildcard $(OPMODULEDIR)/$(mod)/*.c))
SRC += $(foreach mod, $(OPTMODULES), $(wildcard $(OPMODULEDIR)/$(mod)/*.c))
# List C source files here which must be compiled in ARM-Mode (no -mthumb).
# Use file-extension c for "c-only"-files
@ -182,28 +165,6 @@ CFLAGS +=
# Declare all non-optional modules as built-in to force inclusion
CDEFS += $(foreach mod, $(notdir $(MODULES)), -DMODULE_$(mod)_BUILTIN)
# The following Makefile command, ifneq (,$(filter) $(A), $(B) $(C))
# is equivalent to the pseudocode `if (A == B || A == C)`
ifneq (,$(filter YES,$(STACK_DIAGNOSTICS) $(ALL_DIGNOSTICS)))
CFLAGS += -DSTACK_DIAGNOSTICS
endif
ifneq (,$(filter YES,$(MIXERSTATUS_DIAGNOSTICS) $(ALL_DIGNOSTICS)))
CFLAGS += -DMIXERSTATUS_DIAGNOSTICS
endif
ifneq (,$(filter YES,$(RATEDESIRED_DIAGNOSTICS) $(ALL_DIGNOSTICS)))
CFLAGS += -DRATEDESIRED_DIAGNOSTICS
endif
ifneq (,$(filter YES,$(I2C_WDG_STATS_DIAGNOSTICS) $(ALL_DIGNOSTICS)))
CFLAGS += -DI2C_WDG_STATS_DIAGNOSTICS
endif
ifneq (,$(filter YES,$(DIAG_TASKS) $(ALL_DIGNOSTICS)))
CFLAGS += -DDIAG_TASKS
endif
# Set linker-script name depending on selected submodel name
ifeq ($(MCU),cortex-m3)
LDFLAGS += -T$(LINKER_SCRIPTS_PATH)/link_$(BOARD)_memory.ld

View File

@ -20,16 +20,6 @@ ifndef OPENPILOT_IS_COOL
$(error Top level Makefile must be used to build this target)
endif
# Set developer code and compile options.
# Set to YES to compile for debugging
DEBUG ?= NO
# Set to YES to use the Servo output pins for debugging via scope or logic analyser
ENABLE_DEBUG_PINS ?= NO
# Set to YES to enable the AUX UART which is mapped on the S1 (Tx) and S2 (Rx) servo outputs
ENABLE_AUX_UART ?= NO
# Paths
TOPDIR = .
OPSYSTEM = $(TOPDIR)
@ -39,6 +29,9 @@ PIOSCOMMON = $(PIOS)/Common
PIOSBOARDS = $(PIOS)/Boards
FLIGHTLIBINC = $(FLIGHTLIB)/inc
# ARM DSP library
override USE_DSP_LIB := NO
## PIOS Hardware
ifeq ($(MCU),cortex-m3)
include $(PIOS)/STM32F10x/library.mk
@ -124,7 +117,7 @@ BLONLY_CDEFS += -DFW_BANK_SIZE=$(FW_BANK_SIZE)
BLONLY_CDEFS += -DFW_DESC_SIZE=$(FW_DESC_SIZE)
# Compiler flags
CFLAGS += $(BLONLY_CDEFS)
CDEFS += $(BLONLY_CDEFS)
# Set linker-script name depending on selected submodel name
ifeq ($(MCU),cortex-m3)

View File

@ -20,6 +20,25 @@ ifndef OPENPILOT_IS_COOL
$(error Top level Makefile must be used to build this target)
endif
# Set to YES to compile for debugging
DEBUG ?= NO
# Set to YES to use the Servo output pins for debugging via scope or logic analyser
ENABLE_DEBUG_PINS ?= NO
# Set to YES to enable the AUX UART which is mapped on the S1 (Tx) and S2 (Rx) servo outputs
ENABLE_AUX_UART ?= NO
# Include objects that are just nice information to show
DIAG_STACK ?= NO
DIAG_MIXERSTATUS ?= NO
DIAG_RATEDESIRED ?= NO
DIAG_I2C_WDG_STATS ?= NO
DIAG_TASKS ?= NO
# Or just turn on all the above diagnostics. WARNING: this consumes massive amounts of memory.
DIAG_ALL ?= NO
# Optimization level, can be [0, 1, 2, 3, s].
# 0 = turn off optimization. s = optimize for size.
# Note: 3 is not always the best optimization level.
@ -50,6 +69,28 @@ ifeq ($(ENABLE_AUX_UART), YES)
CDEFS += -DPIOS_ENABLE_AUX_UART
endif
# The following Makefile command, ifneq (,$(filter) $(A), $(B) $(C))
# is equivalent to the pseudocode `if (A == B || A == C)`
ifneq (,$(filter YES,$(DIAG_STACK) $(DIAG_ALL)))
CFLAGS += -DDIAG_STACK
endif
ifneq (,$(filter YES,$(DIAG_MIXERSTATUS) $(DIAG_ALL)))
CFLAGS += -DDIAG_MIXERSTATUS
endif
ifneq (,$(filter YES,$(DIAG_RATEDESIRED) $(DIAG_ALL)))
CFLAGS += -DDIAG_RATEDESIRED
endif
ifneq (,$(filter YES,$(DIAG_I2C_WDG_STATS) $(DIAG_ALL)))
CFLAGS += -DDIAG_I2C_WDG_STATS
endif
ifneq (,$(filter YES,$(DIAG_TASKS) $(DIAG_ALL)))
CFLAGS += -DDIAG_TASKS
endif
# Place project-specific -D and/or -U options for Assembler with preprocessor here.
#ADEFS = -DUSE_IRQ_ASM_WRAPPER
ADEFS = -D__ASSEMBLY__
@ -235,4 +276,4 @@ $(shell $(MKDIR) -p $(OUTDIR) 2>/dev/null)
-include $(shell $(MKDIR) -p $(OUTDIR)/dep 2>/dev/null) $(wildcard $(OUTDIR)/dep/*)
# Listing of phony targets.
.PHONY : all build clean install
.PHONY: all build clean install

View File

@ -40,34 +40,33 @@ else
endif
# Define Messages
# English
MSG_FORMATERROR = ${QUOTE} Can not handle output-format${QUOTE}
MSG_MODINIT = ${QUOTE} MODINIT $(MSG_EXTRA) ${QUOTE}
MSG_SIZE = ${QUOTE} SIZE $(MSG_EXTRA) ${QUOTE}
MSG_LOAD_FILE = ${QUOTE} BIN/HEX $(MSG_EXTRA) ${QUOTE}
MSG_BIN_OBJ = ${QUOTE} BINO $(MSG_EXTRA) ${QUOTE}
MSG_STRIP_FILE = ${QUOTE} STRIP $(MSG_EXTRA) ${QUOTE}
MSG_EXTENDED_LISTING = ${QUOTE} LIS $(MSG_EXTRA) ${QUOTE}
MSG_SYMBOL_TABLE = ${QUOTE} NM $(MSG_EXTRA) ${QUOTE}
MSG_ARCHIVING = ${QUOTE} AR $(MSG_EXTRA) ${QUOTE}
MSG_LINKING = ${QUOTE} LD $(MSG_EXTRA) ${QUOTE}
MSG_COMPILING = ${QUOTE} CC $(MSG_EXTRA) ${QUOTE}
MSG_COMPILING_ARM = ${QUOTE} CC-ARM $(MSG_EXTRA) ${QUOTE}
MSG_COMPILINGCXX = ${QUOTE} CXX $(MSG_EXTRA) ${QUOTE}
MSG_COMPILINGCXX_ARM = ${QUOTE} CXX-ARM $(MSG_EXTRA) ${QUOTE}
MSG_ASSEMBLING = ${QUOTE} AS $(MSG_EXTRA) ${QUOTE}
MSG_ASSEMBLING_ARM = ${QUOTE} AS-ARM $(MSG_EXTRA) ${QUOTE}
MSG_CLEANING = ${QUOTE} CLEAN $(MSG_EXTRA) ${QUOTE}
MSG_ASMFROMC = ${QUOTE} AS(C) $(MSG_EXTRA) ${QUOTE}
MSG_ASMFROMC_ARM = ${QUOTE} AS(C)-ARM $(MSG_EXTRA) ${QUOTE}
MSG_PYMITEINIT = ${QUOTE} PY $(MSG_EXTRA) ${QUOTE}
MSG_INSTALLING = ${QUOTE} INSTALL $(MSG_EXTRA) ${QUOTE}
MSG_OPFIRMWARE = ${QUOTE} OPFW $(MSG_EXTRA) ${QUOTE}
MSG_FWINFO = ${QUOTE} FWINFO $(MSG_EXTRA) ${QUOTE}
MSG_JTAG_PROGRAM = ${QUOTE} JTAG-PGM $(MSG_EXTRA) ${QUOTE}
MSG_JTAG_WIPE = ${QUOTE} JTAG-WIPE $(MSG_EXTRA) ${QUOTE}
MSG_PADDING = ${QUOTE} PADDING $(MSG_EXTRA) ${QUOTE}
MSG_FLASH_IMG = ${QUOTE} FLASH_IMG $(MSG_EXTRA) ${QUOTE}
MSG_FORMATERROR = $(QUOTE) Can not handle output-format$(QUOTE)
MSG_MODINIT = $(QUOTE) MODINIT $(MSG_EXTRA) $(QUOTE)
MSG_SIZE = $(QUOTE) SIZE $(MSG_EXTRA) $(QUOTE)
MSG_LOAD_FILE = $(QUOTE) BIN/HEX $(MSG_EXTRA) $(QUOTE)
MSG_BIN_OBJ = $(QUOTE) BINO $(MSG_EXTRA) $(QUOTE)
MSG_STRIP_FILE = $(QUOTE) STRIP $(MSG_EXTRA) $(QUOTE)
MSG_EXTENDED_LISTING = $(QUOTE) LIS $(MSG_EXTRA) $(QUOTE)
MSG_SYMBOL_TABLE = $(QUOTE) NM $(MSG_EXTRA) $(QUOTE)
MSG_ARCHIVING = $(QUOTE) AR $(MSG_EXTRA) $(QUOTE)
MSG_LINKING = $(QUOTE) LD $(MSG_EXTRA) $(QUOTE)
MSG_COMPILING = $(QUOTE) CC $(MSG_EXTRA) $(QUOTE)
MSG_COMPILING_ARM = $(QUOTE) CC-ARM $(MSG_EXTRA) $(QUOTE)
MSG_COMPILINGCXX = $(QUOTE) CXX $(MSG_EXTRA) $(QUOTE)
MSG_COMPILINGCXX_ARM = $(QUOTE) CXX-ARM $(MSG_EXTRA) $(QUOTE)
MSG_ASSEMBLING = $(QUOTE) AS $(MSG_EXTRA) $(QUOTE)
MSG_ASSEMBLING_ARM = $(QUOTE) AS-ARM $(MSG_EXTRA) $(QUOTE)
MSG_CLEANING = $(QUOTE) CLEAN $(MSG_EXTRA) $(QUOTE)
MSG_ASMFROMC = $(QUOTE) AS(C) $(MSG_EXTRA) $(QUOTE)
MSG_ASMFROMC_ARM = $(QUOTE) AS(C)-ARM $(MSG_EXTRA) $(QUOTE)
MSG_PYMITEINIT = $(QUOTE) PY $(MSG_EXTRA) $(QUOTE)
MSG_INSTALLING = $(QUOTE) INSTALL $(MSG_EXTRA) $(QUOTE)
MSG_OPFIRMWARE = $(QUOTE) OPFW $(MSG_EXTRA) $(QUOTE)
MSG_FWINFO = $(QUOTE) FWINFO $(MSG_EXTRA) $(QUOTE)
MSG_JTAG_PROGRAM = $(QUOTE) JTAG-PGM $(MSG_EXTRA) $(QUOTE)
MSG_JTAG_WIPE = $(QUOTE) JTAG-WIPE $(MSG_EXTRA) $(QUOTE)
MSG_PADDING = $(QUOTE) PADDING $(MSG_EXTRA) $(QUOTE)
MSG_FLASH_IMG = $(QUOTE) FLASH_IMG $(MSG_EXTRA) $(QUOTE)
# Function for converting an absolute path to one relative
# to the top of the source tree.
@ -210,9 +209,10 @@ else
# limitation. It is assumed that if the object files directory
# is given, all object files are in that directory.
$(V1) ( \
pushd $(3) >/dev/null && \
pwd=`pwd` && \
cd $(3) && \
$(AR) rcs $$@ $(notdir $(2)) && \
popd >/dev/null \
cd $$$${pwd} >/dev/null \
)
endif
endef

View File

@ -340,4 +340,3 @@ gtest_install: gtest_clean
gtest_clean:
$(V0) @echo " CLEAN $(GTEST_DIR)"
$(V1) [ ! -d "$(GTEST_DIR)" ] || $(RM) -rf "$(GTEST_DIR)"

View File

@ -44,7 +44,7 @@ install:
cp -arp package/linux/openpilot_menu.menu debian/openpilot/etc/xdg/menus/applications-merged
cp -arp package/linux/openpilot_menu.directory debian/openpilot/usr/share/desktop-directories
ifdef PACKAGE_DIR
cp -a $(PACKAGE_DIR)/*.opfw debian/openpilot/usr/local/OpenPilot/firmware/
cp -a $(PACKAGE_DIR)/* debian/openpilot/usr/local/OpenPilot/firmware/
else
$(error PACKAGE_DIR not defined! $(PACKAGE_DIR))
endif

View File

@ -20,14 +20,8 @@ device=$(hdiutil attach "${TEMP_FILE}" | \
# packaging goes here
cp -r "${APP_PATH}" "/Volumes/${VOL_NAME}"
#cp -r "${FW_DIR}" "/Volumes/${VOL_NAME}/firmware"
cp "${FW_DIR}/fw_coptercontrol-${PACKAGE_LBL}.opfw" "/Volumes/${VOL_NAME}/Firmware"
cp "${FW_DIR}/fw_revomini-${PACKAGE_LBL}.opfw" "/Volumes/${VOL_NAME}/Firmware"
cp "${FW_DIR}/fw_pipxtreme-${PACKAGE_LBL}.opfw" "/Volumes/${VOL_NAME}/Firmware"
cp "${FW_DIR}/fw_revolution-${PACKAGE_LBL}.opfw" "/Volumes/${VOL_NAME}/Firmware"
ls "${FW_DIR}" | xargs -n 1 -I {} cp "${FW_DIR}/{}" "/Volumes/${VOL_NAME}/Firmware"
cp "${BUILD_DIR}/uavobject-synthetics/matlab/OPLogConvert.m" "/Volumes/${VOL_NAME}/Utilities"
cp "${ROOT_DIR}/HISTORY.txt" "/Volumes/${VOL_NAME}"
"${ROOT_DIR}/package/osx/libraries" \

View File

@ -1,7 +1,7 @@
#
# Project: OpenPilot
# NSIS configuration file for OpenPilot GCS
# The OpenPilot Team, http://www.openpilot.org, Copyright (C) 2010-2012.
# The OpenPilot Team, http://www.openpilot.org, Copyright (C) 2010-2013.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@ -72,7 +72,7 @@
VIAddVersionKey "Comments" "${INSTALLER_NAME}. ${BUILD_DESCRIPTION}"
VIAddVersionKey "CompanyName" "The OpenPilot Team, http://www.openpilot.org"
VIAddVersionKey "LegalTrademarks" "${PRODUCT_NAME} is a trademark of The OpenPilot Team"
VIAddVersionKey "LegalCopyright" "© 2010-2012 The OpenPilot Team"
VIAddVersionKey "LegalCopyright" "© 2010-2013 The OpenPilot Team"
VIAddVersionKey "FileDescription" "${INSTALLER_NAME}"
;--------------------------------
@ -93,7 +93,7 @@
;--------------------------------
; Branding
BrandingText "© 2010-2012 The OpenPilot Team, http://www.openpilot.org"
BrandingText "© 2010-2013 The OpenPilot Team, http://www.openpilot.org"
!define MUI_ICON "${NSIS_DATA_TREE}\resources\openpilot.ico"
!define MUI_HEADERIMAGE