-cmake_minimum_required(VERSION 2.8)
+# SPDX-FileCopyrightText: 2021 Jiri Vlasak <jiri.vlasak.2@cvut.cz>
+#
+# SPDX-License-Identifier: GPL-3.0-only
+
+cmake_minimum_required(VERSION 3.8)
project(rrts)
#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")
+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()
+
if (NOT TARGET bcar)
set(SKIP_UT TRUE)
add_subdirectory(bcar)
link_libraries(bcar)
link_libraries(pslot)
-find_package(jsoncpp REQUIRED)
+if (NOT TARGET "JsonCpp::JsonCpp")
+ find_package(jsoncpp REQUIRED)
+endif ()
link_libraries(jsoncpp_lib)
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/rrtext6.cc
src/rrtext2.cc
src/reeds_shepp.cpp
+ src/dubins.c
)
target_include_directories(rrts PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/incl)
-
-if (SKIP_UT)
- return()
-endif()
-add_executable(test0 ut/template.cc)
-target_link_libraries(test0 rrts)