-
Notifications
You must be signed in to change notification settings - Fork 0
/
CMakeLists.txt
59 lines (46 loc) · 1.71 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
cmake_minimum_required(VERSION 3.5 FATAL_ERROR)
project(khuri)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
find_package(Eigen3 REQUIRED NO_MODULE)
add_definitions(-Wall -pedantic -O3)
set(SOURCE_DIR "./cpp/src")
set(INCLUDE_DIR "./cpp/include")
set(BINDING_DIR "./khuri/bindings")
include_directories(${EIGEN3_INCLUDE_DIRS} ${INCLUDE_DIR})
add_subdirectory(lib/pybind11)
pybind11_add_module(_khuri_gsl
"${SOURCE_DIR}/gsl_interface.cpp"
"${BINDING_DIR}/gsl_bindings.cpp")
target_link_libraries(_khuri_gsl PRIVATE gsl gslcblas)
pybind11_add_module(_khuri_omnes
"${SOURCE_DIR}/cauchy.cpp"
"${SOURCE_DIR}/gsl_interface.cpp"
"${BINDING_DIR}/omnes_bindings.cpp")
target_link_libraries(_khuri_omnes PRIVATE gsl gslcblas)
pybind11_add_module(_khuri_khuri_treiman
"${SOURCE_DIR}/cauchy.cpp"
"${SOURCE_DIR}/curved_omnes.cpp"
"${SOURCE_DIR}/grid.cpp"
"${SOURCE_DIR}/gsl_interface.cpp"
"${SOURCE_DIR}/kernel.cpp"
"${SOURCE_DIR}/piecewise.cpp"
"${BINDING_DIR}/khuri_treiman_bindings.cpp")
target_link_libraries(_khuri_khuri_treiman PRIVATE gsl gslcblas)
pybind11_add_module(_khuri_chpt
"${SOURCE_DIR}/chpt.cpp"
"${BINDING_DIR}/chpt_bindings.cpp")
pybind11_add_module(_khuri_iam
"${SOURCE_DIR}/chpt.cpp"
"${SOURCE_DIR}/iam.cpp"
"${BINDING_DIR}/iam_bindings.cpp")
pybind11_add_module(_khuri_mandelstam
"${BINDING_DIR}/mandelstam_bindings.cpp")
pybind11_add_module(_khuri_curved_omnes
"${SOURCE_DIR}/cauchy.cpp"
"${SOURCE_DIR}/curved_omnes.cpp"
"${SOURCE_DIR}/grid.cpp"
"${SOURCE_DIR}/gsl_interface.cpp"
"${SOURCE_DIR}/piecewise.cpp"
"${BINDING_DIR}/curved_omnes_bindings.cpp")
target_link_libraries(_khuri_curved_omnes PRIVATE gsl gslcblas)