dev-libs/protobuf: Version bump (3.5.1.1).
authorArfrever Frehtes Taifersar Arahesis <Arfrever@Apache.Org>
Mon, 8 Jan 2018 21:17:21 +0000 (22:17 +0100)
committerMike Gilbert <floppym@gentoo.org>
Mon, 8 Jan 2018 21:29:38 +0000 (16:29 -0500)
Closes: https://bugs.gentoo.org/639328

dev-libs/protobuf/Manifest
dev-libs/protobuf/protobuf-3.5.1.1.ebuild [new file with mode: 0644]

index c802845d29da9bedd504570d643472781ae83044..d38962ac371077153cae16d8efc7aa475f32e853 100644 (file)
@@ -5,3 +5,4 @@ DIST protobuf-3.0.2.tar.gz 3917853 BLAKE2B 542beb7b16de0da2cdc6f7981381b6de1ff2c
 DIST protobuf-3.1.0.tar.gz 4051503 BLAKE2B af93f125a6b7b3e0be6f50ff5eaabe0db21f62b01a694d37c0b069956ef5d658df1beef68514b00a22005a36293b4a8a18654b5656f8c614309f0a744039c2fb SHA512 8d3289a16944c255bd1cceab696e515e52467f2bfe1cc10f6b32fabdf082d5acdc248ec9cadc572223a24d04d431f75921076153109cea2f90ee533f502ab47a
 DIST protobuf-3.3.0.tar.gz 4336596 BLAKE2B 381b2961fe1de8a86225903d0cfe4c98c238336b8782e5191c57c6fcf60cf321f39163d50864bf9c119a90bd7796269dc7e34168a158f7affa7fa295ce5deae0 SHA512 0734a55ae92f0539dfb507e174539d290fd8e93633c1edd8810e0d51c37e67254337b75fc5ba9450316f6416e1f8f8cfb59415864657b55f2a1696fbcdfe7636
 DIST protobuf-3.4.1.tar.gz 4490100 BLAKE2B e2bc1ef2ee1a0af44830b3c65a6c9e73883fe6ec0d07f6a6136f5564f0e85306005440ca6f8c4eb834c7c70f909792c9e2457a761f10f95431981263a9acd7a3 SHA512 471e52198fa878a79183dc8fbc39d9c65239be4d9dff799e12281ee9b1af61a427584534b1baae1773bc6e4c86467f89ca2e7911a21effd86bc5f40cc7d94c34
+DIST protobuf-3.5.1.1.tar.gz 4584489 BLAKE2B 995ee2f06a6358e9935b488269ee50f0dccede417c1757828b0108fbe8c67034301f3a9cb87517430acd9838ae71bb677f4edd8b59b2418f99c15d8ea3d33591 SHA512 f25ecf772facc8efd196b7c06012ce9ec24152b2c0cde38ed2e29ecded8f534221b008e649f4cbd991436ad3436130cd2e31d51e75019d08240d518111fb4496
diff --git a/dev-libs/protobuf/protobuf-3.5.1.1.ebuild b/dev-libs/protobuf/protobuf-3.5.1.1.ebuild
new file mode 100644 (file)
index 0000000..d6f72fb
--- /dev/null
@@ -0,0 +1,101 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+inherit autotools elisp-common flag-o-matic multilib-minimal toolchain-funcs
+
+DESCRIPTION="Google's Protocol Buffers - Extensible mechanism for serializing structured data"
+HOMEPAGE="https://developers.google.com/protocol-buffers/ https://github.com/google/protobuf"
+SRC_URI="https://github.com/google/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/15"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux ~x64-macos ~x86-macos"
+IUSE="emacs examples static-libs test zlib"
+
+RDEPEND="emacs? ( virtual/emacs )
+       zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )"
+DEPEND="${RDEPEND}
+       test? ( >=dev-cpp/gtest-1.8.0[${MULTILIB_USEDEP}] )"
+
+PATCHES=(
+       "${FILESDIR}/${PN}-3.4.0-disable_no-warning-test.patch"
+       "${FILESDIR}/${PN}-3.4.0-system_libraries.patch"
+       "${FILESDIR}/${PN}-3.4.0-protoc_input_output_files.patch"
+)
+
+DOCS=(CHANGES.txt CONTRIBUTORS.txt README.md)
+
+src_prepare() {
+       append-cppflags -DGOOGLE_PROTOBUF_NO_RTTI
+       default
+       eautoreconf
+}
+
+multilib_src_configure() {
+       local myeconfargs=(
+               $(use_enable static-libs static)
+               $(use_with zlib)
+       )
+
+       if tc-is-cross-compiler; then
+               # The build system wants `protoc` when building, so we need a copy that
+               # runs on the host. This is more hermetic than relying on the version
+               # installed in the host being the exact same version.
+               mkdir -p "${WORKDIR}/build" || die
+               pushd "${WORKDIR}/build" > /dev/null || die
+               ECONF_SOURCE="${S}" econf_build "${myeconfargs[@]}"
+               myeconfargs+=(--with-protoc="${PWD}"/src/protoc)
+               popd > /dev/null || die
+       fi
+
+       ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+}
+
+src_compile() {
+       multilib-minimal_src_compile
+
+       if use emacs; then
+               elisp-compile editors/protobuf-mode.el
+       fi
+}
+
+multilib_src_compile() {
+       if tc-is-cross-compiler; then
+               emake -C "${WORKDIR}/build/src" protoc
+       fi
+
+       default
+}
+
+multilib_src_test() {
+       emake check
+}
+
+multilib_src_install_all() {
+       insinto /usr/share/vim/vimfiles/syntax
+       doins editors/proto.vim
+       insinto /usr/share/vim/vimfiles/ftdetect
+       doins "${FILESDIR}/proto.vim"
+
+       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
+               DOCS+=(examples)
+               docompress -x /usr/share/doc/${PF}/examples
+       fi
+
+       einstalldocs
+}
+
+pkg_postinst() {
+       use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+       use emacs && elisp-site-regen
+}