Android Chromoting: Remove exit-fullscreen button.
[chromium-blink-merge.git] / net / net.gyp
blob31f8efbd3aab63b09ca413bb5ea220284775bcdb
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.
6   'variables': {
7     'chromium_code': 1,
9     'linux_link_kerberos%': 0,
10     'conditions': [
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).
14         'use_kerberos%': 0,
15       }, {  # chromeos == 0 and embedded==0 and OS!="android" and OS!="ios"
16         'use_kerberos%': 1,
17       }],
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,
25       }, {
26         'posix_avoid_mmap%': 0,
27       }],
28       ['OS=="ios"', {
29         # Websockets and socket stream are not used on iOS.
30         'enable_websockets%': 0,
31         # iOS does not use V8.
32         'use_v8_in_net%': 0,
33         'enable_built_in_dns%': 0,
34       }, {
35         'enable_websockets%': 1,
36         'use_v8_in_net%': 1,
37         'enable_built_in_dns%': 1,
38       }],
39     ],
40   },
41   'includes': [
42     '../build/win_precompile.gypi',
43     'net.gypi',
44   ],
45   'targets': [
46     {
47       'target_name': 'net_derived_sources',
48       'type': 'none',
49       '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',
57       ],
58       'rules': [
59         {
60           'rule_name': 'dafsa',
61           'extension': 'gperf',
62           'outputs': [
63             '<(SHARED_INTERMEDIATE_DIR)/net/<(RULE_INPUT_DIRNAME)/<(RULE_INPUT_ROOT)-inc.cc',
64           ],
65           'inputs': [
66             'tools/tld_cleanup/make_dafsa.py',
67           ],
68           'action': [
69             'python',
70             'tools/tld_cleanup/make_dafsa.py',
71             '<(RULE_INPUT_PATH)',
72             '<(SHARED_INTERMEDIATE_DIR)/net/<(RULE_INPUT_DIRNAME)/<(RULE_INPUT_ROOT)-inc.cc',
73           ],
74         },
75       ],
76       'direct_dependent_settings': {
77         'include_dirs': [
78           '<(SHARED_INTERMEDIATE_DIR)'
79         ],
80       },
81     },
82     {
83       'target_name': 'net',
84       'dependencies': [
85         '../base/base.gyp:base_i18n',
86         '../third_party/icu/icu.gyp:icui18n',
87         '../third_party/icu/icu.gyp:icuuc',
88         '../url/url.gyp:url_lib',
89       ],
90       'sources': [
91         'base/filename_util_icu.cc',
92         'base/net_string_util_icu.cc',
93         'base/net_util_icu.cc',
94       ],
95       'includes': [ 'net_common.gypi' ],
96     },
97     {
98       'target_name': 'net_unittests',
99       'type': '<(gtest_target_type)',
100       'dependencies': [
101         '../base/base.gyp:base',
102         '../base/base.gyp:base_i18n',
103         '../base/base.gyp:base_prefs_test_support',
104         '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
105         '../crypto/crypto.gyp:crypto',
106         '../crypto/crypto.gyp:crypto_test_support',
107         '../testing/gmock.gyp:gmock',
108         '../testing/gtest.gyp:gtest',
109         '../third_party/zlib/zlib.gyp:zlib',
110         '../url/url.gyp:url_lib',
111         'balsa',
112         'http_server',
113         'net',
114         'net_derived_sources',
115         'net_extras',
116         'net_test_support',
117         'simple_quic_tools',
118       ],
119       'sources': [
120         '<@(net_test_sources)',
121       ],
122       'conditions': [
123         ['os_posix == 1 and OS != "mac" and OS != "ios" and OS != "android"', {
124           'dependencies': [
125             'epoll_quic_tools',
126             'epoll_server',
127             'flip_in_mem_edsm_server_base',
128           ],
129           'sources': [
130             '<@(net_linux_test_sources)',
131           ],
132         }],
133         ['OS == "mac" or OS == "ios"', {
134           'sources': [
135             '<@(net_base_test_mac_ios_sources)',
136           ],
137         }],
138         ['chromeos==1', {
139           'sources!': [
140             'proxy/proxy_config_service_linux_unittest.cc',
141           ],
142         }],
143         [ 'OS == "android"', {
144           'sources!': [
145             # See bug http://crbug.com/344533.
146             'disk_cache/blockfile/index_table_v3_unittest.cc',
147             # No res_ninit() et al on Android, so this doesn't make a lot of
148             # sense.
149             'dns/dns_config_service_posix_unittest.cc',
150           ],
151           'dependencies': [
152             'net_javatests',
153             'net_test_jni_headers',
154           ],
155         }],
156         [ 'use_nss != 1', {
157           'sources!': [
158             'ssl/client_cert_store_chromeos_unittest.cc',
159             'ssl/client_cert_store_nss_unittest.cc',
160           ],
161         }],
162         [ 'use_openssl == 1', {
163           # Avoid compiling/linking with the system library.
164           'dependencies': [
165             '../third_party/boringssl/boringssl.gyp:boringssl',
166           ],
167         }, {  # use_openssl == 0
168           'conditions': [
169             [ 'desktop_linux == 1 or chromeos == 1', {
170               'dependencies': [
171                 '../build/linux/system.gyp:ssl',
172               ],
173             }, {  # desktop_linux == 0 and chromeos == 0
174               'dependencies': [
175                 '../third_party/nss/nss.gyp:nspr',
176                 '../third_party/nss/nss.gyp:nss',
177                 'third_party/nss/ssl.gyp:libssl',
178               ],
179               'sources!': [
180                 'cert/nss_cert_database_unittest.cc',
181               ],
182             }],
183           ],
184         }],
185         [ 'os_posix == 1 and OS != "mac" and OS != "android" and OS != "ios"', {
186           'conditions': [
187             ['use_allocator!="none"', {
188               'dependencies': [
189                 '../base/allocator/allocator.gyp:allocator',
190               ],
191             }],
192           ],
193         }],
194         [ 'use_kerberos==1', {
195           'defines': [
196             'USE_KERBEROS',
197           ],
198         }, { # use_kerberos == 0
199           'sources!': [
200             'http/http_auth_gssapi_posix_unittest.cc',
201             'http/http_auth_handler_negotiate_unittest.cc',
202             'http/mock_gssapi_library_posix.cc',
203             'http/mock_gssapi_library_posix.h',
204           ],
205         }],
206         [ 'use_openssl == 1 or (desktop_linux == 0 and chromeos == 0 and OS != "ios")', {
207           # Only include this test when on Posix and using NSS for
208           # cert verification or on iOS (which also uses NSS for certs).
209           'sources!': [
210             'ocsp/nss_ocsp_unittest.cc',
211           ],
212         }],
213         [ 'use_openssl==1', {
214             # When building for OpenSSL, we need to exclude NSS specific tests
215             # or functionality not supported by OpenSSL yet.
216             # TODO(bulach): Add equivalent tests when the underlying
217             #               functionality is ported to OpenSSL.
218             'sources!': [
219               'cert/nss_cert_database_chromeos_unittest.cc',
220               'cert/nss_cert_database_unittest.cc',
221               'cert/nss_profile_filter_chromeos_unittest.cc',
222               'cert/x509_util_nss_unittest.cc',
223               'quic/test_tools/crypto_test_utils_nss.cc',
224             ],
225           }, {  # else !use_openssl: remove the unneeded files and pull in NSS.
226             'sources!': [
227               'cert/x509_util_openssl_unittest.cc',
228               'quic/test_tools/crypto_test_utils_openssl.cc',
229               'socket/ssl_client_socket_openssl_unittest.cc',
230               'socket/ssl_session_cache_openssl_unittest.cc',
231             ],
232           },
233         ],
234         [ 'use_openssl_certs == 0', {
235             'sources!': [
236               'ssl/openssl_client_key_store_unittest.cc',
237             ],
238         }],
239         [ 'enable_websockets != 1', {
240             'sources/': [
241               ['exclude', '^websockets/'],
242               ['exclude', '^server/'],
243             ],
244             'dependencies!': [
245               'http_server',
246             ],
247         }],
248         ['disable_file_support==1', {
249           'sources!': [
250             'base/directory_lister_unittest.cc',
251             'url_request/url_request_file_job_unittest.cc',
252           ],
253         }],
254         [ 'disable_ftp_support==1', {
255             'sources/': [
256               ['exclude', '^ftp/'],
257             ],
258             'sources!': [
259               'url_request/url_request_ftp_job_unittest.cc',
260             ],
261           },
262         ],
263         [ 'enable_built_in_dns!=1', {
264             'sources!': [
265               'dns/address_sorter_posix_unittest.cc',
266               'dns/address_sorter_unittest.cc',
267             ],
268           },
269         ],
270         # Always need use_v8_in_net to be 1 to run gyp on Android, so just
271         # remove net_unittest's dependency on v8 when using icu alternatives
272         # instead of setting use_v8_in_net to 0.
273         [ 'use_v8_in_net==1 and use_icu_alternatives_on_android==0', {
274             'dependencies': [
275               'net_with_v8',
276             ],
277           }, {  # else: !use_v8_in_net
278             'sources!': [
279               'proxy/proxy_resolver_v8_tracing_unittest.cc',
280               'proxy/proxy_resolver_v8_unittest.cc',
281             ],
282           },
283         ],
285         [ 'use_v8_in_net==1 and OS != "android"', {
286             'dependencies': [
287               'net_with_v8',
288               'net_browser_services',
289               'net_utility_services',
290               '../third_party/mojo/mojo_edk.gyp:mojo_system_impl',
291             ],
292           }, {  # else
293             'sources!': [
294               'dns/host_resolver_mojo_unittest.cc',
295               'dns/mojo_host_resolver_impl_unittest.cc',
296               'proxy/load_state_change_coalescer_unittest.cc',
297               'proxy/mojo_proxy_resolver_factory_impl_unittest.cc',
298               'proxy/mojo_proxy_resolver_impl_unittest.cc',
299               'proxy/proxy_resolver_mojo_unittest.cc',
300               'proxy/proxy_service_mojo_unittest.cc',
301             ],
302           },
303         ],
305         [ 'enable_mdns != 1', {
306             'sources!' : [
307               'dns/mdns_cache_unittest.cc',
308               'dns/mdns_client_unittest.cc',
309               'dns/mdns_query_unittest.cc',
310               'dns/record_parsed_unittest.cc',
311               'dns/record_rdata_unittest.cc',
312             ],
313         }],
314         [ 'OS == "win"', {
315             'sources!': [
316               'dns/dns_config_service_posix_unittest.cc',
317               'http/http_auth_gssapi_posix_unittest.cc',
318             ],
319             # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
320             'msvs_disabled_warnings': [4267, ],
321             'conditions': [
322               [ 'icu_use_data_file_flag == 0', {
323                 # This is needed to trigger the dll copy step on windows.
324                 # TODO(mark): Specifying this here shouldn't be necessary.
325                 'dependencies': [
326                   '../third_party/icu/icu.gyp:icudata',
327                 ],
328               }],
329             ],
330           },
331         ],
332         [ 'OS == "ios"', {
333             'actions': [
334               {
335                 'action_name': 'copy_test_data',
336                 'variables': {
337                   'test_data_files': [
338                     'data/ssl/certificates/',
339                     'data/test.html',
340                     'data/url_request_unittest/',
341                   ],
342                   'test_data_prefix': 'net',
343                 },
344                 'includes': [ '../build/copy_test_data_ios.gypi' ],
345               },
346             ],
347             'sources!': [
348               # TODO(droger): The following tests are disabled because the
349               # implementation is missing or incomplete.
350               # KeygenHandler::GenKeyAndSignChallenge() is not ported to iOS.
351               'base/keygen_handler_unittest.cc',
352               'disk_cache/backend_unittest.cc',
353               'disk_cache/blockfile/block_files_unittest.cc',
354               # Need to read input data files.
355               'filter/gzip_filter_unittest.cc',
356               # Need TestServer.
357               'proxy/proxy_script_fetcher_impl_unittest.cc',
358               'socket/ssl_client_socket_unittest.cc',
359               'socket/ssl_server_socket_unittest.cc',
360               'spdy/fuzzing/hpack_fuzz_util_test.cc',
361               # Needs GetAppOutput().
362               'test/python_utils_unittest.cc',
363               'url_request/url_fetcher_impl_unittest.cc',
364               'url_request/url_request_context_builder_unittest.cc',
366               # The following tests are disabled because they don't apply to
367               # iOS.
368               # OS is not "linux" or "freebsd" or "openbsd".
369               'socket/unix_domain_client_socket_posix_unittest.cc',
370               'socket/unix_domain_listen_socket_posix_unittest.cc',
371               'socket/unix_domain_server_socket_posix_unittest.cc',
373               # See bug http://crbug.com/344533.
374               'disk_cache/blockfile/index_table_v3_unittest.cc',
375             ],
376         }],
377         [ 'OS == "android"', {
378             'sources!': [
379               'dns/dns_config_service_posix_unittest.cc',
380             ],
381           },
382         ],
383         ['OS == "android"', {
384           # TODO(mmenke):  This depends on test_support_base, which depends on
385           #                icu.  Figure out a way to remove that dependency.
386           'dependencies': [
387             '../testing/android/native_test.gyp:native_test_native_code',
388           ]
389         }],
390         [ 'use_icu_alternatives_on_android == 1', {
391             'dependencies!': [
392               '../base/base.gyp:base_i18n',
393             ],
394             'sources!': [
395               'base/filename_util_unittest.cc',
396               'base/net_util_icu_unittest.cc',
397             ],
398           },
399         ],
400         ['v8_use_external_startup_data==1', {
401           'dependencies': [
402             '../gin/gin.gyp:gin',
403           ]
404         }],
405       ],
406       'target_conditions': [
407         # These source files are excluded by default platform rules, but they
408         # are needed in specific cases on other platforms. Re-including them can
409         # only be done in target_conditions as it is evaluated after the
410         # platform rules.
411         ['OS == "android"', {
412           'sources/': [
413             ['include', '^base/address_tracker_linux_unittest\\.cc$'],
414           ],
415         }],
416         ['OS == "ios"', {
417           'sources/': [
418             ['include', '^base/mac/url_conversions_unittest\\.mm$'],
419           ],
420         }],
421       ],
422     },
423     {
424       'target_name': 'net_perftests',
425       'type': 'executable',
426       'dependencies': [
427         '../base/base.gyp:base',
428         '../base/base.gyp:base_i18n',
429         '../base/base.gyp:test_support_perf',
430         '../testing/gtest.gyp:gtest',
431         '../url/url.gyp:url_lib',
432         'net',
433         'net_test_support',
434       ],
435       'sources': [
436         'cookies/cookie_monster_perftest.cc',
437         'disk_cache/blockfile/disk_cache_perftest.cc',
438         'proxy/proxy_resolver_perftest.cc',
439         'udp/udp_socket_perftest.cc',
440         'websockets/websocket_frame_perftest.cc',
441       ],
442       'conditions': [
443         [ 'use_v8_in_net==1', {
444             'dependencies': [
445               'net_with_v8',
446             ],
447           }, {  # else: !use_v8_in_net
448             'sources!': [
449               'proxy/proxy_resolver_perftest.cc',
450             ],
451           },
452         ],
453         [ 'OS == "win"', {
454             'conditions': [
455               [ 'icu_use_data_file_flag == 0', {
456                 # This is needed to trigger the dll copy step on windows.
457                 # TODO(mark): Specifying this here shouldn't be necessary.
458                 'dependencies': [
459                   '../third_party/icu/icu.gyp:icudata',
460                 ],
461               }],
462             ],
463             # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
464             'msvs_disabled_warnings': [4267, ],
465         }],
466         [ 'enable_websockets != 1', {
467           'sources!': [
468             'websockets/websocket_frame_perftest.cc',
469           ],
470         }],
471       ],
472     },
473     {
474       'target_name': 'net_test_support',
475       'type': 'static_library',
476       'dependencies': [
477         '../base/base.gyp:base',
478         '../base/base.gyp:test_support_base',
479         '../crypto/crypto.gyp:crypto',
480         '../net/tools/tld_cleanup/tld_cleanup.gyp:tld_cleanup_util',
481         '../testing/gtest.gyp:gtest',
482         '../testing/gmock.gyp:gmock',
483         '../url/url.gyp:url_lib',
484         'net',
485       ],
486       'export_dependent_settings': [
487         '../base/base.gyp:base',
488         # TODO(mmenke):  This depends on icu, figure out a way to build tests
489         #                without icu.
490         '../base/base.gyp:test_support_base',
491         '../testing/gtest.gyp:gtest',
492         '../testing/gmock.gyp:gmock',
493       ],
494       'sources': [
495         'base/load_timing_info_test_util.cc',
496         'base/load_timing_info_test_util.h',
497         'base/mock_file_stream.cc',
498         'base/mock_file_stream.h',
499         'base/test_completion_callback.cc',
500         'base/test_completion_callback.h',
501         'base/test_data_directory.cc',
502         'base/test_data_directory.h',
503         'cert/mock_cert_verifier.cc',
504         'cert/mock_cert_verifier.h',
505         'cookies/cookie_monster_store_test.cc',
506         'cookies/cookie_monster_store_test.h',
507         'cookies/cookie_store_test_callbacks.cc',
508         'cookies/cookie_store_test_callbacks.h',
509         'cookies/cookie_store_test_helpers.cc',
510         'cookies/cookie_store_test_helpers.h',
511         'disk_cache/disk_cache_test_base.cc',
512         'disk_cache/disk_cache_test_base.h',
513         'disk_cache/disk_cache_test_util.cc',
514         'disk_cache/disk_cache_test_util.h',
515         'dns/dns_test_util.cc',
516         'dns/dns_test_util.h',
517         'dns/mock_host_resolver.cc',
518         'dns/mock_host_resolver.h',
519         'dns/mock_mdns_socket_factory.cc',
520         'dns/mock_mdns_socket_factory.h',
521         'http/http_transaction_test_util.cc',
522         'http/http_transaction_test_util.h',
523         'log/captured_net_log_entry.cc',
524         'log/captured_net_log_entry.h',
525         'log/capturing_net_log.cc',
526         'log/capturing_net_log.h',
527         'log/capturing_net_log_observer.cc',
528         'log/capturing_net_log_observer.h',
529         'proxy/mock_proxy_resolver.cc',
530         'proxy/mock_proxy_resolver.h',
531         'proxy/mock_proxy_script_fetcher.cc',
532         'proxy/mock_proxy_script_fetcher.h',
533         'proxy/proxy_config_service_common_unittest.cc',
534         'proxy/proxy_config_service_common_unittest.h',
535         'socket/socket_test_util.cc',
536         'socket/socket_test_util.h',
537         'test/cert_test_util.cc',
538         'test/cert_test_util.h',
539         'test/cert_test_util_nss.cc',
540         'test/ct_test_util.cc',
541         'test/ct_test_util.h',
542         'test/embedded_test_server/embedded_test_server.cc',
543         'test/embedded_test_server/embedded_test_server.h',
544         'test/embedded_test_server/http_connection.cc',
545         'test/embedded_test_server/http_connection.h',
546         'test/embedded_test_server/http_request.cc',
547         'test/embedded_test_server/http_request.h',
548         'test/embedded_test_server/http_response.cc',
549         'test/embedded_test_server/http_response.h',
550         'test/event_waiter.h',
551         'test/net_test_suite.cc',
552         'test/net_test_suite.h',
553         'test/python_utils.cc',
554         'test/python_utils.h',
555         'test/spawned_test_server/base_test_server.cc',
556         'test/spawned_test_server/base_test_server.h',
557         'test/spawned_test_server/local_test_server.cc',
558         'test/spawned_test_server/local_test_server.h',
559         'test/spawned_test_server/local_test_server_posix.cc',
560         'test/spawned_test_server/local_test_server_win.cc',
561         'test/spawned_test_server/remote_test_server.cc',
562         'test/spawned_test_server/remote_test_server.h',
563         'test/spawned_test_server/spawned_test_server.h',
564         'test/spawned_test_server/spawner_communicator.cc',
565         'test/spawned_test_server/spawner_communicator.h',
566         'test/url_request/url_request_failed_job.cc',
567         'test/url_request/url_request_failed_job.h',
568         'test/url_request/url_request_mock_data_job.cc',
569         'test/url_request/url_request_mock_data_job.h',
570         'test/url_request/url_request_mock_http_job.cc',
571         'test/url_request/url_request_mock_http_job.h',
572         'test/url_request/url_request_slow_download_job.cc',
573         'test/url_request/url_request_slow_download_job.h',
574         'url_request/test_url_fetcher_factory.cc',
575         'url_request/test_url_fetcher_factory.h',
576         'url_request/test_url_request_interceptor.cc',
577         'url_request/test_url_request_interceptor.h',
578         'url_request/url_request_test_util.cc',
579         'url_request/url_request_test_util.h',
580       ],
581       'conditions': [
582         ['OS != "ios"', {
583           'dependencies': [
584             '../third_party/protobuf/protobuf.gyp:py_proto',
585           ],
586         }],
587         ['use_openssl == 0 and (use_nss == 1 or OS == "ios")', {
588           'conditions': [
589             [ 'desktop_linux == 1 or chromeos == 1', {
590               'dependencies': [
591                 '../build/linux/system.gyp:ssl',
592               ],
593             }, {  # desktop_linux == 0 and chromeos == 0
594               'dependencies': [
595                 '../third_party/nss/nss.gyp:nspr',
596                 '../third_party/nss/nss.gyp:nss',
597                 'third_party/nss/ssl.gyp:libssl',
598               ],
599             }],
600           ],
601         }],
602         ['os_posix == 1 and OS != "mac" and OS != "android" and OS != "ios"', {
603           'conditions': [
604             ['use_allocator!="none"', {
605               'dependencies': [
606                 '../base/allocator/allocator.gyp:allocator',
607               ],
608             }],
609           ],
610         }],
611         ['OS != "android"', {
612           'sources!': [
613             'test/spawned_test_server/remote_test_server.cc',
614             'test/spawned_test_server/remote_test_server.h',
615             'test/spawned_test_server/spawner_communicator.cc',
616             'test/spawned_test_server/spawner_communicator.h',
617           ],
618         }],
619         [ 'use_v8_in_net==1', {
620             'dependencies': [
621               'net_with_v8',
622             ],
623           },
624         ],
625         [ 'enable_mdns != 1', {
626             'sources!' : [
627               'dns/mock_mdns_socket_factory.cc',
628               'dns/mock_mdns_socket_factory.h'
629             ]
630         }],
631         [ 'use_nss != 1', {
632             'sources!': [
633               'test/cert_test_util_nss.cc',
634             ],
635         }],
636       ],
637       # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
638       'msvs_disabled_warnings': [4267, ],
639     },
640     {
641       'target_name': 'net_resources',
642       'type': 'none',
643       'variables': {
644         'grit_out_dir': '<(SHARED_INTERMEDIATE_DIR)/net',
645       },
646       'actions': [
647         {
648           'action_name': 'net_resources',
649           'variables': {
650             'grit_grd_file': 'base/net_resources.grd',
651           },
652           'includes': [ '../build/grit_action.gypi' ],
653         },
654       ],
655     },
656     {
657       'target_name': 'net_extras',
658       'type': 'static_library',
659       'variables': { 'enable_wexit_time_destructors': 1, },
660       'dependencies': [
661         '../base/base.gyp:base',
662         '../sql/sql.gyp:sql',
663         'net',
664       ],
665       'sources': [
666         '<@(net_extras_sources)',
667       ],
668     },
669     {
670       'target_name': 'net_docs',
671       'type': 'none',
672       'actions': [
673         {
674           'action_name': 'net_docs',
675           'variables': {
676             'net_docs_input_dir': '.',
677           },
678           'inputs': [
679             '<@(net_docs_sources)',
680           ],
681           'outputs': [
682             '<(net_docs_output_dir)',
683           ],
684           'action': [
685             'python',
686             '<(net_docs_script)',
687             '--input_path',
688             '<(net_docs_input_dir)',
689             '--output_path',
690             '<(net_docs_output_dir)',
691             '<@(net_docs_sources)',
692           ],
693           'message': 'Rendering network stack documentation',
694         }
695       ],
696     },
697     {
698       'target_name': 'http_server',
699       'type': 'static_library',
700       'variables': { 'enable_wexit_time_destructors': 1, },
701       'dependencies': [
702         '../base/base.gyp:base',
703         'net',
704       ],
705       'sources': [
706         'server/http_connection.cc',
707         'server/http_connection.h',
708         'server/http_server.cc',
709         'server/http_server.h',
710         'server/http_server_request_info.cc',
711         'server/http_server_request_info.h',
712         'server/http_server_response_info.cc',
713         'server/http_server_response_info.h',
714         'server/web_socket.cc',
715         'server/web_socket.h',
716         'server/web_socket_encoder.cc',
717         'server/web_socket_encoder.h',
718       ],
719       # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
720       'msvs_disabled_warnings': [4267, ],
721     },
722     {
723       'target_name': 'balsa',
724       'type': 'static_library',
725       'dependencies': [
726         '../base/base.gyp:base',
727         'net',
728       ],
729       'sources': [
730         'tools/balsa/balsa_enums.h',
731         'tools/balsa/balsa_frame.cc',
732         'tools/balsa/balsa_frame.h',
733         'tools/balsa/balsa_headers.cc',
734         'tools/balsa/balsa_headers.h',
735         'tools/balsa/balsa_headers_token_utils.cc',
736         'tools/balsa/balsa_headers_token_utils.h',
737         'tools/balsa/balsa_visitor_interface.h',
738         'tools/balsa/http_message_constants.cc',
739         'tools/balsa/http_message_constants.h',
740         'tools/balsa/noop_balsa_visitor.h',
741         'tools/balsa/simple_buffer.cc',
742         'tools/balsa/simple_buffer.h',
743         'tools/balsa/split.cc',
744         'tools/balsa/split.h',
745         'tools/balsa/string_piece_utils.h',
746         'tools/quic/spdy_utils.cc',
747         'tools/quic/spdy_utils.h',
748       ],
749     },
750     {
751       'target_name': 'dump_cache',
752       'type': 'executable',
753       'dependencies': [
754         '../base/base.gyp:base',
755         'net',
756         'net_test_support',
757       ],
758       'sources': [
759         'tools/dump_cache/cache_dumper.cc',
760         'tools/dump_cache/cache_dumper.h',
761         'tools/dump_cache/dump_cache.cc',
762         'tools/dump_cache/dump_files.cc',
763         'tools/dump_cache/dump_files.h',
764         'tools/dump_cache/simple_cache_dumper.cc',
765         'tools/dump_cache/simple_cache_dumper.h',
766         'tools/dump_cache/url_to_filename_encoder.cc',
767         'tools/dump_cache/url_to_filename_encoder.h',
768         'tools/dump_cache/url_utilities.cc',
769         'tools/dump_cache/url_utilities.h',
770       ],
771       # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
772       'msvs_disabled_warnings': [4267, ],
773     },
774     {
775       'target_name': 'simple_quic_tools',
776       'type': 'static_library',
777       'dependencies': [
778         '../base/base.gyp:base',
779         '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
780         '../url/url.gyp:url_lib',
781         'net',
782       ],
783       'sources': [
784         'tools/quic/quic_client_session.cc',
785         'tools/quic/quic_client_session.h',
786         'tools/quic/quic_dispatcher.cc',
787         'tools/quic/quic_dispatcher.h',
788         'tools/quic/quic_in_memory_cache.cc',
789         'tools/quic/quic_in_memory_cache.h',
790         'tools/quic/quic_per_connection_packet_writer.cc',
791         'tools/quic/quic_per_connection_packet_writer.h',
792         'tools/quic/quic_server_session.cc',
793         'tools/quic/quic_server_session.h',
794         'tools/quic/quic_simple_client.cc',
795         'tools/quic/quic_simple_client.h',
796         'tools/quic/quic_simple_per_connection_packet_writer.cc',
797         'tools/quic/quic_simple_per_connection_packet_writer.h',
798         'tools/quic/quic_simple_server.cc',
799         'tools/quic/quic_simple_server.h',
800         'tools/quic/quic_simple_server_packet_writer.cc',
801         'tools/quic/quic_simple_server_packet_writer.h',
802         'tools/quic/quic_spdy_client_stream.cc',
803         'tools/quic/quic_spdy_client_stream.h',
804         'tools/quic/quic_spdy_server_stream.cc',
805         'tools/quic/quic_spdy_server_stream.h',
806         'tools/quic/quic_time_wait_list_manager.cc',
807         'tools/quic/quic_time_wait_list_manager.h',
808         'tools/quic/synchronous_host_resolver.cc',
809         'tools/quic/synchronous_host_resolver.h',
810       ],
811     },
812   ],
813   'conditions': [
814     ['use_v8_in_net == 1', {
815       'targets': [
816         {
817           'target_name': 'net_with_v8',
818           'type': '<(component)',
819           'variables': { 'enable_wexit_time_destructors': 1, },
820           'dependencies': [
821             '../base/base.gyp:base',
822             '../gin/gin.gyp:gin',
823             '../url/url.gyp:url_lib',
824             '../v8/tools/gyp/v8.gyp:v8',
825             'net'
826           ],
827           'defines': [
828             'NET_IMPLEMENTATION',
829           ],
830           'sources': [
831             'proxy/proxy_resolver_v8.cc',
832             'proxy/proxy_resolver_v8.h',
833             'proxy/proxy_resolver_v8_tracing.cc',
834             'proxy/proxy_resolver_v8_tracing.h',
835             'proxy/proxy_service_v8.cc',
836             'proxy/proxy_service_v8.h',
837           ],
838           # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
839           'msvs_disabled_warnings': [4267, ],
840         },
841       ],
842     }],
843     ['use_v8_in_net == 1 and OS != "android"', {
844       'targets': [
845         {
846           # GN version: //net/interfaces
847           'target_name': 'net_interfaces',
848           'type': 'static_library',
849           'sources': [
850             'interfaces/host_resolver_service.mojom',
851             'interfaces/proxy_resolver_service.mojom',
852           ],
853           'includes': [
854             '../third_party/mojo/mojom_bindings_generator.gypi',
855           ],
856         },
857         {
858           # GN version: //net:net_browser_services
859           'target_name': 'net_browser_services',
860           'type': 'static_library',
861           'sources': [
862             'dns/mojo_host_resolver_impl.cc',
863             'dns/mojo_host_resolver_impl.h',
864             'proxy/in_process_mojo_proxy_resolver_factory.cc',
865             'proxy/in_process_mojo_proxy_resolver_factory.h',
866             'proxy/mojo_proxy_resolver_factory.h',
867             'proxy/proxy_resolver_mojo.cc',
868             'proxy/proxy_resolver_mojo.h',
869             'proxy/proxy_service_mojo.cc',
870             'proxy/proxy_service_mojo.h',
871           ],
872           'dependencies': [
873             'mojo_type_converters',
874             'net',
875             'net_interfaces',
876             '../mojo/mojo_base.gyp:mojo_common_lib',
877             '../mojo/mojo_base.gyp:mojo_environment_chromium',
878             '../mojo/mojo_base.gyp:mojo_url_type_converters',
879             '../third_party/mojo/mojo_public.gyp:mojo_cpp_bindings',
881             # NOTE(amistry): As long as we support in-process Mojo v8 PAC, we
882             # need this dependency since in_process_mojo_proxy_resolver_factory
883             # creates the utility process side Mojo services in the browser
884             # process.  Ultimately, this will go away when we only support
885             # out-of-process.
886             'net_utility_services',
887           ],
888         },
889         {
890           # GN version: //net:net_utility_services
891           'target_name': 'net_utility_services',
892           'type': 'static_library',
893           'sources': [
894             'dns/host_resolver_mojo.cc',
895             'dns/host_resolver_mojo.h',
896             'proxy/load_state_change_coalescer.cc',
897             'proxy/load_state_change_coalescer.h',
898             'proxy/mojo_proxy_resolver_factory_impl.cc',
899             'proxy/mojo_proxy_resolver_factory_impl.h',
900             'proxy/mojo_proxy_resolver_impl.cc',
901             'proxy/mojo_proxy_resolver_impl.h',
902           ],
903           'dependencies': [
904             'mojo_type_converters',
905             'net_interfaces',
906             'net_with_v8',
907             '../mojo/mojo_base.gyp:mojo_url_type_converters',
908             '../third_party/mojo/mojo_public.gyp:mojo_cpp_bindings',
909           ],
910         },
911         {
912           # GN version: //net:mojo_type_converters
913           'target_name': 'mojo_type_converters',
914           'type': 'static_library',
915           'sources': [
916             'dns/mojo_host_type_converters.cc',
917             'dns/mojo_host_type_converters.h',
918             'proxy/mojo_proxy_type_converters.cc',
919             'proxy/mojo_proxy_type_converters.h',
920           ],
921           'dependencies': [
922             'net',
923             'net_interfaces',
924             '../third_party/mojo/mojo_public.gyp:mojo_cpp_bindings',
925           ],
926         },
927       ],
928     }],
929     ['OS != "ios" and OS != "android"', {
930       'targets': [
931         # iOS doesn't have the concept of simple executables, these targets
932         # can't be compiled on the platform.
933         {
934           'target_name': 'crash_cache',
935           'type': 'executable',
936           'dependencies': [
937             '../base/base.gyp:base',
938             'net',
939             'net_test_support',
940           ],
941           'sources': [
942             'tools/crash_cache/crash_cache.cc',
943           ],
944           # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
945           'msvs_disabled_warnings': [4267, ],
946         },
947         {
948           'target_name': 'crl_set_dump',
949           'type': 'executable',
950           'dependencies': [
951             '../base/base.gyp:base',
952             'net',
953           ],
954           'sources': [
955             'tools/crl_set_dump/crl_set_dump.cc',
956           ],
957           # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
958           'msvs_disabled_warnings': [4267, ],
959         },
960         {
961           'target_name': 'dns_fuzz_stub',
962           'type': 'executable',
963           'dependencies': [
964             '../base/base.gyp:base',
965             'net',
966           ],
967           'sources': [
968             'tools/dns_fuzz_stub/dns_fuzz_stub.cc',
969           ],
970           # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
971           'msvs_disabled_warnings': [4267, ],
972         },
973         {
974           'target_name': 'gdig',
975           'type': 'executable',
976           'dependencies': [
977             '../base/base.gyp:base',
978             'net',
979           ],
980           'sources': [
981             'tools/gdig/file_net_log.cc',
982             'tools/gdig/gdig.cc',
983           ],
984         },
985         {
986           'target_name': 'get_server_time',
987           'type': 'executable',
988           'dependencies': [
989             '../base/base.gyp:base',
990             '../base/base.gyp:base_i18n',
991             '../url/url.gyp:url_lib',
992             'net',
993           ],
994           'sources': [
995             'tools/get_server_time/get_server_time.cc',
996           ],
997           # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
998           'msvs_disabled_warnings': [4267, ],
999         },
1000         {
1001           'target_name': 'hpack_example_generator',
1002           'type': 'executable',
1003           'dependencies': [
1004             '../base/base.gyp:base',
1005             'net',
1006           ],
1007           'sources': [
1008             'spdy/fuzzing/hpack_example_generator.cc',
1009           ],
1010           # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1011           'msvs_disabled_warnings': [4267, ],
1012         },
1013         {
1014           'target_name': 'hpack_fuzz_mutator',
1015           'type': 'executable',
1016           'dependencies': [
1017             '../base/base.gyp:base',
1018             'net',
1019           ],
1020           'sources': [
1021             'spdy/fuzzing/hpack_fuzz_mutator.cc',
1022           ],
1023           # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1024           'msvs_disabled_warnings': [4267, ],
1025         },
1026         {
1027           'target_name': 'hpack_fuzz_wrapper',
1028           'type': 'executable',
1029           'dependencies': [
1030             '../base/base.gyp:base',
1031             'net',
1032           ],
1033           'sources': [
1034             'spdy/fuzzing/hpack_fuzz_wrapper.cc',
1035           ],
1036           # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1037           'msvs_disabled_warnings': [4267, ],
1038         },
1039         {
1040           'target_name': 'net_watcher',
1041           'type': 'executable',
1042           'dependencies': [
1043             '../base/base.gyp:base',
1044             'net',
1045             'net_with_v8',
1046           ],
1047           'conditions': [
1048             [ 'use_glib == 1', {
1049                 'dependencies': [
1050                   '../build/linux/system.gyp:gconf',
1051                   '../build/linux/system.gyp:gio',
1052                 ],
1053               },
1054             ],
1055           ],
1056           'sources': [
1057             'tools/net_watcher/net_watcher.cc',
1058           ],
1059         },
1060         {
1061           'target_name': 'run_testserver',
1062           'type': 'executable',
1063           'dependencies': [
1064             '../base/base.gyp:base',
1065             '../base/base.gyp:test_support_base',
1066             '../testing/gtest.gyp:gtest',
1067             'net_test_support',
1068           ],
1069           'sources': [
1070             'tools/testserver/run_testserver.cc',
1071           ],
1072         },
1073         {
1074           'target_name': 'quic_client',
1075           'type': 'executable',
1076           'dependencies': [
1077             '../base/base.gyp:base',
1078             '../url/url.gyp:url_lib',
1079             'net',
1080             'simple_quic_tools',
1081           ],
1082           'sources': [
1083             'tools/quic/quic_simple_client_bin.cc',
1084           ],
1085         },
1086         {
1087           'target_name': 'quic_server',
1088           'type': 'executable',
1089           'dependencies': [
1090             '../base/base.gyp:base',
1091             'net',
1092             'simple_quic_tools',
1093           ],
1094           'sources': [
1095             'tools/quic/quic_simple_server_bin.cc',
1096           ],
1097         },
1098         {
1099           'target_name': 'stress_cache',
1100           'type': 'executable',
1101           'dependencies': [
1102             '../base/base.gyp:base',
1103             'net',
1104             'net_test_support',
1105           ],
1106           'sources': [
1107             'tools/stress_cache/stress_cache.cc',
1108           ],
1109           # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1110           'msvs_disabled_warnings': [4267, ],
1111         },
1112         {
1113           'target_name': 'tld_cleanup',
1114           'type': 'executable',
1115           'dependencies': [
1116             '../base/base.gyp:base',
1117             '../base/base.gyp:base_i18n',
1118             '../net/tools/tld_cleanup/tld_cleanup.gyp:tld_cleanup_util',
1119           ],
1120           'sources': [
1121             'tools/tld_cleanup/tld_cleanup.cc',
1122           ],
1123           # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
1124           'msvs_disabled_warnings': [4267, ],
1125         },
1126       ],
1127     }],
1128     ['os_posix == 1 and OS != "mac" and OS != "ios" and OS != "android"', {
1129       'targets': [
1130         {
1131           'target_name': 'epoll_server',
1132           'type': 'static_library',
1133           'dependencies': [
1134             '../base/base.gyp:base',
1135             'net',
1136           ],
1137           'sources': [
1138             'tools/epoll_server/epoll_server.cc',
1139             'tools/epoll_server/epoll_server.h',
1140           ],
1141         },
1142         {
1143           'target_name': 'flip_in_mem_edsm_server_base',
1144           'type': 'static_library',
1145           'cflags': [
1146             '-Wno-deprecated',
1147           ],
1148           'dependencies': [
1149             '../base/base.gyp:base',
1150             '../third_party/boringssl/boringssl.gyp:boringssl',
1151             'balsa',
1152             'epoll_server',
1153             'net',
1154           ],
1155           'sources': [
1156             'tools/dump_cache/url_to_filename_encoder.cc',
1157             'tools/dump_cache/url_to_filename_encoder.h',
1158             'tools/dump_cache/url_utilities.cc',
1159             'tools/dump_cache/url_utilities.h',
1160             'tools/flip_server/acceptor_thread.cc',
1161             'tools/flip_server/acceptor_thread.h',
1162             'tools/flip_server/constants.h',
1163             'tools/flip_server/create_listener.cc',
1164             'tools/flip_server/create_listener.h',
1165             'tools/flip_server/flip_config.cc',
1166             'tools/flip_server/flip_config.h',
1167             'tools/flip_server/http_interface.cc',
1168             'tools/flip_server/http_interface.h',
1169             'tools/flip_server/loadtime_measurement.h',
1170             'tools/flip_server/mem_cache.cc',
1171             'tools/flip_server/mem_cache.h',
1172             'tools/flip_server/output_ordering.cc',
1173             'tools/flip_server/output_ordering.h',
1174             'tools/flip_server/ring_buffer.cc',
1175             'tools/flip_server/ring_buffer.h',
1176             'tools/flip_server/sm_connection.cc',
1177             'tools/flip_server/sm_connection.h',
1178             'tools/flip_server/sm_interface.h',
1179             'tools/flip_server/spdy_interface.cc',
1180             'tools/flip_server/spdy_interface.h',
1181             'tools/flip_server/spdy_ssl.cc',
1182             'tools/flip_server/spdy_ssl.h',
1183             'tools/flip_server/spdy_util.cc',
1184             'tools/flip_server/spdy_util.h',
1185             'tools/flip_server/streamer_interface.cc',
1186             'tools/flip_server/streamer_interface.h',
1187           ],
1188         },
1189         {
1190           'target_name': 'flip_in_mem_edsm_server_unittests',
1191           'type': 'executable',
1192           'dependencies': [
1193               '../testing/gtest.gyp:gtest',
1194               '../testing/gmock.gyp:gmock',
1195               '../third_party/boringssl/boringssl.gyp:boringssl',
1196               'flip_in_mem_edsm_server_base',
1197               'net',
1198               'net_test_support',
1199           ],
1200           'sources': [
1201             'tools/flip_server/flip_test_utils.cc',
1202             'tools/flip_server/flip_test_utils.h',
1203             'tools/flip_server/http_interface_test.cc',
1204             'tools/flip_server/mem_cache_test.cc',
1205             'tools/flip_server/run_all_tests.cc',
1206             'tools/flip_server/spdy_interface_test.cc',
1207           ],
1208         },
1209         {
1210           'target_name': 'flip_in_mem_edsm_server',
1211           'type': 'executable',
1212           'cflags': [
1213             '-Wno-deprecated',
1214           ],
1215           'dependencies': [
1216             '../base/base.gyp:base',
1217             'flip_in_mem_edsm_server_base',
1218             'net',
1219           ],
1220           'sources': [
1221             'tools/flip_server/flip_in_mem_edsm_server.cc',
1222           ],
1223         },
1224         {
1225           'target_name': 'epoll_quic_tools',
1226           'type': 'static_library',
1227           'dependencies': [
1228             '../base/base.gyp:base',
1229             '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
1230             '../url/url.gyp:url_lib',
1231             'balsa',
1232             'epoll_server',
1233             'net',
1234           ],
1235           'sources': [
1236             'tools/quic/quic_client.cc',
1237             'tools/quic/quic_client.h',
1238             'tools/quic/quic_default_packet_writer.cc',
1239             'tools/quic/quic_default_packet_writer.h',
1240             'tools/quic/quic_epoll_clock.cc',
1241             'tools/quic/quic_epoll_clock.h',
1242             'tools/quic/quic_epoll_connection_helper.cc',
1243             'tools/quic/quic_epoll_connection_helper.h',
1244             'tools/quic/quic_packet_reader.cc',
1245             'tools/quic/quic_packet_reader.h',
1246             'tools/quic/quic_packet_writer_wrapper.cc',
1247             'tools/quic/quic_packet_writer_wrapper.h',
1248             'tools/quic/quic_server.cc',
1249             'tools/quic/quic_server.h',
1250             'tools/quic/quic_socket_utils.cc',
1251             'tools/quic/quic_socket_utils.h',
1252           ],
1253         },
1254         {
1255           'target_name': 'epoll_quic_client',
1256           'type': 'executable',
1257           'dependencies': [
1258             '../base/base.gyp:base',
1259             'net',
1260             'epoll_quic_tools',
1261             'simple_quic_tools',
1262           ],
1263           'sources': [
1264             'tools/quic/quic_client_bin.cc',
1265           ],
1266         },
1267         {
1268           'target_name': 'epoll_quic_server',
1269           'type': 'executable',
1270           'dependencies': [
1271             '../base/base.gyp:base',
1272             'net',
1273             'epoll_quic_tools',
1274             'simple_quic_tools',
1275           ],
1276           'sources': [
1277             'tools/quic/quic_server_bin.cc',
1278           ],
1279         },
1280       ]
1281     }],
1282     ['OS=="android"', {
1283       'targets': [
1284         { # The same target as 'net', but with smaller binary size due to
1285           # exclusion of ICU, FTP, FILE and WebSockets support.
1286           'target_name': 'net_small',
1287           'variables': {
1288             'disable_ftp_support': 1,
1289             'disable_file_support': 1,
1290             'enable_websockets': 0,
1291           },
1292           'dependencies': [
1293             '../url/url.gyp:url_lib_use_icu_alternatives_on_android',
1294           ],
1295           'defines': [
1296             'USE_ICU_ALTERNATIVES_ON_ANDROID=1',
1297             'DISABLE_FILE_SUPPORT=1',
1298             'DISABLE_FTP_SUPPORT=1',
1299           ],
1300           'sources': [
1301             'base/net_string_util_icu_alternatives_android.cc',
1302             'base/net_string_util_icu_alternatives_android.h',
1303           ],
1304           'includes': [ 'net_common.gypi' ],
1305         },
1306         {
1307           'target_name': 'net_jni_headers',
1308           'type': 'none',
1309           'sources': [
1310             'android/java/src/org/chromium/net/AndroidCertVerifyResult.java',
1311             'android/java/src/org/chromium/net/AndroidKeyStore.java',
1312             'android/java/src/org/chromium/net/AndroidNetworkLibrary.java',
1313             'android/java/src/org/chromium/net/AndroidPrivateKey.java',
1314             'android/java/src/org/chromium/net/GURLUtils.java',
1315             'android/java/src/org/chromium/net/NetStringUtil.java',
1316             'android/java/src/org/chromium/net/NetworkChangeNotifier.java',
1317             'android/java/src/org/chromium/net/ProxyChangeListener.java',
1318             'android/java/src/org/chromium/net/X509Util.java',
1319           ],
1320           'variables': {
1321             'jni_gen_package': 'net',
1322           },
1323           'includes': [ '../build/jni_generator.gypi' ],
1324         },
1325         {
1326           'target_name': 'net_test_jni_headers',
1327           'type': 'none',
1328           'sources': [
1329             'android/javatests/src/org/chromium/net/AndroidKeyStoreTestUtil.java',
1330           ],
1331           'variables': {
1332             'jni_gen_package': 'net',
1333           },
1334           'includes': [ '../build/jni_generator.gypi' ],
1335         },
1336         {
1337           'target_name': 'net_java',
1338           'type': 'none',
1339           'variables': {
1340             'java_in_dir': '../net/android/java',
1341           },
1342           'dependencies': [
1343             '../base/base.gyp:base',
1344             'cert_verify_status_android_java',
1345             'certificate_mime_types_java',
1346             'network_change_notifier_types_java',
1347             'net_errors_java',
1348             'private_key_types_java',
1349             'remote_android_keystore_aidl',
1350           ],
1351           'includes': [ '../build/java.gypi' ],
1352         },
1353         {
1354           # Processes the interface files for communication with an Android KeyStore
1355           # running in a separate process.
1356           'target_name': 'remote_android_keystore_aidl',
1357           'type': 'none',
1358           'variables': {
1359             'aidl_interface_file': '../net/android/java/src/org/chromium/net/IRemoteAndroidKeyStoreInterface.aidl',
1360           },
1361           'sources': [
1362             '../net/android/java/src/org/chromium/net/IRemoteAndroidKeyStore.aidl',
1363             '../net/android/java/src/org/chromium/net/IRemoteAndroidKeyStoreCallbacks.aidl',
1364           ],
1365           'includes': [ '../build/java_aidl.gypi' ],
1366         },
1367         {
1368           'target_name': 'net_java_test_support',
1369           'type': 'none',
1370           'variables': {
1371             'java_in_dir': '../net/test/android/javatests',
1372           },
1373           'includes': [ '../build/java.gypi' ],
1374         },
1375         {
1376           'target_name': 'net_javatests',
1377           'type': 'none',
1378           'variables': {
1379             'java_in_dir': '../net/android/javatests',
1380           },
1381           'dependencies': [
1382             '../base/base.gyp:base',
1383             '../base/base.gyp:base_java_test_support',
1384             'net_java',
1385           ],
1386           'includes': [ '../build/java.gypi' ],
1387         },
1388         {
1389           'target_name': 'net_errors_java',
1390           'type': 'none',
1391           'sources': [
1392             'android/java/NetError.template',
1393           ],
1394           'variables': {
1395             'package_name': 'org/chromium/net',
1396             'template_deps': ['base/net_error_list.h'],
1397           },
1398           'includes': [ '../build/android/java_cpp_template.gypi' ],
1399         },
1400         {
1401           'target_name': 'certificate_mime_types_java',
1402           'type': 'none',
1403           'variables': {
1404             'source_file': 'base/mime_util.h',
1405           },
1406           'includes': [ '../build/android/java_cpp_enum.gypi' ],
1407         },
1408         {
1409           'target_name': 'cert_verify_status_android_java',
1410           'type': 'none',
1411           'variables': {
1412             'source_file': 'android/cert_verify_result_android.h',
1413           },
1414           'includes': [ '../build/android/java_cpp_enum.gypi' ],
1415         },
1416         {
1417           'target_name': 'network_change_notifier_types_java',
1418           'type': 'none',
1419           'variables': {
1420             'source_file': 'base/network_change_notifier.h',
1421           },
1422           'includes': [ '../build/android/java_cpp_enum.gypi' ],
1423         },
1424         {
1425           'target_name': 'private_key_types_java',
1426           'type': 'none',
1427           'variables': {
1428             'source_file': 'android/keystore.h',
1429           },
1430           'includes': [ '../build/android/java_cpp_enum.gypi' ],
1431         },
1432         {
1433           'target_name': 'net_unittests_apk',
1434           'type': 'none',
1435           'dependencies': [
1436             'net_java',
1437             'net_javatests',
1438             'net_unittests',
1439           ],
1440           'conditions': [
1441             ['v8_use_external_startup_data==1', {
1442               'dependencies': [
1443                 '../v8/tools/gyp/v8.gyp:v8_external_snapshot',
1444               ],
1445               'copies': [
1446                 {
1447                 'destination': '<(asset_location)',
1448                   'files': [
1449                     '<(PRODUCT_DIR)/natives_blob.bin',
1450                     '<(PRODUCT_DIR)/snapshot_blob.bin',
1451                   ],
1452                 },
1453               ],
1454             }],
1455           ],
1456           'variables': {
1457             'test_suite_name': 'net_unittests',
1458             'conditions': [
1459               ['v8_use_external_startup_data==1', {
1460                 'asset_location': '<(PRODUCT_DIR)/net_unittests_apk/assets',
1461                 'additional_input_paths': [
1462                   '<(PRODUCT_DIR)/net_unittests_apk/assets/natives_blob.bin',
1463                   '<(PRODUCT_DIR)/net_unittests_apk/assets/snapshot_blob.bin',
1464                 ],
1465                 'inputs': [
1466                   '<(PRODUCT_DIR)/natives_blob.bin',
1467                   '<(PRODUCT_DIR)/snapshot_blob.bin',
1468                 ],
1469               }],
1470             ],
1471           },
1472           'includes': [ '../build/apk_test.gypi' ],
1473         },
1474       ],
1475     }],
1476     ['OS == "android" or OS == "linux"', {
1477       'targets': [
1478         {
1479           'target_name': 'disk_cache_memory_test',
1480           'type': 'executable',
1481           'dependencies': [
1482             '../base/base.gyp:base',
1483             'net',
1484           ],
1485           'sources': [
1486             'tools/disk_cache_memory_test/disk_cache_memory_test.cc',
1487           ],
1488         },
1489       ],
1490     }],
1491     ['test_isolation_mode != "noop"', {
1492       'targets': [
1493         {
1494           'target_name': 'net_unittests_run',
1495           'type': 'none',
1496           'dependencies': [
1497             'net_unittests',
1498           ],
1499           'includes': [
1500             '../build/isolate.gypi',
1501           ],
1502           'sources': [
1503             'net_unittests.isolate',
1504           ],
1505         },
1506       ],
1507     }],
1508   ],