commit:     f39ed9cf181d96f0cc120a898379c06b103bc83b
Author:     Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
AuthorDate: Sun Oct 28 19:33:39 2018 +0000
Commit:     Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
CommitDate: Sun Oct 28 19:33:39 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f39ed9cf

net-libs/grpc: fix ARG_MAX install error

Closes: https://bugs.gentoo.org/669730
Signed-off-by: Georgy Yakovlev <gyakovlev <AT> gentoo.org>
Package-Manager: Portage-2.3.51, Repoman-2.3.11

 ...0-Prevent-shell-calls-longer-than-ARG_MAX.patch | 70 ++++++++++++++++++++++
 net-libs/grpc/grpc-1.16.0.ebuild                   |  1 +
 2 files changed, 71 insertions(+)

diff --git 
a/net-libs/grpc/files/grpc-1.16.0-Prevent-shell-calls-longer-than-ARG_MAX.patch 
b/net-libs/grpc/files/grpc-1.16.0-Prevent-shell-calls-longer-than-ARG_MAX.patch
new file mode 100644
index 00000000000..fd9f9141954
--- /dev/null
+++ 
b/net-libs/grpc/files/grpc-1.16.0-Prevent-shell-calls-longer-than-ARG_MAX.patch
@@ -0,0 +1,70 @@
+From 0892788776d60d92a0cddcd22078779166b736db Mon Sep 17 00:00:00 2001
+From: Dario Berzano <dario.berz...@cern.ch>
+Date: Thu, 5 Jul 2018 11:27:20 +0200
+Subject: [PATCH] Prevent shell calls longer than ARG_MAX
+
+This patch we breaks the relevant paths array into multiple shorter arrays in
+order to make the shell calls succeed.
+
+See grpc/grpc#14844.
+---
+ Makefile | 16 ++++++++++++++++
+ 1 file changed, 16 insertions(+)
+
+diff --git a/Makefile b/Makefile
+index 54823a31167..25eb092d996 100644
+--- a/Makefile
++++ b/Makefile
+@@ -2946,8 +2946,14 @@ install-headers_c:
+
+ install-headers_cxx:
+       $(E) "[INSTALL] Installing public C++ headers"
+-      $(Q) $(foreach h, $(PUBLIC_HEADERS_CXX), $(INSTALL) -d $(prefix)/$(dir 
$(h)) && ) exit 0 || exit 1
+-      $(Q) $(foreach h, $(PUBLIC_HEADERS_CXX), $(INSTALL) $(h) $(prefix)/$(h) 
&& ) exit 0 || exit 1
++      $(Q) $(foreach h, $(PUBLIC_HEADERS_CXX1), $(INSTALL) -d $(prefix)/$(dir 
$(h)) && ) exit 0 || exit 1
++      $(Q) $(foreach h, $(PUBLIC_HEADERS_CXX1), $(INSTALL) $(h) 
$(prefix)/$(h) && ) exit 0 || exit 1
++      $(Q) $(foreach h, $(PUBLIC_HEADERS_CXX2), $(INSTALL) -d $(prefix)/$(dir 
$(h)) && ) exit 0 || exit 1
++      $(Q) $(foreach h, $(PUBLIC_HEADERS_CXX2), $(INSTALL) $(h) 
$(prefix)/$(h) && ) exit 0 || exit 1
++      $(Q) $(foreach h, $(PUBLIC_HEADERS_CXX3), $(INSTALL) -d $(prefix)/$(dir 
$(h)) && ) exit 0 || exit 1
++      $(Q) $(foreach h, $(PUBLIC_HEADERS_CXX3), $(INSTALL) $(h) 
$(prefix)/$(h) && ) exit 0 || exit 1
++      $(Q) $(foreach h, $(PUBLIC_HEADERS_CXX4), $(INSTALL) -d $(prefix)/$(dir 
$(h)) && ) exit 0 || exit 1
++      $(Q) $(foreach h, $(PUBLIC_HEADERS_CXX4), $(INSTALL) $(h) 
$(prefix)/$(h) && ) exit 0 || exit 1
+
+ install-static: install-static_c install-static_cxx
+
+@@ -5278,6 +5284,8 @@ PUBLIC_HEADERS_CXX += \
+     include/grpc++/support/stub_options.h \
+     include/grpc++/support/sync_stream.h \
+     include/grpc++/support/time.h \
++
++PUBLIC_HEADERS_CXX1 += \
+     include/grpcpp/alarm.h \
+     include/grpcpp/channel.h \
+     include/grpcpp/client_context.h \
+@@ -5325,6 +5333,8 @@ PUBLIC_HEADERS_CXX += \
+     include/grpcpp/support/stub_options.h \
+     include/grpcpp/support/sync_stream.h \
+     include/grpcpp/support/time.h \
++
++PUBLIC_HEADERS_CXX2 += \
+     include/grpc/support/alloc.h \
+     include/grpc/support/atm.h \
+     include/grpc/support/atm_gcc_atomic.h \
+@@ -5376,6 +5386,8 @@ PUBLIC_HEADERS_CXX += \
+     include/grpc/impl/codegen/propagation_bits.h \
+     include/grpc/impl/codegen/slice.h \
+     include/grpc/impl/codegen/status.h \
++
++PUBLIC_HEADERS_CXX3 += \
+     include/grpc++/impl/codegen/async_stream.h \
+     include/grpc++/impl/codegen/async_unary_call.h \
+     include/grpc++/impl/codegen/byte_buffer.h \
+@@ -5406,6 +5418,8 @@ PUBLIC_HEADERS_CXX += \
+     include/grpc++/impl/codegen/stub_options.h \
+     include/grpc++/impl/codegen/sync_stream.h \
+     include/grpc++/impl/codegen/time.h \
++
++PUBLIC_HEADERS_CXX4 += \
+     include/grpcpp/impl/codegen/async_generic_service.h \
+     include/grpcpp/impl/codegen/async_stream.h \
+     include/grpcpp/impl/codegen/async_unary_call.h \

diff --git a/net-libs/grpc/grpc-1.16.0.ebuild b/net-libs/grpc/grpc-1.16.0.ebuild
index 31caf4ced50..b3fac81f326 100644
--- a/net-libs/grpc/grpc-1.16.0.ebuild
+++ b/net-libs/grpc/grpc-1.16.0.ebuild
@@ -35,6 +35,7 @@ PATCHES=(
        "${FILESDIR}/0005-grpc-1.11.0-pkgconfig-libdir.patch"
        "${FILESDIR}/grpc-1.15.0-fix-cpp-so-version.patch"
        "${FILESDIR}/grpc-1.16.0-gcc8-fixes.patch"
+       "${FILESDIR}/grpc-1.16.0-Prevent-shell-calls-longer-than-ARG_MAX.patch"
 )
 
 S="${WORKDIR}/${PN}-${MY_PV}"

Reply via email to