#!/usr/bin/make -f

include /usr/share/dpkg/architecture.mk
include /usr/share/dpkg/buildopts.mk

export DEB_BUILD_MAINT_OPTIONS = hardening=+all

CONFIGURE_EXTRA = CXX_WERROR=no --with-sqlite3
JOPT=$(addprefix -j,$(DEB_BUILD_OPTION_PARALLEL))

%:
	dh $@

override_dh_auto_configure::
	dh_auto_configure --builddirectory=debian/obj/apl -- \
		$(CONFIGURE_EXTRA)
override_dh_auto_configure::
	dh_auto_configure --builddirectory=debian/obj/libapl -- \
		$(CONFIGURE_EXTRA) --with-libapl

execute_before_dh_auto_build:
	@echo "src/makefile.h in source tree can override built file"
	-rm --verbose src/makefile.h
override_dh_auto_build::
	dh_auto_build --builddirectory=debian/obj/apl -- $(JOPT)
override_dh_auto_build::
	dh_auto_build --builddirectory=debian/obj/libapl -- $(JOPT)

override_dh_auto_test::
	dh_auto_test --builddirectory=debian/obj/apl
override_dh_auto_test::
	dh_auto_test --builddirectory=debian/obj/libapl

override_dh_auto_install::
	dh_auto_install --builddirectory=debian/obj/apl
override_dh_auto_install::
	dh_auto_install --builddirectory=debian/obj/libapl
execute_after_dh_auto_install:
	@echo "Remove .la files; these are private plugin modules, not public libraries"
	find debian/tmp/usr/lib -name "*.la" -delete
	@echo "Fix shebangs: upstream uses /usr/local/bin/apl; debian uses /usr/bin/."
	@echo 'Handle both "#!/usr/local/bin/apl" and "#! /usr/local/bin/apl" forms'
	find debian/tmp/usr/lib -name "*.apl" | \
	    xargs grep -lP '^#!\s*/usr/local/bin/apl' | \
	    xargs -r sed -i 's|^#!\s*/usr/local/bin/apl|#!/usr/bin/apl|'
	@echo "APL workspace files are library files loaded via )LOAD, not standalone scripts;"
	@echo "ensure they are not executable"
	find debian/tmp/usr/lib -name "*.apl" -executable -exec chmod --changes 644 {} +

execute_after_dh_installinfo:
	-rm -f --verbose debian/apl/usr/share/info/dir.gz

override_dh_shlibdeps:
	dh_shlibdeps --dpkg-shlibdeps-params=--ignore-missing-info

override_dh_auto_clean::
	dh_auto_clean --builddirectory=debian/obj/apl
override_dh_auto_clean::
	dh_auto_clean --builddirectory=debian/obj/libapl
