#!/usr/bin/make -f

# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1

cfgflags =
cfgflags += CPIO=/bin/cpio
cfgflags += MKE2FS=/sbin/mke2fs
cfgflags += ZCAT=/bin/zcat

override_dh_auto_configure:
	dh_auto_configure -- --disable-network-tests $(cfgflags)

override_dh_auto_build:
	# Use musl-gcc where available. Otherwise work around #843714: GCC
	# cannot build static binaries using the pie-specific spec files added
	# by dpkg on (at least) powerpc, ppc64, sh4, sparc64.
	if which musl-gcc >/dev/null; then \
		dh_auto_build -- -C init CC=musl-gcc ; \
	else \
		eval $$(DEB_BUILD_MAINT_OPTIONS=hardening=-pie dpkg-buildflags --export=sh | grep '^export LDFLAGS') ; \
		dh_auto_build -- -C init LDFLAGS=$$(LDFLAGS) ; \
	fi
	dh_auto_build

override_dh_auto_test:
	dh_auto_test -- SKIP_TEST_EXECSTACK=1

override_dh_gencontrol:
	dh_gencontrol -- -Vmisc:Built-Using="$(shell dpkg-query -f '$${source:Package} (= $${source:Version}), ' -W $(if $(shell which musl-gcc),musl-tools,libc-dev-bin))"

override_dh_dwz:
	dh_dwz -X/usr/bin/supermin

# Don't destroy supermin binary if it has been produced by the OCaml
# bytecode compiler
override_dh_strip override_dh_strip_nondeterminism:
	-which ocamlc.opt > /dev/null && $(patsubst override_%,%,$@)

%:
	dh $@ --with=ocaml
