#!/usr/bin/make -f

# See debhelper(7) (uncomment to enable).
# Output every command that modifies files on the build system.

export LC_ALL=C

TZGEN := $(CURDIR)/tzgen

#export DH_VERBOSE = 1


# See FEATURE AREAS in dpkg-buildflags(1).
#export DEB_BUILD_MAINT_OPTIONS = hardening=+all

# See ENVIRONMENT in dpkg-buildflags(1).
# Package maintainers to append CFLAGS.
#export DEB_CFLAGS_MAINT_APPEND  = -Wall -pedantic
# Package maintainers to append LDFLAGS.
#export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed


%:
	dh $@


# dh_make generated override targets.
# This is an example for Cmake (see <https://bugs.debian.org/641051>).
#override_dh_auto_configure:
#	dh_auto_configure -- \
#	-DCMAKE_LIBRARY_PATH=$(DEB_HOST_MULTIARCH)

override_dh_auto_build-indep:
	# Generate a tzdata.zi and leapseconds file
	$(MAKE) AWK=gawk BACKWARD="backward" PACKRATDATA=backzone PACKRATLIST=zone.tab VERSION_DEPS= tzdata.zi leapseconds

	# Build the timezone data
	/usr/sbin/zic -b fat -d $(TZGEN) -L /dev/null tzdata.zi
	/usr/sbin/zic -b fat -d $(TZGEN)/right -L leapseconds tzdata.zi

	# Replace hardlinks by symlinks
	grep '^L ' $(CURDIR)/tzdata.zi | while read L target name ; do \
		absolute_name="$(TZGEN)/$$name"; \
		relative_target=$$(realpath -m -s --relative-to="$${absolute_name%/*}" "$(TZGEN)/$$target"); \
		ln -sf "$$relative_target" "$(TZGEN)/$$name" ; \
		ln -sf "$$relative_target" "$(TZGEN)/right/$$name" ; \
	done

	# Generate a posixrules file
	ln -s America/New_York $(TZGEN)/posixrules

	debian/generate_debconf_templates -d "$(TZGEN)" > debian/tzdata.templates
	debconf-updatepo

# The upstream tests are related to the sources. Just skip it.
override_dh_auto_test:
	debian/test_timezone_conversions -z "$(TZGEN)"
	PYTHONTZPATH="$(TZGEN)" debian/tests/python
	debian/check_translations debian/po/*.po

override_dh_auto_install:
	mkdir -p debian/tmp/usr/share/zoneinfo
	cp -r tzgen/* debian/tmp/usr/share/zoneinfo

override_dh_auto_clean:
	-rm -rf $(TZGEN)
	dh_auto_clean

override_dh_installchangelogs:
	dh_installchangelogs NEWS