#!/usr/bin/make -f

export DEB_BUILD_MAINT_OPTIONS = hardening=+all
export DEB_LDFLAGS_MAINT_APPEND = -Wl,-O1 -Wl,-z,defs -Wl,--as-needed
export DEB_CFLAGS_MAINT_APPEND = -Wall

DEB_PARALLEL_JOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
ifneq (,$(DEB_PARALLEL_JOBS))
DEB_MAKE_PARALLEL = -j$(DEB_PARALLEL_JOBS)
else
DEB_MAKE_PARALLEL =
endif

%:
	dh $@ --with gnome

override_dh_clean:
	rm -rf bootstrap
	dh_clean

override_dh_autoreconf:
	# handle timestamp skew
	touch vala/vala.vala.stamp
	dh_autoreconf --as-needed

configure-bootstrap:
	dh_auto_configure --builddirectory=bootstrap/build

bootstrap: configure-bootstrap
	make $(DEB_MAKE_PARALLEL) -C bootstrap/build
	make $(DEB_MAKE_PARALLEL) -C bootstrap/build DESTDIR=$(CURDIR)/bootstrap/install install

override_dh_auto_configure: bootstrap
	find -name '*.vala.stamp' -delete
	LD_LIBRARY_PATH="$(CURDIR)/bootstrap/install/usr/lib/$(DEB_HOST_MULTIARCH):$(CURDIR)/bootstrap/install/usr/lib/$(DEB_HOST_MULTIARCH)/vala-0.42:$$LD_LIBRARY_PATH" \
		dh_auto_configure -- \
			VALAC="$(CURDIR)/bootstrap/install/usr/bin/valac" \
			--enable-unversioned

override_dh_auto_build:
	LD_LIBRARY_PATH="$(CURDIR)/bootstrap/install/usr/lib/$(DEB_HOST_MULTIARCH):$(CURDIR)/bootstrap/install/usr/lib/$(DEB_HOST_MULTIARCH)/vala-0.42:$$LD_LIBRARY_PATH" \
		dh_auto_build

# Make testsuite failures non-fatal for these architectures. The DBus
# tests are failing there and an yet unknown reason.
NO_TESTSUITE_ARCHS := kfreebsd-i386 kfreebsd-amd64 hurd-i386

override_dh_auto_test:
ifeq ($(filter $(DEB_BUILD_ARCH),$(NO_TESTSUITE_ARCHS)),$(DEB_BUILD_ARCH))
	# do not run the tests under fakeroot, that breaks D-Bus
	-LD_PRELOAD= dh_auto_test
else
	LD_PRELOAD= dh_auto_test
endif

override_dh_install:
	find debian -name '*.la' -print -delete
	dh_install

override_dh_missing:
	dh_missing --fail-missing

override_dh_installdocs:
	dh_installdocs -A NEWS README THANKS

override_dh_makeshlibs:
	dh_makeshlibs -- -c4
