summaryrefslogtreecommitdiffstats
path: root/ios/chrome/browser/BUILD.gn
blob: ddf89111cc3e8f2c660512b09a24a0c440945138 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
# Copyright 2015 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//build/config/features.gni")
import("//ios/web/js_compile.gni")

declare_args() {
  google_test_gaia_client_id = ""
  google_test_gaia_client_secret = ""
  google_staging_api_url = ""
  google_staging_lso_url = ""
  google_test_api_url = ""
  google_test_lso_url = ""
  google_test_oauth_client_id = ""
  google_test_oauth_client_secret = ""
  google_test_oauth_url = ""
  google_test_sync_url = ""
}

source_set("browser") {
  sources = [
    "app_startup_parameters.h",
    "app_startup_parameters.mm",
    "application_context.cc",
    "application_context.h",
    "application_context_impl.cc",
    "application_context_impl.h",
    "arch_util.cc",
    "arch_util.h",
    "autocomplete/autocomplete_classifier_factory.cc",
    "autocomplete/autocomplete_classifier_factory.h",
    "autocomplete/autocomplete_provider_client_impl.cc",
    "autocomplete/autocomplete_provider_client_impl.h",
    "autocomplete/autocomplete_scheme_classifier_impl.h",
    "autocomplete/autocomplete_scheme_classifier_impl.mm",
    "autocomplete/in_memory_url_index_factory.cc",
    "autocomplete/in_memory_url_index_factory.h",
    "autocomplete/shortcuts_backend_factory.h",
    "autocomplete/shortcuts_backend_factory.mm",
    "autofill/form_input_accessory_view.h",
    "autofill/form_input_accessory_view.mm",
    "autofill/form_input_accessory_view_controller.h",
    "autofill/form_input_accessory_view_controller.mm",
    "autofill/form_input_accessory_view_delegate.h",
    "autofill/form_suggestion_controller.h",
    "autofill/form_suggestion_controller.mm",
    "autofill/form_suggestion_label.h",
    "autofill/form_suggestion_label.mm",
    "autofill/form_suggestion_provider.h",
    "autofill/form_suggestion_view.h",
    "autofill/form_suggestion_view.mm",
    "autofill/form_suggestion_view_client.h",
    "autofill/personal_data_manager_factory.cc",
    "autofill/personal_data_manager_factory.h",
    "bookmarks/bookmark_client_impl.cc",
    "bookmarks/bookmark_client_impl.h",
    "bookmarks/bookmark_model_factory.cc",
    "bookmarks/bookmark_model_factory.h",
    "bookmarks/startup_task_runner_service_factory.cc",
    "bookmarks/startup_task_runner_service_factory.h",
    "browser_state/browser_state_info_cache.cc",
    "browser_state/browser_state_info_cache.h",
    "browser_state/browser_state_info_cache_observer.h",
    "browser_state/browser_state_keyed_service_factories.h",
    "browser_state/browser_state_keyed_service_factories.mm",
    "browser_state/browser_state_otr_helper.cc",
    "browser_state/browser_state_otr_helper.h",
    "browser_state/chrome_browser_state.h",
    "browser_state/chrome_browser_state.mm",
    "browser_state/chrome_browser_state_impl.cc",
    "browser_state/chrome_browser_state_impl.h",
    "browser_state/chrome_browser_state_impl_io_data.h",
    "browser_state/chrome_browser_state_impl_io_data.mm",
    "browser_state/chrome_browser_state_io_data.cc",
    "browser_state/chrome_browser_state_io_data.h",
    "browser_state/chrome_browser_state_manager.h",
    "browser_state/chrome_browser_state_manager_impl.cc",
    "browser_state/chrome_browser_state_manager_impl.h",
    "browser_state/chrome_browser_state_removal_controller.h",
    "browser_state/chrome_browser_state_removal_controller.mm",
    "browser_state/off_the_record_chrome_browser_state_impl.cc",
    "browser_state/off_the_record_chrome_browser_state_impl.h",
    "browser_state/off_the_record_chrome_browser_state_io_data.h",
    "browser_state/off_the_record_chrome_browser_state_io_data.mm",
    "browser_state_metrics/browser_state_metrics.cc",
    "browser_state_metrics/browser_state_metrics.h",
    "browsing_data/browsing_data_change_listening.h",
    "browsing_data/browsing_data_remover_helper.cc",
    "browsing_data/browsing_data_remover_helper.h",
    "browsing_data/ios_chrome_browsing_data_remover.h",
    "browsing_data/ios_chrome_browsing_data_remover.mm",
    "chrome_constants.cc",
    "chrome_constants.h",
    "chrome_paths.h",
    "chrome_paths.mm",
    "chrome_paths_internal.h",
    "chrome_switches.cc",
    "chrome_switches.h",
    "chrome_url_constants.cc",
    "chrome_url_constants.h",
    "chrome_url_util.h",
    "chrome_url_util.mm",
    "component_updater/ios_component_updater_configurator.cc",
    "component_updater/ios_component_updater_configurator.h",
    "content_settings/cookie_settings_factory.cc",
    "content_settings/cookie_settings_factory.h",
    "content_settings/host_content_settings_map_factory.cc",
    "content_settings/host_content_settings_map_factory.h",
    "crash_loop_detection_util.h",
    "crash_loop_detection_util.mm",
    "crash_report/breakpad_helper.h",
    "crash_report/breakpad_helper.mm",
    "crash_report/crash_keys.cc",
    "crash_report/crash_keys.h",
    "crash_report/crash_report_background_uploader.h",
    "crash_report/crash_report_background_uploader.mm",
    "crash_report/crash_report_multi_parameter.h",
    "crash_report/crash_report_multi_parameter.mm",
    "crash_report/crash_report_user_application_state.h",
    "crash_report/crash_report_user_application_state.mm",
    "crash_report/crash_upload_list.cc",
    "crash_report/crash_upload_list.h",
    "dom_distiller/distiller_viewer.cc",
    "dom_distiller/distiller_viewer.h",
    "dom_distiller/dom_distiller_service_factory.cc",
    "dom_distiller/dom_distiller_service_factory.h",
    "experimental_flags.h",
    "experimental_flags.mm",
    "favicon/favicon_client_impl.h",
    "favicon/favicon_client_impl.mm",
    "favicon/favicon_loader.h",
    "favicon/favicon_loader.mm",
    "favicon/favicon_service_factory.cc",
    "favicon/favicon_service_factory.h",
    "favicon/ios_chrome_favicon_loader_factory.h",
    "favicon/ios_chrome_favicon_loader_factory.mm",
    "favicon/ios_chrome_large_icon_cache_factory.cc",
    "favicon/ios_chrome_large_icon_cache_factory.h",
    "favicon/ios_chrome_large_icon_service_factory.cc",
    "favicon/ios_chrome_large_icon_service_factory.h",
    "favicon/large_icon_cache.cc",
    "favicon/large_icon_cache.h",
    "file_metadata_util.h",
    "file_metadata_util.mm",
    "find_in_page/find_in_page_controller.h",
    "find_in_page/find_in_page_controller.mm",
    "find_in_page/find_in_page_model.h",
    "find_in_page/find_in_page_model.mm",
    "find_in_page/js_findinpage_manager.h",
    "find_in_page/js_findinpage_manager.mm",
    "first_run/first_run.h",
    "first_run/first_run.mm",
    "first_run/first_run_configuration.h",
    "first_run/first_run_configuration.mm",
    "first_run/first_run_metrics.h",
    "geolocation/CLLocation+OmniboxGeolocation.h",
    "geolocation/CLLocation+OmniboxGeolocation.mm",
    "geolocation/CLLocation+XGeoHeader.h",
    "geolocation/CLLocation+XGeoHeader.mm",
    "geolocation/location_manager.h",
    "geolocation/location_manager.mm",
    "geolocation/omnibox_geolocation_authorization_alert.h",
    "geolocation/omnibox_geolocation_authorization_alert.mm",
    "geolocation/omnibox_geolocation_config.h",
    "geolocation/omnibox_geolocation_config.mm",
    "geolocation/omnibox_geolocation_local_state.h",
    "geolocation/omnibox_geolocation_local_state.mm",
    "google/google_brand.h",
    "google/google_brand.mm",
    "google/google_url_tracker_client_impl.cc",
    "google/google_url_tracker_client_impl.h",
    "google/google_url_tracker_factory.cc",
    "google/google_url_tracker_factory.h",
    "history/history_backend_client_impl.cc",
    "history/history_backend_client_impl.h",
    "history/history_client_impl.cc",
    "history/history_client_impl.h",
    "history/history_service_factory.cc",
    "history/history_service_factory.h",
    "history/history_utils.cc",
    "history/history_utils.h",
    "history/top_sites_factory.cc",
    "history/top_sites_factory.h",
    "history/web_history_service_factory.cc",
    "history/web_history_service_factory.h",
    "infobars/confirm_infobar_controller.h",
    "infobars/confirm_infobar_controller.mm",
    "infobars/infobar.h",
    "infobars/infobar.mm",
    "infobars/infobar_container_ios.h",
    "infobars/infobar_container_ios.mm",
    "infobars/infobar_container_view.h",
    "infobars/infobar_container_view.mm",
    "infobars/infobar_controller.h",
    "infobars/infobar_controller.mm",
    "infobars/infobar_manager_impl.h",
    "infobars/infobar_manager_impl.mm",
    "infobars/infobar_utils.h",
    "infobars/infobar_utils.mm",
    "install_time_util.h",
    "install_time_util.mm",
    "installation_notifier.h",
    "installation_notifier.mm",
    "interstitials/ios_chrome_controller_client.cc",
    "interstitials/ios_chrome_controller_client.h",
    "interstitials/ios_chrome_metrics_helper.h",
    "interstitials/ios_chrome_metrics_helper.mm",
    "interstitials/ios_security_interstitial_page.h",
    "interstitials/ios_security_interstitial_page.mm",
    "invalidation/ios_chrome_profile_invalidation_provider_factory.h",
    "invalidation/ios_chrome_profile_invalidation_provider_factory.mm",
    "ios_chrome_field_trials.cc",
    "ios_chrome_field_trials.h",
    "ios_chrome_main_parts.h",
    "ios_chrome_main_parts.mm",
    "memory/memory_debugger.h",
    "memory/memory_debugger.mm",
    "memory/memory_debugger_manager.h",
    "memory/memory_debugger_manager.mm",
    "memory/memory_metrics.cc",
    "memory/memory_metrics.h",
    "metrics/field_trial_synchronizer.cc",
    "metrics/field_trial_synchronizer.h",
    "metrics/ios_chrome_metrics_service_accessor.cc",
    "metrics/ios_chrome_metrics_service_accessor.h",
    "metrics/ios_chrome_metrics_service_client.cc",
    "metrics/ios_chrome_metrics_service_client.h",
    "metrics/ios_chrome_metrics_services_manager_client.h",
    "metrics/ios_chrome_metrics_services_manager_client.mm",
    "metrics/ios_chrome_stability_metrics_provider.cc",
    "metrics/ios_chrome_stability_metrics_provider.h",
    "metrics/mobile_session_shutdown_metrics_provider.h",
    "metrics/mobile_session_shutdown_metrics_provider.mm",
    "metrics/previous_session_info.h",
    "metrics/previous_session_info.mm",
    "net/chrome_cookie_store_ios_client.h",
    "net/chrome_cookie_store_ios_client.mm",
    "net/connection_type_observer_bridge.h",
    "net/connection_type_observer_bridge.mm",
    "net/cookie_util.h",
    "net/cookie_util.mm",
    "net/http_server_properties_manager_factory.cc",
    "net/http_server_properties_manager_factory.h",
    "net/image_fetcher.h",
    "net/image_fetcher.mm",
    "net/ios_chrome_http_user_agent_settings.h",
    "net/ios_chrome_http_user_agent_settings.mm",
    "net/ios_chrome_network_delegate.cc",
    "net/ios_chrome_network_delegate.h",
    "net/ios_chrome_url_request_context_getter.cc",
    "net/ios_chrome_url_request_context_getter.h",
    "net/metrics_network_client.h",
    "net/metrics_network_client.mm",
    "net/metrics_network_client_manager.h",
    "net/metrics_network_client_manager.mm",
    "net/proxy_service_factory.cc",
    "net/proxy_service_factory.h",
    "net/retryable_url_fetcher.h",
    "net/retryable_url_fetcher.mm",
    "ntp_snippets/ios_chrome_ntp_snippets_service_factory.cc",
    "open_from_clipboard/create_clipboard_recent_content.h",
    "open_from_clipboard/create_clipboard_recent_content.mm",
    "passwords/ios_chrome_password_manager_client.h",
    "passwords/ios_chrome_password_manager_client.mm",
    "passwords/ios_chrome_password_manager_driver.h",
    "passwords/ios_chrome_password_manager_driver.mm",
    "passwords/ios_chrome_password_manager_setting_migrator_service_factory.cc",
    "passwords/ios_chrome_password_manager_setting_migrator_service_factory.h",
    "passwords/ios_chrome_password_store_factory.cc",
    "passwords/ios_chrome_password_store_factory.h",
    "passwords/ios_chrome_save_password_infobar_delegate.h",
    "passwords/ios_chrome_save_password_infobar_delegate.mm",
    "passwords/password_controller.h",
    "passwords/password_controller.mm",
    "passwords/password_generation_agent.h",
    "passwords/password_generation_agent.mm",
    "passwords/password_generation_prompt_delegate.h",
    "passwords/password_generation_utils.h",
    "passwords/password_generation_utils.mm",
    "passwords/passwords_ui_delegate.h",
    "pref_names.cc",
    "pref_names.h",
    "prefs/browser_prefs.h",
    "prefs/browser_prefs.mm",
    "prefs/ios_chrome_pref_model_associator_client.cc",
    "prefs/ios_chrome_pref_model_associator_client.h",
    "prefs/ios_chrome_pref_service_factory.cc",
    "prefs/ios_chrome_pref_service_factory.h",
    "prefs/pref_observer_bridge.h",
    "prefs/pref_observer_bridge.mm",
    "procedural_block_types.h",
    "reading_list/reading_list_entry.cc",
    "reading_list/reading_list_entry.h",
    "reading_list/reading_list_model.cc",
    "reading_list/reading_list_model.h",
    "reading_list/reading_list_model_factory.cc",
    "reading_list/reading_list_model_factory.h",
    "reading_list/reading_list_model_memory.cc",
    "reading_list/reading_list_model_memory.h",
    "reading_list/reading_list_model_observer.h",
    "search/search_util.h",
    "search/search_util.mm",
    "search_engines/search_engines_util.cc",
    "search_engines/search_engines_util.h",
    "search_engines/template_url_service_client_impl.cc",
    "search_engines/template_url_service_client_impl.h",
    "search_engines/template_url_service_factory.cc",
    "search_engines/template_url_service_factory.h",
    "search_engines/ui_thread_search_terms_data.cc",
    "search_engines/ui_thread_search_terms_data.h",
    "services/gcm/ios_chrome_gcm_profile_service_factory.cc",
    "services/gcm/ios_chrome_gcm_profile_service_factory.h",
    "sessions/ios_chrome_session_tab_helper.h",
    "sessions/ios_chrome_session_tab_helper.mm",
    "sessions/ios_chrome_tab_restore_service_client.h",
    "sessions/ios_chrome_tab_restore_service_client.mm",
    "sessions/ios_chrome_tab_restore_service_factory.cc",
    "sessions/ios_chrome_tab_restore_service_factory.h",
    "signin/about_signin_internals_factory.cc",
    "signin/about_signin_internals_factory.h",
    "signin/account_consistency_service_factory.h",
    "signin/account_consistency_service_factory.mm",
    "signin/account_fetcher_service_factory.cc",
    "signin/account_fetcher_service_factory.h",
    "signin/account_reconcilor_factory.cc",
    "signin/account_reconcilor_factory.h",
    "signin/account_tracker_service_factory.cc",
    "signin/account_tracker_service_factory.h",
    "signin/browser_state_data_remover.h",
    "signin/browser_state_data_remover.mm",
    "signin/chrome_identity_service_observer_bridge.h",
    "signin/chrome_identity_service_observer_bridge.mm",
    "signin/constants.h",
    "signin/constants.mm",
    "signin/gaia_auth_fetcher_ios.h",
    "signin/gaia_auth_fetcher_ios.mm",
    "signin/gaia_auth_fetcher_ios_private.h",
    "signin/gaia_cookie_manager_service_factory.cc",
    "signin/gaia_cookie_manager_service_factory.h",
    "signin/ios_chrome_signin_status_metrics_provider_delegate.cc",
    "signin/ios_chrome_signin_status_metrics_provider_delegate.h",
    "signin/oauth2_token_service_factory.h",
    "signin/oauth2_token_service_factory.mm",
    "signin/signin_client_factory.cc",
    "signin/signin_client_factory.h",
    "signin/signin_client_impl.h",
    "signin/signin_client_impl.mm",
    "signin/signin_error_controller_factory.cc",
    "signin/signin_error_controller_factory.h",
    "signin/signin_manager_factory.cc",
    "signin/signin_manager_factory.h",
    "signin/signin_manager_factory_observer.h",
    "signin/signin_util.h",
    "signin/signin_util.mm",
    "snapshots/lru_cache.h",
    "snapshots/lru_cache.mm",
    "snapshots/snapshot_cache.h",
    "snapshots/snapshot_cache.mm",
    "snapshots/snapshot_manager.h",
    "snapshots/snapshot_manager.mm",
    "snapshots/snapshot_overlay.h",
    "snapshots/snapshot_overlay.mm",
    "snapshots/snapshots_util.h",
    "snapshots/snapshots_util.mm",
    "ssl/ios_chrome_security_state_model_client.h",
    "ssl/ios_chrome_security_state_model_client.mm",
    "ssl/ios_ssl_blocking_page.h",
    "ssl/ios_ssl_blocking_page.mm",
    "suggestions/image_fetcher_impl.h",
    "suggestions/image_fetcher_impl.mm",
    "suggestions/suggestions_service_factory.h",
    "suggestions/suggestions_service_factory.mm",
    "sync/glue/sync_start_util.cc",
    "sync/glue/sync_start_util.h",
    "sync/ios_chrome_profile_sync_service_factory.cc",
    "sync/ios_chrome_profile_sync_service_factory.h",
    "sync/ios_chrome_sync_client.h",
    "sync/ios_chrome_sync_client.mm",
    "sync/ios_chrome_synced_tab_delegate.h",
    "sync/ios_chrome_synced_tab_delegate.mm",
    "sync/sessions/ios_chrome_local_session_event_router.h",
    "sync/sessions/ios_chrome_local_session_event_router.mm",
    "sync/sync_observer_bridge.h",
    "sync/sync_observer_bridge.mm",
    "sync/sync_setup_service.cc",
    "sync/sync_setup_service.h",
    "sync/sync_setup_service_factory.cc",
    "sync/sync_setup_service_factory.h",
    "tab_parenting_global_observer.cc",
    "tab_parenting_global_observer.h",
    "translate/after_translate_infobar_controller.h",
    "translate/after_translate_infobar_controller.mm",
    "translate/before_translate_infobar_controller.h",
    "translate/before_translate_infobar_controller.mm",
    "translate/chrome_ios_translate_client.h",
    "translate/chrome_ios_translate_client.mm",
    "translate/never_translate_infobar_controller.h",
    "translate/never_translate_infobar_controller.mm",
    "translate/translate_accept_languages_factory.cc",
    "translate/translate_accept_languages_factory.h",
    "translate/translate_infobar_tags.h",
    "translate/translate_message_infobar_controller.h",
    "translate/translate_message_infobar_controller.mm",
    "translate/translate_service_ios.cc",
    "translate/translate_service_ios.h",
    "ui/UIView+SizeClassSupport.h",
    "ui/UIView+SizeClassSupport.mm",
    "ui/animation_util.h",
    "ui/animation_util.mm",
    "ui/autofill/autofill_client_ios.h",
    "ui/autofill/autofill_client_ios.mm",
    "ui/autofill/autofill_save_card_infobar.mm",
    "ui/background_generator.h",
    "ui/background_generator.mm",
    "ui/browser_otr_state.h",
    "ui/browser_otr_state.mm",
    "ui/commands/UIKit+ChromeExecuteCommand.h",
    "ui/commands/UIKit+ChromeExecuteCommand.mm",
    "ui/commands/clear_browsing_data_command.h",
    "ui/commands/clear_browsing_data_command.mm",
    "ui/commands/generic_chrome_command.h",
    "ui/commands/generic_chrome_command.mm",
    "ui/commands/ios_command_ids.h",
    "ui/commands/open_url_command.h",
    "ui/commands/open_url_command.mm",
    "ui/commands/reading_list_add_command.h",
    "ui/commands/reading_list_add_command.mm",
    "ui/commands/set_up_for_testing_command.h",
    "ui/commands/set_up_for_testing_command.mm",
    "ui/commands/show_mail_composer_command.h",
    "ui/commands/show_mail_composer_command.mm",
    "ui/commands/show_signin_command.h",
    "ui/commands/show_signin_command.mm",
    "ui/file_locations.h",
    "ui/file_locations.mm",
    "ui/image_util.h",
    "ui/image_util.mm",
    "ui/keyboard/UIKeyCommand+Chrome.h",
    "ui/keyboard/UIKeyCommand+Chrome.mm",
    "ui/keyboard/hardware_keyboard_watcher.h",
    "ui/keyboard/hardware_keyboard_watcher.mm",
    "ui/native_content_controller.h",
    "ui/native_content_controller.mm",
    "ui/omnibox/web_omnibox_edit_controller.cc",
    "ui/omnibox/web_omnibox_edit_controller.h",
    "ui/orientation_limiting_navigation_controller.h",
    "ui/orientation_limiting_navigation_controller.mm",
    "ui/prerender_final_status.h",
    "ui/reversed_animation.h",
    "ui/reversed_animation.mm",
    "ui/rtl_geometry.h",
    "ui/rtl_geometry.mm",
    "ui/show_mail_composer_util.h",
    "ui/show_mail_composer_util.mm",
    "ui/show_privacy_settings_util.h",
    "ui/show_privacy_settings_util.mm",
    "ui/side_swipe_gesture_recognizer.h",
    "ui/side_swipe_gesture_recognizer.mm",
    "ui/size_class_support_util.h",
    "ui/size_class_support_util.mm",
    "ui/ui_util.h",
    "ui/ui_util.mm",
    "ui/uikit_ui_util.h",
    "ui/uikit_ui_util.mm",
    "ui/url_loader.h",
    "ui/webui/about_ui.cc",
    "ui/webui/about_ui.h",
    "ui/webui/crashes_ui.cc",
    "ui/webui/crashes_ui.h",
    "ui/webui/flags_ui.cc",
    "ui/webui/flags_ui.h",
    "ui/webui/history/browsing_history_handler.cc",
    "ui/webui/history/browsing_history_handler.h",
    "ui/webui/history/favicon_source.cc",
    "ui/webui/history/favicon_source.h",
    "ui/webui/history/history_ui.cc",
    "ui/webui/history/history_ui.h",
    "ui/webui/history/metrics_handler.cc",
    "ui/webui/history/metrics_handler.h",
    "ui/webui/net_export/net_export_ui.cc",
    "ui/webui/net_export/net_export_ui.h",
    "ui/webui/sync_internals/sync_internals_message_handler.cc",
    "ui/webui/sync_internals/sync_internals_message_handler.h",
    "ui/webui/sync_internals/sync_internals_ui.cc",
    "ui/webui/sync_internals/sync_internals_ui.h",
    "ui/webui/version_handler.cc",
    "ui/webui/version_handler.h",
    "ui/webui/version_ui.h",
    "ui/webui/version_ui.mm",
    "undo/bookmark_undo_service_factory.cc",
    "undo/bookmark_undo_service_factory.h",
    "updatable_config/updatable_array.h",
    "updatable_config/updatable_array.mm",
    "updatable_config/updatable_config_base.h",
    "updatable_config/updatable_config_base.mm",
    "updatable_config/updatable_dictionary.h",
    "updatable_config/updatable_dictionary.mm",
    "update_client/ios_chrome_update_query_params_delegate.cc",
    "update_client/ios_chrome_update_query_params_delegate.h",
    "variations/ios_chrome_variations_service_client.cc",
    "variations/ios_chrome_variations_service_client.h",
    "web/dom_altering_lock.h",
    "web/dom_altering_lock.mm",
    "web/web_view_type_util.h",
    "web/web_view_type_util.mm",
    "web_data_service_factory.cc",
    "web_data_service_factory.h",
    "web_resource/web_resource_util.cc",
    "web_resource/web_resource_util.h",
    "xcallback_parameters.h",
    "xcallback_parameters.mm",
  ]

  deps = [
    ":about_flags",
    ":injected_js",
    "//base",
    "//breakpad:client",
    "//components/about_handler",
    "//components/autofill/core/browser",
    "//components/autofill/core/common",
    "//components/autofill/ios/browser",
    "//components/bookmarks/browser",
    "//components/browser_sync/browser",
    "//components/browser_sync/common",
    "//components/certificate_reporting",
    "//components/component_updater",
    "//components/content_settings/core/browser",
    "//components/cookie_config",
    "//components/crash/core/browser",
    "//components/crash/core/common",
    "//components/dom_distiller/core",
    "//components/dom_distiller/ios",
    "//components/favicon/core",
    "//components/favicon_base",
    "//components/gcm_driver",
    "//components/google/core/browser",
    "//components/history/core/browser",
    "//components/history/ios/browser",
    "//components/infobars/core",
    "//components/invalidation/impl",
    "//components/invalidation/public",
    "//components/keyed_service/core",
    "//components/keyed_service/ios",
    "//components/language_usage_metrics",
    "//components/leveldb_proto",
    "//components/metrics",
    "//components/metrics:net",
    "//components/metrics:profiler",
    "//components/metrics:ui",
    "//components/metrics_services_manager",
    "//components/net_log",
    "//components/network_time",
    "//components/ntp_snippets",
    "//components/omnibox/browser",
    "//components/open_from_clipboard",
    "//components/password_manager/core/browser",
    "//components/password_manager/sync/browser",
    "//components/policy:policy_component_common",
    "//components/pref_registry",
    "//components/prefs",
    "//components/profile_metrics",
    "//components/proxy_config",
    "//components/rappor",
    "//components/resources",
    "//components/safe_browsing_db",
    "//components/search",
    "//components/search_engines",
    "//components/security_interstitials/core",
    "//components/security_state",
    "//components/sessions",
    "//components/signin/core/browser",
    "//components/signin/core/common",
    "//components/signin/ios/browser",
    "//components/strings",
    "//components/suggestions",
    "//components/sync_driver",
    "//components/sync_sessions",
    "//components/syncable_prefs",
    "//components/translate/core/browser",
    "//components/translate/ios/browser",
    "//components/undo",
    "//components/update_client",
    "//components/upload_list",
    "//components/url_formatter",
    "//components/user_prefs",
    "//components/variations",
    "//components/variations/service",
    "//components/version_info",
    "//components/version_ui",
    "//components/web_resource",
    "//components/webdata_services",
    "//components/webp_transcode",
    "//google_apis",
    "//ios/chrome/browser/variations:ios_chrome_ui_string_overrider_factory",
    "//ios/chrome/common",
    "//ios/public/provider/chrome/browser",
    "//ios/web",
    "//net",
    "//net:extras",
    "//skia",
    "//sync",
    "//third_party/google_toolbox_for_mac",
    "//ui/base",
    "//ui/gfx",
    "//url",

    # TODO(crbug.com/459705): add support for resource packing and change the
    # dependency to be on the packed resources instead of the unpacked ones.
    "//ios/chrome/app/resources",
    "//ios/chrome/app/strings",
    "//ios/chrome/app/theme",
  ]

  libs = [
    "Accelerate.framework",
    "CoreGraphics.framework",
    "CoreLocation.framework",
    "Foundation.framework",
    "QuartzCore.framework",
    "UIKit.framework",
  ]

  if (enable_rlz) {
    deps += [
      ":rlz",
      "//components/rlz",
    ]
  }

  if (enable_configuration_policy) {
    deps += [
      "//components/policy/core/browser",
      "//components/policy/core/common",
    ]
  }
}

# This is a separate target so that the 'defines' does not leak to the
# other files (which would increase the compilation time when changing
# the value).
source_set("about_flags") {
  visibility = [ ":browser" ]

  sources = [
    "about_flags.h",
    "about_flags.mm",
  ]

  deps = [
    "//base",
    "//components/autofill/core/common",
    "//components/dom_distiller/core",
    "//components/flags_ui",
    "//components/strings",
    "//google_apis",
    "//ios/chrome/app/strings",
    "//ios/web",
  ]

  defines = [
    "GOOGLE_STAGING_API_URL=\"$google_staging_api_url\"",
    "GOOGLE_STAGING_LSO_URL=\"$google_staging_lso_url\"",
    "GOOGLE_TEST_API_URL=\"$google_test_api_url\"",
    "GOOGLE_TEST_LSO_URL=\"$google_test_lso_url\"",
    "GOOGLE_TEST_OAUTH_CLIENT_ID=\"$google_test_oauth_client_id\"",
    "GOOGLE_TEST_OAUTH_CLIENT_SECRET=\"$google_test_oauth_client_secret\"",
    "GOOGLE_TEST_OAUTH_URL=\"$google_test_oauth_url\"",
    "GOOGLE_TEST_SYNC_URL=\"$google_test_sync_url\"",
  ]
}

# TODO(crbug.com/487804): use js_compile_checked instead once the errors have
# been fixed.
js_compile_unchecked("injected_js") {
  visibility = [ ":browser" ]
  sources = [
    "find_in_page/resources/find_in_page.js",
  ]
}

if (enable_rlz_support) {
  source_set("rlz") {
    sources = [
      "rlz/rlz_tracker_delegate_impl.cc",
      "rlz/rlz_tracker_delegate_impl.h",
    ]

    deps = [
      "//components/google/core/browser",
      "//components/omnibox/browser",
      "//components/rlz",
      "//components/search_engines",
      "//rlz:rlz_lib",
    ]
  }
}

source_set("test_support") {
  testonly = true
  sources = [
    "browser_state/test_chrome_browser_state.h",
    "browser_state/test_chrome_browser_state.mm",
    "browser_state/test_chrome_browser_state_isolated_context.h",
    "browser_state/test_chrome_browser_state_isolated_context.mm",
    "browser_state/test_chrome_browser_state_manager.c",
    "browser_state/test_chrome_browser_state_manager.h",
    "geolocation/location_manager+Testing.h",
    "geolocation/test_location_manager.h",
    "geolocation/test_location_manager.mm",
    "net/mock_image_fetcher.h",
    "net/mock_image_fetcher.mm",
    "signin/fake_oauth2_token_service_builder.h",
    "signin/fake_oauth2_token_service_builder.mm",
    "signin/fake_signin_manager_builder.cc",
    "signin/fake_signin_manager_builder.h",
    "sync/fake_sync_service_factory.cc",
    "sync/fake_sync_service_factory.h",
    "sync/ios_chrome_profile_sync_test_util.cc",
    "sync/ios_chrome_profile_sync_test_util.h",
    "sync/sync_setup_service_mock.cc",
    "sync/sync_setup_service_mock.h",
  ]

  deps = [
    ":browser",
    "//base",
    "//components/browser_sync/browser",
    "//components/keyed_service/core",
    "//components/keyed_service/ios",
    "//components/signin/core/browser",
    "//components/signin/ios/browser",
    "//components/sync_driver",
    "//components/sync_driver:test_support",
    "//ios/chrome/browser",
    "//ios/chrome/common",
    "//ios/chrome/test",
    "//ios/public/provider/chrome/browser",
    "//ios/public/provider/chrome/browser:test_support",
    "//ios/web",
    "//sync",
    "//testing/gmock",
    "//testing/gtest",
    "//ui/base",
    "//url",
  ]
}