]> Creatis software - bbtk.git/blob - kernel/cmake/BBTKDefineOptions.cmake
bbtk now depends on crea !
[bbtk.git] / kernel / cmake / BBTKDefineOptions.cmake
1 #-----------------------------------------------------------------------------
2 # messages compilation options 
3 OPTION ( BBTK_COMPILE_MESSAGES         "Compile bbtk messages ?"         ON)
4 OPTION ( BBTK_COMPILE_DEBUG_MESSAGES   "Compile bbtk debug messages ?"   ON)
5 OPTION ( BBTK_COMPILE_WARNING_MESSAGES "Compile bbtk warning messages ?" ON)
6 OPTION ( BBTK_COMPILE_ERROR_MESSAGES   "Compile bbtk error messages ?"   ON)
7 #-----------------------------------------------------------------------------
8 OPTION(BUILD_APPLICATIONS "Build Applications (bbi, bbfy, ...)" ON)
9 OPTION(BUILD_BBS_APPLI_BINARIES "Build binaries for bbs applications of all packages" OFF)
10 ##EED   SWITCH_ON_IF_BUILD_ALL(BUILD_BBS_APPLI_BINARIES)
11 #-----------------------------------------------------------------------------
12 OPTION(BUILD_BBTK_DOC "Build documentation for bbtk." OFF)
13 SWITCH_ON_IF_BUILD_ALL(BUILD_BBTK_DOC)
14 #-----------------------------------------------------------------------------
15 IF(BUILD_BBTK_DOC)
16   
17   OPTION(BUILD_BBTK_DOC_PACKAGE 
18     "Build bbtk packages documentation (bbi+dot)."       ON)
19   OPTION(BUILD_BBTK_DOC_DOXYGEN 
20     "Build doxygen documentation (doxygen)."             ON)
21   OPTION(BUILD_BBTK_DOC_GUIDES_PDF 
22     "Build bbtk Guides', PDF format (latex)."    ON)
23   OPTION(BUILD_BBTK_DOC_GUIDES_HTML 
24     "Build bbtk Guides', HTML format (latex+tth)."       ON)
25
26 ELSE(BUILD_BBTK_DOC)
27   
28   IF(BUILD_BBTK_DOC_PACKAGE)
29     SET(BUILD_BBTK_DOC_PACKAGE OFF CACHE BOOL 
30       "Build bbtk packages documentation (bbdoc+dot)."  FORCE)
31   ENDIF(BUILD_BBTK_DOC_PACKAGE)
32   IF(BUILD_BBTK_DOC_DOXYGEN)
33     SET(BUILD_BBTK_DOC_DOXYGEN OFF CACHE BOOL 
34       "Build doxygen documentation. (doxygen)"          FORCE)
35   ENDIF(BUILD_BBTK_DOC_DOXYGEN)
36   
37   IF(BUILD_BBTK_DOC_GUIDES_PDF)
38     SET(BUILD_BBTK_DOC_GUIDES_PDF OFF CACHE BOOL 
39       "Build bbtk Guides', PDF format (latex)." FORCE)
40   ENDIF(BUILD_BBTK_DOC_GUIDES_PDF)
41   
42   IF(BUILD_BBTK_DOC_GUIDES_HTML)
43     SET(BUILD_BBTK_DOC_GUIDES_HTML OFF CACHE BOOL 
44       "Build bbtk Guides', HTML format (latex tth)."            FORCE)
45   ENDIF(BUILD_BBTK_DOC_GUIDES_HTML)
46 #  IF(BUILD_BBTK_DOC_SCRIPTS)
47 #    SET(BUILD_BBTK_DOC_SCRIPTS_HTML OFF CACHE BOOL 
48 #      "Build bbtk scripts documentation (bbi+dot)."            FORCE)
49 #  ENDIF(BUILD_BBTK_DOC_SCRIPTS)
50   
51 ENDIF(BUILD_BBTK_DOC)
52 #-----------------------------------------------------------------------------
53
54 #-----------------------------------------------------------------------------
55 # BOOST C++
56 SET(BBTK_SHIPPED_BOOST boost_1_35_0 CACHE INTERNAL "Shipped boost dir" FORCE)
57 OPTION(BBTK_USE_SHIPPED_BOOST 
58   "Use the shipped boost C++ library (${BBTK_SHIPPED_BOOST})" ON)
59 #-----------------------------------------------------------------------------
60
61 #-----------------------------------------------------------------------------
62 OPTION(BBTK_USE_WXWIDGETS "Build bbtk with wxWidgets ?" OFF)
63 IF(BBTK_USE_WXWIDGETS)
64   SET(USE_WXWIDGETS ON CACHE BOOL "Use WxWidgets" FORCE)
65 ELSE(BBTK_USE_WXWIDGETS)
66   SET(USE_WXWIDGETS OFF CACHE BOOL "Use WxWidgets" FORCE)
67 ENDIF(BBTK_USE_WXWIDGETS)
68 #-----------------------------------------------------------------------------
69
70 #-----------------------------------------------------------------------------
71 OPTION(BBTK_USE_KWWIDGETS "Build bbtk with KWWidgets ?" OFF)
72 IF (BBTK_USE_KWWIDGETS)
73   SET(USE_KW ON CACHE BOOL "Use KWWidgets" FORCE)
74 ELSE (BBTK_USE_KWWIDGETS)
75   SET(USE_KW OFF CACHE BOOL "Use KWWidgets" FORCE)
76 ENDIF (BBTK_USE_KWWIDGETS)
77 #-----------------------------------------------------------------------------
78
79 #SWITCH_ON_IF_BUILD_ALL(BUILD_KWWIDGETS)
80
81 #-----------------------------------------------------------------------------
82 IF(USE_ITK)
83   IF(ITK_FOUND)
84     MESSAGE(STATUS "")
85     MESSAGE(STATUS "=======================================")
86     MESSAGE(STATUS "Resolving ITK images options...")
87     # images compilation option 
88     OPTION ( itk_IMAGE_DIM_2 "itk : Compile 2D images" ON)
89     OPTION ( itk_IMAGE_DIM_3 "itk : Compile 3D images" ON)
90     OPTION ( itk_IMAGE_DIM_4 "itk : Compile 4D images" ON)
91     OPTION ( itk_IMAGE_TYPE_CHAR "itk : Compile char images" ON)
92     OPTION ( itk_IMAGE_TYPE_UCHAR "itk : Compile unsigned char images" ON)
93     OPTION ( itk_IMAGE_TYPE_SHORT "itk : Compile short images" ON)
94     OPTION ( itk_IMAGE_TYPE_USHORT "itk : Compile unsigned short images" ON)
95     OPTION ( itk_IMAGE_TYPE_INT "itk : Compile int images" ON)
96     OPTION ( itk_IMAGE_TYPE_UINT "itk : Compile unsigned int images" ON)
97     OPTION ( itk_IMAGE_TYPE_FLOAT "itk : Compile float images" ON)
98     OPTION ( itk_IMAGE_TYPE_DOUBLE "itk : Compile double images" ON)
99     
100     IF ( itk_IMAGE_DIM_2 ) 
101       CREA_DEFINE( BBTK_ITK_IMAGE_DIM_2 )
102     ENDIF ( itk_IMAGE_DIM_2 )
103     
104     IF ( itk_IMAGE_DIM_3 ) 
105       CREA_DEFINE( BBTK_ITK_IMAGE_DIM_3 )
106     ENDIF ( itk_IMAGE_DIM_3 )
107     
108     IF ( itk_IMAGE_DIM_4 ) 
109       CREA_DEFINE( BBTK_ITK_IMAGE_DIM_4 )
110     ENDIF ( itk_IMAGE_DIM_4 )
111
112     IF ( itk_IMAGE_TYPE_CHAR ) 
113       CREA_DEFINE( BBTK_ITK_IMAGE_TYPE_int8_t )
114     ENDIF ( itk_IMAGE_TYPE_CHAR )
115
116     IF ( itk_IMAGE_TYPE_UCHAR ) 
117       CREA_DEFINE( BBTK_ITK_IMAGE_TYPE_uint8_t )
118     ENDIF ( itk_IMAGE_TYPE_UCHAR )
119     
120     IF ( itk_IMAGE_TYPE_SHORT ) 
121       CREA_DEFINE( BBTK_ITK_IMAGE_TYPE_int16_t )
122     ENDIF ( itk_IMAGE_TYPE_SHORT )
123     
124     IF ( itk_IMAGE_TYPE_USHORT ) 
125       CREA_DEFINE( BBTK_ITK_IMAGE_TYPE_uint16_t )
126     ENDIF ( itk_IMAGE_TYPE_USHORT )
127     
128     IF ( itk_IMAGE_TYPE_INT ) 
129       CREA_DEFINE( BBTK_ITK_IMAGE_TYPE_int32_t )
130     ENDIF ( itk_IMAGE_TYPE_INT )
131     
132     IF ( itk_IMAGE_TYPE_UINT ) 
133       CREA_DEFINE( BBTK_ITK_IMAGE_TYPE_uint32_t )
134     ENDIF ( itk_IMAGE_TYPE_UINT )
135     
136     IF ( itk_IMAGE_TYPE_FLOAT ) 
137       CREA_DEFINE( BBTK_ITK_IMAGE_TYPE_float )
138     ENDIF ( itk_IMAGE_TYPE_FLOAT )
139     
140     IF ( itk_IMAGE_TYPE_DOUBLE ) 
141       CREA_DEFINE( BBTK_ITK_IMAGE_TYPE_double )
142     ENDIF ( itk_IMAGE_TYPE_DOUBLE )
143     MESSAGE(STATUS "=======================================")
144
145   ENDIF(ITK_FOUND)
146 ENDIF(USE_ITK)
147 #-----------------------------------------------------------------------------
148