diff options
-rw-r--r-- | tools/gn/BUILD.gn | 1 | ||||
-rw-r--r-- | tools/gn/gn.gyp | 1 | ||||
-rw-r--r-- | tools/gn/scope_per_file_provider.cc | 30 | ||||
-rw-r--r-- | tools/gn/scope_per_file_provider.h | 8 | ||||
-rw-r--r-- | tools/gn/scope_per_file_provider_unittest.cc | 50 | ||||
-rw-r--r-- | tools/gn/secondary/net/BUILD.gn | 1179 | ||||
-rw-r--r-- | tools/gn/secondary/net/third_party/nss/ssl/BUILD.gn | 9 | ||||
-rw-r--r-- | tools/gn/secondary/tools/grit/grit_rule.gni | 15 | ||||
-rw-r--r-- | tools/gn/toolchain_manager.cc | 2 | ||||
-rw-r--r-- | tools/gn/variables.cc | 44 | ||||
-rw-r--r-- | tools/gn/variables.h | 8 |
11 files changed, 1332 insertions, 15 deletions
diff --git a/tools/gn/BUILD.gn b/tools/gn/BUILD.gn index a2647e2..946c075 100644 --- a/tools/gn/BUILD.gn +++ b/tools/gn/BUILD.gn @@ -159,6 +159,7 @@ test("gn_unittests") { "parser_unittest.cc", "path_output_unittest.cc", "pattern_unittest.cc", + "scope_per_file_provider_unittest.cc", "source_dir_unittest.cc", "string_utils_unittest.cc", "target_generator_unittest.cc", diff --git a/tools/gn/gn.gyp b/tools/gn/gn.gyp index f86a520..5781f8b 100644 --- a/tools/gn/gn.gyp +++ b/tools/gn/gn.gyp @@ -169,6 +169,7 @@ 'parser_unittest.cc', 'path_output_unittest.cc', 'pattern_unittest.cc', + 'scope_per_file_provider_unittest.cc', 'source_dir_unittest.cc', 'string_utils_unittest.cc', 'target_generator_unittest.cc', diff --git a/tools/gn/scope_per_file_provider.cc b/tools/gn/scope_per_file_provider.cc index 6e61dad..28f7e79 100644 --- a/tools/gn/scope_per_file_provider.cc +++ b/tools/gn/scope_per_file_provider.cc @@ -11,10 +11,8 @@ #include "tools/gn/value.h" #include "tools/gn/variables.h" -ScopePerFileProvider::ScopePerFileProvider(Scope* scope, - const SourceFile& source_file) - : ProgrammaticProvider(scope), - source_file_(source_file) { +ScopePerFileProvider::ScopePerFileProvider(Scope* scope) + : ProgrammaticProvider(scope) { } ScopePerFileProvider::~ScopePerFileProvider() { @@ -41,6 +39,10 @@ const Value* ScopePerFileProvider::GetProgrammaticValue( return GetRelativeTargetOutputDir(); if (ident == variables::kRelativeTargetGenDir) return GetRelativeTargetGenDir(); + if (ident == variables::kRootGenDir) + return GetRootGenDir(); + if (ident == variables::kTargetGenDir) + return GetTargetGenDir(); return NULL; } @@ -111,7 +113,7 @@ const Value* ScopePerFileProvider::GetRelativeTargetOutputDir() { if (!relative_target_output_dir_) { relative_target_output_dir_.reset(new Value(NULL, GetRelativeRootWithNoLastSlash() + - GetRootOutputDirWithNoLastSlash(scope_->settings()) + "obj/" + + GetRootOutputDirWithNoLastSlash(scope_->settings()) + "/obj" + GetFileDirWithNoLastSlash())); } return relative_target_output_dir_.get(); @@ -127,6 +129,24 @@ const Value* ScopePerFileProvider::GetRelativeTargetGenDir() { return relative_target_gen_dir_.get(); } +const Value* ScopePerFileProvider::GetRootGenDir() { + if (!root_gen_dir_) { + root_gen_dir_.reset(new Value(NULL, + "/" + GetRootGenDirWithNoLastSlash(scope_->settings()))); + } + return root_gen_dir_.get(); +} + +const Value* ScopePerFileProvider::GetTargetGenDir() { + if (!target_gen_dir_) { + target_gen_dir_.reset(new Value(NULL, + "/" + + GetRootGenDirWithNoLastSlash(scope_->settings()) + + GetFileDirWithNoLastSlash())); + } + return target_gen_dir_.get(); +} + // static std::string ScopePerFileProvider::GetRootOutputDirWithNoLastSlash( const Settings* settings) { diff --git a/tools/gn/scope_per_file_provider.h b/tools/gn/scope_per_file_provider.h index 27443b4..9e96d7b 100644 --- a/tools/gn/scope_per_file_provider.h +++ b/tools/gn/scope_per_file_provider.h @@ -14,7 +14,7 @@ // variable support. class ScopePerFileProvider : public Scope::ProgrammaticProvider { public: - ScopePerFileProvider(Scope* scope, const SourceFile& source_file); + ScopePerFileProvider(Scope* scope); virtual ~ScopePerFileProvider(); // ProgrammaticProvider implementation. @@ -31,6 +31,8 @@ class ScopePerFileProvider : public Scope::ProgrammaticProvider { const Value* GetRelativeSourceRootDir(); const Value* GetRelativeTargetOutputDir(); const Value* GetRelativeTargetGenDir(); + const Value* GetRootGenDir(); + const Value* GetTargetGenDir(); static std::string GetRootOutputDirWithNoLastSlash(const Settings* settings); static std::string GetRootGenDirWithNoLastSlash(const Settings* settings); @@ -42,8 +44,6 @@ class ScopePerFileProvider : public Scope::ProgrammaticProvider { // result would be empty, "." is returned to indicate the current dir. static std::string InvertDirWithNoLastSlash(const SourceDir& dir); - SourceFile source_file_; - // All values are lazily created. scoped_ptr<Value> current_toolchain_; scoped_ptr<Value> default_toolchain_; @@ -54,6 +54,8 @@ class ScopePerFileProvider : public Scope::ProgrammaticProvider { scoped_ptr<Value> relative_source_root_dir_; scoped_ptr<Value> relative_target_output_dir_; scoped_ptr<Value> relative_target_gen_dir_; + scoped_ptr<Value> root_gen_dir_; + scoped_ptr<Value> target_gen_dir_; DISALLOW_COPY_AND_ASSIGN(ScopePerFileProvider); }; diff --git a/tools/gn/scope_per_file_provider_unittest.cc b/tools/gn/scope_per_file_provider_unittest.cc new file mode 100644 index 0000000..7e195ce --- /dev/null +++ b/tools/gn/scope_per_file_provider_unittest.cc @@ -0,0 +1,50 @@ +// Copyright (c) 2013 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. + +#include "testing/gtest/include/gtest/gtest.h" +#include "tools/gn/build_settings.h" +#include "tools/gn/scope_per_file_provider.h" +#include "tools/gn/settings.h" +#include "tools/gn/toolchain.h" +#include "tools/gn/variables.h" + +TEST(ScopePerFileProvider, Expected) { + Err err; + + BuildSettings build_settings; + build_settings.toolchain_manager().SetDefaultToolchainUnlocked( + Label(SourceDir("//toolchain/"), "default", SourceDir(), ""), + LocationRange(), &err); + EXPECT_FALSE(err.has_error()); + + build_settings.SetBuildDir(SourceDir("//out/Debug/")); + + Toolchain toolchain(Label(SourceDir("//toolchain/"), "tc", SourceDir(), "")); + Settings settings(&build_settings, &toolchain, std::string()); + Scope scope(&settings); + scope.set_source_dir(SourceDir("//source/")); + + ScopePerFileProvider provider(&scope); + + EXPECT_EQ("//toolchain:tc", provider.GetProgrammaticValue( + variables::kCurrentToolchain)->string_value()); + EXPECT_EQ("//toolchain:default", provider.GetProgrammaticValue( + variables::kDefaultToolchain)->string_value()); + EXPECT_EQ("../..",provider.GetProgrammaticValue( + variables::kRelativeBuildToSourceRootDir)->string_value()); + EXPECT_EQ("../out/Debug", provider.GetProgrammaticValue( + variables::kRelativeRootOutputDir)->string_value()); + EXPECT_EQ("../out/Debug/gen", provider.GetProgrammaticValue( + variables::kRelativeRootGenDir)->string_value()); + EXPECT_EQ("..", provider.GetProgrammaticValue( + variables::kRelativeSourceRootDir)->string_value()); + EXPECT_EQ("../out/Debug/obj/source", provider.GetProgrammaticValue( + variables::kRelativeTargetOutputDir)->string_value()); + EXPECT_EQ("../out/Debug/gen/source", provider.GetProgrammaticValue( + variables::kRelativeTargetGenDir)->string_value()); + EXPECT_EQ("//out/Debug/gen",provider.GetProgrammaticValue( + variables::kRootGenDir)->string_value()); + EXPECT_EQ("//out/Debug/gen/source",provider.GetProgrammaticValue( + variables::kTargetGenDir)->string_value()); +} diff --git a/tools/gn/secondary/net/BUILD.gn b/tools/gn/secondary/net/BUILD.gn index cf70629..4d3e8f3 100644 --- a/tools/gn/secondary/net/BUILD.gn +++ b/tools/gn/secondary/net/BUILD.gn @@ -2,23 +2,1200 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. +import("//crypto/ssl/flags.gni") import("//tools/grit/grit_rule.gni") component("net") { + sources = [ + "android/cert_verify_result_android.h", + "android/cert_verify_result_android_list.h", + "android/gurl_utils.cc", + "android/gurl_utils.h", + "android/keystore.cc", + "android/keystore.h", + "android/keystore_openssl.cc", + "android/keystore_openssl.h", + "android/net_jni_registrar.cc", + "android/net_jni_registrar.h", + "android/network_change_notifier_android.cc", + "android/network_change_notifier_android.h", + "android/network_change_notifier_delegate_android.cc", + "android/network_change_notifier_delegate_android.h", + "android/network_change_notifier_factory_android.cc", + "android/network_change_notifier_factory_android.h", + "android/network_library.cc", + "android/network_library.h", + "base/address_family.h", + "base/address_list.cc", + "base/address_list.h", + "base/address_tracker_linux.cc", + "base/address_tracker_linux.h", + "base/auth.cc", + "base/auth.h", + "base/backoff_entry.cc", + "base/backoff_entry.h", + "base/bandwidth_metrics.cc", + "base/bandwidth_metrics.h", + "base/big_endian.cc", + "base/big_endian.h", + "base/cache_type.h", + "base/completion_callback.h", + "base/connection_type_histograms.cc", + "base/connection_type_histograms.h", + "base/crypto_module.h", + "base/crypto_module_nss.cc", + "base/crypto_module_openssl.cc", + "base/data_url.cc", + "base/data_url.h", + "base/directory_lister.cc", + "base/directory_lister.h", + "base/dns_reloader.cc", + "base/dns_reloader.h", + "base/dns_util.cc", + "base/dns_util.h", + "base/escape.cc", + "base/escape.h", + "base/expiring_cache.h", + "base/file_stream.cc", + "base/file_stream.h", + "base/file_stream_context.cc", + "base/file_stream_context.h", + "base/file_stream_context_posix.cc", + "base/file_stream_context_win.cc", + "base/file_stream_metrics.cc", + "base/file_stream_metrics.h", + "base/file_stream_metrics_posix.cc", + "base/file_stream_metrics_win.cc", + "base/file_stream_net_log_parameters.cc", + "base/file_stream_net_log_parameters.h", + "base/file_stream_whence.h", + "base/filter.cc", + "base/filter.h", + "base/int128.cc", + "base/int128.h", + "base/gzip_filter.cc", + "base/gzip_filter.h", + "base/gzip_header.cc", + "base/gzip_header.h", + "base/hash_value.cc", + "base/hash_value.h", + "base/host_mapping_rules.cc", + "base/host_mapping_rules.h", + "base/host_port_pair.cc", + "base/host_port_pair.h", + "base/io_buffer.cc", + "base/io_buffer.h", + "base/iovec.h", + "base/ip_endpoint.cc", + "base/ip_endpoint.h", + "base/keygen_handler.cc", + "base/keygen_handler.h", + "base/keygen_handler_mac.cc", + "base/keygen_handler_nss.cc", + "base/keygen_handler_openssl.cc", + "base/keygen_handler_win.cc", + "base/linked_hash_map.h", + "base/load_flags.h", + "base/load_flags_list.h", + "base/load_states.h", + "base/load_states_list.h", + "base/load_timing_info.cc", + "base/load_timing_info.h", + "base/mime_sniffer.cc", + "base/mime_sniffer.h", + "base/mime_util.cc", + "base/mime_util.h", + "base/net_error_list.h", + "base/net_errors.cc", + "base/net_errors.h", + "base/net_errors_posix.cc", + "base/net_errors_win.cc", + "base/net_export.h", + "base/net_log.cc", + "base/net_log.h", + "base/net_log_logger.cc", + "base/net_log_logger.h", + "base/net_log_event_type_list.h", + "base/net_log_source_type_list.h", + "base/net_module.cc", + "base/net_module.h", + "base/net_util.cc", + "base/net_util.h", + "base/net_util_posix.cc", + "base/net_util_win.cc", + "base/network_change_notifier.cc", + "base/network_change_notifier.h", + "base/network_change_notifier_factory.h", + "base/network_change_notifier_linux.cc", + "base/network_change_notifier_linux.h", + "base/network_change_notifier_mac.cc", + "base/network_change_notifier_mac.h", + "base/network_change_notifier_win.cc", + "base/network_change_notifier_win.h", + "base/network_config_watcher_mac.cc", + "base/network_config_watcher_mac.h", + "base/network_delegate.cc", + "base/network_delegate.h", + "base/network_time_notifier.cc", + "base/network_time_notifier.h", + "base/nss_memio.c", + "base/nss_memio.h", + "base/openssl_private_key_store.h", + "base/openssl_private_key_store_android.cc", + "base/openssl_private_key_store_memory.cc", + "base/platform_mime_util.h", + # TODO(tc): gnome-vfs? xdgmime? /etc/mime.types? + "base/platform_mime_util_linux.cc", + "base/platform_mime_util_mac.mm", + "base/platform_mime_util_win.cc", + "base/prioritized_dispatcher.cc", + "base/prioritized_dispatcher.h", + "base/priority_queue.h", + "base/rand_callback.h", + "base/registry_controlled_domains/registry_controlled_domain.cc", + "base/registry_controlled_domains/registry_controlled_domain.h", + "base/request_priority.h", + "base/sdch_filter.cc", + "base/sdch_filter.h", + "base/sdch_manager.cc", + "base/sdch_manager.h", + "base/static_cookie_policy.cc", + "base/static_cookie_policy.h", + "base/sys_addrinfo.h", + "base/test_data_stream.cc", + "base/test_data_stream.h", + "base/upload_bytes_element_reader.cc", + "base/upload_bytes_element_reader.h", + "base/upload_data.cc", + "base/upload_data.h", + "base/upload_data_stream.cc", + "base/upload_data_stream.h", + "base/upload_element.cc", + "base/upload_element.h", + "base/upload_element_reader.cc", + "base/upload_element_reader.h", + "base/upload_file_element_reader.cc", + "base/upload_file_element_reader.h", + "base/upload_progress.h", + "base/url_util.cc", + "base/url_util.h", + "base/winsock_init.cc", + "base/winsock_init.h", + "base/winsock_util.cc", + "base/winsock_util.h", + "base/zap.cc", + "base/zap.h", + "cert/asn1_util.cc", + "cert/asn1_util.h", + "cert/cert_database.cc", + "cert/cert_database.h", + "cert/cert_database_android.cc", + "cert/cert_database_ios.cc", + "cert/cert_database_mac.cc", + "cert/cert_database_nss.cc", + "cert/cert_database_openssl.cc", + "cert/cert_database_win.cc", + "cert/cert_status_flags.cc", + "cert/cert_status_flags.h", + "cert/cert_trust_anchor_provider.h", + "cert/cert_verifier.cc", + "cert/cert_verifier.h", + "cert/cert_verify_proc.cc", + "cert/cert_verify_proc.h", + "cert/cert_verify_proc_android.cc", + "cert/cert_verify_proc_android.h", + "cert/cert_verify_proc_mac.cc", + "cert/cert_verify_proc_mac.h", + "cert/cert_verify_proc_nss.cc", + "cert/cert_verify_proc_nss.h", + "cert/cert_verify_proc_openssl.cc", + "cert/cert_verify_proc_openssl.h", + "cert/cert_verify_proc_win.cc", + "cert/cert_verify_proc_win.h", + "cert/cert_verify_result.cc", + "cert/cert_verify_result.h", + "cert/crl_set.cc", + "cert/crl_set.h", + "cert/ev_root_ca_metadata.cc", + "cert/ev_root_ca_metadata.h", + "cert/jwk_serializer_nss.cc", + "cert/jwk_serializer_openssl.cc", + "cert/jwk_serializer.h", + "cert/multi_threaded_cert_verifier.cc", + "cert/multi_threaded_cert_verifier.h", + "cert/nss_cert_database.cc", + "cert/nss_cert_database.h", + "cert/pem_tokenizer.cc", + "cert/pem_tokenizer.h", + "cert/single_request_cert_verifier.cc", + "cert/single_request_cert_verifier.h", + "cert/test_root_certs.cc", + "cert/test_root_certs.h", + "cert/test_root_certs_mac.cc", + "cert/test_root_certs_nss.cc", + "cert/test_root_certs_openssl.cc", + "cert/test_root_certs_android.cc", + "cert/test_root_certs_win.cc", + "cert/x509_cert_types.cc", + "cert/x509_cert_types.h", + "cert/x509_cert_types_mac.cc", + "cert/x509_cert_types_win.cc", + "cert/x509_certificate.cc", + "cert/x509_certificate.h", + "cert/x509_certificate_ios.cc", + "cert/x509_certificate_mac.cc", + "cert/x509_certificate_net_log_param.cc", + "cert/x509_certificate_net_log_param.h", + "cert/x509_certificate_nss.cc", + "cert/x509_certificate_openssl.cc", + "cert/x509_certificate_win.cc", + "cert/x509_util.h", + "cert/x509_util.cc", + "cert/x509_util_ios.cc", + "cert/x509_util_ios.h", + "cert/x509_util_mac.cc", + "cert/x509_util_mac.h", + "cert/x509_util_nss.cc", + "cert/x509_util_nss.h", + "cert/x509_util_openssl.cc", + "cert/x509_util_openssl.h", + "cookies/canonical_cookie.cc", + "cookies/canonical_cookie.h", + "cookies/cookie_constants.cc", + "cookies/cookie_constants.h", + "cookies/cookie_monster.cc", + "cookies/cookie_monster.h", + "cookies/cookie_options.h", + "cookies/cookie_store.cc", + "cookies/cookie_store.h", + "cookies/cookie_util.cc", + "cookies/cookie_util.h", + "cookies/parsed_cookie.cc", + "cookies/parsed_cookie.h", + "disk_cache/addr.cc", + "disk_cache/addr.h", + "disk_cache/backend_impl.cc", + "disk_cache/backend_impl.h", + "disk_cache/bitmap.cc", + "disk_cache/bitmap.h", + "disk_cache/block_files.cc", + "disk_cache/block_files.h", + "disk_cache/cache_creator.cc", + "disk_cache/cache_util.h", + "disk_cache/cache_util.cc", + "disk_cache/cache_util_posix.cc", + "disk_cache/cache_util_win.cc", + "disk_cache/disk_cache.h", + "disk_cache/disk_format.cc", + "disk_cache/disk_format.h", + "disk_cache/disk_format_base.h", + "disk_cache/entry_impl.cc", + "disk_cache/entry_impl.h", + "disk_cache/errors.h", + "disk_cache/eviction.cc", + "disk_cache/eviction.h", + "disk_cache/experiments.h", + "disk_cache/file.cc", + "disk_cache/file.h", + "disk_cache/file_block.h", + "disk_cache/file_lock.cc", + "disk_cache/file_lock.h", + "disk_cache/file_posix.cc", + "disk_cache/file_win.cc", + "disk_cache/histogram_macros.h", + "disk_cache/in_flight_backend_io.cc", + "disk_cache/in_flight_backend_io.h", + "disk_cache/in_flight_io.cc", + "disk_cache/in_flight_io.h", + "disk_cache/mapped_file.h", + "disk_cache/mapped_file_posix.cc", + "disk_cache/mapped_file_avoid_mmap_posix.cc", + "disk_cache/mapped_file_win.cc", + "disk_cache/mem_backend_impl.cc", + "disk_cache/mem_backend_impl.h", + "disk_cache/mem_entry_impl.cc", + "disk_cache/mem_entry_impl.h", + "disk_cache/mem_rankings.cc", + "disk_cache/mem_rankings.h", + "disk_cache/net_log_parameters.cc", + "disk_cache/net_log_parameters.h", + "disk_cache/rankings.cc", + "disk_cache/rankings.h", + "disk_cache/sparse_control.cc", + "disk_cache/sparse_control.h", + "disk_cache/stats.cc", + "disk_cache/stats.h", + "disk_cache/stats_histogram.cc", + "disk_cache/stats_histogram.h", + "disk_cache/storage_block-inl.h", + "disk_cache/storage_block.h", + "disk_cache/stress_support.h", + "disk_cache/trace.cc", + "disk_cache/trace.h", + "disk_cache/tracing_cache_backend.cc", + "disk_cache/tracing_cache_backend.h", + "disk_cache/simple/simple_backend_impl.cc", + "disk_cache/simple/simple_backend_impl.h", + "disk_cache/simple/simple_entry_format.cc", + "disk_cache/simple/simple_entry_format.h", + "disk_cache/simple/simple_entry_impl.cc", + "disk_cache/simple/simple_entry_impl.h", + "disk_cache/simple/simple_entry_operation.cc", + "disk_cache/simple/simple_entry_operation.h", + "disk_cache/simple/simple_index.cc", + "disk_cache/simple/simple_index.h", + "disk_cache/simple/simple_index_file.cc", + "disk_cache/simple/simple_index_file.h", + "disk_cache/simple/simple_index_file_posix.cc", + "disk_cache/simple/simple_index_file_win.cc", + "disk_cache/simple/simple_net_log_parameters.cc", + "disk_cache/simple/simple_net_log_parameters.h", + "disk_cache/simple/simple_synchronous_entry.cc", + "disk_cache/simple/simple_synchronous_entry.h", + "disk_cache/simple/simple_util.cc", + "disk_cache/simple/simple_util.h", + "disk_cache/flash/flash_entry_impl.cc", + "disk_cache/flash/flash_entry_impl.h", + "disk_cache/flash/format.h", + "disk_cache/flash/internal_entry.cc", + "disk_cache/flash/internal_entry.h", + "disk_cache/flash/log_store.cc", + "disk_cache/flash/log_store.h", + "disk_cache/flash/log_store_entry.cc", + "disk_cache/flash/log_store_entry.h", + "disk_cache/flash/segment.cc", + "disk_cache/flash/segment.h", + "disk_cache/flash/storage.cc", + "disk_cache/flash/storage.h", + "disk_cache/v3/disk_format_v3.h", + "dns/address_sorter.h", + "dns/address_sorter_posix.cc", + "dns/address_sorter_posix.h", + "dns/address_sorter_win.cc", + "dns/dns_client.cc", + "dns/dns_client.h", + "dns/dns_config_service.cc", + "dns/dns_config_service.h", + "dns/dns_config_service_posix.cc", + "dns/dns_config_service_posix.h", + "dns/dns_config_service_win.cc", + "dns/dns_config_service_win.h", + "dns/dns_hosts.cc", + "dns/dns_hosts.h", + "dns/dns_protocol.h", + "dns/dns_query.cc", + "dns/dns_query.h", + "dns/dns_response.cc", + "dns/dns_response.h", + "dns/dns_session.cc", + "dns/dns_session.h", + "dns/dns_socket_pool.cc", + "dns/dns_socket_pool.h", + "dns/dns_transaction.cc", + "dns/dns_transaction.h", + "dns/host_cache.cc", + "dns/host_cache.h", + "dns/host_resolver.cc", + "dns/host_resolver.h", + "dns/host_resolver_impl.cc", + "dns/host_resolver_impl.h", + "dns/host_resolver_proc.cc", + "dns/host_resolver_proc.h", + "dns/mapped_host_resolver.cc", + "dns/mapped_host_resolver.h", + "dns/mdns_cache.cc", + "dns/mdns_cache.h", + "dns/mdns_client.cc", + "dns/mdns_client.h", + "dns/mdns_client_impl.cc", + "dns/mdns_client_impl.h", + "dns/notify_watcher_mac.cc", + "dns/notify_watcher_mac.h", + "dns/record_parsed.cc", + "dns/record_parsed.h", + "dns/record_rdata.cc", + "dns/record_rdata.h", + "dns/serial_worker.cc", + "dns/serial_worker.h", + "dns/single_request_host_resolver.cc", + "dns/single_request_host_resolver.h", + "ftp/ftp_auth_cache.cc", + "ftp/ftp_auth_cache.h", + "ftp/ftp_ctrl_response_buffer.cc", + "ftp/ftp_ctrl_response_buffer.h", + "ftp/ftp_directory_listing_parser.cc", + "ftp/ftp_directory_listing_parser.h", + "ftp/ftp_directory_listing_parser_ls.cc", + "ftp/ftp_directory_listing_parser_ls.h", + "ftp/ftp_directory_listing_parser_netware.cc", + "ftp/ftp_directory_listing_parser_netware.h", + "ftp/ftp_directory_listing_parser_os2.cc", + "ftp/ftp_directory_listing_parser_os2.h", + "ftp/ftp_directory_listing_parser_vms.cc", + "ftp/ftp_directory_listing_parser_vms.h", + "ftp/ftp_directory_listing_parser_windows.cc", + "ftp/ftp_directory_listing_parser_windows.h", + "ftp/ftp_network_layer.cc", + "ftp/ftp_network_layer.h", + "ftp/ftp_network_session.cc", + "ftp/ftp_network_session.h", + "ftp/ftp_network_transaction.cc", + "ftp/ftp_network_transaction.h", + "ftp/ftp_request_info.h", + "ftp/ftp_response_info.cc", + "ftp/ftp_response_info.h", + "ftp/ftp_server_type_histograms.cc", + "ftp/ftp_server_type_histograms.h", + "ftp/ftp_transaction.h", + "ftp/ftp_transaction_factory.h", + "ftp/ftp_util.cc", + "ftp/ftp_util.h", + "http/des.cc", + "http/des.h", + "http/http_atom_list.h", + "http/http_auth.cc", + "http/http_auth.h", + "http/http_auth_cache.cc", + "http/http_auth_cache.h", + "http/http_auth_controller.cc", + "http/http_auth_controller.h", + "http/http_auth_filter.cc", + "http/http_auth_filter.h", + "http/http_auth_filter_win.h", + "http/http_auth_gssapi_posix.cc", + "http/http_auth_gssapi_posix.h", + "http/http_auth_handler.cc", + "http/http_auth_handler.h", + "http/http_auth_handler_basic.cc", + "http/http_auth_handler_basic.h", + "http/http_auth_handler_digest.cc", + "http/http_auth_handler_digest.h", + "http/http_auth_handler_factory.cc", + "http/http_auth_handler_factory.h", + "http/http_auth_handler_negotiate.cc", + "http/http_auth_handler_negotiate.h", + "http/http_auth_handler_ntlm.cc", + "http/http_auth_handler_ntlm.h", + "http/http_auth_handler_ntlm_portable.cc", + "http/http_auth_handler_ntlm_win.cc", + "http/http_auth_sspi_win.cc", + "http/http_auth_sspi_win.h", + "http/http_basic_stream.cc", + "http/http_basic_stream.h", + "http/http_byte_range.cc", + "http/http_byte_range.h", + "http/http_cache.cc", + "http/http_cache.h", + "http/http_cache_transaction.cc", + "http/http_cache_transaction.h", + "http/http_content_disposition.cc", + "http/http_content_disposition.h", + "http/http_chunked_decoder.cc", + "http/http_chunked_decoder.h", + "http/http_network_layer.cc", + "http/http_network_layer.h", + "http/http_network_session.cc", + "http/http_network_session.h", + "http/http_network_session_peer.cc", + "http/http_network_session_peer.h", + "http/http_network_transaction.cc", + "http/http_network_transaction.h", + "http/http_pipelined_connection.h", + "http/http_pipelined_connection_impl.cc", + "http/http_pipelined_connection_impl.h", + "http/http_pipelined_host.cc", + "http/http_pipelined_host.h", + "http/http_pipelined_host_capability.h", + "http/http_pipelined_host_forced.cc", + "http/http_pipelined_host_forced.h", + "http/http_pipelined_host_impl.cc", + "http/http_pipelined_host_impl.h", + "http/http_pipelined_host_pool.cc", + "http/http_pipelined_host_pool.h", + "http/http_pipelined_stream.cc", + "http/http_pipelined_stream.h", + "http/http_proxy_client_socket.cc", + "http/http_proxy_client_socket.h", + "http/http_proxy_client_socket_pool.cc", + "http/http_proxy_client_socket_pool.h", + "http/http_request_headers.cc", + "http/http_request_headers.h", + "http/http_request_info.cc", + "http/http_request_info.h", + "http/http_response_body_drainer.cc", + "http/http_response_body_drainer.h", + "http/http_response_headers.cc", + "http/http_response_headers.h", + "http/http_response_info.cc", + "http/http_response_info.h", + "http/http_security_headers.cc", + "http/http_security_headers.h", + "http/http_server_properties.cc", + "http/http_server_properties.h", + "http/http_server_properties_impl.cc", + "http/http_server_properties_impl.h", + "http/http_status_code.cc", + "http/http_status_code.h", + "http/http_stream.h", + "http/http_stream_base.h", + "http/http_stream_factory.cc", + "http/http_stream_factory.h", + "http/http_stream_factory_impl.cc", + "http/http_stream_factory_impl.h", + "http/http_stream_factory_impl_job.cc", + "http/http_stream_factory_impl_job.h", + "http/http_stream_factory_impl_request.cc", + "http/http_stream_factory_impl_request.h", + "http/http_stream_parser.cc", + "http/http_stream_parser.h", + "http/http_transaction.h", + "http/http_transaction_delegate.h", + "http/http_transaction_factory.h", + "http/http_util.cc", + "http/http_util.h", + "http/http_util_icu.cc", + "http/http_vary_data.cc", + "http/http_vary_data.h", + "http/http_version.h", + "http/md4.cc", + "http/md4.h", + "http/partial_data.cc", + "http/partial_data.h", + "http/proxy_client_socket.h", + "http/proxy_client_socket.cc", + "http/proxy_connect_redirect_http_stream.h", + "http/proxy_connect_redirect_http_stream.cc", + "http/transport_security_state.cc", + "http/transport_security_state.h", + "http/transport_security_state_static.h", + "http/url_security_manager.cc", + "http/url_security_manager.h", + "http/url_security_manager_posix.cc", + "http/url_security_manager_win.cc", + "ocsp/nss_ocsp.cc", + "ocsp/nss_ocsp.h", + "proxy/dhcp_proxy_script_adapter_fetcher_win.cc", + "proxy/dhcp_proxy_script_adapter_fetcher_win.h", + "proxy/dhcp_proxy_script_fetcher.cc", + "proxy/dhcp_proxy_script_fetcher.h", + "proxy/dhcp_proxy_script_fetcher_factory.cc", + "proxy/dhcp_proxy_script_fetcher_factory.h", + "proxy/dhcp_proxy_script_fetcher_win.cc", + "proxy/dhcp_proxy_script_fetcher_win.h", + "proxy/dhcpcsvc_init_win.cc", + "proxy/dhcpcsvc_init_win.h", + "proxy/multi_threaded_proxy_resolver.cc", + "proxy/multi_threaded_proxy_resolver.h", + "proxy/network_delegate_error_observer.cc", + "proxy/network_delegate_error_observer.h", + "proxy/polling_proxy_config_service.cc", + "proxy/polling_proxy_config_service.h", + "proxy/proxy_bypass_rules.cc", + "proxy/proxy_bypass_rules.h", + "proxy/proxy_config.cc", + "proxy/proxy_config.h", + "proxy/proxy_config_service.h", + "proxy/proxy_config_service_android.cc", + "proxy/proxy_config_service_android.h", + "proxy/proxy_config_service_fixed.cc", + "proxy/proxy_config_service_fixed.h", + "proxy/proxy_config_service_ios.cc", + "proxy/proxy_config_service_ios.h", + "proxy/proxy_config_service_linux.cc", + "proxy/proxy_config_service_linux.h", + "proxy/proxy_config_service_mac.cc", + "proxy/proxy_config_service_mac.h", + "proxy/proxy_config_service_win.cc", + "proxy/proxy_config_service_win.h", + "proxy/proxy_config_source.cc", + "proxy/proxy_config_source.h", + "proxy/proxy_info.cc", + "proxy/proxy_info.h", + "proxy/proxy_list.cc", + "proxy/proxy_list.h", + "proxy/proxy_resolver.h", + "proxy/proxy_resolver_error_observer.h", + "proxy/proxy_resolver_mac.cc", + "proxy/proxy_resolver_mac.h", + "proxy/proxy_resolver_script.h", + "proxy/proxy_resolver_script_data.cc", + "proxy/proxy_resolver_script_data.h", + "proxy/proxy_resolver_winhttp.cc", + "proxy/proxy_resolver_winhttp.h", + "proxy/proxy_retry_info.h", + "proxy/proxy_script_decider.cc", + "proxy/proxy_script_decider.h", + "proxy/proxy_script_fetcher.h", + "proxy/proxy_script_fetcher_impl.cc", + "proxy/proxy_script_fetcher_impl.h", + "proxy/proxy_server.cc", + "proxy/proxy_server.h", + "proxy/proxy_server_mac.cc", + "proxy/proxy_service.cc", + "proxy/proxy_service.h", + "quic/congestion_control/available_channel_estimator.cc", + "quic/congestion_control/available_channel_estimator.h", + "quic/congestion_control/channel_estimator.cc", + "quic/congestion_control/channel_estimator.h", + "quic/congestion_control/cube_root.cc", + "quic/congestion_control/cube_root.h", + "quic/congestion_control/cubic.cc", + "quic/congestion_control/cubic.h", + "quic/congestion_control/fix_rate_receiver.cc", + "quic/congestion_control/fix_rate_receiver.h", + "quic/congestion_control/fix_rate_sender.cc", + "quic/congestion_control/fix_rate_sender.h", + "quic/congestion_control/hybrid_slow_start.cc", + "quic/congestion_control/hybrid_slow_start.h", + "quic/congestion_control/inter_arrival_bitrate_ramp_up.cc", + "quic/congestion_control/inter_arrival_bitrate_ramp_up.h", + "quic/congestion_control/inter_arrival_overuse_detector.cc", + "quic/congestion_control/inter_arrival_overuse_detector.h", + "quic/congestion_control/inter_arrival_probe.cc", + "quic/congestion_control/inter_arrival_probe.h", + "quic/congestion_control/inter_arrival_receiver.cc", + "quic/congestion_control/inter_arrival_receiver.h", + "quic/congestion_control/inter_arrival_sender.cc", + "quic/congestion_control/inter_arrival_sender.h", + "quic/congestion_control/inter_arrival_state_machine.cc", + "quic/congestion_control/inter_arrival_state_machine.h", + "quic/congestion_control/leaky_bucket.cc", + "quic/congestion_control/leaky_bucket.h", + "quic/congestion_control/paced_sender.cc", + "quic/congestion_control/paced_sender.h", + "quic/congestion_control/quic_congestion_manager.cc", + "quic/congestion_control/quic_congestion_manager.h", + "quic/congestion_control/quic_max_sized_map.h", + "quic/congestion_control/receive_algorithm_interface.cc", + "quic/congestion_control/receive_algorithm_interface.h", + "quic/congestion_control/send_algorithm_interface.cc", + "quic/congestion_control/send_algorithm_interface.h", + "quic/congestion_control/tcp_cubic_sender.cc", + "quic/congestion_control/tcp_cubic_sender.h", + "quic/congestion_control/tcp_receiver.cc", + "quic/congestion_control/tcp_receiver.h", + "quic/crypto/aes_128_gcm_12_decrypter.h", + "quic/crypto/aes_128_gcm_12_decrypter_nss.cc", + "quic/crypto/aes_128_gcm_12_decrypter_openssl.cc", + "quic/crypto/aes_128_gcm_12_encrypter.h", + "quic/crypto/aes_128_gcm_12_encrypter_nss.cc", + "quic/crypto/aes_128_gcm_12_encrypter_openssl.cc", + "quic/crypto/cert_compressor.cc", + "quic/crypto/cert_compressor.h", + "quic/crypto/channel_id.cc", + "quic/crypto/channel_id.h", + "quic/crypto/channel_id_nss.cc", + "quic/crypto/channel_id_openssl.cc", + "quic/crypto/common_cert_set.cc", + "quic/crypto/common_cert_set.h", + "quic/crypto/crypto_framer.cc", + "quic/crypto/crypto_framer.h", + "quic/crypto/crypto_handshake.cc", + "quic/crypto/crypto_handshake.h", + "quic/crypto/crypto_protocol.h", + "quic/crypto/crypto_secret_boxer.cc", + "quic/crypto/crypto_secret_boxer.h", + "quic/crypto/crypto_server_config.cc", + "quic/crypto/crypto_server_config.h", + "quic/crypto/crypto_server_config_protobuf.cc", + "quic/crypto/crypto_server_config_protobuf.h", + "quic/crypto/crypto_utils.cc", + "quic/crypto/crypto_utils.h", + "quic/crypto/curve25519_key_exchange.cc", + "quic/crypto/curve25519_key_exchange.h", + "quic/crypto/ephemeral_key_source.h", + "quic/crypto/key_exchange.h", + "quic/crypto/null_decrypter.cc", + "quic/crypto/null_decrypter.h", + "quic/crypto/null_encrypter.cc", + "quic/crypto/null_encrypter.h", + "quic/crypto/p256_key_exchange.h", + "quic/crypto/p256_key_exchange_nss.cc", + "quic/crypto/p256_key_exchange_openssl.cc", + "quic/crypto/proof_source.h", + "quic/crypto/proof_source_chromium.cc", + "quic/crypto/proof_source_chromium.h", + "quic/crypto/proof_verifier.cc", + "quic/crypto/proof_verifier_chromium.cc", + "quic/crypto/proof_verifier_chromium.h", + "quic/crypto/quic_decrypter.cc", + "quic/crypto/quic_decrypter.h", + "quic/crypto/quic_encrypter.cc", + "quic/crypto/quic_encrypter.h", + "quic/crypto/quic_random.cc", + "quic/crypto/quic_random.h", + "quic/crypto/scoped_evp_cipher_ctx.cc", + "quic/crypto/scoped_evp_cipher_ctx.h", + "quic/crypto/strike_register.cc", + "quic/crypto/strike_register.h", + "quic/crypto/source_address_token.cc", + "quic/crypto/source_address_token.h", + "quic/quic_alarm.cc", + "quic/quic_alarm.h", + "quic/quic_bandwidth.cc", + "quic/quic_bandwidth.h", + "quic/quic_blocked_writer_interface.h", + "quic/quic_client_session.cc", + "quic/quic_client_session.h", + "quic/quic_config.cc", + "quic/quic_config.h", + "quic/quic_crypto_client_stream.cc", + "quic/quic_crypto_client_stream.h", + "quic/quic_crypto_client_stream_factory.h", + "quic/quic_crypto_server_stream.cc", + "quic/quic_crypto_server_stream.h", + "quic/quic_crypto_stream.cc", + "quic/quic_crypto_stream.h", + "quic/quic_clock.cc", + "quic/quic_clock.h", + "quic/quic_connection.cc", + "quic/quic_connection.h", + "quic/quic_connection_helper.cc", + "quic/quic_connection_helper.h", + "quic/quic_connection_logger.cc", + "quic/quic_connection_logger.h", + "quic/quic_connection_stats.cc", + "quic/quic_connection_stats.h", + "quic/quic_data_reader.cc", + "quic/quic_data_reader.h", + "quic/quic_data_writer.cc", + "quic/quic_data_writer.h", + "quic/quic_fec_group.cc", + "quic/quic_fec_group.h", + "quic/quic_framer.cc", + "quic/quic_framer.h", + "quic/quic_http_stream.cc", + "quic/quic_http_stream.h", + "quic/quic_packet_creator.cc", + "quic/quic_packet_creator.h", + "quic/quic_packet_generator.cc", + "quic/quic_packet_generator.h", + "quic/quic_protocol.cc", + "quic/quic_protocol.h", + "quic/quic_received_packet_manager.cc", + "quic/quic_received_packet_manager.h", + "quic/quic_reliable_client_stream.cc", + "quic/quic_reliable_client_stream.h", + "quic/quic_sent_entropy_manager.cc", + "quic/quic_sent_entropy_manager.h", + "quic/quic_session.cc", + "quic/quic_session.h", + "quic/quic_spdy_compressor.cc", + "quic/quic_spdy_compressor.h", + "quic/quic_spdy_decompressor.cc", + "quic/quic_spdy_decompressor.h", + "quic/quic_stream_factory.cc", + "quic/quic_stream_factory.h", + "quic/quic_stream_sequencer.cc", + "quic/quic_stream_sequencer.h", + "quic/quic_time.cc", + "quic/quic_time.h", + "quic/quic_utils.cc", + "quic/quic_utils.h", + "quic/reliable_quic_stream.cc", + "quic/reliable_quic_stream.h", + "quic/spdy_utils.cc", + "quic/spdy_utils.h", + "socket/buffered_write_stream_socket.cc", + "socket/buffered_write_stream_socket.h", + "socket/client_socket_factory.cc", + "socket/client_socket_factory.h", + "socket/client_socket_handle.cc", + "socket/client_socket_handle.h", + "socket/client_socket_pool.cc", + "socket/client_socket_pool.h", + "socket/client_socket_pool_base.cc", + "socket/client_socket_pool_base.h", + "socket/client_socket_pool_histograms.cc", + "socket/client_socket_pool_histograms.h", + "socket/client_socket_pool_manager.cc", + "socket/client_socket_pool_manager.h", + "socket/client_socket_pool_manager_impl.cc", + "socket/client_socket_pool_manager_impl.h", + "socket/next_proto.h", + "socket/nss_ssl_util.cc", + "socket/nss_ssl_util.h", + "socket/server_socket.h", + "socket/socket_net_log_params.cc", + "socket/socket_net_log_params.h", + "socket/socket.h", + "socket/socks5_client_socket.cc", + "socket/socks5_client_socket.h", + "socket/socks_client_socket.cc", + "socket/socks_client_socket.h", + "socket/socks_client_socket_pool.cc", + "socket/socks_client_socket_pool.h", + "socket/ssl_client_socket.cc", + "socket/ssl_client_socket.h", + "socket/ssl_client_socket_nss.cc", + "socket/ssl_client_socket_nss.h", + "socket/ssl_client_socket_openssl.cc", + "socket/ssl_client_socket_openssl.h", + "socket/ssl_client_socket_pool.cc", + "socket/ssl_client_socket_pool.h", + "socket/ssl_error_params.cc", + "socket/ssl_error_params.h", + "socket/ssl_server_socket.h", + "socket/ssl_server_socket_nss.cc", + "socket/ssl_server_socket_nss.h", + "socket/ssl_server_socket_openssl.cc", + "socket/ssl_socket.h", + "socket/stream_listen_socket.cc", + "socket/stream_listen_socket.h", + "socket/stream_socket.cc", + "socket/stream_socket.h", + "socket/tcp_client_socket.cc", + "socket/tcp_client_socket.h", + "socket/tcp_client_socket_libevent.cc", + "socket/tcp_client_socket_libevent.h", + "socket/tcp_client_socket_win.cc", + "socket/tcp_client_socket_win.h", + "socket/tcp_listen_socket.cc", + "socket/tcp_listen_socket.h", + "socket/tcp_server_socket.h", + "socket/tcp_server_socket_libevent.cc", + "socket/tcp_server_socket_libevent.h", + "socket/tcp_server_socket_win.cc", + "socket/tcp_server_socket_win.h", + "socket/transport_client_socket_pool.cc", + "socket/transport_client_socket_pool.h", + "socket/unix_domain_socket_posix.cc", + "socket/unix_domain_socket_posix.h", + "socket_stream/socket_stream.cc", + "socket_stream/socket_stream.h", + "socket_stream/socket_stream_job.cc", + "socket_stream/socket_stream_job.h", + "socket_stream/socket_stream_job_manager.cc", + "socket_stream/socket_stream_job_manager.h", + "socket_stream/socket_stream_metrics.cc", + "socket_stream/socket_stream_metrics.h", + "spdy/buffered_spdy_framer.cc", + "spdy/buffered_spdy_framer.h", + "spdy/spdy_bitmasks.h", + "spdy/spdy_buffer.cc", + "spdy/spdy_buffer.h", + "spdy/spdy_buffer_producer.cc", + "spdy/spdy_buffer_producer.h", + "spdy/spdy_credential_builder.cc", + "spdy/spdy_credential_builder.h", + "spdy/spdy_credential_state.cc", + "spdy/spdy_credential_state.h", + "spdy/spdy_frame_builder.cc", + "spdy/spdy_frame_builder.h", + "spdy/spdy_frame_reader.cc", + "spdy/spdy_frame_reader.h", + "spdy/spdy_framer.cc", + "spdy/spdy_framer.h", + "spdy/spdy_header_block.cc", + "spdy/spdy_header_block.h", + "spdy/spdy_http_stream.cc", + "spdy/spdy_http_stream.h", + "spdy/spdy_http_utils.cc", + "spdy/spdy_http_utils.h", + "spdy/spdy_priority_forest.h", + "spdy/spdy_protocol.cc", + "spdy/spdy_protocol.h", + "spdy/spdy_proxy_client_socket.cc", + "spdy/spdy_proxy_client_socket.h", + "spdy/spdy_read_queue.cc", + "spdy/spdy_read_queue.h", + "spdy/spdy_session.cc", + "spdy/spdy_session.h", + "spdy/spdy_session_key.cc", + "spdy/spdy_session_key.h", + "spdy/spdy_session_pool.cc", + "spdy/spdy_session_pool.h", + "spdy/spdy_stream.cc", + "spdy/spdy_stream.h", + "spdy/spdy_websocket_stream.cc", + "spdy/spdy_websocket_stream.h", + "spdy/spdy_write_queue.cc", + "spdy/spdy_write_queue.h", + "spdy/write_blocked_list.h", + "ssl/client_cert_store.h", + "ssl/client_cert_store_impl.h", + "ssl/client_cert_store_impl_mac.cc", + "ssl/client_cert_store_impl_nss.cc", + "ssl/client_cert_store_impl_win.cc", + "ssl/default_server_bound_cert_store.cc", + "ssl/default_server_bound_cert_store.h", + "ssl/openssl_client_key_store.cc", + "ssl/openssl_client_key_store.h", + "ssl/server_bound_cert_service.cc", + "ssl/server_bound_cert_service.h", + "ssl/server_bound_cert_store.cc", + "ssl/server_bound_cert_store.h", + "ssl/ssl_cert_request_info.cc", + "ssl/ssl_cert_request_info.h", + "ssl/ssl_cipher_suite_names.cc", + "ssl/ssl_cipher_suite_names.h", + "ssl/ssl_client_auth_cache.cc", + "ssl/ssl_client_auth_cache.h", + "ssl/ssl_client_cert_type.h", + "ssl/ssl_config_service.cc", + "ssl/ssl_config_service.h", + "ssl/ssl_config_service_defaults.cc", + "ssl/ssl_config_service_defaults.h", + "ssl/ssl_info.cc", + "ssl/ssl_info.h", + "third_party/mozilla_security_manager/nsKeygenHandler.cpp", + "third_party/mozilla_security_manager/nsKeygenHandler.h", + "third_party/mozilla_security_manager/nsNSSCertificateDB.cpp", + "third_party/mozilla_security_manager/nsNSSCertificateDB.h", + "third_party/mozilla_security_manager/nsPKCS12Blob.cpp", + "third_party/mozilla_security_manager/nsPKCS12Blob.h", + "udp/datagram_client_socket.h", + "udp/datagram_server_socket.h", + "udp/datagram_socket.h", + "udp/udp_client_socket.cc", + "udp/udp_client_socket.h", + "udp/udp_net_log_parameters.cc", + "udp/udp_net_log_parameters.h", + "udp/udp_server_socket.cc", + "udp/udp_server_socket.h", + "udp/udp_socket.h", + "udp/udp_socket_libevent.cc", + "udp/udp_socket_libevent.h", + "udp/udp_socket_win.cc", + "udp/udp_socket_win.h", + "url_request/data_protocol_handler.cc", + "url_request/data_protocol_handler.h", + "url_request/file_protocol_handler.cc", + "url_request/file_protocol_handler.h", + "url_request/fraudulent_certificate_reporter.h", + "url_request/ftp_protocol_handler.cc", + "url_request/ftp_protocol_handler.h", + "url_request/http_user_agent_settings.h", + "url_request/protocol_intercept_job_factory.cc", + "url_request/protocol_intercept_job_factory.h", + "url_request/static_http_user_agent_settings.cc", + "url_request/static_http_user_agent_settings.h", + "url_request/url_fetcher.cc", + "url_request/url_fetcher.h", + "url_request/url_fetcher_core.cc", + "url_request/url_fetcher_core.h", + "url_request/url_fetcher_delegate.cc", + "url_request/url_fetcher_delegate.h", + "url_request/url_fetcher_factory.h", + "url_request/url_fetcher_impl.cc", + "url_request/url_fetcher_impl.h", + "url_request/url_fetcher_response_writer.cc", + "url_request/url_fetcher_response_writer.h", + "url_request/url_request.cc", + "url_request/url_request.h", + "url_request/url_request_about_job.cc", + "url_request/url_request_about_job.h", + "url_request/url_request_context.cc", + "url_request/url_request_context.h", + "url_request/url_request_context_builder.cc", + "url_request/url_request_context_builder.h", + "url_request/url_request_context_getter.cc", + "url_request/url_request_context_getter.h", + "url_request/url_request_context_storage.cc", + "url_request/url_request_context_storage.h", + "url_request/url_request_data_job.cc", + "url_request/url_request_data_job.h", + "url_request/url_request_error_job.cc", + "url_request/url_request_error_job.h", + "url_request/url_request_file_dir_job.cc", + "url_request/url_request_file_dir_job.h", + "url_request/url_request_file_job.cc", + "url_request/url_request_file_job.h", + "url_request/url_request_filter.cc", + "url_request/url_request_filter.h", + "url_request/url_request_ftp_job.cc", + "url_request/url_request_ftp_job.h", + "url_request/url_request_http_job.cc", + "url_request/url_request_http_job.h", + "url_request/url_request_job.cc", + "url_request/url_request_job.h", + "url_request/url_request_job_factory.cc", + "url_request/url_request_job_factory.h", + "url_request/url_request_job_factory_impl.cc", + "url_request/url_request_job_factory_impl.h", + "url_request/url_request_job_manager.cc", + "url_request/url_request_job_manager.h", + "url_request/url_request_netlog_params.cc", + "url_request/url_request_netlog_params.h", + "url_request/url_request_redirect_job.cc", + "url_request/url_request_redirect_job.h", + "url_request/url_request_simple_job.cc", + "url_request/url_request_simple_job.h", + "url_request/url_request_status.h", + "url_request/url_request_test_job.cc", + "url_request/url_request_test_job.h", + "url_request/url_request_throttler_entry.cc", + "url_request/url_request_throttler_entry.h", + "url_request/url_request_throttler_entry_interface.h", + "url_request/url_request_throttler_header_adapter.cc", + "url_request/url_request_throttler_header_adapter.h", + "url_request/url_request_throttler_header_interface.h", + "url_request/url_request_throttler_manager.cc", + "url_request/url_request_throttler_manager.h", + "url_request/view_cache_helper.cc", + "url_request/view_cache_helper.h", + "websockets/websocket_channel.cc", + "websockets/websocket_channel.h", + "websockets/websocket_errors.cc", + "websockets/websocket_errors.h", + "websockets/websocket_frame.cc", + "websockets/websocket_frame.h", + "websockets/websocket_frame_parser.cc", + "websockets/websocket_frame_parser.h", + "websockets/websocket_handshake_handler.cc", + "websockets/websocket_handshake_handler.h", + "websockets/websocket_job.cc", + "websockets/websocket_job.h", + "websockets/websocket_mux.h", + "websockets/websocket_net_log_params.cc", + "websockets/websocket_net_log_params.h", + "websockets/websocket_stream.cc", + "websockets/websocket_stream.h", + "websockets/websocket_stream_base.h", + "websockets/websocket_throttle.cc", + "websockets/websocket_throttle.h", + ] + + defines = [ "NET_IMPLEMENTATION" ] + deps = [ ":net_resources", "//base", "//base:base_i18n", "//base/third_party/dynamic_annotations", "//crypto", + "//crypto/ssl:metassl", "//sdch", "//third_party/icu:icui18n", "//third_party/icu:icuuc", "//third_party/zlib", "//url:url_lib", ] -} + if (is_win) { + sources -= [ + "http/http_auth_handler_ntlm_portable.cc", + "socket/tcp_client_socket_libevent.cc", + "socket/tcp_client_socket_libevent.h", + "socket/tcp_server_socket_libevent.cc", + "socket/tcp_server_socket_libevent.h", + "ssl/client_cert_store_impl_nss.cc", + "udp/udp_socket_libevent.cc", + "udp/udp_socket_libevent.h", + ] + deps += [ + #"//net/third_party/nss/ssl:crssl", + #"//third_party/nss:nspr", + #"//third_party/nss:nss", + ] + } else { # !is_win + sources -= [ + "base/winsock_init.cc", + "base/winsock_init.h", + "base/winsock_util.cc", + "base/winsock_util.h", + "proxy/proxy_resolver_winhttp.cc", + "proxy/proxy_resolver_winhttp.h", + ] + } + + if (is_mac) { + sources -= [ + "ssl/client_cert_store_impl_nss.cc", + ] + deps += [ + "//net/third_party/nss/ssl:crssl", + "//third_party/nss:nspr", + "//third_party/nss:nss", + ] + } + + if (is_chromeos) { + sources -= [ + "base/network_change_notifier_linux.cc", + "base/network_change_notifier_linux.h", + "base/network_change_notifier_netlink_linux.cc", + "base/network_change_notifier_netlink_linux.h", + "proxy/proxy_config_service_linux.cc", + "proxy/proxy_config_service_linux.h", + ] + } + + if (use_openssl) { + sources -= [ + "base/crypto_module_nss.cc", + "base/keygen_handler_nss.cc", + "base/nss_memio.c", + "base/nss_memio.h", + "cert/cert_database_nss.cc", + "cert/cert_verify_proc_nss.cc", + "cert/cert_verify_proc_nss.h", + "cert/jwk_serializer_nss.cc", + "cert/nss_cert_database.cc", + "cert/nss_cert_database.h", + "cert/test_root_certs_nss.cc", + "cert/x509_certificate_nss.cc", + "cert/x509_util_nss.cc", + "cert/x509_util_nss.h", + "ocsp/nss_ocsp.cc", + "ocsp/nss_ocsp.h", + "quic/crypto/aes_128_gcm_12_decrypter_nss.cc", + "quic/crypto/aes_128_gcm_12_encrypter_nss.cc", + "quic/crypto/channel_id_nss.cc", + "quic/crypto/p256_key_exchange_nss.cc", + "socket/nss_ssl_util.cc", + "socket/nss_ssl_util.h", + "socket/ssl_client_socket_nss.cc", + "socket/ssl_client_socket_nss.h", + "socket/ssl_server_socket_nss.cc", + "socket/ssl_server_socket_nss.h", + "ssl/client_cert_store_impl_nss.cc", + "third_party/mozilla_security_manager/nsKeygenHandler.cpp", + "third_party/mozilla_security_manager/nsKeygenHandler.h", + "third_party/mozilla_security_manager/nsNSSCertificateDB.cpp", + "third_party/mozilla_security_manager/nsNSSCertificateDB.h", + "third_party/mozilla_security_manager/nsPKCS12Blob.cpp", + "third_party/mozilla_security_manager/nsPKCS12Blob.h", + ] + } else { # !use_openssl + sources -= [ + "base/crypto_module_openssl.cc", + "base/keygen_handler_openssl.cc", + "base/openssl_private_key_store.h", + #"base/openssl_private_key_store_android.cc", + "base/openssl_private_key_store_memory.cc", + "cert/cert_database_openssl.cc", + "cert/cert_verify_proc_openssl.cc", + "cert/cert_verify_proc_openssl.h", + "cert/jwk_serializer_openssl.cc", + "cert/test_root_certs_openssl.cc", + "cert/x509_certificate_openssl.cc", + "cert/x509_util_openssl.cc", + "cert/x509_util_openssl.h", + "quic/crypto/aes_128_gcm_12_decrypter_openssl.cc", + "quic/crypto/aes_128_gcm_12_encrypter_openssl.cc", + "quic/crypto/channel_id_openssl.cc", + "quic/crypto/p256_key_exchange_openssl.cc", + "quic/crypto/scoped_evp_cipher_ctx.cc", + "quic/crypto/scoped_evp_cipher_ctx.h", + "socket/ssl_client_socket_openssl.cc", + "socket/ssl_client_socket_openssl.h", + "socket/ssl_server_socket_openssl.cc", + "ssl/openssl_client_key_store.cc", + "ssl/openssl_client_key_store.h", + ] + } + + if (is_posix) { + posix_avoid_mmap = false # TODO(brettw) should be true on 32-bit Android. + if (posix_avoid_mmap) { + defines = [ "POSIX_AVOID_MMAP" ] + sources -= "disk_cache/mapped_file_posix.cc" + } else { # !posix_avoid_mmap + sources -= "disk_cache/mapped_file_avoid_mmap_posix.cc" + } + } +} grit("net_resources") { source = "base/net_resources.grd" diff --git a/tools/gn/secondary/net/third_party/nss/ssl/BUILD.gn b/tools/gn/secondary/net/third_party/nss/ssl/BUILD.gn index d5658c6..0410146 100644 --- a/tools/gn/secondary/net/third_party/nss/ssl/BUILD.gn +++ b/tools/gn/secondary/net/third_party/nss/ssl/BUILD.gn @@ -2,6 +2,12 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. +config("crssl_config") { + includes = [ + "//net/third_party/nss/ssl", + ] +} + # Not named "ssl" so the lib doesn't conflict with OpenSSL's libssl component("crssl") { sources = [ @@ -59,6 +65,8 @@ component("crssl") { configs -= "//build/config/compiler:chromium_code" configs += "//build/config/compiler:no_chromium_code" + direct_dependent_configs = [ ":crssl_config" ] + if (is_win) { sources -= [ "unix_err.c", @@ -73,7 +81,6 @@ component("crssl") { if (is_linux) { includes = [ "bodge" ] - direct_dependent_configs = [ "//net/third_party/nss:nss_linux_config" ] } if (is_mac) { sources -= "bodge/secitem_array.c" diff --git a/tools/gn/secondary/tools/grit/grit_rule.gni b/tools/gn/secondary/tools/grit/grit_rule.gni index 7b3ba48..5f68f97 100644 --- a/tools/gn/secondary/tools/grit/grit_rule.gni +++ b/tools/gn/secondary/tools/grit/grit_rule.gni @@ -22,7 +22,17 @@ template("grit") { [ "--outputs", "$output_dir", source, "-f", resource_ids ], "list lines") - custom(target_name + "_grit") { + # The current grit setup makes an file in $target_gen_dir/grit/foo.h that + # the source code expects to include via "grit/foo.h". It would be nice to + # change this to including absolute paths relative to the root gen directory + # (like "mycomponent/foo.h"). This config sets up the include path. + grit_config = target_name + "_grit_config" + config(grit_config) { + includes = [ target_gen_dir ] + } + + grit_custom_target = target_name + "_grit" + custom(grit_custom_target) { script = "$relative_source_root_dir/tools/grit/grit.py" data = grit_inputs # TODO(brettw) this should be inputs or something outputs = grit_outputs @@ -39,6 +49,7 @@ template("grit") { # same as the argument the template was invoked with. static_library(target_name) { sources = grit_outputs - deps = [ ":${target_name}_grit" ] + deps = [ ":$grit_custom_target" ] + direct_dependent_configs = [ ":$grit_config" ] } } diff --git a/tools/gn/toolchain_manager.cc b/tools/gn/toolchain_manager.cc index 3e84530..bd70baa 100644 --- a/tools/gn/toolchain_manager.cc +++ b/tools/gn/toolchain_manager.cc @@ -537,7 +537,7 @@ void ToolchainManager::BackgroundInvoke(const Info* info, } Scope our_scope(info->settings.base_config()); - ScopePerFileProvider per_file_provider(&our_scope, file_name); + ScopePerFileProvider per_file_provider(&our_scope); our_scope.set_source_dir(file_name.GetDir()); Err err; diff --git a/tools/gn/variables.cc b/tools/gn/variables.cc index f4d1732..85cfa38 100644 --- a/tools/gn/variables.cc +++ b/tools/gn/variables.cc @@ -115,6 +115,8 @@ const char kRelativeRootGenDir_Help[] = "\n" " Generally scripts should use \"relative_target_output_dir\" instead.\n" "\n" + " See also \"root_gen_dir\".\n" + "\n" "Example:\n" "\n" " If your current build file is in \"//tools\", you might write\n" @@ -154,7 +156,6 @@ extern const char kRelativeSourceRootDir_Help[] = " command = \"$relative_build_to_source_root_dir/third_party/gold/ld\n" " }\n"; - const char kRelativeTargetGenDir[] = "relative_target_gen_dir"; const char kRelativeTargetGenDir_HelpShort[] = "relative_target_gen_dir: [string] Relative dir for generated files."; @@ -167,9 +168,11 @@ const char kRelativeTargetGenDir_Help[] = " Normally used when invoking scripts (the current directory of which is\n" " that of the invoking buildfile) that need to write files.\n" "\n" - " Scripts generating final rather than intermetiate files should use the\n" + " Scripts generating final rather than intermediate files should use the\n" " \"relative_target_output_dir\" instead.\n" "\n" + " See also \"target_gen_dir\".\n" + "\n" "Example:\n" "\n" " If your current build file is in \"//tools\", you might write\n" @@ -195,6 +198,41 @@ const char kRelativeTargetOutputDir_Help[] = " If your current build file is in \"//tools\", you might write\n" " args = [ \"$relative_target_output_dir/final.lib\" ]\n"; +const char kRootGenDir[] = "root_gen_dir"; +const char kRootGenDir_HelpShort[] = + "root_gen_dir: [string] Absolute root dir for generated files."; +const char kRootGenDir_Help[] = + "root_gen_dir: Absolute root dir for generated files.\n" + "\n" + " Absolute path to the root of the generated output directory tree for\n" + " the current toolchain. An example value might be \"//out/Debug/gen\".\n" + " It will not have a trailing slash.\n" + "\n" + " This is primarily useful for setting up include paths for generated\n" + " files. Scripts will want the \"relative_root_gen_dir\" instead\n" + " which will be relative to the scripts' current directory.\n" + "\n" + " See also \"relative_root_gen_dir\" and \"target_gen_dir\".\n"; + +const char kTargetGenDir[] = "target_gen_dir"; +const char kTargetGenDir_HelpShort[] = + "target_gen_dir: [string] Absolute dir for generated files."; +const char kTargetGenDir_Help[] = + "target_gen_dir: Absolute dir for generated files.\n" + "\n" + " Absolute path to the target's generated file directory. If your\n" + " current target is in \"//tools/doom_melon\" then this value might be\n" + " \"//out/Debug/gen/tools/doom_melon\". It will not have a trailing\n" + " slash.\n" + "\n" + " Scripts generating files will generally want the relative version of\n" + " this instead: \"relative_target_gen_dir\".\n" + "\n" + "Example:\n" + "\n" + " # Add the gen directory to the include path.\n" + " args = [ target_gen_dir ]\n"; + // Target variables ------------------------------------------------------------ const char kAllDependentConfigs[] = "all_dependent_configs"; @@ -444,6 +482,8 @@ const VariableInfoMap& GetBuiltinVariables() { INSERT_VARIABLE(RelativeSourceRootDir) INSERT_VARIABLE(RelativeTargetGenDir) INSERT_VARIABLE(RelativeTargetOutputDir) + INSERT_VARIABLE(RootGenDir) + INSERT_VARIABLE(TargetGenDir) } return info_map; } diff --git a/tools/gn/variables.h b/tools/gn/variables.h index c1d2a29..526e796 100644 --- a/tools/gn/variables.h +++ b/tools/gn/variables.h @@ -65,6 +65,14 @@ extern const char kRelativeTargetOutputDir[]; extern const char kRelativeTargetOutputDir_HelpShort[]; extern const char kRelativeTargetOutputDir_Help[]; +extern const char kRootGenDir[]; +extern const char kRootGenDir_HelpShort[]; +extern const char kRootGenDir_Help[]; + +extern const char kTargetGenDir[]; +extern const char kTargetGenDir_HelpShort[]; +extern const char kTargetGenDir_Help[]; + // Target vars ----------------------------------------------------------------- extern const char kAllDependentConfigs[]; |