]> Creatis software - gdcm.git/blobdiff - vtk/CMakeLists.txt
upgrades for 4DSplitter
[gdcm.git] / vtk / CMakeLists.txt
index a149cd245e4452a195dd8cdf3ebca44ebcda798c..9d6b47323bf0f09ccaceeae7dd28bc1a42f80e57 100644 (file)
-#-----------------------------------------------------------------------------\r
-# VTK GDCM Reader subdir\r
-\r
-#-----------------------------------------------------------------------------\r
-# Need gdcm header files\r
-INCLUDE_DIRECTORIES(\r
-  ${GDCM_SOURCE_DIR}/src/\r
-)\r
-\r
-SET(VTKGDCM_LIB_SRCS\r
-  vtkGdcmReader.cxx\r
-)\r
-\r
-#-----------------------------------------------------------------------------\r
-# Create vtkgdcm library\r
-ADD_LIBRARY(vtkgdcm ${VTKGDCM_LIB_SRCS})\r
-TARGET_LINK_LIBRARIES(vtkgdcm \r
-  gdcm\r
-  vtkCommon\r
-  vtkIO\r
-  vtkFiltering\r
-)\r
-\r
-#-----------------------------------------------------------------------------\r
-# See with frog why m4 didn't link to lib, and include cxx file instead ?\r
-SET(vtkgdcmdemo_SOURCES\r
-  testvtkGdcmReader.cxx\r
-#  vtkGdcmReader.cxx\r
-)\r
-ADD_EXECUTABLE(vtkgdcmdemo ${vtkgdcmdemo_SOURCES})\r
-TARGET_LINK_LIBRARIES(vtkgdcmdemo \r
-  vtkgdcm\r
-  vtkGraphics\r
-  vtkRendering\r
-)\r
-\r
-#-----------------------------------------------------------------------------\r
-# See with frog why m4 didn't link to lib, and include cxx file instead ?\r
-SET(vtkgdcmViewer_SOURCES\r
-  vtkgdcmViewer.cxx\r
-  #vtkGdcmReader.cxx \r
-)\r
-ADD_EXECUTABLE(vtkgdcmViewer ${vtkgdcmViewer_SOURCES})\r
-TARGET_LINK_LIBRARIES(vtkgdcmViewer \r
-  vtkgdcm\r
-  vtkRendering\r
-)\r
-\r
-# Install vtk header\r
-INSTALL_FILES(/include FILES vtkGdcmReader.h)\r
-\r
-INSTALL_TARGETS(/lib/ vtkgdcm)\r
+#-----------------------------------------------------------------------------
+# 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
+
+# EED 5/Mars/2010
+SET(VTK_BUILD_SETTINGS_FILE OFF)
+
+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
+    # vtkGdcm4DSplitter.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)
+