]> Creatis software - clitk.git/blobdiff - common/CMakeLists.txt
handling SYSTEM_GDCM from build and install trees
[clitk.git] / common / CMakeLists.txt
index b956dd9f71c6e1dcc76ce16d5e566535a32ef2f6..b90df141344ae0f4e4963b237f6b174edf9c5966 100644 (file)
@@ -1,7 +1,3 @@
-#=========================================================
-INCLUDE(${CLITK_SOURCE_DIR}/cmake/common.cmake)
-#=========================================================
-
 #=========================================================
 # make clitk libraries*
 CONFIGURE_FILE(clitkConfiguration.h.in ${PROJECT_BINARY_DIR}/clitkConfiguration.h)
@@ -37,6 +33,16 @@ SET(clitkCommon_SRC
   vvImageReader.cxx
   vvImageWriter.cxx
 )
+IF(CLITK_PRIVATE_FEATURES)
+  SET(clitkCommon_SRC ${clitkCommon_SRC}
+    ${PROJECT_SOURCE_DIR}/private_features/clitkUsfImageIO.cxx
+    ${PROJECT_SOURCE_DIR}/private_features/clitkUsfImageIOFactory.cxx
+    ${PROJECT_SOURCE_DIR}/private_features/clitkUSVoxImageIO.cxx
+    ${PROJECT_SOURCE_DIR}/private_features/clitkUSVoxImageIOFactory.cxx
+    ${PROJECT_SOURCE_DIR}/private_features/clitkSvlImageIO.cxx
+    ${PROJECT_SOURCE_DIR}/private_features/clitkSvlImageIOFactory.cxx
+    )
+ENDIF(CLITK_PRIVATE_FEATURES)
 
 ### Declare clitkCommon library
 ADD_LIBRARY(clitkCommon STATIC ${clitkCommon_SRC})
@@ -45,7 +51,27 @@ IF(NOT ${LIBSTATGRAB} MATCHES "LIBSTATGRAB-NOTFOUND")
   TARGET_LINK_LIBRARIES(clitkCommon statgrab)
 ENDIF(NOT ${LIBSTATGRAB} MATCHES "LIBSTATGRAB-NOTFOUND")
 
-TARGET_LINK_LIBRARIES(clitkCommon vtkCommon vtkImaging ${ITK_LIBRARIES})
+### Check if ITK was compiled with SYSTEM_GDCM = ON and set the gdcm libraries accordingly
+SET(CLITK_USE_SYSTEM_GDCM FALSE)
+IF(ITK_VERSION_MAJOR LESS "4")
+  IF(ITK_USE_SYSTEM_GDCM)
+    SET(CLITK_USE_SYSTEM_GDCM TRUE) 
+  ENDIF(ITK_USE_SYSTEM_GDCM)
+ELSE(ITK_VERSION_MAJOR LESS "4")
+  SET(GDCM_INCLUDE ".*include/gdcm-.*")
+  #SET(GDCM_INCLUDE ".*/Source/Common")
+  IF(ITKGDCM_INCLUDE_DIRS MATCHES ${GDCM_INCLUDE})
+    SET(CLITK_USE_SYSTEM_GDCM TRUE)
+  ELSE(ITKGDCM_INCLUDE_DIRS MATCHES ${GDCM_INCLUDE})
+    MESSAGE("NOT USING SYSTEM_GDCM!!!!!!!")
+  ENDIF(ITKGDCM_INCLUDE_DIRS MATCHES ${GDCM_INCLUDE})
+ENDIF(ITK_VERSION_MAJOR LESS "4")
+
+IF(CLITK_USE_SYSTEM_GDCM)
+  SET(CLITK_GDCM_LIBRARIES gdcmDSED) 
+ENDIF(CLITK_USE_SYSTEM_GDCM)
+
+TARGET_LINK_LIBRARIES(clitkCommon vtkCommon vtkImaging ${ITK_LIBRARIES} ${CLITK_GDCM_LIBRARIES})
 
 ADD_LIBRARY(clitkDicomRTStruct STATIC
   clitkDicomRT_Contour.cxx
@@ -54,7 +80,7 @@ ADD_LIBRARY(clitkDicomRTStruct STATIC
   clitkDicomRTStruct2ImageFilter.cxx
 )
 
-TARGET_LINK_LIBRARIES(clitkDicomRTStruct vtkHybrid) 
+TARGET_LINK_LIBRARIES(clitkDicomRTStruct vtkHybrid ${CLITK_GDCM_LIBRARIES}
 
 #ADD_LIBRARY(clitkCommonShared SHARED ${clitkCommon_SRC})
 #SET_TARGET_PROPERTIES(clitkCommonShared PROPERTIES COMPILE_FLAGS -fPIC)