#!/usr/bin/make -f

export DPKG_GENSYMBOLS_CHECK_LEVEL = 4

include /usr/share/dpkg/default.mk
include /usr/share/rustc/architecture.mk
export CFLAGS CXXFLAGS CPPFLAGS LDFLAGS
export DEB_HOST_RUST_TYPE DEB_HOST_GNU_TYPE
export PATH := /usr/share/cargo/bin:$(PATH)
export CARGO=/usr/share/cargo/bin/cargo
export CARGO_HOME=$(CURDIR)/debian/cargo_home
export DEB_CARGO_CRATE=$(DEB_SOURCE)_$(DEB_VERSION_UPSTREAM)
export DEB_BUILD_MAINT_OPTIONS=hardening=+bindnow

# Disable lto on 32-bit arches since it OOMs otherwise
ifeq ($(DEB_HOST_ARCH_BITS),32)
export DEB_BUILD_OPTIONS += optimize=-lto
endif

# Disable tests because we cannot run bwrap in a container environment like unshare or schroot
CONFIGURE_FLAGS = \
	-Dtests=false \
	$(NULL)

%:
	dh $@

execute_after_dh_auto_clean:
	rm -rf debian/cargo_registry

override_dh_auto_configure:
	$(CARGO) prepare-debian debian/cargo_registry --link-from-system
	rm -f Cargo.lock
	dh_auto_configure -- \
		-Dhost_arch="$(DEB_HOST_RUST_TYPE)" \
		$(CONFIGURE_FLAGS)

# Give the tests more time on slow arches
override_dh_auto_test:
	dh_auto_test -- --timeout-multiplier 5
