#!/usr/bin/make -f
# MAde with the aid of dh_make, by Craig Small
# Sample debian/rules that uses debhelper. GNU copyright 1997 by Joey Hess.
# Some lines taken from debmake, by Cristoph Lameter.

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

#export DH_COMPAT=3

include /usr/share/dpkg/pkg-info.mk
export DEB_VERSION_UPSTREAM
export DEB_UPSTREAM_VERSION

VERS:=$(shell cat debian/changelog |grep ^cxref|head -n 1|cut -f2 -d\ |tr -d '()[a-z]')

DPKG_EXPORT_BUILDFLAGS=1

# Ensure texlive respects SOURCE_DATE_EPOCH
export FORCE_SOURCE_DATE=1

# Force locale to avoid differences when building with obscure locales
export LC_ALL=C.UTF-8

include /usr/share/dpkg/buildflags.mk

DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH)

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

#	For (non-)usrmerge build reproducibility
	GREP="/bin/grep" EGREP="$GREP -E" \
	./configure --prefix=/usr --mandir=/usr/share/man --enable-us-paper \
		--datadir=/etc
	$(MAKE) 

	touch build-stamp

clean:
	dh_testdir
	dh_testroot
	rm -f build-stamp install-stamp

	[ ! -f Makefile ] || $(MAKE) distclean
	-rm -f cxref-inst
	-rm -f *~ \
	README.c.sty README.c.src.html README.c.tex README.c.html README.c.rtf README.c.sgml \
	cxref.function cxref.include cxref.apdx.html cxref.apdx.tex cxref.typedef cxref.variable \
	cxref.aux cxref.dvi cxref.log cxref.toc cxref.html cxref.sty cxref.tex fonts.sty page.sty \
        README_c.tex config.log
	rm -f src/README.man doc/README.dvi doc/FAQ.html
	rm -f cpp/foo.c doc/README.c.html doc/README.c.rtf doc/README.c.sgml doc/README.c.src.html \
		doc/README.ps doc/README_c.tex
	debconf-updatepo
	dh_clean

install: install-stamp
install-stamp: build-stamp
	dh_testdir
	dh_testroot
	dh_prep
	dh_installdirs

	rm -f src/README.man
	cp doc/README.man src

	$(MAKE) install DESTDIR=`pwd`/debian/tmp
	$(MAKE) docs DESTDIR=`pwd`/debian/tmp

#	Remove log file (contains non-reproducible timestamp) 
	rm -f doc/example/cxref.log

# 	Remove build path from documentation
	find doc/ -type f -exec sed -i -e "s,$(CURDIR),BUILDPATH,g" '{}' \;

	mkdir -p debian/tmp/usr/share/cxref
	mv debian/tmp/etc/cxref/cxref-cpp.defines debian/tmp/usr/share/cxref

	mkdir -p debian/tmp/usr/share/emacs/site-lisp/cxref
	cp contrib/*.el debian/tmp/usr/share/emacs/site-lisp/cxref

	mv debian/tmp/usr/bin/cxref-cpp debian/tmp/usr/bin/cxref-cpp.upstream
	cp debian/cxref-cpp.wrap debian/tmp/usr/bin/cxref-cpp
	chmod +x debian/tmp/usr/bin/cxref-cpp

	mkdir -p debian/tmp/usr/lib/emacsen-common/packages/compat
	echo 0 >debian/tmp/usr/lib/emacsen-common/packages/compat/cxref-emacs

#	cat debian/cxref-emacs-pkg.el.in |
#		sed "s,@VERS@,$(VERS),1" >
#		debian/tmp/usr/share/emacs/site-lisp/cxref/cxref-emacs-pkg.el

#	mkdir -p debian/tmp/etc/cxref
#	cp debian/config debian/tmp/etc/cxref
#	chmod 644 debian/tmp/etc/cxref/config

	dh_install

	touch install-stamp

# Build architecture-independent files here.
binary-indep: build install
	dh_testdir -i
	dh_testroot -i
	dh_installdocs -i
	dh_installexamples -i -Xdoc/COPYING
	dh_installmenu -i
	dh_installemacsen -i
#	dh_elpa -i -v
	dh_installcron -i
	dh_installchangelogs ./ChangeLog -i
	dh_strip -i
	dh_compress -i
	dh_fixperms -i
	dh_installdeb -i
	dh_shlibdeps -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_installdocs -a
	dh_installexamples -a
	dh_installmenu -a
	dh_installemacsen -a
#	dh_elpa -a
	dh_installcron -a
	dh_installman -p cxref debian/cxref-cc.1
	dh_installchangelogs ./ChangeLog -a
	dh_installdebconf -a
	dh_strip -a
	dh_link -a
	dh_compress -a
	dh_fixperms -a
	dh_installdeb -a
	dh_shlibdeps -a
	dh_gencontrol -a
	dh_md5sums -a
	dh_builddeb -a

source diff:                                                                  
	@echo >&2 'source and diff are obsolete - use dpkg-source -b'; false

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

