#!/usr/bin/make -f

package=dmcryptfs

testdir = test -f cryptfs/cryptfs.c -a -f debian/rules
testroot = test a`whoami` = aroot

CFLAGS = -Wall -g
INSTALL_PROGRAM = install

ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
        CFLAGS += -O0
else
        CFLAGS += -O2
endif
ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
        INSTALL_PROGRAM += -s
endif

build:
	$(checkdir)
	$(MAKE)
	touch build

install:	build
	$(testdir)
	$(testroot)
	-rm -rf debian/$(package)
	$(MAKE) INSTALL_PROGRAM="$(INSTALL_PROGRAM)" PREFIX="`pwd`/debian/$(package)" install

clean:
	$(checkdir)
	$(RM) build
	$(MAKE) clean
	$(RM) -r debian/$(package) debian/files* debian/subst*

binary-indep:	build	install
	$(checkdir)
	$(testroot)

binary-arch:	build	install
	$(checkdir)
	$(testroot)
	install -d -m 0755 debian/$(package)/usr/share/doc/$(package)
	install -m 0644 examples/cryptfs.xml debian/$(package)/usr/share/doc/$(package)
	install -m 0644 cryptfs/cryptfs.dtd debian/$(package)/usr/share/doc/$(package)
	install -m 0644 README debian/$(package)/usr/share/doc/$(package)
	install -m 0644 COPYRIGHT debian/$(package)/usr/share/doc/$(package)/copyright
	install -m 0644 debian/changelog debian/$(package)/usr/share/doc/$(package)
	install -d debian/$(package)/DEBIAN
	install -m 0644 debian/control debian/$(package)/DEBIAN
	install -m 0755 debian/postinst debian/$(package)/DEBIAN
	install -m 0755 debian/postrm debian/$(package)/DEBIAN
	install -m 0644 debian/conffiles debian/$(package)/DEBIAN
	find debian/$(package)/usr/share/doc -type f \( -size +4k -o -name 'changelog*' \) -print0 | xargs -r0 gzip -9n
	find debian/$(package)/usr/share/man -type f -print0 | xargs -r0 gzip -9n
	dpkg-shlibdeps debian/$(package)/sbin/*
	dpkg-gencontrol -isp -Pdebian/$(package) -Tdebian/substvars
	cd debian/$(package) && find etc usr sbin -type f -print0 | xargs -0 md5sum > DEBIAN/md5sums
	dpkg --build debian/$(package) ..

# Below here is fairly generic really
binary:		binary-indep binary-arch

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