From 7749d1cb1c87fd79d0d4ad3bb43d40d365d3c4c4 Mon Sep 17 00:00:00 2001 From: Daniel Agar Date: Tue, 6 Oct 2015 13:45:53 -0400 Subject: [PATCH 01/11] cmake fix export paths for ninja -make nuttx build a bit quieter --- cmake/nuttx/px4_impl_nuttx.cmake | 21 ++++++++------------- 1 file changed, 8 insertions(+), 13 deletions(-) diff --git a/cmake/nuttx/px4_impl_nuttx.cmake b/cmake/nuttx/px4_impl_nuttx.cmake index 89ec3d44c2..72515c9d45 100644 --- a/cmake/nuttx/px4_impl_nuttx.cmake +++ b/cmake/nuttx/px4_impl_nuttx.cmake @@ -222,27 +222,22 @@ function(px4_nuttx_add_export) # export file(GLOB_RECURSE config_files ${CMAKE_SOURCE_DIR}/nuttx-configs/${CONFIG}/*) - add_custom_command(OUTPUT ${CONFIG}.export + add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/${CONFIG}.export COMMAND ${ECHO} Configuring NuttX for ${CONFIG} - COMMAND ${MAKE} -C${nuttx_src}/nuttx -j${THREADS} - -r --quiet distclean - COMMAND ${CP} -r ${CMAKE_SOURCE_DIR}/nuttx-configs/${CONFIG} - ${nuttx_src}/nuttx/configs - COMMAND cd ${nuttx_src}/nuttx/tools && - ./configure.sh ${CONFIG}/nsh + COMMAND ${MAKE} -C${nuttx_src}/nuttx -r --quiet distclean + COMMAND ${CP} -r ${CMAKE_SOURCE_DIR}/nuttx-configs/${CONFIG} ${nuttx_src}/nuttx/configs + COMMAND cd ${nuttx_src}/nuttx/tools && ./configure.sh ${CONFIG}/nsh COMMAND ${ECHO} Exporting NuttX for ${CONFIG} - COMMAND ${MAKE} -C ${nuttx_src}/nuttx -j${THREADS} - -r CONFIG_ARCH_BOARD=${CONFIG} export - COMMAND ${CP} -r ${nuttx_src}/nuttx/nuttx-export.zip - ${CONFIG}.export + COMMAND ${MAKE} --quiet -C ${nuttx_src}/nuttx -j${THREADS} -r CONFIG_ARCH_BOARD=${CONFIG} export + COMMAND ${CP} -r ${nuttx_src}/nuttx/nuttx-export.zip ${CMAKE_BINARY_DIR}/${CONFIG}.export DEPENDS ${config_files} ${DEPENDS} __nuttx_copy_${CONFIG}) # extract add_custom_command(OUTPUT nuttx_export_${CONFIG}.stamp COMMAND ${RM} -rf ${nuttx_src}/nuttx-export - COMMAND ${UNZIP} ${CONFIG}.export -d ${nuttx_src} + COMMAND ${UNZIP} -q ${CMAKE_BINARY_DIR}/${CONFIG}.export -d ${nuttx_src} COMMAND ${TOUCH} nuttx_export_${CONFIG}.stamp - DEPENDS ${DEPENDS} ${CONFIG}.export) + DEPENDS ${DEPENDS} ${CMAKE_BINARY_DIR}/${CONFIG}.export) add_custom_target(${OUT} DEPENDS nuttx_export_${CONFIG}.stamp) From 330bacd229ab9b540e757d3acae491986187dd27 Mon Sep 17 00:00:00 2001 From: Daniel Agar Date: Tue, 6 Oct 2015 14:00:48 -0400 Subject: [PATCH 02/11] cmake nuttx slightly quieter --- cmake/nuttx/px4_impl_nuttx.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cmake/nuttx/px4_impl_nuttx.cmake b/cmake/nuttx/px4_impl_nuttx.cmake index 72515c9d45..f48bdc135c 100644 --- a/cmake/nuttx/px4_impl_nuttx.cmake +++ b/cmake/nuttx/px4_impl_nuttx.cmake @@ -224,11 +224,11 @@ function(px4_nuttx_add_export) file(GLOB_RECURSE config_files ${CMAKE_SOURCE_DIR}/nuttx-configs/${CONFIG}/*) add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/${CONFIG}.export COMMAND ${ECHO} Configuring NuttX for ${CONFIG} - COMMAND ${MAKE} -C${nuttx_src}/nuttx -r --quiet distclean + COMMAND ${MAKE} --no-print-directory -C${nuttx_src}/nuttx -r --quiet distclean COMMAND ${CP} -r ${CMAKE_SOURCE_DIR}/nuttx-configs/${CONFIG} ${nuttx_src}/nuttx/configs COMMAND cd ${nuttx_src}/nuttx/tools && ./configure.sh ${CONFIG}/nsh COMMAND ${ECHO} Exporting NuttX for ${CONFIG} - COMMAND ${MAKE} --quiet -C ${nuttx_src}/nuttx -j${THREADS} -r CONFIG_ARCH_BOARD=${CONFIG} export + COMMAND ${MAKE} --no-print-directory --quiet -C ${nuttx_src}/nuttx -j${THREADS} -r CONFIG_ARCH_BOARD=${CONFIG} export COMMAND ${CP} -r ${nuttx_src}/nuttx/nuttx-export.zip ${CMAKE_BINARY_DIR}/${CONFIG}.export DEPENDS ${config_files} ${DEPENDS} __nuttx_copy_${CONFIG}) From f13daa73147427ca78149913529854e4a9824ab3 Mon Sep 17 00:00:00 2001 From: Daniel Agar Date: Tue, 6 Oct 2015 14:32:31 -0400 Subject: [PATCH 03/11] cmake fix NuttX copy -on the 2nd run this was copying NuttX to NuttX/Nuttx --- cmake/nuttx/px4_impl_nuttx.cmake | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/cmake/nuttx/px4_impl_nuttx.cmake b/cmake/nuttx/px4_impl_nuttx.cmake index f48bdc135c..13d120af26 100644 --- a/cmake/nuttx/px4_impl_nuttx.cmake +++ b/cmake/nuttx/px4_impl_nuttx.cmake @@ -213,8 +213,7 @@ function(px4_nuttx_add_export) # copy add_custom_command(OUTPUT nuttx_copy_${CONFIG}.stamp COMMAND ${MKDIR} -p ${CMAKE_BINARY_DIR}/${CONFIG} - COMMAND ${CP} -r ${CMAKE_SOURCE_DIR}/NuttX ${nuttx_src} - COMMAND ${RM} -rf ${nuttx_src}/.git + COMMAND rsync -a --exclude=.git ${CMAKE_SOURCE_DIR}/NuttX/ ${nuttx_src}/ COMMAND ${TOUCH} nuttx_copy_${CONFIG}.stamp DEPENDS ${DEPENDS}) add_custom_target(__nuttx_copy_${CONFIG} From 74a61a3610f8a9609abb712ac4cec0371c0f2770 Mon Sep 17 00:00:00 2001 From: Daniel Agar Date: Tue, 6 Oct 2015 14:57:55 -0400 Subject: [PATCH 04/11] cmake allow Ninja generator --- Makefile | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 1d2cd152ff..56ec849d7b 100644 --- a/Makefile +++ b/Makefile @@ -59,12 +59,24 @@ all: px4fmu-v2_default ARGS := $(wordlist 2,$(words $(MAKECMDGOALS)),$(MAKECMDGOALS)) j ?= 4 +# disable ninja by default for now because it hides upload progress +#NINJA_BUILD := $(shell ninja --version 2>/dev/null) +ifdef NINJA_BUILD + PX4_CMAKE_GENERATOR ?= "Ninja" + PX4_MAKE = ninja + PX4_MAKE_ARGS = +else + PX4_CMAKE_GENERATOR ?= "Unix Makefiles" + PX4_MAKE = make + PX4_MAKE_ARGS = -j$(j) --no-print-directory +endif + # Functions # -------------------------------------------------------------------- # describe how to build a cmake config define cmake-build -+mkdir -p $(PWD)/build_$@ && cd $(PWD)/build_$@ && cmake .. -G"Unix Makefiles" -DCONFIG=$(1) -+make -j$(j) -C $(PWD)/build_$@ --no-print-directory $(ARGS) ++@if [ ! -e $(PWD)/build_$@/CMakeCache.txt ]; then mkdir -p $(PWD)/build_$@ && cd $(PWD)/build_$@ && cmake .. -G$(PX4_CMAKE_GENERATOR) -DCONFIG=$(1); fi ++$(PX4_MAKE) -C $(PWD)/build_$@ $(PX4_MAKE_ARGS) $(ARGS) endef # create empty targets to avoid msgs for targets passed to cmake From 2529f07d440137d9fed0a712223f41709adf1375 Mon Sep 17 00:00:00 2001 From: Daniel Agar Date: Tue, 6 Oct 2015 15:26:19 -0400 Subject: [PATCH 05/11] restore format check --- .travis.yml | 2 +- Makefile | 3 +++ src/lib/launchdetection/CatapultLaunchMethod.cpp | 2 +- src/modules/systemlib/param/param.c | 2 +- src/systemcmds/param/param.c | 8 ++++---- 5 files changed, 10 insertions(+), 7 deletions(-) diff --git a/.travis.yml b/.travis.yml index 31f85ade3d..68fb32dae8 100644 --- a/.travis.yml +++ b/.travis.yml @@ -87,7 +87,7 @@ env: - PX4_AWS_BUCKET=px4-travis script: - #- make check_format + - make check_format - arm-none-eabi-gcc --version - echo 'Building POSIX Firmware..' && echo -en 'travis_fold:start:script.1\\r' - make posix_sitl_simple -j4 diff --git a/Makefile b/Makefile index 56ec849d7b..1e4546a3f7 100644 --- a/Makefile +++ b/Makefile @@ -153,6 +153,9 @@ sitl_ros: # Other targets # -------------------------------------------------------------------- +check_format: + @./Tools/check_code_style.sh + clean: @rm -rf build_*/ diff --git a/src/lib/launchdetection/CatapultLaunchMethod.cpp b/src/lib/launchdetection/CatapultLaunchMethod.cpp index f13c7c4bfe..b5692cc7e7 100644 --- a/src/lib/launchdetection/CatapultLaunchMethod.cpp +++ b/src/lib/launchdetection/CatapultLaunchMethod.cpp @@ -79,7 +79,7 @@ void CatapultLaunchMethod::update(float accel_x) if (motorDelay.get() > 0.0f) { state = LAUNCHDETECTION_RES_DETECTED_ENABLECONTROL; warnx("Launch detected: enablecontrol, waiting %8.4fs until full throttle", - double(motorDelay.get())); + double(motorDelay.get())); } else { /* No motor delay set: go directly to enablemotors state */ diff --git a/src/modules/systemlib/param/param.c b/src/modules/systemlib/param/param.c index 4ba9d32004..097e61e350 100644 --- a/src/modules/systemlib/param/param.c +++ b/src/modules/systemlib/param/param.c @@ -88,7 +88,7 @@ extern struct param_info_s *param_info_base; extern struct param_info_s *param_info_limit; #else // FIXME - start and end are reversed -static const struct param_info_s *param_info_base = (const struct param_info_s *)&px4_parameters; +static const struct param_info_s *param_info_base = (const struct param_info_s *) &px4_parameters; #endif #define param_info_count px4_parameters.param_count diff --git a/src/systemcmds/param/param.c b/src/systemcmds/param/param.c index d38a13c676..88f5197d27 100644 --- a/src/systemcmds/param/param.c +++ b/src/systemcmds/param/param.c @@ -445,8 +445,8 @@ do_set(const char *name, const char *val, bool fail_on_not_found) if (i != newval) { printf("%c %s: ", - param_value_unsaved(param) ? '*' : (param_value_is_default(param) ? ' ' : '+'), - param_name(param)); + param_value_unsaved(param) ? '*' : (param_value_is_default(param) ? ' ' : '+'), + param_name(param)); printf("curr: %ld", (long)i); param_set(param, &newval); printf(" -> new: %ld\n", (long)newval); @@ -467,8 +467,8 @@ do_set(const char *name, const char *val, bool fail_on_not_found) if (f != newval) { #pragma GCC diagnostic pop printf("%c %s: ", - param_value_unsaved(param) ? '*' : (param_value_is_default(param) ? ' ' : '+'), - param_name(param)); + param_value_unsaved(param) ? '*' : (param_value_is_default(param) ? ' ' : '+'), + param_name(param)); printf("curr: %4.4f", (double)f); param_set(param, &newval); printf(" -> new: %4.4f\n", (double)newval); From 6c10cf18e4f06706af99daf22e45a124b2e98515 Mon Sep 17 00:00:00 2001 From: Daniel Agar Date: Tue, 6 Oct 2015 16:31:18 -0400 Subject: [PATCH 06/11] re-enable Werror --- cmake/common/px4_base.cmake | 2 +- src/drivers/px4flow/i2c_frame.h | 2 +- src/drivers/px4fmu/CMakeLists.txt | 1 - src/drivers/px4io/CMakeLists.txt | 1 - src/modules/attitude_estimator_ekf/CMakeLists.txt | 2 +- src/modules/commander/CMakeLists.txt | 2 +- src/modules/ekf_att_pos_estimator/CMakeLists.txt | 2 +- src/modules/land_detector/CMakeLists.txt | 1 - src/modules/mavlink/CMakeLists.txt | 2 +- src/modules/mc_att_control_multiplatform/CMakeLists.txt | 2 ++ src/modules/mc_pos_control_multiplatform/CMakeLists.txt | 2 +- src/modules/position_estimator_inav/CMakeLists.txt | 2 +- src/modules/simulator/CMakeLists.txt | 2 +- src/modules/uavcan/CMakeLists.txt | 4 +++- src/platforms/posix/drivers/gyrosim/CMakeLists.txt | 1 - src/systemcmds/mixer/CMakeLists.txt | 2 +- 16 files changed, 15 insertions(+), 15 deletions(-) diff --git a/cmake/common/px4_base.cmake b/cmake/common/px4_base.cmake index 797cb14fc1..1093d367e9 100644 --- a/cmake/common/px4_base.cmake +++ b/cmake/common/px4_base.cmake @@ -482,13 +482,13 @@ function(px4_add_common_flags) set(warnings -Wall + -Werror -Wno-sign-compare -Wextra #-Wshadow # very verbose due to eigen -Wfloat-equal -Wpointer-arith -Wmissing-declarations - -Wpacked -Wno-unused-parameter -Werror=format-security -Werror=array-bounds diff --git a/src/drivers/px4flow/i2c_frame.h b/src/drivers/px4flow/i2c_frame.h index a682c5f3de..43e10e417c 100644 --- a/src/drivers/px4flow/i2c_frame.h +++ b/src/drivers/px4flow/i2c_frame.h @@ -41,7 +41,7 @@ #ifndef I2C_FRAME_H_ #define I2C_FRAME_H_ -#define __STDC_FORMAT_MACROS 1 +#define __STDC_FORMAT_MACROS #include typedef struct i2c_frame diff --git a/src/drivers/px4fmu/CMakeLists.txt b/src/drivers/px4fmu/CMakeLists.txt index 335da06c1e..492aad5939 100644 --- a/src/drivers/px4fmu/CMakeLists.txt +++ b/src/drivers/px4fmu/CMakeLists.txt @@ -35,7 +35,6 @@ px4_add_module( MAIN fmu STACK 1200 COMPILE_FLAGS - -Weffc++ -Os SRCS fmu.cpp diff --git a/src/drivers/px4io/CMakeLists.txt b/src/drivers/px4io/CMakeLists.txt index 818d2c33d6..5c180c6f82 100644 --- a/src/drivers/px4io/CMakeLists.txt +++ b/src/drivers/px4io/CMakeLists.txt @@ -35,7 +35,6 @@ px4_add_module( MAIN px4io STACK 1200 COMPILE_FLAGS - -Weffc++ -Os SRCS px4io.cpp diff --git a/src/modules/attitude_estimator_ekf/CMakeLists.txt b/src/modules/attitude_estimator_ekf/CMakeLists.txt index 2c037d46bb..65ab7eff02 100644 --- a/src/modules/attitude_estimator_ekf/CMakeLists.txt +++ b/src/modules/attitude_estimator_ekf/CMakeLists.txt @@ -35,7 +35,7 @@ px4_add_module( MAIN attitude_estimator_ekf STACK 1200 COMPILE_FLAGS - -Wframe-larger-than=2400 + -Wframe-larger-than=3000 -Wno-float-equal SRCS diff --git a/src/modules/commander/CMakeLists.txt b/src/modules/commander/CMakeLists.txt index 7cd5b045ef..698177edb6 100644 --- a/src/modules/commander/CMakeLists.txt +++ b/src/modules/commander/CMakeLists.txt @@ -34,7 +34,7 @@ set(MODULE_CFLAGS -Os) if(NOT ${OS} STREQUAL "qurt") list(APPEND MODULE_CFLAGS - -Wframe-larger-than=2200) + -Wframe-larger-than=2600) endif() px4_add_module( MODULE modules__commander diff --git a/src/modules/ekf_att_pos_estimator/CMakeLists.txt b/src/modules/ekf_att_pos_estimator/CMakeLists.txt index 5a70282103..907bb31ff3 100644 --- a/src/modules/ekf_att_pos_estimator/CMakeLists.txt +++ b/src/modules/ekf_att_pos_estimator/CMakeLists.txt @@ -31,7 +31,7 @@ # ############################################################################ -set(MODULE_CFLAGS -Weffc++) +set(MODULE_CFLAGS ) if(NOT ${OS} STREQUAL "qurt") list(APPEND MODULE_CFLAGS -Wframe-larger-than=3400) endif() diff --git a/src/modules/land_detector/CMakeLists.txt b/src/modules/land_detector/CMakeLists.txt index 37030f1795..3e89ff1a6b 100644 --- a/src/modules/land_detector/CMakeLists.txt +++ b/src/modules/land_detector/CMakeLists.txt @@ -35,7 +35,6 @@ px4_add_module( MAIN land_detector STACK 1200 COMPILE_FLAGS - -Weffc++ -Os SRCS diff --git a/src/modules/mavlink/CMakeLists.txt b/src/modules/mavlink/CMakeLists.txt index f9897dd194..f7f2127c4b 100644 --- a/src/modules/mavlink/CMakeLists.txt +++ b/src/modules/mavlink/CMakeLists.txt @@ -35,11 +35,11 @@ px4_add_module( MAIN mavlink STACK 1200 COMPILE_FLAGS - -Weffc++ -Wno-attributes -Wno-packed -DMAVLINK_COMM_NUM_BUFFERS=3 -Wno-packed + -Wframe-larger-than=2000 -Os SRCS mavlink.c diff --git a/src/modules/mc_att_control_multiplatform/CMakeLists.txt b/src/modules/mc_att_control_multiplatform/CMakeLists.txt index 22f9d16ee8..0edd51ce57 100644 --- a/src/modules/mc_att_control_multiplatform/CMakeLists.txt +++ b/src/modules/mc_att_control_multiplatform/CMakeLists.txt @@ -33,6 +33,8 @@ px4_add_module( MODULE modules__mc_att_control_multiplatform MAIN mc_att_control_m + COMPILE_FLAGS + -Wframe-larger-than=1300 SRCS mc_att_control_main.cpp mc_att_control_start_nuttx.cpp diff --git a/src/modules/mc_pos_control_multiplatform/CMakeLists.txt b/src/modules/mc_pos_control_multiplatform/CMakeLists.txt index 28c2d0948a..76750b90de 100644 --- a/src/modules/mc_pos_control_multiplatform/CMakeLists.txt +++ b/src/modules/mc_pos_control_multiplatform/CMakeLists.txt @@ -34,7 +34,7 @@ px4_add_module( MODULE modules__mc_pos_control_multiplatform MAIN mc_pos_control_m COMPILE_FLAGS - -Wframe-larger-than=1200 + -Wframe-larger-than=1900 SRCS mc_pos_control_main.cpp diff --git a/src/modules/position_estimator_inav/CMakeLists.txt b/src/modules/position_estimator_inav/CMakeLists.txt index 0e801603a8..7c5393de9c 100644 --- a/src/modules/position_estimator_inav/CMakeLists.txt +++ b/src/modules/position_estimator_inav/CMakeLists.txt @@ -32,7 +32,7 @@ ############################################################################ set(MODULE_CFLAGS) if(NOT ${OS} STREQUAL "qurt") - list(APPEND MODULE_CFLAGS -Wframe-larger-than=3800) + list(APPEND MODULE_CFLAGS -Wframe-larger-than=3900) endif() px4_add_module( MODULE modules__position_estimator_inav diff --git a/src/modules/simulator/CMakeLists.txt b/src/modules/simulator/CMakeLists.txt index 1e81695b97..97daf37d10 100644 --- a/src/modules/simulator/CMakeLists.txt +++ b/src/modules/simulator/CMakeLists.txt @@ -40,10 +40,10 @@ px4_add_module( MODULE modules__simulator MAIN simulator COMPILE_FLAGS - -Weffc++ -Wno-attributes -Wno-packed -Wno-packed + -Wframe-larger-than=1500 SRCS ${SIMULATOR_SRCS} diff --git a/src/modules/uavcan/CMakeLists.txt b/src/modules/uavcan/CMakeLists.txt index f3d255d1e0..f9b5a3696d 100644 --- a/src/modules/uavcan/CMakeLists.txt +++ b/src/modules/uavcan/CMakeLists.txt @@ -35,7 +35,7 @@ set(uavcan_c_flags ${c_flags}) list(REMOVE_ITEM uavcan_c_flags -std=gnu++0x -D__CUSTOM_FILE_IO__) set(uavcan_cxx_flags ${cxx_flags}) -list(REMOVE_ITEM uavcan_cxx_flags -std=gnu++0x -std=c++11 -D__CUSTOM_FILE_IO__) +list(REMOVE_ITEM uavcan_cxx_flags -std=gnu++0x -std=c++11 -Wundef -Werror -D__CUSTOM_FILE_IO__) set(uavcan_deps git_uavcan) set(uavcan_platform generic) @@ -94,6 +94,8 @@ px4_add_module( MAIN uavcan STACK 3200 COMPILE_FLAGS + -Wframe-larger-than=1500 + -Wno-deprecated-declarations -O3 SRCS diff --git a/src/platforms/posix/drivers/gyrosim/CMakeLists.txt b/src/platforms/posix/drivers/gyrosim/CMakeLists.txt index 184df706d3..335bee65d6 100644 --- a/src/platforms/posix/drivers/gyrosim/CMakeLists.txt +++ b/src/platforms/posix/drivers/gyrosim/CMakeLists.txt @@ -35,7 +35,6 @@ px4_add_module( MAIN gyrosim STACK 1200 COMPILE_FLAGS - -Weffc++ -Os SRCS gyrosim.cpp diff --git a/src/systemcmds/mixer/CMakeLists.txt b/src/systemcmds/mixer/CMakeLists.txt index dd051b2772..99ce2b1bad 100644 --- a/src/systemcmds/mixer/CMakeLists.txt +++ b/src/systemcmds/mixer/CMakeLists.txt @@ -34,7 +34,7 @@ set(MIXER_CFLAGS -Os) if(${OS} STREQUAL "qurt") list(APPEND MIXER_CFLAGS -Wframe-larger-than=2176) else() - list(APPEND MIXER_CFLAGS -Wframe-larger-than=2048) + list(APPEND MIXER_CFLAGS -Wframe-larger-than=2064) endif() px4_add_module( From d30c8ccab83401ea67de87ea34b1271ba86d45a3 Mon Sep 17 00:00:00 2001 From: Daniel Agar Date: Tue, 6 Oct 2015 17:11:06 -0400 Subject: [PATCH 07/11] travis-ci don't specify make threads --- .travis.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index 68fb32dae8..dd4e5b4401 100644 --- a/.travis.yml +++ b/.travis.yml @@ -90,14 +90,14 @@ script: - make check_format - arm-none-eabi-gcc --version - echo 'Building POSIX Firmware..' && echo -en 'travis_fold:start:script.1\\r' - - make posix_sitl_simple -j4 + - make posix_sitl_simple - echo -en 'travis_fold:end:script.1\\r' - echo 'Running Tests..' && echo -en 'travis_fold:start:script.2\\r' - make posix_sitl_simple test - cat build_posix_sitl_simple/src/modules/systemlib/mixer/mixer_multirotor.generated.h - echo -en 'travis_fold:end:script.2\\r' - echo 'Building NuttX Firmware..' && echo -en 'travis_fold:start:script.3\\r' - - make px4fmu-v2_default -j4 + - make px4fmu-v2_default - echo -en 'travis_fold:end:script.3\\r' - echo 'Running Tests..' && echo -en 'travis_fold:start:script.4\\r' - make px4fmu-v2_default test From 644a0cd30ca4967d5e578d53e0835f72a83c4f4c Mon Sep 17 00:00:00 2001 From: Daniel Agar Date: Tue, 6 Oct 2015 17:20:32 -0400 Subject: [PATCH 08/11] adjust attitude_estimator_ekf for posix_sitl_simple --- cmake/toolchains/Toolchain-posix-clang-native.cmake | 1 + src/modules/attitude_estimator_ekf/CMakeLists.txt | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/cmake/toolchains/Toolchain-posix-clang-native.cmake b/cmake/toolchains/Toolchain-posix-clang-native.cmake index 544f61f826..e52f3f4a64 100644 --- a/cmake/toolchains/Toolchain-posix-clang-native.cmake +++ b/cmake/toolchains/Toolchain-posix-clang-native.cmake @@ -1,6 +1,7 @@ set(WARNINGS -Wall + -Werror -Wextra -Wdouble-promotion -Wshadow diff --git a/src/modules/attitude_estimator_ekf/CMakeLists.txt b/src/modules/attitude_estimator_ekf/CMakeLists.txt index 65ab7eff02..30fb6f0091 100644 --- a/src/modules/attitude_estimator_ekf/CMakeLists.txt +++ b/src/modules/attitude_estimator_ekf/CMakeLists.txt @@ -35,7 +35,7 @@ px4_add_module( MAIN attitude_estimator_ekf STACK 1200 COMPILE_FLAGS - -Wframe-larger-than=3000 + -Wframe-larger-than=3100 -Wno-float-equal SRCS From e4a78124d877328553b807e4d1290af19a1a167b Mon Sep 17 00:00:00 2001 From: Daniel Agar Date: Tue, 6 Oct 2015 18:17:20 -0400 Subject: [PATCH 09/11] posix add -Wno-varargs for OS X --- cmake/common/px4_base.cmake | 1 + cmake/toolchains/Toolchain-posix-clang-native.cmake | 2 ++ 2 files changed, 3 insertions(+) diff --git a/cmake/common/px4_base.cmake b/cmake/common/px4_base.cmake index 1093d367e9..019dcc16cf 100644 --- a/cmake/common/px4_base.cmake +++ b/cmake/common/px4_base.cmake @@ -490,6 +490,7 @@ function(px4_add_common_flags) -Wpointer-arith -Wmissing-declarations -Wno-unused-parameter + -Wno-varargs -Werror=format-security -Werror=array-bounds -Wfatal-errors diff --git a/cmake/toolchains/Toolchain-posix-clang-native.cmake b/cmake/toolchains/Toolchain-posix-clang-native.cmake index e52f3f4a64..0945b2b1f5 100644 --- a/cmake/toolchains/Toolchain-posix-clang-native.cmake +++ b/cmake/toolchains/Toolchain-posix-clang-native.cmake @@ -26,6 +26,7 @@ set(WARNINGS -Werror=unused-private-field -Wno-packed -Wno-frame-larger-than= + -Wno-varargs #-Wcast-qual - generates spurious noreturn attribute warnings, # try again later #-Wconversion - would be nice, but too many "risky-but-safe" @@ -59,6 +60,7 @@ set(C_FLAGS # set(CXX_WARNINGS -Wno-missing-field-initializers + -Wno-varargs ) set(CXX_FLAGS -fno-exceptions From a3d79c6e15a71ed5c8b179f90224d5a5b54742b0 Mon Sep 17 00:00:00 2001 From: Daniel Agar Date: Tue, 6 Oct 2015 18:20:57 -0400 Subject: [PATCH 10/11] cmake uavcan set cpp03 and silence install --- src/modules/uavcan/CMakeLists.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/modules/uavcan/CMakeLists.txt b/src/modules/uavcan/CMakeLists.txt index f9b5a3696d..38bf0bc111 100644 --- a/src/modules/uavcan/CMakeLists.txt +++ b/src/modules/uavcan/CMakeLists.txt @@ -76,8 +76,10 @@ externalproject_add(libuavcan DEPENDS ${uavcan_deps} DOWNLOAD_COMMAND "" UPDATE_COMMAND git submodule update --init + LOG_INSTALL 1 SOURCE_DIR ${CMAKE_SOURCE_DIR}/src/lib/uavcan CMAKE_ARGS -DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE} + -DUAVCAN_USE_CPP03=ON -DUAVCAN_PLATFORM=${uavcan_platform} -DUAVCAN_OS=${OS} -DCMAKE_CXX_FLAGS=${uavcan_cxx_flags} From 4151522902726802b34263670c715a654d4b9a22 Mon Sep 17 00:00:00 2001 From: Daniel Agar Date: Tue, 6 Oct 2015 18:50:58 -0400 Subject: [PATCH 11/11] only enforce frame size for nuttx --- cmake/common/px4_base.cmake | 2 +- src/modules/attitude_estimator_ekf/CMakeLists.txt | 2 -- src/modules/attitude_estimator_q/CMakeLists.txt | 8 +++----- src/modules/commander/CMakeLists.txt | 6 ++---- src/modules/land_detector/CMakeLists.txt | 1 - src/modules/mavlink/CMakeLists.txt | 6 +++++- src/modules/mc_att_control/CMakeLists.txt | 4 ++++ src/modules/mc_att_control_multiplatform/CMakeLists.txt | 2 -- .../mc_att_control_multiplatform/mc_att_control.cpp | 2 -- src/modules/mc_att_control_multiplatform/mc_att_control.h | 2 -- src/modules/mc_pos_control_multiplatform/CMakeLists.txt | 3 --- src/modules/position_estimator_inav/CMakeLists.txt | 6 ++---- src/modules/sdlog2/CMakeLists.txt | 5 ++++- src/modules/simulator/CMakeLists.txt | 2 -- src/systemcmds/mixer/CMakeLists.txt | 2 +- 15 files changed, 22 insertions(+), 31 deletions(-) diff --git a/cmake/common/px4_base.cmake b/cmake/common/px4_base.cmake index 019dcc16cf..22cc19c0fe 100644 --- a/cmake/common/px4_base.cmake +++ b/cmake/common/px4_base.cmake @@ -506,7 +506,7 @@ function(px4_add_common_flags) # but generates too many false positives ) - if (NOT ${OS} STREQUAL "qurt") + if (${OS} STREQUAL "nuttx") list(APPEND warnings -Wframe-larger-than=1024) endif() diff --git a/src/modules/attitude_estimator_ekf/CMakeLists.txt b/src/modules/attitude_estimator_ekf/CMakeLists.txt index 30fb6f0091..8c68904661 100644 --- a/src/modules/attitude_estimator_ekf/CMakeLists.txt +++ b/src/modules/attitude_estimator_ekf/CMakeLists.txt @@ -35,9 +35,7 @@ px4_add_module( MAIN attitude_estimator_ekf STACK 1200 COMPILE_FLAGS - -Wframe-larger-than=3100 -Wno-float-equal - SRCS attitude_estimator_ekf_main.cpp codegen/AttitudeEKF.c diff --git a/src/modules/attitude_estimator_q/CMakeLists.txt b/src/modules/attitude_estimator_q/CMakeLists.txt index b4726b5c89..c74993ad67 100644 --- a/src/modules/attitude_estimator_q/CMakeLists.txt +++ b/src/modules/attitude_estimator_q/CMakeLists.txt @@ -31,15 +31,13 @@ # ############################################################################# set(MODULE_CFLAGS) -if (NOT ${OS} STREQUAL "qurt") - list(APPEND MODULE_CFLAGS - -Wframe-larger-than=1400) +if (${OS} STREQUAL "nuttx") + list(APPEND MODULE_CFLAGS -Wframe-larger-than=1400) endif() px4_add_module( MODULE modules__attitude_estimator_q MAIN attitude_estimator_q - COMPILE_FLAGS - ${MODULE_CFLAGS} + COMPILE_FLAGS ${MODULE_CFLAGS} STACK 1200 SRCS attitude_estimator_q_main.cpp diff --git a/src/modules/commander/CMakeLists.txt b/src/modules/commander/CMakeLists.txt index 698177edb6..d5c4aa0f12 100644 --- a/src/modules/commander/CMakeLists.txt +++ b/src/modules/commander/CMakeLists.txt @@ -31,10 +31,8 @@ # ############################################################################ set(MODULE_CFLAGS -Os) - -if(NOT ${OS} STREQUAL "qurt") - list(APPEND MODULE_CFLAGS - -Wframe-larger-than=2600) +if(${OS} STREQUAL "nuttx") + list(APPEND MODULE_CFLAGS -Wframe-larger-than=2300) endif() px4_add_module( MODULE modules__commander diff --git a/src/modules/land_detector/CMakeLists.txt b/src/modules/land_detector/CMakeLists.txt index 3e89ff1a6b..f18b3ed187 100644 --- a/src/modules/land_detector/CMakeLists.txt +++ b/src/modules/land_detector/CMakeLists.txt @@ -36,7 +36,6 @@ px4_add_module( STACK 1200 COMPILE_FLAGS -Os - SRCS land_detector_main.cpp land_detector_params.c diff --git a/src/modules/mavlink/CMakeLists.txt b/src/modules/mavlink/CMakeLists.txt index f7f2127c4b..c8a0e7d870 100644 --- a/src/modules/mavlink/CMakeLists.txt +++ b/src/modules/mavlink/CMakeLists.txt @@ -30,16 +30,20 @@ # POSSIBILITY OF SUCH DAMAGE. # ############################################################################ +if (${OS} STREQUAL "nuttx") + list(APPEND MODULE_CFLAGS -Wframe-larger-than=1500) +endif() px4_add_module( MODULE modules__mavlink MAIN mavlink STACK 1200 COMPILE_FLAGS + ${MODULE_CFLAGS} -Wno-attributes -Wno-packed -DMAVLINK_COMM_NUM_BUFFERS=3 -Wno-packed - -Wframe-larger-than=2000 + -Wno-tautological-constant-out-of-range-compare -Os SRCS mavlink.c diff --git a/src/modules/mc_att_control/CMakeLists.txt b/src/modules/mc_att_control/CMakeLists.txt index 3f4aeed93f..3c08772766 100644 --- a/src/modules/mc_att_control/CMakeLists.txt +++ b/src/modules/mc_att_control/CMakeLists.txt @@ -30,10 +30,14 @@ # POSSIBILITY OF SUCH DAMAGE. # ############################################################################ +if (${OS} STREQUAL "nuttx") + list(APPEND MODULE_CFLAGS -Wframe-larger-than=3500) +endif() px4_add_module( MODULE modules__mc_att_control MAIN mc_att_control STACK 1200 + COMPILE_FLAGS ${MODULE_CFLAGS} SRCS mc_att_control_main.cpp mc_att_control_params.c diff --git a/src/modules/mc_att_control_multiplatform/CMakeLists.txt b/src/modules/mc_att_control_multiplatform/CMakeLists.txt index 0edd51ce57..22f9d16ee8 100644 --- a/src/modules/mc_att_control_multiplatform/CMakeLists.txt +++ b/src/modules/mc_att_control_multiplatform/CMakeLists.txt @@ -33,8 +33,6 @@ px4_add_module( MODULE modules__mc_att_control_multiplatform MAIN mc_att_control_m - COMPILE_FLAGS - -Wframe-larger-than=1300 SRCS mc_att_control_main.cpp mc_att_control_start_nuttx.cpp diff --git a/src/modules/mc_att_control_multiplatform/mc_att_control.cpp b/src/modules/mc_att_control_multiplatform/mc_att_control.cpp index 63515f497d..98435a08f0 100644 --- a/src/modules/mc_att_control_multiplatform/mc_att_control.cpp +++ b/src/modules/mc_att_control_multiplatform/mc_att_control.cpp @@ -64,11 +64,9 @@ static const int ERROR = -1; MulticopterAttitudeControlMultiplatform::MulticopterAttitudeControlMultiplatform() : MulticopterAttitudeControlBase(), - _task_should_exit(false), _actuators_0_circuit_breaker_enabled(false), /* publications */ - _att_sp_pub(nullptr), _v_rates_sp_pub(nullptr), _actuators_0_pub(nullptr), _n(_appState), diff --git a/src/modules/mc_att_control_multiplatform/mc_att_control.h b/src/modules/mc_att_control_multiplatform/mc_att_control.h index de059fc9f3..12d4beadfc 100644 --- a/src/modules/mc_att_control_multiplatform/mc_att_control.h +++ b/src/modules/mc_att_control_multiplatform/mc_att_control.h @@ -85,10 +85,8 @@ public: void spin() { _n.spin(); } private: - bool _task_should_exit; /**< if true, sensor task should exit */ bool _actuators_0_circuit_breaker_enabled; /**< circuit breaker to suppress output */ - px4::Publisher *_att_sp_pub; /**< attitude setpoint publication */ px4::Publisher *_v_rates_sp_pub; /**< rate setpoint publication */ px4::Publisher *_actuators_0_pub; /**< attitude actuator controls publication */ diff --git a/src/modules/mc_pos_control_multiplatform/CMakeLists.txt b/src/modules/mc_pos_control_multiplatform/CMakeLists.txt index 76750b90de..f36acf4e33 100644 --- a/src/modules/mc_pos_control_multiplatform/CMakeLists.txt +++ b/src/modules/mc_pos_control_multiplatform/CMakeLists.txt @@ -33,9 +33,6 @@ px4_add_module( MODULE modules__mc_pos_control_multiplatform MAIN mc_pos_control_m - COMPILE_FLAGS - -Wframe-larger-than=1900 - SRCS mc_pos_control_main.cpp mc_pos_control_start_nuttx.cpp diff --git a/src/modules/position_estimator_inav/CMakeLists.txt b/src/modules/position_estimator_inav/CMakeLists.txt index 7c5393de9c..90ab4ad74c 100644 --- a/src/modules/position_estimator_inav/CMakeLists.txt +++ b/src/modules/position_estimator_inav/CMakeLists.txt @@ -30,16 +30,14 @@ # POSSIBILITY OF SUCH DAMAGE. # ############################################################################ -set(MODULE_CFLAGS) -if(NOT ${OS} STREQUAL "qurt") - list(APPEND MODULE_CFLAGS -Wframe-larger-than=3900) +if(${OS} STREQUAL "nuttx") + list(APPEND MODULE_CFLAGS -Wframe-larger-than=3800) endif() px4_add_module( MODULE modules__position_estimator_inav MAIN position_estimator_inav STACK 1200 COMPILE_FLAGS ${MODULE_CFLAGS} - SRCS position_estimator_inav_main.c position_estimator_inav_params.c diff --git a/src/modules/sdlog2/CMakeLists.txt b/src/modules/sdlog2/CMakeLists.txt index ddc1b30174..b438f30fd5 100644 --- a/src/modules/sdlog2/CMakeLists.txt +++ b/src/modules/sdlog2/CMakeLists.txt @@ -30,13 +30,16 @@ # POSSIBILITY OF SUCH DAMAGE. # ############################################################################ +if (${OS} STREQUAL "nuttx") + list(APPEND MODULE_CFLAGS -Wframe-larger-than=1500) +endif() px4_add_module( MODULE modules__sdlog2 MAIN sdlog2 PRIORITY "SCHED_PRIORITY_MAX-30" STACK 1200 COMPILE_FLAGS - -Wframe-larger-than=1500 + ${MODULE_CFLAGS} -Os SRCS sdlog2.c diff --git a/src/modules/simulator/CMakeLists.txt b/src/modules/simulator/CMakeLists.txt index 97daf37d10..de452c5de4 100644 --- a/src/modules/simulator/CMakeLists.txt +++ b/src/modules/simulator/CMakeLists.txt @@ -43,8 +43,6 @@ px4_add_module( -Wno-attributes -Wno-packed -Wno-packed - -Wframe-larger-than=1500 - SRCS ${SIMULATOR_SRCS} DEPENDS diff --git a/src/systemcmds/mixer/CMakeLists.txt b/src/systemcmds/mixer/CMakeLists.txt index 99ce2b1bad..703d8210fb 100644 --- a/src/systemcmds/mixer/CMakeLists.txt +++ b/src/systemcmds/mixer/CMakeLists.txt @@ -34,7 +34,7 @@ set(MIXER_CFLAGS -Os) if(${OS} STREQUAL "qurt") list(APPEND MIXER_CFLAGS -Wframe-larger-than=2176) else() - list(APPEND MIXER_CFLAGS -Wframe-larger-than=2064) + list(APPEND MIXER_CFLAGS -Wframe-larger-than=2100) endif() px4_add_module(