wok view syslinux/receipt @ rev 20056

syslinux: fixes from syslinux git
author Pascal Bellard <pascal.bellard@slitaz.org>
date Fri Sep 08 15:02:42 2017 +0200 (2017-09-08)
parents 12ba294405e5
children 4ff589aa999e
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="https://www.kernel.org/pub/linux/utils/boot/syslinux/$TARBALL"
12 LINLD="$WOK/linld/source"
13 CONFIG_FILES="/boot/isolinux/*.cfg /boot/isolinux/kbd"
14 TAGS="boot"
16 DEPENDS="ipxe memtest"
17 BUILD_DEPENDS="wget kbd-base perl nasm dev86 lzma mingw32-gcc upx posixovl \
18 util-linux-uuid-dev advancecomp libidn linld"
20 # Rules to gen a SliTaz package suitable for Tazpkg.
21 compile_rules()
22 {
23 rm -f $src/core/isolinux.bin
24 for i in loadhigh iso9660 readconfig keytab-lilo lzop-1.03-gcc6 fixes-4.07 ; do
25 patch -p 0 < $stuff/extra/$i.u
26 done
27 cp $stuff/tools/isohybrid.sh .
28 cp $stuff/extra/md5sum.c com32/modules
29 grep -q md5sum.c32 com32/modules/Makefile ||
30 sed -i 's/ifcpu64.c32/ifcpu64.c32 md5sum.c32/' com32/modules/Makefile
31 export LDFLAGS=''
32 make clean
33 echo "make all: LDFLAGS=$LDFLAGS"
34 make all 2>&1 | sed 's/NO_WERROR=1/NO_Werror=1/;/syslinux64.exe/d'
35 echo "make core: LDFLAGS=$LDFLAGS"
36 make -C core
37 make -C com32
38 ./isohybrid.sh --build
39 sed -i 's/loadkeys -m/loadkeys -u -m/' utils/keytab-lilo # for ru.kbd
40 mkdir kbd
41 for i in /usr/share/kbd/keymaps/i386/*/*.map.gz; do
42 [ "$(basename $(dirname $i))" == 'include' ] && continue
43 utils/keytab-lilo /usr/share/kbd/keymaps/i386/qwerty/us.map.gz \
44 $i > kbd/$(basename $i .map.gz)
45 done
46 cp -a $stuff/iso2exe .
47 cp $LINLD/*/tazboot.com iso2exe/boot.com
48 make -C iso2exe
49 }
51 # Rules to gen a SliTaz package suitable for Tazpkg.
52 genpkg_rules()
53 {
54 mkdir -p $fs/boot/isolinux $install/usr/share/doc
55 cp $stuff/iso2exe/README* $install/usr/share/doc
56 cp $stuff/iso2exe/init.custom $install/usr/share/doc
57 cp $LINLD/*/linld.com $fs/boot
58 cp -a $src/core/isolinux.bin $fs/boot/isolinux
59 lzma e $src/com32/modules/md5sum.c32 $fs/boot/isolinux/c32box.c32
60 lzma e $src/com32/menu/vesamenu.c32 $fs/boot/isolinux/vesamenu.c32
61 # $stuff/isolinux.msg is the old way the have a splash image.
62 cp $stuff/*.cfg $stuff/*.txt $stuff/help.* $stuff/opts.* $fs/boot/isolinux
63 rm -f $fs/boot/isolinux/common.cfg $fs/boot/isolinux/default.cfg
64 rm -f $fs/boot/isolinux/display.txt
65 while read label kbd loc tz menu; do
66 for i in ${kbd/,/ }; do
67 [ -e $src/kbd/$i ] || continue
68 cat >> $fs/boot/isolinux/i18n.cfg <<EOT
69 LABEL $label
70 MENU LABEL $menu
71 com32 c32box.c32
72 append kbdmap kbd $i lang=$loc kmap=${kbd#*,} tz=$tz
74 EOT
75 break
76 done
77 done <<EOT
78 br br-abnt2 pt_BR America/Sao_Paulo Brasil (abnt2)
79 br_ac\ brac us-acentos pt_BR America/Sao_Paulo Brasil (us-acentos)
80 cz cz-lat2 cs_CZ Europe/Prague Cesky
81 dk dk-latin1 da_DK Europe/Copenhagen Dansk
82 de de-latin1 de_DE Europe/Berlin Deutsch
83 de_CH\ deCH de_CH-latin1 de_CH Europe/Zurich Deutsch Schweiz
84 gr gr el_GR Europe/Helsinki Ellinika
85 en uk en_GB Europe/London English UK
86 us us en_US America/New_York English US
87 us_ac\ usac us-acentos en_US America/New_York English US (acentos)
88 us_dv\ usdv dvorak en_US America/New_York English US (dvorak)
89 us_dl\ usdl dvorak-l en_US America/New_York English US (dvorak-l)
90 us_dr\ usdr dvorak-r en_US America/New_York English US (dvorak-r)
91 es es es_ES Europe/Madrid Espanol
92 fr fr-latin1 fr_FR Europe/Paris Francais
93 be be-latin1 fr_BE Europe/Brussels Francais Belgique
94 ca cf fr_CA America/Montreal Francais Canada
95 fr_CH\ frCH fr_CH-latin1 fr_CH Europe/Zurich Francais Suisse
96 cr hr,croat hr_HR Europe/Zagreb Hrvatski
97 is is-latin1 is_IS Atlantic/Reykjavik Islenska
98 it it it_IT Europe/Rome Italiano
99 hu hu hu_HU Europe/Budapest Magyar
100 nl nl2 nl_NL Europe/Amsterdam Nederlands
101 no\ nb no-latin1 nb_NO Europe/Oslo Norsk (Bokmal)
102 nn no-latin1 nn_NO Europe/Oslo Norsk (Nynorsk)
103 po pl2 pl_PL Europe/Warsaw Polski
104 pt pt-latin1 pt_PT Europe/Lisbon Portugues
105 ru ru ru_RU Europe/Moscow Russian
106 ru_uk\ uk ru ru_UA Europe/Kiev Russian Ukraine
107 sl slovene sl_SI Europe/Ljubljana Slovenski
108 fi fi fi_FI Europe/Helsinki Suomi
109 se se-lat6 sv_SE Europe/Stockholm Svenska
110 tr trq tr_TR Asia/Istanbul Turkce
111 EOT
112 #hr croat hr_HR Europe/Zagreb Hrvatski
113 #grpc gr-pc el_GR Europe/Helsinki Ellinika
114 #jp jp106 ja_JP Asia/Tokyo Japanese
115 #sg sg-latin1 de_CH Europe/Zurich Deutsch Schweiz (sg)
116 #tr5 tr_q-latin5 tr_TR Asia/Istanbul Turkce (latin5)
118 cat >> $fs/boot/isolinux/i18n.cfg <<EOT
119 LABEL exit
120 MENU LABEL Back to main menu
122 MENU EXIT
123 MENU END
124 EOT
125 sed -i 's/^LABEL us$/&\n MENU DEFAULT/' $fs/boot/isolinux/i18n.cfg
126 chown root.root $src/kbd/*
127 touch -r $src $src/kbd/*
128 for kbd in $(cd $src/kbd; ls | tee ../kbd.l); do
129 msg="Invalid file kbd/$kbd"
130 [ -s $src/kbd/$kbd ] && msg="Unused: file kbd/$kbd" &&
131 grep -q " $kbd " $fs/boot/isolinux/i18n.cfg && continue
132 sed -i "/^$kbd\$/d" $src/kbd.l
133 echo "$msg"
134 done
135 ( cd $src/kbd; cat ../kbd.l | cpio -o -H newc ) >$fs/boot/isolinux/kbd
136 lzma e $fs/boot/isolinux/kbd $fs/boot/isolinux/kbd.lzma
137 mv -f $fs/boot/isolinux/kbd.lzma $fs/boot/isolinux/kbd
138 chown root.root $fs/boot/isolinux/*
139 }
141 # Pre and post install commands for Tazpkg.
142 post_install()
143 {
144 sed -i "/MENU TITLE SliTaz GNU\/Linux/ s| [0-9X]*$| $(date +%Y%m%d)|" \
145 "$1/boot/isolinux/isolinux.cfg"
146 sed '/MENU TITLE/!d;s/MENU TITLE //' > $1/etc/slitaz-version \
147 < "$1/boot/isolinux/isolinux.cfg"
148 }