X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=gdcmPython%2FMakefile.am;h=b2a47f35cdbe5568b64c7159fe8aabd4a9a342f4;hb=eaa1ab7591f8fd46c2efdfb823c15ae01a1472fc;hp=b60ac60f3e91a9ba9a8aac059b009b16826e928f;hpb=01f8381d6e75139958807e5b99ba3ebc8e0066c5;p=gdcm.git diff --git a/gdcmPython/Makefile.am b/gdcmPython/Makefile.am index b60ac60f..b2a47f35 100644 --- a/gdcmPython/Makefile.am +++ b/gdcmPython/Makefile.am @@ -1,27 +1,74 @@ ## Process this file with automake to produce Makefile.in -## $(top_builddir) is required for idtypes.h -GDCM_INC = -I$(top_srcdir)/src -I$(top_builddir) -SWIG_INC = $(GLIB_CFLAGS) $(PYTHON_INCLUDES) $(GDCM_INC) -INCLUDES = $(GDCM_INC) $(PYTHON_INCLUDES) +### VTK related +VTK_INC = -I/usr/include/vtk +LIBS_VTK=-L/usr/lib/vtk \ + -lvtkCommon -lvtkIO -lvtkFiltering -lvtkRendering -lvtkGraphics \ + -lvtkImaging -lvtkpng -lvtkzlib -lvtkjpeg -lvtkexpat -lvtktiff \ + -lvtkftgl -lvtkfreetype +LIBS_VTK_PYTHON= $(LIBS_VTK) \ + -lvtkCommonPython -lvtkIOPython -lvtkFilteringPython \ + -lvtkRenderingPython -lvtkGraphicsPython -lvtkImagingPython +### Gdcm itself: +GDCM_INC = -I$(top_srcdir)/src -I$(top_builddir) +### Vtk wrappers of gdcm relate: +VTKGDCM_DIR = $(top_srcdir)/vtk/ +VTKGDCM_INC = -I$(VTKGDCM_DIR) +### Swig related (for wrapping Gdcm): +SWIG_INC = $(PYTHON_INCLUDES) $(GDCM_INC) -LIBADDS = $(top_builddir)/src/libgdcm.la - -### Non default rules +### The resulting include path: +INCLUDES = $(GDCM_INC) $(PYTHON_INCLUDES) $(VTK_INC) $(VTKGDCM_INC) +### Since maude_LDFLAGS cannot be defined conditionaly: pygdcm_la_LDFLAGS = -module -avoid-version -L$(top_builddir)/src/.libs +vtkgdcmPython_la_LDFLAGS = -module -avoid-version +############################################################ if BUILD_PYTHON pythondir = $(prefix)/lib/python${PYTHON_VERSION}/site-packages/gdcm -python_LTLIBRARIES = pygdcm.la +if BUILD_VTK +GDCMVTKLIB = vtkgdcmPython.la +endif +python_LTLIBRARIES = pygdcm.la $(GDCMVTKLIB) + +############ Gdcm python wrappers: pygdcm_la_SOURCES = gdcm_wrap.cxx -pygdcm_la_LIBADD = $(LIBADDS) +pygdcm_la_LIBADD = $(top_builddir)/src/libgdcm.la -lstdc++ gdcm_wrap.cxx: $(srcdir)/gdcm.i $(SWIG) -python -c++ $(SWIG_INC) -o $@ $< -MOSTLYCLEANFILES = $(pygdcm_la_SOURCES) -BUILT_SOURCES = gdcm_wrap.cxx -CLEANFILES = gdcm_wrap.cxx +############ Vtk wrappers of Gdcm wrapped for python +if BUILD_VTK +PYTHON_LIB_BASENAME=vtkgdcmPython + +# Python wrappers +PYTHON_WRAPPER = vtkWrapPython +PYTHON_WRAPPER_INIT=./vtkWrapPythonInit +PWFLAGS=hints + +vtkgdcmPython_la_SOURCES = \ + vtkGdcmReaderPython.cxx \ + vtkGdcmInit.cxx +vtkgdcmPython_la_LIBADD = $(top_builddir)/vtk/libvtkgdcm.la \ + $(LIBS_VTK_PYTHON) + +vtkGdcmReaderPython.cxx: $(VTKGDCM_DIR)/vtkGdcmReader.h + $(PYTHON_WRAPPER) $< $(PWFLAGS) $@ + +vtkGdcmInit.cxx : $(VTKGDCM_DIR)/vtkGdcmReader.h $(PYTHON_WRAPPER_INIT) + $(PYTHON_WRAPPER_INIT) $(PYTHON_LIB_BASENAME) \ + vtkGdcmReader.h \ + > $@ + +$(PYTHON_WRAPPER_INIT) : vtkWrapPythonInit.c + gcc -o $@ $< +endif### BUILD_PYTHON ####################################### + +############ Automake general usage classics: +MOSTLYCLEANFILES = $(pygdcm_la_SOURCES) $(vtkgdcmPython_la_SOURCES) +BUILT_SOURCES = $(pygdcm_la_SOURCES) $(vtkgdcmPython_la_SOURCES) +CLEANFILES = gdcm_wrap.cxx gdcm.py gdcm.pyc $(PYTHON_WRAPPER_INIT) dist-hook: rm -f $(distdir)/gdcm_wrap.cxx