#!/usr/bin/make -f
#
# debian/rules for kernel-image-*-i386
#
# GNU copyright 1997 to 1999 by Joey Hess.
# Copyright (c) 1999-2001 Herbert Xu <herbert@debian.org>
#
# $Id: rules,v 1.9 2001/05/27 10:09:29 herbert Exp $

# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1

# This is the debhelper compatability version to use.
export DH_COMPAT=2

SHELL := sh -e

export version := $(shell \
	head -1 debian/changelog | \
	sed 's/^kernel-image-\(.*\)-i386.*$$/\1/' \
)
fullversion := $(shell \
	dpkg-parsechangelog | sed -n 's/^Version: //p; t e; b; :e; q' \
)
flavours := $(shell \
	find config -maxdepth 1 -type f ! -name default -printf '%f\n' \
)

unpack: unpack-stamp
unpack-stamp:
	tar jxf /usr/src/kernel-source-$(version).tar.bz2
	mkdir kernel-source-$(version)/debian
	cp debian/changelog kernel-source-$(version)/debian
	cp debian/control kernel-source-$(version)/debian
	> kernel-source-$(version)/debian/official
	for i in $(flavours); do \
		cp -al kernel-source-$(version) build-$$i; \
		cp config/$$i build-$$i/.config; \
		cd build-$$i; \
		cd ..; \
	done
	cp config/default kernel-source-$(version)/.config
	ln -s `command -v touch` bin/touch.orig

	touch unpack-stamp

build: build-stamp
build-stamp: unpack-stamp
	PATH=$$PWD/bin:$$PATH; \
	for i in $(flavours); do \
		cd build-$$i; \
		make-kpkg --append_to_version -$$i build; \
		cd ..; \
	done

	touch build-stamp

clean:
	rm -f unpack-stamp build-stamp install-stamp
	rm -rf kernel-source-$(version) build-* install-*
	rm -f bin/touch.orig
	dh_clean

install: install-stamp
install-stamp: build-stamp
	dh_clean -k
	dh_installdirs

	touch install-stamp

# Build architecture-independent files here.
binary-indep:

# Build architecture-dependent files here.
binary-arch: install
	cd kernel-source-$(version); \
		make-kpkg kernel-headers
	mv kernel-source-$(version)/debian/files debian
	for i in $(flavours); do \
		cp -al build-$$i install-$$i; \
		cd install-$$i; \
		make-kpkg --append_to_version -$$i kernel-headers; \
		make-kpkg --append_to_version -$$i --initrd kernel-image; \
		cd ..; \
		cat install-$$i/debian/files >> debian/files; \
		rm -rf install-$$i; \
	done
	mv *.deb ..

	./script/copy-modules 386
	install -D -m 644 build-386/arch/i386/boot/bzImage \
		debian/kernel-image-$(version)-386-udeb/boot/vmlinuz
	dh_fixperms
	# Don't write your stupid guesses to debian/files.
	dh_gencontrol -- -fdebian/files~
	for i in $$(dh_listpackages | grep -- -udeb\$$); do \
		dpkg-distaddfile $${i}_$(fullversion)_i386.udeb \
			debian-installer $$( \
				sed -n " \
					/^Package: $${i}\$$/!d; \
					:b; s/^Priority: //p; t e; \
					n; b b; :e; q \
				" debian/control \
			); \
		dh_builddeb --package=$$i \
			--filename=$${i}_$(fullversion)_i386.udeb; \
	done

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