From f3dd5482aacbd4d019abf036a28ce94c4ee4ae2a56e6eb931cccb26465fc7693 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Thu, 22 Aug 2019 10:38:39 +0000 Subject: [PATCH 1/3] - Update to new upstream release 1.23 OBS-URL: https://build.opensuse.org/package/show/devel:tools/grpc?expand=0&rev=44 --- grpc.changes | 11 +++++++++++ grpc.spec | 36 ++++++++++++++++++++++++------------ v1.21.3.tar.gz | 3 --- v1.23.0.tar.gz | 3 +++ 4 files changed, 38 insertions(+), 15 deletions(-) delete mode 100644 v1.21.3.tar.gz create mode 100644 v1.23.0.tar.gz diff --git a/grpc.changes b/grpc.changes index e3b9635..35fcfc3 100644 --- a/grpc.changes +++ b/grpc.changes @@ -1,3 +1,14 @@ +------------------------------------------------------------------- +Sun Aug 18 16:29:43 UTC 2019 - Jan Engelhardt + +- Update to new upstream release 1.23 + * Fixed a bug where POST_RECV_MESSAGE was not being triggered. + * Renamed root certificate bundle in gRPC-C++ pod. + * Increased lower bound on DNS re-resolution period to 30 seconds. + * Fixed a segfault when forking while using gevent. + * Added channel idleness support + * Added threadpool support + ------------------------------------------------------------------- Wed Jun 5 18:52:46 UTC 2019 - Jan Engelhardt diff --git a/grpc.spec b/grpc.spec index 3e73496..303d8eb 100644 --- a/grpc.spec +++ b/grpc.spec @@ -17,29 +17,36 @@ %define lname libgrpc6 -%define src_install_dir /usr/src/%{name} +%define src_install_dir /usr/src/%name %{?!python_module:%define python_module() python-%{**} python3-%{**}} Name: grpc -Version: 1.21.3 +Version: 1.23 Release: 0 -%define rver 1.21.3 +%define rver 1.23.0 Summary: HTTP/2-based Remote Procedure Call implementation License: Apache-2.0 Group: Development/Tools/Building -Url: http://grpc.io/ +URL: https://grpc.io/ Source: https://github.com/grpc/grpc/archive/v%rver.tar.gz BuildRequires: %{python_module Cython} BuildRequires: %{python_module devel} BuildRequires: %{python_module setuptools} BuildRequires: cmake BuildRequires: gcc-c++ +BuildRequires: glibc-debuginfo +BuildRequires: libprotobuf-lite20-debuginfo +BuildRequires: libprotobuf20-debuginfo +BuildRequires: libprotoc20-debuginfo BuildRequires: pkg-config +BuildRequires: protobuf-debugsource +BuildRequires: protobuf-devel-debuginfo +BuildRequires: protobuf-source BuildRequires: python-rpm-macros +BuildRequires: zypper BuildRequires: pkgconfig(libcares) BuildRequires: pkgconfig(openssl) >= 1.0.1 BuildRequires: pkgconfig(protobuf) >= 3.8.0 BuildRequires: pkgconfig(zlib) -BuildRoot: %{_tmppath}/%{name}-%{version}-build %description The reference implementation of the gRPC protocol, done on top of @@ -94,6 +101,9 @@ This subpackage contains the python3 bindings. %setup -qn grpc-%rver %build +# protoc is invoked strangely; make it happy with this dir or it will assert() +mkdir -p third_party/protobuf/src + make %{?_smp_mflags} STRIP=/bin/true V=1 VERBOSE=1 \ CFLAGS="%optflags -Wno-error" CXXFLAGS="%optflags -Wno-error" @@ -123,13 +133,15 @@ popd %python_install # Install sources -mkdir -p %{buildroot}%{src_install_dir} -tar -xzf %{SOURCE0} --strip-components=1 -C %{buildroot}%{src_install_dir} +mkdir -p "%buildroot/%src_install_dir" +tar -xzf %SOURCE0 --strip-components=1 -C "%buildroot/%src_install_dir" # Fix env-script-interpreter rpmlint error -find %{buildroot}%{src_install_dir} -type f -exec sed -i 's|#!/usr/bin/env bash|#!/bin/bash|' "{}" + -find %{buildroot}%{src_install_dir} -type f -exec sed -i 's|#!/usr/bin/env ruby|#!/usr/bin/ruby|' "{}" + -find %{buildroot}%{src_install_dir} -type f \( -name "*.bzl" -o -name "*.py" \) -exec sed -i 's|#!/usr/bin/env python2.7|#!/usr/bin/python2.7|' "{}" + -find %{buildroot}%{src_install_dir} -type f \( -name "*.bzl" -o -name "*.py" \) -exec sed -i 's|#!/usr/bin/env python|#!/usr/bin/python|' "{}" + +find "%buildroot/%src_install_dir" -type f \ + -exec sed -i 's|#!%_bindir/env bash|#!/bin/bash|' "{}" + \ + -exec sed -i 's|#!%_bindir/env ruby|#!%_bindir/ruby|' "{}" + +find "%buildroot/%src_install_dir -type f "(" -name "*.bzl" -o -name "*.py" ")" \ + -exec sed -i 's|#!%_bindir/env python2.7|#!%_bindir/python2.7|' "{}" + \ + -exec sed -i 's|#!%_bindir/env python|#!%_bindir/python|' "{}" + %post -n %lname -p /sbin/ldconfig %postun -n %lname -p /sbin/ldconfig @@ -149,7 +161,7 @@ find %{buildroot}%{src_install_dir} -type f \( -name "*.bzl" -o -name "*.py" \) %_libdir/*.so %files source -%{src_install_dir} +%src_install_dir %files -n python2-grpcio %python2_sitearch/grpc* diff --git a/v1.21.3.tar.gz b/v1.21.3.tar.gz deleted file mode 100644 index 6c9a8e4..0000000 --- a/v1.21.3.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:50747c8939c535b1059f19534de263eb9b7570b5347390fb24b0bbce8763e9a4 -size 15043356 diff --git a/v1.23.0.tar.gz b/v1.23.0.tar.gz new file mode 100644 index 0000000..621b0d0 --- /dev/null +++ b/v1.23.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f56ced18740895b943418fa29575a65cc2396ccfa3159fa40d318ef5f59471f9 +size 15212436 From 8dd3b950296c17af926e219c40dd66670d228959dc1b66b836d374ca1f801c49 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Thu, 22 Aug 2019 18:39:09 +0000 Subject: [PATCH 2/3] - Disable LTO because it's broken. OBS-URL: https://build.opensuse.org/package/show/devel:tools/grpc?expand=0&rev=45 --- grpc.changes | 5 +++++ grpc.spec | 16 +++++----------- 2 files changed, 10 insertions(+), 11 deletions(-) diff --git a/grpc.changes b/grpc.changes index 35fcfc3..8fcf46d 100644 --- a/grpc.changes +++ b/grpc.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Thu Aug 22 18:28:15 UTC 2019 - Jan Engelhardt + +- Disable LTO because it's broken. + ------------------------------------------------------------------- Sun Aug 18 16:29:43 UTC 2019 - Jan Engelhardt diff --git a/grpc.spec b/grpc.spec index 303d8eb..5d15ca0 100644 --- a/grpc.spec +++ b/grpc.spec @@ -33,14 +33,7 @@ BuildRequires: %{python_module devel} BuildRequires: %{python_module setuptools} BuildRequires: cmake BuildRequires: gcc-c++ -BuildRequires: glibc-debuginfo -BuildRequires: libprotobuf-lite20-debuginfo -BuildRequires: libprotobuf20-debuginfo -BuildRequires: libprotoc20-debuginfo BuildRequires: pkg-config -BuildRequires: protobuf-debugsource -BuildRequires: protobuf-devel-debuginfo -BuildRequires: protobuf-source BuildRequires: python-rpm-macros BuildRequires: zypper BuildRequires: pkgconfig(libcares) @@ -101,18 +94,19 @@ This subpackage contains the python3 bindings. %setup -qn grpc-%rver %build +%define _lto_cflags %nil # protoc is invoked strangely; make it happy with this dir or it will assert() mkdir -p third_party/protobuf/src -make %{?_smp_mflags} STRIP=/bin/true V=1 VERBOSE=1 \ - CFLAGS="%optflags -Wno-error" CXXFLAGS="%optflags -Wno-error" +export CFLAGS="%optflags -Wno-error" +export CXXFLAGS="$CFLAGS" +make %{?_smp_mflags} STRIP=/bin/true V=1 VERBOSE=1 # build python module export GRPC_PYTHON_BUILD_WITH_CYTHON=True export GRPC_PYTHON_BUILD_SYSTEM_OPENSSL=True export GRPC_PYTHON_BUILD_SYSTEM_ZLIB=True export GRPC_PYTHON_BUILD_SYSTEM_CARES=True -export CFLAGS="%optflags" %python_build %install @@ -139,7 +133,7 @@ tar -xzf %SOURCE0 --strip-components=1 -C "%buildroot/%src_install_dir" find "%buildroot/%src_install_dir" -type f \ -exec sed -i 's|#!%_bindir/env bash|#!/bin/bash|' "{}" + \ -exec sed -i 's|#!%_bindir/env ruby|#!%_bindir/ruby|' "{}" + -find "%buildroot/%src_install_dir -type f "(" -name "*.bzl" -o -name "*.py" ")" \ +find "%buildroot/%src_install_dir" -type f "(" -name "*.bzl" -o -name "*.py" ")" \ -exec sed -i 's|#!%_bindir/env python2.7|#!%_bindir/python2.7|' "{}" + \ -exec sed -i 's|#!%_bindir/env python|#!%_bindir/python|' "{}" + From a47f5769b1b2395319c5d3627dafd49f282be161cf603b2c68aa76f3cc00f644 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Thu, 22 Aug 2019 18:39:25 +0000 Subject: [PATCH 3/3] OBS-URL: https://build.opensuse.org/package/show/devel:tools/grpc?expand=0&rev=46 --- grpc.changes | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/grpc.changes b/grpc.changes index 8fcf46d..7b510df 100644 --- a/grpc.changes +++ b/grpc.changes @@ -6,7 +6,7 @@ Thu Aug 22 18:28:15 UTC 2019 - Jan Engelhardt ------------------------------------------------------------------- Sun Aug 18 16:29:43 UTC 2019 - Jan Engelhardt -- Update to new upstream release 1.23 +- Update to new upstream release 1.23 [boo#1144068] * Fixed a bug where POST_RECV_MESSAGE was not being triggered. * Renamed root certificate bundle in gRPC-C++ pod. * Increased lower bound on DNS re-resolution period to 30 seconds.