File gcin.spec of Package gcin
#
# spec file for package gcin
#
# Copyright (c) 2013 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/
#
Summary: Chinese input method server
License: LGPL-2.1
Group: System/I18n/Chinese
Name: gcin
Version: 2.7.9
Release: 0
Url: http://hyperrate.com/dir.php?eid=67
Source0: gcin-%{version}.tar.bz2
Source1: xim.d-gcin
Source2: gcin-README.suse
Source3: xim.gcin.suse.template
Patch0: configure146p12.diff
Patch1: gcin_scripts_modify-XIM_103.diff
Patch2: icon_path.diff
Patch3: gcin-libdir.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: anthy-devel
BuildRequires: gtk2-devel
BuildRequires: libjpeg-devel
BuildRequires: libqt4-devel
BuildRequires: pkg-config
BuildRequires: qt3-devel
BuildRequires: update-desktop-files
%gtk2_immodule_requires
%if %suse_version > 1130
BuildRequires: gtk3-devel
%endif
Requires: %{name}-branding
Requires: %{name}-qt4-immodule
Requires: gtk2 >= 2.2.4
%if %suse_version > 1130
Requires: %{name}-gtk3-immodule
%endif
PreReq: /usr/bin/touch
Provides: locale(zh_TW;zh_HK;zh_MO)
Recommends: libreoffice-gnome
%description
gcin is a Chinese input method server for traditional Chinese.
It features a better GTK user interface.
%package branding-upstream
Summary: Upstream branding of gcin
License: LGPL-2.1
Group: System/I18n/Chinese
Supplements: packageand(%{name}:branding-upstream)
Provides: %{name}-branding = %{version}
Conflicts: otherproviders(%{name}-branding)
Requires: gcin
%description branding-upstream
This package provides upstream look and feel for gcin
%package qt3-immodule
Summary: Gcin qt3 immodule
License: GPL-2.0
Group: System/I18n/Chinese
Requires: %{name} = %{version}
%description qt3-immodule
gcin qt3 immodule, support Qt3-based applications
%package qt4-immodule
Summary: Gcin qt4 immodule
License: GPL-2.0
Group: System/I18n/Chinese
Requires: %{name} = %{version}
%description qt4-immodule
gcin qt4 immodule, support Qt4-based applications
%package anthy-module
Summary: Gcin anthy module
License: LGPL-2.1
Group: System/I18n/Chinese
Requires: %{name} = %{version}
%description anthy-module
gcin anthy module, try this to input Japanese with libanthy
%if %suse_version > 1130
%package gtk3-immodule
Summary: Gcin gtk3 immodule
License: LGPL-2.1
Group: System/I18n/Chinese
Requires: %{name} = %{version}
%gtk3_immodule_requires
%description gtk3-immodule
gcin gtk3 immodule, support gtk3-based applications
%endif
%prep
%setup
%patch0
%patch1
%patch2
%patch3 -p1
%build
CFLAGS="$RPM_OPT_FLAGS" %configure --prefix=/usr --use_i18n=Y --use_qt3=Y \
--use_anthy=Y
make
%install
mkdir -p $RPM_BUILD_ROOT/etc/X11/xim.d/
install -m 644 $RPM_SOURCE_DIR/xim.d-gcin $RPM_BUILD_ROOT/etc/X11/xim.d/gcin
DESTDIR=$RPM_BUILD_ROOT make install LIB=%_lib
%suse_update_desktop_file -r -G "Set Up your inputmethod" gcin-tools Settings System SystemSetup
PRIORITY=30
pushd $RPM_BUILD_ROOT/etc/X11/xim.d/
for lang in en zh_TW zh_HK zh_MO ; do
mkdir $lang
pushd $lang
ln -s ../gcin $PRIORITY-gcin
popd
done
popd
%find_lang %{name}
# Convenient %define for the scriplets
%if "%_lib" == "lib64"
%define _gtk2_query_immodules %{_bindir}/gtk-query-immodules-2.0-64
%define _gtk2_query_immodules_update_cache %{_gtk2_query_immodules} > %{_sysconfdir}/gtk-2.0/gtk64.immodules
%else
%define _gtk2_query_immodules %{_bindir}/gtk-query-immodules-2.0
%define _gtk2_query_immodules_update_cache %{_gtk2_query_immodules} > %{_sysconfdir}/gtk-2.0/gtk.immodules
%endif
# Convenient %define for the scriplets
%if "%_lib" == "lib64"
%define _gtk3_query_immodules %{_bindir}/gtk-query-immodules-3.0-64
%else
%define _gtk3_query_immodules %{_bindir}/gtk-query-immodules-3.0
%endif
%define _gtk3_query_immodules_update_cache %{_gtk3_query_immodules} --update-cache
%files -f %{name}.lang
%defattr(-,root,root)
%doc README.html Changelog.html COPYING AUTHORS
%doc $RPM_SOURCE_DIR/xim.gcin.suse.template
%doc $RPM_SOURCE_DIR/gcin-README.suse
%dir /etc/X11/xim.d/
%dir %{_libdir}/gcin
%dir %{_datadir}/gcin
%dir %{_datadir}/gcin/script
%dir %{_datadir}/gcin/table
%config /etc/X11/xim.d/*
%{_bindir}/*
%{_datadir}/gcin/table/*.gtab
%{_datadir}/gcin/table/*.kbm
%{_datadir}/gcin/table/gtab.list
%{_datadir}/gcin/table/*.tab2
%{_datadir}/gcin/table/*.table
%{_datadir}/gcin/table/pin-juyin.xlt
%{_datadir}/gcin/table/*.dat
%{_datadir}/gcin/table/symbol-table
%{_datadir}/gcin/table/tsin-1.src
%{_datadir}/gcin/table/tsin32
%{_datadir}/gcin/table/tsin32.idx
%{_datadir}/gcin/table/s-tsin32
%{_datadir}/gcin/table/s-tsin32.idx
%{_datadir}/gcin/table/hangul-phrase.txt
%{_datadir}/gcin/script/*
%{_datadir}/icons/*
%{_datadir}/pixmaps/gcin.png
%{_datadir}/applications/*
%{_libdir}/gtk-2.0/*
%{_libdir}/gcin/gcin*
%{_libdir}/gcin/libgcin*
%{_libdir}/gcin/intcode-module.so
%exclude %{_datadir}/icons/gcin/ar30-big.png
%exclude %{_datadir}/icons/gcin/ar30.png
%exclude %{_datadir}/icons/gcin/ar33.png
%exclude %{_datadir}/icons/gcin/array-symbols.png
%exclude %{_datadir}/icons/gcin/chewing.png
%exclude %{_datadir}/icons/gcin/cj543.png
%exclude %{_datadir}/icons/gcin/cj5.png
%exclude %{_datadir}/icons/gcin/cj.png
%exclude %{_datadir}/icons/gcin/dayi3.png
%exclude %{_datadir}/icons/gcin/en-kana-nippon.png
%exclude %{_datadir}/icons/gcin/en-tsin.png
%exclude %{_datadir}/icons/gcin/full-simp.png
%exclude %{_datadir}/icons/gcin/full-trad.png
%exclude %{_datadir}/icons/gcin/gcin-tray.png
%exclude %{_datadir}/icons/gcin/greek.png
%exclude %{_datadir}/icons/gcin/half-simp.png
%exclude %{_datadir}/icons/gcin/half-trad.png
%exclude %{_datadir}/icons/gcin/hangul.png
%exclude %{_datadir}/icons/gcin/intcode.png
%exclude %{_datadir}/icons/gcin/juyin.png
%exclude %{_datadir}/icons/gcin/jyutping.png
%exclude %{_datadir}/icons/gcin/kana-nippon.png
%exclude %{_datadir}/icons/gcin/latin-letters.png
%exclude %{_datadir}/icons/gcin/NewCJ3.png
%exclude %{_datadir}/icons/gcin/noseeing.png
%exclude %{_datadir}/icons/gcin/pinyin.png
%exclude %{_datadir}/icons/gcin/russian.png
%exclude %{_datadir}/icons/gcin/simplex.png
%exclude %{_datadir}/icons/gcin/simplex-punc.png
%exclude %{_datadir}/icons/gcin/symbols.png
%exclude %{_datadir}/icons/gcin/symbol_table.png
%exclude %{_datadir}/icons/gcin/tsin.png
%exclude %{_datadir}/icons/gcin/vocabulary.png
%files branding-upstream
%defattr(-,root,root)
%{_datadir}/icons/gcin/ar30-big.png
%{_datadir}/icons/gcin/ar30.png
%{_datadir}/icons/gcin/ar33.png
%{_datadir}/icons/gcin/array-symbols.png
%{_datadir}/icons/gcin/chewing.png
%{_datadir}/icons/gcin/cj543.png
%{_datadir}/icons/gcin/cj5.png
%{_datadir}/icons/gcin/cj.png
%{_datadir}/icons/gcin/dayi3.png
%{_datadir}/icons/gcin/en-kana-nippon.png
%{_datadir}/icons/gcin/en-tsin.png
%{_datadir}/icons/gcin/full-simp.png
%{_datadir}/icons/gcin/full-trad.png
%{_datadir}/icons/gcin/gcin-tray.png
%{_datadir}/icons/gcin/greek.png
%{_datadir}/icons/gcin/half-simp.png
%{_datadir}/icons/gcin/half-trad.png
%{_datadir}/icons/gcin/hangul.png
%{_datadir}/icons/gcin/intcode.png
%{_datadir}/icons/gcin/juyin.png
%{_datadir}/icons/gcin/jyutping.png
%{_datadir}/icons/gcin/kana-nippon.png
%{_datadir}/icons/gcin/latin-letters.png
%{_datadir}/icons/gcin/NewCJ3.png
%{_datadir}/icons/gcin/noseeing.png
%{_datadir}/icons/gcin/pinyin.png
%{_datadir}/icons/gcin/russian.png
%{_datadir}/icons/gcin/simplex.png
%{_datadir}/icons/gcin/simplex-punc.png
%{_datadir}/icons/gcin/symbols.png
%{_datadir}/icons/gcin/symbol_table.png
%{_datadir}/icons/gcin/tsin.png
%{_datadir}/icons/gcin/vocabulary.png
%files qt3-immodule
%defattr(-,root,root)
%{_libdir}/qt3/plugins/inputmethods/*
%files qt4-immodule
%defattr(-,root,root)
%{_libdir}/qt4/plugins/inputmethods/*
%files anthy-module
%defattr(-,root,root)
%{_libdir}/gcin/anthy-module.so
%if %suse_version > 1130
%files gtk3-immodule
%defattr(-,root,root)
%dir %{_libdir}/gtk-3.0/immodules
%{_libdir}/gtk-3.0/immodules/im-gcin.so
%endif
%post
/sbin/ldconfig
%{_gtk2_query_immodules_update_cache}
%if %suse_version > 1130
%post gtk3-immodule
/sbin/ldconfig
#Add icons to gnome3 panel
TARGET="/usr/share/gnome-shell/js/ui/statusIconDispatcher.js"
if [ -f $TARGET ] ; then
if [ -z "`grep gcin $TARGET`" ] ; then
mv $TARGET $TARGET-gcin
# add gcin string to the file
sed "/^const STANDARD_TRAY_ICON_IMPLEMENTATIONS/a \ 'gcin': 'input-method'," $TARGET-gcin > $TARGET
fi
fi
%{_gtk3_query_immodules_update_cache}
%postun gtk3-immodule
/sbin/ldconfig
%{_gtk3_query_immodules_update_cache}
%endif
%postun
/sbin/ldconfig
%if %suse_version > 1130
%{_gtk2_query_immodules_update_cache}
%endif
%postun anthy-module
/sbin/ldconfig
%changelog