-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCMakeLists.txt
86 lines (68 loc) · 2.09 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
80
81
82
83
84
85
86
cmake_minimum_required(VERSION 3.10)
project(YourProjectName)
# Set the C standard to C11
set(CMAKE_C_STANDARD 11)
# Set the C++ standard to C++11
set(CMAKE_CXX_STANDARD 11)
find_package(OpenMP)
message(STATUS "OpenMP FOUND: " ${OPENMP_FOUND})
if(OPENMP_FOUND)
# nvcc and openmp with CImg aren't working at the moment
# https://github.com/dtschump/CImg/issues/286
add_definitions(-Dcimg_use_openmp=0)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}")
set(CMAKE_EXE_LINKER_FLAGS
"${CMAKE_EXE_LINKER_FLAGS} ${OpenMP_EXE_LINKER_FLAGS}")
endif()
if(WIN32)
set(PLATFORM win64)
else()
set(PLATFORM linux64)
endif(WIN32)
set(PRIISM_LIB_PATH "${CMAKE_SOURCE_DIR}/IVE/${PLATFORM}/LIB")
set(PRIISM_INCLUDE_PATH "${CMAKE_SOURCE_DIR}/IVE/${PLATFORM}/INCLUDE")
include_directories(${PRIISM_INCLUDE_PATH})
link_directories(${PRIISM_LIB_PATH})
message(STATUS "PRIISM_LIB_PATH: ${PRIISM_LIB_PATH}")
find_library(
IMLIB
NAMES imlib libimlib
PATHS ${PRIISM_LIB_PATH} REQUIRED)
find_library(
IVELIB
NAMES ive libive
PATHS ${PRIISM_LIB_PATH} REQUIRED)
include_directories( ${FFTW_INCLUDE_DIRS} )
include_directories( ${FFTW2_INCLUDE_DIRS})
# Create an executable for sirecon
add_executable(sirecon sirecon.c drift_n_phasestep.c small_math_funcs.c helpers.c)
add_executable(radialft radialft.cpp)
target_link_libraries(
sirecon
${FFTW_FLOAT_LIB}
${IMLIB}
${IVELIB}
${LAPACK_LIBRARIES}
${BLAS_LIBRARIES}
${OpenMP_C_FLAGS}
)
find_package(TIFF)
target_link_libraries(
radialft
${TIFF_LIBRARIES}
${FFTW_FLOAT_LIB}
${IMLIB}
${IVELIB}
${LAPACK_LIBRARIES}
${BLAS_LIBRARIES}
${OpenMP_C_FLAGS}
)
# Create an executable for radialft
#add_executable(radialft mainfile.c)
#target_link_libraries(radialft PRIVATE sfftw srfftw ${IWLIBS} -ltiff)
# Create an executable for otf2d
#add_executable(otf2d radialft2d_Hesper.cpp tiffhandle.cpp)
#target_link_libraries(otf2d PRIVATE sfftw srfftw ${IWLIBS} -ltiff)
# Create an executable for wiener2d
#add_executable(wiener2d wiener2d.c)
#target_link_libraries(wiener2d PRIVATE sfftw srfftw ${IWLIBS} -ltiff)