#!/usr/bin/make -f

SHLIBVER = 2.0.8

DEB_HOST_ARCH_CPU ?= $(shell dpkg-architecture -qDEB_HOST_ARCH_CPU)
DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)

confflags = --disable-rpath --enable-sdl-dlopen \
            --disable-nas --disable-esd --disable-arts \
            --disable-alsa-shared --disable-pulseaudio-shared \
            --enable-ibus \
            --disable-x11-shared --disable-video-directfb \
            --enable-video-opengles \
            --enable-video-wayland --disable-wayland-shared \
	    --enable-video-mir

# disable autoheader (invoked automatically by autoreconf), necessary in order
# to use debhelper compat level v10 without overriding dh-autoreconf calls
export AUTOHEADER := /bin/true


ifeq ($(DEB_HOST_ARCH_CPU),powerpc)
  confflags += --disable-altivec
endif

ifeq ($(DEB_HOST_ARCH_CPU),ppc64el)
  confflags += --disable-altivec
endif

# disable Wayland and Vulkan on non-Linux, they do not support other kernels at the moment
ifeq (hurd,$(findstring hurd,$(DEB_HOST_ARCH_CPU)))
  confflags += --disable-video-vulkan
  confflags += --disable-video-wayland
endif
ifeq (kfreefsd,$(findstring kfreebsd,$(DEB_HOST_ARCH_CPU)))
  confflags += --disable-video-vulkan
  confflags += --disable-video-wayland
endif

# disable OpenGLES on Hurd, it does not support it at the moment
ifeq (hurd,$(findstring hurd,$(DEB_HOST_ARCH_CPU)))
  confflags += --disable--video-opengles
endif

# for reproducible builds, timestamps_in_tarball
SOURCE_DATE := $(shell dpkg-parsechangelog --show-field=Date)


%:
	dh $@

override_dh_auto_configure:
	dh_auto_configure -- $(confflags)

override_dh_auto_build-indep:
	GZIP="-9n" tar czf debian/examples.tar.gz test --owner=0 --group=0 --mode=go=rX,u+rw,a-s --clamp-mtime --mtime="$(SOURCE_DATE)" --sort=name
	doxygen docs/doxyfile
	# useless files
	find output -name "*.md5" -delete
	find output -type d -empty -delete

	find output -name "jquery.js" -delete
	dh_link -plibsdl2-doc usr/share/javascript/jquery/jquery.js usr/share/doc/libsdl2-doc/html/jquery.js

override_dh_auto_build-arch:
	dh_auto_build -- V=1

override_dh_auto_clean-indep:
	dh_auto_clean
	rm -f debian/examples.tar.gz
	rm -rf output

override_dh_missing:
	dh_missing --fail-missing -XlibSDL2.la -XlibSDL2main.la -XlibSDL2_test.la

override_dh_link:
        # to address lintian warning
        # W: libsdl2-2.0-0: dev-pkg-without-shlib-symlink usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0.0.0 usr/lib/x86_64-linux-gnu/libSDL2-2.0.so
	dh_link -plibsdl2-dev usr/lib/$(DEB_HOST_MULTIARCH)/libSDL2-2.0.so.0 usr/lib/$(DEB_HOST_MULTIARCH)/libSDL2-2.0.so
	dh_link --remaining-packages

override_dh_makeshlibs:
	dh_makeshlibs -V"libsdl2-2.0-0 (>= $(SHLIBVER))"

override_dh_strip:
	dh_strip --dbgsym-migration='libsdl2-dbg (<< 2.0.4+dfsg2-1~)'

override_dh_installchangelogs:
	dh_installchangelogs -- WhatsNew.txt
