cmake_minimum_required(VERSION 3.5) project(SNAKE LANGUAGES CXX) set(CMAKE_INCLUDE_CURRENT_DIR ON) set(CMAKE_CXX_STANDARD 14) set(CMAKE_CXX_STANDARD_REQUIRED ON) set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -g -Wpedantic") add_library(snake snake.h snake_geometry.h snake.cpp snake_geometry.cpp ) set(CLIPPER_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../clipper) #set(ORTOOLS_LIB_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../or-tools/lib) find_library(polyclipping REQUIRED) #add_library(polyclipping ${CLIPPER_PATH}/clipper.cpp) #include_directories(${CLIPPER_PATH}) # external header only lib #include_directories(${ORTOOLS_INCLUDE_PATH}) find_package(GeographicLib REQUIRED) target_link_libraries (snake ${GeographicLib_LIBRARIES} polyclipping) # or-tools set(ORTOOLS_ROOT ${CMAKE_CURRENT_SOURCE_DIR}/../../or-tools) set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake") set(CMAKE_PREFIX_PATH ${CMAKE_PREFIX_PATH} ${ORTOOLS_ROOT}) find_package(ortools REQUIRED) include_directories( ${ORTOOLS_INCLUDE_DIRS} ) add_definitions(-DUSE_GLOP) target_link_libraries(snake ${ORTOOLS_LIBRARIES}) # include snake root dir target_include_directories (snake PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}) include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../../mason_packages/headers/geometry/1.0.0/include) # external header only lib include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../../mason_packages/headers/polylabel/1.0.3/include) # external header only lib include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../../mason_packages/headers/variant/1.1.0/include) # external header only lib add_subdirectory(test)