#!/usr/bin/make -f
# debian/rules for abook
# copyright 2003-2012 by Gerfried Fuchs <rhonda@debian.org>
# Licenced under WTFPLv2

#use dpkg-buildflags
DPKG_EXPORT_BUILDFLAGS = 1
include /usr/share/dpkg/buildflags.mk

PKG = abook
TMP = $(CURDIR)/debian/$(PKG)

QUILT_STAMPFN = patch-stamp
include /usr/share/quilt/quilt.make

CFLAGS = -g -Wall -std=gnu89
INSTALL = install
INSTALL_FILE    = $(INSTALL) -p    -oroot -groot -m644
INSTALL_PROGRAM = $(INSTALL) -p    -oroot -groot -m755
INSTALL_SCRIPT  = $(INSTALL) -p    -oroot -groot -m755
INSTALL_DIR     = $(INSTALL) -p -d -oroot -groot -m755
ifneq (,$(filter noopt,$(DEB_BUILD_OPTIONS)))
	CFLAGS += -O0
else
	CFLAGS += -O2
endif
ifeq (,$(filter nostrip,$(DEB_BUILD_OPTIONS)))
	INSTALL_PROGRAM += -s
	STRIP = true
endif
ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
	    NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
	        MAKEFLAGS += -j$(NUMJOBS)
endif



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


clean: unpatch
	$(checkdir)
	$(checkroot)
	rm -rf build-stamp $(TMP) debian/files debian/substvars \
		config.guess config.sub
	[ ! -f Makefile ] || $(MAKE) distclean


build: build-arch
build-arch: build-stamp
build-indep:
build-stamp: patch-stamp
	$(checkdir)
	cp /usr/share/misc/config.guess /usr/share/misc/config.sub .
	./configure --prefix=/usr --mandir=\$${prefix}/share/man \
		 --infodir=\$${prefix}/share/info
	$(MAKE) CFLAGS="$(CFLAGS)"
	touch build-stamp


install: build
	$(checkdir)
	$(checkroot)
	-rm -rf $(TMP)
	$(INSTALL_DIR) $(TMP)
	cd $(TMP) && $(INSTALL_DIR) usr/share/doc/$(PKG)/examples
	$(MAKE) prefix=$(TMP)/usr install INSTALL_PROGRAM="$(INSTALL_PROGRAM)"
	test "$(STRIP)" != true || strip \
		--remove-section=.comment --remove-section=.note \
		$(TMP)/usr/bin/abook
	$(INSTALL_FILE) ChangeLog $(TMP)/usr/share/doc/$(PKG)/changelog
	$(INSTALL_FILE) ANNOUNCE AUTHORS BUGS FAQ README THANKS TODO \
		$(TMP)/usr/share/doc/$(PKG)
	$(INSTALL_FILE) sample.abookrc \
		$(TMP)/usr/share/doc/$(PKG)/examples
	cd $(TMP)/usr/share && gzip -9 man/man1/abook.1 man/man5/abookrc.5 \
		doc/$(PKG)/changelog


# Build architecture-independent files here.
binary-indep: build install
# We have nothing to do by default.


# Build architecture-dependent files here.
binary-arch: build install
	$(checkdir)
	$(checkroot)
	$(INSTALL_DIR) $(TMP)/DEBIAN $(TMP)/usr/share/menu
	$(INSTALL_FILE) debian/menu $(TMP)/usr/share/menu/$(PKG)
	$(INSTALL_FILE) debian/copyright $(TMP)/usr/share/doc/$(PKG)
	$(INSTALL_FILE) debian/changelog \
		$(TMP)/usr/share/doc/$(PKG)/changelog.Debian
	gzip -9 $(TMP)/usr/share/doc/$(PKG)/changelog.Debian
	$(INSTALL_SCRIPT) debian/config debian/postinst debian/postrm \
		$(TMP)/DEBIAN
	po2debconf debian/templates > $(TMP)/DEBIAN/templates
	dpkg-shlibdeps -Tdebian/substvars -dDepends $(TMP)/usr/bin/abook
	dpkg-gencontrol -ldebian/changelog -isp -Tdebian/substvars \
		-p$(PKG) -P$(TMP)
	cd $(TMP) && find * -type f ! -regex '^DEBIAN/.*' -print0 | \
		xargs -r0 md5sum > DEBIAN/md5sums
	dpkg --build $(TMP) ..


binary: binary-indep binary-arch


define checkdir
	test -f debian/rules
endef

define checkroot
	test root = "`whoami`"
endef

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