summaryrefslogtreecommitdiff
path: root/net
diff options
context:
space:
mode:
authorminskim <minskim@pkgsrc.org>2017-10-23 15:48:04 +0000
committerminskim <minskim@pkgsrc.org>2017-10-23 15:48:04 +0000
commit48f9c01fc4cc5445081115bd7586de03c5c6db96 (patch)
treea464eccda3f8321efd70579e5f20e472cd3f855f /net
parent5c2b011358d3b5f930e57641652f4a65d221cb56 (diff)
downloadpkgsrc-48f9c01fc4cc5445081115bd7586de03c5c6db96.tar.gz
net/grpc: Import version 1.6.7
gRPC is a modern, open source remote procedure call (RPC) framework that can run anywhere. It enables client and server applications to communicate transparently, and makes it easier to build connected systems.
Diffstat (limited to 'net')
-rw-r--r--net/grpc/DESCR4
-rw-r--r--net/grpc/Makefile31
-rw-r--r--net/grpc/PLIST167
-rw-r--r--net/grpc/buildlink3.mk13
-rw-r--r--net/grpc/distinfo8
-rw-r--r--net/grpc/patches/patch-CMakeLists.txt32
-rw-r--r--net/grpc/patches/patch-src_core_ext_transport_chttp2_transport_flow__control.c14
7 files changed, 269 insertions, 0 deletions
diff --git a/net/grpc/DESCR b/net/grpc/DESCR
new file mode 100644
index 00000000000..c73ce8e388f
--- /dev/null
+++ b/net/grpc/DESCR
@@ -0,0 +1,4 @@
+gRPC is a modern, open source remote procedure call (RPC) framework
+that can run anywhere. It enables client and server applications to
+communicate transparently, and makes it easier to build connected
+systems.
diff --git a/net/grpc/Makefile b/net/grpc/Makefile
new file mode 100644
index 00000000000..7babecabc99
--- /dev/null
+++ b/net/grpc/Makefile
@@ -0,0 +1,31 @@
+# $NetBSD: Makefile,v 1.1 2017/10/23 15:48:04 minskim Exp $
+
+DISTNAME= grpc-1.6.7
+CATEGORIES= net
+MASTER_SITES= ${MASTER_SITE_GITHUB:=grpc/}
+GITHUB_PROJECT= grpc
+GITHUB_TAG= v${PKGVERSION_NOREV}
+
+MAINTAINER= minskim@NetBSD.org
+HOMEPAGE= https://grpc.io/
+COMMENT= High performance, open-source universal RPC framework
+LICENSE= apache-2.0
+
+USE_CMAKE= yes
+USE_LANGUAGES+= c c++
+
+CMAKE_ARGS+= -DgRPC_BENCHMARK_PROVIDER=package
+CMAKE_ARGS+= -DgRPC_CARES_PROVIDER=package
+CMAKE_ARGS+= -DgRPC_GFLAGS_PROVIDER=package
+CMAKE_ARGS+= -DgRPC_PROTOBUF_PROVIDER=package
+CMAKE_ARGS+= -DgRPC_SSL_PROVIDER=package
+CMAKE_ARGS+= -DgRPC_ZLIB_PROVIDER=package
+
+.include "../../benchmarks/google-benchmark/buildlink3.mk"
+.include "../../devel/gflags/buildlink3.mk"
+BUILDLINK_API_DEPENDS.protobuf+= protobuf>=3.4
+.include "../../devel/protobuf/buildlink3.mk"
+.include "../../devel/zlib/buildlink3.mk"
+.include "../../net/libcares/buildlink3.mk"
+.include "../../security/openssl/buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/net/grpc/PLIST b/net/grpc/PLIST
new file mode 100644
index 00000000000..353fc06d7e7
--- /dev/null
+++ b/net/grpc/PLIST
@@ -0,0 +1,167 @@
+@comment $NetBSD: PLIST,v 1.1 2017/10/23 15:48:04 minskim Exp $
+bin/check_epollexclusive
+bin/gen_hpack_tables
+bin/gen_legal_metadata_characters
+bin/gen_percent_encoding_tables
+bin/grpc_cpp_plugin
+bin/grpc_create_jwt
+bin/grpc_csharp_plugin
+bin/grpc_node_plugin
+bin/grpc_objective_c_plugin
+bin/grpc_php_plugin
+bin/grpc_print_google_default_creds_token
+bin/grpc_python_plugin
+bin/grpc_ruby_plugin
+bin/grpc_verify_jwt
+include/grpc++/alarm.h
+include/grpc++/channel.h
+include/grpc++/client_context.h
+include/grpc++/completion_queue.h
+include/grpc++/create_channel.h
+include/grpc++/create_channel_posix.h
+include/grpc++/ext/health_check_service_server_builder_option.h
+include/grpc++/ext/proto_server_reflection_plugin.h
+include/grpc++/generic/async_generic_service.h
+include/grpc++/generic/generic_stub.h
+include/grpc++/grpc++.h
+include/grpc++/health_check_service_interface.h
+include/grpc++/impl/call.h
+include/grpc++/impl/channel_argument_option.h
+include/grpc++/impl/client_unary_call.h
+include/grpc++/impl/codegen/async_stream.h
+include/grpc++/impl/codegen/async_unary_call.h
+include/grpc++/impl/codegen/call.h
+include/grpc++/impl/codegen/call_hook.h
+include/grpc++/impl/codegen/channel_interface.h
+include/grpc++/impl/codegen/client_context.h
+include/grpc++/impl/codegen/client_unary_call.h
+include/grpc++/impl/codegen/completion_queue.h
+include/grpc++/impl/codegen/completion_queue_tag.h
+include/grpc++/impl/codegen/config.h
+include/grpc++/impl/codegen/config_protobuf.h
+include/grpc++/impl/codegen/core_codegen.h
+include/grpc++/impl/codegen/core_codegen_interface.h
+include/grpc++/impl/codegen/create_auth_context.h
+include/grpc++/impl/codegen/grpc_library.h
+include/grpc++/impl/codegen/metadata_map.h
+include/grpc++/impl/codegen/method_handler_impl.h
+include/grpc++/impl/codegen/proto_utils.h
+include/grpc++/impl/codegen/rpc_method.h
+include/grpc++/impl/codegen/rpc_service_method.h
+include/grpc++/impl/codegen/security/auth_context.h
+include/grpc++/impl/codegen/serialization_traits.h
+include/grpc++/impl/codegen/server_context.h
+include/grpc++/impl/codegen/server_interface.h
+include/grpc++/impl/codegen/service_type.h
+include/grpc++/impl/codegen/slice.h
+include/grpc++/impl/codegen/status.h
+include/grpc++/impl/codegen/status_code_enum.h
+include/grpc++/impl/codegen/string_ref.h
+include/grpc++/impl/codegen/stub_options.h
+include/grpc++/impl/codegen/sync_stream.h
+include/grpc++/impl/codegen/time.h
+include/grpc++/impl/grpc_library.h
+include/grpc++/impl/method_handler_impl.h
+include/grpc++/impl/rpc_method.h
+include/grpc++/impl/rpc_service_method.h
+include/grpc++/impl/serialization_traits.h
+include/grpc++/impl/server_builder_option.h
+include/grpc++/impl/server_builder_plugin.h
+include/grpc++/impl/server_initializer.h
+include/grpc++/impl/service_type.h
+include/grpc++/resource_quota.h
+include/grpc++/security/auth_context.h
+include/grpc++/security/auth_metadata_processor.h
+include/grpc++/security/credentials.h
+include/grpc++/security/server_credentials.h
+include/grpc++/server.h
+include/grpc++/server_builder.h
+include/grpc++/server_context.h
+include/grpc++/server_posix.h
+include/grpc++/support/async_stream.h
+include/grpc++/support/async_unary_call.h
+include/grpc++/support/byte_buffer.h
+include/grpc++/support/channel_arguments.h
+include/grpc++/support/config.h
+include/grpc++/support/error_details.h
+include/grpc++/support/slice.h
+include/grpc++/support/status.h
+include/grpc++/support/status_code_enum.h
+include/grpc++/support/string_ref.h
+include/grpc++/support/stub_options.h
+include/grpc++/support/sync_stream.h
+include/grpc++/support/time.h
+include/grpc/byte_buffer.h
+include/grpc/byte_buffer_reader.h
+include/grpc/census.h
+include/grpc/compression.h
+include/grpc/grpc.h
+include/grpc/grpc_cronet.h
+include/grpc/grpc_posix.h
+include/grpc/grpc_security.h
+include/grpc/grpc_security_constants.h
+include/grpc/impl/codegen/atm.h
+include/grpc/impl/codegen/atm_gcc_atomic.h
+include/grpc/impl/codegen/atm_gcc_sync.h
+include/grpc/impl/codegen/atm_windows.h
+include/grpc/impl/codegen/byte_buffer_reader.h
+include/grpc/impl/codegen/compression_types.h
+include/grpc/impl/codegen/connectivity_state.h
+include/grpc/impl/codegen/exec_ctx_fwd.h
+include/grpc/impl/codegen/gpr_slice.h
+include/grpc/impl/codegen/gpr_types.h
+include/grpc/impl/codegen/grpc_types.h
+include/grpc/impl/codegen/port_platform.h
+include/grpc/impl/codegen/propagation_bits.h
+include/grpc/impl/codegen/slice.h
+include/grpc/impl/codegen/status.h
+include/grpc/impl/codegen/sync.h
+include/grpc/impl/codegen/sync_generic.h
+include/grpc/impl/codegen/sync_posix.h
+include/grpc/impl/codegen/sync_windows.h
+include/grpc/load_reporting.h
+include/grpc/slice.h
+include/grpc/slice_buffer.h
+include/grpc/status.h
+include/grpc/support/alloc.h
+include/grpc/support/atm.h
+include/grpc/support/atm_gcc_atomic.h
+include/grpc/support/atm_gcc_sync.h
+include/grpc/support/atm_windows.h
+include/grpc/support/avl.h
+include/grpc/support/cmdline.h
+include/grpc/support/cpu.h
+include/grpc/support/histogram.h
+include/grpc/support/host_port.h
+include/grpc/support/log.h
+include/grpc/support/log_windows.h
+include/grpc/support/port_platform.h
+include/grpc/support/string_util.h
+include/grpc/support/subprocess.h
+include/grpc/support/sync.h
+include/grpc/support/sync_generic.h
+include/grpc/support/sync_posix.h
+include/grpc/support/sync_windows.h
+include/grpc/support/thd.h
+include/grpc/support/time.h
+include/grpc/support/tls.h
+include/grpc/support/tls_gcc.h
+include/grpc/support/tls_msvc.h
+include/grpc/support/tls_pthread.h
+include/grpc/support/useful.h
+include/grpc/support/workaround_list.h
+lib/cmake/grpc/gRPCConfig.cmake
+lib/cmake/grpc/gRPCConfigVersion.cmake
+lib/cmake/grpc/gRPCTargets-noconfig.cmake
+lib/cmake/grpc/gRPCTargets.cmake
+lib/libgpr.a
+lib/libgrpc++.a
+lib/libgrpc++_cronet.a
+lib/libgrpc++_error_details.a
+lib/libgrpc++_reflection.a
+lib/libgrpc++_unsecure.a
+lib/libgrpc.a
+lib/libgrpc_cronet.a
+lib/libgrpc_csharp_ext.so
+lib/libgrpc_plugin_support.a
+lib/libgrpc_unsecure.a
diff --git a/net/grpc/buildlink3.mk b/net/grpc/buildlink3.mk
new file mode 100644
index 00000000000..9c7862abb00
--- /dev/null
+++ b/net/grpc/buildlink3.mk
@@ -0,0 +1,13 @@
+# $NetBSD: buildlink3.mk,v 1.1 2017/10/23 15:48:04 minskim Exp $
+
+BUILDLINK_TREE+= grpc
+
+.if !defined(GRPC_BUILDLINK3_MK)
+GRPC_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.grpc+= grpc>=1.6.7
+BUILDLINK_PKGSRCDIR.grpc?= ../../net/grpc
+
+.endif # GRPC_BUILDLINK3_MK
+
+BUILDLINK_TREE+= -grpc
diff --git a/net/grpc/distinfo b/net/grpc/distinfo
new file mode 100644
index 00000000000..e2899c42d44
--- /dev/null
+++ b/net/grpc/distinfo
@@ -0,0 +1,8 @@
+$NetBSD: distinfo,v 1.1 2017/10/23 15:48:04 minskim Exp $
+
+SHA1 (grpc-1.6.7.tar.gz) = 0a2677d7f05b5fe3bcf6820f89237fad615eb301
+RMD160 (grpc-1.6.7.tar.gz) = b6856325273d210a36619de6e80c8f11753a73cc
+SHA512 (grpc-1.6.7.tar.gz) = 7c4c3e21cb24cdd18022c75d94b78ea099fe3f97af39bf26672e0240945d109f122e79a8476f82b086ec22747569b69826a850ad2c0e8e37df3b3f4a0b67e7e5
+Size (grpc-1.6.7.tar.gz) = 4835956 bytes
+SHA1 (patch-CMakeLists.txt) = e560a1f4d70ba520b5bf454da97946bf8b803360
+SHA1 (patch-src_core_ext_transport_chttp2_transport_flow__control.c) = 81d7c5e3065c3ea9d505d654a9c5a723793d85a5
diff --git a/net/grpc/patches/patch-CMakeLists.txt b/net/grpc/patches/patch-CMakeLists.txt
new file mode 100644
index 00000000000..7d70ccdf6ef
--- /dev/null
+++ b/net/grpc/patches/patch-CMakeLists.txt
@@ -0,0 +1,32 @@
+$NetBSD: patch-CMakeLists.txt,v 1.1 2017/10/23 15:48:04 minskim Exp $
+
+Make this build with pkgsrc google-benchmark and libcares.
+
+--- CMakeLists.txt.orig 2017-10-19 02:10:38.000000000 +0000
++++ CMakeLists.txt
+@@ -159,6 +159,8 @@ elseif("${gRPC_CARES_PROVIDER}" STREQUAL
+ find_package(c-ares CONFIG)
+ if(TARGET c-ares::cares)
+ set(_gRPC_CARES_LIBRARIES c-ares::cares)
++ else()
++ set(_gRPC_CARES_LIBRARIES cares)
+ endif()
+ set(_gRPC_FIND_CARES "if(NOT c-ares_FOUND)\n find_package(c-ares CONFIG)\nendif()")
+ endif()
+@@ -282,7 +284,6 @@ if("${gRPC_BENCHMARK_PROVIDER}" STREQUAL
+ message(WARNING "gRPC_BENCHMARK_PROVIDER is \"module\" but BENCHMARK_ROOT_DIR is wrong")
+ endif()
+ elseif("${gRPC_BENCHMARK_PROVIDER}" STREQUAL "package")
+- find_package(benchmark)
+ if(TARGET benchmark::benchmark)
+ set(_gRPC_BENCHMARK_LIBRARIES benchmark::benchmark)
+ endif()
+@@ -339,7 +340,7 @@ function(protobuf_generate_grpc_cpp)
+ "${_gRPC_PROTO_GENS_DIR}/${RELFIL_WE}_mock.grpc.pb.h"
+ "${_gRPC_PROTO_GENS_DIR}/${RELFIL_WE}.pb.cc"
+ "${_gRPC_PROTO_GENS_DIR}/${RELFIL_WE}.pb.h"
+- COMMAND $<TARGET_FILE:${_gRPC_PROTOBUF_PROTOC}>
++ COMMAND ${_gRPC_PROTOBUF_PROTOC}
+ ARGS --grpc_out=generate_mock_code=true:${_gRPC_PROTO_GENS_DIR}
+ --cpp_out=${_gRPC_PROTO_GENS_DIR}
+ --plugin=protoc-gen-grpc=$<TARGET_FILE:grpc_cpp_plugin>
diff --git a/net/grpc/patches/patch-src_core_ext_transport_chttp2_transport_flow__control.c b/net/grpc/patches/patch-src_core_ext_transport_chttp2_transport_flow__control.c
new file mode 100644
index 00000000000..74ae5cb4969
--- /dev/null
+++ b/net/grpc/patches/patch-src_core_ext_transport_chttp2_transport_flow__control.c
@@ -0,0 +1,14 @@
+$NetBSD: patch-src_core_ext_transport_chttp2_transport_flow__control.c,v 1.1 2017/10/23 15:48:04 minskim Exp $
+
+Include limits.h to use INT_MAX.
+
+--- src/core/ext/transport/chttp2/transport/flow_control.c.orig 2017-10-19 02:10:38.000000000 +0000
++++ src/core/ext/transport/chttp2/transport/flow_control.c
+@@ -18,6 +18,7 @@
+
+ #include "src/core/ext/transport/chttp2/transport/internal.h"
+
++#include <limits.h>
+ #include <math.h>
+ #include <string.h>
+