wok annotate syslinux/receipt @ rev 20073

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