#!/usr/bin/make -f

CGAP = /usr/bin/gap

export DEB_BUILD_MAINT_OPTIONS=hardening=+all

DEB_PKG_VERSION := $(shell dpkg-parsechangelog -S Version)
DEB_SRC_VERSION := $(firstword $(subst -, ,$(DEB_PKG_VERSION)))
UPS_PKG_VERSION := $(firstword $(subst +, ,$(DEB_SRC_VERSION)))
UPS_PKG_GITCOMMIT := $(subst g,,$(filter g%,$(subst +, ,$(DEB_SRC_VERSION))))
DEB_BUILD_GAP_BUILD_DATETIME := $(shell LC_ALL=C date -u -d @$(SOURCE_DATE_EPOCH) +"%F %T (%Z) (Debian $(DEB_PKG_VERSION))")

export DEB_BUILD_MULTIARCH ?= $(shell dpkg-architecture -qDEB_BUILD_MULTIARCH)
DEB_BUILD_GAP_INFO_ARCH ?= $(shell echo 'Print(GAPInfo.Architecture);' | $(CGAP) -q -A -T)

export ACLOCAL_PATH=/usr/share/gnulib/m4

default:
	@uscan --no-conf --dehs --report || true

%:
	dh $@ --with autoreconf --builddirectory=_build --parallel

override_dh_auto_configure:
	# preamble: none
	# amble:
	dh_auto_configure -B _build -- --with-gap_system_arch=$(DEB_BUILD_GAP_INFO_ARCH)
	# postamble: based on the dist-hook target.
	cp -t _build/src $(wildcard src/*.h src/*.c src/*.s)
	scripts/libGAPify.py --modify _build/src
	sed -i -e 's/SyKernelVersion = "[0-9]*\.[0-9]*\.[0-9]*"/SyKernelVersion = "$(UPS_PKG_VERSION)"/g' _build/src/system.c
	sed -i \
			-e 's/GAP_BUILD_VERSION  "libgap-[0-9]*\.[0-9]*\.[0-9]*"/GAP_BUILD_VERSION  "libgap-$(UPS_PKG_VERSION)"/g' \
			-e 's/GAP_BUILD_DATETIME "\(.*\)"/GAP_BUILD_DATETIME "$(DEB_BUILD_GAP_BUILD_DATETIME)"/g' \
		_build/src/gap_version.h
	$(foreach _t, $(wildcard test/*.c) , sed -f debian/adhoc/scripts/libGAPify-test.sed $(_t) > _build/$(_t) ;)

override_dh_auto_configure-indep:
	@true

override_dh_auto_build-indep:
	@true

override_dh_auto_test-indep:
	@true

override_dh_installchangelogs:
	dh_installchangelogs --keep pkgextra/GitChangeLog

override_dh_compress-indep:
	dh_compress -X.pdf -Xexamples

get-orig-source:
	debian/get-orig-source.sh --upstream-version $(UPS_PKG_VERSION) --upstream-commit-id $(UPS_PKG_GITCOMMIT)
