-# As of 09/10/2003 there was no FindSWIG.cmake
-# later we should use SWIG instead of swig
-# Build our custom command :
-ADD_CUSTOM_COMMAND(
- SOURCE ${GDCM_SOURCE_DIR}/gdcmPython/gdcm.i
- COMMAND swig
- ARGS -python -c++ -I${GDCM_SOURCE_DIR}/src -o
- ${GDCM_BINARY_DIR}/gdcmPython/gdcm_wrap.cxx
- ${GDCM_SOURCE_DIR}/gdcmPython/gdcm.i
- TARGET pygdcm
- OUTPUTS ${GDCM_BINARY_DIR}/gdcmPython/gdcm_wrap.cxx
-)
+# SWIG Wrapping
+#
+
+# CMake 2.0 will fully support Swig wrapping so split based on cmake version:
+
+# We need to pass that to swig to be sure all modules are generated in the proper dir
+SET(CMAKE_SWIG_FLAGS "-outdir \"${GDCM_BINARY_DIR}/gdcmPython\"")
+#SET(CMAKE_SWIG_OUTDIR "${GDCM_BINARY_DIR}/gdcmPython")
+# Looks like a bug to me in cmake 2.0.x:
+SEPARATE_ARGUMENTS(CMAKE_SWIG_FLAGS)
+
+FIND_PACKAGE(SWIG REQUIRED)
+IF(SWIG_FOUND)
+ INCLUDE(${SWIG_USE_FILE})
+ENDIF(SWIG_FOUND)
+
+
+SET_SOURCE_FILES_PROPERTIES(gdcm.i PROPERTIES CPLUSPLUS ON)
+# BUG: This is only needed with cmake <= 2.0.5
+SET_SOURCE_FILES_PROPERTIES(gdcm.i PROPERTIES SWIG_FLAGS "")
+# END OF BUG
+#FIXME :
+#where must we put the keyword SHARED
+#- just like in ADD_LIBRARY(vtkgdcmPython SHARED ${gdcmWrapSOURCES}) -
+#to allow use of a static/shared libray ?
+# JPRx
+SWIG_ADD_MODULE(gdcm python gdcm.i) #gdcm_wrap.cxx, or gdcmPYTHON_wrap.cxx
+SWIG_LINK_LIBRARIES(gdcm gdcm ${PYTHON_LIBRARIES})
+
+# Get rid of -Wall / -W / -pedantic if exist
+SET(CMAKE_CXX_FLAGS "")
+# I guess I need to put them back on this file:
+#SET_SOURCE_FILES_PROPERTIES(
+# ${swig_generated_file_fullname}
+# PROPERTIES COMPILE_FLAGS "")
+
+INSTALL_TARGETS(/lib/gdcm/ _gdcm)