#!/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.

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

# This has to be exported to make some magic below work.
export DH_OPTIONS


# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
export DEB_HOST_GNU_TYPE?=$(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
export DEB_BUILD_GNU_TYPE?=$(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)

INSTALL_DIR = install -p -d -o root -g root -m 755
INSTALL_FILE = install -p -o root -g root -m 644
INSTALL_SCRIPT = install -p -o root -g root -m 755
INSTALL_BIN = install -p -o root -g root -m 755

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

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

configure: config-stamp
config-stamp: Makefile.cvs configure.in
	dh_testdir

	./configure \
		--build=$(DEB_BUILD_GNU_TYPE) \
		--host=$(DEB_HOST_GNU_TYPE)   \
		--prefix=/usr                 \
		--includedir=/usr/include/fem \
		--mandir=/usr/share/man

	touch config-stamp
	if test -f build-stamp; then rm build-stamp; fi
	if test -f  install-stamp; then rm install-stamp; fi

doc: doc-stamp
doc-stamp: freefem.doxygen
	doxygen freefem.doxygen
#	cd freefem-api/latex && make 
	cd doc && pdflatex freefem && makeindex freefem && pdflatex freefem && pdflatex freefem
	cd doc && \
		rm -rf freefem && \
		mkdir freefem && \
		hevea -fix -o freefem/freefem.hevea freefem.tex && \
		cd freefem && \
		hacha freefem.hevea && \
		rm -f freefem.hevea *.haux *.hind *.htoc
	touch doc-stamp

build:  configure doc build-stamp 
build-stamp:
	dh_testdir
	cd freefem && $(MAKE) 
	touch build-stamp

clean:
	dh_testdir
	dh_testroot
	-test -r /usr/share/misc/config.sub   && cp -f /usr/share/misc/config.sub admin/config.sub
	-test -r /usr/share/misc/config.guess && cp -f /usr/share/misc/config.guess admin/config.guess
	-rm -f doc-stamp build-stamp install-stamp config-stamp
	-rm -f debian/*.debhelper
	-$(MAKE) distclean
	-cd doc/ && rm -rf freefem *.aux *.log *.out *.idx *.dvi *.ind *.ilg
	-cd freefem-api && rm -rf latex html man
	dh_clean

install: install-stamp
install-stamp: build-stamp
	dh_testdir
	dh_testroot
	dh_clean -k
	dh_installdirs
	$(MAKE) install DESTDIR=`pwd`/debian/tmp
	@mkdir -p `pwd`/debian/tmp/usr/share/doc/freefem-doc/freefem
	@for i in doc/freefem/*.{tex,html,css,png,gif}; do \
	 install -m 644 $$i `pwd`/debian/tmp/usr/share/doc/freefem-doc/freefem/;\
	done
	install -m 644 doc/freefem.pdf `pwd`/debian/tmp/usr/share/doc/freefem-doc 
	@mkdir -p `pwd`/debian/tmp/usr/share/man/man3
	@for i in freefem-api/man/man3/*; do \
	 install -m 644 $$i `pwd`/debian/tmp/usr/share/man/man3;\
	done
	@mkdir -p `pwd`/debian/tmp/usr/share/doc/libfreefem-doc/html
	@for i in freefem-api/html/*; do \
	 install -m 644 $$i `pwd`/debian/tmp/usr/share/doc/libfreefem-doc/html;\
	done
	cd  `pwd`/debian/tmp/usr/share/doc/freefem && ln -sf ../freefem-examples/examples/
#	install -m 644 freefem-api/latex/refman.pdf `pwd`/debian/libfreefem-doc/usr/share/doc/libfreefem-doc/
#	touch install-stamp

binary-indep: build install
	dh_testdir
	dh_testroot
	dh_install -i
	dh_installexamples -p freefem-examples `find examples -name "*.pde"`
	dh_installdocs -i
	dh_installchangelogs -p libfreefem-doc ChangeLog
	dh_installchangelogs -p freefem-doc ChangeLog
	dh_installchangelogs -p freefem-examples ChangeLog
#	@touch `pwd`/debian/libfreefem-doc/usr/share/doc/libfreefem-doc/html/.dhelp
	dh_compress -i -Xpdf -X.css -Xpng -Xgif -X.bz2
	dh_installdeb -i
	dh_fixperms -i
	dh_gencontrol -i
	dh_md5sums -i
	dh_builddeb -i

binary-arch: build install
	dh_testdir
	dh_testroot
	dh_installdocs -a
	dh_install -a
	@rm -rf `pwd`/debian/tmp/usr/include
	dh_installchangelogs -a
	dh_installchangelogs -p freefem ChangeLog
	dh_installchangelogs -p libfreefem ChangeLog
	dh_installchangelogs -p libfreefem-dev ChangeLog
	dh_link -a
	dh_strip -a
	dh_compress -a
	dh_fixperms -a
	dh_makeshlibs -a
	dh_installdeb -a
	dh_shlibdeps -a -ldebian/libfreefem0/usr/lib
	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 clean binary-indep binary-arch binary install doc configure
