# SliTaz package receipt.

PACKAGE="linux"
VERSION="2.6.24.2"
CATEGORY="base-system"
SHORT_DESC="The Linux kernel and modules."
MAINTAINER="pascal.bellard@slitaz.org"
TARBALL="$PACKAGE-$VERSION.tar.bz2"
WEB_SITE="http://www.kernel.org/"
WGET_URL="http://www.eu.kernel.org/pub/linux/kernel/v2.6/$TARBALL"

# Rules to configure and make the package.
compile_rules()
{
	cd $src
	# lzma and boot patch from pascal
	while read patch_file; do
		echo "Apply $patch_file"
		patch -p1 < ../stuff/$patch_file
	done <<EOT
boot-kernel.u
$PACKAGE-lzma-$VERSION.u
decompress_unlzma.u
EOT
	make mrproper	
	cp ../stuff/$PACKAGE-$VERSION-slitaz.config .config
	while read patch_file; do
		echo "Apply $patch_file"
		patch -p1 < ../stuff/$patch_file
	done <<EOT
config-acpi-$VERSION.u
linux-utf8-$VERSION.u
config-ieee1394-$VERSION.u
linux-lzma-export.u
config-tun-$VERSION.u
config-reiserfs-$VERSION.u
config-wireless-$VERSION.u
EOT
	make oldconfig
	make bzImage
	make modules
	make INSTALL_MOD_PATH=$PWD/_pkg modules_install
} 

# Rules to gen a SliTaz package suitable for Tazpkg.
genpkg_rules()
{
    local path
    mkdir $fs/boot
    cp -a $src/arch/x86/boot/bzImage $fs/boot/vmlinuz-$VERSION-slitaz
    # Compress all modules.
    # Package module-init-tools is compiled with zlib support.
    #
    ./stuff/gztazmod.sh $_pkg/lib/modules/$VERSION-slitaz
    path=$fs/lib/modules/$VERSION-slitaz/kernel
    mkdir -p $path
    cp -a $_pkg/lib/modules/$VERSION-slitaz/mo* $fs/lib/modules/$VERSION-slitaz
    while read module; do
    	dir=$(dirname $module)
    	[ -d $path/$dir ] || mkdir -p $path/$dir
        cp -a $_pkg/lib/modules/$VERSION-slitaz/kernel/$module $path/$dir
    done < stuff/modules-$VERSION.list
    # Remove unresolved links
    rm -f $fs/lib/modules/$VERSION-slitaz/build
    rm -f $fs/lib/modules/$VERSION-slitaz/source
}

# Pre and post install commands for Tazpkg.
# GRUB stuf.
post_install()
{
    echo "Processing post-install commands..."
    depmod -a -b /$1
    echo "----"
    echo "If you have GRUB installed, you can add tree lines to boot SliTaz."
    echo "Example /boot/grub/menu.lst"
    echo -e "
title  SliTaz GNU/Linux (Kernel $VERSION-slitaz)
       root(hd0,0)
       kernel /boot/vmlinuz-$VERSION-slitaz root=/dev/hda1 vga=771\n"
    echo "----"
}
