Gentoo Archives: gentoo-commits

From: Georgy Yakovlev <gyakovlev@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: net-libs/grpc/files/, net-libs/grpc/
Date: Sat, 16 Nov 2019 00:31:19
Message-Id: 1573863623.7d234af969f1bd8037b498ddb44ceb2b516c68a9.gyakovlev@gentoo
1 commit: 7d234af969f1bd8037b498ddb44ceb2b516c68a9
2 Author: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
3 AuthorDate: Fri Nov 15 23:52:13 2019 +0000
4 Commit: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
5 CommitDate: Sat Nov 16 00:20:23 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7d234af9
7
8 net-libs/grpc: bump to 1.25.0
9
10 Package-Manager: Portage-2.3.79, Repoman-2.3.18
11 Signed-off-by: Georgy Yakovlev <gyakovlev <AT> gentoo.org>
12
13 net-libs/grpc/Manifest | 1 +
14 .../grpc/files/grpc-1.25.0-pkgconfig-libdir.patch | 17 ++++
15 net-libs/grpc/grpc-1.25.0.ebuild | 112 +++++++++++++++++++++
16 3 files changed, 130 insertions(+)
17
18 diff --git a/net-libs/grpc/Manifest b/net-libs/grpc/Manifest
19 index 1254f6798c1..c347eb0907d 100644
20 --- a/net-libs/grpc/Manifest
21 +++ b/net-libs/grpc/Manifest
22 @@ -7,3 +7,4 @@ DIST grpc-1.21.1.tar.gz 15043553 BLAKE2B bed23af6606a69eb02a033d5dd6d92e3e080cc6
23 DIST grpc-1.22.1.tar.gz 15083781 BLAKE2B 5f1bc2fc638cfa2f97df9dfba3c927ae0c7871b9e56f8012795000c30f20fa4d5c1bad37d117cf8ea54fb372b8b02702a866c027c6e0a467f276a752ee9d17c6 SHA512 086ceb7a4fc1439bd23a2cab8c90ba2542491d5a9c278a0ff6e1b3ad623cf7725b2a7310bb793d9b36882bd9394d02a3616331ac26c78d822e68b305c2ae27f6
24 DIST grpc-1.23.0.tar.gz 15212436 BLAKE2B 119a62e6573a1c7785934f7752d9bf2fc0f503a268e439ce143d6730994e3fc154ffd558a2fb3776a77f5f36798baac334f50d1c612ae5564c3c2f110df8b42c SHA512 4770651bd73b71735152155327c44d59125442b405157ffea8fb80b6f16406dd388474394e44ef620e2a777018121988a3a7a552a42141650d7cac263ab499a0
25 DIST grpc-1.24.3.tar.gz 15364420 BLAKE2B 7a1262ee931c2578399e7373e25fefb7a4329a2c0f139b17fbd4073406a931730393016455ff3ddee8b686ebb7903a898ca532972f57369c7658c68643b6d715 SHA512 19afa8b1fd64c429317c85d8cf42d01af0ac6aec82508740c176e1fd4f92dea9531ea9812523215ed67466bae93a75e14dc34cd9cce5987a13c0104e0313c69c
26 +DIST grpc-1.25.0.tar.gz 16460163 BLAKE2B a581b1db459468e7c01af579da39cc111825931eee21d9af13833b1d65e448ee2024d86edb95e7acb705ad427f793d7911d6fb66418155e75f5e1f0e6116578a SHA512 7d9e126eafdfefe9b5c2eacf9c082b972115f231a55cff53386305f2df68037e2593eedc3f27fe0eaeb7fbe78b28f6b87607cdeccf59929b9a9b33bf74ab5c92
27
28 diff --git a/net-libs/grpc/files/grpc-1.25.0-pkgconfig-libdir.patch b/net-libs/grpc/files/grpc-1.25.0-pkgconfig-libdir.patch
29 new file mode 100644
30 index 00000000000..28088713e5f
31 --- /dev/null
32 +++ b/net-libs/grpc/files/grpc-1.25.0-pkgconfig-libdir.patch
33 @@ -0,0 +1,17 @@
34 +--- a/Makefile 2018-05-28 17:59:34.631540261 +0800
35 ++++ b/Makefile 2018-05-28 18:01:31.266936000 +0800
36 +@@ -460,11 +460,11 @@
37 + CACHE_MK += HAS_PKG_CONFIG = true,
38 + endif
39 +
40 +-CORE_PC_TEMPLATE = prefix=$(prefix),exec_prefix=\$${prefix},includedir=\$${prefix}/include,libdir=\$${exec_prefix}/lib,,Name: $(PC_NAME),Description: $(PC_DESCRIPTION),Version: $(CORE_VERSION),Cflags: -I\$${includedir} $(PC_CFLAGS),Requires: $(PC_REQUIRES),Libs: -L\$${libdir} $(PC_LIB),Libs.private: $(PC_LIBS_PRIVATE)
41 ++CORE_PC_TEMPLATE = prefix=$(prefix),exec_prefix=\$${prefix},includedir=\$${prefix}/include,libdir=\$${exec_prefix}/$(INSTALL_LIBDIR),,Name: $(PC_NAME),Description: $(PC_DESCRIPTION),Version: $(CORE_VERSION),Cflags: -I\$${includedir} $(PC_CFLAGS),Requires: $(PC_REQUIRES),Libs: -L\$${libdir} $(PC_LIB),Libs.private: $(PC_LIBS_PRIVATE)
42 +
43 +-CPP_PC_TEMPLATE = prefix=$(prefix),exec_prefix=\$${prefix},includedir=\$${prefix}/include,libdir=\$${exec_prefix}/lib,,Name: $(PC_NAME),Description: $(PC_DESCRIPTION),Version: $(CPP_VERSION),Cflags: -I\$${includedir} $(PC_CFLAGS),Requires: $(PC_REQUIRES),Libs: -L\$${libdir} $(PC_LIB),Libs.private: $(PC_LIBS_PRIVATE)
44 ++CPP_PC_TEMPLATE = prefix=$(prefix),exec_prefix=\$${prefix},includedir=\$${prefix}/include,libdir=\$${exec_prefix}/$(INSTALL_LIBDIR),,Name: $(PC_NAME),Description: $(PC_DESCRIPTION),Version: $(CPP_VERSION),Cflags: -I\$${includedir} $(PC_CFLAGS),Requires: $(PC_REQUIRES),Libs: -L\$${libdir} $(PC_LIB),Libs.private: $(PC_LIBS_PRIVATE)
45 +
46 +-CSHARP_PC_TEMPLATE = prefix=$(prefix),exec_prefix=\$${prefix},includedir=\$${prefix}/include,libdir=\$${exec_prefix}/lib,,Name: $(PC_NAME),Description: $(PC_DESCRIPTION),Version: $(CSHARP_VERSION),Cflags: -I\$${includedir} $(PC_CFLAGS),Requires: $(PC_REQUIRES),Libs: -L\$${libdir} $(PC_LIB),Libs.private: $(PC_LIBS_PRIVATE)
47 ++CSHARP_PC_TEMPLATE = prefix=$(prefix),exec_prefix=\$${prefix},includedir=\$${prefix}/include,libdir=\$${exec_prefix}/$(INSTALL_LIBDIR),,Name: $(PC_NAME),Description: $(PC_DESCRIPTION),Version: $(CSHARP_VERSION),Cflags: -I\$${includedir} $(PC_CFLAGS),Requires: $(PC_REQUIRES),Libs: -L\$${libdir} $(PC_LIB),Libs.private: $(PC_LIBS_PRIVATE)
48 +
49 + ifeq ($(SYSTEM),MINGW32)
50 + EXECUTABLE_SUFFIX = .exe
51
52 diff --git a/net-libs/grpc/grpc-1.25.0.ebuild b/net-libs/grpc/grpc-1.25.0.ebuild
53 new file mode 100644
54 index 00000000000..0a1213a0a71
55 --- /dev/null
56 +++ b/net-libs/grpc/grpc-1.25.0.ebuild
57 @@ -0,0 +1,112 @@
58 +# Copyright 1999-2019 Gentoo Authors
59 +# Distributed under the terms of the GNU General Public License v2
60 +
61 +EAPI=7
62 +
63 +inherit flag-o-matic toolchain-funcs
64 +
65 +MY_PV="${PV//_pre/-pre}"
66 +
67 +DESCRIPTION="Modern open source high performance RPC framework"
68 +HOMEPAGE="https://www.grpc.io"
69 +SRC_URI="https://github.com/${PN}/${PN}/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz"
70 +
71 +LICENSE="Apache-2.0"
72 +SLOT="0"
73 +KEYWORDS="~amd64 ~ppc64 ~x86"
74 +IUSE="examples doc perftools systemtap static-libs"
75 +
76 +DEPEND="
77 + >=dev-libs/openssl-1.0.2:0=[-bindist]
78 + >=dev-libs/protobuf-3.8.0:=
79 + >=net-dns/c-ares-1.15.0:=
80 + sys-libs/zlib:=
81 + perftools? ( dev-util/google-perftools:= )
82 + systemtap? ( dev-util/systemtap )
83 +"
84 +
85 +RDEPEND="${DEPEND}"
86 +BDEPEND="virtual/pkgconfig"
87 +
88 +# requires network
89 +RESTRICT="test"
90 +
91 +PATCHES=(
92 + "${FILESDIR}/grpc-1.21.0-fix-host-ar-handling.patch"
93 + "${FILESDIR}/grpc-1.3.0-Don-t-run-ldconfig.patch"
94 + "${FILESDIR}/grpc-1.25.0-pkgconfig-libdir.patch"
95 + "${FILESDIR}/grpc-1.22.0-cxx_arg_list_too_long_forloop.patch" # https://github.com/grpc/grpc/issues/14844
96 +)
97 +
98 +S="${WORKDIR}/${PN}-${MY_PV}"
99 +
100 +src_prepare() {
101 + rm -r third_party/cares || die
102 + sed -i 's:-Werror::g' Makefile || die
103 + sed -i 's@$(prefix)/lib@$(prefix)/$(INSTALL_LIBDIR)@g' Makefile || die "fix libdir"
104 +
105 + default
106 +}
107 +
108 +src_compile() {
109 + tc-export CC CXX PKG_CONFIG
110 +
111 + local myemakeargs=(
112 + V=1
113 + prefix=/usr
114 + INSTALL_LIBDIR="$(get_libdir)"
115 + AR="$(tc-getAR)"
116 + AROPTS="rcs"
117 + CFLAGS="${CFLAGS}"
118 + CXXFLAGS="${CXXFLAGS}"
119 + LD="${CC}"
120 + LDXX="${CXX}"
121 + STRIP=/bin/true
122 + HOST_AR="$(tc-getBUILD_AR)"
123 + HOST_CC="$(tc-getBUILD_CC)"
124 + HOST_CXX="$(tc-getBUILD_CXX)"
125 + HOST_LD="$(tc-getBUILD_CC)"
126 + HOST_LDXX="$(tc-getBUILD_CXX)"
127 + HAS_SYSTEM_PERFTOOLS="$(usex perftools true false)"
128 + HAS_SYSTEMTAP="$(usex systemtap true false)"
129 + )
130 +
131 + emake "${myemakeargs[@]}"
132 +}
133 +
134 +src_install() {
135 + local myemakeargs=(
136 + V=1
137 + prefix="${ED}"/usr
138 + INSTALL_LIBDIR="$(get_libdir)"
139 + STRIP=/bin/true
140 + )
141 +
142 + emake "${myemakeargs[@]}" install
143 +
144 + use static-libs || find "${ED}" -name '*.a' -delete
145 +
146 + if use examples; then
147 + find examples -name '.gitignore' -delete || die
148 + dodoc -r examples
149 + docompress -x /usr/share/doc/${PF}/examples
150 + fi
151 +
152 + if use doc; then
153 + find doc -name '.gitignore' -delete || die
154 + local DOCS=( AUTHORS CONCEPTS.md README.md TROUBLESHOOTING.md doc/. )
155 + fi
156 +
157 + einstalldocs
158 +}
159 +
160 +pkg_postinst() {
161 + local v
162 + for v in ${REPLACING_VERSIONS}; do
163 + if ver_test "${v}" -lt 1.16.0; then
164 + ewarn "python bindings and tools moved to separate independent packages"
165 + ewarn "check dev-python/grpcio and dev-python/grpcio-tools"
166 + fi
167 + done
168 +
169 +}