-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCMakeLists.txt
79 lines (62 loc) · 2.79 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
67
68
69
70
71
72
73
74
75
76
77
78
79
# Top-level CMake file for global config of 'CREP' project.
cmake_minimum_required (VERSION 3.14.5)
project ("CREP")
# Require C++17
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
#set(CMAKE_CXX_EXTENSIONS OFF)
option(WITH_PROFILING "Enables profiling" OFF)
option(WITH_DEBUG_LOG "Enables logging" OFF)
if (CMAKE_COMPILER_IS_GNUCXX)
set(BOOST_ROOT "/mnt/c/Program Files/boost/boost_1_70_0")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -lstdc++fs")
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lstdc++fs")
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -lstdc++fs")
if (WITH_PROFILING)
message("set flags for gprof")
#set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -g -pg")
#set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -pg")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pg")
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -pg")
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -pg")
endif ()
endif ()
find_package(Boost 1.70 REQUIRED)
if (WITH_DEBUG_LOG)
add_definitions(-DCREP_DEBUG_LOG_TIME=1)
add_definitions(-DCREP_DEBUG_LOG_VERTEX_EDGE_SPELLS=1)
add_definitions(-DCREP_DEBUG_LOG_CLUSTER_DYNAMICS=1)
add_definitions(-DCREP_DEBUG_LOG_EVENTS=1)
endif ()
if (CMAKE_COMPILER_IS_GNUCXX)
find_package(libmongocxx REQUIRED)
find_package(libbsoncxx REQUIRED)
include_directories(${LIBMONGOCXX_INCLUDE_DIR})
include_directories(${LIBBSONCXX_INCLUDE_DIR})
include_directories("/usr/local/include/mongocxx/v_noabi")
include_directories("/usr/local/include/bsoncxx/v_noabi")
include_directories("/usr/local/include/libmongoc-1.0")
include_directories("/usr/local/include/libbson-1.0")
include_directories("/usr/local/lib")
#link_directories("lib/metis-5.1.0")
#add_subdirectory("lib/metis-5.1.0")
find_package(MPI REQUIRED)
link_directories("lib/parmetis-4.0.3")
add_subdirectory("lib/parmetis-4.0.3")
elseif (MSVC)
#set(libmongocxx_DIR "C:/mongo-cxx-driver/lib/cmake/libmongocxx-3.4.0")
#set(libmongocxx_DIR "C:/mongo-cxx-driver/lib/cmake/libbsoncxx-3.4.0")
##include_directories("C:/mongo-cxx-driver/lib")
##find_package(libmongocxx REQUIRED PATHS "C:/mongo-cxx-driver/lib/cmake/libmongocxx-3.4.0")
##find_package(libbsoncxx REQUIRED PATHS "C:/mongo-cxx-driver/lib/cmake/libbsoncxx-3.4.0")
##include_directories(${LIBMONGOCXX_INCLUDE_DIR})
##include_directories(${LIBBSONCXX_INCLUDE_DIR})
##include_directories("C:/mongo-c-driver/lib")
##include_directories("C:/mongo-c-driver/include/libmongoc-1.0")
##include_directories("C:/mongo-c-driver/include/libbson-1.0")
##include_directories("C:/mongo-cxx-driver/include/mongocxx/v_noabi/mongocxx")
##include_directories("C:/mongo-cxx-driver/include/bsoncxx/v_noabi/bsoncxx")
endif ()
# Include sub-projects
add_subdirectory ("CREP")
# Copyright (c) 2019 Martin Schonger