Sophie

Sophie

distrib > Fedora > 13 > i386 > media > updates-src > by-pkgid > 0c75193dbe130f580b3d5401ae7d96d5 > files > 2

sunpinyin-2.0.2-2.fc13.src.rpm

%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@163.com> - 2.0.2-2
- Add seperate license field to data files

* Mon Aug 16 2010 Chen Lei <supercyper@163.com> - 2.0.2-1
- Initial Package