From b35d0485669fd47173eb742bc0a08cb0dbac81f0 Mon Sep 17 00:00:00 2001 From: Daniel Agar <daniel@agar.ca> Date: Sat, 16 Mar 2019 11:23:17 -0400 Subject: [PATCH] cmake enable -Wcast-align and disable per module --- .../bitcraze/crazyflie/syslink/CMakeLists.txt | 3 +- cmake/px4_add_common_flags.cmake | 3 +- cmake/px4_add_module.cmake | 4 +++ platforms/posix/src/px4_layer/CMakeLists.txt | 1 + platforms/qurt/cmake/px4_impl_os.cmake | 1 + src/drivers/barometer/bmp280/CMakeLists.txt | 2 ++ src/drivers/barometer/lps22hb/CMakeLists.txt | 1 - src/drivers/barometer/lps25h/CMakeLists.txt | 4 +-- .../barometer/mpl3115a2/CMakeLists.txt | 12 +++---- src/drivers/barometer/ms5611/CMakeLists.txt | 13 +++---- .../boards/common/kinetis/CMakeLists.txt | 1 + .../boards/common/stm32/CMakeLists.txt | 1 + .../distance_sensor/leddar_one/CMakeLists.txt | 3 +- .../distance_sensor/ll40ls/CMakeLists.txt | 3 +- .../distance_sensor/mb12xx/CMakeLists.txt | 3 +- .../distance_sensor/sf0x/CMakeLists.txt | 2 ++ .../distance_sensor/sf1xx/CMakeLists.txt | 2 +- .../distance_sensor/srf02/CMakeLists.txt | 3 +- .../distance_sensor/teraranger/CMakeLists.txt | 1 + .../distance_sensor/tfmini/CMakeLists.txt | 3 +- .../distance_sensor/vl53lxx/CMakeLists.txt | 36 ++++++++++++++++++- src/drivers/gps/CMakeLists.txt | 2 ++ src/drivers/imu/adis16448/CMakeLists.txt | 2 +- src/drivers/imu/adis16477/CMakeLists.txt | 1 + src/drivers/imu/adis16497/CMakeLists.txt | 1 + src/drivers/imu/bma180/CMakeLists.txt | 3 +- src/drivers/imu/bmi055/CMakeLists.txt | 3 +- src/drivers/imu/bmi160/CMakeLists.txt | 3 +- src/drivers/imu/fxas21002c/CMakeLists.txt | 2 +- src/drivers/imu/fxos8701cq/CMakeLists.txt | 2 +- src/drivers/imu/l3gd20/CMakeLists.txt | 3 +- src/drivers/imu/lsm303d/CMakeLists.txt | 3 +- src/drivers/irlock/CMakeLists.txt | 3 +- src/drivers/kinetis/CMakeLists.txt | 1 + .../magnetometer/bmm150/CMakeLists.txt | 3 +- .../magnetometer/hmc5883/CMakeLists.txt | 3 +- .../magnetometer/ist8310/CMakeLists.txt | 3 +- .../magnetometer/lis3mdl/CMakeLists.txt | 3 +- .../magnetometer/qmc5883/CMakeLists.txt | 2 +- .../magnetometer/rm3100/CMakeLists.txt | 2 +- src/drivers/pmw3901/CMakeLists.txt | 2 ++ src/drivers/pwm_input/CMakeLists.txt | 2 +- src/drivers/px4flow/CMakeLists.txt | 3 +- src/drivers/px4io/CMakeLists.txt | 1 + src/drivers/stm32/CMakeLists.txt | 1 + src/drivers/uavcan/CMakeLists.txt | 1 + src/drivers/uavcanesc/CMakeLists.txt | 1 + src/drivers/uavcannode/CMakeLists.txt | 1 + src/lib/CollisionPrevention/CMakeLists.txt | 1 + src/lib/DriverFramework | 2 +- src/lib/FlightTasks/CMakeLists.txt | 2 ++ src/lib/parameters/CMakeLists.txt | 6 +++- src/lib/parameters/flashparams/CMakeLists.txt | 6 +++- src/modules/commander/CMakeLists.txt | 1 + src/modules/dataman/CMakeLists.txt | 1 + src/modules/logger/CMakeLists.txt | 1 + src/modules/mavlink/CMakeLists.txt | 1 + .../mavlink/mavlink_tests/CMakeLists.txt | 1 + src/modules/muorb/krait/CMakeLists.txt | 2 ++ src/modules/simulator/CMakeLists.txt | 1 + src/modules/simulator/accelsim/CMakeLists.txt | 1 + .../simulator/airspeedsim/CMakeLists.txt | 1 + src/modules/simulator/barosim/CMakeLists.txt | 1 + src/modules/simulator/gpssim/CMakeLists.txt | 1 + src/modules/simulator/gyrosim/CMakeLists.txt | 1 + .../common/work_queue/CMakeLists.txt | 1 + src/systemcmds/bl_update/CMakeLists.txt | 3 +- src/systemcmds/hardfault_log/CMakeLists.txt | 1 + 68 files changed, 129 insertions(+), 65 deletions(-) diff --git a/boards/bitcraze/crazyflie/syslink/CMakeLists.txt b/boards/bitcraze/crazyflie/syslink/CMakeLists.txt index e6dff91b9b..311abb73fe 100644 --- a/boards/bitcraze/crazyflie/syslink/CMakeLists.txt +++ b/boards/bitcraze/crazyflie/syslink/CMakeLists.txt @@ -34,6 +34,8 @@ px4_add_module( MODULE modules__syslink MAIN syslink + COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable STACK_MAIN 1300 SRCS syslink_main.cpp @@ -41,5 +43,4 @@ px4_add_module( syslink_memory.cpp syslink_params.c syslink.c - DEPENDS ) diff --git a/cmake/px4_add_common_flags.cmake b/cmake/px4_add_common_flags.cmake index feeaa7bdae..17afaaced4 100644 --- a/cmake/px4_add_common_flags.cmake +++ b/cmake/px4_add_common_flags.cmake @@ -66,6 +66,7 @@ function(px4_add_common_flags) -Werror -Warray-bounds + -Wcast-align -Wdisabled-optimization -Wdouble-promotion -Wfatal-errors @@ -79,8 +80,6 @@ function(px4_add_common_flags) -Wunknown-pragmas -Wunused-variable - #-Wcast-align # TODO: fix and enable - # disabled warnings -Wno-implicit-fallthrough # set appropriate level and update -Wno-missing-field-initializers diff --git a/cmake/px4_add_module.cmake b/cmake/px4_add_module.cmake index 88ca3f698b..e995cb2dfb 100644 --- a/cmake/px4_add_module.cmake +++ b/cmake/px4_add_module.cmake @@ -118,6 +118,10 @@ function(px4_add_module) add_library(${MODULE} STATIC EXCLUDE_FROM_ALL ${CMAKE_CURRENT_BINARY_DIR}/${MODULE}_unity.cpp) target_include_directories(${MODULE} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}) + if(COMPILE_FLAGS) + target_compile_options(${MODULE}_original PRIVATE ${COMPILE_FLAGS}) + endif() + if(DEPENDS) # using target_link_libraries for dependencies provides linking # as well as interface include and libraries diff --git a/platforms/posix/src/px4_layer/CMakeLists.txt b/platforms/posix/src/px4_layer/CMakeLists.txt index 85f8bd9d90..15db5dd869 100644 --- a/platforms/posix/src/px4_layer/CMakeLists.txt +++ b/platforms/posix/src/px4_layer/CMakeLists.txt @@ -54,6 +54,7 @@ add_library(px4_layer ${SHMEM_SRCS} ) target_compile_definitions(px4_layer PRIVATE MODULE_NAME="px4") +target_compile_options(px4_layer PRIVATE -Wno-cast-align) # TODO: fix and enable target_link_libraries(px4_layer PRIVATE work_queue) target_link_libraries(px4_layer PRIVATE px4_daemon) diff --git a/platforms/qurt/cmake/px4_impl_os.cmake b/platforms/qurt/cmake/px4_impl_os.cmake index 29bbdcc88a..18ecb396f9 100644 --- a/platforms/qurt/cmake/px4_impl_os.cmake +++ b/platforms/qurt/cmake/px4_impl_os.cmake @@ -133,6 +133,7 @@ function(px4_os_add_flags) -fmath-errno -Wno-unknown-warning-option + -Wno-cast-align ) # Clear -rdynamic flag which fails for hexagon diff --git a/src/drivers/barometer/bmp280/CMakeLists.txt b/src/drivers/barometer/bmp280/CMakeLists.txt index def10fe9c2..e9d1f4f892 100644 --- a/src/drivers/barometer/bmp280/CMakeLists.txt +++ b/src/drivers/barometer/bmp280/CMakeLists.txt @@ -34,6 +34,8 @@ px4_add_module( MODULE drivers__bmp280 MAIN bmp280 + COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable STACK_MAIN 1200 SRCS diff --git a/src/drivers/barometer/lps22hb/CMakeLists.txt b/src/drivers/barometer/lps22hb/CMakeLists.txt index de7ade623e..782adac43e 100644 --- a/src/drivers/barometer/lps22hb/CMakeLists.txt +++ b/src/drivers/barometer/lps22hb/CMakeLists.txt @@ -33,7 +33,6 @@ px4_add_module( MODULE drivers__barometer__lps22hb MAIN lps22hb - COMPILE_FLAGS SRCS lps22hb_main.cpp LPS22HB.cpp diff --git a/src/drivers/barometer/lps25h/CMakeLists.txt b/src/drivers/barometer/lps25h/CMakeLists.txt index 9fab6f8b50..77619cf38d 100644 --- a/src/drivers/barometer/lps25h/CMakeLists.txt +++ b/src/drivers/barometer/lps25h/CMakeLists.txt @@ -35,11 +35,9 @@ px4_add_module( MAIN lps25h STACK_MAIN 1200 COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS lps25h.cpp lps25h_i2c.cpp lps25h_spi.cpp - - DEPENDS ) - diff --git a/src/drivers/barometer/mpl3115a2/CMakeLists.txt b/src/drivers/barometer/mpl3115a2/CMakeLists.txt index ace4c7273a..5d14aeb124 100644 --- a/src/drivers/barometer/mpl3115a2/CMakeLists.txt +++ b/src/drivers/barometer/mpl3115a2/CMakeLists.txt @@ -30,17 +30,13 @@ # POSSIBILITY OF SUCH DAMAGE. # ############################################################################ -set(srcs - mpl3115a2_i2c.cpp - mpl3115a2.cpp -) - px4_add_module( MODULE drivers__mpl3115a2 MAIN mpl3115a2 STACK_MAIN 1200 COMPILE_FLAGS - SRCS ${srcs} - DEPENDS + -Wno-cast-align # TODO: fix and enable + SRCS + mpl3115a2_i2c.cpp + mpl3115a2.cpp ) - diff --git a/src/drivers/barometer/ms5611/CMakeLists.txt b/src/drivers/barometer/ms5611/CMakeLists.txt index 3dd514f7f5..7f44534ae8 100644 --- a/src/drivers/barometer/ms5611/CMakeLists.txt +++ b/src/drivers/barometer/ms5611/CMakeLists.txt @@ -30,18 +30,15 @@ # POSSIBILITY OF SUCH DAMAGE. # ############################################################################ -set(srcs - ms5611_spi.cpp - ms5611_i2c.cpp - ms5611.cpp -) px4_add_module( MODULE drivers__ms5611 MAIN ms5611 STACK_MAIN 1500 COMPILE_FLAGS - SRCS ${srcs} - DEPENDS + -Wno-cast-align # TODO: fix and enable + SRCS + ms5611_spi.cpp + ms5611_i2c.cpp + ms5611.cpp ) - diff --git a/src/drivers/boards/common/kinetis/CMakeLists.txt b/src/drivers/boards/common/kinetis/CMakeLists.txt index a3759bb5cc..ae962c7023 100644 --- a/src/drivers/boards/common/kinetis/CMakeLists.txt +++ b/src/drivers/boards/common/kinetis/CMakeLists.txt @@ -37,4 +37,5 @@ add_library(drivers_boards_common_arch board_reset.c ) add_dependencies(drivers_boards_common_arch prebuild_targets) +target_compile_options(drivers_boards_common_arch PRIVATE -Wno-cast-align) # TODO: fix and enable target_link_libraries(drivers_boards_common_arch PRIVATE nuttx_arch) diff --git a/src/drivers/boards/common/stm32/CMakeLists.txt b/src/drivers/boards/common/stm32/CMakeLists.txt index b965d9bcfb..5c3dc2b680 100644 --- a/src/drivers/boards/common/stm32/CMakeLists.txt +++ b/src/drivers/boards/common/stm32/CMakeLists.txt @@ -39,4 +39,5 @@ add_library(drivers_boards_common_arch board_critmon.c ) add_dependencies(drivers_boards_common_arch prebuild_targets) +target_compile_options(drivers_boards_common_arch PRIVATE -Wno-cast-align) # TODO: fix and enable target_link_libraries(drivers_boards_common_arch PRIVATE nuttx_arch) diff --git a/src/drivers/distance_sensor/leddar_one/CMakeLists.txt b/src/drivers/distance_sensor/leddar_one/CMakeLists.txt index c49e01005e..59770432ba 100644 --- a/src/drivers/distance_sensor/leddar_one/CMakeLists.txt +++ b/src/drivers/distance_sensor/leddar_one/CMakeLists.txt @@ -34,9 +34,10 @@ px4_add_module( MODULE drivers__leddar_one MAIN leddar_one STACK_MAIN 1200 + COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS leddar_one.cpp MODULE_CONFIG module.yaml - DEPENDS ) diff --git a/src/drivers/distance_sensor/ll40ls/CMakeLists.txt b/src/drivers/distance_sensor/ll40ls/CMakeLists.txt index 7fb19071c5..216e9f8254 100644 --- a/src/drivers/distance_sensor/ll40ls/CMakeLists.txt +++ b/src/drivers/distance_sensor/ll40ls/CMakeLists.txt @@ -34,11 +34,10 @@ px4_add_module( MODULE drivers__ll40ls MAIN ll40ls COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS ll40ls.cpp LidarLite.cpp LidarLiteI2C.cpp LidarLitePWM.cpp - DEPENDS ) - diff --git a/src/drivers/distance_sensor/mb12xx/CMakeLists.txt b/src/drivers/distance_sensor/mb12xx/CMakeLists.txt index 22ebfa6860..9d1dffd059 100644 --- a/src/drivers/distance_sensor/mb12xx/CMakeLists.txt +++ b/src/drivers/distance_sensor/mb12xx/CMakeLists.txt @@ -34,8 +34,7 @@ px4_add_module( MODULE drivers__mb12xx MAIN mb12xx COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS mb12xx.cpp - DEPENDS ) - diff --git a/src/drivers/distance_sensor/sf0x/CMakeLists.txt b/src/drivers/distance_sensor/sf0x/CMakeLists.txt index a40f07907d..ad0383f436 100644 --- a/src/drivers/distance_sensor/sf0x/CMakeLists.txt +++ b/src/drivers/distance_sensor/sf0x/CMakeLists.txt @@ -33,6 +33,8 @@ px4_add_module( MODULE drivers__sf0x MAIN sf0x + COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS sf0x.cpp sf0x_parser.cpp diff --git a/src/drivers/distance_sensor/sf1xx/CMakeLists.txt b/src/drivers/distance_sensor/sf1xx/CMakeLists.txt index 3e28d3a31e..749a5fcb9b 100644 --- a/src/drivers/distance_sensor/sf1xx/CMakeLists.txt +++ b/src/drivers/distance_sensor/sf1xx/CMakeLists.txt @@ -31,10 +31,10 @@ # ############################################################################ px4_add_module( - MODULE drivers__sf1xx MAIN sf1xx COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS sf1xx.cpp DEPENDS diff --git a/src/drivers/distance_sensor/srf02/CMakeLists.txt b/src/drivers/distance_sensor/srf02/CMakeLists.txt index c1c1be9756..dd412dcdfc 100644 --- a/src/drivers/distance_sensor/srf02/CMakeLists.txt +++ b/src/drivers/distance_sensor/srf02/CMakeLists.txt @@ -34,8 +34,7 @@ px4_add_module( MODULE drivers__srf02 MAIN srf02 COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS srf02.cpp - DEPENDS ) - diff --git a/src/drivers/distance_sensor/teraranger/CMakeLists.txt b/src/drivers/distance_sensor/teraranger/CMakeLists.txt index eb2ab56ed0..e3edbf7f6c 100644 --- a/src/drivers/distance_sensor/teraranger/CMakeLists.txt +++ b/src/drivers/distance_sensor/teraranger/CMakeLists.txt @@ -35,6 +35,7 @@ px4_add_module( MAIN teraranger STACK_MAIN 1200 COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS teraranger.cpp DEPENDS diff --git a/src/drivers/distance_sensor/tfmini/CMakeLists.txt b/src/drivers/distance_sensor/tfmini/CMakeLists.txt index e0cd265ad8..d5ac0bac6b 100644 --- a/src/drivers/distance_sensor/tfmini/CMakeLists.txt +++ b/src/drivers/distance_sensor/tfmini/CMakeLists.txt @@ -34,11 +34,10 @@ px4_add_module( MODULE drivers__tfmini MAIN tfmini COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS tfmini.cpp tfmini_parser.cpp MODULE_CONFIG module.yaml - DEPENDS ) - diff --git a/src/drivers/distance_sensor/vl53lxx/CMakeLists.txt b/src/drivers/distance_sensor/vl53lxx/CMakeLists.txt index e76c5f184c..4bf64f2196 100644 --- a/src/drivers/distance_sensor/vl53lxx/CMakeLists.txt +++ b/src/drivers/distance_sensor/vl53lxx/CMakeLists.txt @@ -1,7 +1,41 @@ +############################################################################ +# +# Copyright (c) 2019 PX4 Development Team. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in +# the documentation and/or other materials provided with the +# distribution. +# 3. Neither the name PX4 nor the names of its contributors may be +# used to endorse or promote products derived from this software +# without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS +# OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN +# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +# POSSIBILITY OF SUCH DAMAGE. +# +############################################################################ + px4_add_module( MODULE drivers__vl53lxx MAIN vl53lxx + COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS vl53lxx.cpp ) -# vim: set noet ft=cmake fenc=utf-8 ff=unix : \ No newline at end of file diff --git a/src/drivers/gps/CMakeLists.txt b/src/drivers/gps/CMakeLists.txt index 95dea2b5d6..88846a63e8 100644 --- a/src/drivers/gps/CMakeLists.txt +++ b/src/drivers/gps/CMakeLists.txt @@ -37,6 +37,8 @@ px4_add_module( MODULE drivers__gps MAIN gps STACK_MAIN 1200 + COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS gps.cpp devices/src/gps_helper.cpp diff --git a/src/drivers/imu/adis16448/CMakeLists.txt b/src/drivers/imu/adis16448/CMakeLists.txt index 0ae4cdb4c6..e3e2160ef9 100644 --- a/src/drivers/imu/adis16448/CMakeLists.txt +++ b/src/drivers/imu/adis16448/CMakeLists.txt @@ -35,7 +35,7 @@ px4_add_module( MAIN adis16448 STACK_MAIN 1200 COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS adis16448.cpp - DEPENDS ) diff --git a/src/drivers/imu/adis16477/CMakeLists.txt b/src/drivers/imu/adis16477/CMakeLists.txt index e4528893ba..ea1448bdc6 100644 --- a/src/drivers/imu/adis16477/CMakeLists.txt +++ b/src/drivers/imu/adis16477/CMakeLists.txt @@ -35,6 +35,7 @@ px4_add_module( MAIN adis16477 STACK_MAIN 1200 COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS ADIS16477.cpp ADIS16477_gyro.cpp diff --git a/src/drivers/imu/adis16497/CMakeLists.txt b/src/drivers/imu/adis16497/CMakeLists.txt index 3ea48d9d1a..26b5cb75ce 100644 --- a/src/drivers/imu/adis16497/CMakeLists.txt +++ b/src/drivers/imu/adis16497/CMakeLists.txt @@ -35,6 +35,7 @@ px4_add_module( MAIN adis16497 STACK_MAIN 1200 COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS ADIS16497.cpp ADIS16497_gyro.cpp diff --git a/src/drivers/imu/bma180/CMakeLists.txt b/src/drivers/imu/bma180/CMakeLists.txt index db3051da82..b244993058 100644 --- a/src/drivers/imu/bma180/CMakeLists.txt +++ b/src/drivers/imu/bma180/CMakeLists.txt @@ -34,8 +34,7 @@ px4_add_module( MODULE drivers__bma180 MAIN bma180 COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS bma180.cpp - DEPENDS ) - diff --git a/src/drivers/imu/bmi055/CMakeLists.txt b/src/drivers/imu/bmi055/CMakeLists.txt index cac7d82188..3edfa13b00 100644 --- a/src/drivers/imu/bmi055/CMakeLists.txt +++ b/src/drivers/imu/bmi055/CMakeLists.txt @@ -34,9 +34,10 @@ px4_add_module( MODULE drivers__bmi055 MAIN bmi055 STACK_MAIN 1500 + COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS BMI055_accel.cpp BMI055_gyro.cpp bmi055_main.cpp ) - diff --git a/src/drivers/imu/bmi160/CMakeLists.txt b/src/drivers/imu/bmi160/CMakeLists.txt index d0479f2c19..5ba6b51ac4 100644 --- a/src/drivers/imu/bmi160/CMakeLists.txt +++ b/src/drivers/imu/bmi160/CMakeLists.txt @@ -35,10 +35,9 @@ px4_add_module( MAIN bmi160 STACK_MAIN 1200 COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS bmi160.cpp bmi160_gyro.cpp bmi160_main.cpp - DEPENDS ) - diff --git a/src/drivers/imu/fxas21002c/CMakeLists.txt b/src/drivers/imu/fxas21002c/CMakeLists.txt index c55e20c59c..f6f4d2ea7f 100644 --- a/src/drivers/imu/fxas21002c/CMakeLists.txt +++ b/src/drivers/imu/fxas21002c/CMakeLists.txt @@ -35,7 +35,7 @@ px4_add_module( MAIN fxas21002c STACK_MAIN 1500 COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS fxas21002c.cpp - DEPENDS ) diff --git a/src/drivers/imu/fxos8701cq/CMakeLists.txt b/src/drivers/imu/fxos8701cq/CMakeLists.txt index b88911cea0..209615dacc 100644 --- a/src/drivers/imu/fxos8701cq/CMakeLists.txt +++ b/src/drivers/imu/fxos8701cq/CMakeLists.txt @@ -35,7 +35,7 @@ px4_add_module( MAIN fxos8701cq STACK_MAIN 1500 COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS fxos8701cq.cpp - DEPENDS ) diff --git a/src/drivers/imu/l3gd20/CMakeLists.txt b/src/drivers/imu/l3gd20/CMakeLists.txt index 63c609365d..647423d9b3 100644 --- a/src/drivers/imu/l3gd20/CMakeLists.txt +++ b/src/drivers/imu/l3gd20/CMakeLists.txt @@ -35,8 +35,7 @@ px4_add_module( MAIN l3gd20 STACK_MAIN 1500 COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS l3gd20.cpp - DEPENDS ) - diff --git a/src/drivers/imu/lsm303d/CMakeLists.txt b/src/drivers/imu/lsm303d/CMakeLists.txt index 730c8beabf..355183916a 100644 --- a/src/drivers/imu/lsm303d/CMakeLists.txt +++ b/src/drivers/imu/lsm303d/CMakeLists.txt @@ -35,8 +35,7 @@ px4_add_module( MAIN lsm303d STACK_MAIN 1500 COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS lsm303d.cpp - DEPENDS ) - diff --git a/src/drivers/irlock/CMakeLists.txt b/src/drivers/irlock/CMakeLists.txt index b87f66a6f2..7d376f2406 100644 --- a/src/drivers/irlock/CMakeLists.txt +++ b/src/drivers/irlock/CMakeLists.txt @@ -34,8 +34,7 @@ px4_add_module( MODULE drivers__irlock MAIN irlock COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS irlock.cpp - DEPENDS ) - diff --git a/src/drivers/kinetis/CMakeLists.txt b/src/drivers/kinetis/CMakeLists.txt index 1aa52ddea7..a2fe213eb4 100644 --- a/src/drivers/kinetis/CMakeLists.txt +++ b/src/drivers/kinetis/CMakeLists.txt @@ -41,3 +41,4 @@ add_library(drivers_arch ) add_dependencies(drivers_arch prebuild_targets) target_link_libraries(drivers_arch PRIVATE drivers_board) +target_compile_options(drivers_arch PRIVATE -Wno-cast-align) # TODO: fix and enable diff --git a/src/drivers/magnetometer/bmm150/CMakeLists.txt b/src/drivers/magnetometer/bmm150/CMakeLists.txt index da23f3535b..6adda9d085 100644 --- a/src/drivers/magnetometer/bmm150/CMakeLists.txt +++ b/src/drivers/magnetometer/bmm150/CMakeLists.txt @@ -35,8 +35,7 @@ px4_add_module( MAIN bmm150 STACK_MAIN 1200 COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS bmm150.cpp - DEPENDS ) - diff --git a/src/drivers/magnetometer/hmc5883/CMakeLists.txt b/src/drivers/magnetometer/hmc5883/CMakeLists.txt index 8d8ab428f0..bd5fa24dfc 100644 --- a/src/drivers/magnetometer/hmc5883/CMakeLists.txt +++ b/src/drivers/magnetometer/hmc5883/CMakeLists.txt @@ -35,10 +35,9 @@ px4_add_module( MAIN hmc5883 STACK_MAIN 1500 COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS hmc5883_i2c.cpp hmc5883_spi.cpp hmc5883.cpp - DEPENDS ) - diff --git a/src/drivers/magnetometer/ist8310/CMakeLists.txt b/src/drivers/magnetometer/ist8310/CMakeLists.txt index 117552e7bd..3a2fd67132 100644 --- a/src/drivers/magnetometer/ist8310/CMakeLists.txt +++ b/src/drivers/magnetometer/ist8310/CMakeLists.txt @@ -33,8 +33,9 @@ px4_add_module( MODULE drivers__ist8310 MAIN ist8310 + COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable STACK_MAIN 1500 SRCS ist8310.cpp ) - diff --git a/src/drivers/magnetometer/lis3mdl/CMakeLists.txt b/src/drivers/magnetometer/lis3mdl/CMakeLists.txt index 379f5ffa22..d3780cb158 100644 --- a/src/drivers/magnetometer/lis3mdl/CMakeLists.txt +++ b/src/drivers/magnetometer/lis3mdl/CMakeLists.txt @@ -35,11 +35,10 @@ px4_add_module( MAIN lis3mdl STACK_MAIN 1200 COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS lis3mdl_i2c.cpp lis3mdl_spi.cpp lis3mdl_main.cpp lis3mdl.cpp - DEPENDS ) - diff --git a/src/drivers/magnetometer/qmc5883/CMakeLists.txt b/src/drivers/magnetometer/qmc5883/CMakeLists.txt index 3d8b9200b4..2ebe15551b 100644 --- a/src/drivers/magnetometer/qmc5883/CMakeLists.txt +++ b/src/drivers/magnetometer/qmc5883/CMakeLists.txt @@ -35,9 +35,9 @@ px4_add_module( MAIN qmc5883 STACK_MAIN 1500 COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS qmc5883_i2c.cpp qmc5883_spi.cpp qmc5883.cpp - DEPENDS ) diff --git a/src/drivers/magnetometer/rm3100/CMakeLists.txt b/src/drivers/magnetometer/rm3100/CMakeLists.txt index af791a83b5..7d9248c47c 100644 --- a/src/drivers/magnetometer/rm3100/CMakeLists.txt +++ b/src/drivers/magnetometer/rm3100/CMakeLists.txt @@ -35,10 +35,10 @@ px4_add_module( MAIN rm3100 STACK_MAIN 1200 COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS rm3100_i2c.cpp rm3100_spi.cpp rm3100_main.cpp rm3100.cpp - DEPENDS ) diff --git a/src/drivers/pmw3901/CMakeLists.txt b/src/drivers/pmw3901/CMakeLists.txt index 784f83988f..a169eaba0c 100644 --- a/src/drivers/pmw3901/CMakeLists.txt +++ b/src/drivers/pmw3901/CMakeLists.txt @@ -34,6 +34,8 @@ px4_add_module( MODULE drivers__pmw3901 MAIN pmw3901 + COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable STACK_MAIN 1200 SRCS pmw3901.cpp diff --git a/src/drivers/pwm_input/CMakeLists.txt b/src/drivers/pwm_input/CMakeLists.txt index a0a18a9687..3079933e78 100644 --- a/src/drivers/pwm_input/CMakeLists.txt +++ b/src/drivers/pwm_input/CMakeLists.txt @@ -36,7 +36,7 @@ px4_add_module( STACK_MAIN 1024 COMPILE_FLAGS -Wno-pmf-conversions + -Wno-cast-align # TODO: fix and enable SRCS pwm_input.cpp - DEPENDS ) diff --git a/src/drivers/px4flow/CMakeLists.txt b/src/drivers/px4flow/CMakeLists.txt index f9f859d9cd..fcce776bef 100644 --- a/src/drivers/px4flow/CMakeLists.txt +++ b/src/drivers/px4flow/CMakeLists.txt @@ -35,8 +35,7 @@ px4_add_module( MAIN px4flow STACK_MAIN 1200 COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS px4flow.cpp - DEPENDS ) - diff --git a/src/drivers/px4io/CMakeLists.txt b/src/drivers/px4io/CMakeLists.txt index a6cad842c4..1cf4809fc6 100644 --- a/src/drivers/px4io/CMakeLists.txt +++ b/src/drivers/px4io/CMakeLists.txt @@ -35,6 +35,7 @@ px4_add_module( MAIN px4io STACK_MAIN 1816 COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS px4io.cpp px4io_uploader.cpp diff --git a/src/drivers/stm32/CMakeLists.txt b/src/drivers/stm32/CMakeLists.txt index 524139e44d..aa444a97dd 100644 --- a/src/drivers/stm32/CMakeLists.txt +++ b/src/drivers/stm32/CMakeLists.txt @@ -41,3 +41,4 @@ add_library(drivers_arch ) add_dependencies(drivers_arch prebuild_targets) target_link_libraries(drivers_arch PRIVATE drivers_board) +target_compile_options(drivers_arch PRIVATE -Wno-cast-align) # TODO: fix and enable diff --git a/src/drivers/uavcan/CMakeLists.txt b/src/drivers/uavcan/CMakeLists.txt index ac12dc5f67..69c21f2a34 100644 --- a/src/drivers/uavcan/CMakeLists.txt +++ b/src/drivers/uavcan/CMakeLists.txt @@ -63,6 +63,7 @@ add_definitions( -DUAVCAN_PLATFORM=${UAVCAN_PLATFORM} ) +add_compile_options(-Wno-cast-align) # TODO: fix and enable add_subdirectory(libuavcan EXCLUDE_FROM_ALL) add_dependencies(uavcan prebuild_targets) diff --git a/src/drivers/uavcanesc/CMakeLists.txt b/src/drivers/uavcanesc/CMakeLists.txt index 3e3c80bdac..093a557cfd 100644 --- a/src/drivers/uavcanesc/CMakeLists.txt +++ b/src/drivers/uavcanesc/CMakeLists.txt @@ -52,6 +52,7 @@ add_definitions( -DUAVCAN_USE_EXTERNAL_SNPRINT ) +add_compile_options(-Wno-cast-align) # TODO: fix and enable add_subdirectory(${LIBUAVCAN_DIR} uavcanesc_libuavcan) add_dependencies(uavcan prebuild_targets) diff --git a/src/drivers/uavcannode/CMakeLists.txt b/src/drivers/uavcannode/CMakeLists.txt index 2d2b725bb0..f586fc82e5 100644 --- a/src/drivers/uavcannode/CMakeLists.txt +++ b/src/drivers/uavcannode/CMakeLists.txt @@ -52,6 +52,7 @@ add_definitions( -DUAVCAN_USE_EXTERNAL_SNPRINT ) +add_compile_options(-Wno-cast-align) # TODO: fix and enable add_subdirectory(${LIBUAVCAN_DIR} uavcannode_libuavcan) add_dependencies(uavcan prebuild_targets) diff --git a/src/lib/CollisionPrevention/CMakeLists.txt b/src/lib/CollisionPrevention/CMakeLists.txt index b9ef18f7c3..ae36bf94b6 100644 --- a/src/lib/CollisionPrevention/CMakeLists.txt +++ b/src/lib/CollisionPrevention/CMakeLists.txt @@ -32,3 +32,4 @@ ############################################################################ px4_add_library(CollisionPrevention CollisionPrevention.cpp) +target_compile_options(CollisionPrevention PRIVATE -Wno-cast-align) # TODO: fix and enable diff --git a/src/lib/DriverFramework b/src/lib/DriverFramework index 4b2eb055e5..06277ef49f 160000 --- a/src/lib/DriverFramework +++ b/src/lib/DriverFramework @@ -1 +1 @@ -Subproject commit 4b2eb055e534a09323c4f5c467aaff63c98dce7c +Subproject commit 06277ef49fb8c9fad18d56ef40e8bc9fe1655a65 diff --git a/src/lib/FlightTasks/CMakeLists.txt b/src/lib/FlightTasks/CMakeLists.txt index 42e0c70f90..059e938da6 100644 --- a/src/lib/FlightTasks/CMakeLists.txt +++ b/src/lib/FlightTasks/CMakeLists.txt @@ -103,6 +103,8 @@ add_custom_command( # Create Flight Tasks Library ########################################### +add_compile_options(-Wno-cast-align) # TODO: fix and enable + px4_add_library(FlightTasks FlightTasks.cpp FlightTasks_generated.cpp diff --git a/src/lib/parameters/CMakeLists.txt b/src/lib/parameters/CMakeLists.txt index 0e5e0c83a0..c31fad719e 100644 --- a/src/lib/parameters/CMakeLists.txt +++ b/src/lib/parameters/CMakeLists.txt @@ -149,7 +149,11 @@ if (NOT "${PX4_BOARD}" MATCHES "px4_io") target_link_libraries(parameters PRIVATE perf tinybson) target_compile_definitions(parameters PRIVATE -DMODULE_NAME="parameters") - target_compile_options(parameters PRIVATE -Wno-sign-compare) # TODO: fix this + target_compile_options(parameters + PRIVATE + -Wno-cast-align # TODO: fix and enable + -Wno-sign-compare # TODO: fix and enable + ) else() add_library(parameters ${PX4_SOURCE_DIR}/src/platforms/empty.c) endif() diff --git a/src/lib/parameters/flashparams/CMakeLists.txt b/src/lib/parameters/flashparams/CMakeLists.txt index 8a10dfbad3..44375a4eea 100644 --- a/src/lib/parameters/flashparams/CMakeLists.txt +++ b/src/lib/parameters/flashparams/CMakeLists.txt @@ -37,5 +37,9 @@ add_library(flashparams ) add_dependencies(flashparams prebuild_targets) target_compile_definitions(flashparams PRIVATE -DMODULE_NAME="flashparams") -target_compile_options(flashparams PRIVATE -Wno-sign-compare) # TODO: fix this +target_compile_options(flashparams + PRIVATE + -Wno-sign-compare # TODO: fix this + -Wno-cast-align # TODO: fix and enable +) target_link_libraries(flashparams PRIVATE nuttx_arch) \ No newline at end of file diff --git a/src/modules/commander/CMakeLists.txt b/src/modules/commander/CMakeLists.txt index 83708af04d..326e4721ad 100644 --- a/src/modules/commander/CMakeLists.txt +++ b/src/modules/commander/CMakeLists.txt @@ -39,6 +39,7 @@ px4_add_module( STACK_MAIN 4096 STACK_MAX 2450 COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS accelerometer_calibration.cpp airspeed_calibration.cpp diff --git a/src/modules/dataman/CMakeLists.txt b/src/modules/dataman/CMakeLists.txt index 3d11b0f537..fc67ee0a24 100644 --- a/src/modules/dataman/CMakeLists.txt +++ b/src/modules/dataman/CMakeLists.txt @@ -35,6 +35,7 @@ px4_add_module( MAIN dataman STACK_MAIN 1200 COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS dataman.cpp ) diff --git a/src/modules/logger/CMakeLists.txt b/src/modules/logger/CMakeLists.txt index 392ea2d91f..ef5e4eab62 100644 --- a/src/modules/logger/CMakeLists.txt +++ b/src/modules/logger/CMakeLists.txt @@ -37,6 +37,7 @@ px4_add_module( PRIORITY "SCHED_PRIORITY_MAX-30" STACK_MAIN 2200 COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS logger.cpp log_writer.cpp diff --git a/src/modules/mavlink/CMakeLists.txt b/src/modules/mavlink/CMakeLists.txt index d7b0d884bf..1c7fe6061d 100644 --- a/src/modules/mavlink/CMakeLists.txt +++ b/src/modules/mavlink/CMakeLists.txt @@ -39,6 +39,7 @@ px4_add_module( STACK_MAIN 1600 STACK_MAX 1600 COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable INCLUDES ${PX4_SOURCE_DIR}/mavlink/include/mavlink SRCS diff --git a/src/modules/mavlink/mavlink_tests/CMakeLists.txt b/src/modules/mavlink/mavlink_tests/CMakeLists.txt index 5989f366e0..188d82c23e 100644 --- a/src/modules/mavlink/mavlink_tests/CMakeLists.txt +++ b/src/modules/mavlink/mavlink_tests/CMakeLists.txt @@ -42,6 +42,7 @@ px4_add_module( #-DMAVLINK_FTP_DEBUG -DMavlinkStream=MavlinkStreamTest -DMavlinkFTP=MavlinkFTPTest + -Wno-cast-align # TODO: fix and enable SRCS mavlink_tests.cpp mavlink_ftp_test.cpp diff --git a/src/modules/muorb/krait/CMakeLists.txt b/src/modules/muorb/krait/CMakeLists.txt index 270c4d6b81..aecc79fd24 100644 --- a/src/modules/muorb/krait/CMakeLists.txt +++ b/src/modules/muorb/krait/CMakeLists.txt @@ -35,6 +35,8 @@ include(hexagon_sdk) px4_add_module( MODULE modules__muorb__krait MAIN muorb + COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable INCLUDES ${HEXAGON_SDK_INCLUDES} ${PX4_BINARY_DIR}/platforms/posix diff --git a/src/modules/simulator/CMakeLists.txt b/src/modules/simulator/CMakeLists.txt index f47d3da71e..863d95c2f3 100644 --- a/src/modules/simulator/CMakeLists.txt +++ b/src/modules/simulator/CMakeLists.txt @@ -60,6 +60,7 @@ px4_add_module( MAIN simulator COMPILE_FLAGS -Wno-double-promotion + -Wno-cast-align INCLUDES ${PX4_SOURCE_DIR}/mavlink/include/mavlink SRCS diff --git a/src/modules/simulator/accelsim/CMakeLists.txt b/src/modules/simulator/accelsim/CMakeLists.txt index d5208b1e0c..5dece53969 100644 --- a/src/modules/simulator/accelsim/CMakeLists.txt +++ b/src/modules/simulator/accelsim/CMakeLists.txt @@ -36,6 +36,7 @@ px4_add_module( MAIN accelsim COMPILE_FLAGS -Wno-double-promotion + -Wno-cast-align # TODO: fix and enable SRCS accelsim.cpp DEPENDS diff --git a/src/modules/simulator/airspeedsim/CMakeLists.txt b/src/modules/simulator/airspeedsim/CMakeLists.txt index 05da547371..0f6510d605 100644 --- a/src/modules/simulator/airspeedsim/CMakeLists.txt +++ b/src/modules/simulator/airspeedsim/CMakeLists.txt @@ -36,6 +36,7 @@ px4_add_module( MAIN measairspeedsim COMPILE_FLAGS -Wno-double-promotion + -Wno-cast-align # TODO: fix and enable SRCS airspeedsim.cpp meas_airspeed_sim.cpp diff --git a/src/modules/simulator/barosim/CMakeLists.txt b/src/modules/simulator/barosim/CMakeLists.txt index 1da3384327..b711a792b3 100644 --- a/src/modules/simulator/barosim/CMakeLists.txt +++ b/src/modules/simulator/barosim/CMakeLists.txt @@ -36,6 +36,7 @@ px4_add_module( MAIN barosim COMPILE_FLAGS -Wno-double-promotion + -Wno-cast-align # TODO: fix and enable SRCS baro.cpp DEPENDS diff --git a/src/modules/simulator/gpssim/CMakeLists.txt b/src/modules/simulator/gpssim/CMakeLists.txt index aa68567379..79b941fbd8 100644 --- a/src/modules/simulator/gpssim/CMakeLists.txt +++ b/src/modules/simulator/gpssim/CMakeLists.txt @@ -36,6 +36,7 @@ px4_add_module( MAIN gpssim COMPILE_FLAGS -Wno-double-promotion + -Wno-cast-align # TODO: fix and enable SRCS gpssim.cpp DEPENDS diff --git a/src/modules/simulator/gyrosim/CMakeLists.txt b/src/modules/simulator/gyrosim/CMakeLists.txt index 5d134bdbac..04b18d1c5c 100644 --- a/src/modules/simulator/gyrosim/CMakeLists.txt +++ b/src/modules/simulator/gyrosim/CMakeLists.txt @@ -36,6 +36,7 @@ px4_add_module( MAIN gyrosim COMPILE_FLAGS -Wno-double-promotion + -Wno-cast-align # TODO: fix and enable STACK_MAIN 1200 SRCS gyrosim.cpp diff --git a/src/platforms/common/work_queue/CMakeLists.txt b/src/platforms/common/work_queue/CMakeLists.txt index f47f0b5829..2c77023dfb 100644 --- a/src/platforms/common/work_queue/CMakeLists.txt +++ b/src/platforms/common/work_queue/CMakeLists.txt @@ -51,6 +51,7 @@ if (NOT "${PX4_PLATFORM}" MATCHES "nuttx") work_thread.c ) target_compile_definitions(work_queue PRIVATE MODULE_NAME="work_queue") + target_compile_options(work_queue PRIVATE -Wno-cast-align) # TODO: fix and enable add_dependencies(work_queue prebuild_targets) endif() diff --git a/src/systemcmds/bl_update/CMakeLists.txt b/src/systemcmds/bl_update/CMakeLists.txt index c4d54e296f..45e11c74f0 100644 --- a/src/systemcmds/bl_update/CMakeLists.txt +++ b/src/systemcmds/bl_update/CMakeLists.txt @@ -35,8 +35,7 @@ px4_add_module( MAIN bl_update STACK_MAIN 4096 COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS bl_update.c - DEPENDS ) - diff --git a/src/systemcmds/hardfault_log/CMakeLists.txt b/src/systemcmds/hardfault_log/CMakeLists.txt index 02adbc1e9c..c48b372839 100644 --- a/src/systemcmds/hardfault_log/CMakeLists.txt +++ b/src/systemcmds/hardfault_log/CMakeLists.txt @@ -35,6 +35,7 @@ px4_add_module( MAIN hardfault_log STACK_MAIN 2100 COMPILE_FLAGS + -Wno-cast-align # TODO: fix and enable SRCS hardfault_log.c DEPENDS -- GitLab