commit:     e056277175e3d4033840c60ca6f5ca437f75ffb7
Author:     Yixun Lan <dlan <AT> gentoo <DOT> org>
AuthorDate: Tue Oct 11 21:53:54 2016 +0000
Commit:     Yixun Lan <dlan <AT> gentoo <DOT> org>
CommitDate: Tue Oct 11 21:56:04 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e0562771

app-i18n/sunpinyin: fix gcc-6 build err

thanks Peter Levine for creating the patch

Gentoo-Bug: 594380

Package-Manager: portage-2.3.1

 ...unpinyin-2.0.4_pre20130108-gcc6-use-float.patch | 17 ++++++++
 .../sunpinyin-2.0.4_pre20130108-r1.ebuild          | 48 ++++++++++++++++++++++
 2 files changed, 65 insertions(+)

diff --git 
a/app-i18n/sunpinyin/files/sunpinyin-2.0.4_pre20130108-gcc6-use-float.patch 
b/app-i18n/sunpinyin/files/sunpinyin-2.0.4_pre20130108-gcc6-use-float.patch
new file mode 100644
index 00000000..77fe283
--- /dev/null
+++ b/app-i18n/sunpinyin/files/sunpinyin-2.0.4_pre20130108-gcc6-use-float.patch
@@ -0,0 +1,17 @@
+--- sunpinyin-2.0.4_pre20130108/src/slm/tslmpack/common.h.old  2016-09-20 
02:54:15.046257131 -0400
++++ sunpinyin-2.0.4_pre20130108/src/slm/tslmpack/common.h      2016-09-20 
02:55:48.041124978 -0400
+@@ -53,10 +53,10 @@
+ typedef std::map<float, int> RealIndexMap;  // map real values to their 
indices
+ typedef std::map<std::string, unsigned int> TLexicon; // map word to wid
+ 
+-#define EffectivePr(a)  (float((usingLogPr) ? ((a) / log(2.0)) : 
(-log2((a)))))
+-#define OriginalPr(b)   (float((usingLogPr) ? ((b) * log(2.0)) : 
(exp2(-(b)))))
+-#define EffectiveBow(a) (float((usingLogPr) ? (exp(-(a))) : ((a))))
+-#define OriginalBow(b)  (float((usingLogPr) ? (-log((b))) : ((b))))
++#define EffectivePr(a)  (float((usingLogPr) ? ((a) / logf(2.0f)) : 
(-log2f((a)))))
++#define OriginalPr(b)   (float((usingLogPr) ? ((b) * logf(2.0f)) : 
(exp2f(-(b)))))
++#define EffectiveBow(a) (float((usingLogPr) ? (expf(-(a))) : ((a))))
++#define OriginalBow(b)  (float((usingLogPr) ? (-logf((b))) : ((b))))
+ 
+ #endif //_SLM_PACK_COMMON_H
+ 

diff --git a/app-i18n/sunpinyin/sunpinyin-2.0.4_pre20130108-r1.ebuild 
b/app-i18n/sunpinyin/sunpinyin-2.0.4_pre20130108-r1.ebuild
new file mode 100644
index 00000000..7a97afb
--- /dev/null
+++ b/app-i18n/sunpinyin/sunpinyin-2.0.4_pre20130108-r1.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+PYTHON_COMPAT=( python2_7 )
+inherit eutils multilib python-any-r1 scons-utils toolchain-funcs
+
+DESCRIPTION="A Statistical Language Model based Chinese input method library"
+HOMEPAGE="https://github.com/sunpinyin/sunpinyin";
+SRC_URI="https://dev.gentoo.org/~yngwin/distfiles/${P}.tar.xz";
+
+LICENSE="LGPL-2.1 CDDL"
+SLOT="0/1"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+IUSE=""
+
+RDEPEND="dev-db/sqlite:3"
+DEPEND="${RDEPEND}
+       ${PYTHON_DEPS}
+       dev-util/intltool
+       sys-devel/gettext
+       virtual/pkgconfig"
+PDEPEND="app-i18n/sunpinyin-data"
+
+src_prepare() {
+       epatch "${FILESDIR}"/${PN}-2.0.4-pod2man.patch
+       epatch "${FILESDIR}"/${P}-gcc6-use-float.patch
+       epatch_user
+}
+
+src_configure() {
+       tc-export CXX
+       myesconsargs=(
+               --prefix="${EPREFIX}"/usr
+               --libdir="${EPREFIX}"/usr/$(get_libdir)
+       )
+}
+
+src_compile() {
+       escons
+}
+
+src_install() {
+       escons --install-sandbox="${D}" install
+       rm -rf "${D}"/usr/share/doc/${PN} || die
+       dodoc doc/{README,SLM-inst.mk,SLM-train.mk}
+}

Reply via email to