summaryrefslogtreecommitdiff
path: root/net
diff options
context:
space:
mode:
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>
+