wok view syslinux/receipt @ rev 14257

syslinux/iso2exe: check kernel version, add floppy bootstrap stub
author Pascal Bellard <pascal.bellard@slitaz.org>
date Thu Mar 28 11:51:42 2013 +0100 (2013-03-28)
parents b5ea41033c21
children bf8be127c60b
line source
1 # SliTaz package receipt.
3 PACKAGE="syslinux"
4 VERSION="4.06"
5 CATEGORY="base-system"
6 SHORT_DESC="LiveCD ISO bootloader (isolinux)"
7 MAINTAINER="pankso@slitaz.org"
8 TARBALL="$PACKAGE-$VERSION.tar.xz"
9 WEB_SITE="http://syslinux.zytor.com/"
10 WGET_URL="ftp://ftp.kernel.org/pub/linux/utils/boot/syslinux/$TARBALL"
11 BUILD_DEPENDS="kbd-base perl nasm dev86 lzma mingw32-gcc upx"
12 DEPENDS="gpxe memtest"
13 CONFIG_FILES="/boot/isolinux"
15 # Rules to gen a SliTaz package suitable for Tazpkg.
16 compile_rules()
17 {
18 cd $src
19 patch -p 0 < $stuff/extra/iso9660.u
20 patch -p 0 < $stuff/extra/readconfig.u
21 patch -p 0 < $stuff/extra/fs.u
22 cp $stuff/tools/isohybrid.sh .
23 cp $stuff/tools/keytab-lilo.pl .
24 cp $stuff/extra/md5sum.c com32/modules
25 grep -q md5sum.c32 com32/modules/Makefile ||
26 sed -i 's/ifcpu64.c32/ifcpu64.c32 md5sum.c32/' com32/modules/Makefile
27 make -C com32
28 ./isohybrid.sh --build
29 for i in /usr/share/kbd/keymaps/i386/*/*.map.gz; do
30 [ "$(basename $(dirname $i))" = "include" ] && continue
31 j=$(basename $i)
32 j=${j%.map.gz}.kbd
33 ./keytab-lilo.pl /usr/share/kbd/keymaps/i386/qwerty/us.map.gz $i > $j
34 done
35 cp -a $stuff/iso2exe .
36 make -C iso2exe
37 }
39 # Rules to gen a SliTaz package suitable for Tazpkg.
40 genpkg_rules()
41 {
42 mkdir -p $fs/boot/isolinux
43 cp -a $src/core/isolinux.bin $fs/boot/isolinux
44 cp -a $src/com32/modules/md5sum.c32 $fs/boot/isolinux/c32box.c32
45 cp -a $src/com32/menu/vesamenu.c32 $fs/boot/isolinux
46 # $stuff/isolinux.msg is the old way the have a splash image.
47 cp $stuff/*.cfg $stuff/*.txt $stuff/help.* $stuff/opts.* $fs/boot/isolinux
48 rm -f $fs/boot/isolinux/common.cfg $fs/boot/isolinux/default.cfg
49 rm -f $fs/boot/isolinux/display.txt
50 ( cd $src ; ls *.kbd | cpio -o -H newc ) > $fs/boot/isolinux/cpio.kbd
51 while read label kbd loc menu; do
52 for i in ${kbd/,/ }; do
53 [ -e $src/$i.kbd ] || continue
54 cat >> $fs/boot/isolinux/i18n.cfg <<EOT
56 # ${kbd/,/.kbd or }.kbd keyboard
57 LABEL $label
58 MENU LABEL $menu
59 com32 c32box.c32
60 append kbdmap cpio.kbd $i.kbd lang=$loc kmap=${kbd#*,}
61 EOT
62 break
63 done
64 done <<EOT
65 br br-abnt2 pt_BR Brazil
66 cz cz-lat2 C Cesky
67 dk dk-latin1 C Dansk
68 de de-latin1 de_DE Deutsch
69 de_CH\ deCH de_CH-latin1 de_DE Deutsch Schweitz
70 sg sg-latin1 de_DE Deutsch Schweitz (sg)
71 nl nl2 C Dutch
72 en uk en_GB English UK
73 us us en_US English US
74 us_ac\ usac us-acentos en_US English US (acentos)
75 us_dv\ usdv dvorak en_US English US (dvorak)
76 us_dl\ usdl dvorak-l en_US English US (dvorak-l)
77 us_dr\ usdr dvorak-r en_US English US (dvorak-r)
78 es es es_ES Espanol
79 fr fr-latin1 fr_FR Francais
80 be be-latin1 fr_FR Francais Belgique
81 ca cf fr_FR Francais Canada
82 fr_CH\ frCH fr_CH-latin1 fr_FR Francais Suisse
83 cr hr,croat C Hvratski
84 is is-latin1 C Islenska
85 it it it_IT Italiano
86 jp jp106 C Japanese
87 hu hu C Magyar
88 no no-latin1 C Norske
89 po pl2 C Polski
90 pt pt-latin1 pt_PT Portugues
91 ru ru ru_RU Russian
92 sl slovene C Slovenski
93 fi fi-latin1 C Suomi
94 se se-lat6 C Svenskt
95 tr trq C Turk
96 tr2 tr_q-latin5 C Turk latin5
97 EOT
98 cat >> $fs/boot/isolinux/i18n.cfg <<EOT
100 LABEL exit
101 MENU LABEL Back to main menu
102 MENU EXIT
103 MENU END
104 EOT
105 sed -i 's/^LABEL us$/&\n MENU DEFAULT/' $fs/boot/isolinux/i18n.cfg
106 for kbd in $(cd $src ; ls *.kbd); do
107 [ -s $src/$kbd ] || echo "Invalid file $kbd"
108 grep -q " $kbd " $fs/boot/isolinux/i18n.cfg && continue
109 echo "Missing: file $kbd"
110 done
111 chown root.root $fs/boot/isolinux/*
112 }
114 # Pre and post install commands for Tazpkg.
115 post_install()
116 {
117 sed -i "s/XXXXXXXX/$(date +%Y%m%d)/" $1/boot/isolinux/isolinux.cfg
118 }