]> Creatis software - bbtk.git/blob - kernel/cmake/BBTKConfigurePackage.cmake
*** empty log message ***
[bbtk.git] / kernel / cmake / BBTKConfigurePackage.cmake
1 #---------------------------------------------------------------------------
2 # If not a core package must include necessary cmake scripts
3 IF(NOT BBTK_CORE_PACKAGE)
4   #
5   INCLUDE(${BBTK_CMAKE_DIR}/BBTKBuildAllOption.cmake)
6   INCLUDE(${BBTK_CMAKE_DIR}/BBTKMacros.cmake)
7   INCLUDE(${BBTK_CMAKE_DIR}/BBTKFindLibraries.cmake)
8   #-------------------------------------------------------------------------
9   # Configure bbtk_config_build.xml.in for bbi to find the bbs
10   INCLUDE(${BBTK_CMAKE_DIR}/BBTKConfigureBbtkConfigXmlForBuildTree.cmake)
11   #------------------------------------------------------------------------- 
12   #
13 ENDIF(NOT BBTK_CORE_PACKAGE)
14 #---------------------------------------------------------------------------
15
16 #-----------------------------------------------------------------------------
17 # DOES THE USER WANT TO BUILD THE PACKAGE ?
18 OPTION(BUILD_BBTK_PACKAGE_${BBTK_PACKAGE_NAME} 
19   "Build the bbtk package ${BBTK_PACKAGE_NAME} ?" OFF)
20 SWITCH_ON_IF_BUILD_ALL(BUILD_BBTK_PACKAGE_${BBTK_PACKAGE_NAME})
21 #-----------------------------------------------------------------------------
22
23 #-----------------------------------------------------------------------------
24 # IF THE USER HAS CHOSEN TO BUILD THE PACKAGE
25 IF(BUILD_BBTK_PACKAGE_${BBTK_PACKAGE_NAME})
26   #---------------------------------------------------------------------------
27
28   #---------------------------------------------------------------------------
29   # Package dependencies
30   IF(${BBTK_PACKAGE_NAME}_USE_VTK)
31     SET(USE_VTK ON CACHE BOOL "Use VTK" FORCE)
32     SET(BBTK_PACKAGE_LIBS
33       ${BBTK_PACKAGE_LIBS}
34       ${BBTK_VTK_LIBRARIES}
35       )
36   ENDIF(${BBTK_PACKAGE_NAME}_USE_VTK)
37   
38   IF(${BBTK_PACKAGE_NAME}_USE_ITK)
39     SET(USE_ITK ON CACHE BOOL "Use ITK" FORCE)
40     SET(BBTK_PACKAGE_LIBS
41       ${BBTK_PACKAGE_LIBS}
42       ${BBTK_ITK_LIBRARIES}
43       )
44   ENDIF(${BBTK_PACKAGE_NAME}_USE_ITK)
45   
46   IF(${BBTK_PACKAGE_NAME}_USE_GDCM)
47     SET(USE_GDCM ON CACHE BOOL "Use GDCM" FORCE)
48     SET(BBTK_PACKAGE_LIBS
49       ${BBTK_PACKAGE_LIBS}
50       ${BBTK_GDCM_LIBRARIES}
51       )
52   ENDIF(${BBTK_PACKAGE_NAME}_USE_GDCM)
53   
54   IF(${BBTK_PACKAGE_NAME}_USE_GSMIS)
55     SET(USE_GSMIS ON CACHE BOOL "Use GSMIS" FORCE)
56     SET(BBTK_PACKAGE_LIBS
57       ${BBTK_PACKAGE_LIBS}
58       ${BBTK_GSMIS_LIBRARIES}
59       )
60   ENDIF(${BBTK_PACKAGE_NAME}_USE_GSMIS)
61   
62   IF(${BBTK_PACKAGE_NAME}_USE_WXWIDGETS)
63     IF(BBTK_CORE_PACKAGE)
64       SET(BBTK_USE_WXWIDGETS ON CACHE BOOL "Use wxWidgets" FORCE)
65       MESSAGE(STATUS "BBTK_USE_WXWIDGETS forced to ON by the compilation of the package ${BBTK_PACKAGE_NAME}")
66       # bbtk already links against wx ...
67       #    SET(BBTK_PACKAGE_LIBS
68       #      ${BBTK_PACKAGE_LIBS}
69       #      ${BBTK_WXWIDGETS_LIBRARIES}
70       #      )
71     ELSE(BBTK_CORE_PACKAGE)
72       # If linking against a non-wx bbtk : problem
73       IF(NOT BBTK_USE_WXWIDGETS)
74         MESSAGE(FATAL_ERROR "The bbtk package ${BBTK_PACKAGE_NAME} needs wxWidgets however the bbtk library which was found on your system was not compiled with wxWidgets : recompile it and rebuild the package.")
75       ELSE(NOT BBTK_USE_WXWIDGETS)
76         SET(USE_WXWIDGETS ON CACHE BOOL "Use wxWidgets" FORCE)
77       ENDIF(NOT BBTK_USE_WXWIDGETS)
78     ENDIF(BBTK_CORE_PACKAGE)
79   ENDIF(${BBTK_PACKAGE_NAME}_USE_WXWIDGETS)
80
81
82   #---------------------------------------------------------------------------
83
84   #----------------------------------------------------------------------------
85   # DEFINES ${PACKAGE_NAME}_AUTHOR
86   # ADD_DEFINITIONS( -D${PACKAGE_NAME}_AUTHOR="${PACKAGE_AUTHOR}")
87   #----------------------------------------------------------------------------
88   #----------------------------------------------------------------------------
89   # DEFINES ${PACKAGE_NAME}_DESCRIPTION
90   # ADD_DEFINITIONS( -D${PACKAGE_NAME}_DESCRIPTION="${PACKAGE_DESCRIPTION}")
91   #----------------------------------------------------------------------------
92   #----------------------------------------------------------------------------
93   # DEFINES ${BBTK_PACKAGE_NAME}_VERSION
94   SET(BBTK_PACKAGE_VERSION 
95     "${BBTK_PACKAGE_MAJOR_VERSION}.${BBTK_PACKAGE_MINOR_VERSION}.${BBTK_PACKAGE_BUILD_VERSION}")
96   #ADD_DEFINITIONS( -D${BBTK_PACKAGE_NAME}_VERSION=${BBTK_PACKAGE_VERSION})
97   #----------------------------------------------------------------------------
98   
99   
100   #---------------------------------------------------------------------------
101   # Recurse into subdirs
102   SUBDIRS(src)
103   SUBDIRS(doc)
104   SUBDIRS(bbs)
105 #---------------------------------------------------------------------------
106
107
108
109 #---------------------------------------------------------------------------
110 ENDIF(BUILD_BBTK_PACKAGE_${BBTK_PACKAGE_NAME})
111 #-----------------------------------------------------------------------------
112 # EOF
113 #-----------------------------------------------------------------------------
114
115
116
117