1 # Copyright 2013 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
9 'linux_link_kerberos%': 0,
10 'use_tracing_cache_backend%': 0,
12 ['chromeos==1 or embedded==1 or OS=="android" or OS=="ios"', {
13 # Disable Kerberos on ChromeOS, Android and iOS, at least for now.
14 # It needs configuration (krb5.conf and so on).
16 }, { # chromeos == 0 and embedded==0 and OS!="android" and OS!="ios"
19 ['OS=="android" and target_arch != "ia32"', {
20 # The way the cache uses mmap() is inefficient on some Android devices.
21 # If this flag is set, we hackily avoid using mmap() in the disk cache.
22 # We are pretty confident that mmap-ing the index would not hurt any
23 # existing x86 android devices, but we cannot be so sure about the
24 # variety of ARM devices. So enable it for x86 only for now.
25 'posix_avoid_mmap%': 1,
27 'posix_avoid_mmap%': 0,
30 # Websockets and socket stream are not used on iOS.
31 'enable_websockets%': 0,
32 # iOS does not use V8.
34 'enable_built_in_dns%': 0,
36 'enable_websockets%': 1,
38 'enable_built_in_dns%': 1,
43 '../build/win_precompile.gypi',
48 'target_name': 'net_derived_sources',
51 'base/registry_controlled_domains/effective_tld_names.gperf',
52 'base/registry_controlled_domains/effective_tld_names_unittest1.gperf',
53 'base/registry_controlled_domains/effective_tld_names_unittest2.gperf',
54 'base/registry_controlled_domains/effective_tld_names_unittest3.gperf',
55 'base/registry_controlled_domains/effective_tld_names_unittest4.gperf',
56 'base/registry_controlled_domains/effective_tld_names_unittest5.gperf',
57 'base/registry_controlled_domains/effective_tld_names_unittest6.gperf',
64 '<(SHARED_INTERMEDIATE_DIR)/net/<(RULE_INPUT_DIRNAME)/<(RULE_INPUT_ROOT)-inc.cc',
67 'tools/tld_cleanup/make_dafsa.py',
71 'tools/tld_cleanup/make_dafsa.py',
73 '<(SHARED_INTERMEDIATE_DIR)/net/<(RULE_INPUT_DIRNAME)/<(RULE_INPUT_ROOT)-inc.cc',
77 'direct_dependent_settings': {
79 '<(SHARED_INTERMEDIATE_DIR)'
85 'type': '<(component)',
86 'variables': { 'enable_wexit_time_destructors': 1, },
88 '../base/base.gyp:base',
89 '../base/base.gyp:base_i18n',
90 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
91 '../crypto/crypto.gyp:crypto',
92 '../sdch/sdch.gyp:sdch',
93 '../third_party/icu/icu.gyp:icui18n',
94 '../third_party/icu/icu.gyp:icuuc',
95 '../third_party/zlib/zlib.gyp:zlib',
96 '../url/url.gyp:url_lib',
97 'net_derived_sources',
101 '<@(net_nacl_common_sources)',
102 '<@(net_non_nacl_sources)',
105 'NET_IMPLEMENTATION',
107 'export_dependent_settings': [
108 '../base/base.gyp:base',
113 'base/network_change_notifier_linux.cc',
114 'base/network_change_notifier_linux.h',
115 'base/network_change_notifier_netlink_linux.cc',
116 'base/network_change_notifier_netlink_linux.h',
117 'proxy/proxy_config_service_linux.cc',
118 'proxy/proxy_config_service_linux.h',
121 ['use_kerberos==1', {
128 '/usr/include/kerberosV'
131 ['linux_link_kerberos==1', {
134 '<!@(krb5-config --libs gssapi)',
137 }, { # linux_link_kerberos==0
143 }, { # use_kerberos == 0
145 'http/http_auth_gssapi_posix.cc',
146 'http/http_auth_gssapi_posix.h',
147 'http/http_auth_handler_negotiate.h',
148 'http/http_auth_handler_negotiate.cc',
151 ['posix_avoid_mmap==1', {
155 'direct_dependent_settings': {
161 'disk_cache/blockfile/mapped_file_posix.cc',
165 'disk_cache/blockfile/mapped_file_avoid_mmap_posix.cc',
168 ['disable_file_support==1', {
169 # TODO(mmenke): Should probably get rid of the dependency on
170 # net_resources in this case (It's used in net_util, to format
171 # directory listings. Also used outside of net/).
173 'base/directory_lister.cc',
174 'base/directory_lister.h',
175 'url_request/url_request_file_dir_job.cc',
176 'url_request/url_request_file_dir_job.h',
177 'url_request/url_request_file_job.cc',
178 'url_request/url_request_file_job.h',
179 'url_request/file_protocol_handler.cc',
180 'url_request/file_protocol_handler.h',
183 ['disable_ftp_support==1', {
185 ['exclude', '^ftp/'],
188 'url_request/ftp_protocol_handler.cc',
189 'url_request/ftp_protocol_handler.h',
190 'url_request/url_request_ftp_job.cc',
191 'url_request/url_request_ftp_job.h',
194 ['enable_built_in_dns==1', {
196 'ENABLE_BUILT_IN_DNS',
200 'dns/address_sorter_posix.cc',
201 'dns/address_sorter_posix.h',
205 ['use_tracing_cache_backend==1', {
207 'USE_TRACING_CACHE_BACKEND'
212 'base/crypto_module_nss.cc',
213 'base/keygen_handler_nss.cc',
216 'cert/cert_database_nss.cc',
217 'cert/cert_verify_proc_nss.cc',
218 'cert/cert_verify_proc_nss.h',
219 'cert/ct_log_verifier_nss.cc',
220 'cert/ct_objects_extractor_nss.cc',
221 'cert/jwk_serializer_nss.cc',
222 'cert/nss_cert_database.cc',
223 'cert/nss_cert_database.h',
224 'cert/nss_cert_database_chromeos.cc',
225 'cert/nss_cert_database_chromeos.h',
226 'cert/nss_profile_filter_chromeos.cc',
227 'cert/nss_profile_filter_chromeos.h',
228 'cert/scoped_nss_types.h',
229 'cert/test_root_certs_nss.cc',
230 'cert/x509_certificate_nss.cc',
231 'cert/x509_util_nss.cc',
232 'cert/x509_util_nss.h',
235 'quic/crypto/aead_base_decrypter_nss.cc',
236 'quic/crypto/aead_base_encrypter_nss.cc',
237 'quic/crypto/aes_128_gcm_12_decrypter_nss.cc',
238 'quic/crypto/aes_128_gcm_12_encrypter_nss.cc',
239 'quic/crypto/chacha20_poly1305_decrypter_nss.cc',
240 'quic/crypto/chacha20_poly1305_encrypter_nss.cc',
241 'quic/crypto/channel_id_nss.cc',
242 'quic/crypto/p256_key_exchange_nss.cc',
243 'socket/nss_ssl_util.cc',
244 'socket/nss_ssl_util.h',
245 'socket/ssl_client_socket_nss.cc',
246 'socket/ssl_client_socket_nss.h',
247 'socket/ssl_server_socket_nss.cc',
248 'socket/ssl_server_socket_nss.h',
249 'third_party/mozilla_security_manager/nsKeygenHandler.cpp',
250 'third_party/mozilla_security_manager/nsKeygenHandler.h',
251 'third_party/mozilla_security_manager/nsNSSCertificateDB.cpp',
252 'third_party/mozilla_security_manager/nsNSSCertificateDB.h',
253 'third_party/mozilla_security_manager/nsPKCS12Blob.cpp',
254 'third_party/mozilla_security_manager/nsPKCS12Blob.h',
257 '../third_party/openssl/openssl.gyp:openssl',
260 { # else !use_openssl: remove the unneeded files
262 'base/crypto_module_openssl.cc',
263 'cert/ct_log_verifier_openssl.cc',
264 'cert/ct_objects_extractor_openssl.cc',
265 'cert/jwk_serializer_openssl.cc',
266 'cert/x509_util_openssl.cc',
267 'cert/x509_util_openssl.h',
268 'quic/crypto/aead_base_decrypter_openssl.cc',
269 'quic/crypto/aead_base_encrypter_openssl.cc',
270 'quic/crypto/aes_128_gcm_12_decrypter_openssl.cc',
271 'quic/crypto/aes_128_gcm_12_encrypter_openssl.cc',
272 'quic/crypto/chacha20_poly1305_decrypter_openssl.cc',
273 'quic/crypto/chacha20_poly1305_encrypter_openssl.cc',
274 'quic/crypto/channel_id_openssl.cc',
275 'quic/crypto/p256_key_exchange_openssl.cc',
276 'quic/crypto/scoped_evp_aead_ctx.cc',
277 'quic/crypto/scoped_evp_aead_ctx.h',
278 'socket/openssl_ssl_util.cc',
279 'socket/openssl_ssl_util.h',
280 'socket/ssl_client_socket_openssl.cc',
281 'socket/ssl_client_socket_openssl.h',
282 'socket/ssl_server_socket_openssl.cc',
283 'socket/ssl_server_socket_openssl.h',
284 'socket/ssl_session_cache_openssl.cc',
285 'socket/ssl_session_cache_openssl.h',
289 [ 'use_openssl_certs == 0', {
291 'base/keygen_handler_openssl.cc',
292 'base/openssl_private_key_store.h',
293 'base/openssl_private_key_store_android.cc',
294 'base/openssl_private_key_store_memory.cc',
295 'cert/cert_database_openssl.cc',
296 'cert/cert_verify_proc_openssl.cc',
297 'cert/cert_verify_proc_openssl.h',
298 'cert/test_root_certs_openssl.cc',
299 'cert/x509_certificate_openssl.cc',
300 'ssl/openssl_client_key_store.cc',
301 'ssl/openssl_client_key_store.h',
306 '../build/linux/system.gyp:gconf',
307 '../build/linux/system.gyp:gio',
310 [ 'desktop_linux == 1 or chromeos == 1', {
312 ['use_openssl == 0', {
315 '../build/linux/system.gyp:ssl',
320 'base/network_change_notifier_linux.cc',
321 'base/network_change_notifier_netlink_linux.cc',
322 'proxy/proxy_config_service_linux.cc',
326 '../build/linux/system.gyp:libresolv',
338 { # else: OS is not in the above list
340 'base/crypto_module_nss.cc',
341 'base/keygen_handler_nss.cc',
342 'cert/cert_database_nss.cc',
343 'cert/nss_cert_database.cc',
344 'cert/nss_cert_database.h',
345 'cert/test_root_certs_nss.cc',
346 'cert/x509_certificate_nss.cc',
349 'third_party/mozilla_security_manager/nsKeygenHandler.cpp',
350 'third_party/mozilla_security_manager/nsKeygenHandler.h',
351 'third_party/mozilla_security_manager/nsNSSCertificateDB.cpp',
352 'third_party/mozilla_security_manager/nsNSSCertificateDB.h',
353 'third_party/mozilla_security_manager/nsPKCS12Blob.cpp',
354 'third_party/mozilla_security_manager/nsPKCS12Blob.h',
360 'cert/cert_verify_proc_nss.cc',
361 'cert/cert_verify_proc_nss.h',
362 'ssl/client_cert_store_nss.cc',
363 'ssl/client_cert_store_nss.h',
364 'ssl/client_cert_store_chromeos.cc',
365 'ssl/client_cert_store_chromeos.h',
368 [ 'enable_websockets != 1', {
370 ['exclude', '^socket_stream/'],
371 ['exclude', '^websockets/'],
374 'spdy/spdy_websocket_stream.cc',
375 'spdy/spdy_websocket_stream.h',
378 [ 'enable_mdns != 1', {
382 'dns/mdns_client.cc',
384 'dns/mdns_client_impl.cc',
385 'dns/mdns_client_impl.h',
386 'dns/record_parsed.cc',
387 'dns/record_parsed.h',
388 'dns/record_rdata.cc',
389 'dns/record_rdata.h',
394 'http/http_auth_handler_ntlm_portable.cc',
395 'socket/tcp_socket_libevent.cc',
396 'socket/tcp_socket_libevent.h',
397 'udp/udp_socket_libevent.cc',
398 'udp/udp_socket_libevent.h',
401 '../third_party/nss/nss.gyp:nspr',
402 '../third_party/nss/nss.gyp:nss',
403 'third_party/nss/ssl.gyp:libssl',
405 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
406 'msvs_disabled_warnings': [4267, ],
407 }, { # else: OS != "win"
409 'base/winsock_init.cc',
410 'base/winsock_init.h',
411 'base/winsock_util.cc',
412 'base/winsock_util.h',
413 'proxy/proxy_resolver_winhttp.cc',
414 'proxy/proxy_resolver_winhttp.h',
420 [ 'use_openssl == 0', {
423 '../third_party/nss/nss.gyp:nspr',
424 '../third_party/nss/nss.gyp:nss',
425 'third_party/nss/ssl.gyp:libssl',
431 '$(SDKROOT)/System/Library/Frameworks/Foundation.framework',
432 '$(SDKROOT)/System/Library/Frameworks/Security.framework',
433 '$(SDKROOT)/System/Library/Frameworks/SystemConfiguration.framework',
434 '$(SDKROOT)/usr/lib/libresolv.dylib',
441 '../third_party/nss/nss.gyp:nss',
442 'third_party/nss/ssl.gyp:libssl',
445 'disk_cache/blockfile/file_posix.cc',
449 '$(SDKROOT)/System/Library/Frameworks/CFNetwork.framework',
450 '$(SDKROOT)/System/Library/Frameworks/MobileCoreServices.framework',
451 '$(SDKROOT)/System/Library/Frameworks/Security.framework',
452 '$(SDKROOT)/System/Library/Frameworks/SystemConfiguration.framework',
453 '$(SDKROOT)/usr/lib/libresolv.dylib',
458 ['OS=="android" and _toolset=="target" and android_webview_build == 0', {
463 [ 'OS == "android"', {
465 '../third_party/openssl/openssl.gyp:openssl',
469 'base/openssl_private_key_store_memory.cc',
470 'cert/cert_database_openssl.cc',
471 'cert/cert_verify_proc_openssl.cc',
472 'cert/test_root_certs_openssl.cc',
474 # The net/android/keystore_openssl.cc source file needs to
475 # access an OpenSSL-internal header.
477 '../third_party/openssl',
481 [ 'use_icu_alternatives_on_android == 1', {
483 '../base/base.gyp:base_i18n',
484 '../third_party/icu/icu.gyp:icui18n',
485 '../third_party/icu/icu.gyp:icuuc',
488 'base/filename_util_icu.cc',
489 'base/net_string_util_icu.cc',
490 'base/net_util_icu.cc',
493 'base/net_string_util_icu_alternatives_android.cc',
494 'base/net_string_util_icu_alternatives_android.h',
499 'target_conditions': [
500 # These source files are excluded by default platform rules, but they
501 # are needed in specific cases on other platforms. Re-including them can
502 # only be done in target_conditions as it is evaluated after the
504 ['OS == "android"', {
506 ['include', '^base/platform_mime_util_linux\\.cc$'],
507 ['include', '^base/address_tracker_linux\\.cc$'],
508 ['include', '^base/address_tracker_linux\\.h$'],
513 ['include', '^base/network_change_notifier_mac\\.cc$'],
514 ['include', '^base/network_config_watcher_mac\\.cc$'],
515 ['include', '^base/platform_mime_util_mac\\.mm$'],
516 # The iOS implementation only partially uses NSS and thus does not
517 # defines |use_nss|. In particular the |USE_NSS| preprocessor
518 # definition is not used. The following files are needed though:
519 ['include', '^cert/cert_verify_proc_nss\\.cc$'],
520 ['include', '^cert/cert_verify_proc_nss\\.h$'],
521 ['include', '^cert/test_root_certs_nss\\.cc$'],
522 ['include', '^cert/x509_util_nss\\.cc$'],
523 ['include', '^cert/x509_util_nss\\.h$'],
524 ['include', '^proxy/proxy_resolver_mac\\.cc$'],
525 ['include', '^proxy/proxy_server_mac\\.cc$'],
526 ['include', '^ocsp/nss_ocsp\\.cc$'],
527 ['include', '^ocsp/nss_ocsp\\.h$'],
533 'target_name': 'net_unittests',
534 'type': '<(gtest_target_type)',
536 '../base/base.gyp:base',
537 '../base/base.gyp:base_i18n',
538 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
539 '../crypto/crypto.gyp:crypto',
540 '../testing/gmock.gyp:gmock',
541 '../testing/gtest.gyp:gtest',
542 '../third_party/zlib/zlib.gyp:zlib',
543 '../url/url.gyp:url_lib',
546 'net_derived_sources',
550 '<@(net_test_sources)',
553 ['os_posix == 1 and OS != "mac" and OS != "ios" and OS != "android"', {
557 'flip_in_mem_edsm_server_base',
561 '<@(net_linux_test_sources)',
566 'base/network_change_notifier_linux_unittest.cc',
567 'proxy/proxy_config_service_linux_unittest.cc',
570 [ 'OS == "android"', {
572 # See bug http://crbug.com/344533.
573 'disk_cache/blockfile/index_table_v3_unittest.cc',
574 # No res_ninit() et al on Android, so this doesn't make a lot of
576 'dns/dns_config_service_posix_unittest.cc',
580 'net_test_jni_headers',
585 'ssl/client_cert_store_nss_unittest.cc',
586 'ssl/client_cert_store_chromeos_unittest.cc',
589 [ 'use_openssl == 1', {
590 # Avoid compiling/linking with the system library.
592 '../third_party/openssl/openssl.gyp:openssl',
594 }, { # use_openssl == 0
596 [ 'desktop_linux == 1 or chromeos == 1', {
598 '../build/linux/system.gyp:ssl',
600 }, { # desktop_linux == 0 and chromeos == 0
602 'cert/nss_cert_database_unittest.cc',
607 [ 'os_posix == 1 and OS != "mac" and OS != "android" and OS != "ios"', {
609 ['use_allocator!="none"', {
611 '../base/allocator/allocator.gyp:allocator',
616 [ 'use_kerberos==1', {
620 }, { # use_kerberos == 0
622 'http/http_auth_gssapi_posix_unittest.cc',
623 'http/http_auth_handler_negotiate_unittest.cc',
624 'http/mock_gssapi_library_posix.cc',
625 'http/mock_gssapi_library_posix.h',
628 [ 'use_openssl == 1 or (desktop_linux == 0 and chromeos == 0 and OS != "ios")', {
629 # Only include this test when on Posix and using NSS for
630 # cert verification or on iOS (which also uses NSS for certs).
632 'ocsp/nss_ocsp_unittest.cc',
635 [ 'use_openssl==1', {
636 # When building for OpenSSL, we need to exclude NSS specific tests
637 # or functionality not supported by OpenSSL yet.
638 # TODO(bulach): Add equivalent tests when the underlying
639 # functionality is ported to OpenSSL.
641 'cert/ct_objects_extractor_unittest.cc',
642 'cert/multi_log_ct_verifier_unittest.cc',
643 'cert/nss_cert_database_unittest.cc',
644 'cert/nss_cert_database_chromeos_unittest.cc',
645 'cert/nss_profile_filter_chromeos_unittest.cc',
646 'cert/x509_util_nss_unittest.cc',
647 'quic/test_tools/crypto_test_utils_nss.cc',
649 }, { # else !use_openssl: remove the unneeded files
651 'cert/x509_util_openssl_unittest.cc',
652 'quic/test_tools/crypto_test_utils_openssl.cc',
653 'socket/ssl_client_socket_openssl_unittest.cc',
654 'socket/ssl_session_cache_openssl_unittest.cc',
658 [ 'use_openssl_certs == 0', {
660 'ssl/openssl_client_key_store_unittest.cc',
663 [ 'enable_websockets != 1', {
665 ['exclude', '^socket_stream/'],
666 ['exclude', '^websockets/'],
667 ['exclude', '^spdy/spdy_websocket_stream_unittest\\.cc$'],
670 ['disable_file_support==1', {
672 'base/directory_lister_unittest.cc',
673 'url_request/url_request_file_job_unittest.cc',
676 [ 'disable_ftp_support==1', {
678 ['exclude', '^ftp/'],
681 'url_request/url_request_ftp_job_unittest.cc',
685 [ 'enable_built_in_dns!=1', {
687 'dns/address_sorter_posix_unittest.cc',
688 'dns/address_sorter_unittest.cc',
692 # Always need use_v8_in_net to be 1 to run gyp on Android, so just
693 # remove net_unittest's dependency on v8 when using icu alternatives
694 # instead of setting use_v8_in_net to 0.
695 [ 'use_v8_in_net==1 and use_icu_alternatives_on_android==0', {
699 }, { # else: !use_v8_in_net
701 'proxy/proxy_resolver_v8_unittest.cc',
702 'proxy/proxy_resolver_v8_tracing_unittest.cc',
707 [ 'enable_mdns != 1', {
709 'dns/mdns_cache_unittest.cc',
710 'dns/mdns_client_unittest.cc',
711 'dns/mdns_query_unittest.cc',
712 'dns/record_parsed_unittest.cc',
713 'dns/record_rdata_unittest.cc',
718 'dns/dns_config_service_posix_unittest.cc',
719 'http/http_auth_gssapi_posix_unittest.cc',
722 '../third_party/nss/nss.gyp:nspr',
723 '../third_party/nss/nss.gyp:nss',
724 'third_party/nss/ssl.gyp:libssl',
727 [ 'icu_use_data_file_flag == 0', {
728 # This is needed to trigger the dll copy step on windows.
729 # TODO(mark): Specifying this here shouldn't be necessary.
731 '../third_party/icu/icu.gyp:icudata',
735 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
736 'msvs_disabled_warnings': [4267, ],
739 [ 'OS == "mac" and use_openssl == 0', {
741 '../third_party/nss/nss.gyp:nspr',
742 '../third_party/nss/nss.gyp:nss',
743 'third_party/nss/ssl.gyp:libssl',
749 '../third_party/nss/nss.gyp:nss',
753 'action_name': 'copy_test_data',
756 'data/ssl/certificates/',
758 'data/url_request_unittest/',
760 'test_data_prefix': 'net',
762 'includes': [ '../build/copy_test_data_ios.gypi' ],
766 # TODO(droger): The following tests are disabled because the
767 # implementation is missing or incomplete.
768 # KeygenHandler::GenKeyAndSignChallenge() is not ported to iOS.
769 'base/keygen_handler_unittest.cc',
770 'disk_cache/backend_unittest.cc',
771 'disk_cache/blockfile/block_files_unittest.cc',
772 # Need to read input data files.
773 'filter/gzip_filter_unittest.cc',
774 'socket/ssl_server_socket_unittest.cc',
775 'spdy/fuzzing/hpack_fuzz_util_test.cc',
777 'proxy/proxy_script_fetcher_impl_unittest.cc',
778 'socket/ssl_client_socket_unittest.cc',
779 'url_request/url_fetcher_impl_unittest.cc',
780 'url_request/url_request_context_builder_unittest.cc',
781 # Needs GetAppOutput().
782 'test/python_utils_unittest.cc',
784 # The following tests are disabled because they don't apply to
786 # OS is not "linux" or "freebsd" or "openbsd".
787 'socket/unix_domain_socket_posix_unittest.cc',
789 # See bug http://crbug.com/344533.
790 'disk_cache/blockfile/index_table_v3_unittest.cc',
793 [ 'OS == "android"', {
795 '../third_party/openssl/openssl.gyp:openssl',
798 'dns/dns_config_service_posix_unittest.cc',
802 ['OS == "android"', {
803 # TODO(mmenke): This depends on test_support_base, which depends on
804 # icu. Figure out a way to remove that dependency.
806 '../testing/android/native_test.gyp:native_test_native_code',
809 [ 'use_icu_alternatives_on_android == 1', {
811 '../base/base.gyp:base_i18n',
814 'base/filename_util_unittest.cc',
815 'base/net_util_icu_unittest.cc',
820 'target_conditions': [
821 # These source files are excluded by default platform rules, but they
822 # are needed in specific cases on other platforms. Re-including them can
823 # only be done in target_conditions as it is evaluated after the
825 ['OS == "android"', {
827 ['include', '^base/address_tracker_linux_unittest\\.cc$'],
833 'target_name': 'net_perftests',
834 'type': 'executable',
836 '../base/base.gyp:base',
837 '../base/base.gyp:base_i18n',
838 '../base/base.gyp:test_support_perf',
839 '../testing/gtest.gyp:gtest',
840 '../url/url.gyp:url_lib',
845 'cookies/cookie_monster_perftest.cc',
846 'disk_cache/blockfile/disk_cache_perftest.cc',
847 'proxy/proxy_resolver_perftest.cc',
850 [ 'use_v8_in_net==1', {
854 }, { # else: !use_v8_in_net
856 'proxy/proxy_resolver_perftest.cc',
862 [ 'icu_use_data_file_flag == 0', {
863 # This is needed to trigger the dll copy step on windows.
864 # TODO(mark): Specifying this here shouldn't be necessary.
866 '../third_party/icu/icu.gyp:icudata',
870 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
871 'msvs_disabled_warnings': [4267, ],
876 'target_name': 'net_test_support',
877 'type': 'static_library',
879 '../base/base.gyp:base',
880 '../base/base.gyp:test_support_base',
881 '../net/tools/tld_cleanup/tld_cleanup.gyp:tld_cleanup_util',
882 '../testing/gtest.gyp:gtest',
883 '../testing/gmock.gyp:gmock',
884 '../url/url.gyp:url_lib',
887 'export_dependent_settings': [
888 '../base/base.gyp:base',
889 # TODO(mmenke): This depends on icu, figure out a way to build tests
891 '../base/base.gyp:test_support_base',
892 '../testing/gtest.gyp:gtest',
893 '../testing/gmock.gyp:gmock',
896 'base/capturing_net_log.cc',
897 'base/capturing_net_log.h',
898 'base/load_timing_info_test_util.cc',
899 'base/load_timing_info_test_util.h',
900 'base/mock_file_stream.cc',
901 'base/mock_file_stream.h',
902 'base/test_completion_callback.cc',
903 'base/test_completion_callback.h',
904 'base/test_data_directory.cc',
905 'base/test_data_directory.h',
906 'cert/mock_cert_verifier.cc',
907 'cert/mock_cert_verifier.h',
908 'cookies/cookie_monster_store_test.cc',
909 'cookies/cookie_monster_store_test.h',
910 'cookies/cookie_store_test_callbacks.cc',
911 'cookies/cookie_store_test_callbacks.h',
912 'cookies/cookie_store_test_helpers.cc',
913 'cookies/cookie_store_test_helpers.h',
914 'disk_cache/disk_cache_test_base.cc',
915 'disk_cache/disk_cache_test_base.h',
916 'disk_cache/disk_cache_test_util.cc',
917 'disk_cache/disk_cache_test_util.h',
918 'dns/dns_test_util.cc',
919 'dns/dns_test_util.h',
920 'dns/mock_host_resolver.cc',
921 'dns/mock_host_resolver.h',
922 'dns/mock_mdns_socket_factory.cc',
923 'dns/mock_mdns_socket_factory.h',
924 'http/http_transaction_test_util.cc',
925 'http/http_transaction_test_util.h',
926 'proxy/mock_proxy_resolver.cc',
927 'proxy/mock_proxy_resolver.h',
928 'proxy/mock_proxy_script_fetcher.cc',
929 'proxy/mock_proxy_script_fetcher.h',
930 'proxy/proxy_config_service_common_unittest.cc',
931 'proxy/proxy_config_service_common_unittest.h',
932 'socket/socket_test_util.cc',
933 'socket/socket_test_util.h',
934 'test/cert_test_util.cc',
935 'test/cert_test_util.h',
936 'test/ct_test_util.cc',
937 'test/ct_test_util.h',
938 'test/embedded_test_server/embedded_test_server.cc',
939 'test/embedded_test_server/embedded_test_server.h',
940 'test/embedded_test_server/http_connection.cc',
941 'test/embedded_test_server/http_connection.h',
942 'test/embedded_test_server/http_request.cc',
943 'test/embedded_test_server/http_request.h',
944 'test/embedded_test_server/http_response.cc',
945 'test/embedded_test_server/http_response.h',
946 'test/net_test_suite.cc',
947 'test/net_test_suite.h',
948 'test/python_utils.cc',
949 'test/python_utils.h',
950 'test/spawned_test_server/base_test_server.cc',
951 'test/spawned_test_server/base_test_server.h',
952 'test/spawned_test_server/local_test_server_posix.cc',
953 'test/spawned_test_server/local_test_server_win.cc',
954 'test/spawned_test_server/local_test_server.cc',
955 'test/spawned_test_server/local_test_server.h',
956 'test/spawned_test_server/remote_test_server.cc',
957 'test/spawned_test_server/remote_test_server.h',
958 'test/spawned_test_server/spawned_test_server.h',
959 'test/spawned_test_server/spawner_communicator.cc',
960 'test/spawned_test_server/spawner_communicator.h',
961 'url_request/test_url_fetcher_factory.cc',
962 'url_request/test_url_fetcher_factory.h',
963 'url_request/url_request_test_util.cc',
964 'url_request/url_request_test_util.h',
969 '../third_party/protobuf/protobuf.gyp:py_proto',
972 ['os_posix == 1 and OS != "mac" and OS != "android" and OS != "ios"', {
976 '../third_party/openssl/openssl.gyp:openssl',
980 '../build/linux/system.gyp:ssl',
985 ['os_posix == 1 and OS != "mac" and OS != "android" and OS != "ios"', {
987 ['use_allocator!="none"', {
989 '../base/allocator/allocator.gyp:allocator',
994 ['OS != "android"', {
996 'test/spawned_test_server/remote_test_server.cc',
997 'test/spawned_test_server/remote_test_server.h',
998 'test/spawned_test_server/spawner_communicator.cc',
999 'test/spawned_test_server/spawner_communicator.h',
1004 '../third_party/nss/nss.gyp:nss',
1007 [ 'use_v8_in_net==1', {
1013 [ 'enable_mdns != 1', {
1015 'dns/mock_mdns_socket_factory.cc',
1016 'dns/mock_mdns_socket_factory.h'
1020 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1021 'msvs_disabled_warnings': [4267, ],
1024 'target_name': 'net_resources',
1027 'grit_out_dir': '<(SHARED_INTERMEDIATE_DIR)/net',
1031 'action_name': 'net_resources',
1033 'grit_grd_file': 'base/net_resources.grd',
1035 'includes': [ '../build/grit_action.gypi' ],
1038 'includes': [ '../build/grit_target.gypi' ],
1041 'target_name': 'http_server',
1042 'type': 'static_library',
1043 'variables': { 'enable_wexit_time_destructors': 1, },
1045 '../base/base.gyp:base',
1049 'server/http_connection.cc',
1050 'server/http_connection.h',
1051 'server/http_server.cc',
1052 'server/http_server.h',
1053 'server/http_server_request_info.cc',
1054 'server/http_server_request_info.h',
1055 'server/http_server_response_info.cc',
1056 'server/http_server_response_info.h',
1057 'server/web_socket.cc',
1058 'server/web_socket.h',
1060 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1061 'msvs_disabled_warnings': [4267, ],
1064 'target_name': 'dump_cache',
1065 'type': 'executable',
1067 '../base/base.gyp:base',
1072 'tools/dump_cache/cache_dumper.cc',
1073 'tools/dump_cache/cache_dumper.h',
1074 'tools/dump_cache/dump_cache.cc',
1075 'tools/dump_cache/dump_files.cc',
1076 'tools/dump_cache/dump_files.h',
1077 'tools/dump_cache/simple_cache_dumper.cc',
1078 'tools/dump_cache/simple_cache_dumper.h',
1079 'tools/dump_cache/upgrade_win.cc',
1080 'tools/dump_cache/upgrade_win.h',
1081 'tools/dump_cache/url_to_filename_encoder.cc',
1082 'tools/dump_cache/url_to_filename_encoder.h',
1083 'tools/dump_cache/url_utilities.h',
1084 'tools/dump_cache/url_utilities.cc',
1086 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1087 'msvs_disabled_warnings': [4267, ],
1091 ['use_v8_in_net == 1', {
1094 'target_name': 'net_with_v8',
1095 'type': '<(component)',
1096 'variables': { 'enable_wexit_time_destructors': 1, },
1098 '../base/base.gyp:base',
1099 '../gin/gin.gyp:gin',
1100 '../url/url.gyp:url_lib',
1101 '../v8/tools/gyp/v8.gyp:v8',
1105 'NET_IMPLEMENTATION',
1108 'proxy/proxy_resolver_v8.cc',
1109 'proxy/proxy_resolver_v8.h',
1110 'proxy/proxy_resolver_v8_tracing.cc',
1111 'proxy/proxy_resolver_v8_tracing.h',
1112 'proxy/proxy_service_v8.cc',
1113 'proxy/proxy_service_v8.h',
1115 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1116 'msvs_disabled_warnings': [4267, ],
1120 ['OS != "ios" and OS != "android"', {
1122 # iOS doesn't have the concept of simple executables, these targets
1123 # can't be compiled on the platform.
1125 'target_name': 'crash_cache',
1126 'type': 'executable',
1128 '../base/base.gyp:base',
1133 'tools/crash_cache/crash_cache.cc',
1135 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1136 'msvs_disabled_warnings': [4267, ],
1139 'target_name': 'crl_set_dump',
1140 'type': 'executable',
1142 '../base/base.gyp:base',
1146 'tools/crl_set_dump/crl_set_dump.cc',
1148 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1149 'msvs_disabled_warnings': [4267, ],
1152 'target_name': 'dns_fuzz_stub',
1153 'type': 'executable',
1155 '../base/base.gyp:base',
1159 'tools/dns_fuzz_stub/dns_fuzz_stub.cc',
1161 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1162 'msvs_disabled_warnings': [4267, ],
1165 'target_name': 'gdig',
1166 'type': 'executable',
1168 '../base/base.gyp:base',
1172 'tools/gdig/file_net_log.cc',
1173 'tools/gdig/gdig.cc',
1177 'target_name': 'get_server_time',
1178 'type': 'executable',
1180 '../base/base.gyp:base',
1181 '../base/base.gyp:base_i18n',
1182 '../url/url.gyp:url_lib',
1186 'tools/get_server_time/get_server_time.cc',
1188 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1189 'msvs_disabled_warnings': [4267, ],
1192 'target_name': 'hpack_example_generator',
1193 'type': 'executable',
1195 '../base/base.gyp:base',
1199 'spdy/fuzzing/hpack_example_generator.cc',
1201 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1202 'msvs_disabled_warnings': [4267, ],
1205 'target_name': 'hpack_fuzz_mutator',
1206 'type': 'executable',
1208 '../base/base.gyp:base',
1212 'spdy/fuzzing/hpack_fuzz_mutator.cc',
1214 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1215 'msvs_disabled_warnings': [4267, ],
1218 'target_name': 'hpack_fuzz_wrapper',
1219 'type': 'executable',
1221 '../base/base.gyp:base',
1225 'spdy/fuzzing/hpack_fuzz_wrapper.cc',
1227 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1228 'msvs_disabled_warnings': [4267, ],
1231 'target_name': 'net_watcher',
1232 'type': 'executable',
1234 '../base/base.gyp:base',
1239 [ 'use_glib == 1', {
1241 '../build/linux/system.gyp:gconf',
1242 '../build/linux/system.gyp:gio',
1248 'tools/net_watcher/net_watcher.cc',
1252 'target_name': 'run_testserver',
1253 'type': 'executable',
1255 '../base/base.gyp:base',
1256 '../base/base.gyp:test_support_base',
1257 '../testing/gtest.gyp:gtest',
1261 'tools/testserver/run_testserver.cc',
1265 'target_name': 'stress_cache',
1266 'type': 'executable',
1268 '../base/base.gyp:base',
1273 'disk_cache/blockfile/stress_cache.cc',
1275 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1276 'msvs_disabled_warnings': [4267, ],
1279 'target_name': 'tld_cleanup',
1280 'type': 'executable',
1282 '../base/base.gyp:base',
1283 '../base/base.gyp:base_i18n',
1284 '../net/tools/tld_cleanup/tld_cleanup.gyp:tld_cleanup_util',
1287 'tools/tld_cleanup/tld_cleanup.cc',
1289 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1290 'msvs_disabled_warnings': [4267, ],
1294 ['os_posix == 1 and OS != "mac" and OS != "ios" and OS != "android"', {
1297 'target_name': 'balsa',
1298 'type': 'static_library',
1300 '../base/base.gyp:base',
1304 'tools/balsa/balsa_enums.h',
1305 'tools/balsa/balsa_frame.cc',
1306 'tools/balsa/balsa_frame.h',
1307 'tools/balsa/balsa_headers.cc',
1308 'tools/balsa/balsa_headers.h',
1309 'tools/balsa/balsa_headers_token_utils.cc',
1310 'tools/balsa/balsa_headers_token_utils.h',
1311 'tools/balsa/balsa_visitor_interface.h',
1312 'tools/balsa/http_message_constants.cc',
1313 'tools/balsa/http_message_constants.h',
1314 'tools/balsa/noop_balsa_visitor.h',
1315 'tools/balsa/simple_buffer.cc',
1316 'tools/balsa/simple_buffer.h',
1317 'tools/balsa/split.cc',
1318 'tools/balsa/split.h',
1319 'tools/balsa/string_piece_utils.h',
1323 'target_name': 'epoll_server',
1324 'type': 'static_library',
1326 '../base/base.gyp:base',
1330 'tools/epoll_server/epoll_server.cc',
1331 'tools/epoll_server/epoll_server.h',
1335 'target_name': 'flip_in_mem_edsm_server_base',
1336 'type': 'static_library',
1341 '../base/base.gyp:base',
1342 '../third_party/openssl/openssl.gyp:openssl',
1348 'tools/dump_cache/url_to_filename_encoder.cc',
1349 'tools/dump_cache/url_to_filename_encoder.h',
1350 'tools/dump_cache/url_utilities.h',
1351 'tools/dump_cache/url_utilities.cc',
1352 'tools/flip_server/acceptor_thread.h',
1353 'tools/flip_server/acceptor_thread.cc',
1354 'tools/flip_server/create_listener.cc',
1355 'tools/flip_server/create_listener.h',
1356 'tools/flip_server/constants.h',
1357 'tools/flip_server/flip_config.cc',
1358 'tools/flip_server/flip_config.h',
1359 'tools/flip_server/http_interface.cc',
1360 'tools/flip_server/http_interface.h',
1361 'tools/flip_server/loadtime_measurement.h',
1362 'tools/flip_server/mem_cache.h',
1363 'tools/flip_server/mem_cache.cc',
1364 'tools/flip_server/output_ordering.cc',
1365 'tools/flip_server/output_ordering.h',
1366 'tools/flip_server/ring_buffer.cc',
1367 'tools/flip_server/ring_buffer.h',
1368 'tools/flip_server/sm_connection.cc',
1369 'tools/flip_server/sm_connection.h',
1370 'tools/flip_server/sm_interface.h',
1371 'tools/flip_server/spdy_ssl.cc',
1372 'tools/flip_server/spdy_ssl.h',
1373 'tools/flip_server/spdy_interface.cc',
1374 'tools/flip_server/spdy_interface.h',
1375 'tools/flip_server/spdy_util.cc',
1376 'tools/flip_server/spdy_util.h',
1377 'tools/flip_server/streamer_interface.cc',
1378 'tools/flip_server/streamer_interface.h',
1382 'target_name': 'flip_in_mem_edsm_server_unittests',
1383 'type': 'executable',
1385 '../testing/gtest.gyp:gtest',
1386 '../testing/gmock.gyp:gmock',
1387 '../third_party/openssl/openssl.gyp:openssl',
1388 'flip_in_mem_edsm_server_base',
1393 'tools/flip_server/flip_test_utils.cc',
1394 'tools/flip_server/flip_test_utils.h',
1395 'tools/flip_server/http_interface_test.cc',
1396 'tools/flip_server/mem_cache_test.cc',
1397 'tools/flip_server/run_all_tests.cc',
1398 'tools/flip_server/spdy_interface_test.cc',
1402 'target_name': 'flip_in_mem_edsm_server',
1403 'type': 'executable',
1408 '../base/base.gyp:base',
1409 'flip_in_mem_edsm_server_base',
1413 'tools/flip_server/flip_in_mem_edsm_server.cc',
1417 'target_name': 'quic_base',
1418 'type': 'static_library',
1420 '../base/base.gyp:base',
1421 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
1422 '../url/url.gyp:url_lib',
1428 'tools/quic/quic_client.cc',
1429 'tools/quic/quic_client.h',
1430 'tools/quic/quic_client_session.cc',
1431 'tools/quic/quic_client_session.h',
1432 'tools/quic/quic_default_packet_writer.cc',
1433 'tools/quic/quic_default_packet_writer.h',
1434 'tools/quic/quic_dispatcher.h',
1435 'tools/quic/quic_dispatcher.cc',
1436 'tools/quic/quic_epoll_clock.cc',
1437 'tools/quic/quic_epoll_clock.h',
1438 'tools/quic/quic_epoll_connection_helper.cc',
1439 'tools/quic/quic_epoll_connection_helper.h',
1440 'tools/quic/quic_in_memory_cache.cc',
1441 'tools/quic/quic_in_memory_cache.h',
1442 'tools/quic/quic_packet_writer_wrapper.cc',
1443 'tools/quic/quic_packet_writer_wrapper.h',
1444 'tools/quic/quic_server.cc',
1445 'tools/quic/quic_server.h',
1446 'tools/quic/quic_server_session.cc',
1447 'tools/quic/quic_server_session.h',
1448 'tools/quic/quic_socket_utils.cc',
1449 'tools/quic/quic_socket_utils.h',
1450 'tools/quic/quic_spdy_client_stream.cc',
1451 'tools/quic/quic_spdy_client_stream.h',
1452 'tools/quic/quic_spdy_server_stream.cc',
1453 'tools/quic/quic_spdy_server_stream.h',
1454 'tools/quic/quic_time_wait_list_manager.h',
1455 'tools/quic/quic_time_wait_list_manager.cc',
1456 'tools/quic/spdy_utils.cc',
1457 'tools/quic/spdy_utils.h',
1461 'target_name': 'quic_client',
1462 'type': 'executable',
1464 '../base/base.gyp:base',
1469 'tools/quic/quic_client_bin.cc',
1473 'target_name': 'quic_server',
1474 'type': 'executable',
1476 '../base/base.gyp:base',
1481 'tools/quic/quic_server_bin.cc',
1489 'target_name': 'net_jni_headers',
1492 'android/java/src/org/chromium/net/AndroidCertVerifyResult.java',
1493 'android/java/src/org/chromium/net/AndroidKeyStore.java',
1494 'android/java/src/org/chromium/net/AndroidNetworkLibrary.java',
1495 'android/java/src/org/chromium/net/AndroidPrivateKey.java',
1496 'android/java/src/org/chromium/net/GURLUtils.java',
1497 'android/java/src/org/chromium/net/NetworkChangeNotifier.java',
1498 'android/java/src/org/chromium/net/ProxyChangeListener.java',
1499 'android/java/src/org/chromium/net/X509Util.java',
1502 'jni_gen_package': 'net',
1504 'includes': [ '../build/jni_generator.gypi' ],
1507 ['use_icu_alternatives_on_android==1', {
1509 'android/java/src/org/chromium/net/NetStringUtil.java',
1515 'target_name': 'net_test_jni_headers',
1518 'android/javatests/src/org/chromium/net/AndroidKeyStoreTestUtil.java',
1521 'jni_gen_package': 'net',
1523 'includes': [ '../build/jni_generator.gypi' ],
1526 'target_name': 'net_java',
1529 'java_in_dir': '../net/android/java',
1532 '../base/base.gyp:base',
1533 'cert_verify_status_android_java',
1534 'certificate_mime_types_java',
1536 'private_key_types_java',
1537 'remote_android_keystore_aidl',
1539 'includes': [ '../build/java.gypi' ],
1542 # Processes the interface files for communication with an Android KeyStore
1543 # running in a separate process.
1544 'target_name': 'remote_android_keystore_aidl',
1547 'aidl_interface_file': '../net/android/java/src/org/chromium/net/IRemoteAndroidKeyStoreInterface.aidl',
1550 '../net/android/java/src/org/chromium/net/IRemoteAndroidKeyStore.aidl',
1551 '../net/android/java/src/org/chromium/net/IRemoteAndroidKeyStoreCallbacks.aidl',
1553 'includes': [ '../build/java_aidl.gypi' ],
1556 'target_name': 'net_java_test_support',
1559 'java_in_dir': '../net/test/android/javatests',
1561 'includes': [ '../build/java.gypi' ],
1564 'target_name': 'net_javatests',
1567 'java_in_dir': '../net/android/javatests',
1570 '../base/base.gyp:base',
1571 '../base/base.gyp:base_java_test_support',
1574 'includes': [ '../build/java.gypi' ],
1577 'target_name': 'net_errors_java',
1580 'android/java/NetError.template',
1583 'package_name': 'org/chromium/net',
1584 'template_deps': ['base/net_error_list.h'],
1586 'includes': [ '../build/android/java_cpp_template.gypi' ],
1589 'target_name': 'certificate_mime_types_java',
1592 'android/java/CertificateMimeType.template',
1595 'package_name': 'org/chromium/net',
1596 'template_deps': ['base/mime_util_certificate_type_list.h'],
1598 'includes': [ '../build/android/java_cpp_template.gypi' ],
1601 'target_name': 'cert_verify_status_android_java',
1604 'android/java/CertVerifyStatusAndroid.template',
1607 'package_name': 'org/chromium/net',
1608 'template_deps': ['android/cert_verify_status_android_list.h'],
1610 'includes': [ '../build/android/java_cpp_template.gypi' ],
1613 'target_name': 'private_key_types_java',
1616 'android/java/PrivateKeyType.template',
1619 'package_name': 'org/chromium/net',
1620 'template_deps': ['android/private_key_type_list.h'],
1622 'includes': [ '../build/android/java_cpp_template.gypi' ],
1626 ['OS == "android"', {
1629 'target_name': 'net_unittests_apk',
1637 'test_suite_name': 'net_unittests',
1639 'includes': [ '../build/apk_test.gypi' ],
1643 ['OS == "android" or OS == "linux"', {
1646 'target_name': 'disk_cache_memory_test',
1647 'type': 'executable',
1649 '../base/base.gyp:base',
1653 'tools/disk_cache_memory_test/disk_cache_memory_test.cc',
1658 ['test_isolation_mode != "noop"', {
1661 'target_name': 'net_unittests_run',
1667 '../build/isolate.gypi',
1668 'net_unittests.isolate',
1671 'net_unittests.isolate',