#!/usr/bin/make -f

srcpkg = $(shell LC_ALL=C dpkg-parsechangelog | grep '^Source:' | cut -d ' ' -f 2,2)
debver = $(shell LC_ALL=C dpkg-parsechangelog | grep '^Version:' | cut -d ' ' -f 2,2 )
upstreamver = $(shell echo $(debver) | cut -d '-' -f 1,1 )

# this figures out the last merge point from 'master' into the Debian branch and
# then described this commit relative to the last release tag (V...)
# If this should make any sense the local upstream branch must track upstream's
# master or whatever other source branch.
gitver = $(shell [ -x /usr/bin/git ] && git describe --tags --match 'v[0-9].*' $$(git merge-base -a HEAD upstream) | sed -e 's/^v//' -e 's/-/+git/')

export DH_VERBOSE = 1
export PYBUILD_NAME = indexed-gzip

export PYBUILD_BEFORE_TEST=cp -vr {dir}/tests {build_dir}
export PYBUILD_TEST_ARGS = --niter 1

# one ring to rule them all ...
%:
	dh $@ --with python2,python3 --buildsystem=pybuild


clean::
	dh_clean
	# hand clean generated C code
	-rm indexed_gzip.c tests/*.c
	# Ahhhhhhh!
	rm -rf .pybuild build
	-rm -rf indexed_gzip.egg-info/

override_dh_install:
	dh_install
	# tests leave a bit of trash behind
	-find debian/ -name 'ctest_zran*.gz' -delete

# make orig tarball from repository content
get-orig-source:
	# orig tarball, turn directory into something nicer
	git archive --format=tar --prefix=$(srcpkg)-$(gitver)/ HEAD | \
		gzip -9 > $(srcpkg)_$(gitver).orig.tar.gz

# check that DSC patches still apply
maint-check-dsc-patches:
	@for p in debian/patches/*-dsc-patch; \
		do echo "check $$p"; \
		patch -p1 --dry-run < $$p || exit 1 ; \
	done

