dev-libs/protobuf: Version bump (3.6.1).
authorArfrever Frehtes Taifersar Arahesis <Arfrever@Apache.Org>
Wed, 22 Aug 2018 18:15:40 +0000 (20:15 +0200)
committerMike Gilbert <floppym@gentoo.org>
Wed, 22 Aug 2018 19:00:58 +0000 (15:00 -0400)
dev-libs/protobuf/Manifest
dev-libs/protobuf/protobuf-3.6.1.ebuild [new file with mode: 0644]

index f6e4af7f64823bf5edcac1238d1a84095b58567b..f47a971994d588858fc7b386bd1b35e024d8c960 100644 (file)
@@ -2,3 +2,4 @@ DIST protobuf-3.4.1.tar.gz 4490100 BLAKE2B e2bc1ef2ee1a0af44830b3c65a6c9e73883fe
 DIST protobuf-3.5.1.1.tar.gz 4584489 BLAKE2B 995ee2f06a6358e9935b488269ee50f0dccede417c1757828b0108fbe8c67034301f3a9cb87517430acd9838ae71bb677f4edd8b59b2418f99c15d8ea3d33591 SHA512 f25ecf772facc8efd196b7c06012ce9ec24152b2c0cde38ed2e29ecded8f534221b008e649f4cbd991436ad3436130cd2e31d51e75019d08240d518111fb4496
 DIST protobuf-3.5.2.tar.gz 4584659 BLAKE2B f582212169d802a5844574eb900c9f8cbb343b7e73f2074e5ff0bfc544ebd13f4bc2b78271fb70f4465d78fdc39972ed68339f453c0d3ffe98d8564fbf520544 SHA512 09d10cf0c07a0ba249428bbf20f5dbed840965fa06b3c09682f286a4dee9d84bb96f3b5b50e993d48ef1f20440531255ce7d0e60a648bf3fe536a5f2b0b74181
 DIST protobuf-3.6.0.1.tar.gz 4483964 BLAKE2B 8afc1e4f4a6eba0eb453fa7cbee8e8ab4986ab9dda39a0005de9d07ec4bd4fd27a5af4ab359b139b4117a5da580be6da3387295266625ee8cc7ec9421c5c0235 SHA512 63cd799d5d6edbb05a87bc07992271c5bdb9595366d698b4dc5476cc89dc278d1c43186b9e56340958aefea2ce23e15a9c3a550158414add868b56e789ceafe4
+DIST protobuf-3.6.1.tar.gz 4485582 BLAKE2B 546c49759df784018459809b9db692c5c94aef5d717183af5cd9edd96b4c658e759f23950cdcd5dddceaaad06ea1de2a2357b9fa8c496ed5d538fc5920174da0 SHA512 1bc175d24b49de1b1e41eaf39598194e583afffb924c86c8d2e569d935af21874be76b2cbd4d9655a1d38bac3d4cd811de88bc2c72d81bad79115e69e5b0d839
diff --git a/dev-libs/protobuf/protobuf-3.6.1.ebuild b/dev-libs/protobuf/protobuf-3.6.1.ebuild
new file mode 100644 (file)
index 0000000..b4ba0f7
--- /dev/null
@@ -0,0 +1,105 @@
+# Copyright 1999-2018 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/17"
+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.6.0-disable_no-warning-test.patch"
+       "${FILESDIR}/${PN}-3.6.0-system_libraries.patch"
+       "${FILESDIR}/${PN}-3.6.0-protoc_input_output_files.patch"
+)
+
+DOCS=(CHANGES.txt CONTRIBUTORS.txt README.md)
+
+src_prepare() {
+       default
+       eautoreconf
+}
+
+src_configure() {
+       append-cppflags -DGOOGLE_PROTOBUF_NO_RTTI
+       multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+       local options=(
+               $(use_enable static-libs static)
+               $(use_with zlib)
+       )
+
+       if tc-is-cross-compiler; then
+               # Build system uses protoc when building, so protoc copy runnable on host is needed.
+               mkdir -p "${WORKDIR}/build" || die
+               pushd "${WORKDIR}/build" > /dev/null || die
+               ECONF_SOURCE="${S}" econf_build "${options[@]}"
+               options+=(--with-protoc="$(pwd)/src/protoc")
+               popd > /dev/null || die
+       fi
+
+       ECONF_SOURCE="${S}" econf "${options[@]}"
+}
+
+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() {
+       find "${D}" -name "*.la" -delete || die
+
+       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
+}