#!/usr/bin/make -f
BUILDDIR = $(CURDIR)/debian/build

# export JAVA_HOME to help FindJava.cmake and FindJNI.cmake
export JAVA_HOME=/usr/lib/jvm/default-java

%:
	dh $@ --buildsystem=cmake --builddirectory=$(BUILDDIR) --with python2 --with javahelper --parallel

extra_flags +=  \
  -DCMAKE_VERBOSE_MAKEFILE=ON \
	-DBUILD_DOCUMENTATION=ON \
	-DBUILD_EXAMPLES=ON \
	-DBUILD_SHARED_LIBS=ON \
	-DBUILD_TESTING=OFF \
	-DVTK_USE_TK=ON \
	-DVTK_WRAP_JAVA=ON \
	-DVTK_WRAP_PYTHON=ON \
	-DVTK_WRAP_TCL=ON \
	-DVTK_USE_SYSTEM_EXPAT=ON \
	-DVTK_USE_SYSTEM_FREETYPE=ON \
	-DVTK_USE_SYSTEM_GL2PS=ON \
	-DVTK_USE_SYSTEM_HDF5=ON \
	-DVTK_USE_SYSTEM_JPEG=ON \
	-DVTK_USE_SYSTEM_LIBXML2=ON \
	-DVTK_USE_SYSTEM_OGGTHEORA=ON \
	-DVTK_USE_SYSTEM_PNG=ON \
	-DVTK_USE_SYSTEM_TIFF=ON \
	-DVTK_USE_SYSTEM_ZLIB=ON \
	-DVTK_USE_SYSTEM_JSONCPP=ON \
	-DVTK_USE_SYSTEM_NETCDF=ON \
	-DVTK_EXTRA_COMPILER_WARNINGS=ON \
	-DVTK_Group_Imaging=ON \
	-DVTK_Group_MPI=ON \
	-DVTK_Group_Qt=ON \
	-DVTK_Group_Tk=ON \
	-DVTK_Group_Views=ON \
	-DVTK_BUILD_ALL_MODULES=ON \
	-DMPI_CXX_INCLUDE_PATH="/usr/include/mpi" \
	-DVTK_INSTALL_LIBRARY_DIR="/usr/lib/$(DEB_HOST_MULTIARCH)" \
	-DVTK_MAKE_INSTANTIATORS=ON \
	-DCMAKE_EXE_LINKER_FLAGS="-Wl,--as-needed" \
	-DCMAKE_MODULE_LINKER_FLAGS="-Wl,--as-needed" \
	-DCMAKE_SHARED_LINKER_FLAGS="-Wl,--as-needed" \
	-DCMAKE_BUILD_TYPE=None \
	-DVTK_USE_GCC_VISIBILITY=ON \

qt4_archs = armel armhf
ifeq (,$(filter $(DEB_HOST_ARCH),$(qt4_archs)))
	extra_flags += -DVTK_QT_VERSION=5
else
	extra_flags += -DVTK_QT_VERSION=4
endif

override_dh_auto_configure:
	dh_auto_configure -- $(extra_flags)

override_dh_auto_clean:
	dh_auto_clean
	rm -rf $(BUILDDIR)

override_dh_auto_build:
	dh_auto_build
	# Make doc (see wiki/VTK/debian/buildingDoxygen)
	cd $(BUILDDIR) && make DoxygenDoc 
	# remove .md5 files
	find $(BUILDDIR)/Utilities/Doxygen/doc/html/ -name "*.md5" | xargs rm -f

override_dh_auto_install:
	dh_auto_install -X.pyc -X.pyo
	# Modify vtkWrapJava.cmake to properly upload JavaDependencies.cmake.in	from $VTK_DIR
	perl -pi -e "s|{dir}/JavaDependencies.cmake.in\"|{VTK_DIR}/JavaDependencies.cmake.in\"|" debian/tmp/usr/lib/cmake/vtk-6.1/vtkWrapJava.cmake
	# Correct headers for paraview
	perl -pi.bak -e "s|cxx|include|g" ThirdParty/netcdf/vtk_netcdfcpp.h
	mv $(CURDIR)/debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/vtk.jar $(CURDIR)/debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/vtk6.jar
	mv $(CURDIR)/debian/build/bin/vtkpython $(CURDIR)/debian/build/bin/vtk6python
	sed -i -e "s/FATAL_ERROR/STATUS/g" $(CURDIR)/debian/tmp/usr/lib/cmake/vtk-6.1/VTKTargets.cmake
	chrpath -d $(CURDIR)/debian/build/bin/vtk6python
	chrpath -d $(CURDIR)/debian/build/bin/pvtk
	chrpath -d $(CURDIR)/debian/build/bin/pvtkpython
	mv $(CURDIR)/debian/tmp/usr/bin/vtk $(CURDIR)/debian/tmp/usr/bin/vtk6
	find $(CURDIR)/debian/tmp/ -name "*.pyc" | xargs rm -f
	find $(CURDIR)/debian/tmp/ -name "*.pyo" | xargs rm -f
	find $(CURDIR)/debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH) -name *TCL* -exec mv {} $(CURDIR)/debian/tmp/usr/lib/ \;
	rename 's/\.so.*/.so/'  $(CURDIR)/debian/tmp/usr/lib/*
