wok-backports annotate linux-source/stuff/buildtaz @ rev 47

Tiny edits
author Aleksej Bobylev <al.bobylev@gmail.com>
date Wed Mar 30 01:57:05 2016 +0300 (2016-03-30)
parents 0cfab50066bc
children
rev   line source
pascal@0 1 #!/bin/sh
pascal@0 2 #
pascal@0 3 # buildtaz 1.0
pascal@0 4 # This script generate a SliTaz package for linux kernel and modules.
pascal@0 5 # Inspired from builddeb script.
pascal@0 6 #
pascal@0 7 # (C) 2009 SliTaz - GNU General Public License v3.
pascal@0 8 #
pascal@0 9 # Author: Eric Joseph-Alexandre <erjo@slitaz.org>
pascal@0 10
pascal@0 11 set -e
pascal@0 12
pascal@0 13 LOCALVERSION=$(grep ^CONFIG_LOCALVERSION $objtree/.config | sed -e "s/CONFIG_LOCALVERSION=\"\(.*\)\"/\1/")
pascal@0 14 PACKAGE="linux${LOCALVERSION}"
pascal@0 15 VERSION=${KERNELVERSION}
pascal@0 16 V=$KERNELRELEASE
pascal@0 17 DIR="$objtree/taz/$PACKAGE-$VERSION"
pascal@0 18 fs="$DIR/fs"
pascal@0 19
pascal@0 20 # Setup directories
pascal@0 21 rm -rf "$objtree/taz"
pascal@0 22 mkdir -p "$fs/lib" "$fs/boot"
pascal@0 23
pascal@0 24 # Build and install kernel
pascal@0 25 cp System.map "$fs/boot/System.map-$KERNELRELEASE"
pascal@0 26 cp $KBUILD_IMAGE "$fs/boot/vmlinuz-$KERNELRELEASE"
pascal@0 27
pascal@0 28 # Build and compress modules if needed
pascal@0 29 if grep -q '^CONFIG_MODULES=y' .config ; then
pascal@0 30 INSTALL_MOD_PATH="$fs" make KBUILD_SRC= modules_install
pascal@0 31 [ -f $objtree/slitaz/gztazmod.sh ] && $objtree/slitaz/gztazmod.sh $fs/lib/modules/${VERSION}${LOCALVERSION}
pascal@0 32 fi
pascal@0 33
al@47 34 # Create SliTaz package
pascal@0 35 cat > $DIR/receipt <<EOT
pascal@0 36 # SliTaz package receipt.
pascal@0 37
pascal@0 38 PACKAGE="${PACKAGE}"
pascal@0 39 VERSION="${VERSION}"
pascal@0 40 CATEGORY="base-system"
pascal@0 41 SHORT_DESC="Customized Linux Kernel"
pascal@0 42 WEB_SITE="http://www.kernel.org"
pascal@0 43 DEPENDS="depmod"
pascal@0 44
pascal@0 45 post_install()
pascal@0 46 {
pascal@0 47 echo "Processing post-install commands..."
pascal@0 48 chroot "\$1/" depmod -a $V
pascal@0 49 if [ -f "\$1/boot/grub/menu.lst" ]; then
pascal@0 50 root_dev="`cat \$1/boot/grub/menu.lst | grep root= | sed 's/.*root=\([^ ]*\).*/\1/' | head -n 1`"
pascal@0 51 grub_dev="`cat \$1/boot/grub/menu.lst | grep "root (" | head -n 1`"
pascal@0 52 # Add new kernel entry in case of upgrade for installed system.
pascal@0 53 if ! grep -q \$PACKAGE-\$VERSION \$1/boot/grub/menu.lst; then
pascal@0 54 echo "
pascal@0 55
pascal@0 56 title SliTaz GNU/Linux (Kernel $V)
pascal@0 57 "\$grub_dev"
pascal@0 58 kernel /boot/vmlinuz-$V root=\$root_dev" >> \$1/boot/grub/menu.lst
pascal@0 59 fi
pascal@0 60
pascal@0 61 # Display information message.
pascal@0 62 echo "
pascal@0 63 ----
pascal@0 64 GRUB is installed, these tree lines must be in your /boot/grub/menu.lst:
pascal@0 65
pascal@0 66 title SliTaz GNU/Linux (Kernel $V)
pascal@0 67 \$grub_dev
pascal@0 68 kernel /boot/vmlinuz-$V root=\$root_dev
pascal@0 69 ----
pascal@0 70 "
pascal@0 71 fi
pascal@0 72 }
pascal@0 73 EOT
pascal@0 74
pascal@0 75 # Pack
pascal@0 76 cd $objtree/taz
pascal@0 77 tazpkg pack $PACKAGE-$VERSION
pascal@0 78 mv *.tazpkg $objtree
pascal@0 79 cd -
pascal@0 80 exit 0