]> Creatis software - creaMaracasVisu.git/blob - CMakeLists.txt
- new version
[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 4)
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 #DFCH
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 INCLUDE_DIRECTORIES( ${PROJECT_SOURCE_DIR}/lib/maracasVisuLib/src/interface/wxWindows/widgets/imageUndoRedo )
80 #DFCH
81 INCLUDE_DIRECTORIES( ${PROJECT_SOURCE_DIR}/lib/maracasVisuLib/src/CutModule/interface )
82 INCLUDE_DIRECTORIES( ${PROJECT_SOURCE_DIR}/lib/maracasVisuLib/src/CutModule/kernel )
83 INCLUDE_DIRECTORIES( ${PROJECT_SOURCE_DIR}/lib/maracasVisuLib/../../../ )
84
85 INCLUDE_DIRECTORIES(
86                      ${PROJECT_BINARY_DIR}/lib/GUI/Qt/Viewers
87                      ${PROJECT_SOURCE_DIR}/lib/GUI/Qt/Viewers
88                      ${PROJECT_SOURCE_DIR}/lib/GUI/Qt/VolumeRenderer
89                      ${PROJECT_SOURCE_DIR}/lib/GUI/Qt/SurfaceRenderer
90
91
92                      ${PROJECT_SOURCE_DIR}/lib/GUI/Wx/VolumeRenderer
93                      ${PROJECT_SOURCE_DIR}/lib/GUI/Wx/SurfaceRenderer
94
95                      ${PROJECT_SOURCE_DIR}/lib/GUI/Base/VolumeRenderer
96                      ${PROJECT_SOURCE_DIR}/lib/GUI/Base/SurfaceRenderer
97
98                      ${PROJECT_SOURCE_DIR}/lib/Kernel/VTKObjects/SurfaceRenderer
99                      ${PROJECT_SOURCE_DIR}/lib/Kernel/VTKObjects/ViewerWidgets
100                      ${PROJECT_SOURCE_DIR}/lib/Kernel/VTKObjects/VolumeRenderer
101                     )
102
103
104 #JCP Ubuntu this file not found glibconfig.h, config of wxgtk goes wrong somewhere
105 INCLUDE_DIRECTORIES(/usr/lib/x86_64-linux-gnu/gtk-2.0/include/)
106 LINK_DIRECTORIES(/usr/lib/x86_64-linux-gnu/)
107 #JCP Ubuntu this file not found glibconfig.h, config of wxgtk goes wrong somewhere
108
109 ADD_SUBDIRECTORY(install)
110 ADD_SUBDIRECTORY(lib)
111 ADD_SUBDIRECTORY(bbtk)
112 ADD_SUBDIRECTORY(appli)
113
114
115 SET(INPUT_DATA_DIR ${PROJECT_SOURCE_DIR}/data)
116 FILE(GLOB CONFIGURE_DATA_FILES *.*)
117 IF(WIN32)
118         SET(OUTPUT_DATA_DIR ${PROJECT_BINARY_DIR}/Debug/data)
119         CREA_CPDIR(${INPUT_DATA_DIR} ${OUTPUT_DATA_DIR})
120         SET(OUTPUT_DATA_DIR ${PROJECT_BINARY_DIR}/Release/data)
121         CREA_CPDIR(${INPUT_DATA_DIR} ${OUTPUT_DATA_DIR})
122         SET(OUTPUT_DATA_DIR ${PROJECT_BINARY_DIR}/RelWithDebInfo/data)
123         CREA_CPDIR(${INPUT_DATA_DIR} ${OUTPUT_DATA_DIR})
124 ELSE(WIN32)
125         SET(OUTPUT_DATA_DIR ${PROJECT_BINARY_DIR}/data)
126         CREA_CPDIR(${INPUT_DATA_DIR} ${OUTPUT_DATA_DIR})
127 ENDIF(WIN32)