wok diff linux-libre-source/stuff/buildtaz @ rev 11262
Merge
author | Alexander Medvedev <devl547@gmail.com> |
---|---|
date | Mon Nov 07 21:05:41 2011 +0000 (2011-11-07) |
parents | |
children |
line diff
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/linux-libre-source/stuff/buildtaz Mon Nov 07 21:05:41 2011 +0000 1.3 @@ -0,0 +1,80 @@ 1.4 +#!/bin/sh 1.5 +# 1.6 +# buildtaz 1.0 1.7 +# This script generate a SliTaz package for linux kernel and modules. 1.8 +# Inspired from builddeb script. 1.9 +# 1.10 +# (C) 2009 SliTaz - GNU General Public License v3. 1.11 +# 1.12 +# Author: Eric Joseph-Alexandre <erjo@slitaz.org> 1.13 + 1.14 +set -e 1.15 + 1.16 +LOCALVERSION=$(grep ^CONFIG_LOCALVERSION $objtree/.config | sed -e "s/CONFIG_LOCALVERSION=\"\(.*\)\"/\1/") 1.17 +PACKAGE="linux${LOCALVERSION}" 1.18 +VERSION=${KERNELVERSION} 1.19 +V=$KERNELRELEASE 1.20 +DIR="$objtree/taz/$PACKAGE-$VERSION" 1.21 +fs="$DIR/fs" 1.22 + 1.23 +# Setup directories 1.24 +rm -rf "$objtree/taz" 1.25 +mkdir -p "$fs/lib" "$fs/boot" 1.26 + 1.27 +# Build and install kernel 1.28 +cp System.map "$fs/boot/System.map-$KERNELRELEASE" 1.29 +cp $KBUILD_IMAGE "$fs/boot/vmlinuz-$KERNELRELEASE" 1.30 + 1.31 +# Build and compress modules if needed 1.32 +if grep -q '^CONFIG_MODULES=y' .config ; then 1.33 + INSTALL_MOD_PATH="$fs" make KBUILD_SRC= modules_install 1.34 + [ -f $objtree/slitaz/gztazmod.sh ] && $objtree/slitaz/gztazmod.sh $fs/lib/modules/${VERSION}${LOCALVERSION} 1.35 +fi 1.36 + 1.37 +# Create Slitaz package 1.38 +cat > $DIR/receipt <<EOT 1.39 +# SliTaz package receipt. 1.40 + 1.41 +PACKAGE="${PACKAGE}" 1.42 +VERSION="${VERSION}" 1.43 +CATEGORY="base-system" 1.44 +SHORT_DESC="Customized Linux Kernel" 1.45 +WEB_SITE="http://www.kernel.org" 1.46 +DEPENDS="depmod" 1.47 + 1.48 +post_install() 1.49 +{ 1.50 + echo "Processing post-install commands..." 1.51 + chroot "\$1/" depmod -a $V 1.52 + if [ -f "\$1/boot/grub/menu.lst" ]; then 1.53 + root_dev="`cat \$1/boot/grub/menu.lst | grep root= | sed 's/.*root=\([^ ]*\).*/\1/' | head -n 1`" 1.54 + grub_dev="`cat \$1/boot/grub/menu.lst | grep "root (" | head -n 1`" 1.55 + # Add new kernel entry in case of upgrade for installed system. 1.56 + if ! grep -q \$PACKAGE-\$VERSION \$1/boot/grub/menu.lst; then 1.57 + echo " 1.58 + 1.59 +title SliTaz GNU/Linux (Kernel $V) 1.60 +"\$grub_dev" 1.61 +kernel /boot/vmlinuz-$V root=\$root_dev" >> \$1/boot/grub/menu.lst 1.62 + fi 1.63 + 1.64 + # Display information message. 1.65 + echo " 1.66 +---- 1.67 +GRUB is installed, these tree lines must be in your /boot/grub/menu.lst: 1.68 + 1.69 +title SliTaz GNU/Linux (Kernel $V) 1.70 +\$grub_dev 1.71 +kernel /boot/vmlinuz-$V root=\$root_dev 1.72 +---- 1.73 +" 1.74 + fi 1.75 +} 1.76 +EOT 1.77 + 1.78 +# Pack 1.79 +cd $objtree/taz 1.80 +tazpkg pack $PACKAGE-$VERSION 1.81 +mv *.tazpkg $objtree 1.82 +cd - 1.83 +exit 0