]> Creatis software - gdcm.git/blob - gdcmPython/CMakeLists.txt
* doh, ADD_DEFINITIONS needed for now
[gdcm.git] / gdcmPython / CMakeLists.txt
1 #IF(GDCM_WRAP_PYTHON)
2 #If we reach this dir we have selected this option
3
4
5 #TODO
6 #http://www.cmake.org/pipermail/cmake/2003-August/004185.html
7 #http://www.cmake.org/pipermail/cmake/2003-January/001092.html
8
9 #As of 09/10/2003 there was no FindSWIG.cmake
10
11 #gdcm_wrap.cxx: $(srcdir)/gdcm.i
12 #       $(SWIG)  -python -c++ $(SWIG_INC) -o $@ $<
13
14 INCLUDE_DIRECTORIES(
15   ${GDCM_SOURCE_DIR}/src
16 )
17
18 SET(GDCM_INC
19   ${GDCM_SOURCE_DIR}/src
20 #  -I$(top_builddir)
21 )
22
23 SET(SWIG_INC
24   ${PYTHON_INCLUDES}
25   ${GDCM_INC}
26 )
27
28
29 SET(GDCM_PYTHON_SOURCES
30   gdcm_wrap.cxx
31 )
32
33 SET_SOURCE_FILES_PROPERTIES(gdcm_wrap.cxx GENERATED)
34
35 ADD_CUSTOM_COMMAND(
36 SOURCE    ${GDCM_SOURCE_DIR}/gdcmPython/gdcm.i
37 COMMAND   swig
38 ARGS      -python -c++ -I${GDCM_SOURCE_DIR}/src -o gdcm_wrap.cxx ${GDCM_SOURCE_DIR}/gdcmPython/gdcm.i 
39 OUTPUTS   gdcm_wrap.cxx
40 TARGET    pygdcm
41 )
42
43 ADD_LIBRARY(pygdcm ${GDCM_PYTHON_SOURCES})
44
45
46
47 IF(GDCM_VTK)
48   INCLUDE_DIRECTORIES(
49     ${GDCM_SOURCE_DIR}/vtk
50   )
51
52   SET(vtkgdcmPython_la_SOURCES
53 #      vtkGdcmReaderPython.cxx
54 #      vtkGdcmInit.cxx
55       ${GDCM_SOURCE_DIR}/vtk/vtkGdcmReader.cxx
56   )
57   SET_SOURCE_FILES_PROPERTIES(vtkGdcmReaderPython.cxx GENERATED)
58   #vtkWrapPythonInit.c
59   
60   # The C++ files must be made into a C++ library
61   #ADD_LIBRARY ( vtkgdcmPython ${vtkgdcmPython_la_SOURCES})
62
63   # set the libraries to link against
64   #TARGET_LINK_LIBRARIES(vtkgdcmPython vtkCommon)
65
66   # Configure Python module, which is the plugin itself
67   IF (GDCM_WRAP_PYTHON)
68     VTK_WRAP_PYTHON2(vtkgdcmPython gdcmfoo
69                    ${vtkgdcmPython_la_SOURCES})
70     ADD_LIBRARY(vtkgdcmPython SHARED ${gdcmfoo})
71     TARGET_LINK_LIBRARIES (vtkgdcmPython
72                          pygdcm
73                          vtkgdcm
74                          vtkCommonPython
75                          vtkIOPython)
76   ENDIF (GDCM_WRAP_PYTHON)
77 ENDIF(GDCM_VTK)