SHA256
1
0
forked from pool/kbd
kbd/kbd.spec
Stanislav Brabec de84e6cc2c Accepting request 82135 from home:sbrabec:branches:Base:System
- Update to version 1.15.3:
  * kbdinfo: New utility to obtain information about console.
  * setvtrgb: New utility to set the virtual terminal RGB colors.
  * loadkeys: Add LOADKEYS_KEYMAP_PATH env variable.
  * loadkeys: Fix some memory leaks.
  * loadkeys: Do not set prefer_unicode for iso-8859-1.
  * loadkeys -a: Switch to ASCII mode.
  * loadkeys: Fix "compose as usual" for Unicode diacritics.
  * Add dvorak-ru keymap.
  * Add LatGrkCyr fonts.
Added bnc#:
  (bnc#463801)

OBS-URL: https://build.opensuse.org/request/show/82135
OBS-URL: https://build.opensuse.org/package/show/Base:System/kbd?expand=0&rev=31
2011-09-14 14:52:28 +00:00

329 lines
9.8 KiB
RPMSpec

#
# spec file for package kbd
#
# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
# norootforbuild
Name: kbd
Url: ftp://ftp.altlinux.org/pub/people/legion/kbd/
License: GPLv2+
Group: System/Console
AutoReqProv: on
Version: 1.15.3
Release: 0
Summary: Keyboard and Font Utilities
%if 0
Source: kbd-%{version}.tar.bz2
%else
Source: kbd-%{version}-repack.tar.bz2
%endif
Source1: kbd_fonts.tar.bz2
Source2: suse-add.tar.bz2
Source3: README.SuSE
Source4: kbd.init
Source5: kbd.fillup
Source6: kbd.fillup.nonpc
Source8: sysconfig.console
Source9: sysconfig.keyboard
Source10: testutf8
Source11: fbtest.c
Source12: fbtest.8
Source13: guess_encoding.pl
Source42: convert-kbd-mac.sed
Source43: repack_kbd.sh
Patch0: kbd-1.15.2-prtscr_no_sigquit.patch
Patch1: kbd-1.15.2-dumpkeys-ppc.patch
Patch2: kbd-1.15.2-unicode_scripts.patch
Patch3: kbd-1.15.2-docu-X11R6-xorg.patch
Patch4: kbd-1.15.2-sv-latin1-keycode10.patch
Patch5: kbd-1.15.2-setfont-no-cruft.patch
Patch6: kbd-1.15.2-dumpkeys-C-opt.patch
Patch7: kbd-1.15.2-defkeymap.patch
Patch8: kbd-1.15.2-chvt-userwait.patch
Patch9: kbd-%{version}-po-es.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
PreReq: %fillup_prereq %insserv_prereq
BuildRequires: bison flex
Recommends: fbset
%description
Load and save keyboard mappings. This is needed if you are not using
the US keyboard map. This package also contains utilities for changing
your console fonts. If you install this package, YaST includes an extra
menu to allow you to choose between the different fonts. This package
also includes fonts from the kbd_fonts.tar.gz package (by Paul
Gortmaker) on Sunsite.
Authors:
--------
Andries Brouwer <aeb@cwi.nl>
Alexey Gladkov <gladkov.alexey@gmail.com>
%define kbd /usr/share/kbd
%prep
%setup -q -a 1 -a 2 -n kbd-%{version}
%patch0 -p1
%patch1 -p1
%patch2
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6
%patch7 -p1
%patch8 -p1
%patch9 -p1
%build
for i in `find data/keymaps/mac -type f` ; do
sed -i -f %{S:42} $i
done
# workaround ambiguous keymap names
pushd data/keymaps/i386
# bnc#48301
test -f qwerty/se-latin1.map || cp qwerty/sv-latin1.map qwerty/se-latin1.map
# bnc#435121
test -f olpc/es-olpc.map || mv olpc/es.map olpc/es-olpc.map
popd
./configure \
--prefix=/ \
--datadir=%{kbd} \
--mandir=%{_mandir} \
--enable-nls \
--localedir=/usr/share/locale \
--enable-optional-progs
make CFLAGS="$RPM_OPT_FLAGS -Os"
gcc $RPM_OPT_FLAGS -o fbtest $RPM_SOURCE_DIR/fbtest.c
# fix lat2-16.psfu (bnc#340579)
font=data/consolefonts/lat2a-16.psfu
./src/psfxtable -i $font -it data/unimaps/lat2u.uni \
-o t.psfu
mv t.psfu $font
make
%install
mkdir -p $RPM_BUILD_ROOT/bin
mkdir -p $RPM_BUILD_ROOT/sbin
#mkdir -p $RPM_BUILD_ROOT/usr/bin
#mkdir -p $RPM_BUILD_ROOT/usr/sbin
mkdir -p $RPM_BUILD_ROOT/etc/init.d
DOC=${RPM_BUILD_ROOT}%{_defaultdocdir}/kbd
KBD=%{kbd}
K=$RPM_BUILD_ROOT$KBD
mkdir -p $K/consolefonts
# First install the fonts from the vfont package
# (allowing kbd to overwrite some of them)
mkdir -p $DOC/fonts
install -m 644 fonts/README $DOC/fonts/README.fonts
install -m 644 fonts/vfont-4.36/README $DOC/fonts/README.vfont-4.36
install -m 644 fonts/vfont-5.10/README $DOC/fonts/README.vfont-5.10
install -m 644 fonts/vfont-5.10/SCRIPT $DOC/fonts/SCRIPT.vfont-5.10
rm -f fonts/vfont-5.10/SCRIPT fonts/*/README
install -m 644 fonts/*/* $K/consolefonts/
# Now call kbd install
echo "# Now call kbd install DESTDIR=$RPM_BUILD_ROOT DATA_DIR=%{kbd} MAN_DIR=%{_mandir}"
make DESTDIR=$RPM_BUILD_ROOT DATA_DIR=%{kbd} MAN_DIR=%{_mandir} install
# ln -s iso01-12x22.psfu $K/consolefonts/suse12x22.psfu
install -m 644 data/consolefonts/README* $DOC/fonts/
mkdir -p $DOC/doc/
install -m 644 doc/keysyms.h.info doc/kbd.FAQ.txt doc/kbd.FAQ*.html doc/README* doc/TODO $DOC/doc/
install -m 644 doc/as400.kbd doc/console.docs doc/repeat/set_kbd_repeat-2 $DOC/doc/
echo "See /usr/share/i18/charmaps for a description of char maps" >$DOC/doc/README.charmaps
install -m 644 COPYING ChangeLog CREDITS README $DOC/
install -m 644 %SOURCE3 $DOC/
rm -f $K/consolefonts/README* $K/consolefonts/ERRORS.gz
if ls $K/consolefonts/Agafari-* > /dev/null 2>&1; then
echo "";
echo "ERROR: Ethiopian Agafari fonts are for noncommercial distribution only."
echo "please run repack_kbd.sh";
echo "";
exit 1
fi
install -m 755 %SOURCE4 $RPM_BUILD_ROOT/etc/init.d/kbd
ln -sf ../etc/init.d/kbd $RPM_BUILD_ROOT/sbin/rckbd
ln -sf us.map.gz $K/keymaps/i386/qwerty/khmer.map.gz
ln -sf us.map.gz $K/keymaps/i386/qwerty/korean.map.gz
ln -sf us.map.gz $K/keymaps/i386/qwerty/arabic.map.gz
ln -sf us.map.gz $K/keymaps/i386/qwerty/chinese.map.gz
ln -sf us.map.gz $K/keymaps/i386/qwerty/taiwanese.map.gz
# Compatability links; don't know what the first three are good for.
# The others are for yast/langselection and should be removed as soon as
# yast knows about it.
#ln -sf de-latin1-nodeadkeys.map.gz \
# $K/keymaps/i386/qwertz/de-lat1-nd.map.gz
#ln -sf ru1.map.gz $K/keymaps/i386/qwerty/russian.map.gz
#ln -sf sg-latin1-lk450.map.gz \
# $K/keymaps/i386/qwertz/sg-l1-lk450.map.gz
# The next two links are for yast-language choise; should be obsolete
# with the next yast version (on 6.1)
#ln -sf lat1-16.psfu.gz $K/consolefonts/lat1u-16.psf.gz
#ln -sf lat2-16.psfu.gz $K/consolefonts/lat2u-16.psf.gz
#
# This is for stupid default font search
rm -f $K/consolefonts/default8x16.gz
ln -sf default8x16.psfu.gz $K/consolefonts/default8x16.gz
#
rm -f $K/keymaps/i386/qwerty/*~ $K/keymaps/i386/qwerty/*,v
#
# this is until the Cyr* font are not part of the package
rm -f $K/consolefonts/Cyr_a8x14.gz
ln -sf Cyr_a8x14.psfu.gz $K/consolefonts/Cyr_a8x14.gz
rm -f $K/consolefonts/Cyr_a8x16.gz
ln -sf Cyr_a8x16.psfu.gz $K/consolefonts/Cyr_a8x16.gz
rm -f $K/consolefonts/Cyr_a8x8.gz
ln -sf Cyr_a8x8.psfu.gz $K/consolefonts/Cyr_a8x8.gz
#
find $K -name \*.orig | xargs -r rm -vf
# add some missing maps to mac and remap french board
(
cd $K/keymaps/mac/all
pwd
#ln -s mac-fr-latin1.map.gz mac-fr_CH-latin1.map.gz
#ln -s mac-fr-latin1.map.gz mac-fr.map.gz
for i in \
mac-es.map.gz \
mac-it.map.gz \
mac-pt-latin1.map.gz \
mac-br-abnt2.map.gz \
mac-gr.map.gz \
mac-dk-latin1.map.gz \
mac-no-latin1.map.gz \
mac-fi-latin1.map.gz \
mac-cz-us-qwertz.map.gz \
mac-hu.map.gz \
mac-Pl02.map.gz \
mac-ru1.map.gz \
mac-jp106.map.gz
do test -f $i || ln -sv mac-us.map.gz $i
done
)
FILLUP_DIR=$RPM_BUILD_ROOT/var/adm/fillup-templates
mkdir -p $FILLUP_DIR
install -m 644 %SOURCE8 $FILLUP_DIR/sysconfig.console
install -m 644 %SOURCE9 $FILLUP_DIR/sysconfig.keyboard
%ifarch %ix86 alpha ia64 x86_64
cat %SOURCE5 >> $FILLUP_DIR/sysconfig.keyboard
%else
cat %SOURCE6 >> $FILLUP_DIR/sysconfig.keyboard
%endif
#mkdir -p $RPM_BUILD_ROOT/etc/sysconfig
#touch $RPM_BUILD_ROOT/etc/sysconfig/console
%ifnarch %ix86
rm -f $RPM_BUILD_ROOT/%{_mandir}/man8/resizecons.8*
%endif
%ifarch %sparc m68k
rm -f $RPM_BUILD_ROOT/%{_mandir}/man8/getkeycodes.8*
rm -f $RPM_BUILD_ROOT/%{_mandir}/man8/setkeycodes.8*
%endif
install -m 755 %_sourcedir/testutf8 $RPM_BUILD_ROOT/bin/
install -m 755 fbtest $RPM_BUILD_ROOT/sbin/
install -m 644 %SOURCE12 $RPM_BUILD_ROOT/%{_mandir}/man8/
install -m 755 %SOURCE13 $RPM_BUILD_ROOT/bin/guess_encoding
%find_lang %{name}
%post
%{fillup_and_insserv -ny console kbd}
%{fillup_only -n keyboard}
#echo "Please read the docu about the new COMPOSETABLE rc.config variable."
#echo "See /etc/sysconfig/console, /etc/sysconfig/keyboard"
#echo "and %{_docdir}/kbd/README.SuSE."
%postun
%{insserv_cleanup}
%files -f %{name}.lang
%defattr(-,root,root)
#%config(noreplace) /etc/sysconfig/console
%doc %{_defaultdocdir}/kbd
#%doc COPYING CHANGES README CREDITS
%config /etc/init.d/kbd
/var/adm/fillup-templates/sysconfig.console
/var/adm/fillup-templates/sysconfig.keyboard
%{kbd}
/sbin/rckbd
/sbin/fbtest
/bin/chvt
/bin/openvt
/bin/deallocvt
/bin/dumpkeys
%ifnarch %sparc m68k
/bin/getkeycodes
/bin/setkeycodes
%endif
/bin/fgconsole
/bin/kbd_mode
/bin/kbdinfo
/bin/loadkeys
/bin/loadunimap
/bin/mapscrn
/bin/psfaddtable
/bin/psfgettable
/bin/psfstriptable
/bin/psfxtable
%ifarch %ix86
/bin/resizecons
%endif
/bin/setfont
/bin/setleds
/bin/setmetamode
/bin/setvtrgb
/bin/showconsolefont
/bin/showkey
/bin/unicode_start
/bin/unicode_stop
/bin/kbdrate
/bin/testutf8
/bin/guess_encoding
/bin/clrunimap
/bin/getunimap
/bin/outpsfheader
/bin/screendump
/bin/setlogcons
/bin/setpalette
/bin/setvesablank
/bin/spawn_console
/bin/spawn_login
%doc %{_mandir}/man1/*
%doc %{_mandir}/man5/keymaps.5.gz
%ifnarch %sparc m68k
%doc %{_mandir}/man8/getkeycodes.8.gz
%doc %{_mandir}/man8/setkeycodes.8.gz
%endif
%doc %{_mandir}/man8/showconsolefont.8.gz
%doc %{_mandir}/man8/loadunimap.8.gz
%doc %{_mandir}/man8/mapscrn.8.gz
%ifarch %ix86
%doc %{_mandir}/man8/resizecons.8.gz
%endif
%doc %{_mandir}/man8/setfont.8.gz
%doc %{_mandir}/man8/fbtest.8.gz
%doc %{_mandir}/man8/kbdrate.8.gz
%doc %{_mandir}/man8/clrunimap.8.gz
%doc %{_mandir}/man8/getunimap.8.gz
%doc %{_mandir}/man8/mk_modmap.8.gz
%doc %{_mandir}/man8/setlogcons.8.gz
%doc %{_mandir}/man8/setvesablank.8.gz
%doc %{_mandir}/man8/setvtrgb.8.gz
%doc %{_mandir}/man8/vcstime.8.gz
%clean
rm -rf $RPM_BUILD_ROOT
%changelog