Blob Blame History Raw
%define		pkg	mozc

Name:		mozc
Version:	1.1.717.102
Release:	2%{?dist}
Summary:	Open-sourced Google Japanese Input

Group:		System Environment/Libraries
License:	BSD and ASL 2.0 and UCD and Public Domain and Boost and mecab-ipadic
URL:		http://code.google.com/p/mozc
# third_party/rx/rx.c: ASL 2.0
#  Copyright Yusuke Tabata 2008
# data/unicode/: UCD
#  Copyright (c) 1991-2008 Unicode, Inc.
# data/test/stress_test/sentences.txt: Public Domain
# base/scoped_ptr.h: Boost Software License 1.0
# data/dictionary/: mecab-ipadic and BSD
#   See http://code.google.com/p/mozc/issues/detail?id=20
#   also data/installer/credits_en.html
Source0:	http://mozc.googlecode.com/files/mozc-%{version}.tar.bz2
Source1:	mozc-init.el
Patch0:		mozc-build-verbosely.patch
Patch1:		mozc-fix-model-path-for-zinnia.patch
Patch2:		mozc-fix-unused-val.patch
Patch3:		mozc-fix-array-bounds.patch
Patch4:		mozc-fix-sign-compare.patch
Patch5:		mozc-no-Werror.patch

BuildRequires:	python gettext
BuildRequires:	openssl-devel libstdc++-devel zlib-devel libcurl-devel gtest-devel protobuf-devel glib2-devel qt-devel zinnia-devel
BuildRequires:	gyp >= 0.1-0.4.840svn
BuildRequires:	ibus-devel
BuildRequires:	scim-devel
BuildRequires:	emacs
BuildRequires:	xemacs xemacs-packages-extra

Requires:	zinnia-tomoe

%description
Mozc is a Japanese Input Method Editor (IME) designed for
multi-platform such as Chromium OS, Windows, Mac and Linux.

%package	-n ibus-mozc
Summary:	Open-sourced Google Japanese Input engine for IBus input platform
Group:		System Environment/Libraries
Requires:	%{name} = %{version}-%{release}
Requires:	ibus

%description	-n ibus-mozc
Mozc is a Japanese Input Method Editor (IME) designed for
multi-platform such as Chromium OS, Windows, Mac and Linux.

This package contains the Input Method Engine for IBus.

%package	-n scim-mozc
Summary:	Open-sourced Google Japanese Input engine for SCIM input platform
Group:		System Environment/Libraries
Requires:	%{name} = %{version}-%{release}
Requires:	scim

%description	-n scim-mozc
Mozc is a Japanese Input Method Editor (IME) designed for
multi-platform such as Chromium OS, Windows, Mac and Linux.

This package contains the Input Method Engine for SCIM.

%package	-n emacs-common-mozc
Summary:	Open-sourced Google Japanese Input for Emacsen
Group:		System Environment/Libraries
Requires:	%{name} = %{version}-%{release}

%description	-n emacs-common-mozc
Mozc is a Japanese Input Method Editor (IME) designed for
multi-platform such as Chromium OS, Windows, Mac and Linux.

This package contains the files common to both the GNU Emacs
and XEmacs mozc packages.

%package	-n emacs-mozc
Summary:	Compiled elisp files to run mozc under GNU Emacs
Group:		System Environment/Libraries
Requires:	emacs(bin) >= %{_emacs_version}
Requires:	emacs-common-mozc = %{version}-%{release}
BuildArch:	noarch

%description	-n emacs-mozc
Mozc is a Japanese Input Method Editor (IME) designed for
multi-platform such as Chromium OS, Windows, Mac and Linux.

This package contains the byte compiled elisp files to run mozc with GNU Emacs.

%package	-n emacs-mozc-el
Summary:	Elisp source files for mozc under GNU Emacs
Group:		System Environment/Libraries
Requires:	emacs-mozc = %{version}-%{release}
BuildArch:	noarch

%description	-n emacs-mozc-el
Mozc is a Japanese Input Method Editor (IME) designed for
multi-platform such as Chromium OS, Windows, Mac and Linux.

This package contains the elisp source files for mozc under GNU Emacs. You
do not need to install this package to run mozc. Install the emacs-mozc package
to use mozc with GNU Emacs.

%package	-n xemacs-mozc
Summary:	Compiled elisp files to run mozc under XEmacs
Group:		System Environment/Libraries
Requires:	xemacs(bin) >= %{_xemacs_version}
Requires:	xemacs-packages-extra
Requires:	emacs-common-mozc = %{version}-%{release}
BuildArch:	noarch

%description	-n xemacs-mozc
Mozc is a Japanese Input Method Editor (IME) designed for
multi-platform such as Chromium OS, Windows, Mac and Linux.

This package contains the byte compiled elisp files to run mozc with XEmacs.

%package	-n xemacs-mozc-el
Summary:	Elisp source files for mozc under XEmacs
Group:		System Environment/Libraries
Requires:	xemacs-mozc = %{version}-%{release}
BuildArch:	noarch

%description	-n xemacs-mozc-el
Mozc is a Japanese Input Method Editor (IME) designed for
multi-platform such as Chromium OS, Windows, Mac and Linux.

This package contains the elisp source files for mozc under XEmacs. You
do not need to install this package to run mozc. Install the xemacs-mozc package
to use mozc with XEmacs.

%prep
%setup -q
%patch0 -p1 -b .0-build-verbosely
%patch1 -p1 -b .1-fix-zinnia
%patch2 -p1 -b .2-unused-val
%patch3 -p1 -b .3-array-bounds
%patch4 -p1 -b .4-sign-compare
%patch5 -p1 -b .5-no-werror


%build
sed -i	-e "s|\(.*\)/usr/lib/\(glib-2.0/.*\)|\1%{_libdir}/\2|g" \
	-e "s|\(.*\)/usr/lib/\(gtk-2.0/.*\)|\1%{_libdir}/\2|g" unix/scim/scim.gyp
sed -i -e "s|/usr/lib/mozc|%{_libexecdir}|g" base/util.cc
python build_mozc.py gyp --gypdir=%{_bindir}
python build_mozc.py build_tools -c Release
python build_mozc.py build -c Release unix/ibus/ibus.gyp:ibus_mozc unix/scim/scim.gyp:scim_mozc unix/scim/scim.gyp:scim_mozc_setup unix/emacs/emacs.gyp:mozc_emacs_helper server/server.gyp:mozc_server gui/gui.gyp:mozc_tool


%install
install -d $RPM_BUILD_ROOT%{_libexecdir}
install -p -m0755 out_linux/Release/mozc_server $RPM_BUILD_ROOT%{_libexecdir}
install -p -m0755 out_linux/Release/mozc_tool $RPM_BUILD_ROOT%{_libexecdir}
cp -a third_party/rx/v1_0rc2/README third_party/rx/v1_0rc2/README.rx

# ibus-mozc
install -d $RPM_BUILD_ROOT%{_datadir}/ibus/component
install -d $RPM_BUILD_ROOT%{_datadir}/ibus-mozc
install -p -m0755 out_linux/Release/ibus_mozc $RPM_BUILD_ROOT%{_libexecdir}/ibus-engine-mozc
install -p -m0644 out_linux/Release/obj/gen/unix/ibus/mozc.xml $RPM_BUILD_ROOT%{_datadir}/ibus/component/
(cd data/images/unix;
install -p -m0644 ime_product_icon_opensource-32.png $RPM_BUILD_ROOT%{_datadir}/ibus-mozc/product_icon.png
for i in ui-*.png; do
	install -p -m0644 $i $RPM_BUILD_ROOT%{_datadir}/ibus-mozc/${i//ui-/}
done)

# scim-mozc
scim_moddir=$(pkg-config --variable=moduledir scim)
scim_icondir=$(pkg-config --variable=icondir scim)
install -d $RPM_BUILD_ROOT$scim_moddir/IMEngine
install -d $RPM_BUILD_ROOT$scim_moddir/SetupUI
install -d $RPM_BUILD_ROOT$scim_icondir
install -p -m0755 out_linux/Release/lib.target/libscim_mozc.so $RPM_BUILD_ROOT$scim_moddir/IMEngine/mozc.so
install -p -m0755 out_linux/Release/lib.target/libscim_mozc_setup.so $RPM_BUILD_ROOT$scim_moddir/SetupUI/mozc-setup.so
(cd data/images/unix;
install -p -m0644 ime_product_icon_opensource-32.png $RPM_BUILD_ROOT$scim_icondir/scim-mozc.png
for i in ui-*.png; do
	install -p -m0644 $i $RPM_BUILD_ROOT$scim_icondir/${i//ui-/scim-mozc-}
done)

# emacs-common-mozc
install -d $RPM_BUILD_ROOT%{_bindir}
install -p -m0755 out_linux/Release/mozc_emacs_helper $RPM_BUILD_ROOT%{_bindir}

# emacs-mozc*
install -d $RPM_BUILD_ROOT%{_emacs_sitelispdir}/%{pkg}
install -d $RPM_BUILD_ROOT%{_emacs_sitestartdir}
install -p -m0644 unix/emacs/mozc.el $RPM_BUILD_ROOT%{_emacs_sitelispdir}/%{pkg}
install -p -m0644 %{SOURCE1} $RPM_BUILD_ROOT%{_emacs_sitestartdir}

emacs -batch -f batch-byte-compile $RPM_BUILD_ROOT%{_emacs_sitelispdir}/%{pkg}/mozc.el

# xemacs-mozc*
install -d $RPM_BUILD_ROOT%{_xemacs_sitelispdir}/%{pkg}
install -d $RPM_BUILD_ROOT%{_xemacs_sitestartdir}
install -p -m0644 unix/emacs/mozc.el $RPM_BUILD_ROOT%{_xemacs_sitelispdir}/%{pkg}
install -p -m0644 %{SOURCE1} $RPM_BUILD_ROOT%{_xemacs_sitestartdir}

xemacs -batch -f batch-byte-compile $RPM_BUILD_ROOT%{_xemacs_sitelispdir}/%{pkg}/mozc.el

%clean
rm -rf $RPM_BUILD_ROOT

%files
%defattr(-,root,root,-)
%doc third_party/rx/v1_0rc2/README.rx data/installer/credits_en.html
%lang(ja) %doc data/installer/credits_ja.html
%{_libexecdir}/mozc_server
%{_libexecdir}/mozc_tool

%files	-n ibus-mozc
%defattr(-,root,root,-)
%doc data/installer/credits_en.html
%lang(ja) %doc data/installer/credits_ja.html
%dir %{_datadir}/ibus-mozc
%{_libexecdir}/ibus-engine-mozc
%{_datadir}/ibus/component/mozc.xml
%{_datadir}/ibus-mozc/*.png

%files	-n scim-mozc
%defattr(-,root,root,-)
%doc data/installer/credits_en.html
%lang(ja) %doc data/installer/credits_ja.html
%{_libdir}/scim-1.0/*/IMEngine/mozc.so
%{_libdir}/scim-1.0/*/SetupUI/mozc-setup.so
%{_datadir}/scim/icons/*.png

%files	-n emacs-common-mozc
%defattr(-,root,root,-)
%doc data/installer/credits_en.html
%lang(ja) %doc data/installer/credits_ja.html
%{_bindir}/mozc_emacs_helper

%files	-n emacs-mozc
%defattr(-,root,root,-)
%dir %{_emacs_sitelispdir}/%{pkg}
%{_emacs_sitelispdir}/%{pkg}/*.elc
%{_emacs_sitestartdir}/*.el

%files	-n emacs-mozc-el
%defattr(-,root,root,-)
%{_emacs_sitelispdir}/%{pkg}/*.el

%files	-n xemacs-mozc
%defattr(-,root,root,-)
%dir %{_xemacs_sitelispdir}/%{pkg}
%{_xemacs_sitelispdir}/%{pkg}/*.elc
%{_xemacs_sitestartdir}/*.el

%files	-n xemacs-mozc-el
%defattr(-,root,root,-)
%{_xemacs_sitelispdir}/%{pkg}/*.el

%changelog
* Wed Jun  1 2011 Akira TAGOH <tagoh@redhat.com> - 1.1.717.102-2
- Fix broken emacs-mozc package.

* Mon May 23 2011 Akira TAGOH <tagoh@redhat.com> - 1.1.717.102-1
- New upstream release.

* Wed Apr 20 2011 Akira TAGOH <tagoh@redhat.com> - 1.1.690.102-0.2.20110419svn
- Fix a wrong path to the model file for handwriting.
- add dep to zinnia-tomoe.

* Tue Apr 19 2011 Akira TAGOH <tagoh@redhat.com> - 1.1.690.102-0.1.20110419svn
- Update to 1.1.690.102.

* Thu Mar  8 2011 Akira TAGOH <tagoh@redhat.com> - 1.1.626.102-0.2.20110301svn
- Fix mozc.el not working when byte-compiled.

* Wed Mar  2 2011 Akira TAGOH <tagoh@redhat.com> - 1.1.626.102-0.1.20110301svn
- Update to 1.1.626.102.

* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.558.102-0.2.20101216svn
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild

* Thu Dec 16 2010 Akira TAGOH <tagoh@redhat.com> - 1.0.558.102-0.1.20101216svn
- Update to 1.0.558.102.

* Mon Nov  8 2010 Akira TAGOH <tagoh@redhat.com> - 0.13.523.102-0.2.20101104svn
- Rebuilt against ibus-1.3.99.

* Thu Nov  4 2010 Akira TAGOH <tagoh@redhat.com> - 0.13.523.102-0.1.20101104svn
- Update to 0.13.523.102.

* Fri Oct  8 2010 Akira TAGOH <tagoh@redhat.com> - 0.13.499.102-0.1.20101008svn
- Update to 0.13.499.102.

* Mon Sep 27 2010 Akira TAGOH <tagoh@redhat.com> - 0.13.481.102-0.1.20100927svn
- Update to 0.13.481.102.
- Add emacs-common-mozc, emacs-mozc, emacs-mozc-el, xemacs-mozc and xemacs-mozc-el subpackage.

* Fri Sep 10 2010 Akira TAGOH <tagoh@redhat.com> - 0.13.464.102-0.1.20100910svn
- Update to 0.13.464.102.

* Mon Aug 23 2010 Akira TAGOH <tagoh@redhat.com> - 0.12.434.102-0.2.20100823svn
- Drop the unnecessary Obsoletes tag.
- Output more build messages. (Mamoru Tasaka)
- Own %%{_datadir}/ibus-mozc
- add credits_*.html
- rebase to drop more exec bits.

* Fri Aug 20 2010 Akira TAGOH <tagoh@redhat.com> - 0.12.434.102-0.1.20100820svn
- drop exec bits for source code.
- clean up spec file.
- add mecab-ipadic to License tag.

* Tue Aug 17 2010 Akira TAGOH <tagoh@redhat.com> - 0.12.434.102-0.1.20100817svn
- Update to 0.12.434.102.

* Thu Jul 29 2010 Akira TAGOH <tagoh@redhat.com> - 0.12.422.102-0.1.20100729svn
- Update to 0.12.422.102.

* Mon Jul 12 2010 Akira TAGOH <tagoh@redhat.com> - 0.12.410.102-0.1.20100712svn
- Update to 0.12.410.102.

* Tue Jun 22 2010 Akira TAGOH <tagoh@redhat.com> - 0.11.383.102-0.1.20100621svn
- Update to 0.11.383.102.
- Add a subpackage for scim.

* Thu May 27 2010 Akira TAGOH <tagoh@redhat.com> - 0.11.365.102-0.1.20100527svn
- Update to 0.11.365.102.
- Update mozc-config.
- correct the server directory.

* Thu May 20 2010 Akira TAGOH <tagoh@redhat.com> - 0.11.354.100-0.1.20100520svn
- Updates from svn.
- Add mozc-config from git.

* Tue May 11 2010 Akira TAGOH <tagoh@redhat.com> - 0.10.288.102-0.1.20100511svn
- Initial build.