+
+
#-----------------------------------------------------------------------------
#OPTION(USE_VTK "Build VTK-based black boxes" OFF)
IF(USE_VTK)
FIND_PACKAGE(VTK)
# If vtk found
IF(VTK_FOUND)
- MESSAGE ( STATUS "VTK FOUND - VERSION = ${VTK_MAJOR_VERSION}.${VTK_MINOR_VERSION}.${VTK_BUILD_VERSION}")
+ 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
)
MARK_AS_ADVANCED(VTK_DIR)
+ ELSE(VTK_FOUND)
+ message(FATAL_ERROR "VTK_DIR not found")
ENDIF(VTK_FOUND)
ENDIF(USE_VTK)
#-----------------------------------------------------------------------------
FIND_PACKAGE(ITK)
# If itk found
IF(ITK_FOUND)
- MESSAGE ( STATUS "ITK FOUND - VERSION = ${ITK_VERSION_MAJOR}.${ITK_VERSION_MINOR}.${ITK_VERSION_PATCH}")
+ MESSAGE ( STATUS "Looking for ITK... found")
+ MESSAGE ( STATUS "* Dir = ${ITK_DIR}")
+ MESSAGE ( STATUS "* Version = ${ITK_VERSION_MAJOR}.${ITK_VERSION_MINOR}.${ITK_VERSION_PATCH}")
INCLUDE(${ITK_USE_FILE})
ADD_DEF( _USE_ITK_ )
SET(BBTK_ITK_LIBRARIES
IF ( itk_IMAGE_TYPE_DOUBLE )
ADD_DEF( BBTK_ITK_IMAGE_TYPE_double )
ENDIF ( itk_IMAGE_TYPE_DOUBLE )
+ ELSE(ITK_FOUND)
+ message(FATAL_ERROR "ITK_DIR not found")
ENDIF(ITK_FOUND)
ENDIF(USE_ITK)
#-----------------------------------------------------------------------------
+
#-----------------------------------------------------------------------------
#OPTION(USE_GDCM "Build GDCM-based black boxes" OFF)
IF(USE_GDCM)
IF(GDCM_FOUND)
INCLUDE(${GDCM_USE_FILE})
ADD_DEF( _USE_GDCM_ )
+
+ 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 "* Namespace = ${GDCM_NAME_SPACE}")
+
SET(BBTK_GDCM_LIBRARIES
# TO DO : USE GDCM LINK LIBRARIES !!!
- libgdcm libgdcmjpeg8 libgdcmjpeg12libgdcmjpeg16
+# IF gdcm WAS NOT COMPILE WITH VTK THE ABOVE FORCED LINK WITH vtkgdcm DOES NOT WORK
+ ${GDCM_LIBRARIES}
+#gdcm gdcmjpeg8 gdcmjpeg12 gdcmjpeg16
)
+
+
+# IF(USE_VTK )
+# SET(BBTK_GDCM_LIBRARIES
+# ${BBTK_GDCM_LIBRARIES}
+# vtkgdcm
+# )
+# ENDIF(USE_VTK)
+
ENDIF(GDCM_FOUND)
ENDIF(USE_GDCM)
+
#-----------------------------------------------------------------------------
#-----------------------------------------------------------------------------
-#OPTION(USE_WXWIDGETS "Build wxWidgets-based black boxes" OFF)
IF(USE_WXWIDGETS)
+ INCLUDE(${BBTK_CMAKE_DIR}/BBTKWxWidgets.cmake)
+ BBTK_FIND_WXWIDGETS()
+ BBTK_USE_WXWIDGETS()
+ENDIF(USE_WXWIDGETS)
+#-----------------------------------------------------------------------------
-IF(WIN32)
- # Search WXWIDGETS
-
- # WXWINDOWS_LIBRARY = full path to the wxWindows library and linker flags on unix
- # CMAKE_WX_CXX_FLAGS = compiler flags for building wxWindows
- # WXWINDOWS_INCLUDE_PATH = include path of wxWindows
- SET(WXWINDOWS_USE_GL 1)
-
- #wxWidgets build related stuff
- SET(WXW_USE_DEBUG ON)
- SET(WXW_USE_UNICODE OFF)
- SET(WXW_USE_SHARED ON)
- SET(WXW_USE_UNIV OFF)
- SET(WXW_USE_MONO OFF)
- SET(WXW_FILE_VERSION "28")
- SET(WXW_VERSION "2.8")
-
- #CMake Options
- # Why forcing verbosity ?
- # SET(CMAKE_VERBOSE_MAKEFILE TRUE)
-
- INCLUDE (${BBTK_DIR}/BBTKFindWX_WIN)
- #
- SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}${WXWIDGETS_CXX_FLAGS}")
- SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS}${WXWIDGETS_EXE_LINKER_FLAGS}")
- ADD_DEFINITIONS( ${WXWIDGETS_DEFINITIONS} )
- #
- INCLUDE_DIRECTORIES(${WXWIDGETS_INCLUDE_DIR})
- LINK_DIRECTORIES( ${WXWIDGETS_LINK_DIRECTORIES} )
- SET(THE_WXWIDGETS_LIBRARIES
- ${WXWIDGETS_LIBRARIES}
- debug msvcrtd
- debug msvcprtd
- optimized msvcrt
- optimized msvcprt
- )
-ENDIF(WIN32)
-IF(UNIX)
- # GTK2
- INCLUDE(${BBTK_DIR}/BBTKFindGTK2.cmake)
- INCLUDE_DIRECTORIES(${GTK2_INCLUDE_DIRS})
- LINK_DIRECTORIES(${GTK2_LIBRARY_DIRS})
- LINK_LIBRARIES(${GTK2_LIBRARIES})
- # WX
- # LG : Do not force but use what is installed !
- # SET(wxWidgets_USE_LIBS base core gl)
- FIND_PACKAGE( wxWidgets REQUIRED)
- INCLUDE( ${wxWidgets_USE_FILE} )
- MARK_AS_ADVANCED(wxWidgets_CONFIG_EXECUTABLE)
- SET(THE_WXWIDGETS_LIBRARIES
- ${GTK2_LIBRARIES}
- ${wxWidgets_LIBRARIES}
- )
-ENDIF(UNIX)
-
-ADD_DEF( _USE_WXWIDGETS_ )
-SET(BBTK_WXWIDGETS_LIBRARIES
- ${THE_WXWIDGETS_LIBRARIES}
- )
-ENDIF(USE_WXWIDGETS)
+
+#-----------------------------------------------------------------------------
+IF(USE_DOXYGEN)
+ 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)
+ENDIF(USE_DOXYGEN)
+#-----------------------------------------------------------------------------
+
+
+#-----------------------------------------------------------------------------
+IF(USE_LATEX)
+ FIND_PACKAGE(LATEX REQUIRED)
+ MESSAGE(STATUS "Looking for latex... - found ${LATEX_COMPILER}")
+ENDIF(USE_LATEX)
+#-----------------------------------------------------------------------------
+
+#-----------------------------------------------------------------------------
+IF(USE_TTH)
+ FIND_FILE(LATEX_tth_CONVERTER NAME tth tth.exe PATHS . $ENV{CREATIS}/tth_exe/ ~/Creatis/tth ~/Creatis/tth_linux)
+ 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 "Looking for tth... - found ${LATEX_tth_CONVERTER}")
+ ENDIF(NOT LATEX_tth_CONVERTER)
+ MARK_AS_ADVANCED(LATEX_tth_CONVERTER)
+ENDIF(USE_TTH)
+#-----------------------------------------------------------------------------
+
+#-----------------------------------------------------------------------------
+IF(USE_BOOST)
+ IF(BBTK_USE_SHIPPED_BOOST)
+ MESSAGE(STATUS "bbtk uses shipped boost C++ library (${BBTK_SHIPPED_BOOST})")
+ INCLUDE_DIRECTORIES(
+ ${PROJECT_SOURCE_DIR}/kernel/src/ThirdParty/${BBTK_SHIPPED_BOOST})
+
+ # TO DO : CLEANLY BLOCK auto_link.hpp INCLUSION
+ #ADD_DEF(BOOST_SIGNALS_NO_LIB)
+ SET(BBTK_BOOST_LIBRARIES
+ bbtk_boost_signals
+ )
+
+ ELSE(BBTK_USE_SHIPPED_BOOST)
+ FIND_PACKAGE(Boost REQUIRED)
+ MARK_AS_ADVANCED(Boost_INCLUDE_DIR)
+ IF(Boost_FOUND)
+ MESSAGE(STATUS "Looking for boost C++ library... - found in ${Boost_INCLUDE_DIR}")
+ INCLUDE_DIRECTORIES(${Boost_INCLUDE_DIRS})
+ LINK_DIRECTORIES( ${Boost_LIBRARY_DIRS} )
+ SET(BBTK_BOOST_LIBRARIES
+ 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}")
+ ENDIF(Boost_FOUND)
+ ENDIF(BBTK_USE_SHIPPED_BOOST)
+ENDIF(USE_BOOST)
#-----------------------------------------------------------------------------