diff --git a/.travis.yml b/.travis.yml index 7d8634506c344d23c8c64a6a3e0e7f4dcc64477d..f1839ac174ae552179a3bf3cc20f992de56c1c1f 100644 --- a/.travis.yml +++ b/.travis.yml @@ -2,13 +2,19 @@ language: cpp before_install: - sudo add-apt-repository ppa:yjwong/gflags -y - sudo add-apt-repository ppa:h-rayflood/llvm -y + - sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF + - echo "deb http://download.mono-project.com/repo/debian wheezy main" | sudo tee /etc/apt/sources.list.d/mono-xamarin.list + - echo "deb http://download.mono-project.com/repo/debian wheezy-libtiff-compat main" | sudo tee -a /etc/apt/sources.list.d/mono-xamarin.list - sudo apt-get update -qq - sudo apt-get install -qq libgtest-dev libgflags-dev python-virtualenv clang-3.5 - sudo pip install cpp-coveralls mako simplejson + - sudo apt-get install -qq mono-devel nunit + - wget www.nuget.org/NuGet.exe -O nuget.exe env: global: - RUBY_VERSION=2.1 - COVERALLS_PARALLEL=true + - NUGET="mono nuget.exe" matrix: - CONFIG=opt TEST=sanity - CONFIG=dbg TEST=c @@ -18,6 +24,7 @@ env: - CONFIG=opt TEST=node - CONFIG=opt TEST=ruby - CONFIG=opt TEST=python + - CONFIG=opt TEST=csharp - CONFIG=gcov TEST=c - CONFIG=gcov TEST=c++ - USE_GCC=4.4 CONFIG=opt TEST=build diff --git a/BUILD b/BUILD index 79070f1c1ef8bc161f8c1ca37112bb80a30d25d5..e862898eaa95c61f31e234c675f2a9ede09979f6 100644 --- a/BUILD +++ b/BUILD @@ -579,7 +579,6 @@ cc_library( "src/cpp/client/channel.h", "src/cpp/proto/proto_utils.h", "src/cpp/server/thread_pool.h", - "src/cpp/util/time.h", "src/cpp/client/secure_credentials.cc", "src/cpp/server/secure_server_credentials.cc", "src/cpp/client/channel.cc", @@ -641,6 +640,7 @@ cc_library( "include/grpc++/status_code_enum.h", "include/grpc++/stream.h", "include/grpc++/thread_pool_interface.h", + "include/grpc++/time.h", ], includes = [ "include", @@ -660,7 +660,6 @@ cc_library( "src/cpp/client/channel.h", "src/cpp/proto/proto_utils.h", "src/cpp/server/thread_pool.h", - "src/cpp/util/time.h", "src/cpp/client/channel.cc", "src/cpp/client/channel_arguments.cc", "src/cpp/client/client_context.cc", @@ -720,6 +719,7 @@ cc_library( "include/grpc++/status_code_enum.h", "include/grpc++/stream.h", "include/grpc++/thread_pool_interface.h", + "include/grpc++/time.h", ], includes = [ "include", diff --git a/Makefile b/Makefile index 4d18c4ad18350943153c8376f6f62f40908a7197..2def6e2413be6194259904ab671b1602aed5bada 100644 --- a/Makefile +++ b/Makefile @@ -3101,42 +3101,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBGPR_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/src/core/support/alloc.o: -$(OBJDIR)/$(CONFIG)/src/core/support/cancellable.o: -$(OBJDIR)/$(CONFIG)/src/core/support/cmdline.o: -$(OBJDIR)/$(CONFIG)/src/core/support/cpu_iphone.o: -$(OBJDIR)/$(CONFIG)/src/core/support/cpu_linux.o: -$(OBJDIR)/$(CONFIG)/src/core/support/cpu_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/support/cpu_windows.o: -$(OBJDIR)/$(CONFIG)/src/core/support/env_linux.o: -$(OBJDIR)/$(CONFIG)/src/core/support/env_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/support/env_win32.o: -$(OBJDIR)/$(CONFIG)/src/core/support/file.o: -$(OBJDIR)/$(CONFIG)/src/core/support/file_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/support/file_win32.o: -$(OBJDIR)/$(CONFIG)/src/core/support/histogram.o: -$(OBJDIR)/$(CONFIG)/src/core/support/host_port.o: -$(OBJDIR)/$(CONFIG)/src/core/support/log.o: -$(OBJDIR)/$(CONFIG)/src/core/support/log_android.o: -$(OBJDIR)/$(CONFIG)/src/core/support/log_linux.o: -$(OBJDIR)/$(CONFIG)/src/core/support/log_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/support/log_win32.o: -$(OBJDIR)/$(CONFIG)/src/core/support/murmur_hash.o: -$(OBJDIR)/$(CONFIG)/src/core/support/slice.o: -$(OBJDIR)/$(CONFIG)/src/core/support/slice_buffer.o: -$(OBJDIR)/$(CONFIG)/src/core/support/string.o: -$(OBJDIR)/$(CONFIG)/src/core/support/string_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/support/string_win32.o: -$(OBJDIR)/$(CONFIG)/src/core/support/sync.o: -$(OBJDIR)/$(CONFIG)/src/core/support/sync_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/support/sync_win32.o: -$(OBJDIR)/$(CONFIG)/src/core/support/thd.o: -$(OBJDIR)/$(CONFIG)/src/core/support/thd_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/support/thd_win32.o: -$(OBJDIR)/$(CONFIG)/src/core/support/time.o: -$(OBJDIR)/$(CONFIG)/src/core/support/time_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/support/time_win32.o: - LIBGPR_TEST_UTIL_SRC = \ test/core/util/test_config.c \ @@ -3160,8 +3124,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBGPR_TEST_UTIL_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/util/test_config.o: - LIBGRPC_SRC = \ src/core/httpcli/format_request.c \ @@ -3351,124 +3313,6 @@ ifneq ($(NO_DEPS),true) endif endif -$(OBJDIR)/$(CONFIG)/src/core/httpcli/format_request.o: -$(OBJDIR)/$(CONFIG)/src/core/httpcli/httpcli.o: -$(OBJDIR)/$(CONFIG)/src/core/httpcli/httpcli_security_connector.o: -$(OBJDIR)/$(CONFIG)/src/core/httpcli/parser.o: -$(OBJDIR)/$(CONFIG)/src/core/security/auth.o: -$(OBJDIR)/$(CONFIG)/src/core/security/base64.o: -$(OBJDIR)/$(CONFIG)/src/core/security/credentials.o: -$(OBJDIR)/$(CONFIG)/src/core/security/credentials_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/security/credentials_win32.o: -$(OBJDIR)/$(CONFIG)/src/core/security/google_default_credentials.o: -$(OBJDIR)/$(CONFIG)/src/core/security/json_token.o: -$(OBJDIR)/$(CONFIG)/src/core/security/secure_endpoint.o: -$(OBJDIR)/$(CONFIG)/src/core/security/secure_transport_setup.o: -$(OBJDIR)/$(CONFIG)/src/core/security/security_connector.o: -$(OBJDIR)/$(CONFIG)/src/core/security/server_secure_chttp2.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/init_secure.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/secure_channel_create.o: -$(OBJDIR)/$(CONFIG)/src/core/tsi/fake_transport_security.o: -$(OBJDIR)/$(CONFIG)/src/core/tsi/ssl_transport_security.o: -$(OBJDIR)/$(CONFIG)/src/core/tsi/transport_security.o: -$(OBJDIR)/$(CONFIG)/src/core/channel/call_op_string.o: -$(OBJDIR)/$(CONFIG)/src/core/channel/census_filter.o: -$(OBJDIR)/$(CONFIG)/src/core/channel/channel_args.o: -$(OBJDIR)/$(CONFIG)/src/core/channel/channel_stack.o: -$(OBJDIR)/$(CONFIG)/src/core/channel/child_channel.o: -$(OBJDIR)/$(CONFIG)/src/core/channel/client_channel.o: -$(OBJDIR)/$(CONFIG)/src/core/channel/client_setup.o: -$(OBJDIR)/$(CONFIG)/src/core/channel/connected_channel.o: -$(OBJDIR)/$(CONFIG)/src/core/channel/http_client_filter.o: -$(OBJDIR)/$(CONFIG)/src/core/channel/http_filter.o: -$(OBJDIR)/$(CONFIG)/src/core/channel/http_server_filter.o: -$(OBJDIR)/$(CONFIG)/src/core/channel/noop_filter.o: -$(OBJDIR)/$(CONFIG)/src/core/compression/algorithm.o: -$(OBJDIR)/$(CONFIG)/src/core/compression/message_compress.o: -$(OBJDIR)/$(CONFIG)/src/core/debug/trace.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/alarm.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/alarm_heap.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/endpoint.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/endpoint_pair_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/endpoint_pair_windows.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/fd_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/iocp_windows.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/iomgr.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/iomgr_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/iomgr_windows.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/pollset_kick.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/pollset_multipoller_with_epoll.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/pollset_multipoller_with_poll_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/pollset_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/pollset_windows.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/resolve_address_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/resolve_address_windows.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/sockaddr_utils.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/socket_utils_common_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/socket_utils_linux.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/socket_utils_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/socket_windows.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/tcp_client_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/tcp_client_windows.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/tcp_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/tcp_server_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/tcp_server_windows.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/tcp_windows.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/time_averaged_stats.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/wakeup_fd_eventfd.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/wakeup_fd_nospecial.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/wakeup_fd_pipe.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/wakeup_fd_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/json/json.o: -$(OBJDIR)/$(CONFIG)/src/core/json/json_reader.o: -$(OBJDIR)/$(CONFIG)/src/core/json/json_string.o: -$(OBJDIR)/$(CONFIG)/src/core/json/json_writer.o: -$(OBJDIR)/$(CONFIG)/src/core/profiling/timers.o: -$(OBJDIR)/$(CONFIG)/src/core/statistics/census_init.o: -$(OBJDIR)/$(CONFIG)/src/core/statistics/census_log.o: -$(OBJDIR)/$(CONFIG)/src/core/statistics/census_rpc_stats.o: -$(OBJDIR)/$(CONFIG)/src/core/statistics/census_tracing.o: -$(OBJDIR)/$(CONFIG)/src/core/statistics/hash_table.o: -$(OBJDIR)/$(CONFIG)/src/core/statistics/window_stats.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/byte_buffer.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/byte_buffer_queue.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/byte_buffer_reader.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/call.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/call_details.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/call_log_batch.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/channel.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/channel_create.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/client.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/completion_queue.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/event_string.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/init.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/lame_client.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/metadata_array.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/server.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/server_chttp2.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/server_create.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/surface_trace.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/alpn.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/bin_encoder.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/frame_data.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/frame_goaway.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/frame_ping.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/frame_rst_stream.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/frame_settings.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/frame_window_update.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/hpack_parser.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/hpack_table.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/huffsyms.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/status_conversion.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/stream_encoder.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/stream_map.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/timeout_encoding.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/varint.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2_transport.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/metadata.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/stream_op.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/transport.o: - LIBGRPC_TEST_UTIL_SRC = \ test/core/end2end/data/server1_cert.c \ @@ -3517,18 +3361,6 @@ ifneq ($(NO_DEPS),true) endif endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/data/server1_cert.o: -$(OBJDIR)/$(CONFIG)/test/core/end2end/data/server1_key.o: -$(OBJDIR)/$(CONFIG)/test/core/end2end/data/test_root_cert.o: -$(OBJDIR)/$(CONFIG)/test/core/end2end/cq_verifier.o: -$(OBJDIR)/$(CONFIG)/test/core/iomgr/endpoint_tests.o: -$(OBJDIR)/$(CONFIG)/test/core/statistics/census_log_tests.o: -$(OBJDIR)/$(CONFIG)/test/core/util/grpc_profiler.o: -$(OBJDIR)/$(CONFIG)/test/core/util/parse_hexstring.o: -$(OBJDIR)/$(CONFIG)/test/core/util/port_posix.o: -$(OBJDIR)/$(CONFIG)/test/core/util/port_windows.o: -$(OBJDIR)/$(CONFIG)/test/core/util/slice_splitter.o: - LIBGRPC_TEST_UTIL_UNSECURE_SRC = \ test/core/end2end/cq_verifier.c \ @@ -3560,15 +3392,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBGRPC_TEST_UTIL_UNSECURE_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/cq_verifier.o: -$(OBJDIR)/$(CONFIG)/test/core/iomgr/endpoint_tests.o: -$(OBJDIR)/$(CONFIG)/test/core/statistics/census_log_tests.o: -$(OBJDIR)/$(CONFIG)/test/core/util/grpc_profiler.o: -$(OBJDIR)/$(CONFIG)/test/core/util/parse_hexstring.o: -$(OBJDIR)/$(CONFIG)/test/core/util/port_posix.o: -$(OBJDIR)/$(CONFIG)/test/core/util/port_windows.o: -$(OBJDIR)/$(CONFIG)/test/core/util/slice_splitter.o: - LIBGRPC_UNSECURE_SRC = \ src/core/surface/init_unsecure.c \ @@ -3712,105 +3535,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBGRPC_UNSECURE_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/src/core/surface/init_unsecure.o: -$(OBJDIR)/$(CONFIG)/src/core/channel/call_op_string.o: -$(OBJDIR)/$(CONFIG)/src/core/channel/census_filter.o: -$(OBJDIR)/$(CONFIG)/src/core/channel/channel_args.o: -$(OBJDIR)/$(CONFIG)/src/core/channel/channel_stack.o: -$(OBJDIR)/$(CONFIG)/src/core/channel/child_channel.o: -$(OBJDIR)/$(CONFIG)/src/core/channel/client_channel.o: -$(OBJDIR)/$(CONFIG)/src/core/channel/client_setup.o: -$(OBJDIR)/$(CONFIG)/src/core/channel/connected_channel.o: -$(OBJDIR)/$(CONFIG)/src/core/channel/http_client_filter.o: -$(OBJDIR)/$(CONFIG)/src/core/channel/http_filter.o: -$(OBJDIR)/$(CONFIG)/src/core/channel/http_server_filter.o: -$(OBJDIR)/$(CONFIG)/src/core/channel/noop_filter.o: -$(OBJDIR)/$(CONFIG)/src/core/compression/algorithm.o: -$(OBJDIR)/$(CONFIG)/src/core/compression/message_compress.o: -$(OBJDIR)/$(CONFIG)/src/core/debug/trace.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/alarm.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/alarm_heap.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/endpoint.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/endpoint_pair_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/endpoint_pair_windows.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/fd_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/iocp_windows.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/iomgr.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/iomgr_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/iomgr_windows.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/pollset_kick.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/pollset_multipoller_with_epoll.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/pollset_multipoller_with_poll_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/pollset_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/pollset_windows.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/resolve_address_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/resolve_address_windows.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/sockaddr_utils.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/socket_utils_common_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/socket_utils_linux.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/socket_utils_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/socket_windows.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/tcp_client_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/tcp_client_windows.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/tcp_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/tcp_server_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/tcp_server_windows.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/tcp_windows.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/time_averaged_stats.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/wakeup_fd_eventfd.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/wakeup_fd_nospecial.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/wakeup_fd_pipe.o: -$(OBJDIR)/$(CONFIG)/src/core/iomgr/wakeup_fd_posix.o: -$(OBJDIR)/$(CONFIG)/src/core/json/json.o: -$(OBJDIR)/$(CONFIG)/src/core/json/json_reader.o: -$(OBJDIR)/$(CONFIG)/src/core/json/json_string.o: -$(OBJDIR)/$(CONFIG)/src/core/json/json_writer.o: -$(OBJDIR)/$(CONFIG)/src/core/profiling/timers.o: -$(OBJDIR)/$(CONFIG)/src/core/statistics/census_init.o: -$(OBJDIR)/$(CONFIG)/src/core/statistics/census_log.o: -$(OBJDIR)/$(CONFIG)/src/core/statistics/census_rpc_stats.o: -$(OBJDIR)/$(CONFIG)/src/core/statistics/census_tracing.o: -$(OBJDIR)/$(CONFIG)/src/core/statistics/hash_table.o: -$(OBJDIR)/$(CONFIG)/src/core/statistics/window_stats.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/byte_buffer.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/byte_buffer_queue.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/byte_buffer_reader.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/call.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/call_details.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/call_log_batch.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/channel.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/channel_create.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/client.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/completion_queue.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/event_string.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/init.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/lame_client.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/metadata_array.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/server.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/server_chttp2.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/server_create.o: -$(OBJDIR)/$(CONFIG)/src/core/surface/surface_trace.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/alpn.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/bin_encoder.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/frame_data.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/frame_goaway.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/frame_ping.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/frame_rst_stream.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/frame_settings.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/frame_window_update.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/hpack_parser.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/hpack_table.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/huffsyms.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/status_conversion.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/stream_encoder.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/stream_map.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/timeout_encoding.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/varint.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2_transport.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/metadata.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/stream_op.o: -$(OBJDIR)/$(CONFIG)/src/core/transport/transport.o: - LIBGRPC++_SRC = \ src/cpp/client/secure_credentials.cc \ @@ -3874,6 +3598,7 @@ PUBLIC_HEADERS_CXX += \ include/grpc++/status_code_enum.h \ include/grpc++/stream.h \ include/grpc++/thread_pool_interface.h \ + include/grpc++/time.h \ LIBGRPC++_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(LIBGRPC++_SRC)))) @@ -3944,33 +3669,6 @@ ifneq ($(NO_DEPS),true) endif endif -$(OBJDIR)/$(CONFIG)/src/cpp/client/secure_credentials.o: -$(OBJDIR)/$(CONFIG)/src/cpp/server/secure_server_credentials.o: -$(OBJDIR)/$(CONFIG)/src/cpp/client/channel.o: -$(OBJDIR)/$(CONFIG)/src/cpp/client/channel_arguments.o: -$(OBJDIR)/$(CONFIG)/src/cpp/client/client_context.o: -$(OBJDIR)/$(CONFIG)/src/cpp/client/client_unary_call.o: -$(OBJDIR)/$(CONFIG)/src/cpp/client/create_channel.o: -$(OBJDIR)/$(CONFIG)/src/cpp/client/credentials.o: -$(OBJDIR)/$(CONFIG)/src/cpp/client/generic_stub.o: -$(OBJDIR)/$(CONFIG)/src/cpp/client/insecure_credentials.o: -$(OBJDIR)/$(CONFIG)/src/cpp/client/internal_stub.o: -$(OBJDIR)/$(CONFIG)/src/cpp/common/call.o: -$(OBJDIR)/$(CONFIG)/src/cpp/common/completion_queue.o: -$(OBJDIR)/$(CONFIG)/src/cpp/common/rpc_method.o: -$(OBJDIR)/$(CONFIG)/src/cpp/proto/proto_utils.o: -$(OBJDIR)/$(CONFIG)/src/cpp/server/async_generic_service.o: -$(OBJDIR)/$(CONFIG)/src/cpp/server/insecure_server_credentials.o: -$(OBJDIR)/$(CONFIG)/src/cpp/server/server.o: -$(OBJDIR)/$(CONFIG)/src/cpp/server/server_builder.o: -$(OBJDIR)/$(CONFIG)/src/cpp/server/server_context.o: -$(OBJDIR)/$(CONFIG)/src/cpp/server/server_credentials.o: -$(OBJDIR)/$(CONFIG)/src/cpp/server/thread_pool.o: -$(OBJDIR)/$(CONFIG)/src/cpp/util/byte_buffer.o: -$(OBJDIR)/$(CONFIG)/src/cpp/util/slice.o: -$(OBJDIR)/$(CONFIG)/src/cpp/util/status.o: -$(OBJDIR)/$(CONFIG)/src/cpp/util/time.o: - LIBGRPC++_TEST_CONFIG_SRC = \ test/cpp/util/test_config.cc \ @@ -4018,8 +3716,6 @@ ifneq ($(NO_DEPS),true) endif endif -$(OBJDIR)/$(CONFIG)/test/cpp/util/test_config.o: - LIBGRPC++_TEST_UTIL_SRC = \ $(GENDIR)/test/cpp/util/messages.pb.cc $(GENDIR)/test/cpp/util/messages.grpc.pb.cc \ @@ -4070,12 +3766,8 @@ ifneq ($(NO_DEPS),true) -include $(LIBGRPC++_TEST_UTIL_OBJS:.o=.dep) endif endif - - - - -$(OBJDIR)/$(CONFIG)/test/cpp/util/cli_call.o: $(GENDIR)/test/cpp/util/messages.pb.cc $(GENDIR)/test/cpp/util/messages.grpc.pb.cc $(GENDIR)/test/cpp/util/echo.pb.cc $(GENDIR)/test/cpp/util/echo.grpc.pb.cc $(GENDIR)/test/cpp/util/echo_duplicate.pb.cc $(GENDIR)/test/cpp/util/echo_duplicate.grpc.pb.cc -$(OBJDIR)/$(CONFIG)/test/cpp/util/create_test_channel.o: $(GENDIR)/test/cpp/util/messages.pb.cc $(GENDIR)/test/cpp/util/messages.grpc.pb.cc $(GENDIR)/test/cpp/util/echo.pb.cc $(GENDIR)/test/cpp/util/echo.grpc.pb.cc $(GENDIR)/test/cpp/util/echo_duplicate.pb.cc $(GENDIR)/test/cpp/util/echo_duplicate.grpc.pb.cc +$(OBJDIR)/$(CONFIG)/test/cpp/util/cli_call.o: $(GENDIR)/test/cpp/util/messages.pb.cc $(GENDIR)/test/cpp/util/messages.grpc.pb.cc $(GENDIR)/test/cpp/util/echo.pb.cc $(GENDIR)/test/cpp/util/echo.grpc.pb.cc $(GENDIR)/test/cpp/util/echo_duplicate.pb.cc $(GENDIR)/test/cpp/util/echo_duplicate.grpc.pb.cc +$(OBJDIR)/$(CONFIG)/test/cpp/util/create_test_channel.o: $(GENDIR)/test/cpp/util/messages.pb.cc $(GENDIR)/test/cpp/util/messages.grpc.pb.cc $(GENDIR)/test/cpp/util/echo.pb.cc $(GENDIR)/test/cpp/util/echo.grpc.pb.cc $(GENDIR)/test/cpp/util/echo_duplicate.pb.cc $(GENDIR)/test/cpp/util/echo_duplicate.grpc.pb.cc LIBGRPC++_UNSECURE_SRC = \ @@ -4138,6 +3830,7 @@ PUBLIC_HEADERS_CXX += \ include/grpc++/status_code_enum.h \ include/grpc++/stream.h \ include/grpc++/thread_pool_interface.h \ + include/grpc++/time.h \ LIBGRPC++_UNSECURE_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(LIBGRPC++_UNSECURE_SRC)))) @@ -4190,31 +3883,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBGRPC++_UNSECURE_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/src/cpp/client/channel.o: -$(OBJDIR)/$(CONFIG)/src/cpp/client/channel_arguments.o: -$(OBJDIR)/$(CONFIG)/src/cpp/client/client_context.o: -$(OBJDIR)/$(CONFIG)/src/cpp/client/client_unary_call.o: -$(OBJDIR)/$(CONFIG)/src/cpp/client/create_channel.o: -$(OBJDIR)/$(CONFIG)/src/cpp/client/credentials.o: -$(OBJDIR)/$(CONFIG)/src/cpp/client/generic_stub.o: -$(OBJDIR)/$(CONFIG)/src/cpp/client/insecure_credentials.o: -$(OBJDIR)/$(CONFIG)/src/cpp/client/internal_stub.o: -$(OBJDIR)/$(CONFIG)/src/cpp/common/call.o: -$(OBJDIR)/$(CONFIG)/src/cpp/common/completion_queue.o: -$(OBJDIR)/$(CONFIG)/src/cpp/common/rpc_method.o: -$(OBJDIR)/$(CONFIG)/src/cpp/proto/proto_utils.o: -$(OBJDIR)/$(CONFIG)/src/cpp/server/async_generic_service.o: -$(OBJDIR)/$(CONFIG)/src/cpp/server/insecure_server_credentials.o: -$(OBJDIR)/$(CONFIG)/src/cpp/server/server.o: -$(OBJDIR)/$(CONFIG)/src/cpp/server/server_builder.o: -$(OBJDIR)/$(CONFIG)/src/cpp/server/server_context.o: -$(OBJDIR)/$(CONFIG)/src/cpp/server/server_credentials.o: -$(OBJDIR)/$(CONFIG)/src/cpp/server/thread_pool.o: -$(OBJDIR)/$(CONFIG)/src/cpp/util/byte_buffer.o: -$(OBJDIR)/$(CONFIG)/src/cpp/util/slice.o: -$(OBJDIR)/$(CONFIG)/src/cpp/util/status.o: -$(OBJDIR)/$(CONFIG)/src/cpp/util/time.o: - LIBGRPC_PLUGIN_SUPPORT_SRC = \ src/compiler/cpp_generator.cc \ @@ -4252,11 +3920,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBGRPC_PLUGIN_SUPPORT_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/src/compiler/cpp_generator.o: -$(OBJDIR)/$(CONFIG)/src/compiler/objective_c_generator.o: -$(OBJDIR)/$(CONFIG)/src/compiler/python_generator.o: -$(OBJDIR)/$(CONFIG)/src/compiler/ruby_generator.o: - LIBINTEROP_CLIENT_HELPER_SRC = \ test/cpp/interop/client_helper.cc \ @@ -4304,8 +3967,6 @@ ifneq ($(NO_DEPS),true) endif endif -$(OBJDIR)/$(CONFIG)/test/cpp/interop/client_helper.o: - LIBINTEROP_CLIENT_MAIN_SRC = \ $(GENDIR)/test/proto/empty.pb.cc $(GENDIR)/test/proto/empty.grpc.pb.cc \ @@ -4356,12 +4017,8 @@ ifneq ($(NO_DEPS),true) -include $(LIBINTEROP_CLIENT_MAIN_OBJS:.o=.dep) endif endif - - - - -$(OBJDIR)/$(CONFIG)/test/cpp/interop/client.o: $(GENDIR)/test/proto/empty.pb.cc $(GENDIR)/test/proto/empty.grpc.pb.cc $(GENDIR)/test/proto/messages.pb.cc $(GENDIR)/test/proto/messages.grpc.pb.cc $(GENDIR)/test/proto/test.pb.cc $(GENDIR)/test/proto/test.grpc.pb.cc -$(OBJDIR)/$(CONFIG)/test/cpp/interop/interop_client.o: $(GENDIR)/test/proto/empty.pb.cc $(GENDIR)/test/proto/empty.grpc.pb.cc $(GENDIR)/test/proto/messages.pb.cc $(GENDIR)/test/proto/messages.grpc.pb.cc $(GENDIR)/test/proto/test.pb.cc $(GENDIR)/test/proto/test.grpc.pb.cc +$(OBJDIR)/$(CONFIG)/test/cpp/interop/client.o: $(GENDIR)/test/proto/empty.pb.cc $(GENDIR)/test/proto/empty.grpc.pb.cc $(GENDIR)/test/proto/messages.pb.cc $(GENDIR)/test/proto/messages.grpc.pb.cc $(GENDIR)/test/proto/test.pb.cc $(GENDIR)/test/proto/test.grpc.pb.cc +$(OBJDIR)/$(CONFIG)/test/cpp/interop/interop_client.o: $(GENDIR)/test/proto/empty.pb.cc $(GENDIR)/test/proto/empty.grpc.pb.cc $(GENDIR)/test/proto/messages.pb.cc $(GENDIR)/test/proto/messages.grpc.pb.cc $(GENDIR)/test/proto/test.pb.cc $(GENDIR)/test/proto/test.grpc.pb.cc LIBINTEROP_SERVER_HELPER_SRC = \ @@ -4410,8 +4067,6 @@ ifneq ($(NO_DEPS),true) endif endif -$(OBJDIR)/$(CONFIG)/test/cpp/interop/server_helper.o: - LIBINTEROP_SERVER_MAIN_SRC = \ $(GENDIR)/test/proto/empty.pb.cc $(GENDIR)/test/proto/empty.grpc.pb.cc \ @@ -4461,11 +4116,7 @@ ifneq ($(NO_DEPS),true) -include $(LIBINTEROP_SERVER_MAIN_OBJS:.o=.dep) endif endif - - - - -$(OBJDIR)/$(CONFIG)/test/cpp/interop/server.o: $(GENDIR)/test/proto/empty.pb.cc $(GENDIR)/test/proto/empty.grpc.pb.cc $(GENDIR)/test/proto/messages.pb.cc $(GENDIR)/test/proto/messages.grpc.pb.cc $(GENDIR)/test/proto/test.pb.cc $(GENDIR)/test/proto/test.grpc.pb.cc +$(OBJDIR)/$(CONFIG)/test/cpp/interop/server.o: $(GENDIR)/test/proto/empty.pb.cc $(GENDIR)/test/proto/empty.grpc.pb.cc $(GENDIR)/test/proto/messages.pb.cc $(GENDIR)/test/proto/messages.grpc.pb.cc $(GENDIR)/test/proto/test.pb.cc $(GENDIR)/test/proto/test.grpc.pb.cc LIBPUBSUB_CLIENT_LIB_SRC = \ @@ -4517,12 +4168,8 @@ ifneq ($(NO_DEPS),true) -include $(LIBPUBSUB_CLIENT_LIB_OBJS:.o=.dep) endif endif - - - - -$(OBJDIR)/$(CONFIG)/examples/pubsub/publisher.o: $(GENDIR)/examples/pubsub/label.pb.cc $(GENDIR)/examples/pubsub/label.grpc.pb.cc $(GENDIR)/examples/pubsub/empty.pb.cc $(GENDIR)/examples/pubsub/empty.grpc.pb.cc $(GENDIR)/examples/pubsub/pubsub.pb.cc $(GENDIR)/examples/pubsub/pubsub.grpc.pb.cc -$(OBJDIR)/$(CONFIG)/examples/pubsub/subscriber.o: $(GENDIR)/examples/pubsub/label.pb.cc $(GENDIR)/examples/pubsub/label.grpc.pb.cc $(GENDIR)/examples/pubsub/empty.pb.cc $(GENDIR)/examples/pubsub/empty.grpc.pb.cc $(GENDIR)/examples/pubsub/pubsub.pb.cc $(GENDIR)/examples/pubsub/pubsub.grpc.pb.cc +$(OBJDIR)/$(CONFIG)/examples/pubsub/publisher.o: $(GENDIR)/examples/pubsub/label.pb.cc $(GENDIR)/examples/pubsub/label.grpc.pb.cc $(GENDIR)/examples/pubsub/empty.pb.cc $(GENDIR)/examples/pubsub/empty.grpc.pb.cc $(GENDIR)/examples/pubsub/pubsub.pb.cc $(GENDIR)/examples/pubsub/pubsub.grpc.pb.cc +$(OBJDIR)/$(CONFIG)/examples/pubsub/subscriber.o: $(GENDIR)/examples/pubsub/label.pb.cc $(GENDIR)/examples/pubsub/label.grpc.pb.cc $(GENDIR)/examples/pubsub/empty.pb.cc $(GENDIR)/examples/pubsub/empty.grpc.pb.cc $(GENDIR)/examples/pubsub/pubsub.pb.cc $(GENDIR)/examples/pubsub/pubsub.grpc.pb.cc LIBQPS_SRC = \ @@ -4578,16 +4225,14 @@ ifneq ($(NO_DEPS),true) -include $(LIBQPS_OBJS:.o=.dep) endif endif - - -$(OBJDIR)/$(CONFIG)/test/cpp/qps/client_async.o: $(GENDIR)/test/cpp/qps/qpstest.pb.cc $(GENDIR)/test/cpp/qps/qpstest.grpc.pb.cc -$(OBJDIR)/$(CONFIG)/test/cpp/qps/client_sync.o: $(GENDIR)/test/cpp/qps/qpstest.pb.cc $(GENDIR)/test/cpp/qps/qpstest.grpc.pb.cc -$(OBJDIR)/$(CONFIG)/test/cpp/qps/driver.o: $(GENDIR)/test/cpp/qps/qpstest.pb.cc $(GENDIR)/test/cpp/qps/qpstest.grpc.pb.cc -$(OBJDIR)/$(CONFIG)/test/cpp/qps/qps_worker.o: $(GENDIR)/test/cpp/qps/qpstest.pb.cc $(GENDIR)/test/cpp/qps/qpstest.grpc.pb.cc -$(OBJDIR)/$(CONFIG)/test/cpp/qps/report.o: $(GENDIR)/test/cpp/qps/qpstest.pb.cc $(GENDIR)/test/cpp/qps/qpstest.grpc.pb.cc -$(OBJDIR)/$(CONFIG)/test/cpp/qps/server_async.o: $(GENDIR)/test/cpp/qps/qpstest.pb.cc $(GENDIR)/test/cpp/qps/qpstest.grpc.pb.cc -$(OBJDIR)/$(CONFIG)/test/cpp/qps/server_sync.o: $(GENDIR)/test/cpp/qps/qpstest.pb.cc $(GENDIR)/test/cpp/qps/qpstest.grpc.pb.cc -$(OBJDIR)/$(CONFIG)/test/cpp/qps/timer.o: $(GENDIR)/test/cpp/qps/qpstest.pb.cc $(GENDIR)/test/cpp/qps/qpstest.grpc.pb.cc +$(OBJDIR)/$(CONFIG)/test/cpp/qps/client_async.o: $(GENDIR)/test/cpp/qps/qpstest.pb.cc $(GENDIR)/test/cpp/qps/qpstest.grpc.pb.cc +$(OBJDIR)/$(CONFIG)/test/cpp/qps/client_sync.o: $(GENDIR)/test/cpp/qps/qpstest.pb.cc $(GENDIR)/test/cpp/qps/qpstest.grpc.pb.cc +$(OBJDIR)/$(CONFIG)/test/cpp/qps/driver.o: $(GENDIR)/test/cpp/qps/qpstest.pb.cc $(GENDIR)/test/cpp/qps/qpstest.grpc.pb.cc +$(OBJDIR)/$(CONFIG)/test/cpp/qps/qps_worker.o: $(GENDIR)/test/cpp/qps/qpstest.pb.cc $(GENDIR)/test/cpp/qps/qpstest.grpc.pb.cc +$(OBJDIR)/$(CONFIG)/test/cpp/qps/report.o: $(GENDIR)/test/cpp/qps/qpstest.pb.cc $(GENDIR)/test/cpp/qps/qpstest.grpc.pb.cc +$(OBJDIR)/$(CONFIG)/test/cpp/qps/server_async.o: $(GENDIR)/test/cpp/qps/qpstest.pb.cc $(GENDIR)/test/cpp/qps/qpstest.grpc.pb.cc +$(OBJDIR)/$(CONFIG)/test/cpp/qps/server_sync.o: $(GENDIR)/test/cpp/qps/qpstest.pb.cc $(GENDIR)/test/cpp/qps/qpstest.grpc.pb.cc +$(OBJDIR)/$(CONFIG)/test/cpp/qps/timer.o: $(GENDIR)/test/cpp/qps/qpstest.pb.cc $(GENDIR)/test/cpp/qps/qpstest.grpc.pb.cc LIBGRPC_CSHARP_EXT_SRC = \ @@ -4648,8 +4293,6 @@ ifneq ($(NO_DEPS),true) endif endif -$(OBJDIR)/$(CONFIG)/src/csharp/ext/grpc_csharp_ext.o: - LIBEND2END_FIXTURE_CHTTP2_FAKE_SECURITY_SRC = \ test/core/end2end/fixtures/chttp2_fake_security.c \ @@ -4687,8 +4330,6 @@ ifneq ($(NO_DEPS),true) endif endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/fixtures/chttp2_fake_security.o: - LIBEND2END_FIXTURE_CHTTP2_FULLSTACK_SRC = \ test/core/end2end/fixtures/chttp2_fullstack.c \ @@ -4712,8 +4353,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_FIXTURE_CHTTP2_FULLSTACK_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/fixtures/chttp2_fullstack.o: - LIBEND2END_FIXTURE_CHTTP2_FULLSTACK_UDS_SRC = \ test/core/end2end/fixtures/chttp2_fullstack_uds.c \ @@ -4737,8 +4376,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_FIXTURE_CHTTP2_FULLSTACK_UDS_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/fixtures/chttp2_fullstack_uds.o: - LIBEND2END_FIXTURE_CHTTP2_SIMPLE_SSL_FULLSTACK_SRC = \ test/core/end2end/fixtures/chttp2_simple_ssl_fullstack.c \ @@ -4776,8 +4413,6 @@ ifneq ($(NO_DEPS),true) endif endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/fixtures/chttp2_simple_ssl_fullstack.o: - LIBEND2END_FIXTURE_CHTTP2_SIMPLE_SSL_WITH_OAUTH2_FULLSTACK_SRC = \ test/core/end2end/fixtures/chttp2_simple_ssl_with_oauth2_fullstack.c \ @@ -4815,8 +4450,6 @@ ifneq ($(NO_DEPS),true) endif endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/fixtures/chttp2_simple_ssl_with_oauth2_fullstack.o: - LIBEND2END_FIXTURE_CHTTP2_SOCKET_PAIR_SRC = \ test/core/end2end/fixtures/chttp2_socket_pair.c \ @@ -4840,8 +4473,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_FIXTURE_CHTTP2_SOCKET_PAIR_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/fixtures/chttp2_socket_pair.o: - LIBEND2END_FIXTURE_CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SRC = \ test/core/end2end/fixtures/chttp2_socket_pair_one_byte_at_a_time.c \ @@ -4865,8 +4496,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_FIXTURE_CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/fixtures/chttp2_socket_pair_one_byte_at_a_time.o: - LIBEND2END_TEST_BAD_HOSTNAME_SRC = \ test/core/end2end/tests/bad_hostname.c \ @@ -4890,8 +4519,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_BAD_HOSTNAME_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/bad_hostname.o: - LIBEND2END_TEST_CANCEL_AFTER_ACCEPT_SRC = \ test/core/end2end/tests/cancel_after_accept.c \ @@ -4915,8 +4542,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_CANCEL_AFTER_ACCEPT_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/cancel_after_accept.o: - LIBEND2END_TEST_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_SRC = \ test/core/end2end/tests/cancel_after_accept_and_writes_closed.c \ @@ -4940,8 +4565,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/cancel_after_accept_and_writes_closed.o: - LIBEND2END_TEST_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_SRC = \ test/core/end2end/tests/cancel_after_accept_and_writes_closed_legacy.c \ @@ -4965,8 +4588,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/cancel_after_accept_and_writes_closed_legacy.o: - LIBEND2END_TEST_CANCEL_AFTER_ACCEPT_LEGACY_SRC = \ test/core/end2end/tests/cancel_after_accept_legacy.c \ @@ -4990,8 +4611,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_CANCEL_AFTER_ACCEPT_LEGACY_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/cancel_after_accept_legacy.o: - LIBEND2END_TEST_CANCEL_AFTER_INVOKE_SRC = \ test/core/end2end/tests/cancel_after_invoke.c \ @@ -5015,8 +4634,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_CANCEL_AFTER_INVOKE_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/cancel_after_invoke.o: - LIBEND2END_TEST_CANCEL_AFTER_INVOKE_LEGACY_SRC = \ test/core/end2end/tests/cancel_after_invoke_legacy.c \ @@ -5040,8 +4657,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_CANCEL_AFTER_INVOKE_LEGACY_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/cancel_after_invoke_legacy.o: - LIBEND2END_TEST_CANCEL_BEFORE_INVOKE_SRC = \ test/core/end2end/tests/cancel_before_invoke.c \ @@ -5065,8 +4680,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_CANCEL_BEFORE_INVOKE_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/cancel_before_invoke.o: - LIBEND2END_TEST_CANCEL_BEFORE_INVOKE_LEGACY_SRC = \ test/core/end2end/tests/cancel_before_invoke_legacy.c \ @@ -5090,8 +4703,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_CANCEL_BEFORE_INVOKE_LEGACY_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/cancel_before_invoke_legacy.o: - LIBEND2END_TEST_CANCEL_IN_A_VACUUM_SRC = \ test/core/end2end/tests/cancel_in_a_vacuum.c \ @@ -5115,8 +4726,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_CANCEL_IN_A_VACUUM_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/cancel_in_a_vacuum.o: - LIBEND2END_TEST_CANCEL_IN_A_VACUUM_LEGACY_SRC = \ test/core/end2end/tests/cancel_in_a_vacuum_legacy.c \ @@ -5140,8 +4749,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_CANCEL_IN_A_VACUUM_LEGACY_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/cancel_in_a_vacuum_legacy.o: - LIBEND2END_TEST_CENSUS_SIMPLE_REQUEST_SRC = \ test/core/end2end/tests/census_simple_request.c \ @@ -5165,8 +4772,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_CENSUS_SIMPLE_REQUEST_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/census_simple_request.o: - LIBEND2END_TEST_CENSUS_SIMPLE_REQUEST_LEGACY_SRC = \ test/core/end2end/tests/census_simple_request_legacy.c \ @@ -5190,8 +4795,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_CENSUS_SIMPLE_REQUEST_LEGACY_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/census_simple_request_legacy.o: - LIBEND2END_TEST_DISAPPEARING_SERVER_SRC = \ test/core/end2end/tests/disappearing_server.c \ @@ -5215,8 +4818,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_DISAPPEARING_SERVER_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/disappearing_server.o: - LIBEND2END_TEST_DISAPPEARING_SERVER_LEGACY_SRC = \ test/core/end2end/tests/disappearing_server_legacy.c \ @@ -5240,8 +4841,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_DISAPPEARING_SERVER_LEGACY_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/disappearing_server_legacy.o: - LIBEND2END_TEST_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_SRC = \ test/core/end2end/tests/early_server_shutdown_finishes_inflight_calls.c \ @@ -5265,8 +4864,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/early_server_shutdown_finishes_inflight_calls.o: - LIBEND2END_TEST_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_SRC = \ test/core/end2end/tests/early_server_shutdown_finishes_inflight_calls_legacy.c \ @@ -5290,8 +4887,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/early_server_shutdown_finishes_inflight_calls_legacy.o: - LIBEND2END_TEST_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_SRC = \ test/core/end2end/tests/early_server_shutdown_finishes_tags.c \ @@ -5315,8 +4910,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/early_server_shutdown_finishes_tags.o: - LIBEND2END_TEST_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_SRC = \ test/core/end2end/tests/early_server_shutdown_finishes_tags_legacy.c \ @@ -5340,8 +4933,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/early_server_shutdown_finishes_tags_legacy.o: - LIBEND2END_TEST_EMPTY_BATCH_SRC = \ test/core/end2end/tests/empty_batch.c \ @@ -5365,8 +4956,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_EMPTY_BATCH_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/empty_batch.o: - LIBEND2END_TEST_GRACEFUL_SERVER_SHUTDOWN_SRC = \ test/core/end2end/tests/graceful_server_shutdown.c \ @@ -5390,8 +4979,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_GRACEFUL_SERVER_SHUTDOWN_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/graceful_server_shutdown.o: - LIBEND2END_TEST_GRACEFUL_SERVER_SHUTDOWN_LEGACY_SRC = \ test/core/end2end/tests/graceful_server_shutdown_legacy.c \ @@ -5415,8 +5002,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_GRACEFUL_SERVER_SHUTDOWN_LEGACY_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/graceful_server_shutdown_legacy.o: - LIBEND2END_TEST_INVOKE_LARGE_REQUEST_SRC = \ test/core/end2end/tests/invoke_large_request.c \ @@ -5440,8 +5025,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_INVOKE_LARGE_REQUEST_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/invoke_large_request.o: - LIBEND2END_TEST_INVOKE_LARGE_REQUEST_LEGACY_SRC = \ test/core/end2end/tests/invoke_large_request_legacy.c \ @@ -5465,8 +5048,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_INVOKE_LARGE_REQUEST_LEGACY_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/invoke_large_request_legacy.o: - LIBEND2END_TEST_MAX_CONCURRENT_STREAMS_SRC = \ test/core/end2end/tests/max_concurrent_streams.c \ @@ -5490,8 +5071,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_MAX_CONCURRENT_STREAMS_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/max_concurrent_streams.o: - LIBEND2END_TEST_MAX_CONCURRENT_STREAMS_LEGACY_SRC = \ test/core/end2end/tests/max_concurrent_streams_legacy.c \ @@ -5515,8 +5094,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_MAX_CONCURRENT_STREAMS_LEGACY_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/max_concurrent_streams_legacy.o: - LIBEND2END_TEST_NO_OP_SRC = \ test/core/end2end/tests/no_op.c \ @@ -5540,8 +5117,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_NO_OP_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/no_op.o: - LIBEND2END_TEST_NO_OP_LEGACY_SRC = \ test/core/end2end/tests/no_op_legacy.c \ @@ -5565,8 +5140,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_NO_OP_LEGACY_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/no_op_legacy.o: - LIBEND2END_TEST_PING_PONG_STREAMING_SRC = \ test/core/end2end/tests/ping_pong_streaming.c \ @@ -5590,8 +5163,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_PING_PONG_STREAMING_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/ping_pong_streaming.o: - LIBEND2END_TEST_PING_PONG_STREAMING_LEGACY_SRC = \ test/core/end2end/tests/ping_pong_streaming_legacy.c \ @@ -5615,8 +5186,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_PING_PONG_STREAMING_LEGACY_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/ping_pong_streaming_legacy.o: - LIBEND2END_TEST_REGISTERED_CALL_SRC = \ test/core/end2end/tests/registered_call.c \ @@ -5640,8 +5209,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_REGISTERED_CALL_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/registered_call.o: - LIBEND2END_TEST_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_SRC = \ test/core/end2end/tests/request_response_with_binary_metadata_and_payload.c \ @@ -5665,8 +5232,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/request_response_with_binary_metadata_and_payload.o: - LIBEND2END_TEST_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_SRC = \ test/core/end2end/tests/request_response_with_binary_metadata_and_payload_legacy.c \ @@ -5690,8 +5255,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/request_response_with_binary_metadata_and_payload_legacy.o: - LIBEND2END_TEST_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_SRC = \ test/core/end2end/tests/request_response_with_metadata_and_payload.c \ @@ -5715,8 +5278,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/request_response_with_metadata_and_payload.o: - LIBEND2END_TEST_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_SRC = \ test/core/end2end/tests/request_response_with_metadata_and_payload_legacy.c \ @@ -5740,8 +5301,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/request_response_with_metadata_and_payload_legacy.o: - LIBEND2END_TEST_REQUEST_RESPONSE_WITH_PAYLOAD_SRC = \ test/core/end2end/tests/request_response_with_payload.c \ @@ -5765,8 +5324,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_REQUEST_RESPONSE_WITH_PAYLOAD_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/request_response_with_payload.o: - LIBEND2END_TEST_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_SRC = \ test/core/end2end/tests/request_response_with_payload_legacy.c \ @@ -5790,8 +5347,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/request_response_with_payload_legacy.o: - LIBEND2END_TEST_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_SRC = \ test/core/end2end/tests/request_response_with_trailing_metadata_and_payload_legacy.c \ @@ -5815,8 +5370,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/request_response_with_trailing_metadata_and_payload_legacy.o: - LIBEND2END_TEST_REQUEST_WITH_LARGE_METADATA_SRC = \ test/core/end2end/tests/request_with_large_metadata.c \ @@ -5840,8 +5393,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_REQUEST_WITH_LARGE_METADATA_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/request_with_large_metadata.o: - LIBEND2END_TEST_REQUEST_WITH_LARGE_METADATA_LEGACY_SRC = \ test/core/end2end/tests/request_with_large_metadata_legacy.c \ @@ -5865,8 +5416,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_REQUEST_WITH_LARGE_METADATA_LEGACY_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/request_with_large_metadata_legacy.o: - LIBEND2END_TEST_REQUEST_WITH_PAYLOAD_SRC = \ test/core/end2end/tests/request_with_payload.c \ @@ -5890,8 +5439,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_REQUEST_WITH_PAYLOAD_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/request_with_payload.o: - LIBEND2END_TEST_REQUEST_WITH_PAYLOAD_LEGACY_SRC = \ test/core/end2end/tests/request_with_payload_legacy.c \ @@ -5915,8 +5462,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_REQUEST_WITH_PAYLOAD_LEGACY_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/request_with_payload_legacy.o: - LIBEND2END_TEST_SIMPLE_DELAYED_REQUEST_SRC = \ test/core/end2end/tests/simple_delayed_request.c \ @@ -5940,8 +5485,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_SIMPLE_DELAYED_REQUEST_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/simple_delayed_request.o: - LIBEND2END_TEST_SIMPLE_DELAYED_REQUEST_LEGACY_SRC = \ test/core/end2end/tests/simple_delayed_request_legacy.c \ @@ -5965,8 +5508,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_SIMPLE_DELAYED_REQUEST_LEGACY_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/simple_delayed_request_legacy.o: - LIBEND2END_TEST_SIMPLE_REQUEST_SRC = \ test/core/end2end/tests/simple_request.c \ @@ -5990,8 +5531,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_SIMPLE_REQUEST_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/simple_request.o: - LIBEND2END_TEST_SIMPLE_REQUEST_LEGACY_SRC = \ test/core/end2end/tests/simple_request_legacy.c \ @@ -6015,8 +5554,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_SIMPLE_REQUEST_LEGACY_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/simple_request_legacy.o: - LIBEND2END_TEST_THREAD_STRESS_SRC = \ test/core/end2end/tests/thread_stress.c \ @@ -6040,8 +5577,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_THREAD_STRESS_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/thread_stress.o: - LIBEND2END_TEST_THREAD_STRESS_LEGACY_SRC = \ test/core/end2end/tests/thread_stress_legacy.c \ @@ -6065,8 +5600,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_THREAD_STRESS_LEGACY_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/thread_stress_legacy.o: - LIBEND2END_TEST_WRITES_DONE_HANGS_WITH_PENDING_READ_SRC = \ test/core/end2end/tests/writes_done_hangs_with_pending_read.c \ @@ -6090,8 +5623,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_WRITES_DONE_HANGS_WITH_PENDING_READ_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/writes_done_hangs_with_pending_read.o: - LIBEND2END_TEST_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_SRC = \ test/core/end2end/tests/writes_done_hangs_with_pending_read_legacy.c \ @@ -6115,8 +5646,6 @@ ifneq ($(NO_DEPS),true) -include $(LIBEND2END_TEST_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_OBJS:.o=.dep) endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/writes_done_hangs_with_pending_read_legacy.o: - LIBEND2END_CERTS_SRC = \ test/core/end2end/data/test_root_cert.c \ @@ -6156,10 +5685,6 @@ ifneq ($(NO_DEPS),true) endif endif -$(OBJDIR)/$(CONFIG)/test/core/end2end/data/test_root_cert.o: -$(OBJDIR)/$(CONFIG)/test/core/end2end/data/server1_cert.o: -$(OBJDIR)/$(CONFIG)/test/core/end2end/data/server1_key.o: - # All of the test targets, and protoc plugins diff --git a/build.json b/build.json index 5144bb74b6222b76a95bd9ce99312c80d0302bc8..e072ed67c3c790c3a75c5809038d128003a663f8 100644 --- a/build.json +++ b/build.json @@ -47,13 +47,13 @@ "include/grpc++/status.h", "include/grpc++/status_code_enum.h", "include/grpc++/stream.h", - "include/grpc++/thread_pool_interface.h" + "include/grpc++/thread_pool_interface.h", + "include/grpc++/time.h" ], "headers": [ "src/cpp/client/channel.h", "src/cpp/proto/proto_utils.h", - "src/cpp/server/thread_pool.h", - "src/cpp/util/time.h" + "src/cpp/server/thread_pool.h" ], "src": [ "src/cpp/client/channel.cc", diff --git a/examples/pubsub/main.cc b/examples/pubsub/main.cc index 3a403481fcd81facd0d1ef9ebffce2aa9733dda0..68620e64c5c280f63632fa68c6f5bdd56b439a49 100644 --- a/examples/pubsub/main.cc +++ b/examples/pubsub/main.cc @@ -31,7 +31,6 @@ * */ -#include <chrono> #include <fstream> #include <memory> #include <sstream> diff --git a/include/grpc++/client_context.h b/include/grpc++/client_context.h index 4e7f5a7be0e5d34d1cc1004f2e2149c2727a8904..a58e9872e6097ad1886afc0adeda28e095d4a8f9 100644 --- a/include/grpc++/client_context.h +++ b/include/grpc++/client_context.h @@ -34,15 +34,14 @@ #ifndef GRPCXX_CLIENT_CONTEXT_H #define GRPCXX_CLIENT_CONTEXT_H -#include <chrono> #include <map> +#include <memory> #include <string> #include <grpc/support/log.h> #include <grpc/support/time.h> #include <grpc++/config.h> - -using std::chrono::system_clock; +#include <grpc++/time.h> struct grpc_call; struct grpc_completion_queue; @@ -87,8 +86,19 @@ class ClientContext { return trailing_metadata_; } - void set_absolute_deadline(const system_clock::time_point& deadline); - system_clock::time_point absolute_deadline(); + template <typename T> + void set_deadline(const T& deadline) { + TimePoint<T> deadline_tp(deadline); + deadline_ = deadline_tp.raw_time(); + } + +#ifndef GRPC_CXX0X_NO_CHRONO + std::chrono::system_clock::time_point deadline() { + return Timespec2Timepoint(deadline_); + } +#endif // !GRPC_CXX0X_NO_CHRONO + + gpr_timespec raw_deadline() { return deadline_; } void set_authority(const grpc::string& authority) { authority_ = authority; } @@ -117,22 +127,22 @@ class ClientContext { friend class ::grpc::ClientAsyncResponseReader; grpc_call* call() { return call_; } - void set_call(grpc_call* call) { + void set_call(grpc_call* call, const std::shared_ptr<ChannelInterface>& channel) { GPR_ASSERT(call_ == nullptr); call_ = call; + channel_ = channel; } grpc_completion_queue* cq() { return cq_; } void set_cq(grpc_completion_queue* cq) { cq_ = cq; } - gpr_timespec RawDeadline() { return absolute_deadline_; } - grpc::string authority() { return authority_; } bool initial_metadata_received_; + std::shared_ptr<ChannelInterface> channel_; grpc_call* call_; grpc_completion_queue* cq_; - gpr_timespec absolute_deadline_; + gpr_timespec deadline_; grpc::string authority_; std::multimap<grpc::string, grpc::string> send_initial_metadata_; std::multimap<grpc::string, grpc::string> recv_initial_metadata_; diff --git a/include/grpc++/completion_queue.h b/include/grpc++/completion_queue.h index 0a2a7687b75eb8e49fd33b13f3dfa2de20361613..5c2b1cce93d1557f9c139598be6d930834d268df 100644 --- a/include/grpc++/completion_queue.h +++ b/include/grpc++/completion_queue.h @@ -34,10 +34,10 @@ #ifndef GRPCXX_COMPLETION_QUEUE_H #define GRPCXX_COMPLETION_QUEUE_H -#include <chrono> +#include <grpc/support/time.h> #include <grpc++/impl/client_unary_call.h> #include <grpc++/impl/grpc_library.h> -#include <grpc/support/time.h> +#include <grpc++/time.h> struct grpc_completion_queue; @@ -83,10 +83,13 @@ class CompletionQueue : public GrpcLibrary { // Nonblocking (until deadline) read from queue. // Cannot rely on result of tag or ok if return is TIMEOUT - NextStatus AsyncNext(void** tag, bool* ok, - std::chrono::system_clock::time_point deadline); + template<typename T> + NextStatus AsyncNext(void** tag, bool* ok, const T& deadline) { + TimePoint<T> deadline_tp(deadline); + return AsyncNextInternal(tag, ok, deadline_tp.raw_time()); + } - // Blocking (until deadline) read from queue. + // Blocking read from queue. // Returns false if the queue is ready for destruction, true if event bool Next(void** tag, bool* ok) { diff --git a/include/grpc++/credentials.h b/include/grpc++/credentials.h index cbf94457508f7727f6cf06d383d8849683d2921b..61c40946910301cd35f205c58d17addfd69d1775 100644 --- a/include/grpc++/credentials.h +++ b/include/grpc++/credentials.h @@ -34,7 +34,6 @@ #ifndef GRPCXX_CREDENTIALS_H #define GRPCXX_CREDENTIALS_H -#include <chrono> #include <memory> #include <grpc++/config.h> @@ -99,20 +98,20 @@ std::unique_ptr<Credentials> ComputeEngineCredentials(); // Builds service account credentials. // json_key is the JSON key string containing the client's private key. // scope is a space-delimited list of the requested permissions. -// token_lifetime is the lifetime of each token acquired through this service -// account credentials. It should be positive and should not exceed -// grpc_max_auth_token_lifetime or will be cropped to this value. +// token_lifetime_seconds is the lifetime in seconds of each token acquired +// through this service account credentials. It should be positive and should +// not exceed grpc_max_auth_token_lifetime or will be cropped to this value. std::unique_ptr<Credentials> ServiceAccountCredentials( const grpc::string& json_key, const grpc::string& scope, - std::chrono::seconds token_lifetime); + long token_lifetime_seconds); // Builds JWT credentials. // json_key is the JSON key string containing the client's private key. -// token_lifetime is the lifetime of each Json Web Token (JWT) created with -// this credentials. It should not exceed grpc_max_auth_token_lifetime or -// will be cropped to this value. +// token_lifetime_seconds is the lifetime in seconds of each Json Web Token +// (JWT) created with this credentials. It should not exceed +// grpc_max_auth_token_lifetime or will be cropped to this value. std::unique_ptr<Credentials> JWTCredentials( - const grpc::string& json_key, std::chrono::seconds token_lifetime); + const grpc::string& json_key, long token_lifetime_seconds); // Builds refresh token credentials. // json_refresh_token is the JSON string containing the refresh token along diff --git a/include/grpc++/server_context.h b/include/grpc++/server_context.h index 9e3b80c6411d4d810a84742ac4c60ab16b242aac..a62babd93163535b3382670c38e81dd13c685e6f 100644 --- a/include/grpc++/server_context.h +++ b/include/grpc++/server_context.h @@ -34,10 +34,11 @@ #ifndef GRPCXX_SERVER_CONTEXT_H #define GRPCXX_SERVER_CONTEXT_H -#include <chrono> #include <map> +#include <grpc/support/time.h> #include <grpc++/config.h> +#include <grpc++/time.h> struct gpr_timespec; struct grpc_metadata; @@ -71,9 +72,13 @@ class ServerContext { ServerContext(); // for async calls ~ServerContext(); - std::chrono::system_clock::time_point absolute_deadline() { - return deadline_; +#ifndef GRPC_CXX0X_NO_CHRONO + std::chrono::system_clock::time_point deadline() { + return Timespec2Timepoint(deadline_); } +#endif // !GRPC_CXX0X_NO_CHRONO + + gpr_timespec raw_deadline() { return deadline_; } void AddInitialMetadata(const grpc::string& key, const grpc::string& value); void AddTrailingMetadata(const grpc::string& key, const grpc::string& value); @@ -110,7 +115,7 @@ class ServerContext { CompletionOp* completion_op_; - std::chrono::system_clock::time_point deadline_; + gpr_timespec deadline_; grpc_call* call_; CompletionQueue* cq_; bool sent_initial_metadata_; diff --git a/src/cpp/util/time.h b/include/grpc++/time.h similarity index 56% rename from src/cpp/util/time.h rename to include/grpc++/time.h index 8b7fcf55f78ea564f77df3ccbf799498e27723f2..f9b2ce5cab1f4f90f77b78ca679312f8bc4bf0dd 100644 --- a/src/cpp/util/time.h +++ b/include/grpc++/time.h @@ -31,8 +31,50 @@ * */ -#ifndef GRPC_INTERNAL_CPP_UTIL_TIME_H -#define GRPC_INTERNAL_CPP_UTIL_TIME_H +#ifndef GRPCXX_TIME_H +#define GRPCXX_TIME_H + +#include <grpc++/config.h> + +namespace grpc { + +/* If you are trying to use CompletionQueue::AsyncNext with a time class that + isn't either gpr_timespec or std::chrono::system_clock::time_point, you + will most likely be looking at this comment as your compiler will have + fired an error below. In order to fix this issue, you have two potential + solutions: + + 1. Use gpr_timespec or std::chrono::system_clock::time_point instead + 2. Specialize the TimePoint class with whichever time class that you + want to use here. See below for two examples of how to do this. + */ + +template <typename T> +class TimePoint { + public: + TimePoint(const T& time) { + you_need_a_specialization_of_TimePoint(); + } + gpr_timespec raw_time() { + gpr_timespec t; + return t; + } + private: + void you_need_a_specialization_of_TimePoint(); +}; + +template<> +class TimePoint<gpr_timespec> { + public: + TimePoint(const gpr_timespec& time) : time_(time) { } + gpr_timespec raw_time() { return time_; } + private: + gpr_timespec time_; +}; + +} // namespace grpc + +#ifndef GRPC_CXX0X_NO_CHRONO #include <chrono> @@ -46,6 +88,19 @@ void Timepoint2Timespec(const std::chrono::system_clock::time_point& from, std::chrono::system_clock::time_point Timespec2Timepoint(gpr_timespec t); +template <> +class TimePoint<std::chrono::system_clock::time_point> { + public: + TimePoint(const std::chrono::system_clock::time_point& time) { + Timepoint2Timespec(time, &time_); + } + gpr_timespec raw_time() const { return time_; } + private: + gpr_timespec time_; +}; + } // namespace grpc -#endif // GRPC_INTERNAL_CPP_UTIL_TIME_H +#endif // !GRPC_CXX0X_NO_CHRONO + +#endif // GRPCXX_TIME_H diff --git a/include/grpc/support/tls.h b/include/grpc/support/tls.h index 1077fdec295f70003ebe27bbf80e8ef9eb42240b..8dffd5225597de511ba7a082d49b661793faa4a4 100644 --- a/include/grpc/support/tls.h +++ b/include/grpc/support/tls.h @@ -44,7 +44,7 @@ Thread locals have type gpr_intptr. Declaring a thread local variable 'foo': - GPR_TLS_DECL(foo, initial_value); + GPR_TLS_DECL(foo); Thread locals always have static scope. Initializing a thread local (must be done at library initialization diff --git a/src/core/iomgr/pollset_multipoller_with_poll_posix.c b/src/core/iomgr/pollset_multipoller_with_poll_posix.c index bcef7c35b5da8dd04bf83e40be8e9ad671203f0b..25b7cfda1a16d5cf5e5d609167eb0ffa5ca90b19 100644 --- a/src/core/iomgr/pollset_multipoller_with_poll_posix.c +++ b/src/core/iomgr/pollset_multipoller_with_poll_posix.c @@ -203,7 +203,7 @@ static int multipoll_with_poll_pollset_maybe_work( } static void multipoll_with_poll_pollset_kick(grpc_pollset *p) { - grpc_pollset_kick_kick(&p->kick_state); + grpc_pollset_force_kick(p); } static void multipoll_with_poll_pollset_destroy(grpc_pollset *pollset) { diff --git a/src/core/iomgr/pollset_posix.c b/src/core/iomgr/pollset_posix.c index 03fd94f136424c0091b2ee19d7063b168825b524..60d0dad6d87bc7f34c234e6b9e89f7bdee6cd350 100644 --- a/src/core/iomgr/pollset_posix.c +++ b/src/core/iomgr/pollset_posix.c @@ -47,9 +47,11 @@ #include "src/core/iomgr/fd_posix.h" #include "src/core/iomgr/iomgr_internal.h" #include "src/core/iomgr/socket_utils_posix.h" +#include "src/core/profiling/timers.h" #include <grpc/support/alloc.h> #include <grpc/support/log.h> #include <grpc/support/thd.h> +#include <grpc/support/tls.h> #include <grpc/support/useful.h> static grpc_pollset g_backup_pollset; @@ -57,6 +59,8 @@ static int g_shutdown_backup_poller; static gpr_event g_backup_poller_done; static gpr_event g_backup_pollset_shutdown_done; +GPR_TLS_DECL(g_current_thread_poller); + static void backup_poller(void *p) { gpr_timespec delta = gpr_time_from_millis(100); gpr_timespec last_poll = gpr_now(); @@ -76,17 +80,21 @@ static void backup_poller(void *p) { } void grpc_pollset_kick(grpc_pollset *p) { - if (p->counter) { + if (gpr_tls_get(&g_current_thread_poller) != (gpr_intptr)p && p->counter) { p->vtable->kick(p); } } void grpc_pollset_force_kick(grpc_pollset *p) { - grpc_pollset_kick_kick(&p->kick_state); + if (gpr_tls_get(&g_current_thread_poller) != (gpr_intptr)p) { + grpc_pollset_kick_kick(&p->kick_state); + } } static void kick_using_pollset_kick(grpc_pollset *p) { - grpc_pollset_kick_kick(&p->kick_state); + if (gpr_tls_get(&g_current_thread_poller) != (gpr_intptr)p) { + grpc_pollset_kick_kick(&p->kick_state); + } } /* global state management */ @@ -96,6 +104,8 @@ grpc_pollset *grpc_backup_pollset(void) { return &g_backup_pollset; } void grpc_pollset_global_init(void) { gpr_thd_id id; + gpr_tls_init(&g_current_thread_poller); + /* Initialize kick fd state */ grpc_pollset_kick_global_init(); @@ -129,6 +139,8 @@ void grpc_pollset_global_shutdown(void) { /* destroy the kick pipes */ grpc_pollset_kick_global_destroy(); + + gpr_tls_destroy(&g_current_thread_poller); } /* main interface */ @@ -161,8 +173,8 @@ void grpc_pollset_del_fd(grpc_pollset *pollset, grpc_fd *fd) { int grpc_pollset_work(grpc_pollset *pollset, gpr_timespec deadline) { /* pollset->mu already held */ - gpr_timespec now; - now = gpr_now(); + gpr_timespec now = gpr_now(); + int r; if (gpr_time_cmp(now, deadline) > 0) { return 0; } @@ -172,7 +184,10 @@ int grpc_pollset_work(grpc_pollset *pollset, gpr_timespec deadline) { if (grpc_alarm_check(&pollset->mu, now, &deadline)) { return 1; } - return pollset->vtable->maybe_work(pollset, deadline, now, 1); + gpr_tls_set(&g_current_thread_poller, (gpr_intptr)pollset); + r = pollset->vtable->maybe_work(pollset, deadline, now, 1); + gpr_tls_set(&g_current_thread_poller, 0); + return r; } void grpc_pollset_shutdown(grpc_pollset *pollset, @@ -396,6 +411,7 @@ static int unary_poll_pollset_maybe_work(grpc_pollset *pollset, pfd[1].events = grpc_fd_begin_poll(fd, pollset, POLLIN, POLLOUT, &fd_watcher); r = poll(pfd, GPR_ARRAY_SIZE(pfd), timeout); + GRPC_TIMER_MARK(POLL_FINISHED, r); grpc_fd_end_poll(&fd_watcher); diff --git a/src/core/iomgr/resolve_address_windows.c b/src/core/iomgr/resolve_address_windows.c index ac31dadd9d78faae8fca27433b6f4b4c512d007d..9b416dfe8aa54febf41ebe4fa0964d08db3f5691 100644 --- a/src/core/iomgr/resolve_address_windows.c +++ b/src/core/iomgr/resolve_address_windows.c @@ -65,7 +65,6 @@ grpc_resolved_addresses *grpc_blocking_resolve_address( int s; size_t i; grpc_resolved_addresses *addrs = NULL; - const gpr_timespec start_time = gpr_now(); /* parse name, splitting it into host and port parts */ gpr_split_host_port(name, &host, &port); @@ -108,9 +107,6 @@ grpc_resolved_addresses *grpc_blocking_resolve_address( } { - const gpr_timespec delay = gpr_time_sub(gpr_now(), start_time); - const int delay_ms = - delay.tv_sec * GPR_MS_PER_SEC + delay.tv_nsec / GPR_NS_PER_MS; for (i = 0; i < addrs->naddrs; i++) { char *buf; grpc_sockaddr_to_string(&buf, (struct sockaddr *)&addrs->addrs[i].addr, diff --git a/src/core/iomgr/tcp_server_windows.c b/src/core/iomgr/tcp_server_windows.c index 6e10da97ccb5cf4656952a18b0932275dc599965..fe92846a71622739523f151b4fd27b5c350d9157 100644 --- a/src/core/iomgr/tcp_server_windows.c +++ b/src/core/iomgr/tcp_server_windows.c @@ -192,7 +192,7 @@ static void start_accept(server_port *port) { } /* TODO(jtattermusch): probably a race here, we regularly get use-after-free on server shutdown */ - GPR_ASSERT(port->socket != 0xfeeefeee); + GPR_ASSERT(port->socket != (grpc_winsocket*)0xfeeefeee); success = port->AcceptEx(port->socket->socket, sock, port->addresses, 0, addrlen, addrlen, &bytes_received, &port->socket->read_info.overlapped); diff --git a/src/core/surface/server.c b/src/core/surface/server.c index e7719298701c32a3c784e4662a43f09824eb8f2d..3b129039bbf3a84b5333ffcc8ce15821ed05a7a1 100644 --- a/src/core/surface/server.c +++ b/src/core/surface/server.c @@ -1083,6 +1083,7 @@ static void begin_call(grpc_server *server, call_data *calld, &rc->data.batch.details->host_capacity, calld->host); cpstr(&rc->data.batch.details->method, &rc->data.batch.details->method_capacity, calld->path); + rc->data.batch.details->deadline = calld->deadline; grpc_call_set_completion_queue(calld->call, rc->data.batch.cq_bind); *rc->data.batch.call = calld->call; r->op = GRPC_IOREQ_RECV_INITIAL_METADATA; diff --git a/src/core/tsi/ssl_transport_security.c b/src/core/tsi/ssl_transport_security.c index 018ddc4456399fc79bf502ae9621bfffa733051b..b7c2859a1c9f09140f1ae31a85fc0099837943a3 100644 --- a/src/core/tsi/ssl_transport_security.c +++ b/src/core/tsi/ssl_transport_security.c @@ -34,6 +34,7 @@ #include "src/core/tsi/ssl_transport_security.h" #include <limits.h> +#include <string.h> #include <grpc/support/log.h> #include <grpc/support/sync.h> diff --git a/src/cpp/client/channel.cc b/src/cpp/client/channel.cc index 478f223322b88ecc5b6ef252bf554bd616930075..c541ddfb487ac43f0cb60d95167e2f732326aa7a 100644 --- a/src/cpp/client/channel.cc +++ b/src/cpp/client/channel.cc @@ -33,7 +33,6 @@ #include "src/cpp/client/channel.h" -#include <chrono> #include <memory> #include <grpc/grpc.h> @@ -65,14 +64,14 @@ Call Channel::CreateCall(const RpcMethod& method, ClientContext* context, method.channel_tag() ? grpc_channel_create_registered_call(c_channel_, cq->cq(), method.channel_tag(), - context->RawDeadline()) + context->raw_deadline()) : grpc_channel_create_call(c_channel_, cq->cq(), method.name(), context->authority().empty() ? target_.c_str() : context->authority().c_str(), - context->RawDeadline()); + context->raw_deadline()); GRPC_TIMER_MARK(CALL_CREATED, c_call); - context->set_call(c_call); + context->set_call(c_call, shared_from_this()); return Call(c_call, this, cq); } diff --git a/src/cpp/client/channel.h b/src/cpp/client/channel.h index cd239247c8270c9518f39d27a068515c5dd31353..46009d20bad7692f3af5a0a74b6c3c0f354da80c 100644 --- a/src/cpp/client/channel.h +++ b/src/cpp/client/channel.h @@ -51,6 +51,7 @@ class Credentials; class StreamContextInterface; class Channel GRPC_FINAL : public GrpcLibrary, + public std::enable_shared_from_this<Channel>, public ChannelInterface { public: Channel(const grpc::string& target, grpc_channel* c_channel); diff --git a/src/cpp/client/client_context.cc b/src/cpp/client/client_context.cc index de9f8c7201da6e770f4f12086d1a9cb0ee2b21ae..70c9cb4c3b4edd8d151391fb2b5e53a27a1afc77 100644 --- a/src/cpp/client/client_context.cc +++ b/src/cpp/client/client_context.cc @@ -34,9 +34,7 @@ #include <grpc++/client_context.h> #include <grpc/grpc.h> -#include "src/cpp/util/time.h" - -using std::chrono::system_clock; +#include <grpc++/time.h> namespace grpc { @@ -44,7 +42,7 @@ ClientContext::ClientContext() : initial_metadata_received_(false), call_(nullptr), cq_(nullptr), - absolute_deadline_(gpr_inf_future) {} + deadline_(gpr_inf_future) {} ClientContext::~ClientContext() { if (call_) { @@ -64,15 +62,6 @@ ClientContext::~ClientContext() { } } -void ClientContext::set_absolute_deadline( - const system_clock::time_point& deadline) { - Timepoint2Timespec(deadline, &absolute_deadline_); -} - -system_clock::time_point ClientContext::absolute_deadline() { - return Timespec2Timepoint(absolute_deadline_); -} - void ClientContext::AddMetadata(const grpc::string& meta_key, const grpc::string& meta_value) { send_initial_metadata_.insert(std::make_pair(meta_key, meta_value)); diff --git a/src/cpp/client/secure_credentials.cc b/src/cpp/client/secure_credentials.cc index 0a73b2c0f676b9154239d784ac156a28f466a941..48bf7430b27bf924a1f689e86b75dfad975a1268 100644 --- a/src/cpp/client/secure_credentials.cc +++ b/src/cpp/client/secure_credentials.cc @@ -81,27 +81,27 @@ std::unique_ptr<Credentials> ComputeEngineCredentials() { // Builds service account credentials. std::unique_ptr<Credentials> ServiceAccountCredentials( const grpc::string& json_key, const grpc::string& scope, - std::chrono::seconds token_lifetime) { - if (token_lifetime.count() <= 0) { + long token_lifetime_seconds) { + if (token_lifetime_seconds <= 0) { gpr_log(GPR_ERROR, "Trying to create ServiceAccountCredentials " "with non-positive lifetime"); return WrapCredentials(nullptr); } - gpr_timespec lifetime = gpr_time_from_seconds(token_lifetime.count()); + gpr_timespec lifetime = gpr_time_from_seconds(token_lifetime_seconds); return WrapCredentials(grpc_service_account_credentials_create( json_key.c_str(), scope.c_str(), lifetime)); } // Builds JWT credentials. std::unique_ptr<Credentials> JWTCredentials( - const grpc::string& json_key, std::chrono::seconds token_lifetime) { - if (token_lifetime.count() <= 0) { + const grpc::string& json_key, long token_lifetime_seconds) { + if (token_lifetime_seconds <= 0) { gpr_log(GPR_ERROR, "Trying to create JWTCredentials with non-positive lifetime"); return WrapCredentials(nullptr); } - gpr_timespec lifetime = gpr_time_from_seconds(token_lifetime.count()); + gpr_timespec lifetime = gpr_time_from_seconds(token_lifetime_seconds); return WrapCredentials( grpc_jwt_credentials_create(json_key.c_str(), lifetime)); } diff --git a/src/cpp/common/completion_queue.cc b/src/cpp/common/completion_queue.cc index cdbe042d213a8008175494132bfde753bab9d4f7..07122db4a58c1fec9f65849556f43e559d61648f 100644 --- a/src/cpp/common/completion_queue.cc +++ b/src/cpp/common/completion_queue.cc @@ -36,7 +36,7 @@ #include <grpc/grpc.h> #include <grpc/support/log.h> -#include "src/cpp/util/time.h" +#include <grpc++/time.h> namespace grpc { @@ -77,13 +77,6 @@ CompletionQueue::NextStatus CompletionQueue::AsyncNextInternal( } } -CompletionQueue::NextStatus CompletionQueue::AsyncNext( - void** tag, bool* ok, std::chrono::system_clock::time_point deadline) { - gpr_timespec gpr_deadline; - Timepoint2Timespec(deadline, &gpr_deadline); - return AsyncNextInternal(tag, ok, gpr_deadline); -} - bool CompletionQueue::Pluck(CompletionQueueTag* tag) { std::unique_ptr<grpc_event, EventDeleter> ev; diff --git a/src/cpp/server/server.cc b/src/cpp/server/server.cc index b3cd1fdd74bb8c6ce34aec1ed4d2bbf810424d13..1d39378595c7688f846254cf765c49092edfc866 100644 --- a/src/cpp/server/server.cc +++ b/src/cpp/server/server.cc @@ -45,10 +45,10 @@ #include <grpc++/server_context.h> #include <grpc++/server_credentials.h> #include <grpc++/thread_pool_interface.h> +#include <grpc++/time.h> #include "src/core/profiling/timers.h" #include "src/cpp/proto/proto_utils.h" -#include "src/cpp/util/time.h" namespace grpc { @@ -353,7 +353,7 @@ class Server::AsyncRequest GRPC_FINAL : public CompletionQueueTag { ServerContext* ctx = ctx_ ? ctx_ : generic_ctx_; GPR_ASSERT(ctx); if (*status) { - ctx->deadline_ = Timespec2Timepoint(call_details_.deadline); + ctx->deadline_ = call_details_.deadline; for (size_t i = 0; i < array_.count; i++) { ctx->client_metadata_.insert(std::make_pair( grpc::string(array_.metadata[i].key), diff --git a/src/cpp/server/server_context.cc b/src/cpp/server/server_context.cc index ffd6d30d5d41ccd86a115dd725f7d3cbae1d5539..6b5e41d0a821e3788353ca55dbaf5b96357bd9c9 100644 --- a/src/cpp/server/server_context.cc +++ b/src/cpp/server/server_context.cc @@ -33,11 +33,11 @@ #include <grpc++/server_context.h> -#include <grpc++/impl/call.h> -#include <grpc++/impl/sync.h> #include <grpc/grpc.h> #include <grpc/support/log.h> -#include "src/cpp/util/time.h" +#include <grpc++/impl/call.h> +#include <grpc++/impl/sync.h> +#include <grpc++/time.h> namespace grpc { @@ -99,7 +99,7 @@ ServerContext::ServerContext() ServerContext::ServerContext(gpr_timespec deadline, grpc_metadata* metadata, size_t metadata_count) : completion_op_(nullptr), - deadline_(Timespec2Timepoint(deadline)), + deadline_(deadline), call_(nullptr), cq_(nullptr), sent_initial_metadata_(false) { diff --git a/src/cpp/util/time.cc b/src/cpp/util/time.cc index 059ea72abf69271e5337ae6c23aaa4a2e8005ed4..1fef2a56deff8d53e6f7561fd84a25c28038e0d3 100644 --- a/src/cpp/util/time.cc +++ b/src/cpp/util/time.cc @@ -31,9 +31,12 @@ * */ -#include "src/cpp/util/time.h" +#include <grpc++/config.h> + +#ifndef GRPC_CXX0X_NO_CHRONO #include <grpc/support/time.h> +#include <grpc++/time.h> using std::chrono::duration_cast; using std::chrono::nanoseconds; @@ -68,3 +71,5 @@ system_clock::time_point Timespec2Timepoint(gpr_timespec t) { } } // namespace grpc + +#endif // !GRPC_CXX0X_NO_CHRONO diff --git a/templates/Makefile.template b/templates/Makefile.template index 21c29454c3e29342378b5cb61f65f93d4894d1d9..e51af39348e469daac938499fe4a80d1a19ad8f9 100644 --- a/templates/Makefile.template +++ b/templates/Makefile.template @@ -1208,17 +1208,10 @@ endif % if lib.get('secure', 'check') == 'yes' or lib.get('secure', 'check') == 'check': endif % endif - % for src in lib.src: -% if not proto_re.match(src): -$(OBJDIR)/$(CONFIG)/${os.path.splitext(src)[0]}.o: \ -% for src2 in lib.src: -% if proto_re.match(src2): - ${proto_to_cc(src2)}\ +% if not proto_re.match(src) and any(proto_re.match(src2) for src2 in lib.src): +$(OBJDIR)/$(CONFIG)/${os.path.splitext(src)[0]}.o: ${' '.join(proto_to_cc(src2) for src2 in lib.src if proto_re.match(src2))} % endif -% endfor -% endif - % endfor </%def> diff --git a/test/cpp/client/credentials_test.cc b/test/cpp/client/credentials_test.cc index 883f1dca7b919e11303802189be876b4712ec412..6840418989cb1bad0bf524bbfba8b895e7a8eeab 100644 --- a/test/cpp/client/credentials_test.cc +++ b/test/cpp/client/credentials_test.cc @@ -47,7 +47,7 @@ class CredentialsTest : public ::testing::Test { TEST_F(CredentialsTest, InvalidServiceAccountCreds) { std::unique_ptr<Credentials> bad1 = - ServiceAccountCredentials("", "", std::chrono::seconds(1)); + ServiceAccountCredentials("", "", 1); EXPECT_EQ(nullptr, bad1.get()); } diff --git a/test/cpp/end2end/async_end2end_test.cc b/test/cpp/end2end/async_end2end_test.cc index e3cbfd6f8df38ecb9d48d0561be6537c76873a25..6c0dfadbb912b644487e98e7bc459227eff8b9db 100644 --- a/test/cpp/end2end/async_end2end_test.cc +++ b/test/cpp/end2end/async_end2end_test.cc @@ -31,13 +31,12 @@ * */ -#include <chrono> #include <memory> +#include "test/core/util/port.h" #include "test/core/util/test_config.h" #include "test/cpp/util/echo_duplicate.grpc.pb.h" #include "test/cpp/util/echo.grpc.pb.h" -#include "src/cpp/util/time.h" #include <grpc++/async_unary_call.h> #include <grpc++/channel_arguments.h> #include <grpc++/channel_interface.h> @@ -50,7 +49,7 @@ #include <grpc++/server_credentials.h> #include <grpc++/status.h> #include <grpc++/stream.h> -#include "test/core/util/port.h" +#include <grpc++/time.h> #include <gtest/gtest.h> #include <grpc/grpc.h> diff --git a/test/cpp/end2end/end2end_test.cc b/test/cpp/end2end/end2end_test.cc index dd2655251658bec37ccf92bd9c257fac381573c5..5e89490ecb03fc04a3c342da76bd49543904ef72 100644 --- a/test/cpp/end2end/end2end_test.cc +++ b/test/cpp/end2end/end2end_test.cc @@ -31,13 +31,12 @@ * */ -#include <chrono> #include <thread> +#include "test/core/util/port.h" #include "test/core/util/test_config.h" #include "test/cpp/util/echo_duplicate.grpc.pb.h" #include "test/cpp/util/echo.grpc.pb.h" -#include "src/cpp/util/time.h" #include "src/cpp/server/thread_pool.h" #include <grpc++/channel_arguments.h> #include <grpc++/channel_interface.h> @@ -50,7 +49,7 @@ #include <grpc++/server_credentials.h> #include <grpc++/status.h> #include <grpc++/stream.h> -#include "test/core/util/port.h" +#include <grpc++/time.h> #include <gtest/gtest.h> #include <grpc/grpc.h> @@ -72,8 +71,8 @@ void MaybeEchoDeadline(ServerContext* context, const EchoRequest* request, EchoResponse* response) { if (request->has_param() && request->param().echo_deadline()) { gpr_timespec deadline = gpr_inf_future; - if (context->absolute_deadline() != system_clock::time_point::max()) { - Timepoint2Timespec(context->absolute_deadline(), &deadline); + if (context->deadline() != system_clock::time_point::max()) { + Timepoint2Timespec(context->deadline(), &deadline); } response->mutable_param()->set_request_deadline(deadline.tv_sec); } @@ -245,7 +244,7 @@ TEST_F(End2endTest, RpcDeadlineExpires) { ClientContext context; std::chrono::system_clock::time_point deadline = std::chrono::system_clock::now() + std::chrono::microseconds(10); - context.set_absolute_deadline(deadline); + context.set_deadline(deadline); Status s = stub_->Echo(&context, request, &response); EXPECT_EQ(StatusCode::DEADLINE_EXCEEDED, s.code()); } @@ -260,7 +259,7 @@ TEST_F(End2endTest, RpcLongDeadline) { ClientContext context; std::chrono::system_clock::time_point deadline = std::chrono::system_clock::now() + std::chrono::hours(1); - context.set_absolute_deadline(deadline); + context.set_deadline(deadline); Status s = stub_->Echo(&context, request, &response); EXPECT_EQ(response.message(), request.message()); EXPECT_TRUE(s.IsOk()); @@ -277,7 +276,7 @@ TEST_F(End2endTest, EchoDeadline) { ClientContext context; std::chrono::system_clock::time_point deadline = std::chrono::system_clock::now() + std::chrono::seconds(100); - context.set_absolute_deadline(deadline); + context.set_deadline(deadline); Status s = stub_->Echo(&context, request, &response); EXPECT_EQ(response.message(), request.message()); EXPECT_TRUE(s.IsOk()); @@ -428,7 +427,7 @@ TEST_F(End2endTest, DiffPackageServices) { // rpc and stream should fail on bad credentials. TEST_F(End2endTest, BadCredentials) { std::unique_ptr<Credentials> bad_creds = - ServiceAccountCredentials("", "", std::chrono::seconds(1)); + ServiceAccountCredentials("", "", 1); EXPECT_EQ(nullptr, bad_creds.get()); std::shared_ptr<ChannelInterface> channel = CreateChannel(server_address_.str(), bad_creds, ChannelArguments()); diff --git a/test/cpp/end2end/generic_end2end_test.cc b/test/cpp/end2end/generic_end2end_test.cc index e70a1cb68b5ebb94379f3c5473c778583a5153cc..103f613f70efa23b1b7edab8fe733a812cc9d071 100644 --- a/test/cpp/end2end/generic_end2end_test.cc +++ b/test/cpp/end2end/generic_end2end_test.cc @@ -31,11 +31,9 @@ * */ -#include <chrono> #include <memory> #include "src/cpp/proto/proto_utils.h" -#include "src/cpp/util/time.h" #include "test/core/util/port.h" #include "test/core/util/test_config.h" #include "test/cpp/util/echo.grpc.pb.h" @@ -55,6 +53,7 @@ #include <grpc++/slice.h> #include <grpc++/status.h> #include <grpc++/stream.h> +#include <grpc++/time.h> #include <gtest/gtest.h> #include <grpc/grpc.h> diff --git a/test/cpp/interop/client_helper.cc b/test/cpp/interop/client_helper.cc index b4d5b88de538ec057e4567773ee5d5470f80fc86..a1dea383e6a3b683fbb8253a63bc69ef06637a48 100644 --- a/test/cpp/interop/client_helper.cc +++ b/test/cpp/interop/client_helper.cc @@ -85,8 +85,9 @@ std::shared_ptr<ChannelInterface> CreateChannelForTestCase( std::unique_ptr<Credentials> creds; GPR_ASSERT(FLAGS_enable_ssl); grpc::string json_key = GetServiceAccountJsonKey(); + std::chrono::seconds token_lifetime = std::chrono::hours(1); creds = ServiceAccountCredentials(json_key, FLAGS_oauth_scope, - std::chrono::hours(1)); + token_lifetime.count()); return CreateTestChannel(host_port, FLAGS_server_host_override, FLAGS_enable_ssl, FLAGS_use_prod_roots, creds); } else if (test_case == "compute_engine_creds") { @@ -99,7 +100,8 @@ std::shared_ptr<ChannelInterface> CreateChannelForTestCase( std::unique_ptr<Credentials> creds; GPR_ASSERT(FLAGS_enable_ssl); grpc::string json_key = GetServiceAccountJsonKey(); - creds = JWTCredentials(json_key, std::chrono::hours(1)); + std::chrono::seconds token_lifetime = std::chrono::hours(1); + creds = JWTCredentials(json_key, token_lifetime.count()); return CreateTestChannel(host_port, FLAGS_server_host_override, FLAGS_enable_ssl, FLAGS_use_prod_roots, creds); } else { diff --git a/test/cpp/util/time_test.cc b/test/cpp/util/time_test.cc index 4641fdb4daec90a21a19cfb8920779c857c74b01..a3cfb1c961c56b5d1fc6d99e43f56b98e5ba5dc3 100644 --- a/test/cpp/util/time_test.cc +++ b/test/cpp/util/time_test.cc @@ -31,11 +31,8 @@ * */ -#include "src/cpp/util/time.h" - -#include <chrono> - #include <grpc/support/time.h> +#include <grpc++/time.h> #include <gtest/gtest.h> using std::chrono::duration_cast; diff --git a/tools/run_tests/build_csharp.sh b/tools/run_tests/build_csharp.sh index 8227ad37bca5cd5f4ce06c32876106d4292f5df8..eae7bd50405aa37fbacbda8bfe62a4efdc87d931 100755 --- a/tools/run_tests/build_csharp.sh +++ b/tools/run_tests/build_csharp.sh @@ -30,9 +30,21 @@ set -ex +if [ "$CONFIG" = "dbg" ] +then + MSBUILD_CONFIG="Debug" +else + MSBUILD_CONFIG="Release" +fi + # change to gRPC repo root cd $(dirname $0)/../.. root=`pwd` -xbuild src/csharp/Grpc.sln +if [ -n "$NUGET" ] +then + $NUGET restore src/csharp/Grpc.sln +fi + +xbuild /p:Configuration=$MSBUILD_CONFIG src/csharp/Grpc.sln diff --git a/tools/run_tests/run_csharp.sh b/tools/run_tests/run_csharp.sh index d10a41ae9f4858bd5d2bcd410cf79b2d1e8a2d4c..752e83ef70547a7bce5e6dc258eacaf2a0accb4d 100755 --- a/tools/run_tests/run_csharp.sh +++ b/tools/run_tests/run_csharp.sh @@ -30,17 +30,22 @@ set -ex +CONFIG=${CONFIG:-opt} + +if [ "$CONFIG" = "dbg" ] +then + MSBUILD_CONFIG="Debug" +else + MSBUILD_CONFIG="Release" +fi + # change to gRPC repo root cd $(dirname $0)/../.. root=`pwd` cd src/csharp -# TODO: All the tests run pretty fast. In the future, we might need to teach -# run_tests.py about separate tests to make them run in parallel. -for assembly_name in Grpc.Core.Tests Grpc.Examples.Tests Grpc.IntegrationTesting -do - LD_LIBRARY_PATH=$root/libs/dbg nunit-console -labels $assembly_name/bin/Debug/$assembly_name.dll -done +export LD_LIBRARY_PATH=$root/libs/$CONFIG +nunit-console -labels "$1/bin/$MSBUILD_CONFIG/$1.dll" diff --git a/tools/run_tests/run_tests.py b/tools/run_tests/run_tests.py index 5165983d970589492fc85c3af6779c29171897de..50fdec7f5f2a8e659a14245ee2c7a5fb7f4db445 100755 --- a/tools/run_tests/run_tests.py +++ b/tools/run_tests/run_tests.py @@ -61,7 +61,7 @@ class SimpleConfig(object): self.environ = environ self.environ['CONFIG'] = config - def job_spec(self, cmdline, hash_targets): + def job_spec(self, cmdline, hash_targets, shortname=None): """Construct a jobset.JobSpec for a test under this config Args: @@ -74,6 +74,7 @@ class SimpleConfig(object): be listed """ return jobset.JobSpec(cmdline=cmdline, + shortname=shortname, environ=self.environ, hash_targets=hash_targets if self.allow_hashing else None) @@ -218,9 +219,13 @@ class RubyLanguage(object): class CSharpLanguage(object): - def test_specs(self, config, travis): - return [config.job_spec('tools/run_tests/run_csharp.sh', None)] + assemblies = ['Grpc.Core.Tests', + 'Grpc.Examples.Tests', + 'Grpc.IntegrationTesting'] + return [config.job_spec(['tools/run_tests/run_csharp.sh', assembly], + None, shortname=assembly) + for assembly in assemblies ] def make_targets(self): return ['grpc_csharp_ext'] diff --git a/vsprojects/grpc++/grpc++.vcxproj b/vsprojects/grpc++/grpc++.vcxproj index 07c018f111084a18fb85aa2a1c34b39dfff903b1..ac3191a8b2d0b1bca169b3a11657f22194f1b266 100644 --- a/vsprojects/grpc++/grpc++.vcxproj +++ b/vsprojects/grpc++/grpc++.vcxproj @@ -116,6 +116,7 @@ <ClInclude Include="..\..\include\grpc++\status_code_enum.h" /> <ClInclude Include="..\..\include\grpc++\stream.h" /> <ClInclude Include="..\..\include\grpc++\thread_pool_interface.h" /> + <ClInclude Include="..\..\include\grpc++\time.h" /> </ItemGroup> <ItemGroup> <ClInclude Include="..\..\src\cpp\client\secure_credentials.h" /> @@ -123,7 +124,6 @@ <ClInclude Include="..\..\src\cpp\client\channel.h" /> <ClInclude Include="..\..\src\cpp\proto\proto_utils.h" /> <ClInclude Include="..\..\src\cpp\server\thread_pool.h" /> - <ClInclude Include="..\..\src\cpp\util\time.h" /> </ItemGroup> <ItemGroup> <ClCompile Include="..\..\src\cpp\client\secure_credentials.cc"> diff --git a/vsprojects/grpc++/grpc++.vcxproj.filters b/vsprojects/grpc++/grpc++.vcxproj.filters index 46b33bb8a66393a860d5ed066b50f070119c80ae..d5eeb7179074badce1ff38f0f4c2cfb0a1eea5ad 100644 --- a/vsprojects/grpc++/grpc++.vcxproj.filters +++ b/vsprojects/grpc++/grpc++.vcxproj.filters @@ -180,6 +180,9 @@ <ClInclude Include="..\..\include\grpc++\thread_pool_interface.h"> <Filter>include\grpc++</Filter> </ClInclude> + <ClInclude Include="..\..\include\grpc++\time.h"> + <Filter>include\grpc++</Filter> + </ClInclude> </ItemGroup> <ItemGroup> <ClInclude Include="..\..\src\cpp\client\secure_credentials.h"> @@ -197,9 +200,6 @@ <ClInclude Include="..\..\src\cpp\server\thread_pool.h"> <Filter>src\cpp\server</Filter> </ClInclude> - <ClInclude Include="..\..\src\cpp\util\time.h"> - <Filter>src\cpp\util</Filter> - </ClInclude> </ItemGroup> <ItemGroup>