mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-10-19 00:43:34 +08:00
Build fixes for qurt after rebase on PX4 master
Removed the re-definitions of the usage method in the posix/main.cpp file. Added qurt_external_hook interface to call externally linked module. Fixed code format to comply with PX4 style. Added usage information to main app and handled cases for unknown arguments. Fixed the orb_priority interface to use int32_t instead of int. Fixes to get hil working with led changes. Added the config_eagle_adsp.mk file and update the make files to to use new include/lib paths Signed-off-by: Mark Charlebois <charlebm@gmail.com>
This commit is contained in:
@@ -0,0 +1,57 @@
|
||||
#
|
||||
# Makefile for the EAGLE *default* configuration
|
||||
#
|
||||
|
||||
#
|
||||
# Board support modules
|
||||
#
|
||||
MODULES += drivers/device
|
||||
|
||||
#
|
||||
# System commands
|
||||
#
|
||||
MODULES += systemcmds/param
|
||||
MODULES += systemcmds/ver
|
||||
|
||||
#
|
||||
# General system control
|
||||
#
|
||||
MODULES += modules/mavlink
|
||||
|
||||
#
|
||||
# Estimation modules (EKF/ SO3 / other filters)
|
||||
#
|
||||
|
||||
#
|
||||
# Vehicle Control
|
||||
#
|
||||
|
||||
#
|
||||
# Library modules
|
||||
#
|
||||
MODULES += modules/systemlib
|
||||
MODULES += modules/uORB
|
||||
MODULES += modules/dataman
|
||||
|
||||
#
|
||||
# Libraries
|
||||
#
|
||||
MODULES += lib/mathlib
|
||||
MODULES += lib/mathlib/math/filter
|
||||
MODULES += lib/geo
|
||||
MODULES += lib/geo_lookup
|
||||
MODULES += lib/conversion
|
||||
#
|
||||
# Linux port
|
||||
#
|
||||
MODULES += platforms/posix/px4_layer
|
||||
MODULES += platforms/posix/work_queue
|
||||
|
||||
#
|
||||
# Unit tests
|
||||
#
|
||||
|
||||
#
|
||||
# muorb fastrpc changes.
|
||||
#
|
||||
MODULES += modules/muorb/krait
|
||||
@@ -6,6 +6,7 @@
|
||||
# Board support modules
|
||||
#
|
||||
MODULES += drivers/device
|
||||
MODULES += drivers/boards/sitl
|
||||
#MODULES += drivers/blinkm
|
||||
#MODULES += drivers/pwm_out_sim
|
||||
#MODULES += drivers/rgbled
|
||||
|
||||
@@ -39,14 +39,17 @@
|
||||
#
|
||||
CROSSDEV = arm-linux-gnueabihf-
|
||||
|
||||
CC = $(CROSSDEV)gcc
|
||||
CXX = $(CROSSDEV)g++
|
||||
CPP = $(CROSSDEV)gcc -E
|
||||
LD = $(CROSSDEV)ld
|
||||
AR = $(CROSSDEV)ar rcs
|
||||
NM = $(CROSSDEV)nm
|
||||
OBJCOPY = $(CROSSDEV)objcopy
|
||||
OBJDUMP = $(CROSSDEV)objdump
|
||||
CC ?= $(CROSSDEV)gcc
|
||||
CXX ?= $(CROSSDEV)g++
|
||||
CPP ?= $(CROSSDEV)gcc -E
|
||||
LD ?= $(CROSSDEV)ld
|
||||
AR ?= $(CROSSDEV)ar rcs
|
||||
NM ?= $(CROSSDEV)nm
|
||||
OBJCOPY ?= $(CROSSDEV)objcopy
|
||||
OBJDUMP ?= $(CROSSDEV)objdump
|
||||
ifdef OECORE_NATIVE_SYSROOT
|
||||
AR := $(AR) rcs
|
||||
endif
|
||||
|
||||
# Check if the right version of the toolchain is available
|
||||
#
|
||||
@@ -57,7 +60,9 @@ ifeq (,$(findstring $(CROSSDEV_VER_FOUND), $(CROSSDEV_VER_SUPPORTED)))
|
||||
$(error Unsupported version of $(CC), found: $(CROSSDEV_VER_FOUND) instead of one in: $(CROSSDEV_VER_SUPPORTED))
|
||||
endif
|
||||
|
||||
EXT_MUORB_LIB_ROOT = /opt/muorb_libs
|
||||
ifndef POSIX_EXT_LIB_ROOT
|
||||
$(error POSIX_EXT_LIB_ROOT is not set)
|
||||
endif
|
||||
|
||||
# XXX this is pulled pretty directly from the fmu Make.defs - needs cleanup
|
||||
|
||||
@@ -189,7 +194,8 @@ LIBM := $(shell $(CC) $(ARCHCPUFLAGS) -print-file-name=libm.a)
|
||||
EXTRA_LIBS += -lpx4muorb -ladsprpc
|
||||
EXTRA_LIBS += -pthread -lm -lrt
|
||||
|
||||
LIB_DIRS += $(EXT_MUORB_LIB_ROOT)/krait/libs
|
||||
LIB_DIRS += $(POSIX_EXT_LIB_ROOT)/libs
|
||||
INCLUDE_DIRS += $(POSIX_EXT_LIB_ROOT)/inc
|
||||
|
||||
# Flags we pass to the C compiler
|
||||
#
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
#
|
||||
# Board support modules
|
||||
#
|
||||
MODULES += drivers/boards/sitl
|
||||
MODULES += drivers/device
|
||||
MODULES += drivers/blinkm
|
||||
MODULES += drivers/pwm_out_sim
|
||||
|
||||
@@ -1,8 +1,19 @@
|
||||
#Added configuration specific flags here.
|
||||
|
||||
ifndef HEXAGON_DRIVERS_ROOT
|
||||
$(error HEXAGON_DRIVERS_ROOT is not set)
|
||||
endif
|
||||
ifndef EAGLE_DRIVERS_SRC
|
||||
$(error EAGLE_DRIVERS_SRC is not set)
|
||||
endif
|
||||
|
||||
INCLUDE_DIRS += $(HEXAGON_DRIVERS_ROOT)/inc
|
||||
|
||||
# For Actual flight we need to link against the driver dynamic libraries
|
||||
LDFLAGS += -L${DSPAL_ROOT}/mpu_spi/hexagon_Debug_dynamic_toolv64/ship -lmpu9x50
|
||||
LDFLAGS += -L${DSPAL_ROOT}/uart_esc/hexagon_Debug_dynamic_toolv64/ship -luart_esc
|
||||
LDFLAGS += -L${HEXAGON_DRIVERS_ROOT}/libs -lmpu9x50
|
||||
LDFLAGS += -luart_esc
|
||||
LDFLAGS += -lcsr_gps
|
||||
LDFLAGS += -lrc_receiver
|
||||
|
||||
#
|
||||
# Makefile for the EAGLE QuRT *default* configuration
|
||||
@@ -13,8 +24,10 @@ LDFLAGS += -L${DSPAL_ROOT}/uart_esc/hexagon_Debug_dynamic_toolv64/ship -luart_es
|
||||
#
|
||||
MODULES += drivers/device
|
||||
MODULES += modules/sensors
|
||||
#MODULES += platforms/qurt/drivers/mpu9x50
|
||||
#MODULES += platforms/qurt/drivers/uart_esc
|
||||
MODULES += $(EAGLE_DRIVERS_SRC)/mpu9x50
|
||||
MODULES += $(EAGLE_DRIVERS_SRC)/uart_esc
|
||||
MODULES += $(EAGLE_DRIVERS_SRC)/rc_receiver
|
||||
MODULES += $(EAGLE_DRIVERS_SRC)/csr_gps
|
||||
|
||||
#
|
||||
# System commands
|
||||
@@ -47,6 +60,7 @@ MODULES += modules/systemlib/mixer
|
||||
MODULES += modules/uORB
|
||||
#MODULES += modules/dataman
|
||||
MODULES += modules/commander
|
||||
MODULES += modules/controllib
|
||||
|
||||
#
|
||||
# Libraries
|
||||
@@ -61,6 +75,7 @@ MODULES += lib/conversion
|
||||
# QuRT port
|
||||
#
|
||||
MODULES += platforms/qurt/px4_layer
|
||||
MODULES += platforms/posix/work_queue
|
||||
|
||||
#
|
||||
# Unit tests
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
# Board support modules
|
||||
#
|
||||
MODULES += drivers/device
|
||||
MODULES += drivers/boards/sitl
|
||||
#MODULES += drivers/blinkm
|
||||
MODULES += drivers/pwm_out_sim
|
||||
MODULES += drivers/led
|
||||
|
||||
@@ -53,8 +53,7 @@ $(FIRMWARES): $(BUILD_DIR)%.build/firmware.a: generateuorbtopicheaders
|
||||
WORK_DIR=$(work_dir) \
|
||||
$(FIRMWARE_GOAL)
|
||||
|
||||
HEXAGON_TOOLS_ROOT = /opt/6.4.05
|
||||
#V_ARCH = v4
|
||||
HEXAGON_TOOLS_ROOT ?= /opt/6.4.03
|
||||
V_ARCH = v5
|
||||
HEXAGON_CLANG_BIN = $(addsuffix /qc/bin,$(HEXAGON_TOOLS_ROOT))
|
||||
SIM = $(HEXAGON_CLANG_BIN)/hexagon-sim
|
||||
|
||||
@@ -36,11 +36,11 @@
|
||||
#$(info TOOLCHAIN gnu-arm-eabi)
|
||||
|
||||
#
|
||||
# Stop making if ADSP_LIB_ROOT is not set. This defines the path to
|
||||
# DspAL headers and driver headers
|
||||
# Stop making if DSPAL paths are not set. This defines the path to
|
||||
# DspAL headers and libs
|
||||
#
|
||||
ifndef DSPAL_ROOT
|
||||
$(error DSPAL_ROOT is not set)
|
||||
ifndef DSPAL_INCS
|
||||
$(error DSPAL_INCS is not set)
|
||||
endif
|
||||
|
||||
# Toolchain commands. Normally only used inside this file.
|
||||
@@ -57,7 +57,6 @@ HEXAGON_ISS_DIR = $(HEXAGON_TOOLS_ROOT)/qc/lib/iss
|
||||
TOOLSLIB = $(HEXAGON_TOOLS_ROOT)/dinkumware/lib/$(V_ARCH)/G0
|
||||
QCTOOLSLIB = $(HEXAGON_TOOLS_ROOT)/qc/lib/$(V_ARCH)/G0
|
||||
QURTLIB = $(HEXAGON_SDK_ROOT)/lib/common/qurt/ADSP$(V_ARCH)MP/lib
|
||||
#DSPAL = $(PX4_BASE)/../dspal_libs/libdspal.a
|
||||
|
||||
|
||||
CC = $(HEXAGON_CLANG_BIN)/$(CROSSDEV)clang
|
||||
@@ -93,8 +92,7 @@ DYNAMIC_LIBS = \
|
||||
|
||||
# Check if the right version of the toolchain is available
|
||||
#
|
||||
CROSSDEV_VER_SUPPORTED = 6.4.03
|
||||
#CROSSDEV_VER_SUPPORTED = 6.4.05
|
||||
CROSSDEV_VER_SUPPORTED = 6.4.03 6.4.05
|
||||
CROSSDEV_VER_FOUND = $(shell $(CC) --version | sed -n 's/^.*version \([\. 0-9]*\),.*$$/\1/p')
|
||||
|
||||
ifeq (,$(findstring $(CROSSDEV_VER_FOUND), $(CROSSDEV_VER_SUPPORTED)))
|
||||
@@ -122,18 +120,17 @@ ARCHDEFINES += -DCONFIG_ARCH_BOARD_$(CONFIG_BOARD) \
|
||||
-Dnoreturn_function= \
|
||||
-D__EXPORT= \
|
||||
-Drestrict= \
|
||||
-D_DEBUG \
|
||||
-I$(DSPAL_ROOT)/ \
|
||||
-I$(DSPAL_ROOT)/dspal/include \
|
||||
-I$(DSPAL_ROOT)/dspal/sys \
|
||||
-I$(DSPAL_ROOT)/dspal/sys/sys \
|
||||
-I$(DSPAL_ROOT)/mpu_spi/inc/ \
|
||||
-I$(DSPAL_ROOT)/uart_esc/inc/ \
|
||||
-D_DEBUG \
|
||||
-I$(DSPAL_INCS)/ \
|
||||
-I$(DSPAL_INCS)/dspal/include \
|
||||
-I$(DSPAL_INCS)/dspal/sys \
|
||||
-I$(DSPAL_INCS)/dspal/sys/sys \
|
||||
-I$(HEXAGON_TOOLS_ROOT)/gnu/hexagon/include \
|
||||
-I$(PX4_BASE)/src/lib/eigen \
|
||||
-I$(PX4_BASE)/src/platforms/qurt/include \
|
||||
-I$(PX4_BASE)/src/platforms/posix/include \
|
||||
-I$(PX4_BASE)/mavlink/include/mavlink \
|
||||
-I$(PX4_BASE)/../inc \
|
||||
-I$(QURTLIB)/..//include \
|
||||
-I$(HEXAGON_SDK_ROOT)/inc \
|
||||
-I$(HEXAGON_SDK_ROOT)/inc/stddef \
|
||||
|
||||
Reference in New Issue
Block a user