-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCMakeLists.txt
38 lines (29 loc) · 927 Bytes
/
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
cmake_minimum_required(VERSION 3.10)
project(pearl VERSION 0.0.1)
set(sourcefiles
src/cpp/adaptive_random_forest.cpp
src/cpp/pearl.cpp
src/cpp/lru_state.cpp
src/cpp/lossy_state_graph.cpp
)
set(pybindfiles
src/cpp/pearl_bindings.cpp
)
set(include_dirs
third_party/streamDM/
)
set(glog "-lglog -lpthread")
set(warning "-Wall -Wextra -Wno-sign-compare -Wno-nonnull -Wno-unused-variable")
set(flags "-fPIC -std=c++14 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE64 -O3 -DUNIX -g")
add_definitions(${flags})
add_subdirectory(third_party/streamDM)
if(ADD_PEARL_AS_LIBRARY)
message("PEARL: create library")
add_library(pearl STATIC ${sourcefiles})
else()
message("PEARL: turn on Python Wrapper")
add_subdirectory(third_party/pybind11)
pybind11_add_module(pearl SHARED ${sourcefiles} ${pybindfiles})
endif()
target_link_libraries(pearl PUBLIC streamDM)
target_include_directories(pearl PUBLIC ${include_dirs})