-
Notifications
You must be signed in to change notification settings - Fork 0
/
CMakeLists.txt
66 lines (62 loc) · 1.85 KB
/
CMakeLists.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
cmake_minimum_required(VERSION 3.12.4 FATAL_ERROR)
project(geos-cli VERSION 0.0.1 LANGUAGES CXX)
# Conan
list(APPEND CMAKE_MODULE_PATH ${CMAKE_BINARY_DIR})
find_package(geos REQUIRED)
find_package(GTest REQUIRED)
find_package(CLI11 REQUIRED)
# Library
add_library(geos-cmds STATIC
src/Commands.cpp
src/Command.cpp
src/AreaCommand.cpp
src/BoundaryCommand.cpp
src/BufferCommand.cpp
src/CentroidCommand.cpp
src/ContainsCommand.cpp
src/ConcaveHullCommand.cpp
src/ConvexHullCommand.cpp
src/CoordinatesCommand.cpp
src/CountCommand.cpp
src/CountPointsCommand.cpp
src/CoveredByCommand.cpp
src/CoversCommand.cpp
src/CrossesCommand.cpp
src/DelaunayTriangulationCommand.cpp
src/DifferenceCommand.cpp
src/DimensionCommand.cpp
src/DisjointCommand.cpp
src/DistanceCommand.cpp
src/EnvelopeCommand.cpp
src/GetCommand.cpp
src/InteriorPointCommand.cpp
src/IntersectionCommand.cpp
src/IntersectsCommand.cpp
src/IsEmptyCommand.cpp
src/IsRectCommand.cpp
src/IsSimpleCommand.cpp
src/IsValidCommand.cpp
src/IsWithinDistanceCommand.cpp
src/LengthCommand.cpp
src/ListCommand.cpp
src/MakeValidCommand.cpp
src/OffsetCurveCommand.cpp
src/OverlapsCommand.cpp
src/RelateCommand.cpp
src/SymDifferenceCommand.cpp
src/TouchesCommand.cpp
src/TypeCommand.cpp
src/UnionCommand.cpp
src/VoronoiDiagramCommand.cpp
src/WithinCommand.cpp
)
add_library(GeosCli::geos-cmds ALIAS geos-cmds)
target_include_directories(geos-cmds PUBLIC "${PROJECT_SOURCE_DIR}/include")
target_compile_features(geos-cmds PUBLIC cxx_std_11)
target_link_libraries(geos-cmds PRIVATE GEOS::GEOS CLI11::CLI11)
# Application
add_executable(geos-cli src/App.cpp)
target_link_libraries(geos-cli PRIVATE geos-cmds GEOS::GEOS CLI11::CLI11)
# Tests
enable_testing()
add_subdirectory(test)