#!/bin/bash set -e -x CWD=$(pwd) VER=3.10.32 BUILD=2 DST=/usr/src/linux-$VER PKG=/tmp/kernel-$VER SRC=$CWD/aufs3-standalone.git/ # how to get aufs and utils: # git clone git://aufs.git.sourceforge.net/gitroot/aufs/aufs3-standalone.git aufs3-standalone.git # cd aufs3-standalone.git # git checkout origin/aufs3.6 # cd .. # git clone git://aufs.git.sourceforge.net/gitroot/aufs/aufs-util.git aufs-util.git # cd aufs-util.git # git checkout origin/aufs3.0 if [ ! -r linux-$VER.tar.xz ]; then wget -c http://www.kernel.org/pub/linux/kernel/v3.0/linux-$VER.tar.xz fi # -- tar -xf additions.tar.gz # Automatically determine the architecture we're building on: if [ -z "$MYARCH" ]; then case "$( uname -m )" in i?86) export MYARCH=i486 ;; arm*) export MYARCH=arm ;; # Unless $MYARCH is already set, use uname -m for all other archs: *) export MYARCH=$( uname -m ) ;; esac fi rm -Rf $PKG #umount $DST 2>/dev/null | true rm -Rf $DST mkdir -p $DST cd $DST # decompress tar -C .. -xf $CWD/linux-$VER.tar.* cd $DST # configure cat $CWD/config >.config #patch -p1 <$CWD/aufs3.patch #patch -p1 <$CWD/fremap.patch # -- patch -p1 <$CWD/bootsplash-3.8.0.diff rm -f scripts/mkcompile_h cp $CWD/mkcompile_h scripts/mkcompile_h cd $DST # kernel logo cp -f $CWD/truva_logo_linux_clut224.ppm drivers/video/logo/logo_linux_clut224.ppm #cp $SRC/../logo_linux_clut224.ppm drivers/video/logo/ # make make all make headers_install #cp $DST/usr/include/linux/aufs_type.h /usr/include/linux # create package data mkdir -p $PKG/boot cp $DST/arch/x86/boot/bzImage $PKG/boot/vmlinuz make modules_install INSTALL_MOD_PATH=$PKG make firmware_install INSTALL_MOD_PATH=$PKG mkdir -p $PKG/usr/include/linux #cp $DST/usr/include/linux/aufs_type.h $PKG/usr/include/linux # compile and install aufs utils #BUILD=2 # make final package cd $PKG find | xargs -I '{}' strip --strip-unneeded '{}' || true makepkg -l y -c n $CWD/linux-kernel-$VER-$MYARCH-$BUILD.txz #sleep 60 #halt