File uim.spec of Package uim

#
# spec file for package uim (Version 1.5.6)
#
# Copyright (c) 2009 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:           uim
BuildRequires:  anthy-devel canna-devel emacs-x11 gcc-c++ intltool
BuildRequires:  gnome-panel-devel gtk2-devel libgnomeui-devel
BuildRequires:  ncurses-devel perl-XML-Parser pkg-config update-desktop-files
BuildRequires:  emacs-x11 xemacs
BuildRequires:  libexpat-devel
BuildRequires:  qt3-devel
BuildRequires:  libqt4-devel
%if %suse_version > 1020
BuildRequires:  fdupes
%endif
# xorg-x11-libXdmcp-devel libgnomeprintui-devel
License:        GPL v2 or later
Group:          System/I18n/Japanese
AutoReqProv:    on
PreReq:         %{_bindir}/touch
Provides:       locale(xorg-x11:ja)
Version:        1.5.6
Release:        2
Url:            http://uim.freedesktop.org/wiki/
# svn co http://freedesktop.org:8080/svn/uim/trunk
# Source0:      http://freedesktop.org/Software/UimDownload/uim-0.4.2.1.tar.bz2
# freedesktop svn archive is broken. Currently there is an snapshot of
# a new svn repository available which is updated every hour:
# http://freedesktop.org/~tkng/uim-trunk.tar.gz
Source0:        http://uim.freedesktop.org/releases/uim-%{version}.tar.bz2
Source1:        suse-start-uim.el
Source2:        xemacs-auto-autoloads.el
Source3:        etc-x11-xim.d-uim
Patch1:         qt-build.patch
Patch10:        uim-sigscheme-build-fixes.diff
Patch11:        uim-gnome-build-fixes.diff
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
Summary:        A multilingual input method library

%description
Uim is a multilingual input method library. Uim's project goal is to
provide secure and useful input method for all languages. Currently, it
can input to applications which support gtk+'s immodule or XIM.



Authors:
--------
    TOKUNAGA Hiroyuki <tkng@xem.jp>
    Masahito Omote <omote@utuuzin.net>
    Yusuke Tabata <yusuke@cherubim.icw.co.jp>
    Yamaken <yamaken@bp.iij4u.or.jp>
    NOKUBI Takatsugu <knok@daionet.gr.jp>

%package devel
License:        GPL v2 or later
Summary:        Include Files and Libraries mandatory for Development
Group:          System/I18n/Japanese
Requires:       %{name} = %{version} glibc-devel

%description devel
Include Files and Libraries mandatory for Development.



Authors:
--------
    TOKUNAGA Hiroyuki <tkng@xem.jp>
    Masahito Omote <omote@utuuzin.net>
    Yusuke Tabata <yusuke@cherubim.icw.co.jp>
    Yamaken <yamaken@bp.iij4u.or.jp>
    NOKUBI Takatsugu <knok@daionet.gr.jp>

%package gtk2
License:        GPL v2 or later
Summary:        Control applet using gnome2
Group:          System/I18n/Japanese
Requires:       %{name} = %{version}
Obsoletes:      uim-applet
Provides:       uim-applet
Provides:       locale(gnome-libs:ja)

%description gtk2
Control applet using gnome2



Authors:
--------
    TOKUNAGA Hiroyuki <tkng@xem.jp>
    Masahito Omote <omote@utuuzin.net>
    Yusuke Tabata <yusuke@cherubim.icw.co.jp>
    Yamaken <yamaken@bp.iij4u.or.jp>
    NOKUBI Takatsugu <knok@daionet.gr.jp>

%package qt
License:        GPL v2 or later
Summary:        Qt3 input module plugin for uim
Group:          System/I18n/Japanese
Requires:       %{name} = %{version}
Provides:       locale(qt3:ja)

%description qt
Qt3 input module plugin for uim



Authors:
--------
    Kazuki Ohta <mover@hct.zaq.ne.jp>
    Yamaken <yamaken@bp.iij4u.or.jp>

%package qt4
License:        GPL v2 or later
Summary:        Qt4 input module plugin for uim
Group:          System/I18n/Japanese
Requires:       %{name} = %{version}
Requires:       uim-qt = %{version}
Provides:       locale(libqt4:ja)

%description qt4
Qt4 input module plugin for uim



Authors:
--------
    Kazuki Ohta <mover@hct.zaq.ne.jp>
    Yamaken <yamaken@bp.iij4u.or.jp>

%prep
%setup0 -q
%patch1 -p1
%patch10 -p1
%if %suse_version >= 1110
%patch11 -p1
%endif
cp emacs/README README.emacs
iconv -f euc-jp -t utf-8 < emacs/README.ja > README.ja.emacs

%build
libtoolize --force --copy
autoreconf --force --install
intltoolize --force -c --automake
%configure --disable-static --with-pic \
	--libexecdir=%{_prefix}/lib/uim \
	--without-m17nlib\
	--with-canna\
	--with-anthy-utf8 \
	--with-qt\
	--with-qt-immodule \
	--with-qt4-immodule \
	--with-libedit
#	--disable-scm-nested-eval --enable-callback-queue\
make %{?jobs:-j %jobs}

%install
%makeinstall
rm -f $RPM_BUILD_ROOT%{_includedir}/gcroots.h
rm -f $RPM_BUILD_ROOT%{_libdir}/pkgconfig/gcroots.pc
# this file is generated by "uim-module-manager". 
# touch it here to make sure that it is in the file list of the
# package, then it will be deleted when the package is uninstalled:
touch $RPM_BUILD_ROOT%{_datadir}/uim/modules
mkdir -p $RPM_BUILD_ROOT/etc/X11/xim.d/ja
install -m 644 $RPM_SOURCE_DIR/etc-x11-xim.d-uim \
               $RPM_BUILD_ROOT/etc/X11/xim.d/uim
pushd  $RPM_BUILD_ROOT/etc/X11/xim.d/ja
    ln -s ../uim 60-uim
popd
# GNU Emacs:
install -m 644 $RPM_SOURCE_DIR/suse-start-uim.el $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp/
pushd $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp/uim-el
    for i in $(find . -name "*.el")
    do
        emacs -no-site-file -q -batch -eval '(setq load-path (cons "." load-path))' -f batch-byte-compile $i
    done
popd
# XEmacs
mkdir -p $RPM_BUILD_ROOT%{_datadir}/xemacs/site-packages/lisp/uim-el
install -m 644 emacs/*.el $RPM_BUILD_ROOT%{_datadir}/xemacs/site-packages/lisp/uim-el
pushd $RPM_BUILD_ROOT%{_datadir}/xemacs/site-packages/lisp/uim-el
    for i in $(find . -name "*.el")
    do
        xemacs -no-site-file -q -batch -eval '(setq load-path (cons "." load-path))' -f batch-byte-compile $i
    done
popd
install -m 644 $RPM_SOURCE_DIR/xemacs-auto-autoloads.el \
    $RPM_BUILD_ROOT%{_datadir}/xemacs/site-packages/lisp/uim-el/auto-autoloads.el
# replace buildroot in comments in .elc files by spaces with the same total length:
RPM_BUILD_ROOT_REPLACEMENT=$(echo "$RPM_BUILD_ROOT" | tr [:print:] ' ')
for i in $(find $RPM_BUILD_ROOT -name "*.elc")
do
    perl -pi -e "s|(;;; from file )$RPM_BUILD_ROOT(%{_datadir}/xemacs/site-packages/.*)|\1$RPM_BUILD_ROOT_REPLACEMENT\2|" $i
    perl -pi -e "s|(;;; from file )$RPM_BUILD_ROOT(%{_datadir}/emacs/site-lisp/.*)|\1$RPM_BUILD_ROOT_REPLACEMENT\2|" $i
done
%find_lang uim
%if %suse_version > 1100
touch uim-chardict-qt.lang
%else
%find_lang uim-chardict-qt
%endif
%suse_update_desktop_file uim System SystemSetup
find $RPM_BUILD_ROOT -name "*.scm" \
    | grep -E -v "installed-modules.scm|loader.scm" \
    | sort | uniq | perl -p -e "s|$RPM_BUILD_ROOT||" >> uim.lang
%if %suse_version > 1020
%fdupes $RPM_BUILD_ROOT/usr/share
%endif
find %{buildroot} -type f -name "*.la" -exec %{__rm} -fv {} +

%clean
rm -rf $RPM_BUILD_ROOT

%post
/sbin/ldconfig
# register uim modules to uim. This will change the files:
#     %{_datadir}/uim/installed-modules.scm
#     %{_datadir}/uim/loader.scm
#     %{_datadir}/uim/modules
uim-module-manager --register pyload anthy anthy-utf8 canna skk tcode tutcode hangul viqr ipa-x-sampa latin

%postun
/sbin/ldconfig

%post gtk2
# trigger run of SuSEconfig.gtk2 to register/unregister this input module
# by calling gtk-query-immodules-2.0:
touch var/adm/SuSEconfig/run-gtk

%postun gtk2
# trigger run of SuSEconfig.gtk2 to register/unregister this input module
# by calling gtk-query-immodules-2.0:
touch var/adm/SuSEconfig/run-gtk

%files -n uim -f uim.lang
%defattr(-, root, root)
%doc AUTHORS COPYING ChangeLog INSTALL* NEWS* README*
%doc doc
%dir /etc/X11/xim.d/
/etc/X11/xim.d/*
%dir %{_datadir}/uim
%dir %{_datadir}/uim/lib
# autogenerated by uim-module-manager:
%ghost %{_datadir}/uim/installed-modules.scm
%ghost %{_datadir}/uim/loader.scm
%ghost %{_datadir}/uim/modules
%dir %{_datadir}/uim/pixmaps/
%{_datadir}/uim/pixmaps/*
%{_bindir}/uim-sh
%{_bindir}/uim-module-manager
%{_bindir}/uim-xim
%{_bindir}/uim-fep
%{_bindir}/uim-fep-tick
%{_bindir}/uim-el-agent
%{_bindir}/uim-el-helper-agent
%{_libdir}/*.so.*
%dir %{_libdir}/uim
%if "%{_libdir}" != "%{_prefix}/lib"
%dir %{_prefix}/lib/uim
%endif
%{_prefix}/lib/uim/uim-helper-server
%{_prefix}/lib/uim/uim-toolbar-applet
%{_prefix}/lib/uim/uim-candwin-gtk
%dir %{_libdir}/uim/plugin/
%{_libdir}/uim/plugin/*.so
%doc %{_mandir}/man1/*.1.gz
%{_datadir}/applications/%name.desktop
%{_datadir}/emacs/site-lisp/*
%dir %{_datadir}/xemacs/site-packages/
%dir %{_datadir}/xemacs/site-packages/lisp/
%dir %{_datadir}/xemacs/site-packages/lisp/uim-el/
%{_datadir}/xemacs/site-packages/lisp/uim-el/*

%files -n uim-devel
%defattr(-, root, root)
%{_libdir}/*.so
%dir %{_includedir}/uim
%{_includedir}/uim/*
%{_libdir}/pkgconfig/uim.pc

%files -n uim-gtk2
%defattr(-, root, root)
%{_bindir}/uim-im-switcher-gtk
%{_bindir}/uim-input-pad-ja
%{_bindir}/uim-toolbar-gtk
%{_bindir}/uim-toolbar-gtk-systray
%{_bindir}/uim-pref-gtk
%{_libdir}/bonobo/servers/*.server
%{_libdir}/gtk-*/*/immodules/*.so

%files -n uim-qt -f uim-chardict-qt.lang
%defattr(-, root, root)
%{_bindir}/uim-chardict-qt
%{_bindir}/uim-im-switcher-qt
%{_bindir}/uim-pref-qt
%{_bindir}/uim-toolbar-qt
%{_prefix}/lib/qt3/plugins/inputmethods/*.so
%{_prefix}/lib/uim/uim-candwin-qt
%dir %{_datadir}/uim/helperdata/
%{_datadir}/uim/helperdata/bushu.t

%files -n uim-qt4 -f uim-chardict-qt.lang
%defattr(-, root, root)
%{_libdir}/qt4/plugins/inputmethods/*

%changelog
openSUSE Build Service is sponsored by