From 3f758490a4d2f0bb94fb69b8d133ef9f6c48d9f8 Mon Sep 17 00:00:00 2001 From: Mark Charlebois Date: Mon, 21 Sep 2015 14:20:21 -0700 Subject: [PATCH] QuRT: move to HexagonTools 7.4 toolchain Some subsystems error on frame size without the included patches. Signed-off-by: Mark Charlebois --- cmake/configs/qurt_eagle_hello.cmake | 2 +- cmake/configs/qurt_eagle_hil.cmake | 2 +- cmake/configs/qurt_eagle_muorb.cmake | 2 +- cmake/configs/qurt_eagle_release.cmake | 2 +- cmake/configs/qurt_eagle_test.cmake | 2 +- cmake/configs/qurt_eagle_travis.cmake | 2 +- ...ain-hexagon-7.2.cmake => Toolchain-hexagon-7.4.cmake} | 7 +++---- src/modules/attitude_estimator_q/CMakeLists.txt | 9 +++++++-- src/modules/commander/CMakeLists.txt | 9 +++++++-- 9 files changed, 23 insertions(+), 14 deletions(-) rename cmake/toolchains/{Toolchain-hexagon-7.2.cmake => Toolchain-hexagon-7.4.cmake} (98%) diff --git a/cmake/configs/qurt_eagle_hello.cmake b/cmake/configs/qurt_eagle_hello.cmake index d7dd2a0598..5b38a70649 100644 --- a/cmake/configs/qurt_eagle_hello.cmake +++ b/cmake/configs/qurt_eagle_hello.cmake @@ -1,6 +1,6 @@ include(qurt/px4_impl_qurt) -set(CMAKE_TOOLCHAIN_FILE cmake/toolchains/Toolchain-hexagon-7.2.cmake) +set(CMAKE_TOOLCHAIN_FILE cmake/toolchains/Toolchain-hexagon-7.4.cmake) set(config_module_list drivers/device diff --git a/cmake/configs/qurt_eagle_hil.cmake b/cmake/configs/qurt_eagle_hil.cmake index 4b9f87d56c..6bb9e0cbc3 100644 --- a/cmake/configs/qurt_eagle_hil.cmake +++ b/cmake/configs/qurt_eagle_hil.cmake @@ -1,6 +1,6 @@ include(qurt/px4_impl_qurt) -set(CMAKE_TOOLCHAIN_FILE cmake/toolchains/Toolchain-hexagon-7.2.cmake) +set(CMAKE_TOOLCHAIN_FILE cmake/toolchains/Toolchain-hexagon-7.4.cmake) set(config_module_list drivers/device diff --git a/cmake/configs/qurt_eagle_muorb.cmake b/cmake/configs/qurt_eagle_muorb.cmake index 77a94fd722..6f4f12cf4d 100644 --- a/cmake/configs/qurt_eagle_muorb.cmake +++ b/cmake/configs/qurt_eagle_muorb.cmake @@ -1,6 +1,6 @@ include(qurt/px4_impl_qurt) -set(CMAKE_TOOLCHAIN_FILE cmake/toolchains/Toolchain-hexagon-7.2.cmake) +set(CMAKE_TOOLCHAIN_FILE cmake/toolchains/Toolchain-hexagon-7.4.cmake) set(config_module_list drivers/device diff --git a/cmake/configs/qurt_eagle_release.cmake b/cmake/configs/qurt_eagle_release.cmake index a6b3045835..f80c87d5fb 100644 --- a/cmake/configs/qurt_eagle_release.cmake +++ b/cmake/configs/qurt_eagle_release.cmake @@ -20,7 +20,7 @@ set(target_libraries ) -set(CMAKE_TOOLCHAIN_FILE cmake/toolchains/Toolchain-hexagon-7.2.cmake) +set(CMAKE_TOOLCHAIN_FILE cmake/toolchains/Toolchain-hexagon-7.4.cmake) set(config_module_list # diff --git a/cmake/configs/qurt_eagle_test.cmake b/cmake/configs/qurt_eagle_test.cmake index 5e27fb7fa1..6f948d905c 100644 --- a/cmake/configs/qurt_eagle_test.cmake +++ b/cmake/configs/qurt_eagle_test.cmake @@ -1,6 +1,6 @@ include(qurt/px4_impl_qurt) -set(CMAKE_TOOLCHAIN_FILE cmake/toolchains/Toolchain-hexagon-7.2.cmake) +set(CMAKE_TOOLCHAIN_FILE cmake/toolchains/Toolchain-hexagon-7.4.cmake) set(config_module_list drivers/device diff --git a/cmake/configs/qurt_eagle_travis.cmake b/cmake/configs/qurt_eagle_travis.cmake index ec10d2a10c..20293830e2 100644 --- a/cmake/configs/qurt_eagle_travis.cmake +++ b/cmake/configs/qurt_eagle_travis.cmake @@ -3,7 +3,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(CMAKE_TOOLCHAIN_FILE cmake/toolchains/Toolchain-hexagon-7.2.cmake) +set(CMAKE_TOOLCHAIN_FILE cmake/toolchains/Toolchain-hexagon-7.4.cmake) set(config_module_list drivers/device diff --git a/cmake/toolchains/Toolchain-hexagon-7.2.cmake b/cmake/toolchains/Toolchain-hexagon-7.4.cmake similarity index 98% rename from cmake/toolchains/Toolchain-hexagon-7.2.cmake rename to cmake/toolchains/Toolchain-hexagon-7.4.cmake index 9cbc23bb24..9c4286044d 100644 --- a/cmake/toolchains/Toolchain-hexagon-7.2.cmake +++ b/cmake/toolchains/Toolchain-hexagon-7.4.cmake @@ -35,7 +35,7 @@ list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake) include(common/px4_base) if(NOT HEXAGON_TOOLS_ROOT) - set(HEXAGON_TOOLS_ROOT /opt/7.2.09/Tools) + set(HEXAGON_TOOLS_ROOT /opt/7.4/Tools) endif() macro (list2string out in) @@ -95,7 +95,6 @@ set(ARCHOPTIMIZATION -g -fno-strict-aliasing -fdata-sections - -fpic -fno-zero-initialized-in-bss ) @@ -108,7 +107,7 @@ set(ARCHCFLAGS set(ARCHCXXFLAGS -fno-exceptions -fno-rtti -# -std=c++11 + -std=c++11 -fno-threadsafe-statics -DCONFIG_WCHAR_BUILTIN -D__CUSTOM_FILE_IO__ @@ -214,9 +213,9 @@ list2string(CMAKE_EXE_LINKER_FLAGS -g -mv5 -mG0lib - -lhexagon -G0 -fpic + -shared -Wl,-Bsymbolic -Wl,--wrap=malloc -Wl,--wrap=calloc diff --git a/src/modules/attitude_estimator_q/CMakeLists.txt b/src/modules/attitude_estimator_q/CMakeLists.txt index a727305b9a..3f89f45cdb 100644 --- a/src/modules/attitude_estimator_q/CMakeLists.txt +++ b/src/modules/attitude_estimator_q/CMakeLists.txt @@ -29,12 +29,17 @@ # ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE # POSSIBILITY OF SUCH DAMAGE. # -############################################################################ +############################################################################# +set(MODULE_CFLAGS) +if (NOT ${OS} STREQUAL "qurt") + list(APPEND MODULE_CFLAGS + -Wframe-larger-than=1400) +endif() px4_add_module( MODULE modules__attitude_estimator_q MAIN attitude_estimator_q COMPILE_FLAGS - -Wframe-larger-than=1400 + ${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 a831aa9bce..64954c6d69 100644 --- a/src/modules/commander/CMakeLists.txt +++ b/src/modules/commander/CMakeLists.txt @@ -30,13 +30,18 @@ # POSSIBILITY OF SUCH DAMAGE. # ############################################################################ +set(MODULE_CFLAGS -Os) + +if(NOT ${OS} STREQUAL "qurt") + list(APPEND MODULE_CFLAGS + -Wframe-larger-than=2200) +endif() px4_add_module( MODULE modules__commander MAIN commander STACK 5000 COMPILE_FLAGS - -Wframe-larger-than=2200 - -Os + ${MODULE_CFLAGS} SRCS commander.cpp commander_params.c