CMakeLists.txt 1.83 KB
Newer Older
promayon's avatar
promayon committed
1
#--------------------------------------------
2
#
promayon's avatar
promayon committed
3
#         CamiTK Open Source CEP Set
4
#
promayon's avatar
promayon committed
5
#--------------------------------------------
6
cmake_minimum_required(VERSION 3.0)
7

8
9
project(camitkopensource)

10
11
12
13
# Allow testing of the whole camitk-opensource project
include(CTest)
enable_testing()

14
set(CAMITK_PROJECT_NAME "CamiTK")
15
16
# The current version of CamiTK is defined in a separate file to avoid conflict/problem when merging
include(CamiTKVersion.cmake)
17
string(TOLOWER "${CAMITK_PROJECT_NAME}-${CAMITK_VERSION_MAJOR}.${CAMITK_VERSION_MINOR}" CAMITK_SHORT_VERSION_STRING)
18

promayon's avatar
promayon committed
19
20
# Specific to SDK: this is the SDK build
set(CAMITK_SDK_BUILD TRUE)
21

promayon's avatar
promayon committed
22
23
#-- This is a CEP set...
set(CAMITK_EXTENSION_PROJECT_SET TRUE CACHE BOOL "Is this a CamiTK Extension Project Set?")
24
set(CAMITK_EXTENSION_PROJECT_SET_NAME "camitk-opensource" CACHE STRING "CEP Set Name")
25

26
27
# Configure CamiTK Opensource packaging.
# Must be done before parsing extensions CMakeLists.txt files.
saubatn's avatar
saubatn committed
28
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/sdk/cmake/modules/macros)
lealv's avatar
lealv committed
29
set(CAMITK_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR})
30
include(camitk/packaging/CamiTKOpenSourcePackaging)
saubatn's avatar
saubatn committed
31
32
camitk_opensource_packaging()

saubatn's avatar
saubatn committed
33
# CamiTK 4.0 is C++11 compliant
34
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
35

36
37
# Specific to SDK: first compile the SDK (it looks like a CEP but is sooooo special...)
add_subdirectory(sdk)
38

39
# ...composed by the following CamiTK Extension Projects (optional)
promayon's avatar
promayon committed
40
add_subdirectory(imaging)
41
42
add_subdirectory(modeling)

43
44
45
# ... and tutorials that helps understand CamiTK (optional)
add_subdirectory(tutorials)

saubatn's avatar
saubatn committed
46
47
48
49
50
51
52
53
# Do we wrapp CamiTK for scripting it into Python using Shiboken and PySide ?
set(CAMITK_BINDING_PYTHON CACHE BOOL FALSE)

# Consider python binding only if the CMake variable is checked
if(CAMITK_BINDING_PYTHON)
    add_subdirectory(python_sdk)
endif()

promayon's avatar
promayon committed
54
camitk_sub_project_validate(CEP_SET)