#! /usr/bin/make -f
#
#	debian/rules file for sysvinit
#

# Name.
package = sysvinit
tmp     = $(shell pwd)/debian/tmp

define checkdir
	test -f src/init.c
endef

build:
# Builds the binary package.
	$(checkdir)
	(cd src; make)
	touch build

# Architecture independant files.
binary-indep:   build
	$(checkdir)

# Make a binary package (.deb file)
binary-arch:	build checkroot
	-rm -rf $(tmp)
	install -d -g root -m 755 -o root $(tmp)
	install -d -g root -m 755 -o root $(tmp)/{DEBIAN,etc,usr}
	install -d -g root -m 755 -o root $(tmp)/usr/doc
	install -d -g root -m 755 -o root $(tmp)/usr/doc/$(package)
	install -g root -m 644 debian/changelog $(tmp)/usr/doc/$(package)
	gzip -9f $(tmp)/usr/doc/$(package)/changelog
	install -d -g root -m 755 -o root $(tmp)/usr/doc/$(package)/examples
	cp -af debian/examples/* $(tmp)/usr/doc/$(package)/examples
	cp -af debian/etc/* $(tmp)/etc
	mv $(tmp)/etc/inittab $(tmp)/usr/doc/$(package)/examples
	chmod -R g-w $(tmp)
	chown -R root.root $(tmp)
	install -d -g root -m 755 -o root $(tmp)/sbin
	install -d -g root -m 755 -o root $(tmp)/usr/bin
	install -d -g root -m 755 -o root $(tmp)/usr/man/man{1,5,8}
	install -g root -m 755 debian/fsck.nfs $(tmp)/sbin/fsck.nfs
	(cd src; make ROOT=$(tmp) install )
	install -g root -m 644 debian/rc.boot.5 $(tmp)/usr/man/man5
	install -g root -m 644 debian/rcS.5 $(tmp)/usr/man/man5
	gzip -9f $(tmp)/usr/man/man*/*
	install -g root -m 644 -o root debian/README \
	  $(tmp)/usr/doc/$(package)/copyright
	cp debian/preinst $(tmp)/DEBIAN/preinst
	cp debian/postinst $(tmp)/DEBIAN/postinst
	install -g root -m 644 -o root debian/conffiles \
	  $(tmp)/DEBIAN/conffiles
	dpkg-shlibdeps src/init
	dpkg-gencontrol
	dpkg --build $(tmp) ..
	rm -rf $(tmp)

clean:	checkroot
	(cd src; make clobber )
	rm -f build debian/files debian/substvars
	rm -rf $(tmp)
	find . -name '*.bak' -o -name '*~' | xargs -r rm -f --

binary: binary-indep binary-arch

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

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