#!/usr/bin/make -f
# $Id: rules 1607 2005-11-28 12:20:05Z max $

SRC           := modules/loop-aes
DEB_HOST_ARCH := $(shell dpkg-architecture -qDEB_HOST_ARCH)
KERNELS       := $(shell cat debian/kernels/2.6/$(DEB_HOST_ARCH))
KERNELS_DI    := $(shell cat debian/kernels/2.6-di/$(DEB_HOST_ARCH))
KERNELS_META  := $(shell cat debian/kernels/2.6-meta/$(DEB_HOST_ARCH))

unpack: unpack-stamp
unpack-stamp:
	tar -xjf /usr/src/loop-aes.tar.bz2
	# Replace debian/control
	cp debian/control $(SRC)/debian/control.modules.in

	# Replace debian/changelog
	mv $(SRC)/debian/changelog $(SRC)/debian/changelog.source
	cp debian/changelog $(SRC)/debian/changelog

	# Rename maintainer scripts to include _KVERS_
	cd $(SRC)/debian; \
	    for maint in preinst postinst prerm postrm; do \
	        if test -f $$maint.modules.in; then \
	            mv $$maint.modules.in loop-aes-_KVERS_.$$maint.modules.in; \
	        fi; \
	    done
	touch unpack-stamp

binary: binary-arch
binary-arch: unpack-stamp
	# Build module packages
	{ set -e; \
	  cd $(SRC); \
	  for kernel in $(KERNELS); do \
	      export DH_OPTIONS="-ploop-aes-$$kernel"; \
	      debian/rules clean; \
	      debian/rules echo-vars binary-modules KSRC=/usr/src/linux-headers-$$kernel KVERS=$$kernel;\
	  done \
	}

	# Build module udeb packages
	{ set -e; \
	  cd $(SRC); \
	  for kernel in $(KERNELS_DI); do \
	      export DH_OPTIONS="-ploop-aes-$$kernel"; \
	      debian/rules clean; \
	      debian/rules echo-vars binary-modules KSRC=/usr/src/linux-headers-$${kernel%-di} KVERS=$$kernel DEB_BUILD_OPTIONS="udeb"; \
	  done \
	}

	# Build meta packages
	{ set -e; \
	  for kmajor in $(KERNELS_META); do \
	      export DH_OPTIONS="-ploop-aes-$$kmajor"; \
	      dh_installdirs; \
	      dh_installdocs debian/README.meta; \
	      dh_installchangelogs; \
	      dh_compress; \
	      dh_fixperms; \
	      dh_gencontrol; \
	      dh_builddeb; \
	  done \
	}

	-mv modules/*.deb .
	-mv modules/*.udeb .
	
	# Add packages to debian/files
	{ set -e; \
	  for package in *.deb; do \
	      [ "$$package" = "*.deb" ] && break; \
	      dpkg-distaddfile $$package admin optional; \
	  done; \
	  for package in *.udeb; do \
	      [ "$$package" = "*.udeb" ] && break; \
	      dpkg-distaddfile $$package debian-installer optional; \
	  done \
	}

	-mv *.deb ..
	-mv *.udeb ..

clean:
	dh_testdir
	rm -rf modules
	rm -f *.deb *.udeb
	rm -f unpack-stamp
	dh_clean

binary-indep: 

build:

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