X-Git-Url: http://rtime.felk.cvut.cz/gitweb/hubacji1/rrts.git/blobdiff_plain/fbba0be1bf91e2eb568e1c081d78282e42a50a64..HEAD:/CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt index e05f6da..e767f08 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,26 +1,49 @@ -cmake_minimum_required(VERSION 2.8) +# SPDX-FileCopyrightText: 2021 Jiri Vlasak +# +# SPDX-License-Identifier: GPL-3.0-only + +cmake_minimum_required(VERSION 3.8) project(rrts) -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/incl) -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/api) +#set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS_DEBUG} -fno-omit-frame-pointer -fsanitize=address") +#set (CMAKE_LINKER_FLAGS "${CMAKE_LINKER_FLAGS_DEBUG} -fno-omit-frame-pointer -fsanitize=address") -add_library(rrts SHARED - src/rrts.cc -) -set_target_properties(rrts PROPERTIES - PUBLIC_HEADER api/rrts.h -) +set(CMAKE_CXX_STANDARD 17) +add_compile_options(-O2) +# Require compiler version (g++ >= 7 tested) +if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 7) + message(FATAL_ERROR "GCC version must be at least 7!") +endif() -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/wvtest/cpp) -ADD_DEFINITIONS(-DWVTEST_CONFIGURED) -add_executable(ut - wvtest/cpp/wvtestmain.cc - wvtest/cpp/wvtest.cc - ut/rrts.t.cc -) -target_link_libraries(ut rrts) +if (NOT TARGET bcar) + set(SKIP_UT TRUE) + add_subdirectory(bcar) + unset(SKIP_UT) +endif() +link_libraries(bcar) +link_libraries(pslot) + +if (NOT TARGET "JsonCpp::JsonCpp") + find_package(jsoncpp REQUIRED) +endif () +link_libraries(jsoncpp_lib) -add_custom_command(TARGET ut - POST_BUILD COMMAND ./wvtestrun ../build/ut - WORKING_DIRECTORY ../wvtest +add_library(rrts STATIC + src/rrts.cc + src/rrtext21.cc + src/rrtext20.cc + src/rrtext19.cc + src/rrtext18.cc + src/rrtext17.cc + src/rrtext16.cc + src/rrtext15.cc + src/rrtext14.cc + src/rrtext13.cc + src/rrtext10.cc + src/rrtext8.cc + src/rrtext6.cc + src/rrtext2.cc + src/reeds_shepp.cpp + src/dubins.c ) +target_include_directories(rrts PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/incl)