1 |
commit: d74b8dfb26829632b392901ee9e2a6ab81fdab79 |
2 |
Author: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sun May 30 01:33:16 2021 +0000 |
4 |
Commit: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org> |
5 |
CommitDate: Sun May 30 01:33:16 2021 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d74b8dfb |
7 |
|
8 |
net-libs/grpc: add 1.38.0 |
9 |
|
10 |
Signed-off-by: Georgy Yakovlev <gyakovlev <AT> gentoo.org> |
11 |
|
12 |
net-libs/grpc/Manifest | 1 + |
13 |
net-libs/grpc/grpc-1.38.0.ebuild | 102 +++++++++++++++++++++++++++++++++++++++ |
14 |
2 files changed, 103 insertions(+) |
15 |
|
16 |
diff --git a/net-libs/grpc/Manifest b/net-libs/grpc/Manifest |
17 |
index 553cc687b28..dc349d754d0 100644 |
18 |
--- a/net-libs/grpc/Manifest |
19 |
+++ b/net-libs/grpc/Manifest |
20 |
@@ -1,3 +1,4 @@ |
21 |
DIST grpc-1.28.1.tar.gz 6888015 BLAKE2B 92d6f4a655183d34979c668bb7f4187a6670aa8ff5609df7b19fc7cadb57756fdc2322e57ef328623b1d91e63d8891ec0154ccef827c0302c14d986c6d9d179f SHA512 5cc4993470e2df21447d032ddeb65ab4175bb8acad5a06fdd22564068b80a5be255ef0e44d36732642d39dc3eaec02a93d2aaf6e369ad5dc43ff99b5023f357b |
22 |
DIST grpc-1.32.0.tar.gz 7174251 BLAKE2B 4ea1b2d6a92f71e0d3703b350778fa4ae78eaeefe4f9052b649abb42e3d5e02e0220695ce2ef52eaf4ecec4194d024bf1ce7a33d52594557c7cceec5b5a3c069 SHA512 90136042327cea4e3680e19484f23cc00322914a7aae7987bf00b6e0901721d14c487555fdd94888192d6beb950172361ac57fbd02d43b40552f7ff5cac442ed |
23 |
DIST grpc-1.37.1.tar.gz 8212731 BLAKE2B c306fbe60f5191fe957efb35c75574e00b1948777795e7d116a1d0a47238b53e73055e7c173e69afcf97b77e593f55001141bbef8fb09b9787420203d935eb85 SHA512 fe02447f558116e9ed2de48142b9bd3b8908d496aea7816406eee2c6ad136714ee14c2104a82a32f56ab486c5050b4665c55bacb24c91ceabcf1b998a5fc86b7 |
24 |
+DIST grpc-1.38.0.tar.gz 8296425 BLAKE2B 2a317dbb1ab79a508a301d84ac6aa858f62accf057453b1536900654376d1a1b19549bb1efa52c5f0916c08c3616e9d1cd2efb4f8143ea923633cfc4ed6e04fb SHA512 6ce37b4b87f08c227995f8c8a9649a3d9a4d8622458772f5f32552ff5b00b920a6e57ba7208c2e8f67eb2ee4f503378320866905863598d08e21b226aa0cd1c5 |
25 |
|
26 |
diff --git a/net-libs/grpc/grpc-1.38.0.ebuild b/net-libs/grpc/grpc-1.38.0.ebuild |
27 |
new file mode 100644 |
28 |
index 00000000000..5a30754029f |
29 |
--- /dev/null |
30 |
+++ b/net-libs/grpc/grpc-1.38.0.ebuild |
31 |
@@ -0,0 +1,102 @@ |
32 |
+# Copyright 1999-2021 Gentoo Authors |
33 |
+# Distributed under the terms of the GNU General Public License v2 |
34 |
+ |
35 |
+EAPI=7 |
36 |
+ |
37 |
+inherit cmake |
38 |
+ |
39 |
+MY_PV="${PV//_pre/-pre}" |
40 |
+ |
41 |
+DESCRIPTION="Modern open source high performance RPC framework" |
42 |
+HOMEPAGE="https://www.grpc.io" |
43 |
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz" |
44 |
+ |
45 |
+LICENSE="Apache-2.0" |
46 |
+# format is 0/${CORE_SOVERSION//./}.${CPP_SOVERSION//./} , check top level CMakeLists.txt |
47 |
+SLOT="0/16.138" |
48 |
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" |
49 |
+IUSE="doc examples test" |
50 |
+ |
51 |
+# look for submodule versions in third_party dir |
52 |
+RDEPEND=" |
53 |
+ =dev-cpp/abseil-cpp-20210324*:= |
54 |
+ >=dev-libs/re2-0.2021.04.01:= |
55 |
+ >=dev-libs/openssl-1.1.1:0=[-bindist] |
56 |
+ >=dev-libs/protobuf-3.15.8:= |
57 |
+ dev-libs/xxhash |
58 |
+ >=net-dns/c-ares-1.15.0:= |
59 |
+ sys-libs/zlib:= |
60 |
+" |
61 |
+ |
62 |
+DEPEND="${RDEPEND} |
63 |
+ test? ( |
64 |
+ dev-cpp/benchmark |
65 |
+ dev-cpp/gflags |
66 |
+ ) |
67 |
+" |
68 |
+ |
69 |
+BDEPEND="virtual/pkgconfig" |
70 |
+ |
71 |
+# requires sources of many google tools |
72 |
+RESTRICT="test" |
73 |
+ |
74 |
+S="${WORKDIR}/${PN}-${MY_PV}" |
75 |
+ |
76 |
+soversion_check() { |
77 |
+ local core_sover cpp_sover |
78 |
+ # extract quoted number. line we check looks like this: 'set(gRPC_CPP_SOVERSION "1.37")' |
79 |
+ core_sover="$(grep 'set(gRPC_CORE_SOVERSION ' CMakeLists.txt | sed '/.*\"\(.*\)\".*/ s//\1/')" |
80 |
+ cpp_sover="$(grep 'set(gRPC_CPP_SOVERSION ' CMakeLists.txt | sed '/.*\"\(.*\)\".*/ s//\1/')" |
81 |
+ # remove dots, e.g. 1.37 -> 137 |
82 |
+ core_sover="${core_sover//./}" |
83 |
+ cpp_sover="${cpp_sover//./}" |
84 |
+ [[ ${core_sover} -eq $(ver_cut 2 ${SLOT}) ]] || die "fix core sublot! should be ${core_sover}" |
85 |
+ [[ ${cpp_sover} -eq $(ver_cut 3 ${SLOT}) ]] || die "fix cpp sublot! should be ${cpp_sover}" |
86 |
+} |
87 |
+ |
88 |
+src_prepare() { |
89 |
+ cmake_src_prepare |
90 |
+ |
91 |
+ # un-hardcode libdir |
92 |
+ sed -i "s@lib/pkgconfig@$(get_libdir)/pkgconfig@" CMakeLists.txt || die |
93 |
+ sed -i "s@/lib@/$(get_libdir)@" cmake/pkg-config-template.pc.in || die |
94 |
+ |
95 |
+ soversion_check |
96 |
+} |
97 |
+ |
98 |
+src_configure() { |
99 |
+ local mycmakeargs=( |
100 |
+ -DgRPC_INSTALL=ON |
101 |
+ -DgRPC_ABSL_PROVIDER=package |
102 |
+ -DgRPC_BACKWARDS_COMPATIBILITY_MODE=OFF |
103 |
+ -DgRPC_CARES_PROVIDER=package |
104 |
+ -DgRPC_INSTALL_CMAKEDIR="$(get_libdir)/cmake/${PN}" |
105 |
+ -DgRPC_INSTALL_LIBDIR="$(get_libdir)" |
106 |
+ -DgRPC_PROTOBUF_PROVIDER=package |
107 |
+ -DgRPC_RE2_PROVIDER=package |
108 |
+ -DgRPC_SSL_PROVIDER=package |
109 |
+ -DgRPC_ZLIB_PROVIDER=package |
110 |
+ -DgRPC_BUILD_TESTS=$(usex test) |
111 |
+ -DCMAKE_CXX_STANDARD=17 |
112 |
+ $(usex test '-DgRPC_GFLAGS_PROVIDER=package' '') |
113 |
+ $(usex test '-DgRPC_BENCHMARK_PROVIDER=package' '') |
114 |
+ ) |
115 |
+ cmake_src_configure |
116 |
+} |
117 |
+ |
118 |
+src_install() { |
119 |
+ cmake_src_install |
120 |
+ |
121 |
+ if use examples; then |
122 |
+ find examples -name '.gitignore' -delete || die |
123 |
+ dodoc -r examples |
124 |
+ docompress -x /usr/share/doc/${PF}/examples |
125 |
+ fi |
126 |
+ |
127 |
+ if use doc; then |
128 |
+ find doc -name '.gitignore' -delete || die |
129 |
+ local DOCS=( AUTHORS CONCEPTS.md README.md TROUBLESHOOTING.md doc/. ) |
130 |
+ fi |
131 |
+ |
132 |
+ einstalldocs |
133 |
+} |