#! /usr/bin/make -f
#

# libnfslock
NMVER	= 0
NSOVER	= 0.1

# liblockfile
MVER	= 1
SOVER	= 1.0

tmp	= debian/tmp

build:	config.status
	$(checkdir)
	make
	touch build

config.status:
	./configure --enable-shared --prefix=/usr \
		--with-mailgroup --mandir=/usr/share/man
	
clean:
	[ ! -f Makefile ] || make distclean
	-rm -rf build $(tmp)* debian/files debian/substvars

binary-indep: checkroot
	$(checkdir)

binary-arch: checkroot
	$(checkdir)
	#
	#	First, liblockfile.so.1
	#
	-rm -rf $(tmp)*
	install -d -o root -m 755 $(tmp)
	install -d -o root -m 755 $(tmp)/DEBIAN
	install -d -o root -m 755 $(tmp)/usr/lib
	install -d -o root -m 755 $(tmp)/usr/bin
	install -d -o root -m 755 $(tmp)/usr/share/man/man1
	install -d -o root -m 755 $(tmp)/usr/share/doc/liblockfile1
	#
	install -o root -m 755 debian/postrm $(tmp)/DEBIAN
	install -o root -m 644 debian/shlibs $(tmp)/DEBIAN
	install -o root -m 644 -s liblockfile.so \
		$(tmp)/usr/lib/liblockfile.so.$(SOVER)
	install -o root -m 644 dotlockfile.1 $(tmp)/usr/share/man/man1
	gzip -9f $(tmp)/usr/share/man/*/*
	install -g mail -m 2755 -s dotlockfile $(tmp)/usr/bin/dotlockfile
	ln -s liblockfile.so.$(SOVER) $(tmp)/usr/lib/liblockfile.so.$(MVER)
	install -o root -m 644 debian/changelog \
		$(tmp)/usr/share/doc/liblockfile1/changelog
	gzip -9f $(tmp)/usr/share/doc/liblockfile1/*
	install -o root -m 644 COPYRIGHT \
		$(tmp)/usr/share/doc/liblockfile1/copyright
	dpkg-shlibdeps liblockfile.so
	dpkg-gencontrol -pliblockfile1 -P$(tmp) -isp
	dpkg --build $(tmp) ..
	#
	#	Now build liblockfile-dev
	#
	-rm -rf $(tmp)*
	install -d -o root -m 755 $(tmp)
	install -d -o root -m 755 $(tmp)/DEBIAN
	install -d -o root -m 755 $(tmp)/usr/lib
	install -d -o root -m 755 $(tmp)/usr/include
	install -d -o root -m 755 $(tmp)/usr/share/man/man3
	install -d -o root -m 755 $(tmp)/usr/share/doc/liblockfile-dev
	#
	install -o root -m 644 lockfile.h maillock.h $(tmp)/usr/include
	ln -s liblockfile.so.$(SOVER) $(tmp)/usr/lib/liblockfile.so
	install -o root -m 644 liblockfile.a $(tmp)/usr/lib
	install -o root -m 644 maillock.3 $(tmp)/usr/share/man/man3
	install -o root -m 644 lockfile_create.3 $(tmp)/usr/share/man/man3
	gzip -9f $(tmp)/usr/share/man/*/*
	ln -sf lockfile_create.3.gz $(tmp)/usr/share/man/man3/lockfile_check.3.gz
	ln -sf lockfile_create.3.gz $(tmp)/usr/share/man/man3/lockfile_touch.3.gz
	ln -sf lockfile_create.3.gz $(tmp)/usr/share/man/man3/lockfile_remove.3.gz
	ln -sf maillock.3.gz $(tmp)/usr/share/man/man3/mailunlock.3.gz
	ln -sf maillock.3.gz $(tmp)/usr/share/man/man3/touchlock.3.gz
	install -o root -m 644 debian/changelog \
		$(tmp)/usr/share/doc/liblockfile-dev/changelog
	gzip -9f $(tmp)/usr/share/doc/liblockfile-dev/*
	install -o root -m 644 COPYRIGHT \
		$(tmp)/usr/share/doc/liblockfile-dev/copyright
	dpkg-gencontrol -pliblockfile-dev -P$(tmp) -isp
	dpkg --build $(tmp) ..


binary-nfslock:	checkroot
	#
	#	build libnfslock (OBSOLETE)
	#
	-rm -rf $(tmp)*
	install -d -o root -m 755 $(tmp)
	install -d -o root -m 755 $(tmp)/DEBIAN
	install -d -o root -m 755 $(tmp)/lib
	install -d -o root -m 755 $(tmp)/usr/share/doc/libnfslock
	#
	install -o root -m 644 debian/shlibs.nfslock $(tmp)/DEBIAN/shlibs
	install -o root -m 755 debian/postinst.nfs $(tmp)/DEBIAN/postinst
	install -o root -m 755 debian/prerm.nfs $(tmp)/DEBIAN/prerm
	install -o root -m 644 nfslock.so.$(NSOVER) $(tmp)/lib
	ln -s nfslock.so.$(NSOVER) $(tmp)/lib/nfslock.so.$(NMVER)
	ln -s nfslock.so.$(NSOVER) $(tmp)/lib/nfslock.so
	install -o root -m 644 debian/changelog \
		$(tmp)/usr/share/doc/libnfslock/changelog
	gzip -9f $(tmp)/usr/share/doc/libnfslock/*
	install -o root -m 644 COPYRIGHT \
		$(tmp)/usr/share/doc/libnfslock/copyright
	dpkg-gencontrol -plibnfslock -P$(tmp)
	dpkg --build $(tmp) ..

define checkdir
	test -f lockfile.c -a -f debian/rules
endef

binary: binary-indep binary-arch

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

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