Skip to content

Commit

Permalink
dev-libs/protobuf: Version bump (3.12.4).
Browse files Browse the repository at this point in the history
Signed-off-by: Arfrever Frehtes Taifersar Arahesis <[email protected]>
Signed-off-by: Mike Gilbert <[email protected]>
  • Loading branch information
Arfrever Frehtes Taifersar Arahesis authored and floppym committed Sep 15, 2020
1 parent 8984e2a commit 6952b66
Show file tree
Hide file tree
Showing 2 changed files with 129 additions and 0 deletions.
1 change: 1 addition & 0 deletions dev-libs/protobuf/Manifest
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
DIST protobuf-3.10.1.tar.gz 4905995 BLAKE2B 1dde3b6260918da8430c2ce69210462f339c492b2a4e53d5d9c1bea3747aead905370507fc4bd703560f6885c0f3f8393a998b875c19744ad94827109ecbb49f SHA512 aba0c4034c0d3b1759904adb6270eee94dd5dc568f433b219e3f1f70c0033993cdfa3bf476ad3f5767c7629edb9fd029c686405abf93731dde808286b336330d
DIST protobuf-3.11.4.tar.gz 5140799 BLAKE2B 97b450c0623593efe6a42b66582ff183344b8831689e6a5b4d36096dbd57c33da9569bbf26578536aaf73ecd866ac0588b6cb7d55a6a9b9a6e840d4c57099001 SHA512 777bbb0e9e2375eaebe6b8c87abd660bac70ee469c9ad00dd25917b82d7fb5bbe33cf87f0d69c90e19d55c07a7285ec20974ba4768623ce9ccfadf147fd5e261
DIST protobuf-3.12.2.tar.gz 5309688 BLAKE2B 6f04ab75a165d8135b4c1de210f8698f56f309f73d664192209de10580e0ef850bf56f6f394b860f21912e341141f7bbb1f63198eaee55fd7ad74d86b00c3b1f SHA512 84a349a1dcb5bce6a6a892cf11264390b557ed1e7b05883b71fa9cfb7460d9f73119da1f2861066869e33c752246ea438d5ce2c2b3ff7a4b07696d9450b7916b
DIST protobuf-3.12.4.tar.gz 5310348 BLAKE2B 2630941672963165467221843c10079a0ed966f2fdfcbc970b0b41e1ed3c7f78734496c1fbd3ec509c68999a14f637fff267b309cf82a8acf2bb5a948484f79b SHA512 c5d24502b9a6be0a606a19213186fe462e0de6830547003636f0897781f36d0bd7e4e7d9689d96390a0399ce04b6438cda3a0fe6f97f0feb700a110e90beef0c
128 changes: 128 additions & 0 deletions dev-libs/protobuf/protobuf-3.12.4.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
# Copyright 2008-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI="7"

inherit autotools elisp-common flag-o-matic multilib-minimal toolchain-funcs

if [[ "${PV}" == "9999" ]]; then
inherit git-r3

EGIT_REPO_URI="https://github.com/protocolbuffers/protobuf"
EGIT_SUBMODULES=()
fi

DESCRIPTION="Google's Protocol Buffers - Extensible mechanism for serializing structured data"
HOMEPAGE="https://developers.google.com/protocol-buffers/ https://github.com/protocolbuffers/protobuf"
if [[ "${PV}" == "9999" ]]; then
SRC_URI=""
else
SRC_URI="https://github.com/protocolbuffers/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
fi

LICENSE="BSD"
SLOT="0/23"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos"
IUSE="emacs examples static-libs test zlib"
RESTRICT="!test? ( test )"

BDEPEND="emacs? ( app-editors/emacs:* )"
DEPEND="test? ( >=dev-cpp/gtest-1.9[${MULTILIB_USEDEP}] )
zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )"
RDEPEND="emacs? ( app-editors/emacs:* )
zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )"

PATCHES=(
"${FILESDIR}/${PN}-3.12.0-disable_no-warning-test.patch"
"${FILESDIR}/${PN}-3.12.0-system_libraries.patch"
"${FILESDIR}/${PN}-3.12.0-protoc_input_output_files.patch"
)

DOCS=(CHANGES.txt CONTRIBUTORS.txt README.md)

src_prepare() {
default

# https://github.com/protocolbuffers/protobuf/issues/7413
sed -e "/^AC_PROG_CXX_FOR_BUILD$/d" -i configure.ac || die

eautoreconf
}

src_configure() {
append-cppflags -DGOOGLE_PROTOBUF_NO_RTTI

if tc-ld-is-gold; then
# https://sourceware.org/bugzilla/show_bug.cgi?id=24527
tc-ld-disable-gold
fi

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 "${ED}" -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
}

0 comments on commit 6952b66

Please sign in to comment.