#!/bin/sh

set -e

debhelper_pre() {
	dh_clean -k --package="$1"
	dh_installdirs --package="$1"
}

debhelper_post() {
	dh_installdocs --package="$1"
	dh_installchangelogs --package="$1"
	dh_compress --package="$1"
	dh_fixperms --package="$1"
	dh_installdeb --package="$1"
	dh_gencontrol --package="$1"
	dh_md5sums --package="$1"
	dh_builddeb --package="$1"
}


suffix=${version#*$debnum-}
karch=${suffix%-smp}
karch=${karch%32}
prefix=${version%%-*}$debnum

pkg=kernel-headers-$version
top=$PWD/debian/$pkg
dir=$top/usr/src/kernel-headers-$version

debhelper_pre $pkg

mkdir -p $dir/include/linux
cp -a .config $dir
cd include
find . -mindepth 1 -maxdepth 1 ! -name config -a ! -name linux -a \
	\( ! -name 'asm-*' -o -name 'asm-generic' \) \
	-printf "../../kernel-headers-$prefix/include/%f\n" |
	xargs ln -s --target-directory=$dir/include
cp -a config $dir/include
find linux -mindepth 1 -maxdepth 1 \
	! -name autoconf.h -a ! -name modules -a ! -name modversions.h -a \
	! -name compile.h -a ! -name version.h \
	-printf "../../../kernel-headers-$prefix/include/linux/%f\n" |
	xargs ln -s --target-directory="$dir/include/linux"
cp -a linux/autoconf.h linux/modules linux/modversions.h linux/compile.h \
	linux/version.h $dir/include/linux
mkdir -p $dir/include/asm-$karch
find asm-$karch -mindepth 1 -maxdepth 1 -not -name asm_offsets.h \
	-printf "../../../kernel-headers-$prefix/include/asm-$karch/%f\n" |
	xargs ln -s --target-directory="$dir/include/asm-$karch"
cp -a asm-$karch/asm_offsets.h $dir/include/asm-$karch/
ln -sf asm-$karch $dir/include/asm

cd ..

mkdir -p $top/lib/modules/$version
ln -s /usr/src/kernel-headers-$version $top/lib/modules/$version/build

debhelper_post $pkg

bpkg=kernel-build-$prefix
top=$PWD/../debian/$bpkg

[ -d $top/usr/src/$bpkg ] || mkdir -p $top/usr/src/$bpkg
ln -s ../kernel-headers-$version $top/usr/src/$bpkg/$suffix

# not particularly needed for sparc
#cd $IMAGE_TOP/lib/modules/$version
#mkdir initrd
#ln kernel/drivers/video/tgafb.o initrd
