diff --git a/software/raspberry/superviseur-robot/CMakeLists.txt b/software/raspberry/superviseur-robot/CMakeLists.txt index c92ecb2..e1df92e 100644 --- a/software/raspberry/superviseur-robot/CMakeLists.txt +++ b/software/raspberry/superviseur-robot/CMakeLists.txt @@ -1,6 +1,8 @@ -cmake_minimum_required(VERSION 3.13) +cmake_minimum_required(VERSION 3.0) project(superviseur) +SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) + # Import modules set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake-modules) @@ -11,6 +13,7 @@ add_library(base64 lib/base64/base64.h ) target_include_directories(base64 PUBLIC lib/base64) +set_property(TARGET base64 PROPERTY CXX_STANDARD 11) # lib add_library(lib @@ -28,10 +31,12 @@ add_library(lib target_include_directories(lib PUBLIC lib) target_link_libraries(lib base64) target_compile_definitions(lib PUBLIC __FOR_PC__ __SIMULATION__ __WITH_ARUCO__ __WITH_OPENCV4__) +set_property(TARGET lib PROPERTY CXX_STANDARD 11) # Compile main executable add_executable(main main.cpp tasks.cpp tasks.h) target_link_libraries(main lib) +set_property(TARGET main PROPERTY CXX_STANDARD 11) # OpenCV #set (OpenCV_DIR /path/to/opencv) # Optiona: hint for OpenCV root folder @@ -44,7 +49,7 @@ target_link_libraries(lib ${OpenCV_LIBS}) # Xenomai set(Xenomai_ROOT_DIR /usr/xenomai) # Optional: hint for Xenomai root folder -set(Xenomai_libs POSIX ALCHEMY RTDM PSOS VXWORKS SMOKEY NATIVE) # List of Xenomai libraries to link +set(Xenomai_libs ALCHEMY) # List of Xenomai libraries to link find_package(Xenomai 3.0 REQUIRED ${Xenomai_libs}) if (Xenomai_FOUND) @@ -54,9 +59,10 @@ else () endif () foreach (lib IN LISTS Xenomai_libs) + string(SUBSTRING ${Xenomai_${lib}_LIBRARY_DIRS} 2 -1 Xenomai_${lib}_LIBRARY_DIRS) # remove -L prefix target_include_directories(main PRIVATE ${Xenomai_${lib}_INCLUDE_DIRS}) - target_link_options(main PRIVATE "LINKER:-R/usr/xenomai/lib") - target_link_libraries(main ${Xenomai_${lib}_LIBRARY_DIRS} ${Xenomai_${lib}_LIBRARIES}) + target_link_directories(main PRIVATE ${Xenomai_${lib}_LIBRARY_DIRS}) + target_link_libraries(main ${Xenomai_${lib}_LIBRARIES}) set_target_properties(main PROPERTIES LINK_FLAGS ${Xenomai_${lib}_LDFLAGS}) target_compile_definitions(main PRIVATE ${Xenomai_${lib}_DEFINITIONS}) endforeach ()