]> Creatis software - creaMaracasVisu.git/blob - CMakeLists.txt
DFCH: Changes in CMakeList (CreaImageIO dependences removed)
[creaMaracasVisu.git] / CMakeLists.txt
1 #
2 # Test CMake version
3 #
4 CMAKE_MINIMUM_REQUIRED(VERSION 2.4)
5 #MARK_AS_ADVANCED( FORCE CMAKE_BACKWARDS_COMPATIBILITY )
6
7 # for CMake 2.6 corrected behaviour (see "cmake --help-policy CMP0003")
8 IF(COMMAND cmake_policy AND ${CMAKE_MAJOR_VERSION} EQUAL 2 AND ${CMAKE_MINOR_VERSION} GREATER 4)
9   CMAKE_POLICY(SET CMP0003 NEW)
10   CMAKE_POLICY(SET CMP0005 NEW)
11   CMAKE_POLICY(SET CMP0011 NEW)
12 ENDIF(COMMAND cmake_policy AND ${CMAKE_MAJOR_VERSION} EQUAL 2 AND ${CMAKE_MINOR_VERSION} GREATER 4)
13
14 PROJECT(creaMaracasVisu)
15
16 SET(PROJECT_MAJOR_VERSION 1)
17 SET(PROJECT_MINOR_VERSION 0)
18 SET(PROJECT_BUILD_VERSION 3)
19
20 #==================================
21
22 # JPR 4 mars 2011
23 set (CMAKE_MODULE_PATH ${CMAKE_INSTALL_PREFIX}/share/cmake/Module)
24
25 #==================================
26 SET(CREA_VERBOSE_CMAKE TRUE)
27
28 FIND_PACKAGE(crea REQUIRED)
29 IF (crea_FOUND)
30   INCLUDE(${crea_USE_FILE})
31 ENDIF(crea_FOUND)
32
33
34 CREA_PREVENT_IN_SOURCE_BUILD()
35
36 #SET(USE_GDCM ON)
37 #SET(USE_GDCM_VTK ON)
38 SET(USE_WXWIDGETS ON)
39 SET(USE_VTK ON)
40 SET(USE_BOOST ON)
41
42 OPTION(QT_USE_QTUITOOLS "QT_USE_QTUITOOLS" OFF)
43 IF(QT_USE_QTUITOOLS)
44         SET(USE_QT4 ON)        
45 ELSE(QT_USE_QTUITOOLS)
46         SET(USE_QT4 OFF)
47 ENDIF(QT_USE_QTUITOOLS)
48
49 OPTION (${PROJECT_NAME}_DOC "${PROJECT_NAME}_DOC" OFF)
50
51 CREA_FIND_AND_USE_LIBRARIES()
52
53 SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR})
54 SET(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR})
55 MARK_AS_ADVANCED(
56   CMAKE_BACKWARDS_COMPATIBILITY
57   EXECUTABLE_OUTPUT_PATH 
58   LIBRARY_OUTPUT_PATH
59   )
60
61 SET(CREAMARACASVISU_LIB_PATH ${CMAKE_CREA_LIB_PATH} )
62
63 INCLUDE_DIRECTORIES( ${PROJECT_SOURCE_DIR}/data/Icons )
64 INCLUDE_DIRECTORIES( ${PROJECT_SOURCE_DIR}/lib/maracasVisuLib/include )
65 INCLUDE_DIRECTORIES( ${PROJECT_SOURCE_DIR}/lib/maracasVisuLib/src )
66 INCLUDE_DIRECTORIES( ${PROJECT_SOURCE_DIR}/lib/maracasVisuLib/src/kernel )
67 INCLUDE_DIRECTORIES( ${PROJECT_SOURCE_DIR}/lib/maracasVisuLib/src/interface/wxWindows )
68 INCLUDE_DIRECTORIES( ${PROJECT_SOURCE_DIR}/lib/maracasVisuLib/src/interface/wxWindows/Contour )
69 INCLUDE_DIRECTORIES( ${PROJECT_SOURCE_DIR}/lib/maracasVisuLib/src/interface/wxWindows/widgets )
70 INCLUDE_DIRECTORIES( ${PROJECT_SOURCE_DIR}/lib/maracasVisuLib/src/interface/wxWindows/widgets/pPlotter )
71 INCLUDE_DIRECTORIES( ${PROJECT_SOURCE_DIR}/lib/maracasVisuLib/src/interface/wxWindows/widgets/manualContour )
72 INCLUDE_DIRECTORIES( ${PROJECT_SOURCE_DIR}/lib/maracasVisuLib/src/interface/wxWindows/widgets/manualPaint )
73 INCLUDE_DIRECTORIES( ${PROJECT_SOURCE_DIR}/lib/maracasVisuLib/src/interface/wxWindows/widgets/ThresholdImageView )
74 #DCH
75 INCLUDE_DIRECTORIES( ${PROJECT_SOURCE_DIR}/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model )
76 INCLUDE_DIRECTORIES( ${PROJECT_SOURCE_DIR}/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/view )
77 INCLUDE_DIRECTORIES( ${PROJECT_SOURCE_DIR}/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/controller )
78 INCLUDE_DIRECTORIES( ${PROJECT_SOURCE_DIR}/lib/maracasVisuLib/src/interface/wxWindows/widgets/creaPanelButtonContainer )
79 #DCH
80 INCLUDE_DIRECTORIES( ${PROJECT_SOURCE_DIR}/lib/maracasVisuLib/src/CutModule/interface )
81 INCLUDE_DIRECTORIES( ${PROJECT_SOURCE_DIR}/lib/maracasVisuLib/src/CutModule/kernel )
82 INCLUDE_DIRECTORIES( ${PROJECT_SOURCE_DIR}/lib/maracasVisuLib/../../../ )
83
84 INCLUDE_DIRECTORIES(
85                      ${PROJECT_BINARY_DIR}/lib/GUI/Qt/Viewers
86                      ${PROJECT_SOURCE_DIR}/lib/GUI/Qt/Viewers
87                      ${PROJECT_SOURCE_DIR}/lib/GUI/Qt/VolumeRenderer
88                      ${PROJECT_SOURCE_DIR}/lib/GUI/Qt/SurfaceRenderer
89
90
91                      ${PROJECT_SOURCE_DIR}/lib/GUI/Wx/VolumeRenderer
92                      ${PROJECT_SOURCE_DIR}/lib/GUI/Wx/SurfaceRenderer
93
94                      ${PROJECT_SOURCE_DIR}/lib/GUI/Base/VolumeRenderer
95                      ${PROJECT_SOURCE_DIR}/lib/GUI/Base/SurfaceRenderer
96
97                      ${PROJECT_SOURCE_DIR}/lib/Kernel/VTKObjects/SurfaceRenderer
98                      ${PROJECT_SOURCE_DIR}/lib/Kernel/VTKObjects/ViewerWidgets
99                      ${PROJECT_SOURCE_DIR}/lib/Kernel/VTKObjects/VolumeRenderer
100                     )
101
102
103 #JCP Ubuntu this file not found glibconfig.h, config of wxgtk goes wrong somewhere
104 INCLUDE_DIRECTORIES(/usr/lib/x86_64-linux-gnu/glib-2.0/include/)
105 #JCP Ubuntu this file not found glibconfig.h, config of wxgtk goes wrong somewhere
106
107 ADD_SUBDIRECTORY(install)
108 ADD_SUBDIRECTORY(lib)
109 ADD_SUBDIRECTORY(bbtk)
110 ADD_SUBDIRECTORY(appli)
111
112
113 SET(INPUT_DATA_DIR ${PROJECT_SOURCE_DIR}/data)
114 FILE(GLOB CONFIGURE_DATA_FILES *.*)
115 IF(WIN32)
116         SET(OUTPUT_DATA_DIR ${PROJECT_BINARY_DIR}/Debug/data)
117         CREA_CPDIR(${INPUT_DATA_DIR} ${OUTPUT_DATA_DIR})
118         SET(OUTPUT_DATA_DIR ${PROJECT_BINARY_DIR}/Release/data)
119         CREA_CPDIR(${INPUT_DATA_DIR} ${OUTPUT_DATA_DIR})
120         SET(OUTPUT_DATA_DIR ${PROJECT_BINARY_DIR}/RelWithDebInfo/data)
121         CREA_CPDIR(${INPUT_DATA_DIR} ${OUTPUT_DATA_DIR})
122 ELSE(WIN32)
123         SET(OUTPUT_DATA_DIR ${PROJECT_BINARY_DIR}/data)
124         CREA_CPDIR(${INPUT_DATA_DIR} ${OUTPUT_DATA_DIR})
125 ENDIF(WIN32)