#!/usr/bin/make -f

include /usr/share/dpkg/pkg-info.mk

# Strip everything after + or ~. e.g. ~dfsg.2-1 +20260912
PROJECT_UPSTREAM_VERSION := $(firstword $(subst +, ,$(subst ~,+,$(DEB_VERSION_UPSTREAM))))
ifeq ($(DEB_DISTRIBUTION),UNRELEASED)
	# If UNRELEASED, append .dev0
	export SETUPTOOLS_SCM_PRETEND_VERSION_FOR_DERIVATIVE_DIST_COMPARE := $(PROJECT_UPSTREAM_VERSION).dev0
else
	export SETUPTOOLS_SCM_PRETEND_VERSION_FOR_DERIVATIVE_DIST_COMPARE := $(PROJECT_UPSTREAM_VERSION)
endif

PYTHON3_DEFAULT := $(shell py3versions -vd)

%:
	dh ${@} --buildsystem=pybuild

execute_after_dh_auto_clean:
	# help pybuild
	rm -rf *.egg-info

execute_after_dh_auto_install:
	# removing uneeded files
	rm -rf debian/derivative-dist-compare/usr/lib/python3*/dist-packages/derivative_dist_compare*-info/licenses
	rm -rf debian/derivative-dist-compare/usr/lib/python3*/dist-packages/derivative_dist_compare/tests

execute_after_dh_bash-completion:
	# Generate bash-completions with shtab
	PYTHONPATH=debian/derivative-dist-compare/usr/lib/python$(PYTHON3_DEFAULT)/dist-packages:$(PYTHONPATH) \
	shtab --shell=bash -u derivative_dist_compare.main._get_parser --error-unimportable --prog derivative-dist-compare \
		> debian/derivative-dist-compare.bash-completion

execute_after_dh_installman:
	# Generate man page from argparse
	mkdir -p debian/derivative-dist-compare/usr/share/man/man1

	PYTHONPATH=debian/derivative-dist-compare/usr/lib/python$(PYTHON3_DEFAULT)/dist-packages:$(PYTHONPATH) \
	argparse-manpage --module derivative_dist_compare.main --function _get_parser \
		--version "$(DEB_VERSION_UPSTREAM)" \
		--output debian/derivative-dist-compare/usr/share/man/man1/derivative-dist-compare.1

gentarball:
	# Generate orig.tar.xz
	git archive --format=tar HEAD --prefix=$(DEB_SOURCE)-$(DEB_VERSION_UPSTREAM)/ ":!debian" | xz > ../$(DEB_SOURCE)_$(DEB_VERSION_UPSTREAM).orig.tar.xz
