From d343edaa66881f51c712bfc8aed62adbc1a3c228 Mon Sep 17 00:00:00 2001 From: Mark Charlebois Date: Tue, 8 Sep 2015 14:13:54 -0700 Subject: [PATCH] Moved qurt changes to src/firmware/qurt/CMakeLists.txt The src/CMakeLists.txt are now in src/firmware/${OS}/CMakeLists.txt Signed-off-by: Mark Charlebois --- src/firmware/qurt/CMakeLists.txt | 31 +++++++++++++++++++++++++++---- 1 file changed, 27 insertions(+), 4 deletions(-) diff --git a/src/firmware/qurt/CMakeLists.txt b/src/firmware/qurt/CMakeLists.txt index b9b3f37101..9a49794627 100644 --- a/src/firmware/qurt/CMakeLists.txt +++ b/src/firmware/qurt/CMakeLists.txt @@ -1,11 +1,34 @@ +set(V_ARCH v5) +set(HEXAGON_TOOLS_ROOT /opt/6.4.03) +set(TOOLSLIB + ${HEXAGON_TOOLS_ROOT}/dinkumware/lib/${V_ARCH}/G0) +set(module_dir_list) set(module_list) -px4_qurt_add_modules(module_list ${BOARD}) -message(STATUS "module list: ${module_list}") +px4_qurt_add_modules(module_dir_list ${BOARD}) +message(STATUS "module list: ${module_dir_list}") +foreach(directory ${module_dir_list}) + message(STATUS "directory: ${directory}") + px4_mangle_name(${directory} mangled_name) + list(APPEND module_list + ${mangled_name}) +endforeach() px4_qurt_generate_builtin_commands( - OUT builtin_commands.c + OUT builtin_commands.cpp MODULE_LIST ${module_list}) -add_executable(firmware_qurt builtin_commands.c) +# FIXME @jgoppert - how to work around issues like this? +# Without changing global variables? +# Clear -rdynamic flag which fails for hexagon +set(CMAKE_SHARED_LIBRARY_LINK_C_FLAGS "") +set(CMAKE_SHARED_LIBRARY_LINK_CXX_FLAGS "") + +add_executable(mainapp builtin_commands.cpp) +target_link_libraries(mainapp + -Wl,--whole-archive + ${module_list} + m + -Wl,--no-whole-archive + -Wl,${TOOLSLIB}/pic/libstdc++.a) # vim: set noet ft=cmake fenc=utf-8 ff=unix :