#!/usr/bin/make -f

# Uncomment this to turn on verbose mode.
# export DH_VERBOSE=1

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

CPPFLAGS:=$(shell dpkg-buildflags --get CPPFLAGS)
CFLAGS:=$(shell dpkg-buildflags --get CFLAGS) $(CPPFLAGS)
CXXFLAGS:=$(shell dpkg-buildflags --get CXXFLAGS) $(CPPFLAGS)
LDFLAGS:=$(shell dpkg-buildflags --get LDFLAGS) -Wl,--as-needed

BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)

# Use this variable to allow options passed to cmake to be overridable.
# WANT_EXAMPLES and WANT_TESTS are set to ON only to check if they build
# successfully, as their source is shipped in the doc package.
DEB_CMAKE_OPTIONS ?= -DCMAKE_VERBOSE_MAKEFILE=ON \
		-DCMAKE_INSTALL_PREFIX="/usr" \
		-DLIB_SUFFIX="/$(DEB_HOST_MULTIARCH)" \
		-DCMAKE_SKIP_RPATH:BOOL=ON \
		-DCMAKE_BUILD_TYPE=Release \
		-DWANT_MODULES=ON \
		-DWANT_OSS=ON \
		-DWANT_ALSA=ON \
		-DWANT_JACK=OFF \
		-DWANT_SGIAUDIO=OFF \
		-DWANT_LINUX_CONSOLE=OFF \
		-DWANT_ALLEGROGL=ON \
		-DWANT_LOADPNG=ON \
		-DWANT_LOGG=ON \
		-DWANT_JPGALLEG=ON \
		-DWANT_TOOLS=ON \
		-DWANT_EXAMPLES=ON \
		-DWANT_TESTS=ON

DOC_DIR ?= usr/share/doc/allegro4-doc/
DOC_INFO_DIR ?= usr/share/info/
DOC_HTML_DIR ?= usr/share/doc/allegro4-doc/html/
DOC_EXAMPLES_DIR ?= usr/share/doc/allegro4-doc/examples/

%:
	dh $@ --builddirectory=build --parallel

override_dh_auto_configure:
	dh_auto_configure -- $(DEB_CMAKE_OPTIONS)

override_dh_auto_install:
	$(MAKE) --directory=build install DESTDIR=$(CURDIR)/debian/tmp
# Move docs to proper location - fixes FSSTND-dir-in-usr
	mkdir -p $(CURDIR)/debian/tmp/$(DOC_DIR)
	mkdir -p $(CURDIR)/debian/tmp/$(DOC_INFO_DIR)
	mkdir -p $(CURDIR)/debian/tmp/$(DOC_HTML_DIR)
	mkdir -p $(CURDIR)/debian/tmp/$(DOC_EXAMPLES_DIR)
	cp $(CURDIR)/debian/tmp/usr/doc/allegro-4.4.2/* $(CURDIR)/debian/tmp/$(DOC_DIR)
	cp $(CURDIR)/debian/tmp/usr/info/allegro.info $(CURDIR)/debian/tmp/$(DOC_INFO_DIR)
	cp build/docs/html/* $(CURDIR)/debian/tmp/$(DOC_HTML_DIR)
# Create examples source tar.gz
	rm -rf build/tmp; mkdir build/tmp
	cp examples/*.c examples/*.h examples/*.dat examples/*.pcx examples/*.txt examples/*.ini tests/*.c build/tmp/
	cd build/tmp; GZIP="-9n" tar zcvf source.tar.gz --mtime="$(BUILD_DATE)" --mode=go=rX,u+rw,a-s *
	cp build/tmp/source.tar.gz $(CURDIR)/debian/tmp/$(DOC_EXAMPLES_DIR)

override_dh_makeshlibs:
	dh_makeshlibs -Xalleg-alsadigi.so -Xalleg-alsamidi.so -Xalleg-dga2.so

override_dh_installchangelogs:
	dh_installchangelogs -k CHANGES
