#!/usr/bin/make -f

#$Id: rules,v 1.24 2004/07/28 09:54:31 braeucup Exp $

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

# This is the debhelper compatability version to use.
export DH_COMPAT=3

ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
        CFLAGS += -O0
else
        CFLAGS += -O2
endif
ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
        INSTALL_PROGRAM += -s
endif

ifndef PERL
PERL = /usr/bin/perl
endif

ifeq (,$(wildcard /usr/bin/po2debconf))
PO2DEBCONF := no
MINDEBCONFVER := 0.5
else
PO2DEBCONF := yes
MINDEBCONFVER := 1.2.0
endif

archlib =`$(PERL) -MConfig -e 'print $$Config{installarchlib}'`

build: build-stamp
build-stamp:
	dh_testdir

	perl Makefile.PL INSTALLDIRS=vendor
	$(MAKE) OPTIMIZE="-O2 -g -Wall"
	$(MAKE) -C amavis-milter CFLAGS="$(CFLAGS)"
	$(MAKE) -C doc

	touch build-stamp

clean:
	dh_testdir
	dh_testroot
	rm -f build-stamp

	-$(MAKE) clean
	-$(MAKE) -C amavis-milter clean
	-$(MAKE) -C doc clean
ifeq ($(PO2DEBCONF),yes)
	# Hack for woody compatibility. This makes sure that the
	# debian/templates file shipped in the source package doesn't
	# specify encodings, which woody's debconf can't handle. If building
	# on a system with po-debconf installed (conveniently debhelper (>=
	# 4.1.16) depends on it), the binary-arch target will generate a
	# better version for sarge.
	echo 1 > debian/po/output
	po2debconf debian/amavis-ng.templates.master > debian/amavis-ng.templates
	rm -f debian/po/output
endif
	dh_clean

install: build
	dh_testdir
	dh_testroot
	dh_clean -k
	dh_installdirs

	$(MAKE) install PREFIX=$(CURDIR)/debian/amavis-ng/usr

	# Remove CVS files
	-find `pwd`/debian/{amavis-ng,amavis-ng-milter-helper} -name CVS | xargs rm -rf

	# Remove all *.pl scripts.
	-find `pwd`/debian -name \*.pl | xargs rm -f

	# Create initial directory structure
	install -d -m750 \
		`pwd`/debian/amavis-ng/etc/amavis-ng \
		`pwd`/debian/amavis-ng/usr/share/amavis-ng \
		`pwd`/debian/amavis-ng/var/log/amavis-ng \
		`pwd`/debian/amavis-ng/var/run/amavis-ng \
		`pwd`/debian/amavis-ng/var/spool/amavis-ng/quarantine \
		`pwd`/debian/amavis-ng/var/spool/amavis-ng/problems \
		`pwd`/debian/amavis-ng-milter-helper/usr/sbin

	install -m644 etc/amavis.conf \
		`pwd`/debian/amavis-ng/etc/amavis-ng/amavis.conf

	install -m644 magic.mime amavis-filter \
		`pwd`/debian/amavis-ng/usr/share/amavis-ng/

	# Install helper program into own package
	install -m755 \
		`pwd`/amavis-milter/amavis-milter \
		`pwd`/debian/amavis-ng-milter-helper/usr/sbin/

binary-indep: build install
	dh_testdir -i
	dh_testroot -i
	dh_installdebconf -i
	dh_installdocs -i
	dh_installman -i
	dh_installinfo -p amavis-ng `pwd`/doc/amavis-ng.info
	dh_installexamples -i
	dh_installlogrotate -i
	dh_installinit -i
	dh_installcron -i
	dh_installchangelogs -i
	dh_link -i
	dh_compress -i
	dh_fixperms -i
	dh_installdeb -i
	dh_perl -i
ifeq ($(PO2DEBCONF),yes)
	po2debconf -e utf8 debian/amavis-ng.templates.master > debian/amavis-ng.templates
endif
	dh_gencontrol -i -- -V'debconf-depends=debconf (>= $(MINDEBCONFVER))'
	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_installman -a
	dh_strip -a
	dh_installchangelogs -a
	dh_link -a
	dh_compress -a
	dh_fixperms -a
	dh_makeshlibs -a
	dh_installdeb -a
#	dh_perl -a
	dh_shlibdeps -a
ifeq ($(PO2DEBCONF),yes)
	po2debconf -e utf8 debian/amavis-ng.templates.master > debian/amavis-ng.templates
endif
	dh_gencontrol -a -- -V'debconf-depends=debconf (>= $(MINDEBCONFVER))'
	dh_md5sums -a
	dh_builddeb -a

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