#!/usr/bin/make -f
#export DH_VERBOSE=1

ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
    NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
    MAKEFLAGS += -j$(NUMJOBS)
endif

Q3ARCH             := $(shell /usr/share/ioquake3/q3arch arch     HOST)
Q3PLATFORM         := $(shell /usr/share/ioquake3/q3arch platform HOST)
Q3COMPILE_ARCH     := $(shell /usr/share/ioquake3/q3arch arch     BUILD)
Q3COMPILE_PLATFORM := $(shell /usr/share/ioquake3/q3arch platform BUILD)

CFLAGS += -fsigned-char

GENERAL_OPTIONS = \
	V=1 \
	BUILD_STANDALONE=1 \
	USE_CODEC_VORBIS=1 \
	USE_CURL=1 \
	USE_CURL_DLOPEN=0 \
	USE_OPENAL=1 \
	USE_OPENAL_DLOPEN=0 \
	USE_VOIP=1 \
	USE_INTERNAL_SPEEX=0 \
	USE_INTERNAL_ZLIB=0 \
	USE_LOCAL_HEADERS=0 \
	ARCH=$(Q3ARCH) \
	PLATFORM=$(Q3PLATFORM) \
	COMPILE_ARCH=$(Q3COMPILE_ARCH) \
	COMPILE_PLATFORM=$(Q3COMPILE_PLATFORM)

TARGET = release

ifneq (,$(filter noopt,$(DEB_BUILD_OPTIONS)))
# near enough
TARGET = debug
# use the release build directory even for a debug build, it makes building
# the package easier
GENERAL_OPTIONS += 'BD=$$(BR)'
endif

ENGINE_OPTIONS = \
	$(GENERAL_OPTIONS) \
	BUILD_GAME_SO=0 \
	BUILD_GAME_QVM=0 \
	BUILD_CLIENT_SMP=1 \
	DEFAULT_BASEDIR=/usr/lib/games/openarena

GAME_OPTIONS = \
	$(GENERAL_OPTIONS) \
	BUILD_CLIENT=0 \
	BUILD_SERVER=0 \
	BUILD_GAME_SO=1 \
	CROSS_COMPILING=1

GAME_081_OPTIONS = \
	$(GAME_OPTIONS) \
	BUILD_DIR=build-0.8.1-compat \
	OPENARENA_081_COMPATIBLE=1

%:
	dh $@

override_dh_auto_build:
	$(MAKE) -C game $(GAME_OPTIONS) $(TARGET)
	$(MAKE) -C game $(GAME_081_OPTIONS) $(TARGET)
	sed \
		-e 's!@IOQ3BINARY@!ioquake3!' \
		-e 's!@IOQ3SELF@!openarena!' \
		-e 's!@IOQ3ROLE@!client!' \
		< debian/scripts/openarena.in > debian/scripts/openarena
	sed \
		-e 's!@IOQ3BINARY@!ioq3ded!' \
		-e 's!@IOQ3SELF@!openarena-server!' \
		-e 's!@IOQ3ROLE@!server!' \
		< debian/scripts/openarena.in > debian/scripts/openarena-server
	chmod +x debian/scripts/openarena
	chmod +x debian/scripts/openarena-server

override_dh_auto_clean:
	rm -f build-stamp
	rm -rf game/build
	rm -rf game/build-0.8.1-compat
	rm -f debian/openarena32.xpm
	rm -f debian/scripts/openarena
	rm -f debian/scripts/openarena-server

override_dh_auto_install:
	install -d debian/tmp/usr/games
	install -d debian/tmp/usr/lib/games/openarena/baseoa/pak0/
	install -d debian/tmp/usr/lib/games/openarena/missionpack/
	install -m644 game/build/release-$(Q3PLATFORM)-$(Q3ARCH)/baseq3/*.so \
		debian/tmp/usr/lib/games/openarena/baseoa/
	install -m644 game/build-0.8.1-compat/release-$(Q3PLATFORM)-$(Q3ARCH)/baseq3/*.so \
		debian/tmp/usr/lib/games/openarena/baseoa/pak0/
	install -m644 game/build/release-$(Q3PLATFORM)-$(Q3ARCH)/missionpack/*.so\
		debian/tmp/usr/lib/games/openarena/missionpack/
	convert -scale 32x32 debian/openarena128.png debian/openarena32.xpm

override_dh_strip:
	dh_strip --dbg-package=openarena-dbg

override_dh_installdocs:
	dh_installdocs -popenarena-dbg --link-doc=openarena-server
	dh_installdocs --remaining-packages
