Gustavo Jose de Sousa
9 years ago
committed by
Lucas De Marchi
5 changed files with 199 additions and 0 deletions
@ -0,0 +1,62 @@
@@ -0,0 +1,62 @@
|
||||
#!/usr/bin/env python |
||||
# encoding: utf-8 |
||||
|
||||
""" |
||||
Waf tool for PX4 build |
||||
""" |
||||
|
||||
import os |
||||
|
||||
def configure(cfg): |
||||
cfg.load('cmake') |
||||
|
||||
env = cfg.env |
||||
|
||||
def srcpath(path): |
||||
return cfg.srcnode.make_node(path).abspath() |
||||
|
||||
env.PX4_CMAKE_VARS = dict( |
||||
CONFIG='nuttx_px4fmu-v%s_apm' % env.get_flat('PX4_VERSION'), |
||||
CMAKE_MODULE_PATH=srcpath('Tools/ardupilotwaf/px4/cmake'), |
||||
UAVCAN_LIBUAVCAN_PATH=srcpath('modules/uavcan'), |
||||
NUTTX_SRC=srcpath('modules/PX4NuttX'), |
||||
EXTRA_CXX_FLAGS=' '.join(( |
||||
# NOTE: these "-Wno-error=*" flags should be removed as we update |
||||
# the submodule |
||||
'-Wno-error=double-promotion', |
||||
'-Wno-error=reorder', |
||||
# NOTE: *Temporarily* using this definition so that both |
||||
# PX4Firmware build systems (cmake and legacy make-based) can live |
||||
# together |
||||
'-DCMAKE_BUILD', |
||||
'-I%s' % bldpath('libraries/GCS_MAVLink'), |
||||
'-Wl,--gc-sections', |
||||
)), |
||||
EXTRA_C_FLAGS=' '.join(( |
||||
# NOTE: *Temporarily* using this definition so that both |
||||
# PX4Firmware build systems (cmake and legacy make-based) can live |
||||
# together |
||||
'-DCMAKE_BUILD', |
||||
)), |
||||
) |
||||
|
||||
def build(bld): |
||||
version = bld.env.get_flat('PX4_VERSION') |
||||
px4 = bld( |
||||
features='cmake_configure', |
||||
name='px4', |
||||
cmake_src=bld.srcnode.find_dir('modules/PX4Firmware'), |
||||
cmake_vars=bld.env.PX4_CMAKE_VARS, |
||||
group='dynamic_sources', |
||||
) |
||||
|
||||
px4.cmake_build( |
||||
'msg_gen', |
||||
group='dynamic_sources', |
||||
cmake_output_patterns='src/modules/uORB/topics/*.h', |
||||
) |
||||
px4.cmake_build( |
||||
'prebuild_targets', |
||||
group='dynamic_sources', |
||||
cmake_output_patterns='px4fmu-v%s/NuttX/nuttx-export/**/*.h' % version, |
||||
) |
@ -0,0 +1,88 @@
@@ -0,0 +1,88 @@
|
||||
include(nuttx/px4_impl_nuttx) |
||||
|
||||
set(CMAKE_TOOLCHAIN_FILE ${CMAKE_SOURCE_DIR}/cmake/toolchains/Toolchain-arm-none-eabi.cmake) |
||||
|
||||
set(config_module_list |
||||
platforms/common |
||||
platforms/nuttx |
||||
platforms/nuttx/px4_layer |
||||
modules/param |
||||
# |
||||
# Board support modules |
||||
# |
||||
drivers/device |
||||
drivers/stm32 |
||||
drivers/stm32/adc |
||||
drivers/stm32/tone_alarm |
||||
drivers/led |
||||
drivers/px4fmu |
||||
drivers/rgbled |
||||
drivers/mpu6000 |
||||
drivers/hmc5883 |
||||
drivers/ms5611 |
||||
drivers/mb12xx |
||||
drivers/ll40ls |
||||
drivers/trone |
||||
drivers/airspeed |
||||
drivers/ets_airspeed |
||||
drivers/meas_airspeed |
||||
drivers/mkblctrl |
||||
drivers/batt_smbus |
||||
drivers/irlock |
||||
|
||||
# |
||||
# System commands |
||||
# |
||||
systemcmds/bl_update |
||||
systemcmds/mixer |
||||
systemcmds/perf |
||||
systemcmds/pwm |
||||
systemcmds/reboot |
||||
systemcmds/top |
||||
systemcmds/nshterm |
||||
systemcmds/mtd |
||||
systemcmds/ver |
||||
systemcmds/reflect |
||||
systemcmds/motor_test |
||||
systemcmds/usb_connected |
||||
|
||||
# |
||||
# Library modules |
||||
# |
||||
modules/systemlib |
||||
modules/systemlib/mixer |
||||
modules/uORB |
||||
lib/mathlib/math/filter |
||||
lib/conversion |
||||
) |
||||
|
||||
set(config_extra_builtin_cmds |
||||
serdis |
||||
sercon |
||||
ArduPilot |
||||
) |
||||
|
||||
set(config_extra_libs |
||||
${CMAKE_SOURCE_DIR}/src/lib/mathlib/CMSIS/libarm_cortexM4lf_math.a |
||||
${APM_PROGRAM_LIB} |
||||
) |
||||
|
||||
set(config_uavcan_num_ifaces 2) |
||||
|
||||
add_custom_target(sercon) |
||||
set_target_properties(sercon PROPERTIES |
||||
MAIN "sercon" |
||||
STACK "2048" |
||||
) |
||||
|
||||
add_custom_target(serdis) |
||||
set_target_properties(serdis PROPERTIES |
||||
MAIN "serdis" |
||||
STACK "2048" |
||||
) |
||||
|
||||
add_custom_target(ArduPilot) |
||||
set_target_properties(ArduPilot PROPERTIES |
||||
MAIN "ArduPilot" |
||||
STACK "4096" |
||||
) |
@ -0,0 +1,12 @@
@@ -0,0 +1,12 @@
|
||||
include(configs/nuttx_px4fmu-common_apm) |
||||
|
||||
list(APPEND config_module_list |
||||
drivers/boards/px4fmu-v1 |
||||
drivers/px4io |
||||
drivers/px4flow |
||||
) |
||||
|
||||
set(config_io_board |
||||
px4io-v1 |
||||
) |
||||
|
@ -0,0 +1,23 @@
@@ -0,0 +1,23 @@
|
||||
include(configs/nuttx_px4fmu-common_apm) |
||||
|
||||
list(APPEND config_module_list |
||||
drivers/lsm303d |
||||
drivers/l3gd20 |
||||
drivers/mpu9250 |
||||
drivers/boards/px4fmu-v2 |
||||
drivers/pwm_input |
||||
modules/uavcan |
||||
lib/mathlib |
||||
drivers/px4io |
||||
drivers/px4flow |
||||
drivers/oreoled |
||||
) |
||||
|
||||
list(APPEND config_extra_libs |
||||
uavcan |
||||
uavcan_stm32_driver |
||||
) |
||||
|
||||
set(config_io_board |
||||
px4io-v2 |
||||
) |
@ -0,0 +1,14 @@
@@ -0,0 +1,14 @@
|
||||
include(configs/nuttx_px4fmu-common_apm) |
||||
|
||||
list(APPEND config_module_list |
||||
drivers/mpu9250 |
||||
drivers/boards/px4fmu-v4 |
||||
drivers/pwm_input |
||||
modules/uavcan |
||||
lib/mathlib |
||||
) |
||||
|
||||
list(APPEND config_extra_libs |
||||
uavcan |
||||
uavcan_stm32_driver |
||||
) |
Loading…
Reference in new issue