summaryrefslogtreecommitdiff
path: root/dev-libs/protobuf
diff options
context:
space:
mode:
Diffstat (limited to 'dev-libs/protobuf')
-rw-r--r--dev-libs/protobuf/Manifest3
-rw-r--r--dev-libs/protobuf/files/protobuf-3.6.1-libatomic_linking.patch49
-rw-r--r--dev-libs/protobuf/protobuf-3.6.1.ebuild3
3 files changed, 53 insertions, 2 deletions
diff --git a/dev-libs/protobuf/Manifest b/dev-libs/protobuf/Manifest
index ec7a05c5acbe..da1674e57e2e 100644
--- a/dev-libs/protobuf/Manifest
+++ b/dev-libs/protobuf/Manifest
@@ -7,6 +7,7 @@ AUX protobuf-3.5.0-atomic_operations.patch 812 BLAKE2B f55d364fa5b7ee405d7cb9b08
AUX protobuf-3.6.0-disable_no-warning-test.patch 965 BLAKE2B 6ec0b1fc9d9d0be4f6dc9bc023d65b6b04c98d624ca4d1926cff0554d774d7cffd8d3597383acff1b7aca1a92dff4dd8368d5d86f1612aace16ede836f025af5 SHA512 82e601a26e51903e6b193c50960024240aecd3ddeeba8b29f437c550ad0bd277573ea4f83bcd70b2a4187c7df2b25af2790de22fb6f009640c403a9502d703be
AUX protobuf-3.6.0-protoc_input_output_files.patch 9632 BLAKE2B 6466f6f6cf08e7a9a89ced8281790593fa9ea85e029d59ff20bba8c9add16bbb039a44d1839516bb109b9a2b269773640b43e6137fb9ccf5f100ef4109ad2b8d SHA512 8ac3c42684869e1b45d0d1ec70912610eaaa6962bc14d9a89b1244f424af7d638b4905b6dbd7445cd5f54bc4520fc1fbae88c66d9f4a9169db879abd1fba2faf
AUX protobuf-3.6.0-system_libraries.patch 6323 BLAKE2B 0fb8e389a58b76c592b592782900b48bb6c68e85fc159d4b9a59a43ab5a116916f7d9ef15cca392e5751f015a887f855631abb124b4d4109d51f6ba401059549 SHA512 ab58b9aa9d1398a15346d6e85611ad826f8e52744aa137ca4f138348b4738afc7c6cd27129f925f5142edac7e272d56da880a83b216b2ce264804d6967997728
+AUX protobuf-3.6.1-libatomic_linking.patch 1753 BLAKE2B 50f8ac92dfada973ebcd187fa508a46ddd5d4e034e2eade2a3fcbb35ffab771578b241fa9a5343b46e91c90c4507e1d3a75a1bebc3426dbb1694c0fbb8cc03bf SHA512 c8bcb885dcf7d2871136a6410750aad69a61450b5a4bc80df56246a5875e1e9895d2d63e9e9e6deda3c4e516cd07344b92619457ef41f4f2ff0710c774957466
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
@@ -14,5 +15,5 @@ DIST protobuf-3.6.1.tar.gz 4485582 BLAKE2B 546c49759df784018459809b9db692c5c94ae
EBUILD protobuf-3.5.1.1.ebuild 2621 BLAKE2B f5d279625735d30a1025c414b20f60dd0385c7d8449fde3e45e6540fc1dcc90614c7e5d3c22c26ef89e7c0374f112ea84a5702ef679d01448923bfccb3364133 SHA512 fe1689582cbd86d2cb31bf85e44a1968524350b7fe62d2f97b20ec368e3046d567c746c26d7d773cba6f1d498f2527ad59dbb749e738458912e90b8b44d7e070
EBUILD protobuf-3.5.2.ebuild 2491 BLAKE2B 7d13d39cca5329ea99664f9ebc22c38d5a88f013e0e8dabe7f8a8b4229b993943a7cba2cdb81c28e3070e9fc5a652185d17e988efc32883da34615a1453dd198 SHA512 5f4aa9d253c246d6420badffb87eb66939c3e2faf765426da34c85977431341e2ae7b9aac2595cbd24d1ae8be9ec836771b02e66508af84b74ddc0d695c3418d
EBUILD protobuf-3.6.0.1.ebuild 2491 BLAKE2B 00444b7406baff1560defc88f3e3cde102cd24db454684fb2a919141fae3ba9000486b062f9a8128e0627930794af0f825555526d5a822363d944f2d064c7c52 SHA512 98ebec7694e6a0a47fa98b52371f74ca538f00ae649973e82eed51e4a3600e44c385a028dc3156c0a6c2232a305e317a95b389249090ebba6c77f77375ce49c1
-EBUILD protobuf-3.6.1.ebuild 2491 BLAKE2B 5bca8ad4099728658473282f8649d56321c5c5ff1e560a0b552fc3431b7cb3fef3ba2092c02c9fb799e8c3dddc42a3e454ea35b6c63b91038caa4c183a83feae SHA512 f6d59bf331d98a6805b5fd29d9b9fc37ecb5dbb1e23afa05e1bfb46eb48ee63f81e2b3088e0be13538619daef3f3c4f1e92f3b6717f37adc4a39d13a4a0619ba
+EBUILD protobuf-3.6.1.ebuild 2537 BLAKE2B f8ab500061fc434db98568270a6babc1b33a407997a5084d60378d851000cd9d4669bae169ff4091d3745005bb1c37618a1771d40a456d0664a9d052cd4bec38 SHA512 bd1c242e1741f51f5d4e4592226b8b2958ad788d2ef2224428dc2445b121e3efc38039549ca32b4991a61a721f4e63f728696253501acb21c2b8c7f52f2fdfed
MISC metadata.xml 543 BLAKE2B 43724e6d32707c62de4e1daffe50ba943c66286f6fe2357ec7171dad9feb7407049c26da517442957d61c11229617bd639d60bf070e7eedab8c871956cb3577a SHA512 f5a65ed219ff9f36c9d7bfdfe3bfe080ce0920e72f31f69820cc16822a04cdb38ec3c5d6b776b3c6cfde0bfc74c474558d048b706ac89e9405376e88504b8983
diff --git a/dev-libs/protobuf/files/protobuf-3.6.1-libatomic_linking.patch b/dev-libs/protobuf/files/protobuf-3.6.1-libatomic_linking.patch
new file mode 100644
index 000000000000..2b357b213170
--- /dev/null
+++ b/dev-libs/protobuf/files/protobuf-3.6.1-libatomic_linking.patch
@@ -0,0 +1,49 @@
+https://github.com/protocolbuffers/protobuf/issues/5219
+https://github.com/protocolbuffers/protobuf/pull/5227
+https://github.com/protocolbuffers/protobuf/commit/56b40a8f055cfd05633054aed5d3466a6e058b72
+
+--- /configure.ac
++++ /configure.ac
+@@ -165,6 +165,22 @@
+ ])
+ AM_CONDITIONAL([HAVE_ZLIB], [test $HAVE_ZLIB = 1])
+
++dnl On some platforms, std::atomic needs a helper library
++AC_MSG_CHECKING(whether -latomic is needed)
++AC_LINK_IFELSE([AC_LANG_SOURCE([[
++ #include <atomic>
++ #include <cstdint>
++ std::atomic<std::int64_t> v;
++ int main() {
++ return v;
++ }
++]])], STD_ATOMIC_NEED_LIBATOMIC=no, STD_ATOMIC_NEED_LIBATOMIC=yes)
++AC_MSG_RESULT($STD_ATOMIC_NEED_LIBATOMIC)
++if test "x$STD_ATOMIC_NEED_LIBATOMIC" = xyes; then
++ LIBATOMIC_LIBS="-latomic"
++fi
++AC_SUBST([LIBATOMIC_LIBS])
++
+ AS_IF([test "$with_protoc" != "no"], [
+ PROTOC=$with_protoc
+ AS_IF([test "$with_protoc" = "yes"], [
+--- /src/Makefile.am
++++ /src/Makefile.am
+@@ -163,7 +163,7 @@
+
+ lib_LTLIBRARIES = libprotobuf-lite.la libprotobuf.la libprotoc.la
+
+-libprotobuf_lite_la_LIBADD = $(PTHREAD_LIBS)
++libprotobuf_lite_la_LIBADD = $(PTHREAD_LIBS) $(LIBATOMIC_LIBS)
+ libprotobuf_lite_la_LDFLAGS = -version-info 17:0:0 -export-dynamic -no-undefined
+ if HAVE_LD_VERSION_SCRIPT
+ libprotobuf_lite_la_LDFLAGS += -Wl,--version-script=$(srcdir)/libprotobuf-lite.map
+@@ -209,7 +209,7 @@
+ google/protobuf/io/zero_copy_stream.cc \
+ google/protobuf/io/zero_copy_stream_impl_lite.cc
+
+-libprotobuf_la_LIBADD = $(PTHREAD_LIBS)
++libprotobuf_la_LIBADD = $(PTHREAD_LIBS) $(LIBATOMIC_LIBS)
+ libprotobuf_la_LDFLAGS = -version-info 17:0:0 -export-dynamic -no-undefined
+ if HAVE_LD_VERSION_SCRIPT
+ libprotobuf_la_LDFLAGS += -Wl,--version-script=$(srcdir)/libprotobuf.map
diff --git a/dev-libs/protobuf/protobuf-3.6.1.ebuild b/dev-libs/protobuf/protobuf-3.6.1.ebuild
index 3b3bdeaf3517..380f12778c9f 100644
--- a/dev-libs/protobuf/protobuf-3.6.1.ebuild
+++ b/dev-libs/protobuf/protobuf-3.6.1.ebuild
@@ -11,7 +11,7 @@ SRC_URI="https://github.com/protocolbuffers/${PN}/archive/v${PV}.tar.gz -> ${P}.
LICENSE="BSD"
SLOT="0/17"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ia64 ~mips ~ppc ppc64 ~sh sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos"
IUSE="emacs examples static-libs test zlib"
RDEPEND="emacs? ( virtual/emacs )
@@ -23,6 +23,7 @@ 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"
+ "${FILESDIR}/${PN}-3.6.1-libatomic_linking.patch"
)
DOCS=(CHANGES.txt CONTRIBUTORS.txt README.md)