1
0
mirror of https://bitbucket.org/librepilot/librepilot.git synced 2025-01-30 15:52:12 +01:00

Merge branch 'next' into corvuscorax/OP-1287_PositionVario

This commit is contained in:
Corvus Corax 2014-06-11 18:30:37 +02:00
commit ee20bbbcd7

View File

@ -58,12 +58,14 @@ endif
ifeq ($(UNAME), Linux) ifeq ($(UNAME), Linux)
ifeq ($(ARCH), x86_64) ifeq ($(ARCH), x86_64)
ARM_SDK_URL := http://wiki.openpilot.org/download/attachments/18612236/gcc-arm-none-eabi-4_7-2013q1-20130313-linux-amd64.tar.bz2 ARM_SDK_URL := https://launchpad.net/gcc-arm-embedded/4.8/4.8-2014-q1-update/+download/gcc-arm-none-eabi-4_8-2014q1-20140314-linux.tar.bz2
ARM_SDK_MD5_URL:= https://launchpad.net/gcc-arm-embedded/4.8/4.8-2014-q1-update/+download/gcc-arm-none-eabi-4_8-2014q1-20140314-linux.tar.bz2/+md5
QT_SDK_URL := http://download.qt-project.org/official_releases/qt/5.2/5.2.1/qt-opensource-linux-x64-5.2.1.run QT_SDK_URL := http://download.qt-project.org/official_releases/qt/5.2/5.2.1/qt-opensource-linux-x64-5.2.1.run
QT_SDK_MD5_URL := http://wiki.openpilot.org/download/attachments/18612236/qt-opensource-linux-x64-5.2.1.run.md5 QT_SDK_MD5_URL := http://wiki.openpilot.org/download/attachments/18612236/qt-opensource-linux-x64-5.2.1.run.md5
QT_SDK_ARCH := gcc_64 QT_SDK_ARCH := gcc_64
else else
ARM_SDK_URL := http://wiki.openpilot.org/download/attachments/18612236/gcc-arm-none-eabi-4_7-2013q1-20130313-linux-i686.tar.bz2 ARM_SDK_URL := https://launchpad.net/gcc-arm-embedded/4.8/4.8-2014-q1-update/+download/gcc-arm-none-eabi-4_8-2014q1-20140314-linux.tar.bz2
ARM_SDK_MD5_URL := https://launchpad.net/gcc-arm-embedded/4.8/4.8-2014-q1-update/+download/gcc-arm-none-eabi-4_8-2014q1-20140314-linux.tar.bz2/+md5
QT_SDK_URL := http://download.qt-project.org/official_releases/qt/5.2/5.2.1/qt-opensource-linux-x86-5.2.1.run QT_SDK_URL := http://download.qt-project.org/official_releases/qt/5.2/5.2.1/qt-opensource-linux-x86-5.2.1.run
QT_SDK_MD5_URL := http://wiki.openpilot.org/download/attachments/18612236/qt-opensource-linux-x86-5.2.1.run.md5 QT_SDK_MD5_URL := http://wiki.openpilot.org/download/attachments/18612236/qt-opensource-linux-x86-5.2.1.run.md5
QT_SDK_ARCH := gcc QT_SDK_ARCH := gcc
@ -71,12 +73,14 @@ ifeq ($(UNAME), Linux)
UNCRUSTIFY_URL := http://wiki.openpilot.org/download/attachments/18612236/uncrustify-0.60.tar.gz UNCRUSTIFY_URL := http://wiki.openpilot.org/download/attachments/18612236/uncrustify-0.60.tar.gz
DOXYGEN_URL := http://wiki.openpilot.org/download/attachments/18612236/doxygen-1.8.3.1.src.tar.gz DOXYGEN_URL := http://wiki.openpilot.org/download/attachments/18612236/doxygen-1.8.3.1.src.tar.gz
else ifeq ($(UNAME), Darwin) else ifeq ($(UNAME), Darwin)
ARM_SDK_URL := http://wiki.openpilot.org/download/attachments/18612236/gcc-arm-none-eabi-4_7-2013q1-20130313-mac.tar.bz2 ARM_SDK_URL := https://launchpad.net/gcc-arm-embedded/4.8/4.8-2014-q1-update/+download/gcc-arm-none-eabi-4_8-2014q1-20140314-mac.tar.bz2
ARM_SDK_MD5_URL:= https://launchpad.net/gcc-arm-embedded/4.8/4.8-2014-q1-update/+download/gcc-arm-none-eabi-4_8-2014q1-20140314-mac.tar.bz2/+md5
QT_SDK_URL := "Please install native Qt 5.1.x SDK using package manager" QT_SDK_URL := "Please install native Qt 5.1.x SDK using package manager"
UNCRUSTIFY_URL := http://wiki.openpilot.org/download/attachments/18612236/uncrustify-0.60.tar.gz UNCRUSTIFY_URL := http://wiki.openpilot.org/download/attachments/18612236/uncrustify-0.60.tar.gz
DOXYGEN_URL := http://wiki.openpilot.org/download/attachments/18612236/doxygen-1.8.3.1.src.tar.gz DOXYGEN_URL := http://wiki.openpilot.org/download/attachments/18612236/doxygen-1.8.3.1.src.tar.gz
else ifeq ($(UNAME), Windows) else ifeq ($(UNAME), Windows)
ARM_SDK_URL := http://wiki.openpilot.org/download/attachments/18612236/gcc-arm-none-eabi-4_7-2013q1-20130313-windows.tar.bz2 ARM_SDK_URL := https://launchpad.net/gcc-arm-embedded/4.8/4.8-2014-q1-update/+download/gcc-arm-none-eabi-4_8-2014q1-20140314-win32.zip
ARM_SDK_MD5_URL:= https://launchpad.net/gcc-arm-embedded/4.8/4.8-2014-q1-update/+download/gcc-arm-none-eabi-4_8-2014q1-20140314-win32.zip/+md5
QT_SDK_URL := http://download.qt-project.org/official_releases/qt/5.2/5.2.1/qt-opensource-windows-x86-mingw48_opengl-5.2.1.exe QT_SDK_URL := http://download.qt-project.org/official_releases/qt/5.2/5.2.1/qt-opensource-windows-x86-mingw48_opengl-5.2.1.exe
QT_SDK_MD5_URL := http://wiki.openpilot.org/download/attachments/18612236/qt-opensource-windows-x86-mingw48_opengl-5.2.1.exe.md5 QT_SDK_MD5_URL := http://wiki.openpilot.org/download/attachments/18612236/qt-opensource-windows-x86-mingw48_opengl-5.2.1.exe.md5
QT_SDK_ARCH := mingw48_32 QT_SDK_ARCH := mingw48_32
@ -90,7 +94,7 @@ endif
GTEST_URL := http://wiki.openpilot.org/download/attachments/18612236/gtest-1.6.0.zip GTEST_URL := http://wiki.openpilot.org/download/attachments/18612236/gtest-1.6.0.zip
# Changing PYTHON_DIR, also update it in ground/openpilotgcs/src/python.pri # Changing PYTHON_DIR, also update it in ground/openpilotgcs/src/python.pri
ARM_SDK_DIR := $(TOOLS_DIR)/gcc-arm-none-eabi-4_7-2013q1 ARM_SDK_DIR := $(TOOLS_DIR)/gcc-arm-none-eabi-4_8-2014q1
QT_SDK_DIR := $(TOOLS_DIR)/qt-5.2.1 QT_SDK_DIR := $(TOOLS_DIR)/qt-5.2.1
MINGW_DIR := $(QT_SDK_DIR)/Tools/mingw48_32 MINGW_DIR := $(QT_SDK_DIR)/Tools/mingw48_32
PYTHON_DIR := $(QT_SDK_DIR)/Tools/mingw48_32/opt/bin PYTHON_DIR := $(QT_SDK_DIR)/Tools/mingw48_32/opt/bin
@ -111,7 +115,7 @@ QT_SDK_PREFIX := $(QT_SDK_DIR)
BUILD_SDK_TARGETS := arm_sdk qt_sdk BUILD_SDK_TARGETS := arm_sdk qt_sdk
ifeq ($(UNAME), Windows) ifeq ($(UNAME), Windows)
BUILD_SDK_TARGETS += mingw sdl python nsis openssl BUILD_SDK_TARGETS += sdl nsis openssl
endif endif
ALL_SDK_TARGETS := $(BUILD_SDK_TARGETS) gtest uncrustify doxygen ALL_SDK_TARGETS := $(BUILD_SDK_TARGETS) gtest uncrustify doxygen
@ -275,39 +279,43 @@ endef
# $(1) = tool name # $(1) = tool name
# $(2) = tool extract/build directory # $(2) = tool extract/build directory
# $(3) = tool distribution URL # $(3) = tool distribution URL
# $(4) = tool distribution file # $(4) = tool distribution MD5 URL
# $(5) = optional extra build recipes template # $(5) = tool distribution file
# $(6) = optional extra clean recipes template # $(6) = optional extra build recipes template
# $(7) = optional extra clean recipes template
# #
############################## ##############################
define TOOL_INSTALL_TEMPLATE define TOOL_INSTALL_TEMPLATE
.PHONY: $(addprefix $(1)_, install clean distclean) .PHONY: $(addprefix $(1)_, install clean distclean)
$(1)_install: $(1)_clean | $(DL_DIR) $(TOOLS_DIR) $(1)_install: $(1)_clean | $(DL_DIR) $(TOOLS_DIR)
$(call DOWNLOAD_TEMPLATE,$(3),$(4),"$(3).md5") $(if $(4), $(call DOWNLOAD_TEMPLATE,$(3),$(5),$(4)),$(call DOWNLOAD_TEMPLATE,$(3),$(5),"$(3).md5"))
@$(ECHO) $(MSG_EXTRACTING) $$(call toprel, $(2)) @$(ECHO) $(MSG_EXTRACTING) $$(call toprel, $(2))
$(V1) $(MKDIR) -p $$(call toprel, $(dir $(2))) $(V1) $(MKDIR) -p $$(call toprel, $(dir $(2)))
$(if $(filter $(suffix $(4)), .zip),
$(V1) $(UNZIP) $(UNZIP_SILENT) -d $$(call toprel, $(dir $(2))) $$(call toprel, $(DL_DIR)/$(4)), $(if $(filter $(suffix $(5)), .zip),
$(V1) $(TAR) $(TAR_OPTIONS) -C $$(call toprel, $(dir $(2))) -xf $$(call toprel, $(DL_DIR)/$(4)) $(V1) $(UNZIP) $(UNZIP_SILENT) -d $$(call toprel, $(dir $(2))) $$(call toprel, $(DL_DIR)/$(5)),
$(V1) $(TAR) $(TAR_OPTIONS) -C $$(call toprel, $(dir $(2))) -xf $$(call toprel, $(DL_DIR)/$(5))
) )
$(5) $(6)
$(1)_clean: $(1)_clean:
@$(ECHO) $(MSG_CLEANING) $$(call toprel, $(2)) @$(ECHO) $(MSG_CLEANING) $$(call toprel, $(2))
$(V1) [ ! -d "$(2)" ] || $(RM) -rf "$(2)" $(V1) [ ! -d "$(2)" ] || $(RM) -rf "$(2)"
$(6) $(7)
$(1)_distclean: $(1)_distclean:
@$(ECHO) $(MSG_DISTCLEANING) $$(call toprel, $(DL_DIR)/$(4)) @$(ECHO) $(MSG_DISTCLEANING) $$(call toprel, $(DL_DIR)/$(5))
$(V1) [ ! -f "$(DL_DIR)/$(4)" ] || $(RM) "$(DL_DIR)/$(4)" $(V1) [ ! -f "$(DL_DIR)/$(5)" ] || $(RM) "$(DL_DIR)/$(5)"
$(V1) [ ! -f "$(DL_DIR)/$(4).md5" ] || $(RM) "$(DL_DIR)/$(4).md5" $(V1) [ ! -f "$(DL_DIR)/$(5).md5" ] || $(RM) "$(DL_DIR)/$(5).md5"
endef endef
@ -453,9 +461,13 @@ endef
# ARM SDK # ARM SDK
# #
############################## ##############################
ifeq ($(UNAME), Windows)
$(eval $(call TOOL_INSTALL_TEMPLATE,arm_sdk,$(ARM_SDK_DIR),$(ARM_SDK_URL),$(notdir $(ARM_SDK_URL)))) #unfortunately zip package for this release is missing root directory, so adding / at the end of the path
# so that template interpret last part as directory and use the full path
$(eval $(call TOOL_INSTALL_TEMPLATE,arm_sdk,$(ARM_SDK_DIR)/,$(ARM_SDK_URL),$(ARM_SDK_MD5_URL),$(notdir $(ARM_SDK_URL))))
else
$(eval $(call TOOL_INSTALL_TEMPLATE,arm_sdk,$(ARM_SDK_DIR),$(ARM_SDK_URL),$(ARM_SDK_MD5_URL),$(notdir $(ARM_SDK_URL))))
endif
ifeq ($(shell [ -d "$(ARM_SDK_DIR)" ] && $(ECHO) "exists"), exists) ifeq ($(shell [ -d "$(ARM_SDK_DIR)" ] && $(ECHO) "exists"), exists)
export ARM_SDK_PREFIX := $(ARM_SDK_DIR)/bin/arm-none-eabi- export ARM_SDK_PREFIX := $(ARM_SDK_DIR)/bin/arm-none-eabi-
else else
@ -471,7 +483,7 @@ arm_sdk_version:
# Template to check ARM toolchain version before building targets # Template to check ARM toolchain version before building targets
define ARM_GCC_VERSION_CHECK_TEMPLATE define ARM_GCC_VERSION_CHECK_TEMPLATE
if ! $(ARM_SDK_PREFIX)gcc --version --specs=nano.specs >/dev/null 2>&1; then \ if ! $(ARM_SDK_PREFIX)gcc --version --specs=nano.specs >/dev/null 2>&1; then \
$(ECHO) $(MSG_NOTICE) Please install ARM toolchain 4.7+ using \'make arm_sdk_install\' && \ $(ECHO) $(MSG_NOTICE) Please install ARM toolchain 4.8 2014q1 using \'make arm_sdk_install\' && \
$(ECHO) $(MSG_NOTICE) Older ARM SDKs do not support new \'--specs=nano.specs\' option && \ $(ECHO) $(MSG_NOTICE) Older ARM SDKs do not support new \'--specs=nano.specs\' option && \
exit 1; \ exit 1; \
fi fi
@ -600,7 +612,7 @@ python_version:
ifeq ($(UNAME), Windows) ifeq ($(UNAME), Windows)
$(eval $(call TOOL_INSTALL_TEMPLATE,nsis,$(NSIS_DIR),$(NSIS_URL),$(notdir $(NSIS_URL)))) $(eval $(call TOOL_INSTALL_TEMPLATE,nsis,$(NSIS_DIR),$(NSIS_URL),,$(notdir $(NSIS_URL))))
ifeq ($(shell [ -d "$(NSIS_DIR)" ] && $(ECHO) "exists"), exists) ifeq ($(shell [ -d "$(NSIS_DIR)" ] && $(ECHO) "exists"), exists)
export NSIS := $(NSIS_DIR)/makensis export NSIS := $(NSIS_DIR)/makensis
@ -624,7 +636,7 @@ endif
ifeq ($(UNAME), Windows) ifeq ($(UNAME), Windows)
$(eval $(call TOOL_INSTALL_TEMPLATE,sdl,$(SDL_DIR),$(SDL_URL),$(notdir $(SDL_URL)))) $(eval $(call TOOL_INSTALL_TEMPLATE,sdl,$(SDL_DIR),$(SDL_URL),,$(notdir $(SDL_URL))))
ifeq ($(shell [ -d "$(SDL_DIR)" ] && $(ECHO) "exists"), exists) ifeq ($(shell [ -d "$(SDL_DIR)" ] && $(ECHO) "exists"), exists)
export SDL_DIR := $(SDL_DIR) export SDL_DIR := $(SDL_DIR)
@ -647,7 +659,7 @@ endif
ifeq ($(UNAME), Windows) ifeq ($(UNAME), Windows)
$(eval $(call TOOL_INSTALL_TEMPLATE,openssl,$(OPENSSL_DIR),$(OPENSSL_URL),$(notdir $(OPENSSL_URL)))) $(eval $(call TOOL_INSTALL_TEMPLATE,openssl,$(OPENSSL_DIR),$(OPENSSL_URL),,$(notdir $(OPENSSL_URL))))
ifeq ($(shell [ -d "$(OPENSSL_DIR)" ] && $(ECHO) "exists"), exists) ifeq ($(shell [ -d "$(OPENSSL_DIR)" ] && $(ECHO) "exists"), exists)
export OPENSSL := "$(OPENSSL_DIR)/bin/openssl" export OPENSSL := "$(OPENSSL_DIR)/bin/openssl"
@ -671,7 +683,7 @@ endif
ifeq ($(UNAME), Windows) ifeq ($(UNAME), Windows)
$(eval $(call TOOL_INSTALL_TEMPLATE,uncrustify,$(UNCRUSTIFY_DIR),$(UNCRUSTIFY_URL),$(notdir $(UNCRUSTIFY_URL)))) $(eval $(call TOOL_INSTALL_TEMPLATE,uncrustify,$(UNCRUSTIFY_DIR),$(UNCRUSTIFY_URL),,$(notdir $(UNCRUSTIFY_URL))))
else # Linux or Mac else # Linux or Mac
@ -695,7 +707,7 @@ define UNCRUSTIFY_CLEAN_TEMPLATE
-$(V1) [ ! -d "$(UNCRUSTIFY_DIR)" ] || $(RM) -rf "$(UNCRUSTIFY_DIR)" -$(V1) [ ! -d "$(UNCRUSTIFY_DIR)" ] || $(RM) -rf "$(UNCRUSTIFY_DIR)"
endef endef
$(eval $(call TOOL_INSTALL_TEMPLATE,uncrustify,$(UNCRUSTIFY_BUILD_DIR),$(UNCRUSTIFY_URL),$(notdir $(UNCRUSTIFY_URL)),$(UNCRUSTIFY_BUILD_TEMPLATE),$(UNCRUSTIFY_CLEAN_TEMPLATE))) $(eval $(call TOOL_INSTALL_TEMPLATE,uncrustify,$(UNCRUSTIFY_BUILD_DIR),$(UNCRUSTIFY_URL),,$(notdir $(UNCRUSTIFY_URL)),$(UNCRUSTIFY_BUILD_TEMPLATE),$(UNCRUSTIFY_CLEAN_TEMPLATE)))
endif endif
@ -719,7 +731,7 @@ uncrustify_version:
ifeq ($(UNAME), Windows) ifeq ($(UNAME), Windows)
$(eval $(call TOOL_INSTALL_TEMPLATE,doxygen,$(DOXYGEN_DIR),$(DOXYGEN_URL),$(notdir $(DOXYGEN_URL)))) $(eval $(call TOOL_INSTALL_TEMPLATE,doxygen,$(DOXYGEN_DIR),$(DOXYGEN_URL),,$(notdir $(DOXYGEN_URL))))
else # Linux or Mac else # Linux or Mac
@ -743,7 +755,7 @@ define DOXYGEN_CLEAN_TEMPLATE
-$(V1) [ ! -d "$(DOXYGEN_DIR)" ] || $(RM) -rf "$(DOXYGEN_DIR)" -$(V1) [ ! -d "$(DOXYGEN_DIR)" ] || $(RM) -rf "$(DOXYGEN_DIR)"
endef endef
$(eval $(call TOOL_INSTALL_TEMPLATE,doxygen,$(DOXYGEN_BUILD_DIR),$(DOXYGEN_URL),$(notdir $(DOXYGEN_URL)),$(DOXYGEN_BUILD_TEMPLATE),$(DOXYGEN_CLEAN_TEMPLATE))) $(eval $(call TOOL_INSTALL_TEMPLATE,doxygen,$(DOXYGEN_BUILD_DIR),$(DOXYGEN_URL),,$(notdir $(DOXYGEN_URL)),$(DOXYGEN_BUILD_TEMPLATE),$(DOXYGEN_CLEAN_TEMPLATE)))
endif endif
@ -765,7 +777,7 @@ doxygen_version:
# #
############################## ##############################
$(eval $(call TOOL_INSTALL_TEMPLATE,gtest,$(GTEST_DIR),$(GTEST_URL),$(notdir $(GTEST_URL)))) $(eval $(call TOOL_INSTALL_TEMPLATE,gtest,$(GTEST_DIR),$(GTEST_URL),,$(notdir $(GTEST_URL))))
export GTEST_DIR export GTEST_DIR