ibus/ibus.spec
2011-06-16 05:38:59 +00:00

229 lines
6.2 KiB
RPMSpec

#
# spec file for package ibus
#
# 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/
#
Name: ibus
Version: 1.3.9
Release: 1
License: LGPL V2+
Url: http://code.google.com/p/ibus/
Source0: http://ibus.googlecode.com/files/%{name}-%{version}.tar.gz
Source1: xim.d-ibus
Source2: ibus-README.suse
Source3: xim.ibus.suse.template
Patch0: ibus-python-install-dir.patch
#Patch1: ibus-disable-portability-check.patch
#Patch2: ibus-disable-introspect.patch
Group: System/I18n/Chinese
Summary: Intelligent Input Bus for Linux OS
BuildRoot: %{_tmppath}/%{name}-%{version}-build
PreReq: /usr/bin/touch
Provides: locale(ja;ko;zh)
BuildRequires: gettext-devel gtk-doc libtool python
BuildRequires: dbus-1-devel dbus-1-glib-devel dbus-1-python-devel gtk2-devel
BuildRequires: gconf2-devel python-gobject2-devel update-desktop-files
BuildRequires: fdupes gobject-introspection-devel intltool iso-codes-devel
Requires: python-gtk dbus-1-python notification-daemon iso-codes gconf2 python-xdg python-notify gobject-introspection
%gconf_schemas_prereq
%define python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")
%define gtk_binary_version %(pkg-config --variable=gtk_binary_version gtk+-2.0)
%description
IBus means Intelligent Input Bus. It is a new input framework for Linux OS. It provides
full featured and user friendly input method user interface. It also may help
developers to develop input method easily.
%package -n libibus2
License: LGPL V2+
Summary: IBus libraries
Group: System/I18n/Chinese
%description -n libibus2
This package contains the libraries for IBus
%package gtk
License: LGPL V2+
Summary: IBus im module for gtk2
Group: System/I18n/Chinese
Requires: %{name} = %{version}-%{release}
%gtk2_immodule_requires
Supplements: packageand(ibus:gtk2)
%description gtk
This package contains ibus im module for gtk2
%if %suse_version >= 1140
%package gtk3
Summary: IBus im module for gtk3
Group: System/I18n/Chinese
Requires: %{name} = %{version}-%{release}
BuildRequires: gtk3-devel
%gtk3_immodule_requires
Supplements: packageand(ibus:gtk3)
%description gtk3
This package contains ibus im module for gtk3
%endif
%package devel
License: LGPL V2+
Summary: Development tools for ibus
Group: Development/Libraries/other
Requires: libibus2 = %{version}-%{release}
Requires: glib2-devel
Requires: dbus-1-devel
Requires: gtk-doc
%description devel
The ibus-devel package contains the header files and developer
docs for ibus.
%prep
%setup -q
%patch0 -p1
#%patch1 -p1
#%patch2 -p1
%build
autoreconf -fi
intltoolize -f
%if %suse_version >= 1140
%configure --disable-static \
--disable-iso-codes-check \
--disable-gobject-introspection \
--enable-gtk-doc \
--libexecdir=%{_prefix}/%{_lib}/ibus \
--enable-gtk3
%else
%configure --disable-static \
--disable-iso-codes-check \
--disable-gobject-introspection \
--enable-gtk-doc \
--libexecdir=%{_prefix}/%{_lib}/ibus
%endif
make %{?jobs:-j %jobs}
%install
%makeinstall
mkdir -p $RPM_BUILD_ROOT/etc/X11/xim.d/
install -m 644 $RPM_SOURCE_DIR/xim.d-ibus $RPM_BUILD_ROOT/etc/X11/xim.d/ibus
sed -i 1i"SYS_LIB=%{_lib}" $RPM_BUILD_ROOT/etc/X11/xim.d/ibus
PRIORITY=40
pushd $RPM_BUILD_ROOT/etc/X11/xim.d/
for lang in am ar as bn el fa gu he hi hr ja ka kk kn ko lo ml my \
pa ru sk vi zh_TW zh_CN zh_HK zh_SG \
de fr it es nl cs pl da nn nb fi en sv
do
mkdir $lang
pushd $lang
ln -s ../ibus $PRIORITY-ibus
popd
done
popd
rm -f $RPM_BUILD_ROOT/%{_libdir}/gtk-2.0/%{gtk_binary_version}/immodules/im-ibus.*a
rm -f $RPM_BUILD_ROOT/%{_libdir}/libibus.*a
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/xdg/autostart/ibus.desktop
ln -sf %{_datadir}/icons/hicolor/48x48/apps/ibus-keyboard.png \
$RPM_BUILD_ROOT%{_datadir}/pixmaps/ibus-keyboard.png
%suse_update_desktop_file %name Utility DesktopUtility
%suse_update_desktop_file ibus-setup System SystemSetup
%find_lang %{name}
%find_gconf_schemas
cat %{name}.schemas_list %{name}.lang > %{name}.lst
%fdupes -s $RPM_BUILD_ROOT
%clean
rm -rf %buildroot
%pre -f %{name}.schemas_pre
%post gtk
%gtk2_immodule_post
%preun -f %{name}.schemas_preun
%posttrans -f %{name}.schemas_posttrans
%postun gtk
%gtk2_immodule_postun
%post -n libibus2 -p /sbin/ldconfig
%postun -n libibus2 -p /sbin/ldconfig
%if %suse_version >= 1140
%post gtk3
%gtk3_immodule_post
%postun gtk3
%gtk3_immodule_postun
%endif
%files -f %{name}.lst
%defattr(-,root,root,-)
%doc AUTHORS COPYING README
%doc $RPM_SOURCE_DIR/xim.ibus.suse.template
%doc $RPM_SOURCE_DIR/ibus-README.suse
%dir /etc/X11/xim.d
%config /etc/X11/xim.d/*
%{python_sitelib}/ibus
%dir %{_datadir}/ibus/
%{_bindir}/ibus-daemon
%{_bindir}/ibus-setup
%{_datadir}/ibus/*
%{_datadir}/applications/*
%{_datadir}/icons/hicolor/*/apps/*
%{_datadir}/pixmaps/*
%{_prefix}/%{_lib}/ibus
%dir %{_datadir}/vala
%{_datadir}/vala/*
%{_libdir}/girepository-1.0/IBus-1.0.typelib
%{_datadir}/gir-1.0/IBus-1.0.gir
%files -n libibus2
%defattr(-,root,root,-)
%{_libdir}/lib*.so.*
%files gtk
%defattr(-,root,root,-)
%{_libdir}/gtk-2.0/%{gtk_binary_version}/immodules/im-ibus.so
%if %suse_version >= 1140
%files gtk3
%defattr(-,root,root,-)
%{_libdir}/gtk-3.0/3.0.0/immodules/*
%endif
%files devel
%defattr(-,root,root,-)
%{_libdir}/lib*.so
%{_includedir}/*
%{_datadir}/gtk-doc/html/*
%{_libdir}/pkgconfig/*
%changelog