3 #-----------------------------------------------------------------------------
4 #OPTION(USE_VTK "Build VTK-based black boxes" OFF)
10 MESSAGE ( STATUS "Looking for VTK... found")
11 MESSAGE ( STATUS "* Dir = ${VTK_DIR}")
12 MESSAGE ( STATUS "* Version = ${VTK_MAJOR_VERSION}.${VTK_MINOR_VERSION}.${VTK_BUILD_VERSION}")
13 INCLUDE(${VTK_USE_FILE})
15 SET(BBTK_VTK_LIBRARIES
17 vtkImaging vtkGraphics vtkRendering vtkFiltering vtkCommon vtkWidgets
19 # LG : removed vtkIO because conflict with itktiff lib in ITKIO
21 MARK_AS_ADVANCED(VTK_DIR)
23 message(FATAL_ERROR "VTK_DIR not found")
26 #-----------------------------------------------------------------------------
29 #-----------------------------------------------------------------------------
30 #OPTION(USE_ITK "Build ITK-based black boxes" OFF)
36 MESSAGE ( STATUS "Looking for ITK... found")
37 MESSAGE ( STATUS "* Dir = ${ITK_DIR}")
38 MESSAGE ( STATUS "* Version = ${ITK_VERSION_MAJOR}.${ITK_VERSION_MINOR}.${ITK_VERSION_PATCH}")
39 INCLUDE(${ITK_USE_FILE})
41 SET(BBTK_ITK_LIBRARIES
42 ITKCommon ITKIO ITKBasicFilters ITKAlgorithms
44 MARK_AS_ADVANCED(ITK_DIR)
45 # images compilation option
46 OPTION ( itk_IMAGE_DIM_2 "itk : Compile 2D images" ON)
47 OPTION ( itk_IMAGE_DIM_3 "itk : Compile 3D images" ON)
48 OPTION ( itk_IMAGE_DIM_4 "itk : Compile 4D images" ON)
49 OPTION ( itk_IMAGE_TYPE_CHAR "itk : Compile char images" ON)
50 OPTION ( itk_IMAGE_TYPE_UCHAR "itk : Compile unsigned char images" ON)
51 OPTION ( itk_IMAGE_TYPE_SHORT "itk : Compile short images" ON)
52 OPTION ( itk_IMAGE_TYPE_USHORT "itk : Compile unsigned short images" ON)
53 OPTION ( itk_IMAGE_TYPE_INT "itk : Compile int images" ON)
54 OPTION ( itk_IMAGE_TYPE_UINT "itk : Compile unsigned int images" ON)
55 OPTION ( itk_IMAGE_TYPE_FLOAT "itk : Compile float images" ON)
56 OPTION ( itk_IMAGE_TYPE_DOUBLE "itk : Compile double images" ON)
58 IF ( itk_IMAGE_DIM_2 )
59 ADD_DEF( BBTK_ITK_IMAGE_DIM_2 )
60 ENDIF ( itk_IMAGE_DIM_2 )
62 IF ( itk_IMAGE_DIM_3 )
63 ADD_DEF( BBTK_ITK_IMAGE_DIM_3 )
64 ENDIF ( itk_IMAGE_DIM_3 )
66 IF ( itk_IMAGE_DIM_4 )
67 ADD_DEF( BBTK_ITK_IMAGE_DIM_4 )
68 ENDIF ( itk_IMAGE_DIM_4 )
70 IF ( itk_IMAGE_TYPE_CHAR )
71 ADD_DEF( BBTK_ITK_IMAGE_TYPE_int8_t )
72 ENDIF ( itk_IMAGE_TYPE_CHAR )
74 IF ( itk_IMAGE_TYPE_UCHAR )
75 ADD_DEF( BBTK_ITK_IMAGE_TYPE_uint8_t )
76 ENDIF ( itk_IMAGE_TYPE_UCHAR )
78 IF ( itk_IMAGE_TYPE_SHORT )
79 ADD_DEF( BBTK_ITK_IMAGE_TYPE_int16_t )
80 ENDIF ( itk_IMAGE_TYPE_SHORT )
82 IF ( itk_IMAGE_TYPE_USHORT )
83 ADD_DEF( BBTK_ITK_IMAGE_TYPE_uint16_t )
84 ENDIF ( itk_IMAGE_TYPE_USHORT )
86 IF ( itk_IMAGE_TYPE_INT )
87 ADD_DEF( BBTK_ITK_IMAGE_TYPE_int32_t )
88 ENDIF ( itk_IMAGE_TYPE_INT )
90 IF ( itk_IMAGE_TYPE_UINT )
91 ADD_DEF( BBTK_ITK_IMAGE_TYPE_uint32_t )
92 ENDIF ( itk_IMAGE_TYPE_UINT )
94 IF ( itk_IMAGE_TYPE_FLOAT )
95 ADD_DEF( BBTK_ITK_IMAGE_TYPE_float )
96 ENDIF ( itk_IMAGE_TYPE_FLOAT )
98 IF ( itk_IMAGE_TYPE_DOUBLE )
99 ADD_DEF( BBTK_ITK_IMAGE_TYPE_double )
100 ENDIF ( itk_IMAGE_TYPE_DOUBLE )
102 message(FATAL_ERROR "ITK_DIR not found")
105 #-----------------------------------------------------------------------------
108 #-----------------------------------------------------------------------------
109 #OPTION(USE_GDCM "Build GDCM-based black boxes" OFF)
115 INCLUDE(${GDCM_USE_FILE})
116 ADD_DEF( _USE_GDCM_ )
118 MESSAGE ( STATUS "Looking for GDCM... found")
119 MESSAGE ( STATUS "* Dir = ${GDCM_DIR}")
120 MESSAGE ( STATUS "* Version = ${GDCM_MAJOR_VERSION}.${GDCM_MINOR_VERSION}.${GDCM_BUILD_VERSION}")
121 MESSAGE ( STATUS "* Namespace = ${GDCM_NAME_SPACE}")
123 # Test that GDCM_NAME_SPACE is **NOT** "gdcm" or will conflict with
124 # embedded gdcm in ITK and will result in hard seg faults !
125 IF (GDCM_NAME_SPACE STREQUAL "gdcm")
126 MESSAGE(FATAL_ERROR "GDCM_NAME_SPACE value is 'gdcm' which conflicts with ITK embededd gdcm namespace : rebuild gdcm with another GDCM_NAME_SPACE value")
127 ENDIF (GDCM_NAME_SPACE STREQUAL "gdcm")
129 MARK_AS_ADVANCED(GDCM_DIR)
131 SET(BBTK_GDCM_LIBRARIES
132 # TO DO : USE GDCM LINK LIBRARIES !!!
133 # IF gdcm WAS NOT COMPILE WITH VTK THE ABOVE FORCED LINK WITH vtkgdcm DOES NOT WORK
135 #gdcm gdcmjpeg8 gdcmjpeg12 gdcmjpeg16
140 # SET(BBTK_GDCM_LIBRARIES
141 # ${BBTK_GDCM_LIBRARIES}
149 #-----------------------------------------------------------------------------
151 #-----------------------------------------------------------------------------
153 INCLUDE(${BBTK_CMAKE_DIR}/BBTKWxWidgets.cmake)
154 BBTK_FIND_WXWIDGETS()
157 #-----------------------------------------------------------------------------
161 #-----------------------------------------------------------------------------
163 FIND_PACKAGE(Doxygen REQUIRED)
164 # MESSAGE(STATUS "Looking for doxygen... - found ${DOXYGEN}")
168 MESSAGE(FATAL_ERROR "Doxygen not found. Required to build the doxygen documentation")
171 #-----------------------------------------------------------------------------
174 #-----------------------------------------------------------------------------
176 FIND_PACKAGE(LATEX REQUIRED)
177 MESSAGE(STATUS "Looking for latex... - found ${LATEX_COMPILER}")
179 #-----------------------------------------------------------------------------
181 #-----------------------------------------------------------------------------
183 FIND_FILE(LATEX_tth_CONVERTER NAME tth tth.exe PATHS . $ENV{CREATIS}/tth_exe/ ~/Creatis/tth ~/Creatis/tth_linux)
184 IF (NOT LATEX_tth_CONVERTER)
185 MESSAGE(FATAL_ERROR "TTH not found (LATEX_tth_CONVERTER). Required to build the HTML documentation from tex source")
186 ELSE (NOT LATEX_tth_CONVERTER)
187 MESSAGE(STATUS "Looking for tth... - found ${LATEX_tth_CONVERTER}")
188 ENDIF(NOT LATEX_tth_CONVERTER)
189 MARK_AS_ADVANCED(LATEX_tth_CONVERTER)
191 #-----------------------------------------------------------------------------
193 #-----------------------------------------------------------------------------
195 IF(BBTK_USE_SHIPPED_BOOST)
196 MESSAGE(STATUS "bbtk uses shipped boost C++ library (${BBTK_SHIPPED_BOOST})")
198 ${PROJECT_SOURCE_DIR}/kernel/src/ThirdParty/${BBTK_SHIPPED_BOOST})
200 # TO DO : CLEANLY BLOCK auto_link.hpp INCLUSION
201 #ADD_DEF(BOOST_SIGNALS_NO_LIB)
202 SET(BBTK_BOOST_LIBRARIES
206 ELSE(BBTK_USE_SHIPPED_BOOST)
207 FIND_PACKAGE(Boost REQUIRED)
208 MARK_AS_ADVANCED(Boost_INCLUDE_DIR)
210 MESSAGE(STATUS "Looking for boost C++ library... - found in ${Boost_INCLUDE_DIR}")
211 INCLUDE_DIRECTORIES(${Boost_INCLUDE_DIRS})
212 LINK_DIRECTORIES( ${Boost_LIBRARY_DIRS} )
213 SET(BBTK_BOOST_LIBRARIES
217 MESSAGE(FATAL_ERRO "boost C++ library not found - either set Boost_INCLUDE_DIR or set BBTK_USE_SHIPPED_BOOST to ON to use shipped ${BBTK_SHIPPED_BOOST}")
219 ENDIF(BBTK_USE_SHIPPED_BOOST)
221 #-----------------------------------------------------------------------------