#!/usr/bin/make -f
# -*- makefile -*-

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

include /usr/share/ocaml/ocamlvars.mk

DESTDIR := $(CURDIR)/debian/tmp

ifeq ($(OCAML_NATDYNLINK),yes)
  OPT_CONFFLAGS := --enable-natdynlink
else
  OPT_CONFFLAGS := --disable-natdynlink
endif

# This should test OCAML_HAVE_OCAMLOPT, but camlp4 usage seems to
# force dynlink...
ifeq ($(OCAML_NATDYNLINK),yes)
  BUILD_TARGET := all
  INSTALL_TARGET := install
else
  BUILD_TARGET := byte
  INSTALL_TARGET := install.byte
endif

BUILD_DOC := $(if $(findstring ocsigenserver-doc,$(shell dh_listpackages)),yes,no)

%:
	dh $@ --with ocaml

.PHONY: override_dh_auto_configure
override_dh_auto_configure:
	mkdir -p local/etc
	sh configure \
	    --temproot $(DESTDIR) \
	    --prefix /usr \
	    --bindir /usr/bin \
	    --libdir $(OCAML_STDLIB_DIR) \
	    --mandir /usr/share/man/man1 \
	    --docdir /usr/share/doc/ocsigenserver/api-html \
	    --staticpagesdir /usr/share/ocsigenserver \
	    --ocsigen-user ocsigen \
	    --ocsigen-group ocsigen \
	    $(OPT_CONFFLAGS)

.PHONY: override_dh_auto_build
override_dh_auto_build:
	$(MAKE) $(BUILD_TARGET)
ifeq ($(BUILD_DOC),yes)
	$(MAKE) doc
endif

.PHONY: override_dh_auto_install
override_dh_auto_install:
	$(MAKE) $(INSTALL_TARGET) CHOWN=/bin/true OCSIGENUSER=root OCSIGENGROUP=root
	$(MAKE) logrotate
ifeq ($(BUILD_DOC),yes)
	$(MAKE) install.doc
endif

.PHONY: override_dh_install
override_dh_install:
	dh_install --fail-missing -X.sample

.PHONY: override_dh_auto_clean
override_dh_auto_clean:
	[ ! -f Makefile.config ] || $(MAKE) distclean
