#!/usr/bin/make -f
export DH_VERBOSE=1

include /usr/share/dpkg/default.mk

build: build-arch build-indep
build-arch: build-process
build-indep: build-process

build-process:
	# Build static library
	dh_testdir
	dh_auto_configure -- \
		-DBUILD_SHARED_LIBS=OFF \
		-DBUILD_EXAMPLES=OFF \
		-DSUITESPARSE_LIBRARY_DIR_HINTS=/usr/lib/${DEB_HOST_MULTIARCH}/ \
		-DSUITESPARSE_INCLUDE_DIR_HINTS=/usr/include/suitesparse/ \
		-DCXSPARSE_LIBRARY_DIR_HINTS=/usr/lib/${DEB_HOST_MULTIARCH}/ \
		-DCXSPARSE_INCLUDE_DIR=/usr/include/suitesparse/ \
		-DBUILD_DOCUMENTATION=OFF
	dh_auto_build --parallel
	dh_auto_test --parallel
	mv -v ${CURDIR}/obj-*/lib/libceres.a ${CURDIR}/debian/
	mv -v ${CURDIR}/obj-*/config/ceres/internal/config.h ${CURDIR}/debian/
	# Build shared library + documentation
	dh_testdir
	dh_auto_configure -- \
		-DBUILD_SHARED_LIBS=ON \
		-DBUILD_EXAMPLES=OFF \
		-DSUITESPARSE_LIBRARY_DIR_HINTS=/usr/lib/${DEB_HOST_MULTIARCH}/ \
		-DSUITESPARSE_INCLUDE_DIR_HINTS=/usr/include/suitesparse/ \
		-DCXSPARSE_LIBRARY_DIR_HINTS=/usr/lib/${DEB_HOST_MULTIARCH}/ \
		-DCXSPARSE_INCLUDE_DIR=/usr/include/suitesparse/ \
		-DBUILD_DOCUMENTATION=ON
	dh_auto_build --parallel
	dh_auto_test --parallel
	# Create build stamp
	touch ${CURDIR}/build-process

%:
	dh $@ 

override_dh_clean:
	rm -vf ${CURDIR}/build-process ${CURDIR}/debian/libceres.a
	dh_clean

override_dh_compress:
	dh_compress -X.cc -X.h

override_dh_install:
	mkdir -vp ${CURDIR}/debian/libceres-dev/usr/lib ${CURDIR}/debian/libceres-dev/usr/include/ceres/internal
	mv -v ${CURDIR}/debian/libceres.a ${CURDIR}/debian/libceres-dev/usr/lib/
	mv -v ${CURDIR}/debian/config.h ${CURDIR}/debian/libceres-dev/usr/include/ceres/internal/
	dh_install

override_dh_installdocs:
	# make lintian happy
	# http://cdn.mathjax.org/mathjax/latest -> /usr/share/javascript/mathjax
	sed -i 's/https:\/\/cdn.mathjax.org\/mathjax\/latest/\/usr\/share\/javascript\/mathjax/g' $(CURDIR)/debian/tmp/usr/share/doc/ceres/html/*.html
	
	# docs/html/_static/underscore.js	-> /usr/share/javascript/underscore/underscore.min.js
	rm -f $(CURDIR)/debian/tmp/usr/share/doc/ceres/html/_static/underscore.js
	ln -s /usr/share/javascript/underscore/underscore.min.js $(CURDIR)/debian/tmp/usr/share/doc/ceres/html/_static/underscore.js
	
	# docs/html/_static/jquery.js		-> /usr/share/javascript/jquery/jquery.min.js
	rm -f $(CURDIR)/debian/tmp/usr/share/doc/ceres/html/_static/jquery.js
	ln -s /usr/share/javascript/jquery/jquery.min.js $(CURDIR)/debian/tmp/usr/share/doc/ceres/html/_static/jquery.js

	dh_installdocs

get-orig-source:
	uscan --verbose --force-download --rename --destdir .

.PHONY: get-orig-source build
