#!/usr/bin/make -f

DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
DEB_HOST_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)

confflags := --prefix=/usr \
	     --with-mysql-includes=/usr/include/mysql \
	     --with-qt-includes=/usr/include/qt3
ifeq ($(DEB_BUILD_GNU_TYPE),$(DEB_HOST_GNU_TYPE))
	confflags += --build=$(DEB_BUILD_GNU_TYPE)
else
	confflags += --build=$(DEB_BUILD_GNU_TYPE) --host=$(DEB_HOST_GNU_TYPE)
endif

CXXFLAGS := -Wall -g
ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
	CXXFLAGS += -O0
else
	CXXFLAGS += -O2
endif

configure: configure-stamp
configure-stamp:
	dh_testdir
	
	# update configuration files & relibtoolizing
	autoreconf -i

	ln -sf /usr/share/misc/config.sub /usr/share/misc/config.guess .
	./configure $(confflags)

	touch configure-stamp

build: build-arch build-indep
build-arch: build-stamp
build-indep: build-stamp
build-stamp: configure
	dh_testdir

	$(MAKE) CXXFLAGS='$(CXXFLAGS)' QTDIR='/usr/share/qt3'

	touch build-stamp

clean:
	dh_testdir
	rm -f build-stamp configure-stamp debian/mysql-navigator/usr/bin/mysql-navigator

	[ ! -f Makefile ] || $(MAKE) clean
	[ ! -f Makefile ] || $(MAKE) distclean
	find . -name "*_moc.cpp" -exec rm '{}' ';'
	rm -f config.sub config.guess
	rm -f include/*.h

	dh_clean

install: build
	dh_testdir
	dh_testroot
	dh_prep
	dh_installdirs

	$(MAKE) install DESTDIR=$(CURDIR)/debian/mysql-navigator

	# Install the html documentation, excluding CVS dirs
	install -d \
	  $(CURDIR)/debian/mysql-navigator/usr/share/doc/mysql-navigator/Using_MySQL_Navigator
	cd "doc/Using MySQL Navigator" && tar --create --exclude CVS --file - . | \
	  (cd $(CURDIR)/debian/mysql-navigator/usr/share/doc/mysql-navigator/Using_MySQL_Navigator \
	   && tar xBf -)

	# Install icon and desktop file
	install -d $(CURDIR)/debian/mysql-navigator/usr/share/pixmaps
	install -d $(CURDIR)/debian/mysql-navigator/usr/share/applications
	install -m 0644 pics/database.xpm $(CURDIR)/debian/mysql-navigator/usr/share/pixmaps/mysql-navigator.xpm
	install -m 0644 debian/desktop $(CURDIR)/debian/mysql-navigator/usr/share/applications/mysql-navigator.desktop

binary-indep: build install

binary-arch: build install
	dh_testdir
	dh_testroot
	dh_installdocs
	dh_installman		debian/mysqlnavigator.1
	dh_installchangelogs	ChangeLog
	dh_installmenu
	dh_link
	dh_strip
	dh_compress
	dh_fixperms
	dh_installdeb
	dh_shlibdeps
	dh_gencontrol
	dh_md5sums
	dh_builddeb

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