X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=vtk%2FCMakeLists.txt;h=89f0eb6e084bd8ec7fc18cf6506476512c200eec;hb=ca1e16227a30bd895c6acdc27244c838f0631c2e;hp=a9a19244dae2d22893f1ff9beed786170761cee4;hpb=63f579ada04b47069e977c900e89b433e1aae95b;p=gdcm.git diff --git a/vtk/CMakeLists.txt b/vtk/CMakeLists.txt index a9a19244..89f0eb6e 100644 --- a/vtk/CMakeLists.txt +++ b/vtk/CMakeLists.txt @@ -1,50 +1,177 @@ -#----------------------------------------------------------------------------- -# VTK GDCM Reader subdir - -#----------------------------------------------------------------------------- -# Need gdcm header files -INCLUDE_DIRECTORIES( - ${GDCM_SOURCE_DIR}/src/ -) - -SET(VTKGDCM_LIB_SRCS - vtkGdcmReader.cxx -) - -#----------------------------------------------------------------------------- -# Create vtkgdcm library -ADD_LIBRARY(vtkgdcm ${VTKGDCM_LIB_SRCS}) -TARGET_LINK_LIBRARIES(vtkgdcm - gdcm - vtkCommon - vtkIO - vtkFiltering -) - -#----------------------------------------------------------------------------- -# See with frog why m4 didn't link to lib, and include cxx file instead ? -SET(vtkgdcmdemo_SOURCES - testvtkGdcmReader.cxx -# vtkGdcmReader.cxx -) -ADD_EXECUTABLE(vtkgdcmdemo ${vtkgdcmdemo_SOURCES}) -TARGET_LINK_LIBRARIES(vtkgdcmdemo - vtkgdcm - vtkGraphics - vtkRendering -) - -#----------------------------------------------------------------------------- -# See with frog why m4 didn't link to lib, and include cxx file instead ? -SET(vtkgdcmViewer_SOURCES - vtkgdcmViewer.cxx - #vtkGdcmReader.cxx -) -ADD_EXECUTABLE(vtkgdcmViewer ${vtkgdcmViewer_SOURCES}) -TARGET_LINK_LIBRARIES(vtkgdcmViewer - vtkgdcm - vtkRendering -) - -# Install vtk header -INSTALL_FILES(/include FILES vtkGdcmReader.h) \ No newline at end of file +#----------------------------------------------------------------------------- +# VTK GDCM Reader subdir +# Rebuild gdcm whenever a file starting with vtk* is modified +INCLUDE_REGULAR_EXPRESSION("^vtk.*$") + + + if(COMMAND cmake_policy) + cmake_policy(SET CMP0003 NEW) + endif(COMMAND cmake_policy) + + + +#----------------------------------------------------------------------------- +# Include the VTK library +INCLUDE(${VTK_USE_FILE}) + +# Need gdcm header files +INCLUDE_DIRECTORIES( + ${GDCM_SOURCE_DIR}/src/ + ${GDCM_BINARY_DIR}/ +) + +# Depending on VTK version build more stuff: +IF("${VTK_MAJOR_VERSION}" GREATER 4) + SET(VTKGDCM_LIB_SRCS + vtkGdcmReader.cxx + vtkGdcmWriter.cxx + vtkImageColorViewer.cxx + vtkImageMapToWindowLevelColors2.cxx + ) +ELSE("${VTK_MAJOR_VERSION}" GREATER 4) + SET(VTKGDCM_LIB_SRCS + vtkGdcmReader.cxx + vtkGdcmWriter.cxx + ) +ENDIF("${VTK_MAJOR_VERSION}" GREATER 4) + +#----------------------------------------------------------------------------- +# Create vtkgdcm library +ADD_LIBRARY(vtkgdcm ${VTKGDCM_LIB_SRCS}) +TARGET_LINK_LIBRARIES(vtkgdcm + gdcm + vtkCommon + vtkIO + vtkFiltering +) +IF("${VTK_MAJOR_VERSION}" GREATER 4) + TARGET_LINK_LIBRARIES(vtkgdcm + vtkRendering + ) +ENDIF("${VTK_MAJOR_VERSION}" GREATER 4) + +#----------------------------------------------------------------------------- +SET(vtkgdcmdemo_SOURCES + vtkGdcmDemo.cxx +) +ADD_EXECUTABLE(vtkgdcmdemo ${vtkgdcmdemo_SOURCES}) +TARGET_LINK_LIBRARIES(vtkgdcmdemo + vtkgdcm + vtkGraphics + vtkRendering +) + +#----------------------------------------------------------------------------- +SET(Bmp2Dcm_SOURCES + Bmp2Dcm.cxx +) +ADD_EXECUTABLE(Bmp2Dcm ${Bmp2Dcm_SOURCES}) +TARGET_LINK_LIBRARIES(Bmp2Dcm + vtkgdcm + vtkImaging + +) + +#----------------------------------------------------------------------------- +SET(vtkgdcmViewer_SOURCES + vtkgdcmViewer.cxx +) + +SET(vtkJPEGViewer_SOURCES + vtkJPEGViewer.cxx +) + +SET(vtkJPEGViewer2_SOURCES + vtkJPEGViewer2.cxx +) + +# let's do some APPLE/WIN32 magic here +#IF(WIN32) +# SET(GUI_EXECUTABLE WIN32) +#ENDIF(WIN32) +IF(APPLE) + IF(VTK_USE_CARBON) + SET(GUI_EXECUTABLE MACOSX_BUNDLE) + ENDIF(VTK_USE_CARBON) + IF(VTK_USE_COCOA) + SET(GUI_EXECUTABLE MACOSX_BUNDLE) + ENDIF(VTK_USE_COCOA) + # when using X11 on Apple you don't need this... +ENDIF(APPLE) + +ADD_EXECUTABLE(vtkgdcmViewer ${GUI_EXECUTABLE} ${vtkgdcmViewer_SOURCES}) +TARGET_LINK_LIBRARIES(vtkgdcmViewer + vtkgdcm + vtkRendering +) + +ADD_EXECUTABLE(vtkJPEGViewer ${GUI_EXECUTABLE} ${vtkJPEGViewer_SOURCES}) +TARGET_LINK_LIBRARIES( vtkJPEGViewer + vtkRendering +) + +ADD_EXECUTABLE(vtkJPEGViewer2 ${GUI_EXECUTABLE} ${vtkJPEGViewer2_SOURCES}) +TARGET_LINK_LIBRARIES( vtkJPEGViewer2 + vtkgdcm + vtkRendering +) + +ADD_EXECUTABLE(vtkgdcmViewer2 ${GUI_EXECUTABLE} vtkgdcmViewer2.cxx) +TARGET_LINK_LIBRARIES(vtkgdcmViewer2 + vtkgdcm + vtkRendering +) + +ADD_EXECUTABLE(vtkgdcmSerieViewer ${GUI_EXECUTABLE} vtkgdcmSerieViewer.cxx) +TARGET_LINK_LIBRARIES(vtkgdcmSerieViewer + vtkgdcm + vtkRendering +) + +ADD_EXECUTABLE(vtkgdcmSerieViewer2 ${GUI_EXECUTABLE} vtkgdcmSerieViewer2.cxx) +TARGET_LINK_LIBRARIES(vtkgdcmSerieViewer2 + vtkgdcm + vtkRendering +) + + +#----------------------------------------------------------------------------- +SET(vtkWriteDicom_SOURCES + vtkWriteDicom.cxx +) + +SET(vtkWriteDicomExtended_SOURCES + vtkWriteDicomExtended.cxx +) + +ADD_EXECUTABLE(vtkWriteDicom ${vtkWriteDicom_SOURCES}) +TARGET_LINK_LIBRARIES(vtkWriteDicom + vtkgdcm + vtkIO + vtkRendering +) + +ADD_EXECUTABLE(vtkWriteDicomExtended ${vtkWriteDicomExtended_SOURCES}) +TARGET_LINK_LIBRARIES(vtkWriteDicomExtended + vtkgdcm + vtkIO + vtkRendering +) +#----------------------------------------------------------------------------- +# Install vtk header +IF(NOT GDCM_INSTALL_NO_DEVELOPMENT) + INSTALL_FILES(${GDCM_INSTALL_INCLUDE_DIR} FILES vtkGdcmReader.h) + INSTALL_FILES(${GDCM_INSTALL_INCLUDE_DIR} FILES vtkGdcmWriter.h) +ENDIF(NOT GDCM_INSTALL_NO_DEVELOPMENT) + +IF(NOT GDCM_INSTALL_NO_LIBRARIES) + INSTALL_TARGETS(${GDCM_INSTALL_LIB_DIR} vtkgdcm) + INSTALL_TARGETS(${GDCM_INSTALL_BIN_DIR} vtkgdcmViewer) + INSTALL_TARGETS(${GDCM_INSTALL_BIN_DIR} vtkgdcmViewer) + + # INSTALL_TARGETS(${GDCM_INSTALL_BIN_DIR} vtkJPEGViewer) + # INSTALL_TARGETS(${GDCM_INSTALL_BIN_DIR} vtkJPEGViewer2) + + INSTALL_TARGETS(${GDCM_INSTALL_BIN_DIR} vtkgdcmSerieViewer) +ENDIF(NOT GDCM_INSTALL_NO_LIBRARIES) +