#!/usr/bin/make -f
# Sample debian/rules that uses debhelper. 
# GNU copyright 1997 by Joey Hess.
#
# This version is for a hypothetical package that builds an
# architecture-dependant package, as well as an architecture-independent
# package.

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

# This is the debhelper compatibility version to use.
# not needed debian/compat = 4
#export DH_COMPAT=4

# The architecture-dependent portion of this package can be built separately
# (i.e. without building the rest). However, buildd's don't seem to do this.
# Their loss, not mine!

CFLAGS=-O2 -Wall


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

PERL = /usr/bin/perl

packagea = spamc
packagei = spamassassin

# For building both spamc and spamassassin

configure: configure-stamp
configure-stamp:

	dh_testdir

	perl Makefile.PL INSTALLDIRS=vendor \
	 DESTDIR=$(CURDIR)/debian/$(packagei) \
	 CONFDIR=/etc/spamassassin \
	 ENABLE_SSL=yes < /dev/null

	touch configure-stamp

build: build-indep build-arch

install: install-indep install-arch

binary: binary-indep binary-arch

clean:
	dh_testdir
	dh_testroot
	rm -f build-indep-stamp build-arch-stamp configure-stamp

	-$(MAKE) veryclean

	rm -f spamd/spamc.1p
	-rm -Rf t/log/*

	dh_clean

debian/po/templates.pot: debian/spamassassin.templates
	-debconf-updatepo

# Spamassassin ONLY

build-indep: build-indep-stamp
build-indep-stamp: configure debian/po/templates.pot

	dh_testdir

	$(MAKE) CFOPTIMIZE="$(CFLAGS)" CFCCFLAGS="" CFLIBS="" CFLDFLAGS=""

	touch build-arch-stamp

	touch build-indep-stamp

install-indep: DH_OPTIONS=
install-indep: build-indep
	dh_testdir
	dh_testroot
	dh_clean -k
	dh_installdirs -i

	$(MAKE) install


# Get rid of SPAMC stuff.

	rm debian/$(packagei)/usr/bin/spamc debian/$(packagei)/usr/share/man/man1/spamc.1p

#	cp spamproxy/README debian/$(packagei)/usr/share/doc/$(packagei)/README.spamproxy
	cp sql/README debian/$(packagei)/usr/share/doc/$(packagei)/README.sql

	cp debian/logcheck debian/$(packagei)/etc/logcheck/ignore.d.paranoid/spamassassin

	cp debian/65_debian.cf debian/$(packagei)/usr/share/spamassassin/65_debian.cf

	cp INSTALL debian/$(packagei)/usr/share/doc/spamassassin/SETUP

	sed 's#SPAMD 1#SPAMD 8#' \
	 debian/$(packagei)/usr/share/man/man1/spamd.1p \
	 > debian/$(packagei)/usr/share/man/man8/spamd.8
	rm debian/$(packagei)/usr/share/man/man1/spamd.1p

#	sed 's#SPAMPROXYD 1#SPAMPROXYD 8#' \
#	 debian/$(packagei)/usr/share/man/man1/spamproxyd.1p \
#	 > debian/$(packagei)/usr/share/man/man8/spamproxyd.8
#	rm debian/$(packagei)/usr/share/man/man1/spamproxyd.1p

	mv debian/$(packagei)/usr/bin/spamd debian/$(packagei)/usr/sbin/
#	mv debian/$(packagei)/usr/bin/spamproxyd debian/$(packagei)/usr/sbin/

	-rmdir -p debian/$(packagei)/usr/lib/perl5

binary-indep: build-indep install-indep
	dh_testdir -i
	dh_testroot -i
	dh_installdebconf -i
	dh_installdocs -i -XCVS
	dh_installexamples -i -XCVS
	dh_installinit -i -- defaults 19
	dh_installchangelogs Changes -i
	dh_link -i
	dh_compress -i
	dh_fixperms -i
	dh_installdeb -i
	dh_perl -i
	dh_gencontrol -i
	dh_md5sums -i
	dh_builddeb -i

# spamc ONLY

# It's too bad buildds don't just build build-arch (It's coming with
# dpkg 1.10 or 1.11, I'm told.)

build-arch: build-arch-stamp
build-arch-stamp: configure debian/po/templates.pot

	dh_testdir

	-mkdir -p blib/man1

	$(MAKE) CFOPTIMIZE="$(CFLAGS)" CFCCFLAGS="" CFLIBS="" CFLDFLAGS="" spamd/spamc

	pod2man spamd/spamc.pod blib/man1/spamc.1p

	touch build-arch-stamp

install-arch: DH_OPTIONS=
install-arch: build-arch
	dh_testdir
	dh_testroot
	dh_clean -k
	dh_installdirs -a

	cp spamd/spamc debian/$(packagea)/usr/bin/spamc

binary-arch: build-arch install-arch
	dh_testdir -a
	dh_testroot -a
	dh_installdocs -a -XCVS
	dh_installman -a
	dh_installchangelogs Changes -a
	dh_strip -a
	dh_compress -a
	dh_fixperms -a
	dh_installdeb -a
	dh_shlibdeps -a
	dh_gencontrol -a
	dh_md5sums -a
	dh_builddeb -a

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