-
Notifications
You must be signed in to change notification settings - Fork 15
/
Copy pathCMakeLists.txt
58 lines (42 loc) · 1.99 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
project(camera_calibration)
cmake_minimum_required(VERSION 2.8)
set(OUT_EXEC "camera_calibration")
file(GLOB SRC_FILES "./src/*.cpp" "./src/*.c")
set(WITH_GUI TRUE CACHE BOOL "Is the LibCV compiled with gui?")
set(DOUBLE_REAL TRUE CACHE BOOL "Should the real type be double(true) or float(false). - should be same as LibCV")
if (WIN32)
set(CMAKE_CXX_FLAGS "/fopenmp /W3")
set(CMAKE_CXX_FLAGS_DEBUG "/DEBUG")
set(CMAKE_CXX_FLAGS_RELEASE "/Ox /DNDEBUG")
set(LIBCV_INCLUDE_DIR "/usr/local/include/cv" CACHE PATH "Path to the libcv include directory")
set(LIBCV_LIB "/usr/local/lib" CACHE FILEPATH "Path to the libcv lib file.")
else(WIN32)
set(CMAKE_CXX_FLAGS "-std=c++11 -fopenmp -Wall")
set(CMAKE_CXX_FLAGS_DEBUG "-O0 -g")
set(CMAKE_CXX_FLAGS_RELEASE "-O3 -DNDEBUG")
set(LIBCV_INCLUDE_DIR "cv/include/" CACHE PATH "Path to the libcv include directory")
set(LIBCV_LIB "cv.lib" CACHE FILEPATH "Path to the libcv lib file.")
endif(WIN32)
if (CMAKE_BUILD_TYPE MATCHES Debug OR CMAKE_BUILD_TYPE MATCHES DEBUG)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_DEBUG}")
elseif(CMAKE_BUILD_TYPE MATCHES Release OR CMAKE_BUILD_TYPE MATCHES RELEASE)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_RELEASE}")
endif(CMAKE_BUILD_TYPE MATCHES Debug OR CMAKE_BUILD_TYPE MATCHES DEBUG)
if (NOT ${WITH_GUI})
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DCV_IGNORE_GUI")
else(NOT ${WITH_GUI})
message("-- Compiling LibCV with GUI")
endif(NOT ${WITH_GUI})
if(${DOUBLE_REAL})
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DCV_REAL_TYPE_DOUBLE")
message("-- LibCV real type set to double.")
endif(${DOUBLE_REAL})
if(NOT (IS_DIRECTORY ${LIBCV_INCLUDE_DIR}))
message( FATAL_ERROR "LibCV include directory is not valid." )
endif(NOT (IS_DIRECTORY ${LIBCV_INCLUDE_DIR}))
if(NOT (EXISTS ${LIBCV_LIB}))
message( FATAL_ERROR "LibCV lib file is not valid." )
endif(NOT (EXISTS ${LIBCV_LIB}))
include_directories(${LIBCV_INCLUDE_DIR})
add_executable(${OUT_EXEC} ${SRC_FILES})
target_link_libraries(${OUT_EXEC} ${LIBCV_LIB})