#!/usr/bin/make -f
#
# debian/rules for kernel-image-*-s390 (uses debhelper V3)
#
# GNU copyright 1997 to 1999 by Joey Hess.
# Copyright (c) 1999-2001 Herbert Xu <herbert@debian.org>
# Copyright (c) 2001 Stefan Gybas <sgybas@debian.org>
# Copyright (c) 2001, 2002 Jochen Rhrig <jr@debian.org>
#

# 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
MAKE_KPKG := PATCH_THE_KERNEL=YES make-kpkg --added_patches s390-2_4_17

export version := $(shell \
	head -1 debian/changelog | \
	sed 's/^kernel-image-\(.*\)-s390.*$$/\1/' \
)
fullversion := $(shell \
	dpkg-parsechangelog | sed -n 's/^Version: //p; t e; b; :e; q' \
)

flavours_deb := $(shell \
	find config_deb -maxdepth 1 -type f ! -name default -printf '%f\n' \
)

flavours_udeb := $(shell \
	find config_udeb -maxdepth 1 -type f ! -name default -printf '%f\n' \
)

flavours = $(flavours_deb) $(flavours_udeb)

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_deb); do				\
		cp -al kernel-source-$(version) build-$$i;	\
		cp config_deb/$$i build-$$i/.config;		\
		cd build-$$i;					\
		cd ..;						\
	done
	for i in $(flavours_udeb); do				\
		cp -al kernel-source-$(version) build-$$i;	\
		cp config_udeb/$$i build-$$i/.config;		\
		cd build-$$i;					\
		cd ..;						\
	done
	cp config_deb/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) --subarch $$i --arch_in_name 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_deb); do					\
		cp -al build-$$i install-$$i;				\
		cd install-$$i;						\
		$(MAKE_KPKG) --subarch $$i --arch_in_name kernel-image;	\
		cd ..;							\
		cat install-$$i/debian/files >> debian/files;		\
		rm -rf install-$$i;					\
	done
	mv *.deb ..

	./script/copy-modules s390
	for i in $(flavours_udeb); do									\
		install -D -m 644 build-$${i}/arch/s390/boot/image					\
			debian/kernel-image-$(version)-$${i}-udeb/boot/vmlinuz-$(version)-$${i};	\
		install -D -m 644 build-$${i}/.config							\
			debian/kernel-image-$(version)-$${i}-udeb/boot/config-$(version)-$${i};		\
		install -D -m 644 build-$${i}/System.map						\
			debian/kernel-image-$(version)-$${i}-udeb/boot/System.map-$(version)-$${i};	\
	done
	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)_s390.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)_s390.udeb;	\
	done

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