diff --git a/grpc-build.diff b/grpc-build.diff deleted file mode 100644 index eae9fa3..0000000 --- a/grpc-build.diff +++ /dev/null @@ -1,25 +0,0 @@ -From: Jan Engelhardt -Date: 2017-12-12 00:32:39.501708666 +0100 - -openSUSE's c-ares has no c-aresConfig.cmake or c-ares-config.cmake. -Work around it. ---- - cmake/cares.cmake | 7 +------ - 1 file changed, 1 insertion(+), 6 deletions(-) - -Index: grpc-1.10.0/cmake/cares.cmake -=================================================================== ---- grpc-1.10.0.orig/cmake/cares.cmake -+++ grpc-1.10.0/cmake/cares.cmake -@@ -31,10 +31,5 @@ if("${gRPC_CARES_PROVIDER}" STREQUAL "mo - endif() - elseif("${gRPC_CARES_PROVIDER}" STREQUAL "package") - # Use "CONFIG" as there is no built-in cmake module for c-ares. -- find_package(c-ares REQUIRED CONFIG) -- if(TARGET c-ares::cares) -- set(_gRPC_CARES_LIBRARIES c-ares::cares) -- set(_gRPC_CARES_INCLUDE_DIR ${c-ares_INCLUDE_DIR}) -- endif() -- set(_gRPC_FIND_CARES "if(NOT c-ares_FOUND)\n find_package(c-ares CONFIG)\nendif()") -+ set(_gRPC_CARES_LIBRARIES -lcares) - endif() diff --git a/grpc-versioning.diff b/grpc-versioning.diff deleted file mode 100644 index e0108da..0000000 --- a/grpc-versioning.diff +++ /dev/null @@ -1,110 +0,0 @@ -From: Jan Engelhardt -Date: 2017-04-19 10:07:43.563879307 +0200 - -Unversioned libraries are an ABI nightmare, so work around that in short order. - ---- - CMakeLists.txt | 13 +++++++++++++ - 1 file changed, 13 insertions(+) - -Index: grpc-1.10.0/CMakeLists.txt -=================================================================== ---- grpc-1.10.0.orig/CMakeLists.txt -+++ grpc-1.10.0/CMakeLists.txt -@@ -29,6 +29,8 @@ set(PACKAGE_STRING "${PACKAGE_NAME} $ - set(PACKAGE_TARNAME "${PACKAGE_NAME}-${PACKAGE_VERSION}") - set(PACKAGE_BUGREPORT "https://github.com/grpc/grpc/issues/") - project(${PACKAGE_NAME} C CXX) -+# from Makefile: -+set(LIBVER 6) - - set(gRPC_INSTALL_BINDIR "bin" CACHE STRING "Installation directory for executables") - set(gRPC_INSTALL_LIBDIR "lib" CACHE STRING "Installation directory for libraries") -@@ -775,6 +777,7 @@ target_link_libraries(gpr_test_util - ${_gRPC_ALLTARGETS_LIBRARIES} - gpr - ) -+set_target_properties(gpr PROPERTIES VERSION ${LIBVER}) - - - endif (gRPC_BUILD_TESTS) -@@ -1032,6 +1035,7 @@ add_library(grpc - src/core/ext/filters/workarounds/workaround_utils.cc - src/core/plugin_registry/grpc_plugin_registry.cc - ) -+set_target_properties(grpc PROPERTIES VERSION ${LIBVER}) - - if(WIN32 AND MSVC) - set_target_properties(grpc PROPERTIES COMPILE_PDB_NAME "grpc" -@@ -1343,6 +1347,7 @@ add_library(grpc_cronet - src/core/ext/filters/load_reporting/server_load_reporting_plugin.cc - src/core/plugin_registry/grpc_cronet_plugin_registry.cc - ) -+set_target_properties(grpc_cronet PROPERTIES VERSION ${LIBVER}) - - if(WIN32 AND MSVC) - set_target_properties(grpc_cronet PROPERTIES COMPILE_PDB_NAME "grpc_cronet" -@@ -2220,6 +2225,7 @@ add_library(grpc_unsecure - src/core/ext/filters/workarounds/workaround_utils.cc - src/core/plugin_registry/grpc_unsecure_plugin_registry.cc - ) -+set_target_properties(grpc_unsecure PROPERTIES VERSION ${LIBVER}) - - if(WIN32 AND MSVC) - set_target_properties(grpc_unsecure PROPERTIES COMPILE_PDB_NAME "grpc_unsecure" -@@ -2429,6 +2435,7 @@ add_library(grpc++ - src/cpp/util/time_cc.cc - src/cpp/codegen/codegen_init.cc - ) -+set_target_properties(grpc++ PROPERTIES VERSION ${LIBVER}) - - if(WIN32 AND MSVC) - set_target_properties(grpc++ PROPERTIES COMPILE_PDB_NAME "grpc++" -@@ -2969,6 +2976,7 @@ add_library(grpc++_cronet - third_party/nanopb/pb_decode.c - third_party/nanopb/pb_encode.c - ) -+set_target_properties(grpc++_cronet PROPERTIES VERSION ${LIBVER}) - - if(WIN32 AND MSVC) - set_target_properties(grpc++_cronet PROPERTIES COMPILE_PDB_NAME "grpc++_cronet" -@@ -3231,6 +3239,7 @@ add_library(grpc++_error_details - ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/status/status.grpc.pb.h - src/cpp/util/error_details.cc - ) -+set_target_properties(grpc++_error_details PROPERTIES VERSION ${LIBVER}) - - if(WIN32 AND MSVC) - set_target_properties(grpc++_error_details PROPERTIES COMPILE_PDB_NAME "grpc++_error_details" -@@ -3355,6 +3364,7 @@ add_library(grpc++_reflection - ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1alpha/reflection.pb.h - ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/reflection/v1alpha/reflection.grpc.pb.h - ) -+set_target_properties(grpc++_reflection PROPERTIES VERSION ${LIBVER}) - - if(WIN32 AND MSVC) - set_target_properties(grpc++_reflection PROPERTIES COMPILE_PDB_NAME "grpc++_reflection" -@@ -3479,6 +3489,7 @@ add_library(grpc++_test_util - test/cpp/util/test_credentials_provider.cc - src/cpp/codegen/codegen_init.cc - ) -+set_target_properties(grpc++_unsecure PROPERTIES VERSION ${LIBVER}) - - if(WIN32 AND MSVC) - set_target_properties(grpc++_test_util PROPERTIES COMPILE_PDB_NAME "grpc++_test_util" -@@ -4206,6 +4217,7 @@ add_library(grpc_plugin_support - src/compiler/python_generator.cc - src/compiler/ruby_generator.cc - ) -+set_target_properties(grpc_plugin_support PROPERTIES VERSION ${LIBVER}) - - if(WIN32 AND MSVC) - set_target_properties(grpc_plugin_support PROPERTIES COMPILE_PDB_NAME "grpc_plugin_support" -@@ -4700,6 +4712,7 @@ endif (gRPC_BUILD_TESTS) - add_library(grpc_csharp_ext SHARED - src/csharp/ext/grpc_csharp_ext.c - ) -+set_target_properties(grpc_csharp_ext PROPERTIES VERSION ${LIBVER}) - - if(WIN32 AND MSVC) - set_target_properties(grpc_csharp_ext PROPERTIES COMPILE_PDB_NAME "grpc_csharp_ext" diff --git a/grpc.changes b/grpc.changes index 547bca2..d613f50 100644 --- a/grpc.changes +++ b/grpc.changes @@ -1,3 +1,99 @@ +------------------------------------------------------------------- +Fri May 18 14:55:27 UTC 2018 - jengelh@inai.de + +- Switch to plain makefiles since they generate more shared libs. +- Remove grpc-build.diff, grpc-versioning.diff. + +------------------------------------------------------------------- +Fri May 18 13:26:45 UTC 2018 - tbechtold@suse.com + +- update to 1.12.0: + Core: + * Update protobuf submodule to 3.5.2 (#15114) + * Make GrpcBuffer{Reader|Writer} Public (#14541) + * Compile Out Tracers Option (#15108) + * Fix bug in an address sorting comparison (#15208) + * Fix: Check retry timer before starting resolving (#15156) + * Fix c-ares resolution with default authority (#15073) + * Fix c-ares resolver crash when DNS server unreachable (#15134) + * Performance: Avoid low severity log message construction (#14945) + * Peformance: Enable SIO_LOOPBACK_FAST_PATH on Windows (#14905) + C#: + * Add RpcException.StatusCode property (#15140) + * Improvements to C# build instructions (#15178) + Python: + * Eliminate grpcio package dependency on protobuf package (#15034). + Please pay extra attention if you are using gRPC with Protocol Buffers and + your deployment scripts do not explicitly list the correct dependencies + and used to rely on the transitive Python package dependency from grpcio to protobuf. + * A new grpc.Channel.close method is introduced and correct use of gRPC + Python now requires that channels be closed after use. No existing code + should observably break when upgrading to 1.12 but code that creates + channels but does not close them will not be supported in 1.13 and later. + Core: + * Fix: Check retry timer before starting resolving (#15156) + * Fix c-ares resolution with default authority (#15073) + * Fix c-ares resolver crash when DNS server unreachable (#15134) + * Add core underpinnings for TLS session ticket support (#14483) + * Experimental support for configurable retries (use at your own risk) (#10684) + * Fail calls with wait_for_ready=false on transient resolver failure (#14733) + * Fix a call stack ref flake (#14681) + * c-ares DNS resolver sorts resolved addresses per RFC 6724 (#13290) + * Use socklen_t instead of size_t for address length (fixes use case for some + big endian systems) (#14464) + * Initial part of channel tracing implementation (#13883, #14746, #14751) + * Avoid crashes on environments with hot-plugged CPUs (#14712) + * When building from source, Makefile now checks for minimum protobuf + version 3.5.0 instead 3.0.0 (#14821) + * gRPC Core public header no longer includes inttypes.h (#14676) + * CMake improvements: + * Add well-commented examples and continuous test for various ways of + building gRPC as a dependency (via ExternalProject_Add in #14822, + via add_subdirectory in #14864) + * Remove internal tools from binaries installed by cmake install (#14850) + * Simplify Android build example (#14885) + * Enable SO_REUSEPORT in IPv6-only environments as well (#14748) + C#: + * Improvements in experimental support for Unity - added useful resources + and improved support for loading grpc_csharp_ext on Unity (#14576, #14605) + * Further prevent name collisions by using only fully qualified type + names in C# code generator (#14524) + * Fix C# connectivity watcher shutdown race (#14776) + Objective-C: + * Support for Keep-Alive (#14781) + * Experimental C++ podspec now supports Apple framework (#14480) + * Allow discarding generated implementation (leaving only protocol) + with macro (#14490) + * Better handling of network error (#14554) + PHP: + * Add missing -O2 compilation flag for pecl (#14768) + * Update the reserved variable list to check in PHP code generator to + match protobuf 3.5.0 (#13580) + Python: + * Progress towards full Beta API elimination (Beta API is and has been + unsupported and will go away completely): + Remove _face_interface_test tests for the Beta API (#14702) + * Remove Python background poller thread (#14448) + Note there is a small change in behavior. Before, clients would + detect disconnected channels immediately. + * Initial gevent compatibility (EXPERIMENTAL) (#14561) + * Release the GIL when calling grpc_call_start_batch to improve + performance under multithreaded scenarios. (#14801) + Ruby: + * Correct handling of underscores in package names by Protocol Buffers code + generator for Ruby (#13634) + * Source code and locally compiled (not cross-compiled) shared libraries + (grpc_c.so files) are removed from the linux binary packages. This includes + the packages targeting the x86_64-linux and x86-linux platforms (#14634) + * Bug fix for a use-after-free related to access to a garbage collected + object (#14809) + * Get rid of the -Wno-format argument to compilation of the ruby extension + * Documentation improvements (#14535) + * Don’t raise GRPC::Core::CallErrors for failed reads or writes of bidi + streaming calls (#14922) + * Fix a race condition in an interrupt handler that could cause an + assertion failure (#14953) + ------------------------------------------------------------------- Wed Mar 28 14:30:53 UTC 2018 - jengelh@inai.de diff --git a/grpc.spec b/grpc.spec index d95c181..a4d2800 100644 --- a/grpc.spec +++ b/grpc.spec @@ -16,17 +16,15 @@ # -%define lname libgrpc6 +%define lname libgrpc6 Name: grpc -Version: 1.10.0 +Version: 1.12.0 Release: 0 Summary: HTTP/2-based Remote Procedure Call implementation License: Apache-2.0 Group: Development/Tools/Building Url: http://grpc.io/ Source: https://github.com/grpc/grpc/archive/v%version.tar.gz -Patch1: grpc-build.diff -Patch2: grpc-versioning.diff BuildRequires: cmake BuildRequires: gcc-c++ BuildRequires: pkg-config @@ -61,43 +59,31 @@ applications that want to make use of the gRPC reference implementation. %prep %setup -q -%patch -P 1 -P 2 -p1 -%build -make LIBDIR=x CONFIG=opt \ - x/opt/pkgconfig/grpc.pc x/opt/pkgconfig/grpc_unsecure.pc \ - x/opt/pkgconfig/grpc++.pc x/opt/pkgconfig/grpc++_unsecure.pc -%cmake \ - -DgRPC_PROTOBUF_PROVIDER=package \ - -DgRPC_SSL_PROVIDER=package \ - -DgRPC_ZLIB_PROVIDER=package \ - -DgRPC_CARES_PROVIDER=package \ - -DgRPC_INSTALL_BINDIR="%_bindir" \ - -DgRPC_INSTALL_INCLUDEDIR="%_includedir" \ - -DgRPC_INSTALL_LIBDIR="%_libdir" - -#[ 36%] Running gRPC C++ protocol buffer compiler on src/proto/grpc/reflection/v1alpha/reflection.proto -#cd /home/abuild/rpmbuild/BUILD/grpc-1.2.3 && /usr/bin/protoc --grpc_out=/home/abuild/rpmbuild/BUILD/grpc-1.2.3/build/gens --cpp_out=/home/abuild/rpmbuild/BUILD/grpc-1.2.3/build/gens --plugin=protoc-gen-grpc=/home/abuild/rpmbuild/BUILD/grpc-1.2.3/build/grpc_cpp_plugin -I . src/proto/grpc/reflection/v1alpha/reflection.proto -#/home/abuild/rpmbuild/BUILD/grpc-1.2.3/build/grpc_cpp_plugin: error while loading shared libraries: libgrpc_plugin_support.so: cannot open shared object file: No such file or directory -#--grpc_out: protoc-gen-grpc: Plugin failed with status code 127. -export LD_LIBRARY_PATH="$PWD" -%make_jobs +%build +make %{?_smp_mflags} STRIP=/bin/true V=1 VERBOSE=1 CFLAGS="%optflags" CXXFLAGS="%optflags" %install b="%buildroot" -mkdir -p "$b/%_libdir/pkgconfig" -cp x/opt/pkgconfig/*.pc "$b/%_libdir/pkgconfig/" -%cmake_install -#for i in "$b/%_libdir"/libg*-%version.so; do -# ln -s "${i##*/}" "${i%%-%version.so}.so" -#done +%make_install prefix="$b/%_prefix" STRIP=/bin/true V=1 VERBOSE=1 +find "$b/%_includedir" -type f -exec chmod a-x {} + +pushd "$b/usr" +rm -fv lib/*.a share/grpc/*.pem +perl -i -pe 's{^prefix=.*}{prefix=%_prefix}' lib/pkgconfig/*.pc +perl -i -pe 's{^libdir=.*}{libdir=%_libdir}' lib/pkgconfig/*.pc +if test ! -d lib64 && test "%_lib" = lib64; then + mv lib lib64 +fi +popd %post -n %lname -p /sbin/ldconfig %postun -n %lname -p /sbin/ldconfig %files -n %lname %defattr(-,root,root) -%_libdir/libg*.so.6 +%_libdir/libaddress_sorting.so.* +%_libdir/libgpr*.so.* +%_libdir/libgrpc*.so.* %files devel %defattr(-,root,root) @@ -105,17 +91,6 @@ cp x/opt/pkgconfig/*.pc "$b/%_libdir/pkgconfig/" %_bindir/* %_includedir/* %_libdir/pkgconfig/*.pc -%_libdir/libgpr.so -%_libdir/libgrpc++.so -%_libdir/libgrpc++_cronet.so -%_libdir/libgrpc++_error_details.so -%_libdir/libgrpc++_reflection.so -%_libdir/libgrpc++_unsecure.so -%_libdir/libgrpc.so -%_libdir/libgrpc_cronet.so -%_libdir/libgrpc_csharp_ext.so -%_libdir/libgrpc_plugin_support.so -%_libdir/libgrpc_unsecure.so -/usr/lib/cmake +%_libdir/*.so %changelog diff --git a/v1.10.0.tar.gz b/v1.10.0.tar.gz deleted file mode 100644 index 89c1a59..0000000 --- a/v1.10.0.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:39a73de6fa2a03bdb9c43c89a4283e09880833b3c1976ef3ce3edf45c8cacf72 -size 13160605 diff --git a/v1.12.0.tar.gz b/v1.12.0.tar.gz new file mode 100644 index 0000000..84b310e --- /dev/null +++ b/v1.12.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb9698f23aeec2c3832601fa3f804e4d9dc28eca3cc560ef466c9ade1ec951db +size 13692310