summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaweł Hajdan <phajdan.jr@gentoo.org>2014-09-26 04:47:05 +0000
committerPaweł Hajdan <phajdan.jr@gentoo.org>2014-09-26 04:47:05 +0000
commit1617c5ca32f8683a10a7098a8758e945132079b9 (patch)
treed92ae47265b1cca0ae28860166d5bfce8f676eef /dev-libs/protobuf
parentFix broken default_src_prepare #523760 (diff)
downloadgentoo-2-1617c5ca32f8683a10a7098a8758e945132079b9.tar.gz
gentoo-2-1617c5ca32f8683a10a7098a8758e945132079b9.tar.bz2
gentoo-2-1617c5ca32f8683a10a7098a8758e945132079b9.zip
Disable RTTI, bug #521882 .
(Portage version: 2.2.8-r1/cvs/Linux i686, signed Manifest commit with key 0x4F1A2555EA71991D!)
Diffstat (limited to 'dev-libs/protobuf')
-rw-r--r--dev-libs/protobuf/ChangeLog8
-rw-r--r--dev-libs/protobuf/protobuf-2.5.0-r1.ebuild124
2 files changed, 131 insertions, 1 deletions
diff --git a/dev-libs/protobuf/ChangeLog b/dev-libs/protobuf/ChangeLog
index 12dc749380d3..f109c3772e04 100644
--- a/dev-libs/protobuf/ChangeLog
+++ b/dev-libs/protobuf/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for dev-libs/protobuf
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/protobuf/ChangeLog,v 1.61 2014/08/14 00:03:40 jer Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/protobuf/ChangeLog,v 1.62 2014/09/26 04:47:05 phajdan.jr Exp $
+
+*protobuf-2.5.0-r1 (26 Sep 2014)
+
+ 26 Sep 2014; Pawel Hajdan jr <phajdan.jr@gentoo.org>
+ +protobuf-2.5.0-r1.ebuild:
+ Disable RTTI, bug #521882 .
14 Aug 2014; Jeroen Roovers <jer@gentoo.org> protobuf-2.4.0a.ebuild,
protobuf-2.4.1.ebuild, protobuf-2.5.0.ebuild:
diff --git a/dev-libs/protobuf/protobuf-2.5.0-r1.ebuild b/dev-libs/protobuf/protobuf-2.5.0-r1.ebuild
new file mode 100644
index 000000000000..abdd876facfa
--- /dev/null
+++ b/dev-libs/protobuf/protobuf-2.5.0-r1.ebuild
@@ -0,0 +1,124 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/protobuf/protobuf-2.5.0-r1.ebuild,v 1.1 2014/09/26 04:47:05 phajdan.jr Exp $
+
+EAPI=5
+JAVA_PKG_IUSE="source"
+PYTHON_COMPAT=( python{2_6,2_7} )
+DISTUTILS_OPTIONAL=1
+
+inherit autotools eutils flag-o-matic distutils-r1 java-pkg-opt-2 elisp-common
+
+DESCRIPTION="Google's Protocol Buffers -- an efficient method of encoding structured data"
+HOMEPAGE="http://code.google.com/p/protobuf/"
+SRC_URI="http://protobuf.googlecode.com/files/${P}.tar.bz2"
+
+LICENSE="Apache-2.0"
+SLOT="0/8" # subslot = soname major version
+KEYWORDS="~amd64 ~arm -hppa ~ia64 ~mips -ppc -ppc64 ~x86 ~amd64-linux ~arm-linux ~x86-linux ~x64-macos ~x86-macos"
+IUSE="emacs examples java python static-libs vim-syntax"
+
+CDEPEND="emacs? ( virtual/emacs )
+ python? ( ${PYTHON_DEPS} )"
+DEPEND="${CDEPEND}
+ java? ( >=virtual/jdk-1.5 )
+ python? ( dev-python/setuptools[${PYTHON_USEDEP}] )"
+RDEPEND="${CDEPEND}
+ java? ( >=virtual/jre-1.5 )"
+
+src_prepare() {
+ append-cxxflags -DGOOGLE_PROTOBUF_NO_RTTI
+
+ epatch "${FILESDIR}"/${P}-x32.patch
+ if [[ ${CHOST} != *-darwin* ]] ; then
+ # breaks Darwin, bug #472514
+ epatch "${FILESDIR}"/${PN}-2.3.0-asneeded-2.patch
+ eautoreconf
+ fi
+
+ if use python; then
+ cd python && distutils-r1_src_prepare
+ fi
+}
+
+src_configure() {
+ econf \
+ $(use_enable static-libs static)
+}
+
+src_compile() {
+ default
+
+ if use python; then
+ einfo "Compiling Python library ..."
+ pushd python >/dev/null
+ distutils-r1_src_compile
+ popd >/dev/null
+ fi
+
+ if use java; then
+ einfo "Compiling Java library ..."
+ src/protoc --java_out=java/src/main/java --proto_path=src src/google/protobuf/descriptor.proto
+ mkdir java/build
+ pushd java/src/main/java >/dev/null
+ ejavac -d ../../../build $(find . -name '*.java') || die "java compilation failed"
+ popd >/dev/null
+ jar cf ${PN}.jar -C java/build . || die "jar failed"
+ fi
+
+ if use emacs; then
+ elisp-compile "${S}"/editors/protobuf-mode.el
+ fi
+}
+
+src_test() {
+ emake check
+
+ if use python; then
+ pushd python >/dev/null
+ distutils-r1_src_test
+ popd >/dev/null
+ fi
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ dodoc CHANGES.txt CONTRIBUTORS.txt README.txt
+ prune_libtool_files
+
+ if use python; then
+ pushd python >/dev/null
+ distutils-r1_src_install
+ popd >/dev/null
+ fi
+
+ if use java; then
+ java-pkg_dojar ${PN}.jar
+ use source && java-pkg_dosrc java/src/main/java/*
+ fi
+
+ if use vim-syntax; then
+ insinto /usr/share/vim/vimfiles/syntax
+ doins editors/proto.vim
+ insinto /usr/share/vim/vimfiles/ftdetect/
+ doins "${FILESDIR}"/proto.vim
+ fi
+
+ if use emacs; then
+ elisp-install ${PN} editors/protobuf-mode.el*
+ elisp-site-file-install "${FILESDIR}"/70${PN}-gentoo.el
+ fi
+
+ if use examples; then
+ dodoc -r examples
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}