| # Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. |
| # |
| # Use of this source code is governed by a BSD-style license |
| # that can be found in the LICENSE file in the root of the source |
| # tree. An additional intellectual property rights grant can be found |
| # in the file PATENTS. All contributing project authors may |
| # be found in the AUTHORS file in the root of the source tree. |
| |
| import("../webrtc.gni") |
| |
| group("p2p") { |
| public_deps = [ |
| ":libstunprober", |
| ":rtc_p2p", |
| ] |
| } |
| |
| rtc_library("rtc_p2p") { |
| visibility = [ "*" ] |
| sources = [ |
| "base/async_stun_tcp_socket.cc", |
| "base/async_stun_tcp_socket.h", |
| "base/basic_async_resolver_factory.cc", |
| "base/basic_async_resolver_factory.h", |
| "base/basic_ice_controller.cc", |
| "base/basic_ice_controller.h", |
| "base/basic_packet_socket_factory.cc", |
| "base/basic_packet_socket_factory.h", |
| "base/candidate_pair_interface.h", |
| "base/connection.cc", |
| "base/connection.h", |
| "base/connection_info.cc", |
| "base/connection_info.h", |
| "base/default_ice_transport_factory.cc", |
| "base/default_ice_transport_factory.h", |
| "base/dtls_transport.cc", |
| "base/dtls_transport.h", |
| "base/dtls_transport_factory.h", |
| "base/dtls_transport_internal.cc", |
| "base/dtls_transport_internal.h", |
| "base/ice_controller_factory_interface.h", |
| "base/ice_controller_interface.cc", |
| "base/ice_controller_interface.h", |
| "base/ice_credentials_iterator.cc", |
| "base/ice_credentials_iterator.h", |
| "base/ice_transport_internal.cc", |
| "base/ice_transport_internal.h", |
| "base/mdns_message.cc", |
| "base/mdns_message.h", |
| "base/p2p_constants.cc", |
| "base/p2p_constants.h", |
| "base/p2p_transport_channel.cc", |
| "base/p2p_transport_channel.h", |
| "base/p2p_transport_channel_ice_field_trials.h", |
| "base/packet_transport_internal.cc", |
| "base/packet_transport_internal.h", |
| "base/port.cc", |
| "base/port.h", |
| "base/port_allocator.cc", |
| "base/port_allocator.h", |
| "base/port_interface.cc", |
| "base/port_interface.h", |
| "base/pseudo_tcp.cc", |
| "base/pseudo_tcp.h", |
| "base/regathering_controller.cc", |
| "base/regathering_controller.h", |
| "base/stun_port.cc", |
| "base/stun_port.h", |
| "base/stun_request.cc", |
| "base/stun_request.h", |
| "base/tcp_port.cc", |
| "base/tcp_port.h", |
| "base/transport_description.cc", |
| "base/transport_description.h", |
| "base/transport_description_factory.cc", |
| "base/transport_description_factory.h", |
| "base/transport_info.h", |
| "base/turn_port.cc", |
| "base/turn_port.h", |
| "base/udp_port.h", |
| "client/basic_port_allocator.cc", |
| "client/basic_port_allocator.h", |
| "client/relay_port_factory_interface.h", |
| "client/turn_port_factory.cc", |
| "client/turn_port_factory.h", |
| ] |
| |
| deps = [ |
| "../api:array_view", |
| "../api:async_dns_resolver", |
| "../api:libjingle_peerconnection_api", |
| "../api:packet_socket_factory", |
| "../api:rtc_error", |
| "../api:scoped_refptr", |
| "../api:sequence_checker", |
| "../api/crypto:options", |
| "../api/rtc_event_log", |
| "../api/task_queue", |
| "../api/transport:enums", |
| "../api/transport:stun_types", |
| "../logging:ice_log", |
| "../rtc_base", |
| "../rtc_base:async_resolver_interface", |
| "../rtc_base:async_socket", |
| "../rtc_base:callback_list", |
| "../rtc_base:checks", |
| "../rtc_base:ip_address", |
| "../rtc_base:net_helpers", |
| "../rtc_base:network_constants", |
| "../rtc_base:rtc_numerics", |
| "../rtc_base:socket", |
| "../rtc_base:socket_address", |
| "../rtc_base:socket_server", |
| "../rtc_base:threading", |
| "../rtc_base/experiments:field_trial_parser", |
| "../rtc_base/system:no_unique_address", |
| |
| # Needed by pseudo_tcp, which should move to a separate target. |
| "../rtc_base:safe_minmax", |
| "../rtc_base:weak_ptr", |
| "../rtc_base/memory:fifo_buffer", |
| "../rtc_base/network:sent_packet", |
| "../rtc_base/synchronization:mutex", |
| "../rtc_base/system:rtc_export", |
| "../rtc_base/task_utils:pending_task_safety_flag", |
| "../rtc_base/task_utils:to_queued_task", |
| "../rtc_base/third_party/base64", |
| "../rtc_base/third_party/sigslot", |
| "../system_wrappers:field_trial", |
| "../system_wrappers:metrics", |
| ] |
| absl_deps = [ |
| "//third_party/abseil-cpp/absl/algorithm:container", |
| "//third_party/abseil-cpp/absl/memory", |
| "//third_party/abseil-cpp/absl/strings", |
| "//third_party/abseil-cpp/absl/types:optional", |
| ] |
| } |
| |
| if (rtc_include_tests) { |
| rtc_library("fake_ice_transport") { |
| testonly = true |
| visibility = [ "*" ] |
| sources = [ "base/fake_ice_transport.h" ] |
| deps = [ |
| ":rtc_p2p", |
| "../api:libjingle_peerconnection_api", |
| "../rtc_base", |
| "../rtc_base:rtc_base_approved", |
| "../rtc_base/task_utils:pending_task_safety_flag", |
| "../rtc_base/task_utils:to_queued_task", |
| ] |
| absl_deps = [ |
| "//third_party/abseil-cpp/absl/algorithm:container", |
| "//third_party/abseil-cpp/absl/types:optional", |
| ] |
| } |
| |
| rtc_library("fake_port_allocator") { |
| testonly = true |
| visibility = [ "*" ] |
| sources = [ "base/fake_port_allocator.h" ] |
| deps = [ |
| ":rtc_p2p", |
| "../rtc_base", |
| "../rtc_base:net_helpers", |
| "../rtc_base:threading", |
| ] |
| } |
| |
| rtc_library("p2p_test_utils") { |
| testonly = true |
| sources = [ |
| "base/fake_dtls_transport.h", |
| "base/fake_packet_transport.h", |
| "base/mock_async_resolver.h", |
| "base/mock_ice_transport.h", |
| "base/test_stun_server.cc", |
| "base/test_stun_server.h", |
| "base/test_turn_customizer.h", |
| "base/test_turn_server.h", |
| ] |
| deps = [ |
| ":fake_ice_transport", |
| ":fake_port_allocator", |
| ":p2p_server_utils", |
| ":rtc_p2p", |
| "../api:libjingle_peerconnection_api", |
| "../api:packet_socket_factory", |
| "../api:sequence_checker", |
| "../api/crypto:options", |
| "../api/transport:stun_types", |
| "../rtc_base", |
| "../rtc_base:async_resolver_interface", |
| "../rtc_base:async_socket", |
| "../rtc_base:gunit_helpers", |
| "../rtc_base:rtc_base_approved", |
| "../rtc_base:rtc_base_tests_utils", |
| "../rtc_base:socket_address", |
| "../rtc_base:socket_server", |
| "../rtc_base:threading", |
| "../rtc_base/third_party/sigslot", |
| "../test:test_support", |
| ] |
| absl_deps = [ |
| "//third_party/abseil-cpp/absl/algorithm:container", |
| "//third_party/abseil-cpp/absl/types:optional", |
| ] |
| } |
| |
| rtc_library("rtc_p2p_unittests") { |
| testonly = true |
| |
| sources = [ |
| "base/async_stun_tcp_socket_unittest.cc", |
| "base/basic_async_resolver_factory_unittest.cc", |
| "base/dtls_transport_unittest.cc", |
| "base/ice_credentials_iterator_unittest.cc", |
| "base/mdns_message_unittest.cc", |
| "base/p2p_transport_channel_unittest.cc", |
| "base/port_allocator_unittest.cc", |
| "base/port_unittest.cc", |
| "base/pseudo_tcp_unittest.cc", |
| "base/regathering_controller_unittest.cc", |
| "base/stun_port_unittest.cc", |
| "base/stun_request_unittest.cc", |
| "base/stun_server_unittest.cc", |
| "base/tcp_port_unittest.cc", |
| "base/transport_description_factory_unittest.cc", |
| "base/transport_description_unittest.cc", |
| "base/turn_port_unittest.cc", |
| "base/turn_server_unittest.cc", |
| "client/basic_port_allocator_unittest.cc", |
| ] |
| deps = [ |
| ":fake_ice_transport", |
| ":fake_port_allocator", |
| ":p2p_server_utils", |
| ":p2p_test_utils", |
| ":rtc_p2p", |
| "../api:libjingle_peerconnection_api", |
| "../api:mock_async_dns_resolver", |
| "../api:packet_socket_factory", |
| "../api:scoped_refptr", |
| "../api/transport:stun_types", |
| "../api/units:time_delta", |
| "../rtc_base", |
| "../rtc_base:async_socket", |
| "../rtc_base:checks", |
| "../rtc_base:gunit_helpers", |
| "../rtc_base:ip_address", |
| "../rtc_base:net_helpers", |
| "../rtc_base:network_constants", |
| "../rtc_base:rtc_base_approved", |
| "../rtc_base:rtc_base_tests_utils", |
| "../rtc_base:socket", |
| "../rtc_base:socket_address", |
| "../rtc_base:testclient", |
| "../rtc_base:threading", |
| "../rtc_base/network:sent_packet", |
| "../rtc_base/third_party/sigslot", |
| "../system_wrappers:metrics", |
| "../test:field_trial", |
| "../test:test_support", |
| "//testing/gtest", |
| ] |
| absl_deps = [ |
| "//third_party/abseil-cpp/absl/algorithm:container", |
| "//third_party/abseil-cpp/absl/memory", |
| "//third_party/abseil-cpp/absl/types:optional", |
| ] |
| } |
| } |
| |
| rtc_library("p2p_server_utils") { |
| testonly = true |
| sources = [ |
| "base/stun_server.cc", |
| "base/stun_server.h", |
| "base/turn_server.cc", |
| "base/turn_server.h", |
| ] |
| deps = [ |
| ":rtc_p2p", |
| "../api:packet_socket_factory", |
| "../api:sequence_checker", |
| "../api/transport:stun_types", |
| "../rtc_base", |
| "../rtc_base:checks", |
| "../rtc_base:rtc_base_tests_utils", |
| "../rtc_base:socket_address", |
| "../rtc_base:threading", |
| "../rtc_base/task_utils:to_queued_task", |
| "../rtc_base/third_party/sigslot", |
| ] |
| absl_deps = [ |
| "//third_party/abseil-cpp/absl/algorithm:container", |
| "//third_party/abseil-cpp/absl/memory", |
| ] |
| } |
| |
| rtc_library("libstunprober") { |
| visibility = [ "*" ] |
| sources = [ |
| "stunprober/stun_prober.cc", |
| "stunprober/stun_prober.h", |
| ] |
| |
| deps = [ |
| ":rtc_p2p", |
| "../api:packet_socket_factory", |
| "../api:sequence_checker", |
| "../api/transport:stun_types", |
| "../rtc_base", |
| "../rtc_base:async_resolver_interface", |
| "../rtc_base:checks", |
| "../rtc_base:ip_address", |
| "../rtc_base:socket_address", |
| "../rtc_base:threading", |
| "../rtc_base/system:rtc_export", |
| "../rtc_base/task_utils:pending_task_safety_flag", |
| "../rtc_base/task_utils:to_queued_task", |
| ] |
| } |
| |
| if (rtc_include_tests) { |
| rtc_library("libstunprober_unittests") { |
| testonly = true |
| |
| sources = [ "stunprober/stun_prober_unittest.cc" ] |
| deps = [ |
| ":libstunprober", |
| ":p2p_test_utils", |
| ":rtc_p2p", |
| "../rtc_base", |
| "../rtc_base:checks", |
| "../rtc_base:gunit_helpers", |
| "../rtc_base:ip_address", |
| "../rtc_base:rtc_base_tests_utils", |
| "../test:test_support", |
| "//testing/gtest", |
| ] |
| } |
| } |