#!/usr/bin/make -f
# Rules Makefile for SATAN
# made by Javier Fernandez-Sanguino Pea <jfs@computer.org>
# with help of sample debian/rules in Ian Jackson's hello package
# Distributed under GNU copyleft.

# rules demanded by Debian policy
# build, binary (binary-arch, binary-indep)

package=satan

build:
	$(checkdir)
	perl reconfig
	-rm -f config/*.old
	make linux
	(cd html/tutorials/ ; perl vulnerability_doc.pl >vulnerability_doc.html)
	touch build


clean:
	make clean
	-rm -f build
	-rm -rf debian/tmp  debian/files*
	dh_clean
	find . -name "*~" -exec rm -rf \{\} \;

binary: binary-arch binary-indep

binary-arch: checkroot build
	$(checkdir)
	rm -rf debian/tmp
# Setting up control area
	dh_installdirs
#	install -m644 debian/shlibs debian/tmp/DEBIAN
	install -m644 debian/satan.desc debian/tmp/usr/share/doc-base
# Here we set the shells script, libraries and classes
	sed -e '31s/config\//\/etc\/satan\//g'  \
	    -e '32s/bin\//\/usr\/lib\/satan\/bin\//g' \
	    -e '32s/ satan / \/usr\/lib\/satan\/satan /g' \
	    -e '32s/perl\//\/usr\/lib\/satan\/perl\//g' \
		< reconfig > debian/tmp/usr/sbin/satan-reconfig
	chmod 755 debian/tmp/usr/sbin/satan-reconfig
# We can either put the program here or make a wrapper script
	install -m755 debian/satan-wrapper debian/tmp/usr/sbin/satan
	install -m755 debian/satan-suidconfig debian/tmp/usr/sbin/satan-suidconfig
# Put in /usr/lib/satan the following: html, bin, include, perl, rules
	sed -e 's/config\//\/etc\/satan\//g' <satan > \
	                debian/tmp/usr/lib/satan/satan
	chmod 755 debian/tmp/usr/lib/satan/satan
	cp -a bin/ perl/ rules/ debian/tmp/usr/lib/satan
	cp -a html/ results/ debian/tmp/var/lib/satan
	(cd debian/tmp/usr/lib/satan/; ln -s /etc/satan config ; \
			ln -s /var/lib/satan/results results)
# Here we move the documentation
	dh_installdocs README* TODO debian/README.Debian
	# Not neccessary since dh_installdocs does this automatically:
	# debian/TODO debian/README.Debian
	(cd debian/tmp/usr/share/doc/satan/; ln -s /var/lib/satan/html html)
	dh_installchangelogs Changes
	dh_installmanpages 
# Fix for #99557	
	cd `pwd`/debian/tmp/usr/share/man/man1 && ln -s tcp_scan.1.gz upd_scan.1.gz
# Here the conffiles provided by the package
	install -m644 config/* debian/tmp/etc/satan
# This is for the menu system
	dh_installmenu
	strip `find debian/tmp -type f -perm +111 | xargs file | fgrep ELF | sed 's/^\([^:]*\):.*$$/\1/'`
	dh_compress
	dpkg-shlibdeps bin/*
	dh_md5sums
	dh_installdeb
	dh_installdebconf
	dpkg-gencontrol
	chown -R root.root debian/tmp
	chmod -R g-ws debian/tmp
	chmod -R go=rX debian/tmp
	dpkg --build debian/tmp ..

binary-inde: build


#get-orig-source:
# ftp to http://www.fish.com/satan


define checkdir
	test -f debian/rules
endef

checkroot:
	$(checkdir)
	test root = "`whoami`"

.PHONY: binary binary-arch binary-indep clean checkroot

