#!/usr/bin/make -f

include /usr/share/cdbs/1/class/makefile.mk
include /usr/share/cdbs/1/class/autotools.mk
include /usr/share/cdbs/1/rules/debhelper.mk

DEB_CONFIGURE_EXTRA_FLAGS := \
  --with-runtime-dir=/usr/share/matita \
	--prefix=/usr/ \
	--with-dbhost=FAKE_HOST
DEB_DESTDIR := debian/tmp/
DEB_DH_INSTALL_SOURCEDIR := $(DEB_DESTDIR)
DEB_DH_COMPRESS_ARGS := -X.pdf
# don't perform regular installation
DEB_MAKE_INSTALL_TARGET :=
OCAMLABI=$(shell ocamlc -version)

common-install-arch::
	# install matita
	make install-arch DESTDIR=$(DEB_DESTDIR) MATITA_CFLAGS=-noinnertypes
	# generate manpages
	mkdir -p $(DEB_DESTDIR)/usr/share/man/man1/
	MATITA_RT_BASE_DIR=debian/tmp/usr/share/matita/ \
	help2man --name="Matita interative theorem prover - batch compiler" -N \
		$(DEB_DESTDIR)/usr/share/matita/matitac \
		| gzip -9 > $(DEB_DESTDIR)/usr/share/man/man1/matitac.1.gz
	MATITA_RT_BASE_DIR=debian/tmp/usr/share/matita/ \
	help2man --name="Matita interative theorem prover - cleanup tool" -N \
		$(DEB_DESTDIR)/usr/share/matita/matitaclean \
		| gzip -9 > $(DEB_DESTDIR)/usr/share/man/man1/matitaclean.1.gz
	MATITA_RT_BASE_DIR=debian/tmp/usr/share/matita/ \
	help2man --name="Matita interative theorem prover - dependency analyzer" -N \
		$(DEB_DESTDIR)/usr/share/matita/matitadep \
		| gzip -9 > $(DEB_DESTDIR)/usr/share/man/man1/matitadep.1.gz
	if [ -e  $(DEB_DESTDIR)/usr/share/matita/matitac.opt ]; then\
		ln -s /usr/share/man/man1/matitac.1.gz \
			$(DEB_DESTDIR)/usr/share/man/man1/matitac.opt.1.gz;\
	fi
	# install .opt .byte (symlinks are installed with .install
	mkdir -p debian/matita/usr/bin/
	cp matita/matita.byte debian/matita/usr/bin/ || true
	cp matita/matitac.byte debian/matita/usr/bin/ || true
	cp matita/matita.opt debian/matita/usr/bin/ || true
	cp matita/matitac.opt debian/matita/usr/bin/ || true
	# make depend on the interpreter if needed
	if [ ! -e matita/matitac.opt ]; then \
	        echo "interpreter:Depends=ocaml-base-nox-$(OCAMLABI)" \
	                >> debian/matita.substvars; \
	else \
	        echo "interpreter:Depends=" \
	                >> debian/matita.substvars; \
	fi


common-install-indep::
	# doc generation and installation
	mkdir -p debian/matita-doc/usr/share/doc/matita-doc/
	make -C matita/help/C/ install DESTDIR=$(shell pwd)/debian/matita-doc/usr/share/doc/matita-doc/
	# install matita library
	make install-indep DESTDIR=$(DEB_DESTDIR) MATITA_CFLAGS=-noinnertypes
