]> Creatis software - bbtk.git/blobdiff - kernel/cmake/BBTKFindLibraries.cmake
*** empty log message ***
[bbtk.git] / kernel / cmake / BBTKFindLibraries.cmake
index 76f522ef135a8d2e2655fc2bc5d3b8f273ccfcd4..084fa2970fa01137e08470a10751a2d70d16c81d 100644 (file)
@@ -1,5 +1,27 @@
 
 
+#-----------------------------------------------------------------------------
+IF(USE_KW)
+  # Search KWWidgets
+  FIND_PACKAGE(KWWidgets)
+  # If found
+  IF(KWWidgets_FOUND)
+    MESSAGE ( STATUS "=======================================")
+    MESSAGE ( STATUS "Looking for KWWidgets... found")
+    MESSAGE ( STATUS "* Dir     = ${KWWidgets_DIR}")
+    MESSAGE ( STATUS "* Version = ${KWWidgets_MAJOR_VERSION}.${KWWidgets_MINOR_VERSION}.${KWWidgets_BUILD_VERSION}")
+    INCLUDE(${KWWidgets_USE_FILE})
+    ADD_DEF( USE_KWWIDGETS )
+    SET(BBTK_KWWIDGETS_LIBRARIES
+      ${KWWidgets_LIBRARIES}
+     ) 
+    MARK_AS_ADVANCED(KWWidgets_DIR)
+  ELSE(KWWidgets_FOUND)
+     message(FATAL_ERROR "KWWidgets_DIR not found")
+  ENDIF(KWWidgets_FOUND)
+ENDIF(USE_KW)
+#-----------------------------------------------------------------------------
+
 #-----------------------------------------------------------------------------
 #OPTION(USE_VTK "Build VTK-based black boxes" OFF)
 IF(USE_VTK)
@@ -7,17 +29,23 @@ IF(USE_VTK)
   FIND_PACKAGE(VTK)
   # If vtk found
   IF(VTK_FOUND)
+    MESSAGE ( STATUS "=======================================")
     MESSAGE ( STATUS "Looking for VTK... found")
     MESSAGE ( STATUS "* Dir     = ${VTK_DIR}")
     MESSAGE ( STATUS "* Version = ${VTK_MAJOR_VERSION}.${VTK_MINOR_VERSION}.${VTK_BUILD_VERSION}")
     INCLUDE(${VTK_USE_FILE})
     ADD_DEF( _USE_VTK_ )
     SET(BBTK_VTK_LIBRARIES
-      #     vtkCommon 
-      vtkImaging  vtkGraphics vtkRendering vtkFiltering vtkCommon vtkWidgets
-      vtkVolumeRendering
-      # LG : removed vtkIO because conflict with itktiff lib in ITKIO 
-      ) 
+      vtkCommon     # Mandatory
+      vtkFiltering  # vtkImageData
+      vtkRendering  # vtkProp3D
+      vtkWidgets    # vtkImagePlaneWidget
+      vtkIO         # vtkMetaImageReader/Writer
+      vtkImaging    # filters such as vtkImageAnisotropicDiffusion3D
+      vtkGraphics   # vtkContourFilter, sources
+      vtkVolumeRendering # Mappers 
+#      vtkGenericFiltering
+     ) 
     MARK_AS_ADVANCED(VTK_DIR)
   ELSE(VTK_FOUND)
      message(FATAL_ERROR "VTK_DIR not found")
@@ -33,6 +61,7 @@ IF(USE_ITK)
   FIND_PACKAGE(ITK)
   # If itk found
   IF(ITK_FOUND)
+    MESSAGE ( STATUS "=======================================")
     MESSAGE ( STATUS "Looking for ITK... found")
     MESSAGE ( STATUS "* Dir     = ${ITK_DIR}")
     MESSAGE ( STATUS "* Version = ${ITK_VERSION_MAJOR}.${ITK_VERSION_MINOR}.${ITK_VERSION_PATCH}")
@@ -114,12 +143,18 @@ IF(USE_GDCM)
   IF(GDCM_FOUND)
     INCLUDE(${GDCM_USE_FILE})
     ADD_DEF( _USE_GDCM_ )
-
+    MESSAGE ( STATUS "=======================================")
     MESSAGE ( STATUS "Looking for GDCM... found")
     MESSAGE ( STATUS "* Dir       = ${GDCM_DIR}")
-    MESSAGE ( STATUS "* Version   = ${GDCM_VERSION_MAJOR}.${GDCM_VERSION_MINOR}.${GDCM_VERSION_PATCH}")
+    MESSAGE ( STATUS "* Version   = ${GDCM_MAJOR_VERSION}.${GDCM_MINOR_VERSION}.${GDCM_BUILD_VERSION}")
     MESSAGE ( STATUS "* Namespace = ${GDCM_NAME_SPACE}")
 
+    # Test that GDCM_NAME_SPACE is **NOT** "gdcm" or will conflict with 
+    # embedded gdcm in ITK and will result in hard seg faults !
+    IF (GDCM_NAME_SPACE STREQUAL "gdcm")
+      MESSAGE(FATAL_ERROR "GDCM_NAME_SPACE value is 'gdcm' which conflicts with ITK embededd gdcm namespace : rebuild gdcm with another GDCM_NAME_SPACE value")
+    ENDIF (GDCM_NAME_SPACE STREQUAL "gdcm")
+
     MARK_AS_ADVANCED(GDCM_DIR)
     
     SET(BBTK_GDCM_LIBRARIES
@@ -144,6 +179,7 @@ ENDIF(USE_GDCM)
 
 #-----------------------------------------------------------------------------
 IF(USE_WXWIDGETS)
+  MESSAGE ( STATUS "=======================================")
   INCLUDE(${BBTK_CMAKE_DIR}/BBTKWxWidgets.cmake)
   BBTK_FIND_WXWIDGETS()
   BBTK_USE_WXWIDGETS()
@@ -154,13 +190,14 @@ ENDIF(USE_WXWIDGETS)
 
 #-----------------------------------------------------------------------------
 IF(USE_DOXYGEN) 
+  MESSAGE ( STATUS "=======================================")
   FIND_PACKAGE(Doxygen REQUIRED)
 #  MESSAGE(STATUS "Looking for doxygen... - found ${DOXYGEN}")
-  #  IF(DOXYGEN)
-#    
-#  ELSE(DOXYGEN)
-#    MESSAGE(FATAL_ERROR "Doxygen not found. Required to build the doxygen documentation")
-#  ENDIF(DOXYGEN)
+  IF(DOXYGEN)
+    
+  ELSE(DOXYGEN)
+    MESSAGE(FATAL_ERROR "Doxygen not found. Required to build the doxygen documentation")
+  ENDIF(DOXYGEN)
 ENDIF(USE_DOXYGEN)
 #-----------------------------------------------------------------------------
 
@@ -168,6 +205,7 @@ ENDIF(USE_DOXYGEN)
 #-----------------------------------------------------------------------------
 IF(USE_LATEX) 
   FIND_PACKAGE(LATEX REQUIRED)
+    MESSAGE ( STATUS "=======================================")
   MESSAGE(STATUS "Looking for latex... - found ${LATEX_COMPILER}")
 ENDIF(USE_LATEX) 
 #-----------------------------------------------------------------------------
@@ -178,6 +216,7 @@ IF(USE_TTH)
   IF (NOT LATEX_tth_CONVERTER)
     MESSAGE(FATAL_ERROR "TTH not found (LATEX_tth_CONVERTER). Required to build the HTML documentation from tex source")
   ELSE (NOT LATEX_tth_CONVERTER)
+    MESSAGE ( STATUS "=======================================")
     MESSAGE(STATUS "Looking for tth... - found ${LATEX_tth_CONVERTER}")
   ENDIF(NOT LATEX_tth_CONVERTER)
   MARK_AS_ADVANCED(LATEX_tth_CONVERTER)
@@ -187,6 +226,7 @@ ENDIF(USE_TTH)
 #-----------------------------------------------------------------------------
 IF(USE_BOOST)
   IF(BBTK_USE_SHIPPED_BOOST)
+    MESSAGE ( STATUS "=======================================")
     MESSAGE(STATUS "bbtk uses shipped boost C++ library (${BBTK_SHIPPED_BOOST})")
     INCLUDE_DIRECTORIES( 
       ${PROJECT_SOURCE_DIR}/kernel/src/ThirdParty/${BBTK_SHIPPED_BOOST})
@@ -201,6 +241,7 @@ IF(USE_BOOST)
     FIND_PACKAGE(Boost REQUIRED)
     MARK_AS_ADVANCED(Boost_INCLUDE_DIR)
     IF(Boost_FOUND)
+      MESSAGE ( STATUS "=======================================")
       MESSAGE(STATUS "Looking for boost C++ library... - found in ${Boost_INCLUDE_DIR}")
       INCLUDE_DIRECTORIES(${Boost_INCLUDE_DIRS})
       LINK_DIRECTORIES( ${Boost_LIBRARY_DIRS} )
@@ -208,7 +249,7 @@ IF(USE_BOOST)
        boost_signals
        )
     ELSE(Boost_FOUND)
-      MESSAGE(FATAL_ERRO "boost C++ library not found - either set Boost_INCLUDE_DIR or set BBTK_USE_SHIPPED_BOOST to ON to use shipped ${BBTK_SHIPPED_BOOST}")
+      MESSAGE(FATAL_ERROR "boost C++ library not found - either set Boost_INCLUDE_DIR or set BBTK_USE_SHIPPED_BOOST to ON to use shipped ${BBTK_SHIPPED_BOOST}")
     ENDIF(Boost_FOUND)
   ENDIF(BBTK_USE_SHIPPED_BOOST)
 ENDIF(USE_BOOST)