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