#!/usr/bin/make -f
# -*- makefile -*-

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

DEBDIR = ..

# These are used for cross-compiling and for saving the configure script
# from having to guess our platform (since we know it already)
DEB_HOST_GNU_TYPE   ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
DEB_BUILD_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)


CFLAGS = -Wall -g -Werror

ifneq (,$(findstring logdebug,$(DEB_BUILD_OPTIONS)))
	CFLAGS += -DOSSOLOG_COMPILE -DOSSOLOG_STDOUT -DDEBUG
else
	CFLAGS += -DG_DEBUG_DISABLE=1
endif

ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
	CFLAGS += -O0
else
	CFLAGS += -O2
endif
ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
	INSTALL_PROGRAM += -s
endif

ifneq (,$(findstring maemo-launcher,$(DEB_BUILD_OPTIONS)))
	LAUNCHER = yes
endif

ifeq ("$(strip $(LAUNCHER))", "yes")
	LAUNCHER_DEPENDS = -Vlauncher:Depends="maemo-launcher"
	LAUNCHER_CFLAGS = $(shell pkg-config --cflags maemo-launcher-app)
	LAUNCHER_LDFLAGS = $(shell pkg-config --libs maemo-launcher-app) -export-dynamic
endif

config.status: configure
	dh_testdir
	CFLAGS="$(CFLAGS)" ./configure \
		--host=$(DEB_HOST_GNU_TYPE) \
		--build=$(DEB_BUILD_GNU_TYPE) \
		--prefix=/usr \
		--mandir=\$${prefix}/share/man \
		--infodir=\$${prefix}/share/info

configure: configure-stamp
configure-stamp:
	dh_testdir
	autoreconf --install --force
	touch configure-stamp

build: build-stamp

build-stamp:  config.status
	dh_testdir

	$(MAKE) \
	  MAEMO_LAUNCHER_CFLAGS="$(LAUNCHER_CFLAGS)" \
	  MAEMO_LAUNCHER_LDFLAGS="$(LAUNCHER_LDFLAGS)"

	touch build-stamp

clean:
	dh_testdir
	dh_testroot
	rm -f build-stamp 

	-$(MAKE) distclean
ifneq "$(wildcard /usr/share/misc/config.sub)" ""
	cp -f /usr/share/misc/config.sub config.sub
endif
ifneq "$(wildcard /usr/share/misc/config.guess)" ""
	cp -f /usr/share/misc/config.guess config.guess
endif


	dh_clean 

install: build
	dh_testdir
	dh_testroot
	dh_clean -k 
	dh_installdirs

	$(MAKE) install DESTDIR=$(CURDIR)/debian/tmp

ifeq "$(strip $(LAUNCHER))" "yes"
	mv $(CURDIR)/debian/tmp/usr/bin/Mahjong \
	   $(CURDIR)/debian/tmp/usr/bin/Mahjong.launch
	ln -s /usr/bin/maemo-invoker \
	   $(CURDIR)/debian/tmp/usr/bin/Mahjong
	ln -s /usr/bin/maemo-invoker \
	   $(CURDIR)/debian/tmp/usr/bin/mahjong_startup
	ln -s /usr/bin/osso_games_startup.launch \
	   $(CURDIR)/debian/tmp/usr/bin/mahjong_startup.launch
endif

binary-indep: build install

binary-arch: build install
	dh_testdir
	dh_testroot
	dh_installchangelogs
	dh_installdocs
	dh_install -v --sourcedir=debian/tmp
	dh_link
	dh_strip --dbg-package=osso-mahjong
	dh_compress
	dh_fixperms
	dh_installdeb
	dh_shlibdeps
	dh_gencontrol -- $(LAUNCHER_DEPENDS)
	dh_md5sums
	dh_builddeb --destdir=$(DEBDIR)

binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary install 
