blob: c8506fccb5defca1ec630415d4f32e2d64eee1fd [file] [log] [blame]
# Copyright 2018 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//third_party/protobuf/proto_library.gni")
config("chromium_quic_config") {
cflags_cc = [
"-Wno-error=attributes",
"-Wno-unused-const-variable",
]
if (is_clang) {
cflags_cc += [
"-Wno-defaulted-function-deleted",
"-Wno-c++98-compat-extra-semi",
"-Wno-extra-semi",
]
# The clang version on the Mac OS X build bots is old, causing them to
# not recognize the defaulted-function-deleted warning. This flag allows
# us to build on both older and newer Mac OS X Clang toolchains.
if (is_mac) {
cflags_cc += [ "-Wno-unknown-warning-option" ]
}
}
if (is_gcc) {
cflags_cc += [
"-Wno-dangling-else",
"-Wno-return-type",
"-Wno-unused-but-set-variable",
# Don't warn about "maybe" uninitialized. Clang doesn't include this
# in -Wall but gcc does, and it gives false positives.
"-Wno-maybe-uninitialized",
]
}
configs = [ "//third_party/protobuf:protobuf_config" ]
include_dirs = [
"//third_party/chromium_quic/src",
"../boringssl/src/include",
"$root_gen_dir/third_party/chromium_quic/src",
"build/",
"//",
]
}
source_set("chromium_quic") {
deps = [
":core",
":platform",
":quartc",
]
}
executable("quic_demo_client") {
sources = [
"demo/client.cc",
"demo/delegates.cc",
"demo/delegates.h",
]
deps = [
":chromium_quic",
]
configs -= [ "//build:default_include_dirs" ]
configs += [ ":chromium_quic_config" ]
}
executable("quic_demo_server") {
sources = [
"demo/delegates.cc",
"demo/delegates.h",
"demo/server.cc",
]
deps = [
":chromium_quic",
]
configs -= [ "//build:default_include_dirs" ]
configs += [ ":chromium_quic_config" ]
}
source_set("core") {
sources = [
"src/net/third_party/quic/core/chlo_extractor.cc",
"src/net/third_party/quic/core/chlo_extractor.h",
"src/net/third_party/quic/core/packet_number_indexed_queue.h",
"src/net/third_party/quic/core/quic_ack_listener_interface.cc",
"src/net/third_party/quic/core/quic_ack_listener_interface.h",
"src/net/third_party/quic/core/quic_alarm.cc",
"src/net/third_party/quic/core/quic_alarm.h",
"src/net/third_party/quic/core/quic_alarm_factory.h",
"src/net/third_party/quic/core/quic_arena_scoped_ptr.h",
"src/net/third_party/quic/core/quic_bandwidth.cc",
"src/net/third_party/quic/core/quic_bandwidth.h",
"src/net/third_party/quic/core/quic_blocked_writer_interface.h",
"src/net/third_party/quic/core/quic_buffer_allocator.cc",
"src/net/third_party/quic/core/quic_buffer_allocator.h",
"src/net/third_party/quic/core/quic_buffered_packet_store.cc",
"src/net/third_party/quic/core/quic_buffered_packet_store.h",
"src/net/third_party/quic/core/quic_config.cc",
"src/net/third_party/quic/core/quic_config.h",
"src/net/third_party/quic/core/quic_connection.cc",
"src/net/third_party/quic/core/quic_connection.h",
"src/net/third_party/quic/core/quic_connection_close_delegate_interface.h",
"src/net/third_party/quic/core/quic_connection_stats.cc",
"src/net/third_party/quic/core/quic_connection_stats.h",
"src/net/third_party/quic/core/quic_constants.cc",
"src/net/third_party/quic/core/quic_constants.h",
"src/net/third_party/quic/core/quic_control_frame_manager.cc",
"src/net/third_party/quic/core/quic_control_frame_manager.h",
"src/net/third_party/quic/core/quic_crypto_client_handshaker.cc",
"src/net/third_party/quic/core/quic_crypto_client_handshaker.h",
"src/net/third_party/quic/core/quic_crypto_client_stream.cc",
"src/net/third_party/quic/core/quic_crypto_client_stream.h",
"src/net/third_party/quic/core/quic_crypto_handshaker.cc",
"src/net/third_party/quic/core/quic_crypto_handshaker.h",
"src/net/third_party/quic/core/quic_crypto_server_handshaker.cc",
"src/net/third_party/quic/core/quic_crypto_server_handshaker.h",
"src/net/third_party/quic/core/quic_crypto_server_stream.cc",
"src/net/third_party/quic/core/quic_crypto_server_stream.h",
"src/net/third_party/quic/core/quic_crypto_stream.cc",
"src/net/third_party/quic/core/quic_crypto_stream.h",
"src/net/third_party/quic/core/quic_data_reader.cc",
"src/net/third_party/quic/core/quic_data_reader.h",
"src/net/third_party/quic/core/quic_data_writer.cc",
"src/net/third_party/quic/core/quic_data_writer.h",
"src/net/third_party/quic/core/quic_dispatcher.cc",
"src/net/third_party/quic/core/quic_dispatcher.h",
"src/net/third_party/quic/core/quic_error_codes.cc",
"src/net/third_party/quic/core/quic_error_codes.h",
"src/net/third_party/quic/core/quic_flow_controller.cc",
"src/net/third_party/quic/core/quic_flow_controller.h",
"src/net/third_party/quic/core/quic_framer.cc",
"src/net/third_party/quic/core/quic_framer.h",
"src/net/third_party/quic/core/quic_one_block_arena.h",
"src/net/third_party/quic/core/quic_packet_creator.cc",
"src/net/third_party/quic/core/quic_packet_creator.h",
"src/net/third_party/quic/core/quic_packet_generator.cc",
"src/net/third_party/quic/core/quic_packet_generator.h",
"src/net/third_party/quic/core/quic_packet_writer.h",
"src/net/third_party/quic/core/quic_packet_writer_wrapper.cc",
"src/net/third_party/quic/core/quic_packet_writer_wrapper.h",
"src/net/third_party/quic/core/quic_packets.cc",
"src/net/third_party/quic/core/quic_packets.h",
"src/net/third_party/quic/core/quic_pending_retransmission.h",
"src/net/third_party/quic/core/quic_process_packet_interface.h",
"src/net/third_party/quic/core/quic_received_packet_manager.cc",
"src/net/third_party/quic/core/quic_received_packet_manager.h",
"src/net/third_party/quic/core/quic_sent_packet_manager.cc",
"src/net/third_party/quic/core/quic_sent_packet_manager.h",
"src/net/third_party/quic/core/quic_server_id.cc",
"src/net/third_party/quic/core/quic_server_id.h",
"src/net/third_party/quic/core/quic_session.cc",
"src/net/third_party/quic/core/quic_session.h",
"src/net/third_party/quic/core/quic_simple_buffer_allocator.cc",
"src/net/third_party/quic/core/quic_simple_buffer_allocator.h",
"src/net/third_party/quic/core/quic_socket_address_coder.cc",
"src/net/third_party/quic/core/quic_socket_address_coder.h",
"src/net/third_party/quic/core/quic_stream.cc",
"src/net/third_party/quic/core/quic_stream.h",
"src/net/third_party/quic/core/quic_stream_frame_data_producer.h",
"src/net/third_party/quic/core/quic_stream_send_buffer.cc",
"src/net/third_party/quic/core/quic_stream_send_buffer.h",
"src/net/third_party/quic/core/quic_stream_sequencer.cc",
"src/net/third_party/quic/core/quic_stream_sequencer.h",
"src/net/third_party/quic/core/quic_stream_sequencer_buffer.cc",
"src/net/third_party/quic/core/quic_stream_sequencer_buffer.h",
"src/net/third_party/quic/core/quic_sustained_bandwidth_recorder.cc",
"src/net/third_party/quic/core/quic_sustained_bandwidth_recorder.h",
"src/net/third_party/quic/core/quic_tag.cc",
"src/net/third_party/quic/core/quic_tag.h",
"src/net/third_party/quic/core/quic_time.cc",
"src/net/third_party/quic/core/quic_time.h",
"src/net/third_party/quic/core/quic_time_wait_list_manager.cc",
"src/net/third_party/quic/core/quic_time_wait_list_manager.h",
"src/net/third_party/quic/core/quic_trace_visitor.cc",
"src/net/third_party/quic/core/quic_trace_visitor.h",
"src/net/third_party/quic/core/quic_transmission_info.cc",
"src/net/third_party/quic/core/quic_transmission_info.h",
"src/net/third_party/quic/core/quic_types.cc",
"src/net/third_party/quic/core/quic_types.h",
"src/net/third_party/quic/core/quic_unacked_packet_map.cc",
"src/net/third_party/quic/core/quic_unacked_packet_map.h",
"src/net/third_party/quic/core/quic_utils.cc",
"src/net/third_party/quic/core/quic_utils.h",
"src/net/third_party/quic/core/quic_version_manager.cc",
"src/net/third_party/quic/core/quic_version_manager.h",
"src/net/third_party/quic/core/quic_versions.cc",
"src/net/third_party/quic/core/quic_versions.h",
"src/net/third_party/quic/core/quic_write_blocked_list.cc",
"src/net/third_party/quic/core/quic_write_blocked_list.h",
"src/net/third_party/quic/core/session_notifier_interface.h",
"src/net/third_party/quic/core/stateless_rejector.cc",
"src/net/third_party/quic/core/stateless_rejector.h",
"src/net/third_party/quic/core/tls_client_handshaker.cc",
"src/net/third_party/quic/core/tls_client_handshaker.h",
"src/net/third_party/quic/core/tls_handshaker.cc",
"src/net/third_party/quic/core/tls_handshaker.h",
"src/net/third_party/quic/core/tls_server_handshaker.cc",
"src/net/third_party/quic/core/tls_server_handshaker.h",
]
# The following sources cause problems in the build, but since they are not
# needed, don't fix anything and don't build them.
#
# sources -= [
# "src/net/third_party/quic/core/quic_default_packet_writer.cc",
# "src/net/third_party/quic/core/quic_default_packet_writer.h",
# "src/net/third_party/quic/core/quic_packet_reader.cc",
# "src/net/third_party/quic/core/quic_packet_reader.h",
# ]
configs -= [ "//build:default_include_dirs" ]
configs += [
":chromium_quic_config",
"//third_party/protobuf:using_proto",
]
deps = [
":chromium_other",
":congestion_control",
":crypto",
":frames",
# ":http",
":platform",
":proto",
"../boringssl",
]
}
source_set("congestion_control") {
sources = [
"src/net/third_party/quic/core/congestion_control/bandwidth_sampler.cc",
"src/net/third_party/quic/core/congestion_control/bandwidth_sampler.h",
"src/net/third_party/quic/core/congestion_control/bbr_sender.cc",
"src/net/third_party/quic/core/congestion_control/bbr_sender.h",
"src/net/third_party/quic/core/congestion_control/cubic_bytes.cc",
"src/net/third_party/quic/core/congestion_control/cubic_bytes.h",
"src/net/third_party/quic/core/congestion_control/general_loss_algorithm.cc",
"src/net/third_party/quic/core/congestion_control/general_loss_algorithm.h",
"src/net/third_party/quic/core/congestion_control/hybrid_slow_start.cc",
"src/net/third_party/quic/core/congestion_control/hybrid_slow_start.h",
"src/net/third_party/quic/core/congestion_control/loss_detection_interface.h",
"src/net/third_party/quic/core/congestion_control/pacing_sender.cc",
"src/net/third_party/quic/core/congestion_control/pacing_sender.h",
"src/net/third_party/quic/core/congestion_control/prr_sender.cc",
"src/net/third_party/quic/core/congestion_control/prr_sender.h",
"src/net/third_party/quic/core/congestion_control/rtt_stats.cc",
"src/net/third_party/quic/core/congestion_control/rtt_stats.h",
"src/net/third_party/quic/core/congestion_control/send_algorithm_interface.cc",
"src/net/third_party/quic/core/congestion_control/send_algorithm_interface.h",
"src/net/third_party/quic/core/congestion_control/tcp_cubic_sender_bytes.cc",
"src/net/third_party/quic/core/congestion_control/tcp_cubic_sender_bytes.h",
"src/net/third_party/quic/core/congestion_control/windowed_filter.h",
]
configs -= [ "//build:default_include_dirs" ]
configs += [ ":chromium_quic_config" ]
}
source_set("crypto") {
sources = [
"src/net/third_party/quic/core/crypto/aead_base_decrypter.cc",
"src/net/third_party/quic/core/crypto/aead_base_decrypter.h",
"src/net/third_party/quic/core/crypto/aead_base_encrypter.cc",
"src/net/third_party/quic/core/crypto/aead_base_encrypter.h",
"src/net/third_party/quic/core/crypto/aes_128_gcm_12_decrypter.cc",
"src/net/third_party/quic/core/crypto/aes_128_gcm_12_decrypter.h",
"src/net/third_party/quic/core/crypto/aes_128_gcm_12_encrypter.cc",
"src/net/third_party/quic/core/crypto/aes_128_gcm_12_encrypter.h",
"src/net/third_party/quic/core/crypto/aes_128_gcm_decrypter.cc",
"src/net/third_party/quic/core/crypto/aes_128_gcm_decrypter.h",
"src/net/third_party/quic/core/crypto/aes_128_gcm_encrypter.cc",
"src/net/third_party/quic/core/crypto/aes_128_gcm_encrypter.h",
"src/net/third_party/quic/core/crypto/aes_256_gcm_decrypter.cc",
"src/net/third_party/quic/core/crypto/aes_256_gcm_decrypter.h",
"src/net/third_party/quic/core/crypto/aes_256_gcm_encrypter.cc",
"src/net/third_party/quic/core/crypto/aes_256_gcm_encrypter.h",
"src/net/third_party/quic/core/crypto/cert_compressor.cc",
"src/net/third_party/quic/core/crypto/cert_compressor.h",
"src/net/third_party/quic/core/crypto/chacha20_poly1305_decrypter.cc",
"src/net/third_party/quic/core/crypto/chacha20_poly1305_decrypter.h",
"src/net/third_party/quic/core/crypto/chacha20_poly1305_encrypter.cc",
"src/net/third_party/quic/core/crypto/chacha20_poly1305_encrypter.h",
"src/net/third_party/quic/core/crypto/chacha20_poly1305_tls_decrypter.cc",
"src/net/third_party/quic/core/crypto/chacha20_poly1305_tls_decrypter.h",
"src/net/third_party/quic/core/crypto/chacha20_poly1305_tls_encrypter.cc",
"src/net/third_party/quic/core/crypto/chacha20_poly1305_tls_encrypter.h",
"src/net/third_party/quic/core/crypto/channel_id.cc",
"src/net/third_party/quic/core/crypto/channel_id.h",
"src/net/third_party/quic/core/crypto/common_cert_set.cc",
"src/net/third_party/quic/core/crypto/common_cert_set.h",
"src/net/third_party/quic/core/crypto/crypto_framer.cc",
"src/net/third_party/quic/core/crypto/crypto_framer.h",
"src/net/third_party/quic/core/crypto/crypto_handshake.cc",
"src/net/third_party/quic/core/crypto/crypto_handshake.h",
"src/net/third_party/quic/core/crypto/crypto_handshake_message.cc",
"src/net/third_party/quic/core/crypto/crypto_handshake_message.h",
"src/net/third_party/quic/core/crypto/crypto_message_parser.h",
"src/net/third_party/quic/core/crypto/crypto_protocol.h",
"src/net/third_party/quic/core/crypto/crypto_secret_boxer.cc",
"src/net/third_party/quic/core/crypto/crypto_secret_boxer.h",
"src/net/third_party/quic/core/crypto/crypto_server_config_protobuf.cc",
"src/net/third_party/quic/core/crypto/crypto_server_config_protobuf.h",
"src/net/third_party/quic/core/crypto/crypto_utils.cc",
"src/net/third_party/quic/core/crypto/crypto_utils.h",
"src/net/third_party/quic/core/crypto/curve25519_key_exchange.cc",
"src/net/third_party/quic/core/crypto/curve25519_key_exchange.h",
"src/net/third_party/quic/core/crypto/ephemeral_key_source.h",
"src/net/third_party/quic/core/crypto/key_exchange.h",
"src/net/third_party/quic/core/crypto/null_decrypter.cc",
"src/net/third_party/quic/core/crypto/null_decrypter.h",
"src/net/third_party/quic/core/crypto/null_encrypter.cc",
"src/net/third_party/quic/core/crypto/null_encrypter.h",
"src/net/third_party/quic/core/crypto/p256_key_exchange.cc",
"src/net/third_party/quic/core/crypto/p256_key_exchange.h",
"src/net/third_party/quic/core/crypto/proof_source.cc",
"src/net/third_party/quic/core/crypto/proof_source.h",
"src/net/third_party/quic/core/crypto/proof_verifier.h",
"src/net/third_party/quic/core/crypto/quic_compressed_certs_cache.cc",
"src/net/third_party/quic/core/crypto/quic_compressed_certs_cache.h",
"src/net/third_party/quic/core/crypto/quic_crypto_client_config.cc",
"src/net/third_party/quic/core/crypto/quic_crypto_client_config.h",
"src/net/third_party/quic/core/crypto/quic_crypto_proof.cc",
"src/net/third_party/quic/core/crypto/quic_crypto_proof.h",
"src/net/third_party/quic/core/crypto/quic_crypto_server_config.cc",
"src/net/third_party/quic/core/crypto/quic_crypto_server_config.h",
"src/net/third_party/quic/core/crypto/quic_decrypter.cc",
"src/net/third_party/quic/core/crypto/quic_decrypter.h",
"src/net/third_party/quic/core/crypto/quic_encrypter.cc",
"src/net/third_party/quic/core/crypto/quic_encrypter.h",
"src/net/third_party/quic/core/crypto/quic_hkdf.cc",
"src/net/third_party/quic/core/crypto/quic_hkdf.h",
"src/net/third_party/quic/core/crypto/quic_random.cc",
"src/net/third_party/quic/core/crypto/quic_random.h",
"src/net/third_party/quic/core/crypto/quic_tls_adapter.cc",
"src/net/third_party/quic/core/crypto/quic_tls_adapter.h",
"src/net/third_party/quic/core/crypto/scoped_evp_aead_ctx.cc",
"src/net/third_party/quic/core/crypto/scoped_evp_aead_ctx.h",
"src/net/third_party/quic/core/crypto/transport_parameters.cc",
"src/net/third_party/quic/core/crypto/transport_parameters.h",
]
deps = [
":proto",
]
configs -= [ "//build:default_include_dirs" ]
configs += [ ":chromium_quic_config" ]
}
source_set("frames") {
sources = [
"src/net/third_party/quic/core/frames/quic_ack_frame.cc",
"src/net/third_party/quic/core/frames/quic_ack_frame.h",
"src/net/third_party/quic/core/frames/quic_application_close_frame.cc",
"src/net/third_party/quic/core/frames/quic_application_close_frame.h",
"src/net/third_party/quic/core/frames/quic_blocked_frame.cc",
"src/net/third_party/quic/core/frames/quic_blocked_frame.h",
"src/net/third_party/quic/core/frames/quic_connection_close_frame.cc",
"src/net/third_party/quic/core/frames/quic_connection_close_frame.h",
"src/net/third_party/quic/core/frames/quic_control_frame.h",
"src/net/third_party/quic/core/frames/quic_frame.cc",
"src/net/third_party/quic/core/frames/quic_frame.h",
"src/net/third_party/quic/core/frames/quic_goaway_frame.cc",
"src/net/third_party/quic/core/frames/quic_goaway_frame.h",
"src/net/third_party/quic/core/frames/quic_max_stream_id_frame.cc",
"src/net/third_party/quic/core/frames/quic_max_stream_id_frame.h",
"src/net/third_party/quic/core/frames/quic_mtu_discovery_frame.h",
"src/net/third_party/quic/core/frames/quic_new_connection_id_frame.cc",
"src/net/third_party/quic/core/frames/quic_new_connection_id_frame.h",
"src/net/third_party/quic/core/frames/quic_padding_frame.cc",
"src/net/third_party/quic/core/frames/quic_padding_frame.h",
"src/net/third_party/quic/core/frames/quic_path_challenge_frame.cc",
"src/net/third_party/quic/core/frames/quic_path_challenge_frame.h",
"src/net/third_party/quic/core/frames/quic_path_response_frame.cc",
"src/net/third_party/quic/core/frames/quic_path_response_frame.h",
"src/net/third_party/quic/core/frames/quic_ping_frame.cc",
"src/net/third_party/quic/core/frames/quic_ping_frame.h",
"src/net/third_party/quic/core/frames/quic_rst_stream_frame.cc",
"src/net/third_party/quic/core/frames/quic_rst_stream_frame.h",
"src/net/third_party/quic/core/frames/quic_stop_sending_frame.cc",
"src/net/third_party/quic/core/frames/quic_stop_sending_frame.h",
"src/net/third_party/quic/core/frames/quic_stop_waiting_frame.cc",
"src/net/third_party/quic/core/frames/quic_stop_waiting_frame.h",
"src/net/third_party/quic/core/frames/quic_stream_frame.cc",
"src/net/third_party/quic/core/frames/quic_stream_frame.h",
"src/net/third_party/quic/core/frames/quic_stream_id_blocked_frame.cc",
"src/net/third_party/quic/core/frames/quic_stream_id_blocked_frame.h",
"src/net/third_party/quic/core/frames/quic_window_update_frame.cc",
"src/net/third_party/quic/core/frames/quic_window_update_frame.h",
]
configs -= [ "//build:default_include_dirs" ]
configs += [ ":chromium_quic_config" ]
}
# NOTE: The http module depends on additional SPDY code in chromium, which we'd
# rather not pull in, as we wouldn't use it.
# source_set("http") {
# sources = [
# "src/net/third_party/quic/core/http/quic_client_promised_info.cc",
# "src/net/third_party/quic/core/http/quic_client_promised_info.h",
# "src/net/third_party/quic/core/http/quic_client_push_promise_index.cc",
# "src/net/third_party/quic/core/http/quic_client_push_promise_index.h",
# "src/net/third_party/quic/core/http/quic_header_list.cc",
# "src/net/third_party/quic/core/http/quic_header_list.h",
# "src/net/third_party/quic/core/http/quic_headers_stream.cc",
# "src/net/third_party/quic/core/http/quic_headers_stream.h",
# "src/net/third_party/quic/core/http/quic_server_session_base.cc",
# "src/net/third_party/quic/core/http/quic_server_session_base.h",
# "src/net/third_party/quic/core/http/quic_spdy_client_session_base.cc",
# "src/net/third_party/quic/core/http/quic_spdy_client_session_base.h",
# "src/net/third_party/quic/core/http/quic_spdy_client_session.cc",
# "src/net/third_party/quic/core/http/quic_spdy_client_session.h",
# "src/net/third_party/quic/core/http/quic_spdy_client_stream.cc",
# "src/net/third_party/quic/core/http/quic_spdy_client_stream.h",
# "src/net/third_party/quic/core/http/quic_spdy_server_stream_base.cc",
# "src/net/third_party/quic/core/http/quic_spdy_server_stream_base.h",
# "src/net/third_party/quic/core/http/quic_spdy_session.cc",
# "src/net/third_party/quic/core/http/quic_spdy_session.h",
# "src/net/third_party/quic/core/http/quic_spdy_stream.cc",
# "src/net/third_party/quic/core/http/quic_spdy_stream.h",
# "src/net/third_party/quic/core/http/spdy_utils.cc",
# "src/net/third_party/quic/core/http/spdy_utils.h",
# ]
#
# configs -= [
# "//build:default_include_dirs",
# ]
# configs += [ ":chromium_quic_config" ]
# }
proto_library("proto") {
sources = [
"src/net/third_party/quic/core/proto/cached_network_parameters.proto",
"src/net/third_party/quic/core/proto/source_address_token.proto",
]
removed_configs = [ "//build:default_include_dirs" ]
extra_configs = [ ":chromium_quic_config" ]
}
source_set("quartc") {
sources = [
"src/net/third_party/quic/quartc/quartc_factory.cc",
"src/net/third_party/quic/quartc/quartc_factory.h",
"src/net/third_party/quic/quartc/quartc_packet_writer.cc",
"src/net/third_party/quic/quartc/quartc_packet_writer.h",
"src/net/third_party/quic/quartc/quartc_session.cc",
"src/net/third_party/quic/quartc/quartc_session.h",
"src/net/third_party/quic/quartc/quartc_stream.cc",
"src/net/third_party/quic/quartc/quartc_stream.h",
]
deps = [
":core",
]
configs -= [ "//build:default_include_dirs" ]
configs += [ ":chromium_quic_config" ]
}
source_set("platform") {
sources = [
"src/net/third_party/quic/platform/api/quic_aligned.h",
"src/net/third_party/quic/platform/api/quic_arraysize.h",
"src/net/third_party/quic/platform/api/quic_bug_tracker.h",
"src/net/third_party/quic/platform/api/quic_clock.cc",
"src/net/third_party/quic/platform/api/quic_clock.h",
"src/net/third_party/quic/platform/api/quic_containers.h",
"src/net/third_party/quic/platform/api/quic_endian.h",
"src/net/third_party/quic/platform/api/quic_estimate_memory_usage.h",
"src/net/third_party/quic/platform/api/quic_expect_bug.h",
"src/net/third_party/quic/platform/api/quic_export.h",
"src/net/third_party/quic/platform/api/quic_exported_stats.h",
"src/net/third_party/quic/platform/api/quic_fallthrough.h",
"src/net/third_party/quic/platform/api/quic_file_utils.h",
"src/net/third_party/quic/platform/api/quic_flag_utils.h",
"src/net/third_party/quic/platform/api/quic_flags.h",
"src/net/third_party/quic/platform/api/quic_hostname_utils.cc",
"src/net/third_party/quic/platform/api/quic_hostname_utils.h",
"src/net/third_party/quic/platform/api/quic_interval.h",
"src/net/third_party/quic/platform/api/quic_ip_address.cc",
"src/net/third_party/quic/platform/api/quic_ip_address.h",
"src/net/third_party/quic/platform/api/quic_ip_address_family.h",
"src/net/third_party/quic/platform/api/quic_logging.h",
"src/net/third_party/quic/platform/api/quic_lru_cache.h",
"src/net/third_party/quic/platform/api/quic_map_util.h",
"src/net/third_party/quic/platform/api/quic_mem_slice.h",
"src/net/third_party/quic/platform/api/quic_mem_slice_span.h",
"src/net/third_party/quic/platform/api/quic_mock_log.h",
"src/net/third_party/quic/platform/api/quic_mutex.cc",
"src/net/third_party/quic/platform/api/quic_mutex.h",
"src/net/third_party/quic/platform/api/quic_pcc_sender.h",
"src/net/third_party/quic/platform/api/quic_prefetch.h",
"src/net/third_party/quic/platform/api/quic_ptr_util.h",
"src/net/third_party/quic/platform/api/quic_reference_counted.h",
"src/net/third_party/quic/platform/api/quic_singleton.h",
"src/net/third_party/quic/platform/api/quic_sleep.h",
"src/net/third_party/quic/platform/api/quic_socket_address.cc",
"src/net/third_party/quic/platform/api/quic_socket_address.h",
"src/net/third_party/quic/platform/api/quic_stack_trace.h",
"src/net/third_party/quic/platform/api/quic_str_cat.h",
"src/net/third_party/quic/platform/api/quic_string.h",
"src/net/third_party/quic/platform/api/quic_string_piece.h",
"src/net/third_party/quic/platform/api/quic_string_utils.h",
"src/net/third_party/quic/platform/api/quic_text_utils.h",
"src/net/third_party/quic/platform/api/quic_thread.h",
"src/net/third_party/quic/platform/api/quic_uint128.h",
"src/net/third_party/quic/platform/api/quic_url.cc",
"src/net/third_party/quic/platform/api/quic_url.h",
"src/net/third_party/quic/platform/api/quic_url_utils.cc",
"src/net/third_party/quic/platform/api/quic_url_utils.h",
"src/net/third_party/quic/platform/impl/quic_aligned_impl.h",
"src/net/third_party/quic/platform/impl/quic_arraysize_impl.h",
"src/net/third_party/quic/platform/impl/quic_bug_tracker_impl.h",
"src/net/third_party/quic/platform/impl/quic_chromium_clock.cc",
"src/net/third_party/quic/platform/impl/quic_chromium_clock.h",
"src/net/third_party/quic/platform/impl/quic_containers_impl.h",
"src/net/third_party/quic/platform/impl/quic_endian_impl.h",
"src/net/third_party/quic/platform/impl/quic_estimate_memory_usage_impl.h",
"src/net/third_party/quic/platform/impl/quic_expect_bug_impl.h",
"src/net/third_party/quic/platform/impl/quic_export_impl.h",
"src/net/third_party/quic/platform/impl/quic_exported_stats_impl.h",
"src/net/third_party/quic/platform/impl/quic_fallthrough_impl.h",
"src/net/third_party/quic/platform/impl/quic_file_utils_impl.h",
"src/net/third_party/quic/platform/impl/quic_flag_utils_impl.h",
"src/net/third_party/quic/platform/impl/quic_flags_impl.cc",
"src/net/third_party/quic/platform/impl/quic_flags_impl.h",
"src/net/third_party/quic/platform/impl/quic_hostname_utils_impl.cc",
"src/net/third_party/quic/platform/impl/quic_hostname_utils_impl.h",
"src/net/third_party/quic/platform/impl/quic_interval_impl.h",
"src/net/third_party/quic/platform/impl/quic_ip_address_impl.cc",
"src/net/third_party/quic/platform/impl/quic_ip_address_impl.h",
"src/net/third_party/quic/platform/impl/quic_logging_impl.h",
"src/net/third_party/quic/platform/impl/quic_lru_cache_impl.h",
"src/net/third_party/quic/platform/impl/quic_map_util_impl.h",
"src/net/third_party/quic/platform/impl/quic_mem_slice_impl.cc",
"src/net/third_party/quic/platform/impl/quic_mem_slice_impl.h",
"src/net/third_party/quic/platform/impl/quic_mem_slice_span_impl.cc",
"src/net/third_party/quic/platform/impl/quic_mem_slice_span_impl.h",
"src/net/third_party/quic/platform/impl/quic_mock_log_impl.h",
"src/net/third_party/quic/platform/impl/quic_mutex_impl.cc",
"src/net/third_party/quic/platform/impl/quic_mutex_impl.h",
"src/net/third_party/quic/platform/impl/quic_pcc_sender_impl.h",
"src/net/third_party/quic/platform/impl/quic_prefetch_impl.h",
"src/net/third_party/quic/platform/impl/quic_ptr_util_impl.h",
"src/net/third_party/quic/platform/impl/quic_reference_counted_impl.h",
"src/net/third_party/quic/platform/impl/quic_singleton_impl.h",
"src/net/third_party/quic/platform/impl/quic_sleep_impl.h",
"src/net/third_party/quic/platform/impl/quic_socket_address_impl.cc",
"src/net/third_party/quic/platform/impl/quic_socket_address_impl.h",
"src/net/third_party/quic/platform/impl/quic_stack_trace_impl.h",
"src/net/third_party/quic/platform/impl/quic_str_cat_impl.h",
"src/net/third_party/quic/platform/impl/quic_string_impl.h",
"src/net/third_party/quic/platform/impl/quic_string_piece_impl.h",
"src/net/third_party/quic/platform/impl/quic_string_utils_impl.h",
"src/net/third_party/quic/platform/impl/quic_text_utils_impl.h",
"src/net/third_party/quic/platform/impl/quic_thread_impl.h",
"src/net/third_party/quic/platform/impl/quic_uint128_impl.h",
"src/net/third_party/quic/platform/impl/quic_url_impl.cc",
"src/net/third_party/quic/platform/impl/quic_url_impl.h",
"src/net/third_party/quic/platform/impl/quic_url_utils_impl.cc",
"src/net/third_party/quic/platform/impl/quic_url_utils_impl.h",
]
# The following sources cause problems in the build, but since they are not
# needed, don't fix anything and don't build them.
#
# sources -= [
# "src/net/third_party/quic/core/quic_epoll_alarm_factory.cc",
# "src/net/third_party/quic/core/quic_epoll_alarm_factory.h",
# "src/net/third_party/quic/core/quic_epoll_connection_helper.cc",
# "src/net/third_party/quic/core/quic_epoll_connection_helper.h",
# "src/net/third_party/quic/platform/impl/quic_epoll_clock.cc",
# "src/net/third_party/quic/platform/impl/quic_epoll_clock.h",
# "src/net/third_party/quic/platform/impl/quic_socket_utils.cc",
# "src/net/third_party/quic/platform/impl/quic_socket_utils.h",
# ]
configs -= [ "//build:default_include_dirs" ]
configs += [ ":chromium_quic_config" ]
}
# TODO(btolsch): Tests, if we ever care about building these locally.
# source_set("chromium_quic_tests") {
# sources = [
# "src/net/third_party/quic/core/chlo_extractor_test.cc",
# "src/net/third_party/quic/core/packet_number_indexed_queue_test.cc",
# "src/net/third_party/quic/core/quic_alarm_test.cc",
# "src/net/third_party/quic/core/quic_arena_scoped_ptr_test.cc",
# "src/net/third_party/quic/core/quic_bandwidth_test.cc",
# "src/net/third_party/quic/core/quic_buffered_packet_store_test.cc",
# "src/net/third_party/quic/core/quic_config_test.cc",
# "src/net/third_party/quic/core/quic_connection_test.cc",
# "src/net/third_party/quic/core/quic_control_frame_manager_test.cc",
# "src/net/third_party/quic/core/quic_crypto_client_stream_test.cc",
# "src/net/third_party/quic/core/quic_crypto_server_stream_test.cc",
# "src/net/third_party/quic/core/quic_crypto_stream_test.cc",
# "src/net/third_party/quic/core/quic_data_writer_test.cc",
# "src/net/third_party/quic/core/quic_dispatcher_test.cc",
# "src/net/third_party/quic/core/quic_epoll_alarm_factory_test.cc",
# "src/net/third_party/quic/core/quic_epoll_connection_helper_test.cc",
# "src/net/third_party/quic/core/quic_error_codes_test.cc",
# "src/net/third_party/quic/core/quic_flow_controller_test.cc",
# "src/net/third_party/quic/core/quic_framer_test.cc",
# "src/net/third_party/quic/core/quic_ietf_framer_test.cc",
# "src/net/third_party/quic/core/quic_one_block_arena_test.cc",
# "src/net/third_party/quic/core/quic_packet_creator_test.cc",
# "src/net/third_party/quic/core/quic_packet_generator_test.cc",
# "src/net/third_party/quic/core/quic_received_packet_manager_test.cc",
# "src/net/third_party/quic/core/quic_sent_packet_manager_test.cc",
# "src/net/third_party/quic/core/quic_server_id_test.cc",
# "src/net/third_party/quic/core/quic_session_test.cc",
# "src/net/third_party/quic/core/quic_simple_buffer_allocator_test.cc",
# "src/net/third_party/quic/core/quic_socket_address_coder_test.cc",
# "src/net/third_party/quic/core/quic_stream_send_buffer_test.cc",
# "src/net/third_party/quic/core/quic_stream_sequencer_buffer_test.cc",
# "src/net/third_party/quic/core/quic_stream_sequencer_test.cc",
# "src/net/third_party/quic/core/quic_stream_test.cc",
# "src/net/third_party/quic/core/quic_sustained_bandwidth_recorder_test.cc",
# "src/net/third_party/quic/core/quic_tag_test.cc",
# "src/net/third_party/quic/core/quic_time_test.cc",
# "src/net/third_party/quic/core/quic_time_wait_list_manager_test.cc",
# "src/net/third_party/quic/core/quic_trace_visitor_test.cc",
# "src/net/third_party/quic/core/quic_unacked_packet_map_test.cc",
# "src/net/third_party/quic/core/quic_utils_test.cc",
# "src/net/third_party/quic/core/quic_version_manager_test.cc",
# "src/net/third_party/quic/core/quic_versions_test.cc",
# "src/net/third_party/quic/core/quic_write_blocked_list_test.cc",
# "src/net/third_party/quic/core/stateless_rejector_test.cc",
# "src/net/third_party/quic/core/tls_handshaker_test.cc",
# "src/net/third_party/quic/core/congestion_control/bandwidth_sampler_test.cc",
# "src/net/third_party/quic/core/congestion_control/bbr_sender_test.cc",
# "src/net/third_party/quic/core/congestion_control/cubic_bytes_test.cc",
# "src/net/third_party/quic/core/congestion_control/general_loss_algorithm_test.cc",
# "src/net/third_party/quic/core/congestion_control/hybrid_slow_start_test.cc",
# "src/net/third_party/quic/core/congestion_control/pacing_sender_test.cc",
# "src/net/third_party/quic/core/congestion_control/prr_sender_test.cc",
# "src/net/third_party/quic/core/congestion_control/rtt_stats_test.cc",
# "src/net/third_party/quic/core/congestion_control/send_algorithm_test.cc",
# "src/net/third_party/quic/core/congestion_control/tcp_cubic_sender_bytes_test.cc",
# "src/net/third_party/quic/core/congestion_control/windowed_filter_test.cc",
# "src/net/third_party/quic/core/crypto/aes_128_gcm_12_decrypter_test.cc",
# "src/net/third_party/quic/core/crypto/aes_128_gcm_12_encrypter_test.cc",
# "src/net/third_party/quic/core/crypto/aes_128_gcm_decrypter_test.cc",
# "src/net/third_party/quic/core/crypto/aes_128_gcm_encrypter_test.cc",
# "src/net/third_party/quic/core/crypto/aes_256_gcm_decrypter_test.cc",
# "src/net/third_party/quic/core/crypto/aes_256_gcm_encrypter_test.cc",
# "src/net/third_party/quic/core/crypto/cert_compressor_test.cc",
# "src/net/third_party/quic/core/crypto/chacha20_poly1305_decrypter_test.cc",
# "src/net/third_party/quic/core/crypto/chacha20_poly1305_encrypter_test.cc",
# "src/net/third_party/quic/core/crypto/chacha20_poly1305_tls_decrypter_test.cc",
# "src/net/third_party/quic/core/crypto/chacha20_poly1305_tls_encrypter_test.cc",
# "src/net/third_party/quic/core/crypto/channel_id_test.cc",
# "src/net/third_party/quic/core/crypto/common_cert_set_test.cc",
# "src/net/third_party/quic/core/crypto/crypto_framer_test.cc",
# "src/net/third_party/quic/core/crypto/crypto_handshake_message_test.cc",
# "src/net/third_party/quic/core/crypto/crypto_secret_boxer_test.cc",
# "src/net/third_party/quic/core/crypto/crypto_server_test.cc",
# "src/net/third_party/quic/core/crypto/crypto_utils_test.cc",
# "src/net/third_party/quic/core/crypto/curve25519_key_exchange_test.cc",
# "src/net/third_party/quic/core/crypto/null_decrypter_test.cc",
# "src/net/third_party/quic/core/crypto/null_encrypter_test.cc",
# "src/net/third_party/quic/core/crypto/p256_key_exchange_test.cc",
# "src/net/third_party/quic/core/crypto/quic_compressed_certs_cache_test.cc",
# "src/net/third_party/quic/core/crypto/quic_crypto_client_config_test.cc",
# "src/net/third_party/quic/core/crypto/quic_crypto_server_config_test.cc",
# "src/net/third_party/quic/core/crypto/quic_hkdf_test.cc",
# "src/net/third_party/quic/core/crypto/quic_random_test.cc",
# "src/net/third_party/quic/core/crypto/quic_tls_adapter_test.cc",
# "src/net/third_party/quic/core/crypto/transport_parameters_test.cc",
# "src/net/third_party/quic/core/frames/quic_frames_test.cc",
# "src/net/third_party/quic/core/http/end_to_end_test.cc",
# "src/net/third_party/quic/core/http/quic_client_promised_info_test.cc",
# "src/net/third_party/quic/core/http/quic_client_push_promise_index_test.cc",
# "src/net/third_party/quic/core/http/quic_header_list_test.cc",
# "src/net/third_party/quic/core/http/quic_headers_stream_test.cc",
# "src/net/third_party/quic/core/http/quic_server_session_base_test.cc",
# "src/net/third_party/quic/core/http/quic_spdy_client_session_test.cc",
# "src/net/third_party/quic/core/http/quic_spdy_client_stream_test.cc",
# "src/net/third_party/quic/core/http/quic_spdy_server_stream_base_test.cc",
# "src/net/third_party/quic/core/http/quic_spdy_session_test.cc",
# "src/net/third_party/quic/core/http/quic_spdy_stream_test.cc",
# "src/net/third_party/quic/core/http/spdy_utils_test.cc",
# "src/net/third_party/quic/platform/api/quic_endian_test.cc",
# "src/net/third_party/quic/platform/api/quic_hostname_utils_test.cc",
# "src/net/third_party/quic/platform/api/quic_lru_cache_test.cc",
# "src/net/third_party/quic/platform/api/quic_mem_slice_span_test.cc",
# "src/net/third_party/quic/platform/api/quic_mem_slice_test.cc",
# "src/net/third_party/quic/platform/api/quic_reference_counted_test.cc",
# "src/net/third_party/quic/platform/api/quic_singleton_test.cc",
# "src/net/third_party/quic/platform/api/quic_str_cat_test.cc",
# "src/net/third_party/quic/platform/api/quic_string_utils_test.cc",
# "src/net/third_party/quic/platform/api/quic_text_utils_test.cc",
# "src/net/third_party/quic/platform/api/quic_url_test.cc",
# "src/net/third_party/quic/platform/impl/quic_chromium_clock_test.cc",
# "src/net/third_party/quic/platform/impl/quic_epoll_clock_test.cc",
# "src/net/third_party/quic/platform/impl/quic_socket_utils_test.cc",
# "src/net/third_party/quic/platform/impl/quic_url_utils_impl_test.cc",
# "src/net/third_party/quic/platform/api/quic_test.h",
# "src/net/third_party/quic/platform/api/quic_test_loopback.cc",
# "src/net/third_party/quic/platform/api/quic_test_loopback.h",
# "src/net/third_party/quic/platform/api/quic_test_mem_slice_vector.h",
# "src/net/third_party/quic/platform/api/quic_test_output.h",
# "src/net/third_party/quic/platform/api/quic_test_random.h",
# "src/net/third_party/quic/platform/impl/quic_test_impl.cc",
# "src/net/third_party/quic/platform/impl/quic_test_impl.h",
# "src/net/third_party/quic/platform/impl/quic_test_loopback_impl.cc",
# "src/net/third_party/quic/platform/impl/quic_test_loopback_impl.h",
# "src/net/third_party/quic/platform/impl/quic_test_mem_slice_vector_impl.cc",
# "src/net/third_party/quic/platform/impl/quic_test_mem_slice_vector_impl.h",
# "src/net/third_party/quic/platform/impl/quic_test_output_impl.cc",
# "src/net/third_party/quic/platform/impl/quic_test_output_impl.h",
# "src/net/third_party/quic/platform/impl/quic_test_random_impl.cc",
# "src/net/third_party/quic/platform/impl/quic_test_random_impl.h",
# ]
#
# configs -= [ "//build:default_include_dirs" ]
# configs += [ ":chromium_quic_config" ]
# }
source_set("chromium_other") {
deps = [
"build/base",
"src/build",
"src/crypto",
"src/net",
"src/testing",
"src/third_party",
"src/url",
]
}