#!/usr/bin/make -f

pcpgui = pcp-gui
pcpdoc = pcp-doc

dirgui = debian/$(pcpgui)
dirdoc = debian/$(pcpdoc)
zip = @export GZIP=-9q
pkggui = $(zip); export DIST_ROOT=`pwd`/$(dirgui);
pkgdoc = $(zip); export DIST_ROOT=`pwd`/$(dirdoc);

options = export DEBUG=-DNDEBUG DISTRIBUTION=debian;
checkdir = test -f debian/rules
uninstall = cat debian/*.install | sed -e "s,^,debian/$(pcpgui)/," | xargs rm -f
uninstalldirs =	debian/$(pcpgui)/usr/share/doc/pcp-doc/html/images \
		debian/$(pcpgui)/usr/share/doc/pcp-doc/html/importdata \
		debian/$(pcpgui)/usr/share/doc/pcp-doc/html/diskmodel \
		debian/$(pcpgui)/usr/share/doc/pcp-doc/html/pmie \
		debian/$(pcpgui)/usr/share/doc/pcp-doc/html/pmview \
		debian/$(pcpgui)/usr/share/doc/pcp-doc/html \
		debian/$(pcpgui)/usr/share/doc-base
uninstalld = rmdir $(uninstalldirs)

build: built
built: config
	@echo "== dpkg-buildpackage: build" 1>&2
	$(MAKE) default
	touch built

config: .census
.census:
	@echo "== dpkg-buildpackage: configure" 1>&2
	$(checkdir)
	$(options) $(MAKE) configure
	touch .census

clean:
	@echo "== dpkg-buildpackage: clean" 1>&2
	$(checkdir)
	-rm -f built .census
	$(MAKE) distclean
	-rm -rf $(dirgui) $(dirdoc)
	-rm -f debian/*substvars debian/files* debian/*.debhelper

binary-indep: binary-arch

binary-arch: checkroot built
	@echo "== dpkg-buildpackage: binary-arch" 1>&2
	$(checkdir)
	-rm -rf $(dirgui) $(dirdoc)
	$(pkggui) $(MAKE) -C . install
	$(pkggui) $(MAKE) -C build pcp-gui.src

	dh_installdocs
	dh_installchangelogs
	dh_installdirs
	dh_install --sourcedir=debian/$(pcpgui)
	@$(uninstall)
	@$(uninstalld)
	dh_strip
	dh_compress
	dh_fixperms
	dh_makeshlibs -N $(pcpgui)
	dh_makeshlibs --package $(pcpgui)
	dh_installdeb
	dh_shlibdeps 2>/dev/null # qmake doesn't allow an explicit library list
	dh_gencontrol

	dh_md5sums
	dh_builddeb

binary: binary-indep binary-arch

checkroot:
	test 0 -eq `id -u`

.PHONY: binary binary-arch binary-indep clean checkroot
