]> Creatis software - bbtk.git/blobdiff - kernel/cmake/BBTKConfigurePackage.cmake
*** empty log message ***
[bbtk.git] / kernel / cmake / BBTKConfigurePackage.cmake
index 7c4ce86e5786b8b3b0345ae7581311d81ffea50b..f73f42e24ffa997b429ec50a8c2bedcaf48f5974 100644 (file)
@@ -1,11 +1,15 @@
 #---------------------------------------------------------------------------
 # If not a core package must include necessary cmake scripts
 IF(NOT BBTK_CORE_PACKAGE)
-## TO DO 
-INCLUDE(${BBTK_CMAKE_DIR}/BBTKBuildAllOption.cmake)
-INCLUDE(${BBTK_CMAKE_DIR}/BBTKMacros.cmake)
-INCLUDE(${BBTK_CMAKE_DIR}/BBTKFindLibraries.cmake)
-# etc.
+  #
+  INCLUDE(${BBTK_CMAKE_DIR}/BBTKBuildAllOption.cmake)
+  INCLUDE(${BBTK_CMAKE_DIR}/BBTKMacros.cmake)
+  INCLUDE(${BBTK_CMAKE_DIR}/BBTKFindLibraries.cmake)
+  #-------------------------------------------------------------------------
+  # Configure bbtk_config_build.xml.in for bbi to find the bbs
+  INCLUDE(${BBTK_CMAKE_DIR}/BBTKConfigureBbtkConfigXmlForBuildTree.cmake)
+  #------------------------------------------------------------------------- 
+  #
 ENDIF(NOT BBTK_CORE_PACKAGE)
 #---------------------------------------------------------------------------
 
@@ -15,12 +19,29 @@ OPTION(BUILD_BBTK_PACKAGE_${BBTK_PACKAGE_NAME}
   "Build the bbtk package ${BBTK_PACKAGE_NAME} ?" OFF)
 SWITCH_ON_IF_BUILD_ALL(BUILD_BBTK_PACKAGE_${BBTK_PACKAGE_NAME})
 #-----------------------------------------------------------------------------
+  
+#-----------------------------------------------------------------------------
+# Package dependencies
+SET(${BBTK_PACKAGE_NAME}_DEPS bb${BBTK_PACKAGE_NAME})
+STRING(REGEX MATCH "${${BBTK_PACKAGE_NAME}_DEPS}" 
+  ${BBTK_PACKAGE_NAME}_IN_DEPS
+  "${BBTK_PACKAGES_DEPS}")
+ENDIF(UNIX)
+#-----------------------------------------------------------------------------
 
 #-----------------------------------------------------------------------------
 # IF THE USER HAS CHOSEN TO BUILD THE PACKAGE
 IF(BUILD_BBTK_PACKAGE_${BBTK_PACKAGE_NAME})
   #---------------------------------------------------------------------------
 
+  #---------------------------------------------------------------------------
+  # If package deps not in global deps : add them
+  IF(NOT ${BBTK_PACKAGE_NAME}_IN_DEPS)
+    SET(BBTK_PACKAGES_DEPS "${${BBTK_PACKAGE_NAME}_DEPS};${BBTK_PACKAGES_DEPS}"
+      CACHE INTERNAL "bbtk packages dependencies" FORCE)
+  ENDIF(NOT ${BBTK_PACKAGE_NAME}_IN_DEPS)
+  #---------------------------------------------------------------------------
+
   #---------------------------------------------------------------------------
   # Package dependencies
   IF(${BBTK_PACKAGE_NAME}_USE_VTK)
@@ -100,7 +121,22 @@ IF(BUILD_BBTK_PACKAGE_${BBTK_PACKAGE_NAME})
   SUBDIRS(bbs)
 #---------------------------------------------------------------------------
 
-
+#---------------------------------------------------------------------------
+ELSE(BUILD_BBTK_PACKAGE_${BBTK_PACKAGE_NAME})
+  #-------------------------------------------------------------------------
+  
+  #-----------------------------------------------------------------------
+  # If package deps in global deps : remove them
+  IF(${BBTK_PACKAGE_NAME}_IN_DEPS)
+    STRING(REPLACE "${${BBTK_PACKAGE_NAME}_DEPS};"
+      "" TEMP
+      ${BBTK_PACKAGES_DEPS})
+    
+    SET(BBTK_PACKAGES_DEPS ${TEMP}
+      CACHE INTERNAL "bbtk packages dependencies" FORCE)
+  ENDIF(${BBTK_PACKAGE_NAME}_IN_DEPS)
+  #-----------------------------------------------------------------------
+  
 
 #---------------------------------------------------------------------------
 ENDIF(BUILD_BBTK_PACKAGE_${BBTK_PACKAGE_NAME})