#!/usr/bin/make -f
# Sample debian/rules that uses debhelper.
# GNU copyright 1997 to 1999 by Joey Hess.

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

# This is the debhelper compatability version to use.
export DH_COMPAT=4
export LC_ALL=C

#export PREFIX:=$(shell pwd)/debian/smail
DIR:=$(shell pwd)

configure: configure-stamp
configure-stamp:
	set -e
	dh_testdir
	make debian/arch-test
	# Add here commands to configure the package.
	#ln -s EDITME-dist conf/EDITME
	cat conf/EDITME-dist > conf/EDITME
	debian/arch-test >> conf/EDITME

	touch configure-stamp

build: configure-stamp build-stamp
build-stamp:
	set -e
	dh_testdir

	# Add here commands to compile the package.
	(cd src && $(MAKE) iobpeek.h) 
	$(MAKE) depend

	$(MAKE)

	for f in `find . -name defs.sh`; do \
		echo munging "$$f" ... ; \
		d=`dirname $$f`/debian-defs.sh ; \
		perl -pe 's,(['"'"' ])/(usr|var|etc),$$1$(DIR)/debian/smail/$$2,g' $$f > $$d ; \
		touch -m -r $$f $$d ; \
	done

	(cd contrib/striphdrs&& make striphdrs)

	touch build-stamp

clean:
	set -e
	dh_testdir
	dh_testroot
	rm -f build-stamp configure-stamp 
	
	# Add here commands to clean up after the build process.
	$(MAKE) clobber
	$(MAKE) clean
	rm -f debian/arch-test conf/EDITME	

	for f in `find . -name AUX-support -prune -false -o -name Makefile` ; do \
		perl -i.dep~ -ne 'print || die $$! if 1 .. /^# DO NOT REMOVE THIS LINE/' \
			$$f ; \
	done


	rm -f conf/EDITME contrib/striphdrs/striphdrs mkdep.out
	find . -name 'debian-defs.sh' -o -name '*~' -o -name '*.orig' -o -name '*.rej' -o -name '.Makefile' -o -name '.defs.h' \
	-o -name '#*#' | xargs rm -f -

	chmod +x debian/fix_sudo
	debian/fix_sudo
	
	dh_clean

install: build
	set -e
	dh_testdir
	dh_testroot
	dh_clean -k
	dh_installdirs

	# Add here commands to install the package into debian/smail.

	$(MAKE) install MAKEFILES=$(DIR)/debian/overrides
	$(MAKE) installman MAKEFILES=$(DIR)/debian/overrides
	cp debian/smailconfig debian/smail/usr/sbin/
	cp debian/smailtest debian/smail/usr/sbin/
	cp contrib/striphdrs/striphdrs debian/smail/usr/sbin/striphdrs
	cp debian/crontab debian/smail/etc/smail/crontab
	cp debian/cronroot debian/smail/etc/cron.daily/smail
#	cp debian/aliases debian/smail/etc/aliases
	mkdir -p debian/smail/usr/lib/smail/
	cp debian/stalelog debian/smail/usr/lib/smail/
	rm debian/smail/etc/smail/COPYING
	#rm debian/smail/usr/share/doc/smail/INSTALL.gz

	find debian/smail -type l -ls | perl -n debian/mungelinks
	#rm debian/smail/usr/sbin/mailq debian/smail/usr/sbin/runq
	mv debian/smail/usr/sbin/smtpd debian/smail/usr/sbin/in.smtpd
	mv debian/smail/usr/share/man/man8/smtpd.8  debian/smail/usr/share/man/man8/in.smtpd.8
	rm debian/smail/usr/lib/smail/savelog
	rm debian/smail/usr/share/man/man8/savelog.8
	chmod 755 debian/smail/usr/lib/smail/logsumm.awk
	rm -rf debian/smail/var/mail

	rm $(DIR)/debian/smail/usr/share/man/man1/uupath.1
	rm $(DIR)/debian/smail/usr/share/man/man8/mailq.8
	rm $(DIR)/debian/smail/usr/share/man/man8/newaliases.8
	rm $(DIR)/debian/smail/usr/share/man/man8/rmail.8
	rm $(DIR)/debian/smail/usr/share/man/man8/rsmtp.8
	rm $(DIR)/debian/smail/usr/share/man/man8/sendmail.8
	rm $(DIR)/debian/smail/usr/share/man/man8/in.smtpd.8
	rm $(DIR)/debian/smail/usr/share/man/man8/runq.8
	
	
	dh_link usr/share/man/man1/pathto.1 \
			usr/share/man/man1/uupath.1 \
		usr/share/man/man8/smail.8 \
			usr/share/man/man8/mailq.8 \
		usr/share/man/man8/smail.8 \
			usr/share/man/man8/newaliases.8 \
		usr/share/man/man8/smail.8 \
			usr/share/man/man8/rmail.8 \
		usr/share/man/man8/smail.8 \
			usr/share/man/man8/rsmtp.8 \
		usr/share/man/man8/smail.8 \
			usr/share/man/man8/sendmail.8 \
		usr/share/man/man8/smail.8 \
			usr/share/man/man8/in.smtpd.8 \
		usr/share/man/man8/smail.8 \
			usr/share/man/man8/runq.8

	cp debian/smailconfig.1 $(DIR)/debian/smail/usr/share/man/man1/
	cp debian/smailtest.1 $(DIR)/debian/smail/usr/share/man/man1/
	cp debian/striphdrs.1 $(DIR)/debian/smail/usr/share/man/man1/
	
# Build architecture-independent files here.
binary-indep: build install
# We have nothing to do by default.

# Build architecture-dependent files here.
binary-arch: build install
	set -e
#	dh_testversion
	dh_testdir
	dh_testroot
#	dh_installdebconf	
	dh_installdocs PROJECTS README ToDo NOTES/ESMTP NOTES/SIMPLE.DOMAIN NOTES/SMART-HOST NOTES/IANA debian/README.hosts.allow debian/README.multihomed debian/New-Config-Features debian/README.xinetd
#	cp guide/admin/[a-z]* debian/smail/usr/share/doc/smail/guide/
#	cp debian/guidemakefile debian/smail/usr/share/doc/smail/guide/Makefile
	cat COPYING >> debian/smail/usr/share/doc/smail/copyright
	dh_installexamples samples/*
#	rm -r debian/smail/usr/share/doc/smail/examples/AUX-support
	rm -r debian/smail/usr/share/doc/smail/examples/arcnet
	rm -rf debian/smail/usr/share/doc/smail/guide
	(cd guide/admin/ && make admin.ps && make admin.txt && cp admin.* \
		$(DIR)/debian/smail/usr/share/doc/smail/ )

	#rm debian/smail/usr/share/doc/smail/guide/install.gz
	dh_installmenu
#	dh_installemacsen
#	dh_installpam
	dh_installinit
#	cp debian/init.d debian/smail/etc/init.d/smail
	dh_installcron
#	dh_installmanpages
	dh_installinfo
	dh_undocumented smailconfig.1 smailtest.1 striphdrs.1
	dh_installchangelogs CHANGES
	rm debian/smail/usr/lib/smail/getopt
	dh_link /usr/bin/getopt usr/lib/smail/getopt
	dh_strip
	dh_compress
	(cd debian/smail/usr/share/man/man5 && \
	 ln -s smailconf.5.gz smail-config.5.gz; \
	 ln -s smaildrct.5.gz smail-directors.5.gz; \
	 ln -s smailmeth.5.gz smail-methods.5.gz; \
	 ln -s smailqual.5.gz smail-qualify.5.gz; \
	 ln -s smailrtrs.5.gz smail-routers.5.gz; \
	 ln -s smailrtry.5.gz smail-retry.5.gz; \
	 ln -s smailtrns.5.gz smail-transports.5.gz )

	dh_fixperms

	chown -R mail.root debian/smail/var/spool/uumaps 
	chown -R mail.root debian/smail/usr/lib/smail
	chown -R mail.root debian/smail/var/lib/smail
	chown -R mail.root debian/smail/var/spool/smail
	
	chmod  -R u+w,g-w debian/smail/var/spool/uumaps 
	chmod  -R u+w,g-w debian/smail/etc/smail
	chmod  -R u+w,g-w debian/smail/usr/lib/smail
	chmod  -R u+w,g-w debian/smail/var/lib/smail
	chmod  -R u+w,g-w debian/smail/var/spool/smail
	
	chmod 755 debian/smail/etc/cron.daily/* debian/smail/etc/init.d/* \
		debian/smail/usr/lib/smail/stalelog debian/smail/usr/sbin/* \
		debian/smail/var/spool debian/smail/var/spool/* debian/smail/var/lib/smail
	chmod 2755 debian/smail/var/log/smail

	find debian/smail/usr/sbin debian/smail/usr/lib \! -type l -perm +111 -type f | \
	find debian/smail -type d | xargs chmod g-s
	chmod u+s debian/smail/usr/sbin/smail
	# You may want to make some executables suid here.
#	dh_suidregister /usr/sbin/smail
#	dh_makeshlibs
	dh_installdeb
#	dh_perl
	dh_shlibdeps
	dh_gencontrol
	dh_md5sums
	dh_builddeb

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