#!/usr/bin/make -f

BUILDDIR = $(CURDIR)/debian/build

# To enable all, uncomment following line
# DEB_BUILD_MAINT_OPTIONS:= hardening=+all,-pie
CXXFLAGS:= -fPIC $(shell dpkg-buildflags --get CXXFLAGS)
DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)

export QT_SELECT=5

LIBDIR=/usr/lib/$(DEB_HOST_MULTIARCH)
AUTOGENERATED:= libmagplus3v5.links libmagics++-dev.links libmagplus3v5.install
# Uncomment this to turn on verbose mode.
export DH_VERBOSE=1

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

export extra_flags +=  \
	-DCMAKE_PREFIX_PATH=${LIBDIR}/cmake/grib_api \
	-DBUILD_SITE=debian \
	-DENABLE_LIBGD=1 \
	-DHAVE_BOOST=1 \
	-DHAVE_DLFCN_H=1 \
	-DHAVE_INTTYPES_H=1 \
	-DHAVE_LIBEXPAT=1 \
	-DHAVE_LIBGRIB_API=1 \
	-DHAVE_LIBPROJ=1 \
	-DHAVE_LIBPTHREAD=1 \
	-DHAVE_LIBZ=1 \
	-DHAVE_MEMORY_H=1 \
	-DHAVE_STDINT_H=1 \
	-DHAVE_STDLIB_H=1 \
	-DHAVE_STRINGS_H=1 \
	-DHAVE_STRING_H=1 \
	-DHAVE_SYS_STAT_H=1 \
	-DHAVE_STS_TYPES_H=1 \
	-DHAVE_UNISTD_H=1 \
	-DMAGICS_ALLHEADERS=1 \
	-DMAGICS_GRIB=1 \
	-DMAGICS_JSON=1 \
	-DMAGICS_METVIEW=1 \
	-DMAGICS_GIF=1 \
	-DMAGICS_GIF_ANIMATED=1 \
	-DMAGICS_TIFF=1 \
	-DMAGICS_TTF=1 \
	-DMAGICS_TTF_PATH="share/magics/ttf/" \
	-DMAGICS_SITE="debian" \
	-DMAGICS_PYTHON=1 \
	-DMAGICS_THREADS=1 \
	-DDISABLE_OS_CHECK=ON \
	-DCMAKE_INSTALL_PREFIX=/usr \
	-DCMAKE_VERBOSE_MAKEFILE=ON \
	-DBUILD_DOCUMENTATION=ON \
	-DENABLE_FORTRAN=ON \
	-DENABLE_LARGE_FILE_SUPPORT=ON \
	-DENABLE_PYTHON=ON \
	-DBUILD_EXAMPLES=ON \
	-DBUILD_SHARED_LIBS=ON \
	-DENABLE_TESTS=ON \
	-DENABLE_GEOTIFF=ON \
	-DENABLE_RPATHS=OFF \
	-DENABLE_CAIRO=ON \
	-DENABLE_BUFR=ON \
	-DENABLE_GRIB=ON \
	-DENABLE_METVIEW=ON \
	-DENABLE_QT5=ON \
	-DENABLE_NETCDF=ON \
	-DCMAKE_CXX_FLAGS='$(CXXFLAGS) -I/usr/include/terralib -I/usr/include/terralib/kernel -I/usr/include/geotiff' \
	-DMAGICS_EXTRA_LIBRARIES='-lterralib -lgd -lemosR64' 

export LD_LIBRARY_PATH:=$(CURDIR)/debian/tmp/usr/lib:$(LD_LIBRARY_PATH)

override_dh_auto_clean:
	find . -type l -delete
	rm -f src/params/*.h src/decoders/*Attributes.h
	rm -rf share/magics/ttf src/terralib debian/build
	rm -f $(patsubst %, debian/%, ${AUTOGENERATED})

override_dh_auto_configure:
	# link for font for tesing.
	mkdir -p share/fonts/truetype/ttf-dejavu/
	ln -sf /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf share/fonts/truetype/ttf-dejavu/
	# Link terralib
	[ -e src/terralib ] || ln -sf  /usr/include/terralib src/terralib
	for f in ${AUTOGENERATED} ; do \
                sed -e 's%@ARCH@%${DEB_HOST_MULTIARCH}%g' < debian/$$f.in  > debian/$$f ; \
                done
	dh_auto_configure -- $(extra_flags)
	(cd python/Magics && ln -s $(BUILDDIR)/python/Magics/Magics.i )

override_dh_auto_test check:
	# echo "Tests disabled; see README-testfailures.txt for details"
	# (ulimit -s 8192; export PYTHONPATH=$(shell pwd)/swig ; export MAGPLUS_HOME=$(shell pwd) ; $(MAKE) check )

override_dh_auto_install:
	$(MAKE) -C debian/build/python/Magics clean install PYTHON_INCLUDE_DIR=/usr/include/python2.7 \
			DESTDIR=$(CURDIR)/debian/python-magics++ \ MAGPLUS_HOME=$(CURDIR) 
	dh_auto_install
	# Move lib stuff
	mkdir -p debian/tmp/$(LIBDIR)
	cp -a debian/tmp/usr/lib/*.a debian/tmp/usr/lib/pkgconfig debian/tmp/$(LIBDIR)
	cp debian/tmp/usr/lib/libMagPlus.so debian/tmp/$(LIBDIR)/libMagPlus.so.3.0.0
	# Fixup the cmake files.
	mkdir -p debian/tmp/$(LIBDIR)/cmake/magics
	cp -a debian/tmp/usr/share/magics/cmake/* debian/tmp/$(LIBDIR)/cmake/magics
	sed -e 's%$${_IMPORT_PREFIX}/lib%$(LIBDIR)%' \
		< debian/tmp/usr/share/magics/cmake/magics-targets-none.cmake \
	| sed -e 's%$${_IMPORT_PREFIX}/bin%/usr/bin%' \
		> debian/tmp/$(LIBDIR)/cmake/magics/magics-targets-none.cmake
	rm -r debian/tmp/usr/share/magics/cmake
	dh_python2 /usr/lib/python2.7/site-packages/Magics
	dh_numpy -p python-magics++
	find debian/tmp debian/python-magics++  -name '*.so*' -exec chrpath -d {} \;
	-find debian/tmp/usr/bin -type f  -exec chrpath -d {} \;
