#!/usr/bin/make -f
# Sample debian/rules that uses debhelper. 
# GNU copyright 1997 by Joey Hess.
#
# This version is for a hypothetical package that builds an
# architecture-dependant package, as well as an architecture-independent
# package.

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

# This is the debhelper compatibility version to use.
export DH_COMPAT=3

# For Qt builds, build-dep: libqt3-compat-headers, libqt3-dev | libqt3-mt-dev
#DESKTOP := Qt
#GUI     := qt

# For Gtk 2 builds, build-dep: libgtk2.0-dev
DESKTOP := GTK2
GUI     := gtk2

DESTDIR   = $(CURDIR)/debian/roadmap
BUILDFLAGS = \
  INSTALLDIR=/usr \
  desktopdir=/usr/share/applnk/Applications \
  DESKTOP=$(DESKTOP)

include /usr/share/dpatch/dpatch.make

ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS)))
	CFLAGS += -g
endif
ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
	INSTALL_PROGRAM += -s
endif

configure: configure-stamp
configure-stamp: patch-stamp
	dh_testdir
	# Add here commands to configure the package.

	touch configure-stamp

manual.html: README
# Generate help file, try to use aptconvert, and download it if that
# fails.  aptconvert is missing in Debian at the moment, so I use wget
# to fetch it for now.  It is used at run time to show the help text.
	if aptconvert -toc manual.html README ; then \
		: ; \
	else \
		rm -f manual.html; \
		wget http://roadmap.digitalomaha.net/manual.html ; \
	fi


build-arch: configure-stamp  build-arch-stamp
build-arch-stamp: manual.html
	dh_testdir

	# Add here command to compile/build the package.
	$(MAKE) -C src $(BUILDFLAGS)

	touch build-arch-stamp

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

	# Add here command to compile/build the arch indep package.
	# It's ok not to do anything here, if you don't need to build
	#  anything for this package.
	#/usr/bin/docbook-to-man debian/roadmap.sgml > roadmap.1

	touch build-indep-stamp

build: build-arch build-indep

clean: unpatch
	dh_testdir
	dh_testroot
	rm -f build-arch-stamp build-indep-stamp configure-stamp

	# Don't use $(BUILDFLAGS) to clean up all modules at once
	-$(MAKE) -C src clean

	dh_clean

install: DH_OPTIONS=
install: build
	dh_testdir
	dh_testroot
	dh_clean -k
	dh_installdirs

	# Add here commands to install the package into debian/roadmap.
	$(MAKE) -C src/$(GUI) $(BUILDFLAGS) DESTDIR=$(DESTDIR) pkgbindir=/usr/lib/roadmap install

	# Remove symlinks and move binaries in place
	cd $(DESTDIR)/usr/bin; \
		rm roadmap roadgps ; \
		mv gtkroadmap roadmap ; \
		mv gtkroadgps roadgps		

	install -m644 manual.html $(DESTDIR)/usr/share/roadmap/manual.html

	dh_movefiles --sourcedir=debian/roadmap

# Build architecture-independent files here.
# Pass -i to all debhelper commands in this target to reduce clutter.
binary-indep: build install
	dh_testdir -i
	dh_testroot -i
	dh_installdebconf -i
	dh_installdocs -i
	dh_installexamples -i
	dh_installmenu -i
	dh_installcron -i
	dh_installman -i
	dh_installinfo -i
	dh_installchangelogs -i
	dh_link -i
	dh_compress -i
	dh_fixperms -i
	dh_installdeb -i
	dh_gencontrol -i
	dh_md5sums -i
	dh_builddeb -i

# Build architecture-dependent files here.
binary-arch: build install
	dh_testdir -a
	dh_testroot -a
	dh_installdebconf -a
	dh_installdocs -a
	dh_installexamples -a
	dh_installmenu -a
	dh_installcron -a
	dh_installman -a
	dh_installinfo -a
	dh_installchangelogs -a
	dh_strip -a
	dh_link -a
	dh_compress -a
	dh_fixperms -a
#	dh_makeshlibs -a
	dh_installdeb -a
	dh_shlibdeps -a
	dh_gencontrol -a
	dh_md5sums -a
	dh_builddeb -a

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