]> Creatis software - bbtk.git/blob - kernel/cmake/BBTKFindLibraries.cmake
5a86dd340c49606eb4efe4fe44b57a751b940d38
[bbtk.git] / kernel / cmake / BBTKFindLibraries.cmake
1 #-----------------------------------------------------------------------------
2 #OPTION(USE_VTK "Build VTK-based black boxes" OFF)
3 IF(USE_VTK)
4   # Search VTK
5   FIND_PACKAGE(VTK)
6   # If vtk found
7   IF(VTK_FOUND)
8     MESSAGE ( STATUS "VTK FOUND - VERSION = ${VTK_MAJOR_VERSION}.${VTK_MINOR_VERSION}.${VTK_BUILD_VERSION}")
9     INCLUDE(${VTK_USE_FILE})
10     ADD_DEF( _USE_VTK_ )
11     SET(BBTK_VTK_LIBRARIES
12       #     vtkCommon 
13       vtkImaging  vtkGraphics vtkRendering vtkFiltering vtkCommon vtkWidgets
14       # LG : removed vtkIO because conflict with itktiff lib in ITKIO 
15       ) 
16     MARK_AS_ADVANCED(VTK_DIR)
17   ENDIF(VTK_FOUND)
18 ENDIF(USE_VTK)
19 #-----------------------------------------------------------------------------
20
21
22 #-----------------------------------------------------------------------------
23 #OPTION(USE_ITK "Build ITK-based black boxes" OFF)
24 IF(USE_ITK)
25   # Search ITK
26   FIND_PACKAGE(ITK)
27   # If itk found
28   IF(ITK_FOUND)
29      MESSAGE ( STATUS "ITK FOUND - VERSION = ${ITK_VERSION_MAJOR}.${ITK_VERSION_MINOR}.${ITK_VERSION_PATCH}")
30     INCLUDE(${ITK_USE_FILE})
31     ADD_DEF( _USE_ITK_ )
32     SET(BBTK_ITK_LIBRARIES
33       ITKCommon ITKIO ITKBasicFilters ITKAlgorithms
34       )  
35     MARK_AS_ADVANCED(ITK_DIR)
36    # images compilation option 
37     OPTION ( itk_IMAGE_DIM_2 "itk : Compile 2D images" ON)
38     OPTION ( itk_IMAGE_DIM_3 "itk : Compile 3D images" ON)
39     OPTION ( itk_IMAGE_DIM_4 "itk : Compile 4D images" ON)
40     OPTION ( itk_IMAGE_TYPE_CHAR "itk : Compile char images" ON)
41     OPTION ( itk_IMAGE_TYPE_UCHAR "itk : Compile unsigned char images" ON)
42     OPTION ( itk_IMAGE_TYPE_SHORT "itk : Compile short images" ON)
43     OPTION ( itk_IMAGE_TYPE_USHORT "itk : Compile unsigned short images" ON)
44     OPTION ( itk_IMAGE_TYPE_INT "itk : Compile int images" ON)
45     OPTION ( itk_IMAGE_TYPE_UINT "itk : Compile unsigned int images" ON)
46     OPTION ( itk_IMAGE_TYPE_FLOAT "itk : Compile float images" ON)
47     OPTION ( itk_IMAGE_TYPE_DOUBLE "itk : Compile double images" ON)
48     
49     IF ( itk_IMAGE_DIM_2 ) 
50       ADD_DEF( BBTK_ITK_IMAGE_DIM_2 )
51     ENDIF ( itk_IMAGE_DIM_2 )
52     
53     IF ( itk_IMAGE_DIM_3 ) 
54       ADD_DEF( BBTK_ITK_IMAGE_DIM_3 )
55     ENDIF ( itk_IMAGE_DIM_3 )
56     
57     IF ( itk_IMAGE_DIM_4 ) 
58       ADD_DEF( BBTK_ITK_IMAGE_DIM_4 )
59     ENDIF ( itk_IMAGE_DIM_4 )
60
61     IF ( itk_IMAGE_TYPE_CHAR ) 
62       ADD_DEF( BBTK_ITK_IMAGE_TYPE_int8_t )
63     ENDIF ( itk_IMAGE_TYPE_CHAR )
64
65     IF ( itk_IMAGE_TYPE_UCHAR ) 
66       ADD_DEF( BBTK_ITK_IMAGE_TYPE_uint8_t )
67     ENDIF ( itk_IMAGE_TYPE_UCHAR )
68     
69     IF ( itk_IMAGE_TYPE_SHORT ) 
70       ADD_DEF( BBTK_ITK_IMAGE_TYPE_int16_t )
71     ENDIF ( itk_IMAGE_TYPE_SHORT )
72     
73     IF ( itk_IMAGE_TYPE_USHORT ) 
74       ADD_DEF( BBTK_ITK_IMAGE_TYPE_uint16_t )
75     ENDIF ( itk_IMAGE_TYPE_USHORT )
76     
77     IF ( itk_IMAGE_TYPE_INT ) 
78       ADD_DEF( BBTK_ITK_IMAGE_TYPE_int32_t )
79     ENDIF ( itk_IMAGE_TYPE_INT )
80     
81     IF ( itk_IMAGE_TYPE_UINT ) 
82       ADD_DEF( BBTK_ITK_IMAGE_TYPE_uint32_t )
83     ENDIF ( itk_IMAGE_TYPE_UINT )
84     
85     IF ( itk_IMAGE_TYPE_FLOAT ) 
86       ADD_DEF( BBTK_ITK_IMAGE_TYPE_float )
87     ENDIF ( itk_IMAGE_TYPE_FLOAT )
88     
89     IF ( itk_IMAGE_TYPE_DOUBLE ) 
90       ADD_DEF( BBTK_ITK_IMAGE_TYPE_double )
91     ENDIF ( itk_IMAGE_TYPE_DOUBLE )
92   ENDIF(ITK_FOUND)
93 ENDIF(USE_ITK)
94 #-----------------------------------------------------------------------------
95
96 #-----------------------------------------------------------------------------
97 #OPTION(USE_GDCM "Build GDCM-based black boxes" OFF)
98 IF(USE_GDCM)
99   # Search GDCM
100   FIND_PACKAGE(GDCM)
101   # If gdcm found
102   IF(GDCM_FOUND)
103     INCLUDE(${GDCM_USE_FILE})
104     ADD_DEF( _USE_GDCM_ )
105     
106     SET(BBTK_GDCM_LIBRARIES
107 # TO DO : USE GDCM LINK LIBRARIES !!!
108       libgdcm libgdcmjpeg8 libgdcmjpeg12libgdcmjpeg16
109       )
110   ENDIF(GDCM_FOUND)
111 ENDIF(USE_GDCM)
112 #-----------------------------------------------------------------------------
113
114 #-----------------------------------------------------------------------------
115 IF(USE_WXWIDGETS)
116   INCLUDE(${BBTK_CMAKE_DIR}/BBTKWxWidgets.cmake)
117   BBTK_FIND_WXWIDGETS()
118   BBTK_USE_WXWIDGETS()
119 ENDIF(USE_WXWIDGETS)
120 #-----------------------------------------------------------------------------
121
122
123
124 #-----------------------------------------------------------------------------
125 IF(USE_DOXYGEN) 
126   FIND_PACKAGE(Doxygen REQUIRED)
127 #  MESSAGE(STATUS "Looking for doxygen... - found ${DOXYGEN}")
128   #  IF(DOXYGEN)
129 #    
130 #  ELSE(DOXYGEN)
131 #    MESSAGE(FATAL_ERROR "Doxygen not found. Required to build the doxygen documentation")
132 #  ENDIF(DOXYGEN)
133 ENDIF(USE_DOXYGEN)
134 #-----------------------------------------------------------------------------
135
136
137 #-----------------------------------------------------------------------------
138 IF(USE_LATEX) 
139   FIND_PACKAGE(LATEX REQUIRED)
140   MESSAGE(STATUS "Looking for latex... - found ${LATEX_COMPILER}")
141 ENDIF(USE_LATEX) 
142 #-----------------------------------------------------------------------------
143
144 #-----------------------------------------------------------------------------
145 IF(USE_TTH) 
146   FIND_FILE(LATEX_tth_CONVERTER NAME tth tth.exe PATHS . c:/Creatis/tth_exe/ ~/Creatis/tth ~/Creatis/tth_linux)
147   IF (NOT LATEX_tth_CONVERTER)
148     MESSAGE(FATAL_ERROR "TTH not found (LATEX_tth_CONVERTER). Required to build the HTML documentation from tex source")
149   ELSE (NOT LATEX_tth_CONVERTER)
150     MESSAGE(STATUS "Looking for tth... - found ${LATEX_tth_CONVERTER}")
151   ENDIF(NOT LATEX_tth_CONVERTER)
152   MARK_AS_ADVANCED(LATEX_tth_CONVERTER)
153 ENDIF(USE_TTH)
154 #-----------------------------------------------------------------------------