From 8369e3324552c96a193cb20bc9bd87db7d9f7fff Mon Sep 17 00:00:00 2001 From: Mark Charlebois Date: Fri, 11 Sep 2015 18:32:44 -0700 Subject: [PATCH] cmake: Fixes for qurt and nuttx Added px4_parameters.c to nuttx executable src list. Minor syntax fix in Tools/px_generate_params.py for semicolon. Added handling of PX4_MAIN which was not yet supoprted in the cmake build. Fixed include quotes in muorb_test_example.cpp Signed-off-by: Mark Charlebois --- Tools/px_generate_params.py | 6 +++--- cmake/common/px4_base.cmake | 3 +++ cmake/configs/qurt_eagle_hello.cmake | 6 ------ cmake/configs/qurt_eagle_test.cmake | 8 ++++---- cmake/configs/qurt_eagle_travis.cmake | 2 +- src/firmware/nuttx/CMakeLists.txt | 2 +- src/firmware/qurt/CMakeLists.txt | 2 ++ src/platforms/qurt/tests/muorb/muorb_test_example.cpp | 2 +- 8 files changed, 15 insertions(+), 16 deletions(-) diff --git a/Tools/px_generate_params.py b/Tools/px_generate_params.py index b468867523..c73b842875 100755 --- a/Tools/px_generate_params.py +++ b/Tools/px_generate_params.py @@ -82,12 +82,12 @@ src += """ }; #ifdef __PX4_DARWIN -#define ___param__attributes ; +#define ___param__attributes #else -#define ___param__attributes __attribute__((alias("px4_parameters_impl"))); +#define ___param__attributes __attribute__((alias("px4_parameters_impl"))) #endif -extern const struct px4_parameters_t px4_parameters ___param__attributes +extern const struct px4_parameters_t px4_parameters ___param__attributes; """ % i fp_header.write(header) diff --git a/cmake/common/px4_base.cmake b/cmake/common/px4_base.cmake index 4b42f388cf..0142d21736 100644 --- a/cmake/common/px4_base.cmake +++ b/cmake/common/px4_base.cmake @@ -273,6 +273,9 @@ function(px4_add_module) endif() endforeach() foreach (prop STACK MAIN COMPILE_FLAGS LINK_FLAGS PRIORITY) + if ("${prop}" STREQUAL "MAIN") + add_definitions(-DPX4_MAIN=${${prop}}_app_main) + endif() if (${prop}) set_target_properties(${MODULE} PROPERTIES "${prop}" "${${prop}}") endif() diff --git a/cmake/configs/qurt_eagle_hello.cmake b/cmake/configs/qurt_eagle_hello.cmake index 43db471f69..9076ec7511 100644 --- a/cmake/configs/qurt_eagle_hello.cmake +++ b/cmake/configs/qurt_eagle_hello.cmake @@ -24,10 +24,4 @@ set(config_module_list platforms/posix/work_queue platforms/qurt/tests/hello ) - set(${out_module_list} ${config_module_list} PARENT_SCOPE) - - # output - set(${OUT_MODULES} ${config_module_list} PARENT_SCOPE) - -endfunction() diff --git a/cmake/configs/qurt_eagle_test.cmake b/cmake/configs/qurt_eagle_test.cmake index 501c7fbeb8..c25191f5b9 100644 --- a/cmake/configs/qurt_eagle_test.cmake +++ b/cmake/configs/qurt_eagle_test.cmake @@ -14,7 +14,7 @@ set(config_module_list # Library modules # modules/systemlib - modules/mixer + modules/systemlib/mixer modules/uORB # @@ -31,8 +31,8 @@ set(config_module_list platforms/qurt/px4_layer platforms/posix/work_queue platforms/qurt/tests/hello - platforms/qurt/tests/vcdev_test - platforms/qurt/tests/hrt_test - platforms/qurt/tests/wqueue + platforms/posix/tests/vcdev_test + platforms/posix/tests/hrt_test + platforms/posix/tests/wqueue ) diff --git a/cmake/configs/qurt_eagle_travis.cmake b/cmake/configs/qurt_eagle_travis.cmake index 61b171d14d..ab766f189c 100644 --- a/cmake/configs/qurt_eagle_travis.cmake +++ b/cmake/configs/qurt_eagle_travis.cmake @@ -1,7 +1,7 @@ include(qurt/px4_impl_qurt) # Run a full link with build stubs to make sure qurt target isn't broken -set(QURT_ENABLE_STUBS 1) +set(QURT_ENABLE_STUBS "1") set(CMAKE_TOOLCHAIN_FILE cmake/toolchains/Toolchain-hexagon.cmake) diff --git a/src/firmware/nuttx/CMakeLists.txt b/src/firmware/nuttx/CMakeLists.txt index 13118146f5..39abf9161a 100644 --- a/src/firmware/nuttx/CMakeLists.txt +++ b/src/firmware/nuttx/CMakeLists.txt @@ -11,7 +11,7 @@ px4_nuttx_generate_romfs(OUT romfs.o px4_generate_parameters() # add executable -add_executable(firmware_nuttx builtin_commands.c romfs.o) +add_executable(firmware_nuttx builtin_commands.c ${CMAKE_BINARY_DIR}/px4_parameters.c romfs.o) set(nuttx_export_dir ${CMAKE_BINARY_DIR}/${BOARD}/NuttX/nuttx-export) set(main_link_flags "-T${nuttx_export_dir}/build/ld.script" diff --git a/src/firmware/qurt/CMakeLists.txt b/src/firmware/qurt/CMakeLists.txt index 8e8b3ea7f5..6e6ed042ee 100644 --- a/src/firmware/qurt/CMakeLists.txt +++ b/src/firmware/qurt/CMakeLists.txt @@ -20,10 +20,12 @@ px4_generate_parameters() if ("${QURT_ENABLE_STUBS}" STREQUAL "1") add_executable(mainapp ${CMAKE_SOURCE_DIR}/src/platforms/qurt/dspal/dspal_stub.c + ${CMAKE_BINARY_DIR}/px4_parameters.c ${CMAKE_BINARY_DIR}/apps.h) else("${QURT_ENABLE_STUBS}" STREQUAL "1") add_library(mainapp ${CMAKE_SOURCE_DIR}/src/platforms/qurt/dspal/dspal_stub.c + ${CMAKE_BINARY_DIR}/px4_parameters.c ${CMAKE_BINARY_DIR}/apps.h) endif() diff --git a/src/platforms/qurt/tests/muorb/muorb_test_example.cpp b/src/platforms/qurt/tests/muorb/muorb_test_example.cpp index 2628b56a3b..3b932b5f13 100644 --- a/src/platforms/qurt/tests/muorb/muorb_test_example.cpp +++ b/src/platforms/qurt/tests/muorb/muorb_test_example.cpp @@ -45,7 +45,7 @@ #include #include "uORB/topics/sensor_combined.h" #include "uORB/topics/pwm_input.h" -#include "uORB.h" +#include "modules/uORB/uORB.h" #include "px4_middleware.h" #include "px4_defines.h" #include