[sunpinyin] Initial import
supercyper
supercyper at fedoraproject.org
Thu Aug 19 16:06:54 UTC 2010
commit d3423a9f2e255a0ca5db0fd79fa494315dd5dbfe
Author: Chen Lei <supercyper at 163.com>
Date: Thu Aug 19 10:06:45 2010 -0600
Initial import
.gitignore | 1 +
sources | 1 +
sunpinyin.spec | 196 +++++++++++++++++++++++++++++++++++++++++++++++++++++
xinput-xsunpinyin | 8 ++
4 files changed, 206 insertions(+), 0 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index e69de29..3edadf3 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/sunpinyin-2.0.2.tar.gz
diff --git a/sources b/sources
index e69de29..febc208 100644
--- a/sources
+++ b/sources
@@ -0,0 +1 @@
+797e8f5e4c0fdeb5b37d6cd1812cfa2d sunpinyin-2.0.2.tar.gz
diff --git a/sunpinyin.spec b/sunpinyin.spec
new file mode 100644
index 0000000..1fe2b7c
--- /dev/null
+++ b/sunpinyin.spec
@@ -0,0 +1,196 @@
+%define _xinputconf %{_sysconfdir}/X11/xinit/xinput.d/xsunpinyin.conf
+
+Name: sunpinyin
+Version: 2.0.2
+Release: 2%{?dist}
+Summary: A statistical language model based Chinese input method engine
+Group: System Environment/Libraries
+License: LGPLv2 or CDDL
+URL: http://code.google.com/p/sunpinyin/
+Source0: http://sunpinyin.googlecode.com/files/%{name}-%{version}.tar.gz
+Source1: xinput-x%{name}
+BuildRequires: sqlite-devel
+BuildRequires: gtk2-devel
+BuildRequires: ibus-devel
+BuildRequires: gettext
+BuildRequires: scons
+%ifarch %{ix86} x86_64 armv5tel mips64el
+Requires: %{name}-data-le
+%else
+Requires: %{name}-data-be
+%endif
+
+%description
+Sunpinyin is an input method engine for Simplified Chinese. It is an SLM based
+IM engine, and features full sentence input.
+
+SunPinyin had been ported to various input method platforms and operating
+systems. The 2.0 release currently supports iBus, XIM, and Mac OS X.
+
+%package devel
+Summary: Development files for %{name}
+Group: Development/Libraries
+Requires: %{name} = %{version}-%{release}
+
+%description devel
+The %{name}-devel package contains libraries and header files that allows user
+to write their own front-end for sunpinyin.
+
+%package data-le
+Summary: Little-endian data files for for %{name}
+Group: System Environment/Libraries
+License: CC-BY-SA
+Conflicts: %{name}-data-be
+BuildArch: noarch
+
+%description data-le
+The %{name}-data package contains necessary lexicon data and its index data
+files needed by the sunpinyin input methods on little endian architectures.
+
+%package data-be
+Summary: Big-endian data files for for %{name}
+Group: System Environment/Libraries
+License: CC-BY-SA
+Conflicts: %{name}-data-le
+BuildArch: noarch
+
+%description data-be
+The %{name}-data package contains necessary lexicon data and its index data
+files needed by the sunpinyin input methods on big endian architectures.
+
+%package -n ibus-%{name}
+Summary: Sunpinyin input method engine for ibus
+Group: System Environment/Libraries
+Requires: %{name} = %{version}-%{release}
+Requires: ibus
+
+%description -n ibus-%{name}
+This package provides SunPinyin input method for IBus framework.
+
+%package -n x%{name}
+Summary: Standalone XIM server for Sunpinyin
+Group: System Environment/Libraries
+Requires: %{name} = %{version}-%{release}
+Requires: im-chooser
+Requires(post): %{_sbindir}/alternatives
+Requires(postun): %{_sbindir}/alternatives
+
+%description -n x%{name}
+This package provides a XIM server with SunPinyin input method. It works much
+the same way as fcitx does.
+
+%prep
+%setup -q -n %{name}
+
+# Hack to honor correct compiler flags
+sed -i 's/-O2 -pipe/%{optflags}/' SConstruct
+sed -i 's/-O2 -pipe/%{optflags}/' wrapper/{ibus,xim}/SConstruct
+
+# Fix libexecdir path for ibus-sunpinyin
+sed -i 's\lib/ibus-sunpinyin\libexec\' wrapper/ibus/SConstruct
+
+%build
+scons %{?_smp_mflags} --prefix=%{_prefix}
+
+# We need to do this so wrappers can link against libsunpinyin
+sed -i 's\libdir=.*$\libdir=%{_builddir}/%{name}\' sunpinyin-*.pc
+sed -i 's\includedir=.*$\includedir=%{_builddir}/%{name}/src\' sunpinyin-*.pc
+cp -p sunpinyin-2.0.pc sunpinyin-2.0.pc.bak
+ln -s libsunpinyin*.so libsunpinyin.so
+export PKG_CONFIG_PATH=%{_builddir}/%{name}
+
+pushd wrapper/ibus
+scons %{?_smp_mflags} --prefix=%{_prefix}
+popd
+
+pushd wrapper/xim
+scons %{?_smp_mflags} --prefix=%{_prefix}
+popd
+
+%install
+scons %{?_smp_mflags} --prefix=%{_prefix} install --install-sandbox=%{buildroot}
+
+%if %{_lib}==lib64
+mkdir -p %{buildroot}%{_libdir}
+mv %{buildroot}%{_prefix}/lib/*.so* %{buildroot}%{_libdir}
+mv %{buildroot}%{_prefix}/lib/pkgconfig %{buildroot}%{_libdir}/pkgconfig
+sed -i 's\{exec_prefix}/lib\{exec_prefix}/%{_lib}\' \
+ %{buildroot}%{_libdir}/pkgconfig/sunpinyin-2.0.pc
+%endif
+
+# Put them back so the install doesn't fail
+cp -p sunpinyin-2.0.pc.bak sunpinyin-2.0.pc
+export PKG_CONFIG_PATH=%{_builddir}/%{name}
+
+pushd wrapper/ibus
+scons %{?_smp_mflags} --prefix=%{_prefix} install --install-sandbox=%{buildroot}
+popd
+
+pushd wrapper/xim
+scons %{?_smp_mflags} --prefix=%{_prefix} install --install-sandbox=%{buildroot}
+popd
+
+# install xinput config file
+install -pm 644 -D %{SOURCE1} %{buildroot}%{_xinputconf}
+%find_lang ibus-%{name}
+
+%clean
+rm -rf %{buildroot}
+
+%post -p /sbin/ldconfig
+
+%postun -p /sbin/ldconfig
+
+%post -n x%{name}
+%{_sbindir}/alternatives --install %{_sysconfdir}/X11/xinit/xinputrc xinputrc \
+ %{_xinputconf} 50 || :
+
+%postun -n x%{name}
+if [ "$1" = "0" ]; then
+ %{_sbindir}/alternatives --remove xinputrc %{_xinputconf} || :
+ # if alternative was set to manual, reset to auto
+ [ -L %{_sysconfdir}/alternatives/xinputrc -a \
+ "`readlink %{_sysconfdir}/alternatives/xinputrc`" = \
+ "%{_xinputconf}" ] && %{_sbindir}/alternatives --auto xinputrc || :
+fi
+
+%files
+%defattr(-,root,root,-)
+%doc AUTHORS COPYING *.LICENSE
+%doc README TODO
+%{_libdir}/libsunpinyin*.so.*
+
+%files devel
+%defattr(-,root,root,-)
+%{_libdir}/libsunpinyin*.so
+%{_libdir}/pkgconfig/sunpinyin*.pc
+%{_includedir}/sunpinyin*
+
+%ifarch %{ix86} x86_64 armv5tel mips64el
+%files data-le
+%defattr(-,root,root,-)
+%{_prefix}/lib/%{name}
+%else
+%files data-be
+%defattr(-,root,root,-)
+%{_prefix}/lib/%{name}
+%endif
+
+%files -n ibus-%{name} -f ibus-%{name}.lang
+%defattr(-,root,root,-)
+%{_libexecdir}/ibus*
+%{_datadir}/ibus/component/*
+%{_datadir}/ibus-%{name}
+
+%files -n x%{name}
+%defattr(-,root,root,-)
+%{_bindir}/x%{name}*
+%{_datadir}/x%{name}
+%config %{_xinputconf}
+
+%changelog
+* Thu Aug 19 2010 Chen Lei <supercyper at 163.com> - 2.0.2-2
+- Add seperate license field to data files
+
+* Mon Aug 16 2010 Chen Lei <supercyper at 163.com> - 2.0.2-1
+- Initial Package
diff --git a/xinput-xsunpinyin b/xinput-xsunpinyin
new file mode 100644
index 0000000..3e273fc
--- /dev/null
+++ b/xinput-xsunpinyin
@@ -0,0 +1,8 @@
+XIM=xsunpinyin
+XIM_PROGRAM=/usr/bin/xsunpinyin
+ICON="/usr/share/xsunpinyin/icons/sunpinyin-logo.png"
+XIM_ARGS=""
+PREFERENCE_PROGRAM=/usr/bin/xsunpinyin-preferences
+SHORT_DESC="XSunpinyin"
+GTK_IM_MODULE=xim
+QT_IM_MODULE=xim
More information about the scm-commits
mailing list