wok-current view syslinux/receipt @ rev 1055
syslinux: 3.70 kbdmap bug quick fix
author | Pascal Bellard <pascal.bellard@slitaz.org> |
---|---|
date | Mon Jul 14 11:08:19 2008 +0000 (2008-07-14) |
parents | 29ef7d8a4729 |
children | e53e6a788414 |
line source
1 # SliTaz package receipt.
3 PACKAGE="syslinux"
4 VERSION="3.70"
5 CATEGORY="base-system"
6 SHORT_DESC="LiveCD ISO bootloader (isolinux)"
7 MAINTAINER="pankso@slitaz.org"
8 TARBALL="$PACKAGE-$VERSION.tar.gz"
9 WEB_SITE="http://syslinux.zytor.com/"
10 WGET_URL="ftp://ftp.kernel.org/pub/linux/boot/syslinux/$TARBALL"
11 BUILD_DEPENDS="kbd-base perl"
12 DEPENDS="gpxe"
14 # Rules to gen a SliTaz package suitable for Tazpkg.
15 compile_rules()
16 {
17 cd $src
18 cp ../stuff/tools/keytab-lilo.pl .
19 for i in /usr/share/kbd/keymaps/i386/*/*.map.gz; do
20 [ "$(basename $(dirname $i))" = "include" ] && continue
21 j=$(basename $i)
22 j=${j%.map.gz}.kbd
23 ./keytab-lilo.pl /usr/share/kbd/keymaps/i386/qwerty/us.map.gz $i > $j
24 done
25 # patch kbdmap bug
26 while read file offset; do
27 cp $file $file.unpatched
28 echo "Fix $file 3.70 kbdmap bug..."
29 echo "0 90 90 |.." | hexdump -R | \
30 dd conv=notrunc bs=1 count=2 seek=$(($offset)) of=$file 2> /dev/null
31 echo "0 90 90 |.." | hexdump -R | \
32 dd conv=notrunc bs=1 count=2 seek=$(($offset+5)) of=$file 2> /dev/null
33 done <<EOT
34 core/isolinux.bin 0x1AC9
35 core/pxelinux.0 0x2098
36 linux/syslinux-nomtools 0x3CDD
37 extlinux/extlinux 0x4BBA
38 EOT
39 }
41 # Rules to gen a SliTaz package suitable for Tazpkg.
42 genpkg_rules()
43 {
44 mkdir -p $fs/boot/isolinux
45 cp -a $src/core/isolinux.bin $fs/boot/isolinux
46 cp -a $src/com32/modules/reboot.c32 $fs/boot/isolinux
47 cp stuff/* $fs/boot/isolinux
48 rm -rf $fs/boot/isolinux/tools $fs/boot/isolinux/*.kbd 2> /dev/null
49 grep kbd$ $fs/boot/isolinux/*.cfg | while read cfg kbd; do
50 cfg=$(basename ${cfg%.cfg:*})
51 sed -i "s/$kbd/$cfg.kbd/" $fs/boot/isolinux/$cfg.cfg
52 cp $src/$kbd $fs/boot/isolinux/$cfg.kbd
53 done
54 chown root.root $fs/boot/isolinux/*
55 # Package all syslinux pkgs
56 for i in $(cd $WOK; ls -d syslinux-*)
57 do
58 tazwok genpkg $i
59 done
60 }