Browse Source

modules: added check_modules in PX4 build

master
Andrew Tridgell 10 years ago
parent
commit
a203dd2660
  1. 41
      mk/check_modules.sh
  2. 13
      mk/modules.mk
  3. 6
      mk/px4_targets.mk
  4. 2
      mk/targets.mk

41
mk/check_modules.sh

@ -0,0 +1,41 @@ @@ -0,0 +1,41 @@
#!/bin/sh
echo "Checking modules"
MODULE_LIST="PX4Firmware PX4NuttX uavcan"
NEED_INIT=0
cd $(dirname "$0")/.. || exit 1
for m in $MODULE_LIST; do
[ -d modules/$m ] || {
echo "module/$m missing - need module init"
NEED_INIT=1
break
}
done
[ $NEED_INIT = 1 ] && {
set -x
git submodule init || {
echo "git submodule init failed"
exit 1
}
git submodule update || {
echo "git submodule update failed"
exit 1
}
}
for m in $MODULE_LIST; do
RET=$(git submodule summary modules/$m | egrep "^..<")
[ -z "$RET" ] || {
echo "Module modules/$m out of date"
git submodule summary modules/$m
echo "Please run 'git submodule update'"
exit 1
}
done
exit 0

13
mk/modules.mk

@ -0,0 +1,13 @@ @@ -0,0 +1,13 @@
# git submodule support
.PHONY: CHECK_MODULES
# PX4 build needs submodules
px4-%: CHECK_MODULES
CHECK_MODULES:
$(v)$(MK_DIR)/check_modules.sh
module-update:
git submodule update

6
mk/px4_targets.mk

@ -82,7 +82,7 @@ module_mk: @@ -82,7 +82,7 @@ module_mk:
$(v) cmp $(SKETCHBOOK)/module.mk $(SKETCHBOOK)/module.mk.new 2>/dev/null || mv $(SKETCHBOOK)/module.mk.new $(SKETCHBOOK)/module.mk
$(v) rm -f $(SKETCHBOOK)/module.mk.new
px4-v1: $(BUILDROOT)/make.flags $(PX4_ROOT)/Archives/px4fmu-v1.export $(SKETCHCPP) module_mk px4-io-v1
px4-v1: $(BUILDROOT)/make.flags CHECK_MODULES $(PX4_ROOT)/Archives/px4fmu-v1.export $(SKETCHCPP) module_mk px4-io-v1
$(RULEHDR)
$(v) rm -f $(PX4_ROOT)/makefiles/$(PX4_V1_CONFIG_FILE)
$(v) cp $(PWD)/$(PX4_V1_CONFIG_FILE) $(PX4_ROOT)/makefiles/
@ -92,7 +92,7 @@ px4-v1: $(BUILDROOT)/make.flags $(PX4_ROOT)/Archives/px4fmu-v1.export $(SKETCHCP @@ -92,7 +92,7 @@ px4-v1: $(BUILDROOT)/make.flags $(PX4_ROOT)/Archives/px4fmu-v1.export $(SKETCHCP
$(v) $(SKETCHBOOK)/Tools/scripts/add_git_hashes.py $(HASHADDER_FLAGS) "$(SKETCH)-v1.px4" "$(SKETCH)-v1.px4"
$(v) echo "PX4 $(SKETCH) Firmware is in $(SKETCH)-v1.px4"
px4-v2: $(BUILDROOT)/make.flags $(PX4_ROOT)/Archives/px4fmu-v2.export $(SKETCHCPP) module_mk px4-io-v2
px4-v2: $(BUILDROOT)/make.flags CHECK_MODULES $(PX4_ROOT)/Archives/px4fmu-v2.export $(SKETCHCPP) module_mk px4-io-v2
$(RULEHDR)
$(v) rm -f $(PX4_ROOT)/makefiles/$(PX4_V2_CONFIG_FILE)
$(v) cp $(PWD)/$(PX4_V2_CONFIG_FILE) $(PX4_ROOT)/makefiles/
@ -104,7 +104,7 @@ px4-v2: $(BUILDROOT)/make.flags $(PX4_ROOT)/Archives/px4fmu-v2.export $(SKETCHCP @@ -104,7 +104,7 @@ px4-v2: $(BUILDROOT)/make.flags $(PX4_ROOT)/Archives/px4fmu-v2.export $(SKETCHCP
px4: px4-v1 px4-v2
px4-clean: clean px4-archives-clean px4-cleandep
px4-clean: clean CHECK_MODULES px4-archives-clean px4-cleandep
$(v) /bin/rm -rf $(PX4_ROOT)/makefiles/build $(PX4_ROOT)/Build
px4-cleandep: clean

2
mk/targets.mk

@ -113,3 +113,5 @@ etags: @@ -113,3 +113,5 @@ etags:
clean:
@rm -fr $(BUILDROOT)
include $(MK_DIR)/modules.mk

Loading…
Cancel
Save