2 #---------------------------------------------------------------------------
3 SET(${BBTK_PACKAGE_NAME}_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR})
4 #---------------------------------------------------------------------------
7 #---------------------------------------------------------------------------
8 IF(NOT BBTK_CORE_PACKAGE)
9 #-------------------------------------------------------------------------
10 # If not a core package must include necessary cmake scripts
11 INCLUDE(${BBTK_CMAKE_DIR}/BBTKConfigurePackagePaths.cmake)
12 INCLUDE(${BBTK_CMAKE_DIR}/BBTKBuildAllOption.cmake)
13 # INCLUDE(${BBTK_CMAKE_DIR}/BBTKMacros.cmake)
14 INCLUDE(${BBTK_CMAKE_DIR}/BBTKFindLibraries.cmake)
15 #-------------------------------------------------------------------------
16 # Configure bbtk_config_build.xml.in for bbi to find the bbs
17 INCLUDE(${BBTK_CMAKE_DIR}/BBTKConfigureBbtkConfigXmlForBuildTree.cmake)
18 #-------------------------------------------------------------------------
20 # FOR THE MOMENT ONLY ONE BBTK PACKAGE PER PROJECT ALLOWED!!!
22 SET(${BBTK_PACKAGE_NAME}_BINARY_DIR ${PROJECT_BINARY_DIR})
23 # ${CMAKE_CURRENT_BINARY_DIR})
24 #-------------------------------------------------------------------------
25 #---------------------------------------------------------------------------
26 # CREATES THE bbtkPackage TEXT FILE
28 ${BBTK_CMAKE_DIR}/bbtkPackage.in
29 ${${BBTK_PACKAGE_NAME}_BINARY_DIR}/bbtkPackage
33 INSTALL ( FILES ${${BBTK_PACKAGE_NAME}_BINARY_DIR}/bbtkPackage
36 #---------------------------------------------------------------------------
37 ELSE(NOT BBTK_CORE_PACKAGE)
38 SET(${BBTK_PACKAGE_NAME}_BINARY_DIR ${PROJECT_BINARY_DIR})
39 ENDIF(NOT BBTK_CORE_PACKAGE)
40 #---------------------------------------------------------------------------
46 #----------------------------------------------------------------------------
47 # USER DEFINED ADDITIONAL INCLUDE DIRS
48 INCLUDE_DIRECTORIES(${${BBTK_PACKAGE_NAME}_INCLUDE_DIRS})
49 #----------------------------------------------------------------------------
52 #---------------------------------------------------------------------------
53 # Package dependencies
54 SET(${BBTK_PACKAGE_NAME}_DEPS bb${BBTK_PACKAGE_NAME})
55 STRING(REGEX MATCH "${${BBTK_PACKAGE_NAME}_DEPS}"
56 ${BBTK_PACKAGE_NAME}_IN_DEPS
57 "${BBTK_PACKAGES_DEPS}")
58 #---------------------------------------------------------------------------
59 #SET(BBTK_PACKAGES_DEPS "" CACHE INTERNAL "bbtk packages dependencies" FORCE)
63 #----------------------------------------------------------------------------
64 # VARS CONFIGURED IN bbPackage.h AND IN doc/bbdoc/header.html.in
65 SET(BBTK_PACKAGE_AUTHOR "${${BBTK_PACKAGE_NAME}_AUTHOR}")
66 SET(BBTK_PACKAGE_DESCRIPTION "${${BBTK_PACKAGE_NAME}_DESCRIPTION}")
67 SET(BBTK_PACKAGE_MAJOR_VERSION ${${BBTK_PACKAGE_NAME}_MAJOR_VERSION})
68 SET(BBTK_PACKAGE_MINOR_VERSION ${${BBTK_PACKAGE_NAME}_MINOR_VERSION})
69 SET(BBTK_PACKAGE_BUILD_VERSION ${${BBTK_PACKAGE_NAME}_BUILD_VERSION})
70 SET(BBTK_PACKAGE_VERSION
71 "\"${${BBTK_PACKAGE_NAME}_MAJOR_VERSION}.${${BBTK_PACKAGE_NAME}_MINOR_VERSION}.${${BBTK_PACKAGE_NAME}_BUILD_VERSION}\"")
72 #----------------------------------------------------------------------------
75 #---------------------------------------------------------------------------
76 # If package deps not in global deps : add them
77 IF(NOT ${BBTK_PACKAGE_NAME}_IN_DEPS)
78 SET(BBTK_PACKAGES_DEPS "${${BBTK_PACKAGE_NAME}_DEPS};${BBTK_PACKAGES_DEPS}"
79 CACHE INTERNAL "bbtk packages dependencies" FORCE)
80 # MESSAGE(STATUS "Packages=${BBTK_PACKAGES_DEPS}")
81 ENDIF(NOT ${BBTK_PACKAGE_NAME}_IN_DEPS)
82 #---------------------------------------------------------------------------
84 #---------------------------------------------------------------------------
85 # Package dependencies
86 IF(${BBTK_PACKAGE_NAME}_USE_VTK)
87 SET(USE_VTK ON CACHE BOOL "Use VTK" FORCE)
88 SET(${BBTK_PACKAGE_NAME}_LIBS
89 ${${BBTK_PACKAGE_NAME}_LIBS}
92 ENDIF(${BBTK_PACKAGE_NAME}_USE_VTK)
94 IF(${BBTK_PACKAGE_NAME}_USE_ITK)
95 SET(USE_ITK ON CACHE BOOL "Use ITK" FORCE)
96 SET(${BBTK_PACKAGE_NAME}_LIBS
97 ${${BBTK_PACKAGE_NAME}_LIBS}
100 ENDIF(${BBTK_PACKAGE_NAME}_USE_ITK)
102 IF(${BBTK_PACKAGE_NAME}_USE_GDCM)
103 SET(USE_GDCM ON CACHE BOOL "Use GDCM" FORCE)
104 SET(${BBTK_PACKAGE_NAME}_LIBS
105 ${${BBTK_PACKAGE_NAME}_LIBS}
106 ${BBTK_GDCM_LIBRARIES}
108 ENDIF(${BBTK_PACKAGE_NAME}_USE_GDCM)
110 IF(${BBTK_PACKAGE_NAME}_USE_GSMIS)
111 SET(USE_GSMIS ON CACHE BOOL "Use GSMIS" FORCE)
112 SET(${BBTK_PACKAGE_NAME}_LIBS
113 ${${BBTK_PACKAGE_NAME}_LIBS}
114 ${BBTK_GSMIS_LIBRARIES}
116 ENDIF(${BBTK_PACKAGE_NAME}_USE_GSMIS)
118 IF(${BBTK_PACKAGE_NAME}_USE_WXWIDGETS)
119 IF(BBTK_CORE_PACKAGE)
120 SET(BBTK_USE_WXWIDGETS ON CACHE BOOL "Use wxWidgets" FORCE)
121 MESSAGE(STATUS "BBTK_USE_WXWIDGETS forced to ON by the compilation of the package ${BBTK_PACKAGE_NAME}")
122 # bbtk already links against wx ...
124 SET(${BBTK_PACKAGE_NAME}_LIBS
125 ${${BBTK_PACKAGE_NAME}_LIBS}
126 ${BBTK_WXWIDGETS_LIBRARIES}
129 ELSE(BBTK_CORE_PACKAGE)
130 # If linking against a non-wx bbtk : problem
131 IF(NOT BBTK_BUILT_WITH_WX)
132 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.")
133 ELSE(NOT BBTK_BUILT_WITH_WX)
134 SET(USE_WXWIDGETS ON CACHE BOOL "Use wxWidgets" FORCE)
135 # bbtk already links against wx ...
137 SET(${BBTK_PACKAGE_NAME}_LIBS
138 ${${BBTK_PACKAGE_NAME}_LIBS}
139 ${BBTK_WXWIDGETS_LIBRARIES}
142 ENDIF(NOT BBTK_BUILT_WITH_WX)
143 ENDIF(BBTK_CORE_PACKAGE)
144 ENDIF(${BBTK_PACKAGE_NAME}_USE_WXWIDGETS)
147 #---------------------------------------------------------------------------
151 #---------------------------------------------------------------------------
152 # Recurse into subdirs
157 #---------------------------------------------------------------------------
160 #-----------------------------------------------------------------------------
162 #-----------------------------------------------------------------------------