#!/bin/bash
sudo sh -c '
die () { echo "$(basename $0): error: $@ :("; exit 1; }

emerge -av linux-sources || die "emerge kernel failed"
cd /usr/src/linux/
[[ -e .utfpatched ]] || if patch -p1 <../patches/linux-2.6.11-utfswitch.patch --dry-run
then
	patch -p1 <../patches/linux-2.6.11-utfswitch.patch
	touch .utfpatched
else
	die "utf patch failed"
fi
zcat /proc/config.gz >.config
beep
make oldconfig
make all modules_install install || die "kernel make failed"
emerge ="$(cut -d: -f3 /var/lib/module-rebuild/moduledb)" || die "moduledb rebuild unsuccessful"
cd ../external/atmel/
KVERS="$(eselect kernel show | sed -n -e '\''s:^.*linux-\([a-z0-9-]*\)[^a-z0-9-]*$:\1:p'\'')" make clean all install || die "atmel make unsuccessful"
' "$0" && echo "$(basename $0): success :)"

