From f6c2b55c3f85ef59a91924a5b88ec3bde879d679 Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Fri, 15 Jan 2016 07:44:15 +1100 Subject: [PATCH] mk: fixed dependency on mavlink header generation --- mk/board_qflight.mk | 2 +- mk/build_rules.mk | 6 +++--- mk/mavgen.mk | 9 +++------ mk/px4_targets.mk | 6 +++--- 4 files changed, 10 insertions(+), 13 deletions(-) diff --git a/mk/board_qflight.mk b/mk/board_qflight.mk index 965efbdbdc..24ab280213 100644 --- a/mk/board_qflight.mk +++ b/mk/board_qflight.mk @@ -64,7 +64,7 @@ LIBSKETCH_SKEL_SO = $(BUILDROOT)/libqflight_skel.so .SUFFIXES: .o .c .cpp .so .do # build DSP object from C file -$(BUILDROOT)/libraries/%.do: $(SKETCHBOOK)/libraries/%.c MAV_GEN +$(BUILDROOT)/libraries/%.do: $(SKETCHBOOK)/libraries/%.c $(MAVLINK_HEADERS) $(RULEHDR) $(v)$(QURT_CC) $(DSP_FLAGS) -c -o $@ $< diff --git a/mk/build_rules.mk b/mk/build_rules.mk index 6565e75931..52a51ae837 100644 --- a/mk/build_rules.mk +++ b/mk/build_rules.mk @@ -3,11 +3,11 @@ # Build sketch objects # -$(BUILDROOT)/%.o: $(BUILDROOT)/%.cpp $(GENERATE_TARGETS) MAV_GEN +$(BUILDROOT)/%.o: $(BUILDROOT)/%.cpp $(GENERATE_TARGETS) $(MAVLINK_HEADERS) $(RULEHDR) $(v)$(CXX) $(CXXFLAGS) -c -o $@ $< $(SKETCH_INCLUDES) -$(BUILDROOT)/%.o: $(BUILDROOT)/make.flags $(SRCROOT)/%.cpp $(GENERATE_TARGETS) MAV_GEN +$(BUILDROOT)/%.o: $(BUILDROOT)/make.flags $(SRCROOT)/%.cpp $(GENERATE_TARGETS) $(MAVLINK_HEADERS) $(RULEHDR) $(v)$(CXX) $(CXXFLAGS) -c -o $@ $*.cpp $(SKETCH_INCLUDES) @@ -23,7 +23,7 @@ $(BUILDROOT)/%.o: $(SRCROOT)/%.S # Build library objects from sources in the sketchbook # -$(BUILDROOT)/libraries/%.o: $(SKETCHBOOK)/libraries/%.cpp $(GENERATE_TARGETS) MAV_GEN +$(BUILDROOT)/libraries/%.o: $(SKETCHBOOK)/libraries/%.cpp $(GENERATE_TARGETS) $(MAVLINK_HEADERS) $(RULEHDR) $(v)$(CXX) $(CXXFLAGS) -c -o $@ $< $(SLIB_INCLUDES) diff --git a/mk/mavgen.mk b/mk/mavgen.mk index dd01f39230..013ccc2e58 100644 --- a/mk/mavgen.mk +++ b/mk/mavgen.mk @@ -2,14 +2,11 @@ # mavlink header generation MAVLINK_DIR := $(SKETCHBOOK)/modules/mavlink/ MESSAGE_DEFINITIONS := $(SKETCHBOOK)/modules/mavlink/message_definitions/v1.0 -MAVLINK_HEADERS := $(BUILDROOT)/libraries/GCS_MAVLink/include/mavlink/v1.0/ - -.PHONY: MAV_GEN - -MAV_GEN: $(MAVLINK_HEADERS) CHECK_MODULES +MAVLINK_HEADERS := $(BUILDROOT)/libraries/GCS_MAVLink/include/mavlink/v1.0/ardupilotmega/mavlink.h $(wildcard $(BUILDROOT)/libraries/GCS_MAVLink/include/mavlink/v1.0/,*.h) $(wildcard $(BUILDROOT)/libraries/GCS_MAVLink/include/mavlink/v1.0/ardupilotmega,*.h) +MAVLINK_OUTPUT_DIR := $(BUILDROOT)/libraries/GCS_MAVLink/include/mavlink/v1.0 $(MAVLINK_HEADERS): $(MESSAGE_DEFINITIONS)/ardupilotmega.xml $(MESSAGE_DEFINITIONS)/common.xml echo "Generating MAVLink headers..." #goto mavlink module directory and run the most recent generator script echo "Generating C code using mavgen.py located at" $(SKETCHBOOK)/modules/mavlink/ - PYTHONPATH=$(MAVLINK_DIR) python $(MAVLINK_DIR)/pymavlink/tools/mavgen.py --lang=C --wire-protocol=1.0 --output=$@ $(MAVLINK_DIR)/message_definitions/v1.0/ardupilotmega.xml \ No newline at end of file + PYTHONPATH=$(MAVLINK_DIR) python $(MAVLINK_DIR)/pymavlink/tools/mavgen.py --lang=C --wire-protocol=1.0 --output=$(MAVLINK_OUTPUT_DIR) $(MAVLINK_DIR)/message_definitions/v1.0/ardupilotmega.xml diff --git a/mk/px4_targets.mk b/mk/px4_targets.mk index 92b0c59c4f..83fa207d62 100644 --- a/mk/px4_targets.mk +++ b/mk/px4_targets.mk @@ -81,7 +81,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 CHECK_MODULES MAV_GEN $(PX4_ROOT)/Archives/px4fmu-v1.export $(SKETCHCPP) module_mk px4-io-v1 +px4-v1: $(BUILDROOT)/make.flags CHECK_MODULES $(MAVLINK_HEADERS) $(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 $(PX4_V1_CONFIG_FILE) $(PX4_ROOT)/makefiles/nuttx/ @@ -92,7 +92,7 @@ px4-v1: $(BUILDROOT)/make.flags CHECK_MODULES MAV_GEN $(PX4_ROOT)/Archives/px4fm $(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 CHECK_MODULES MAV_GEN $(PX4_ROOT)/Archives/px4fmu-v2.export $(SKETCHCPP) module_mk px4-io-v2 +px4-v2: $(BUILDROOT)/make.flags CHECK_MODULES $(MAVLINK_HEADERS) $(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 $(PX4_V2_CONFIG_FILE) $(PX4_ROOT)/makefiles/nuttx/ @@ -103,7 +103,7 @@ px4-v2: $(BUILDROOT)/make.flags CHECK_MODULES MAV_GEN $(PX4_ROOT)/Archives/px4fm $(v) $(SKETCHBOOK)/Tools/scripts/add_git_hashes.py $(HASHADDER_FLAGS) "$(SKETCH)-v2.px4" "$(SKETCH)-v2.px4" $(v) echo "PX4 $(SKETCH) Firmware is in $(SKETCH)-v2.px4" -px4-v4: $(BUILDROOT)/make.flags CHECK_MODULES MAV_GEN $(PX4_ROOT)/Archives/px4fmu-v4.export $(SKETCHCPP) module_mk +px4-v4: $(BUILDROOT)/make.flags CHECK_MODULES $(MAVLINK_HEADERS) $(PX4_ROOT)/Archives/px4fmu-v4.export $(SKETCHCPP) module_mk $(RULEHDR) $(v) rm -f $(PX4_ROOT)/makefiles/$(PX4_V4_CONFIG_FILE) $(v) cp $(PX4_V4_CONFIG_FILE) $(PX4_ROOT)/makefiles/nuttx/