Browse Source

PX4: auto-build the archives if needed

mission-4.1.18
Andrew Tridgell 12 years ago
parent
commit
06cf9def98
  1. 51
      mk/px4_targets.mk

51
mk/px4_targets.mk

@ -2,31 +2,46 @@
ifneq ($(PX4_ROOT),) ifneq ($(PX4_ROOT),)
PX4_MAKE = make -C $(BUILDROOT) -f $(PX4_ROOT)/makefiles/firmware.mk CONFIG_FILE=$(PWD)/$(PX4_CONFIG_FILE) EXTRAFLAGS="$(EXTRAFLAGS)" APM_MODULE_DIR=$(BUILDROOT) SKETCHBOOK=$(SKETCHBOOK) PX4_ROOT=$(PX4_ROOT)
PX4_CONFIG_FILE=$(MK_DIR)/PX4/config_px4fmu_APM.mk PX4_CONFIG_FILE=$(MK_DIR)/PX4/config_px4fmu_APM.mk
PX4SRCS = $(SKETCHCPP) $(SKETCHLIBSRCS) SKETCHFLAGS=$(SKETCHLIBINCLUDES) -I$(PWD) -DCONFIG_HAL_BOARD=HAL_BOARD_PX4 -DSKETCHNAME="\\\"$(SKETCH)\\\"" -DSKETCH_MAIN=ArduPilot_main
EXTRAFLAGS=$(SKETCHLIBINCLUDES) -I$(PWD) -DCONFIG_HAL_BOARD=HAL_BOARD_PX4 -DSKETCHNAME="\\\"$(SKETCH)\\\"" -DSKETCH_MAIN=ArduPilot_main PX4_MAKE = make -C $(BUILDROOT) -f $(PX4_ROOT)/makefiles/firmware.mk CONFIG_FILE=$(PWD)/$(PX4_CONFIG_FILE) EXTRAFLAGS="$(SKETCHFLAGS) "$(EXTRAFLAGS) APM_MODULE_DIR=$(BUILDROOT) SKETCHBOOK=$(SKETCHBOOK) PX4_ROOT=$(PX4_ROOT)
$(BUILDROOT)/module.mk: $(BUILDROOT)/module.mk:
echo "# Auto-generated file - do not edit" > $@ $(RULEHDR)
echo "MODULE_COMMAND = ArduPilot" >> $@ $(v) echo "# Auto-generated file - do not edit" > $@
echo "SRCS = $(SKETCH).cpp $(SKETCHLIBSRCS)" >> $@ $(v) echo "MODULE_COMMAND = ArduPilot" >> $@
echo "MODULE_STACKSIZE = 4096" >> $@ $(v) echo "SRCS = $(SKETCH).cpp $(SKETCHLIBSRCS)" >> $@
echo "MAXOPTIMIZATION = -Os" >> $@ $(v) echo "MODULE_STACKSIZE = 4096" >> $@
$(v) echo "MAXOPTIMIZATION = -Os" >> $@
px4: $(PX4_ROOT)/Archives/px4fmu.export $(SKETCHCPP) $(BUILDROOT)/module.mk
$(RULEHDR)
$(v) $(PX4_MAKE) firmware
$(v) /bin/rm -f $(SKETCH).px4
$(v) cp $(PX4_ROOT)/makefiles/build/firmware.px4 $(SKETCH).px4
$(v) echo "PX4 $(SKETCH) Firmware is in $(SKETCH).px4"
px4-clean: clean px4-archives-clean
$(v) /bin/rm -rf $(PX4_ROOT)/makefiles/build $(PX4_ROOT)/Build
px4-upload: px4
$(RULEHDR)
$(PX4_MAKE) upload
px4: $(SKETCHCPP) $(BUILDROOT)/module.mk px4-archives-clean:
$(PX4_MAKE) firmware /bin/rm -rf $(PX4_ROOT)/Archives
px4-clean: clean px4-io: $(PX4_ROOT)/Archives/px4io.export
/bin/rm -rf $(PX4_ROOT)/makefiles/build $(v) make -C $(PX4_ROOT) px4io_default
$(v) /bin/rm -f px4io.bin
$(v) cp $(PX4_ROOT)/Build/px4io_default.build/firmware.bin px4io.bin
$(v) echo "PX4IO Firmware is in px4io.bin"
px4-upload: $(SKETCHCPP) $(BUILDROOT)/module.mk $(PX4_ROOT)/Archives/px4fmu.export:
$(PX4_MAKE) firmware upload make -C $(PX4_ROOT) archives
px4-archives: $(PX4_ROOT)/Archives/px4io.export:
$(PX4_MAKE) archives make -C $(PX4_ROOT) archives
else else

Loading…
Cancel
Save