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,
11 ['chromeos==1 or embedded==1 or OS=="android" or OS=="ios"', {
12 # Disable Kerberos on ChromeOS, Android and iOS, at least for now.
13 # It needs configuration (krb5.conf and so on).
15 }, { # chromeos == 0 and embedded==0 and OS!="android" and OS!="ios"
18 ['OS=="android" and target_arch != "ia32"', {
19 # The way the cache uses mmap() is inefficient on some Android devices.
20 # If this flag is set, we hackily avoid using mmap() in the disk cache.
21 # We are pretty confident that mmap-ing the index would not hurt any
22 # existing x86 android devices, but we cannot be so sure about the
23 # variety of ARM devices. So enable it for x86 only for now.
24 'posix_avoid_mmap%': 1,
26 'posix_avoid_mmap%': 0,
29 # Websockets and socket stream are not used on iOS.
30 'enable_websockets%': 0,
31 # iOS does not use V8.
33 'enable_built_in_dns%': 0,
35 'enable_websockets%': 1,
37 'enable_built_in_dns%': 1,
42 '../build/win_precompile.gypi',
47 'target_name': 'net_derived_sources',
50 'base/registry_controlled_domains/effective_tld_names.gperf',
51 'base/registry_controlled_domains/effective_tld_names_unittest1.gperf',
52 'base/registry_controlled_domains/effective_tld_names_unittest2.gperf',
53 'base/registry_controlled_domains/effective_tld_names_unittest3.gperf',
54 'base/registry_controlled_domains/effective_tld_names_unittest4.gperf',
55 'base/registry_controlled_domains/effective_tld_names_unittest5.gperf',
56 'base/registry_controlled_domains/effective_tld_names_unittest6.gperf',
63 '<(SHARED_INTERMEDIATE_DIR)/net/<(RULE_INPUT_DIRNAME)/<(RULE_INPUT_ROOT)-inc.cc',
66 'tools/tld_cleanup/make_dafsa.py',
70 'tools/tld_cleanup/make_dafsa.py',
72 '<(SHARED_INTERMEDIATE_DIR)/net/<(RULE_INPUT_DIRNAME)/<(RULE_INPUT_ROOT)-inc.cc',
76 'direct_dependent_settings': {
78 '<(SHARED_INTERMEDIATE_DIR)'
84 'type': '<(component)',
85 'variables': { 'enable_wexit_time_destructors': 1, },
87 '../base/base.gyp:base',
88 '../base/base.gyp:base_i18n',
89 '../base/base.gyp:base_prefs',
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',
207 'base/crypto_module_nss.cc',
208 'base/keygen_handler_nss.cc',
211 'cert/cert_database_nss.cc',
212 'cert/cert_verify_proc_nss.cc',
213 'cert/cert_verify_proc_nss.h',
214 'cert/ct_log_verifier_nss.cc',
215 'cert/ct_objects_extractor_nss.cc',
216 'cert/jwk_serializer_nss.cc',
217 'cert/nss_cert_database.cc',
218 'cert/nss_cert_database.h',
219 'cert/nss_cert_database_chromeos.cc',
220 'cert/nss_cert_database_chromeos.h',
221 'cert/nss_profile_filter_chromeos.cc',
222 'cert/nss_profile_filter_chromeos.h',
223 'cert/scoped_nss_types.h',
224 'cert/test_root_certs_nss.cc',
225 'cert/x509_certificate_nss.cc',
226 'cert/x509_util_nss.cc',
227 'cert/x509_util_nss.h',
230 'quic/crypto/aead_base_decrypter_nss.cc',
231 'quic/crypto/aead_base_encrypter_nss.cc',
232 'quic/crypto/aes_128_gcm_12_decrypter_nss.cc',
233 'quic/crypto/aes_128_gcm_12_encrypter_nss.cc',
234 'quic/crypto/chacha20_poly1305_decrypter_nss.cc',
235 'quic/crypto/chacha20_poly1305_encrypter_nss.cc',
236 'quic/crypto/channel_id_nss.cc',
237 'quic/crypto/p256_key_exchange_nss.cc',
238 'socket/nss_ssl_util.cc',
239 'socket/nss_ssl_util.h',
240 'socket/ssl_client_socket_nss.cc',
241 'socket/ssl_client_socket_nss.h',
242 'socket/ssl_server_socket_nss.cc',
243 'socket/ssl_server_socket_nss.h',
244 'third_party/mozilla_security_manager/nsKeygenHandler.cpp',
245 'third_party/mozilla_security_manager/nsKeygenHandler.h',
246 'third_party/mozilla_security_manager/nsNSSCertificateDB.cpp',
247 'third_party/mozilla_security_manager/nsNSSCertificateDB.h',
248 'third_party/mozilla_security_manager/nsPKCS12Blob.cpp',
249 'third_party/mozilla_security_manager/nsPKCS12Blob.h',
252 '../third_party/boringssl/boringssl.gyp:boringssl',
255 { # else !use_openssl: remove the unneeded files and depend on NSS.
257 'base/crypto_module_openssl.cc',
258 'cert/ct_log_verifier_openssl.cc',
259 'cert/ct_objects_extractor_openssl.cc',
260 'cert/jwk_serializer_openssl.cc',
261 'cert/x509_util_openssl.cc',
262 'cert/x509_util_openssl.h',
263 'crypto/scoped_openssl_types.h',
264 'quic/crypto/aead_base_decrypter_openssl.cc',
265 'quic/crypto/aead_base_encrypter_openssl.cc',
266 'quic/crypto/aes_128_gcm_12_decrypter_openssl.cc',
267 'quic/crypto/aes_128_gcm_12_encrypter_openssl.cc',
268 'quic/crypto/chacha20_poly1305_decrypter_openssl.cc',
269 'quic/crypto/chacha20_poly1305_encrypter_openssl.cc',
270 'quic/crypto/channel_id_openssl.cc',
271 'quic/crypto/p256_key_exchange_openssl.cc',
272 'quic/crypto/scoped_evp_aead_ctx.cc',
273 'quic/crypto/scoped_evp_aead_ctx.h',
274 'socket/ssl_client_socket_openssl.cc',
275 'socket/ssl_client_socket_openssl.h',
276 'socket/ssl_server_socket_openssl.cc',
277 'socket/ssl_server_socket_openssl.h',
278 'socket/ssl_session_cache_openssl.cc',
279 'socket/ssl_session_cache_openssl.h',
280 'ssl/openssl_platform_key_mac.cc',
281 'ssl/openssl_platform_key_win.cc',
282 'ssl/openssl_platform_key.h',
283 'ssl/openssl_ssl_util.cc',
284 'ssl/openssl_ssl_util.h',
287 # Pull in the bundled or system NSS as appropriate.
288 [ 'desktop_linux == 1 or chromeos == 1', {
290 '../build/linux/system.gyp:ssl',
294 '../third_party/nss/nss.gyp:nspr',
295 '../third_party/nss/nss.gyp:nss',
296 'third_party/nss/ssl.gyp:libssl',
300 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
301 'msvs_disabled_warnings': [4267, ],
304 [ 'use_openssl_certs == 0', {
306 'base/keygen_handler_openssl.cc',
307 'base/openssl_private_key_store.h',
308 'base/openssl_private_key_store_android.cc',
309 'base/openssl_private_key_store_memory.cc',
310 'cert/cert_database_openssl.cc',
311 'cert/cert_verify_proc_openssl.cc',
312 'cert/cert_verify_proc_openssl.h',
313 'cert/test_root_certs_openssl.cc',
314 'cert/x509_certificate_openssl.cc',
315 'ssl/openssl_client_key_store.cc',
316 'ssl/openssl_client_key_store.h',
321 '../build/linux/system.gyp:gconf',
322 '../build/linux/system.gyp:gio',
325 [ 'desktop_linux == 1 or chromeos == 1', {
329 'base/network_change_notifier_linux.cc',
330 'base/network_change_notifier_netlink_linux.cc',
331 'proxy/proxy_config_service_linux.cc',
335 '../build/linux/system.gyp:libresolv',
347 { # else: OS is not in the above list
349 'base/crypto_module_nss.cc',
350 'base/keygen_handler_nss.cc',
351 'cert/cert_database_nss.cc',
352 'cert/nss_cert_database.cc',
353 'cert/nss_cert_database.h',
354 'cert/test_root_certs_nss.cc',
355 'cert/x509_certificate_nss.cc',
358 'third_party/mozilla_security_manager/nsKeygenHandler.cpp',
359 'third_party/mozilla_security_manager/nsKeygenHandler.h',
360 'third_party/mozilla_security_manager/nsNSSCertificateDB.cpp',
361 'third_party/mozilla_security_manager/nsNSSCertificateDB.h',
362 'third_party/mozilla_security_manager/nsPKCS12Blob.cpp',
363 'third_party/mozilla_security_manager/nsPKCS12Blob.h',
369 'cert/cert_verify_proc_nss.cc',
370 'cert/cert_verify_proc_nss.h',
371 'ssl/client_cert_store_nss.cc',
372 'ssl/client_cert_store_nss.h',
373 'ssl/client_cert_store_chromeos.cc',
374 'ssl/client_cert_store_chromeos.h',
377 [ 'enable_websockets != 1', {
379 ['exclude', '^socket_stream/'],
380 ['exclude', '^websockets/'],
383 'spdy/spdy_websocket_stream.cc',
384 'spdy/spdy_websocket_stream.h',
387 [ 'enable_mdns != 1', {
391 'dns/mdns_client.cc',
393 'dns/mdns_client_impl.cc',
394 'dns/mdns_client_impl.h',
395 'dns/record_parsed.cc',
396 'dns/record_parsed.h',
397 'dns/record_rdata.cc',
398 'dns/record_rdata.h',
403 'http/http_auth_handler_ntlm_portable.cc',
404 'socket/socket_libevent.cc',
405 'socket/socket_libevent.h',
406 'socket/tcp_socket_libevent.cc',
407 'socket/tcp_socket_libevent.h',
408 'udp/udp_socket_libevent.cc',
409 'udp/udp_socket_libevent.h',
411 }, { # else: OS != "win"
413 'base/winsock_init.cc',
414 'base/winsock_init.h',
415 'base/winsock_util.cc',
416 'base/winsock_util.h',
417 'proxy/proxy_resolver_winhttp.cc',
418 'proxy/proxy_resolver_winhttp.h',
425 '$(SDKROOT)/System/Library/Frameworks/Foundation.framework',
426 '$(SDKROOT)/System/Library/Frameworks/Security.framework',
427 '$(SDKROOT)/System/Library/Frameworks/SystemConfiguration.framework',
428 '$(SDKROOT)/usr/lib/libresolv.dylib',
435 'disk_cache/blockfile/file_posix.cc',
439 '$(SDKROOT)/System/Library/Frameworks/CFNetwork.framework',
440 '$(SDKROOT)/System/Library/Frameworks/MobileCoreServices.framework',
441 '$(SDKROOT)/System/Library/Frameworks/Security.framework',
442 '$(SDKROOT)/System/Library/Frameworks/SystemConfiguration.framework',
443 '$(SDKROOT)/usr/lib/libresolv.dylib',
448 ['OS=="android" and _toolset=="target" and android_webview_build == 0', {
453 [ 'OS == "android"', {
458 'base/openssl_private_key_store_memory.cc',
459 'cert/cert_database_openssl.cc',
460 'cert/cert_verify_proc_openssl.cc',
461 'cert/test_root_certs_openssl.cc',
465 [ 'use_icu_alternatives_on_android == 1', {
467 '../base/base.gyp:base_i18n',
468 '../third_party/icu/icu.gyp:icui18n',
469 '../third_party/icu/icu.gyp:icuuc',
472 'base/filename_util_icu.cc',
473 'base/net_string_util_icu.cc',
474 'base/net_util_icu.cc',
477 'base/net_string_util_icu_alternatives_android.cc',
478 'base/net_string_util_icu_alternatives_android.h',
483 'target_conditions': [
484 # These source files are excluded by default platform rules, but they
485 # are needed in specific cases on other platforms. Re-including them can
486 # only be done in target_conditions as it is evaluated after the
488 ['OS == "android"', {
490 ['include', '^base/platform_mime_util_linux\\.cc$'],
491 ['include', '^base/address_tracker_linux\\.cc$'],
492 ['include', '^base/address_tracker_linux\\.h$'],
497 ['include', '^base/network_change_notifier_mac\\.cc$'],
498 ['include', '^base/network_config_watcher_mac\\.cc$'],
499 ['include', '^base/platform_mime_util_mac\\.mm$'],
500 # The iOS implementation only partially uses NSS and thus does not
501 # defines |use_nss|. In particular the |USE_NSS| preprocessor
502 # definition is not used. The following files are needed though:
503 ['include', '^cert/cert_verify_proc_nss\\.cc$'],
504 ['include', '^cert/cert_verify_proc_nss\\.h$'],
505 ['include', '^cert/test_root_certs_nss\\.cc$'],
506 ['include', '^cert/x509_util_nss\\.cc$'],
507 ['include', '^cert/x509_util_nss\\.h$'],
508 ['include', '^proxy/proxy_resolver_mac\\.cc$'],
509 ['include', '^proxy/proxy_server_mac\\.cc$'],
510 ['include', '^ocsp/nss_ocsp\\.cc$'],
511 ['include', '^ocsp/nss_ocsp\\.h$'],
517 'target_name': 'net_unittests',
518 'type': '<(gtest_target_type)',
520 '../base/base.gyp:base',
521 '../base/base.gyp:base_i18n',
522 '../base/base.gyp:base_prefs_test_support',
523 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
524 '../crypto/crypto.gyp:crypto',
525 '../crypto/crypto.gyp:crypto_test_support',
526 '../testing/gmock.gyp:gmock',
527 '../testing/gtest.gyp:gtest',
528 '../third_party/zlib/zlib.gyp:zlib',
529 '../url/url.gyp:url_lib',
533 'net_derived_sources',
539 '<@(net_test_sources)',
542 ['os_posix == 1 and OS != "mac" and OS != "ios" and OS != "android"', {
545 'flip_in_mem_edsm_server_base',
549 '<@(net_linux_test_sources)',
554 'proxy/proxy_config_service_linux_unittest.cc',
557 [ 'OS == "android"', {
559 # See bug http://crbug.com/344533.
560 'disk_cache/blockfile/index_table_v3_unittest.cc',
561 # No res_ninit() et al on Android, so this doesn't make a lot of
563 'dns/dns_config_service_posix_unittest.cc',
567 'net_test_jni_headers',
572 'ssl/client_cert_store_nss_unittest.cc',
573 'ssl/client_cert_store_chromeos_unittest.cc',
576 [ 'use_openssl == 1', {
577 # Avoid compiling/linking with the system library.
579 '../third_party/boringssl/boringssl.gyp:boringssl',
581 }, { # use_openssl == 0
583 [ 'desktop_linux == 1 or chromeos == 1', {
585 '../build/linux/system.gyp:ssl',
587 }, { # desktop_linux == 0 and chromeos == 0
589 '../third_party/nss/nss.gyp:nspr',
590 '../third_party/nss/nss.gyp:nss',
591 'third_party/nss/ssl.gyp:libssl',
594 'cert/nss_cert_database_unittest.cc',
598 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
599 'msvs_disabled_warnings': [4267, ],
601 [ 'os_posix == 1 and OS != "mac" and OS != "android" and OS != "ios"', {
603 ['use_allocator!="none"', {
605 '../base/allocator/allocator.gyp:allocator',
610 [ 'use_kerberos==1', {
614 }, { # use_kerberos == 0
616 'http/http_auth_gssapi_posix_unittest.cc',
617 'http/http_auth_handler_negotiate_unittest.cc',
618 'http/mock_gssapi_library_posix.cc',
619 'http/mock_gssapi_library_posix.h',
622 [ 'use_openssl == 1 or (desktop_linux == 0 and chromeos == 0 and OS != "ios")', {
623 # Only include this test when on Posix and using NSS for
624 # cert verification or on iOS (which also uses NSS for certs).
626 'ocsp/nss_ocsp_unittest.cc',
629 [ 'use_openssl==1', {
630 # When building for OpenSSL, we need to exclude NSS specific tests
631 # or functionality not supported by OpenSSL yet.
632 # TODO(bulach): Add equivalent tests when the underlying
633 # functionality is ported to OpenSSL.
635 'cert/nss_cert_database_unittest.cc',
636 'cert/nss_cert_database_chromeos_unittest.cc',
637 'cert/nss_profile_filter_chromeos_unittest.cc',
638 'cert/x509_util_nss_unittest.cc',
639 'quic/test_tools/crypto_test_utils_nss.cc',
641 }, { # else !use_openssl: remove the unneeded files and pull in NSS.
643 'cert/x509_util_openssl_unittest.cc',
644 'quic/test_tools/crypto_test_utils_openssl.cc',
645 'socket/ssl_client_socket_openssl_unittest.cc',
646 'socket/ssl_session_cache_openssl_unittest.cc',
650 [ 'use_openssl_certs == 0', {
652 'ssl/openssl_client_key_store_unittest.cc',
655 [ 'enable_websockets != 1', {
657 ['exclude', '^socket_stream/'],
658 ['exclude', '^websockets/'],
659 ['exclude', '^spdy/spdy_websocket_stream_unittest\\.cc$'],
662 ['disable_file_support==1', {
664 'base/directory_lister_unittest.cc',
665 'url_request/url_request_file_job_unittest.cc',
668 [ 'disable_ftp_support==1', {
670 ['exclude', '^ftp/'],
673 'url_request/url_request_ftp_job_unittest.cc',
677 [ 'enable_built_in_dns!=1', {
679 'dns/address_sorter_posix_unittest.cc',
680 'dns/address_sorter_unittest.cc',
684 # Always need use_v8_in_net to be 1 to run gyp on Android, so just
685 # remove net_unittest's dependency on v8 when using icu alternatives
686 # instead of setting use_v8_in_net to 0.
687 [ 'use_v8_in_net==1 and use_icu_alternatives_on_android==0', {
691 }, { # else: !use_v8_in_net
693 'proxy/proxy_resolver_v8_unittest.cc',
694 'proxy/proxy_resolver_v8_tracing_unittest.cc',
699 [ 'enable_mdns != 1', {
701 'dns/mdns_cache_unittest.cc',
702 'dns/mdns_client_unittest.cc',
703 'dns/mdns_query_unittest.cc',
704 'dns/record_parsed_unittest.cc',
705 'dns/record_rdata_unittest.cc',
710 'dns/dns_config_service_posix_unittest.cc',
711 'http/http_auth_gssapi_posix_unittest.cc',
714 [ 'icu_use_data_file_flag == 0', {
715 # This is needed to trigger the dll copy step on windows.
716 # TODO(mark): Specifying this here shouldn't be necessary.
718 '../third_party/icu/icu.gyp:icudata',
727 'action_name': 'copy_test_data',
730 'data/ssl/certificates/',
732 'data/url_request_unittest/',
734 'test_data_prefix': 'net',
736 'includes': [ '../build/copy_test_data_ios.gypi' ],
740 # TODO(droger): The following tests are disabled because the
741 # implementation is missing or incomplete.
742 # KeygenHandler::GenKeyAndSignChallenge() is not ported to iOS.
743 'base/keygen_handler_unittest.cc',
744 'disk_cache/backend_unittest.cc',
745 'disk_cache/blockfile/block_files_unittest.cc',
746 # Need to read input data files.
747 'filter/gzip_filter_unittest.cc',
748 'socket/ssl_server_socket_unittest.cc',
749 'spdy/fuzzing/hpack_fuzz_util_test.cc',
751 'proxy/proxy_script_fetcher_impl_unittest.cc',
752 'socket/ssl_client_socket_unittest.cc',
753 'url_request/url_fetcher_impl_unittest.cc',
754 'url_request/url_request_context_builder_unittest.cc',
755 # Needs GetAppOutput().
756 'test/python_utils_unittest.cc',
758 # The following tests are disabled because they don't apply to
760 # OS is not "linux" or "freebsd" or "openbsd".
761 'socket/unix_domain_client_socket_posix_unittest.cc',
762 'socket/unix_domain_listen_socket_posix_unittest.cc',
763 'socket/unix_domain_server_socket_posix_unittest.cc',
765 # See bug http://crbug.com/344533.
766 'disk_cache/blockfile/index_table_v3_unittest.cc',
769 [ 'OS == "android"', {
771 'dns/dns_config_service_posix_unittest.cc',
775 ['OS == "android"', {
776 # TODO(mmenke): This depends on test_support_base, which depends on
777 # icu. Figure out a way to remove that dependency.
779 '../testing/android/native_test.gyp:native_test_native_code',
782 [ 'use_icu_alternatives_on_android == 1', {
784 '../base/base.gyp:base_i18n',
787 'base/filename_util_unittest.cc',
788 'base/net_util_icu_unittest.cc',
793 'target_conditions': [
794 # These source files are excluded by default platform rules, but they
795 # are needed in specific cases on other platforms. Re-including them can
796 # only be done in target_conditions as it is evaluated after the
798 ['OS == "android"', {
800 ['include', '^base/address_tracker_linux_unittest\\.cc$'],
806 'target_name': 'net_perftests',
807 'type': 'executable',
809 '../base/base.gyp:base',
810 '../base/base.gyp:base_i18n',
811 '../base/base.gyp:test_support_perf',
812 '../testing/gtest.gyp:gtest',
813 '../url/url.gyp:url_lib',
818 'cookies/cookie_monster_perftest.cc',
819 'disk_cache/blockfile/disk_cache_perftest.cc',
820 'proxy/proxy_resolver_perftest.cc',
821 'websockets/websocket_frame_perftest.cc',
824 [ 'use_v8_in_net==1', {
828 }, { # else: !use_v8_in_net
830 'proxy/proxy_resolver_perftest.cc',
836 [ 'icu_use_data_file_flag == 0', {
837 # This is needed to trigger the dll copy step on windows.
838 # TODO(mark): Specifying this here shouldn't be necessary.
840 '../third_party/icu/icu.gyp:icudata',
844 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
845 'msvs_disabled_warnings': [4267, ],
847 [ 'enable_websockets != 1', {
849 'websockets/websocket_frame_perftest.cc',
855 'target_name': 'net_test_support',
856 'type': 'static_library',
858 '../base/base.gyp:base',
859 '../base/base.gyp:test_support_base',
860 '../net/tools/tld_cleanup/tld_cleanup.gyp:tld_cleanup_util',
861 '../testing/gtest.gyp:gtest',
862 '../testing/gmock.gyp:gmock',
863 '../url/url.gyp:url_lib',
866 'export_dependent_settings': [
867 '../base/base.gyp:base',
868 # TODO(mmenke): This depends on icu, figure out a way to build tests
870 '../base/base.gyp:test_support_base',
871 '../testing/gtest.gyp:gtest',
872 '../testing/gmock.gyp:gmock',
875 'base/capturing_net_log.cc',
876 'base/capturing_net_log.h',
877 'base/load_timing_info_test_util.cc',
878 'base/load_timing_info_test_util.h',
879 'base/mock_file_stream.cc',
880 'base/mock_file_stream.h',
881 'base/test_completion_callback.cc',
882 'base/test_completion_callback.h',
883 'base/test_data_directory.cc',
884 'base/test_data_directory.h',
885 'cert/mock_cert_verifier.cc',
886 'cert/mock_cert_verifier.h',
887 'cookies/cookie_monster_store_test.cc',
888 'cookies/cookie_monster_store_test.h',
889 'cookies/cookie_store_test_callbacks.cc',
890 'cookies/cookie_store_test_callbacks.h',
891 'cookies/cookie_store_test_helpers.cc',
892 'cookies/cookie_store_test_helpers.h',
893 'disk_cache/disk_cache_test_base.cc',
894 'disk_cache/disk_cache_test_base.h',
895 'disk_cache/disk_cache_test_util.cc',
896 'disk_cache/disk_cache_test_util.h',
897 'dns/dns_test_util.cc',
898 'dns/dns_test_util.h',
899 'dns/mock_host_resolver.cc',
900 'dns/mock_host_resolver.h',
901 'dns/mock_mdns_socket_factory.cc',
902 'dns/mock_mdns_socket_factory.h',
903 'http/http_transaction_test_util.cc',
904 'http/http_transaction_test_util.h',
905 'proxy/mock_proxy_resolver.cc',
906 'proxy/mock_proxy_resolver.h',
907 'proxy/mock_proxy_script_fetcher.cc',
908 'proxy/mock_proxy_script_fetcher.h',
909 'proxy/proxy_config_service_common_unittest.cc',
910 'proxy/proxy_config_service_common_unittest.h',
911 'socket/socket_test_util.cc',
912 'socket/socket_test_util.h',
913 'test/cert_test_util.cc',
914 'test/cert_test_util.h',
915 'test/cert_test_util_nss.cc',
916 'test/ct_test_util.cc',
917 'test/ct_test_util.h',
918 'test/embedded_test_server/embedded_test_server.cc',
919 'test/embedded_test_server/embedded_test_server.h',
920 'test/embedded_test_server/http_connection.cc',
921 'test/embedded_test_server/http_connection.h',
922 'test/embedded_test_server/http_request.cc',
923 'test/embedded_test_server/http_request.h',
924 'test/embedded_test_server/http_response.cc',
925 'test/embedded_test_server/http_response.h',
926 'test/net_test_suite.cc',
927 'test/net_test_suite.h',
928 'test/python_utils.cc',
929 'test/python_utils.h',
930 'test/spawned_test_server/base_test_server.cc',
931 'test/spawned_test_server/base_test_server.h',
932 'test/spawned_test_server/local_test_server_posix.cc',
933 'test/spawned_test_server/local_test_server_win.cc',
934 'test/spawned_test_server/local_test_server.cc',
935 'test/spawned_test_server/local_test_server.h',
936 'test/spawned_test_server/remote_test_server.cc',
937 'test/spawned_test_server/remote_test_server.h',
938 'test/spawned_test_server/spawned_test_server.h',
939 'test/spawned_test_server/spawner_communicator.cc',
940 'test/spawned_test_server/spawner_communicator.h',
941 'test/url_request/url_request_failed_job.cc',
942 'test/url_request/url_request_failed_job.h',
943 'test/url_request/url_request_mock_http_job.cc',
944 'test/url_request/url_request_mock_http_job.h',
945 'url_request/test_url_fetcher_factory.cc',
946 'url_request/test_url_fetcher_factory.h',
947 'url_request/test_url_request_interceptor.cc',
948 'url_request/test_url_request_interceptor.h',
949 'url_request/url_request_test_util.cc',
950 'url_request/url_request_test_util.h',
955 '../third_party/protobuf/protobuf.gyp:py_proto',
958 ['use_openssl == 0 and (use_nss == 1 or OS == "ios")', {
960 [ 'desktop_linux == 1 or chromeos == 1', {
962 '../build/linux/system.gyp:ssl',
964 }, { # desktop_linux == 0 and chromeos == 0
966 '../third_party/nss/nss.gyp:nspr',
967 '../third_party/nss/nss.gyp:nss',
968 'third_party/nss/ssl.gyp:libssl',
972 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
973 'msvs_disabled_warnings': [4267, ],
975 ['os_posix == 1 and OS != "mac" and OS != "android" and OS != "ios"', {
977 ['use_allocator!="none"', {
979 '../base/allocator/allocator.gyp:allocator',
984 ['OS != "android"', {
986 'test/spawned_test_server/remote_test_server.cc',
987 'test/spawned_test_server/remote_test_server.h',
988 'test/spawned_test_server/spawner_communicator.cc',
989 'test/spawned_test_server/spawner_communicator.h',
992 [ 'use_v8_in_net==1', {
998 [ 'enable_mdns != 1', {
1000 'dns/mock_mdns_socket_factory.cc',
1001 'dns/mock_mdns_socket_factory.h'
1006 'test/cert_test_util_nss.cc',
1010 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1011 'msvs_disabled_warnings': [4267, ],
1014 'target_name': 'net_resources',
1017 'grit_out_dir': '<(SHARED_INTERMEDIATE_DIR)/net',
1021 'action_name': 'net_resources',
1023 'grit_grd_file': 'base/net_resources.grd',
1025 'includes': [ '../build/grit_action.gypi' ],
1030 'target_name': 'net_extras',
1031 'type': 'static_library',
1032 'variables': { 'enable_wexit_time_destructors': 1, },
1034 '../base/base.gyp:base',
1035 '../sql/sql.gyp:sql',
1039 '<@(net_extras_sources)',
1043 'target_name': 'http_server',
1044 'type': 'static_library',
1045 'variables': { 'enable_wexit_time_destructors': 1, },
1047 '../base/base.gyp:base',
1051 'server/http_connection.cc',
1052 'server/http_connection.h',
1053 'server/http_server.cc',
1054 'server/http_server.h',
1055 'server/http_server_request_info.cc',
1056 'server/http_server_request_info.h',
1057 'server/http_server_response_info.cc',
1058 'server/http_server_response_info.h',
1059 'server/web_socket.cc',
1060 'server/web_socket.h',
1062 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1063 'msvs_disabled_warnings': [4267, ],
1066 'target_name': 'balsa',
1067 'type': 'static_library',
1069 '../base/base.gyp:base',
1073 'tools/balsa/balsa_enums.h',
1074 'tools/balsa/balsa_frame.cc',
1075 'tools/balsa/balsa_frame.h',
1076 'tools/balsa/balsa_headers.cc',
1077 'tools/balsa/balsa_headers.h',
1078 'tools/balsa/balsa_headers_token_utils.cc',
1079 'tools/balsa/balsa_headers_token_utils.h',
1080 'tools/balsa/balsa_visitor_interface.h',
1081 'tools/balsa/http_message_constants.cc',
1082 'tools/balsa/http_message_constants.h',
1083 'tools/balsa/noop_balsa_visitor.h',
1084 'tools/balsa/simple_buffer.cc',
1085 'tools/balsa/simple_buffer.h',
1086 'tools/balsa/split.cc',
1087 'tools/balsa/split.h',
1088 'tools/balsa/string_piece_utils.h',
1089 'tools/quic/spdy_utils.cc',
1090 'tools/quic/spdy_utils.h',
1094 'target_name': 'dump_cache',
1095 'type': 'executable',
1097 '../base/base.gyp:base',
1102 'tools/dump_cache/cache_dumper.cc',
1103 'tools/dump_cache/cache_dumper.h',
1104 'tools/dump_cache/dump_cache.cc',
1105 'tools/dump_cache/dump_files.cc',
1106 'tools/dump_cache/dump_files.h',
1107 'tools/dump_cache/simple_cache_dumper.cc',
1108 'tools/dump_cache/simple_cache_dumper.h',
1109 'tools/dump_cache/url_to_filename_encoder.cc',
1110 'tools/dump_cache/url_to_filename_encoder.h',
1111 'tools/dump_cache/url_utilities.h',
1112 'tools/dump_cache/url_utilities.cc',
1114 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1115 'msvs_disabled_warnings': [4267, ],
1118 # This is a temporary target which will be merged into 'net' once the
1119 # dependency on balsa is eliminated and the classes are actually used.
1120 'target_name': 'quic_tools',
1121 'type': 'static_library',
1123 '../base/base.gyp:base',
1124 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
1125 '../url/url.gyp:url_lib',
1129 'quic/quic_dispatcher.cc',
1130 'quic/quic_dispatcher.h',
1131 'quic/quic_in_memory_cache.cc',
1132 'quic/quic_in_memory_cache.h',
1133 'quic/quic_per_connection_packet_writer.cc',
1134 'quic/quic_per_connection_packet_writer.h',
1135 'quic/quic_server.cc',
1136 'quic/quic_server.h',
1137 'quic/quic_server_packet_writer.cc',
1138 'quic/quic_server_packet_writer.h',
1139 'quic/quic_server_session.cc',
1140 'quic/quic_server_session.h',
1141 'quic/quic_spdy_server_stream.cc',
1142 'quic/quic_spdy_server_stream.h',
1143 'quic/quic_time_wait_list_manager.cc',
1144 'quic/quic_time_wait_list_manager.h',
1149 ['use_v8_in_net == 1', {
1152 'target_name': 'net_with_v8',
1153 'type': '<(component)',
1154 'variables': { 'enable_wexit_time_destructors': 1, },
1156 '../base/base.gyp:base',
1157 '../gin/gin.gyp:gin',
1158 '../url/url.gyp:url_lib',
1159 '../v8/tools/gyp/v8.gyp:v8',
1163 'NET_IMPLEMENTATION',
1166 'proxy/proxy_resolver_v8.cc',
1167 'proxy/proxy_resolver_v8.h',
1168 'proxy/proxy_resolver_v8_tracing.cc',
1169 'proxy/proxy_resolver_v8_tracing.h',
1170 'proxy/proxy_service_v8.cc',
1171 'proxy/proxy_service_v8.h',
1173 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1174 'msvs_disabled_warnings': [4267, ],
1178 ['OS != "ios" and OS != "android"', {
1180 # iOS doesn't have the concept of simple executables, these targets
1181 # can't be compiled on the platform.
1183 'target_name': 'crash_cache',
1184 'type': 'executable',
1186 '../base/base.gyp:base',
1191 'tools/crash_cache/crash_cache.cc',
1193 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1194 'msvs_disabled_warnings': [4267, ],
1197 'target_name': 'crl_set_dump',
1198 'type': 'executable',
1200 '../base/base.gyp:base',
1204 'tools/crl_set_dump/crl_set_dump.cc',
1206 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1207 'msvs_disabled_warnings': [4267, ],
1210 'target_name': 'dns_fuzz_stub',
1211 'type': 'executable',
1213 '../base/base.gyp:base',
1217 'tools/dns_fuzz_stub/dns_fuzz_stub.cc',
1219 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1220 'msvs_disabled_warnings': [4267, ],
1223 'target_name': 'gdig',
1224 'type': 'executable',
1226 '../base/base.gyp:base',
1230 'tools/gdig/file_net_log.cc',
1231 'tools/gdig/gdig.cc',
1235 'target_name': 'get_server_time',
1236 'type': 'executable',
1238 '../base/base.gyp:base',
1239 '../base/base.gyp:base_i18n',
1240 '../url/url.gyp:url_lib',
1244 'tools/get_server_time/get_server_time.cc',
1246 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1247 'msvs_disabled_warnings': [4267, ],
1250 'target_name': 'hpack_example_generator',
1251 'type': 'executable',
1253 '../base/base.gyp:base',
1257 'spdy/fuzzing/hpack_example_generator.cc',
1259 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1260 'msvs_disabled_warnings': [4267, ],
1263 'target_name': 'hpack_fuzz_mutator',
1264 'type': 'executable',
1266 '../base/base.gyp:base',
1270 'spdy/fuzzing/hpack_fuzz_mutator.cc',
1272 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1273 'msvs_disabled_warnings': [4267, ],
1276 'target_name': 'hpack_fuzz_wrapper',
1277 'type': 'executable',
1279 '../base/base.gyp:base',
1283 'spdy/fuzzing/hpack_fuzz_wrapper.cc',
1285 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1286 'msvs_disabled_warnings': [4267, ],
1289 'target_name': 'net_watcher',
1290 'type': 'executable',
1292 '../base/base.gyp:base',
1297 [ 'use_glib == 1', {
1299 '../build/linux/system.gyp:gconf',
1300 '../build/linux/system.gyp:gio',
1306 'tools/net_watcher/net_watcher.cc',
1310 'target_name': 'run_testserver',
1311 'type': 'executable',
1313 '../base/base.gyp:base',
1314 '../base/base.gyp:test_support_base',
1315 '../testing/gtest.gyp:gtest',
1319 'tools/testserver/run_testserver.cc',
1323 'target_name': 'stress_cache',
1324 'type': 'executable',
1326 '../base/base.gyp:base',
1331 'disk_cache/blockfile/stress_cache.cc',
1333 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1334 'msvs_disabled_warnings': [4267, ],
1337 'target_name': 'tld_cleanup',
1338 'type': 'executable',
1340 '../base/base.gyp:base',
1341 '../base/base.gyp:base_i18n',
1342 '../net/tools/tld_cleanup/tld_cleanup.gyp:tld_cleanup_util',
1345 'tools/tld_cleanup/tld_cleanup.cc',
1347 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1348 'msvs_disabled_warnings': [4267, ],
1352 ['os_posix == 1 and OS != "mac" and OS != "ios" and OS != "android"', {
1355 'target_name': 'epoll_server',
1356 'type': 'static_library',
1358 '../base/base.gyp:base',
1362 'tools/epoll_server/epoll_server.cc',
1363 'tools/epoll_server/epoll_server.h',
1367 'target_name': 'flip_in_mem_edsm_server_base',
1368 'type': 'static_library',
1373 '../base/base.gyp:base',
1374 '../third_party/boringssl/boringssl.gyp:boringssl',
1380 'tools/dump_cache/url_to_filename_encoder.cc',
1381 'tools/dump_cache/url_to_filename_encoder.h',
1382 'tools/dump_cache/url_utilities.h',
1383 'tools/dump_cache/url_utilities.cc',
1384 'tools/flip_server/acceptor_thread.h',
1385 'tools/flip_server/acceptor_thread.cc',
1386 'tools/flip_server/create_listener.cc',
1387 'tools/flip_server/create_listener.h',
1388 'tools/flip_server/constants.h',
1389 'tools/flip_server/flip_config.cc',
1390 'tools/flip_server/flip_config.h',
1391 'tools/flip_server/http_interface.cc',
1392 'tools/flip_server/http_interface.h',
1393 'tools/flip_server/loadtime_measurement.h',
1394 'tools/flip_server/mem_cache.h',
1395 'tools/flip_server/mem_cache.cc',
1396 'tools/flip_server/output_ordering.cc',
1397 'tools/flip_server/output_ordering.h',
1398 'tools/flip_server/ring_buffer.cc',
1399 'tools/flip_server/ring_buffer.h',
1400 'tools/flip_server/sm_connection.cc',
1401 'tools/flip_server/sm_connection.h',
1402 'tools/flip_server/sm_interface.h',
1403 'tools/flip_server/spdy_ssl.cc',
1404 'tools/flip_server/spdy_ssl.h',
1405 'tools/flip_server/spdy_interface.cc',
1406 'tools/flip_server/spdy_interface.h',
1407 'tools/flip_server/spdy_util.cc',
1408 'tools/flip_server/spdy_util.h',
1409 'tools/flip_server/streamer_interface.cc',
1410 'tools/flip_server/streamer_interface.h',
1414 'target_name': 'flip_in_mem_edsm_server_unittests',
1415 'type': 'executable',
1417 '../testing/gtest.gyp:gtest',
1418 '../testing/gmock.gyp:gmock',
1419 '../third_party/boringssl/boringssl.gyp:boringssl',
1420 'flip_in_mem_edsm_server_base',
1425 'tools/flip_server/flip_test_utils.cc',
1426 'tools/flip_server/flip_test_utils.h',
1427 'tools/flip_server/http_interface_test.cc',
1428 'tools/flip_server/mem_cache_test.cc',
1429 'tools/flip_server/run_all_tests.cc',
1430 'tools/flip_server/spdy_interface_test.cc',
1434 'target_name': 'flip_in_mem_edsm_server',
1435 'type': 'executable',
1440 '../base/base.gyp:base',
1441 'flip_in_mem_edsm_server_base',
1445 'tools/flip_server/flip_in_mem_edsm_server.cc',
1449 'target_name': 'quic_base',
1450 'type': 'static_library',
1452 '../base/base.gyp:base',
1453 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
1454 '../url/url.gyp:url_lib',
1460 'tools/quic/quic_client.cc',
1461 'tools/quic/quic_client.h',
1462 'tools/quic/quic_client_session.cc',
1463 'tools/quic/quic_client_session.h',
1464 'tools/quic/quic_default_packet_writer.cc',
1465 'tools/quic/quic_default_packet_writer.h',
1466 'tools/quic/quic_dispatcher.h',
1467 'tools/quic/quic_dispatcher.cc',
1468 'tools/quic/quic_epoll_clock.cc',
1469 'tools/quic/quic_epoll_clock.h',
1470 'tools/quic/quic_epoll_connection_helper.cc',
1471 'tools/quic/quic_epoll_connection_helper.h',
1472 'tools/quic/quic_in_memory_cache.cc',
1473 'tools/quic/quic_in_memory_cache.h',
1474 'tools/quic/quic_packet_writer_wrapper.cc',
1475 'tools/quic/quic_packet_writer_wrapper.h',
1476 'tools/quic/quic_per_connection_packet_writer.cc',
1477 'tools/quic/quic_per_connection_packet_writer.h',
1478 'tools/quic/quic_server.cc',
1479 'tools/quic/quic_server.h',
1480 'tools/quic/quic_server_session.cc',
1481 'tools/quic/quic_server_session.h',
1482 'tools/quic/quic_socket_utils.cc',
1483 'tools/quic/quic_socket_utils.h',
1484 'tools/quic/quic_spdy_client_stream.cc',
1485 'tools/quic/quic_spdy_client_stream.h',
1486 'tools/quic/quic_spdy_server_stream.cc',
1487 'tools/quic/quic_spdy_server_stream.h',
1488 'tools/quic/quic_time_wait_list_manager.h',
1489 'tools/quic/quic_time_wait_list_manager.cc',
1493 'target_name': 'quic_client',
1494 'type': 'executable',
1496 '../base/base.gyp:base',
1501 'tools/quic/quic_client_bin.cc',
1505 'target_name': 'quic_server',
1506 'type': 'executable',
1508 '../base/base.gyp:base',
1513 'quic/quic_server_bin.cc',
1521 'target_name': 'net_jni_headers',
1524 'android/java/src/org/chromium/net/AndroidCertVerifyResult.java',
1525 'android/java/src/org/chromium/net/AndroidKeyStore.java',
1526 'android/java/src/org/chromium/net/AndroidNetworkLibrary.java',
1527 'android/java/src/org/chromium/net/AndroidPrivateKey.java',
1528 'android/java/src/org/chromium/net/GURLUtils.java',
1529 'android/java/src/org/chromium/net/NetworkChangeNotifier.java',
1530 'android/java/src/org/chromium/net/ProxyChangeListener.java',
1531 'android/java/src/org/chromium/net/X509Util.java',
1534 'jni_gen_package': 'net',
1536 'includes': [ '../build/jni_generator.gypi' ],
1539 ['use_icu_alternatives_on_android==1', {
1541 'android/java/src/org/chromium/net/NetStringUtil.java',
1547 'target_name': 'net_test_jni_headers',
1550 'android/javatests/src/org/chromium/net/AndroidKeyStoreTestUtil.java',
1553 'jni_gen_package': 'net',
1555 'includes': [ '../build/jni_generator.gypi' ],
1558 'target_name': 'net_java',
1561 'java_in_dir': '../net/android/java',
1564 '../base/base.gyp:base',
1565 'cert_verify_status_android_java',
1566 'certificate_mime_types_java',
1568 'private_key_types_java',
1569 'remote_android_keystore_aidl',
1571 'includes': [ '../build/java.gypi' ],
1574 # Processes the interface files for communication with an Android KeyStore
1575 # running in a separate process.
1576 'target_name': 'remote_android_keystore_aidl',
1579 'aidl_interface_file': '../net/android/java/src/org/chromium/net/IRemoteAndroidKeyStoreInterface.aidl',
1582 '../net/android/java/src/org/chromium/net/IRemoteAndroidKeyStore.aidl',
1583 '../net/android/java/src/org/chromium/net/IRemoteAndroidKeyStoreCallbacks.aidl',
1585 'includes': [ '../build/java_aidl.gypi' ],
1588 'target_name': 'net_java_test_support',
1591 'java_in_dir': '../net/test/android/javatests',
1593 'includes': [ '../build/java.gypi' ],
1596 'target_name': 'net_javatests',
1599 'java_in_dir': '../net/android/javatests',
1602 '../base/base.gyp:base',
1603 '../base/base.gyp:base_java_test_support',
1606 'includes': [ '../build/java.gypi' ],
1609 'target_name': 'net_errors_java',
1612 'android/java/NetError.template',
1615 'package_name': 'org/chromium/net',
1616 'template_deps': ['base/net_error_list.h'],
1618 'includes': [ '../build/android/java_cpp_template.gypi' ],
1621 'target_name': 'certificate_mime_types_java',
1624 'source_file': 'base/mime_util.h',
1626 'includes': [ '../build/android/java_cpp_enum.gypi' ],
1629 'target_name': 'cert_verify_status_android_java',
1632 'source_file': 'android/cert_verify_result_android.h',
1634 'includes': [ '../build/android/java_cpp_enum.gypi' ],
1637 'target_name': 'private_key_types_java',
1640 'source_file': 'android/keystore.h',
1642 'includes': [ '../build/android/java_cpp_enum.gypi' ],
1645 'target_name': 'net_unittests_apk',
1653 'test_suite_name': 'net_unittests',
1655 'includes': [ '../build/apk_test.gypi' ],
1659 ['OS == "android" or OS == "linux"', {
1662 'target_name': 'disk_cache_memory_test',
1663 'type': 'executable',
1665 '../base/base.gyp:base',
1669 'tools/disk_cache_memory_test/disk_cache_memory_test.cc',
1674 ['test_isolation_mode != "noop"', {
1677 'target_name': 'net_unittests_run',
1683 '../build/isolate.gypi',
1686 'net_unittests.isolate',