#!/usr/bin/make -f

pybasever  := 3.9
pyshortver := 39

export PYBUILD_VERBOSE=1
export DH_VERBOSE=1

export LC_ALL=C.UTF-8
export PYBUILD_DISABLE_python2=1
export PYTHONWARNINGS=i
export NAME=alt-python$(pyshortver)-wheel

version              := 0.37.0
bootstrap            ?= 0
buildroot            := $(CURDIR)/debian/tmp
pypi_name            := wheel
_prefix              := /opt/alt/python$(pyshortver)
_bindir              := ${_prefix}/bin
__alt_pythonXY       := ${_bindir}/python3
_libdir              := ${_prefix}/lib
_datadir             := ${_prefix}/share
_mandir              := ${_datadir}/man
python_wheeldir      := ${_datadir}/python-wheels
python_wheelname     := ${pypi_name}-${version}-py2.py3-none-any.whl
alt_pythonXY_sitelib := $(shell $(__alt_pythonXY) -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(True))")
CFLAGS='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic'
LDFLAGS='-Wl,-z,relro '
export PYTHONPATH="${_bindir}:${_libdir}:${alt_pythonXY_sitelib}:${python_wheeldir}"

%:
	dh $@

override_dh_auto_configure:

override_dh_auto_build:
	patch -p1 < debian/patches/CVE-2022-40898.patch
	$(__alt_pythonXY) setup.py build --executable="$(__alt_pythonXY) -s"
ifeq ($(bootstrap),0)
	$(__alt_pythonXY) setup.py bdist_wheel
endif


override_dh_auto_install:
	$(__alt_pythonXY) setup.py install -O1 --skip-build --root $(buildroot)
	mv ${buildroot}${_bindir}/${pypi_name} ${buildroot}${_bindir}/${pypi_name}-$(pybasever)
	cd ${buildroot}${_bindir}; ln -s ${pypi_name}-$(pybasever) ${buildroot}${_bindir}/${pypi_name}-3
	cd ${buildroot}${_bindir}; ln -s ${pypi_name}-3 ${buildroot}${_bindir}/${pypi_name}
ifeq (${bootstrap},0)
	mkdir -p ${buildroot}/${python_wheeldir}
	install -p dist/${python_wheelname} -t ${buildroot}${python_wheeldir}
endif

	dh_movefiles -palt-python$(pyshortver)-$(pypi_name) \
		.$(_bindir)/* \
		.$(alt_pythonXY_sitelib)/$(pypi_name)-$(version)-py$(pybasever).egg-info \
		.$(alt_pythonXY_sitelib)/$(pypi_name)/

	dh_installdocs -palt-python$(pyshortver)-$(pypi_name) \
		LICENSE.txt \
		MANIFEST.in \
		PKG-INFO \
		README.rst

ifeq (${bootstrap},0)
	dh_movefiles -palt-python$(pyshortver)-$(pypi_name)-$(pypi_name) \
		.$(python_wheeldir)/$(python_wheelname)

	dh_installdocs -palt-python$(pyshortver)-$(pypi_name)-$(pypi_name) \
		LICENSE.txt
endif

override_dh_auto_clean:
override_dh_auto_test:

override_dh_builddeb:
	dh_builddeb
	if [ $(shell find $(buildroot) -type f | wc -l) -gt 0 ]; then \
		echo "Installed but unpackaged:"; \
		find $(buildroot) -type f -exec echo "{}" \; | sed -e 's#$(buildroot)##g'; \
		exit 1; \
	fi
