#!/usr/bin/make -f
export SHELL := /bin/bash
export DH_VERBOSE = 1
export DH_OPTIONS = -v

altdir := /opt/alt/php71
testdir := /opt/alt/tests/alt-php71-pecl-igbinary_$(shell dpkg-parsechangelog | grep Version: | cut -d' ' -f2-)

DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
CPPFLAGS = $(shell dpkg-buildflags --get CFLAGS | sed -e "s/-Wformat//;s/-Werror=format-security//")
export CFLAGS := $(CPPFLAGS)
export CXXFLAGS := $(CPPFLAGS)
LDFLAGS = $(shell dpkg-buildflags --get LDFLAGS)
export PATH := $(altdir)/usr/bin:${PATH}


CPPFLAGS += -Wno-error=array-bounds

# Fix install-headers: autoconf 2.72 $SED bug (bash 5.2 on D13 exposes this)
export SED := /usr/bin/sed

export EXTRA_LDFLAGS=$(LDFLAGS)
export EXTRA_CFLAGS=$(CPPFLAGS)

buildroot := $(CURDIR)/debian/tmp
_sourcedir := debian/src
_prefix := /usr
_libdir := $(altdir)/usr/lib/$(DEB_HOST_MULTIARCH)
_headerdir := $(altdir)/usr/include/php/ext/igbinary
_inifile := igbinary.ini
_headerfile := igbinary.h
_phpheaderfile := php_igbinary.h
_sysconfdir := $(altdir)/etc
_unitdir := /lib/systemd/system
NJOBS := -j$(shell getconf _NPROCESSORS_ONLN)

%:
	dh $@

override_dh_auto_build:
	mv $(shell ls -trd -- */ | head -n 1)* .
	rm -rf ./tests/igbinary_019.phpt
	rm -rf ./tests/igbinary_059.phpt
	rm -rf ./tests/igbinary_060.phpt
	rm -rf ./tests/igbinary_bug72134.phpt
	rm -rf ./tests/igbinary_061.phpt
	rm -rf ./tests/igbinary_067.phpt
	rm -rf ./tests/igbinary_070.phpt
	rm -rf ./tests/igbinary_072.phpt
	rm -rf ./tests/igbinary_074.phpt
	rm -rf ./tests/igbinary_009b_php8.phpt
	rm -rf ./tests/igbinary_075.phpt
	rm -rf ./tests/igbinary_065.phpt
	rm -rf ./tests/igbinary_089.phpt
	rm -rf ./tests/igbinary_089_32bit.phpt
	rm -rf ./tests/igbinary_unserialize_v1_compatible.phpt


	$(altdir)/usr/bin/phpize
	./configure --with-libdir=$(DEB_HOST_MULTIARCH)
	make $(NJOBS)
	echo ";Enable igbinary extension module" > $(_inifile)
	echo "extension=igbinary.so" >> $(_inifile)

override_dh_auto_install:
	mkdir -p $(buildroot)$(_headerdir)
	install -d $(buildroot)$(_sysconfdir)/php.d.all
	install -d $(buildroot)$(testdir)/tests
	make install INSTALL_ROOT=$(buildroot)
	install -D -m 644 $(_headerfile) $(buildroot)$(_headerdir)/$(_headerfile)
	install -D -m 644 $(_phpheaderfile) $(buildroot)$(_headerdir)/$(_phpheaderfile)
	install -D -m 644 $(_headerfile) $(buildroot)$(_headerdir)/src/php7/$(_headerfile)
	install -D -m 644 $(_phpheaderfile) $(buildroot)$(_headerdir)/src/php7/$(_phpheaderfile)
	install -D -m 644 $(_inifile) $(buildroot)$(_sysconfdir)/php.d.all/$(_inifile)
	cp -r tests/* $(buildroot)$(testdir)/tests/

	dh_movefiles -palt-php71-pecl-igbinary \
		.$(_sysconfdir)/php.d.all/*.ini \
		.$(_libdir)/php/modules/* \
		.$(_headerdir)/*

	dh_movefiles -palt-php71-pecl-igbinary-tests \
		.$(testdir)

override_dh_auto_test:

override_dh_missing:
	dh_missing --fail-missing

override_dh_auto_clean:
	rm -rf .cache
