Upstreaming browser/ui/uikit_ui_util from iOS.
[chromium-blink-merge.git] / ios / chrome / ios_chrome.gyp
blobdc5644cf2ce7d2ba06900839f1f0e832fd4877ff
1 # Copyright 2014 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,
8   },
9   'targets': [
10     {
11       'target_name': 'ios_chrome_app',
12       'type': 'static_library',
13       'include_dirs': [
14         '../..',
15       ],
16       'dependencies': [
17         '../../base/base.gyp:base',
18         'ios_chrome_browser',
19       ],
20       'link_settings': {
21         'libraries': [
22           '$(SDKROOT)/System/Library/Frameworks/Foundation.framework',
23           '$(SDKROOT)/System/Library/Frameworks/UIKit.framework',
24         ],
25       },
26       'sources': [
27         'app/UIApplication+ExitsOnSuspend.h',
28         'app/UIApplication+ExitsOnSuspend.mm',
29         'app/deferred_initialization_runner.h',
30         'app/deferred_initialization_runner.mm',
31         'app/safe_mode_crashing_modules_config.h',
32         'app/safe_mode_crashing_modules_config.mm',
33         'app/safe_mode_util.cc',
34         'app/safe_mode_util.h',
35       ],
36     },
37     {
38       'target_name': 'ios_chrome_browser',
39       'type': 'static_library',
40       'include_dirs': [
41         '../..',
42       ],
43       'dependencies': [
44         '../../base/base.gyp:base',
45         '../../base/base.gyp:base_prefs',
46         '../../breakpad/breakpad.gyp:breakpad_client',
47         '../../components/components.gyp:autofill_core_browser',
48         '../../components/components.gyp:autofill_core_common',
49         '../../components/components.gyp:autofill_ios_browser',
50         '../../components/components.gyp:bookmarks_browser',
51         '../../components/components.gyp:bookmarks_managed',
52         '../../components/components.gyp:content_settings_core_browser',
53         '../../components/components.gyp:data_reduction_proxy_core_common',
54         '../../components/components.gyp:dom_distiller_core',
55         '../../components/components.gyp:dom_distiller_ios',
56         '../../components/components.gyp:enhanced_bookmarks',
57         '../../components/components.gyp:favicon_core',
58         '../../components/components.gyp:google_core_browser',
59         '../../components/components.gyp:history_core_browser',
60         '../../components/components.gyp:history_ios_browser',
61         '../../components/components.gyp:infobars_core',
62         '../../components/components.gyp:invalidation_impl',
63         '../../components/components.gyp:invalidation_public',
64         '../../components/components.gyp:keyed_service_core',
65         '../../components/components.gyp:keyed_service_ios',
66         '../../components/components.gyp:leveldb_proto',
67         '../../components/components.gyp:metrics',
68         '../../components/components.gyp:omnibox_browser',
69         '../../components/components.gyp:open_from_clipboard',
70         '../../components/components.gyp:password_manager_core_browser',
71         '../../components/components.gyp:pref_registry',
72         '../../components/components.gyp:search',
73         '../../components/components.gyp:search_engines',
74         '../../components/components.gyp:signin_core_browser',
75         '../../components/components.gyp:signin_core_common',
76         '../../components/components.gyp:suggestions',
77         '../../components/components.gyp:sync_driver',
78         '../../components/components.gyp:translate_core_browser',
79         '../../components/components.gyp:translate_ios_browser',
80         '../../components/components.gyp:undo_component',
81         '../../components/components.gyp:upload_list',
82         '../../components/components.gyp:version_info',
83         '../../components/components.gyp:web_resource',
84         '../../components/components.gyp:webdata_services',
85         '../../components/components.gyp:webp_transcode',
86         '../../components/components_strings.gyp:components_strings',
87         '../../google_apis/google_apis.gyp:google_apis',
88         '../../net/net.gyp:net',
89         '../../skia/skia.gyp:skia',
90         '../../sync/sync.gyp:sync',
91         '../../third_party/google_toolbox_for_mac/google_toolbox_for_mac.gyp:google_toolbox_for_mac',
92         '../../ui/base/ui_base.gyp:ui_base',
93         '../../ui/gfx/gfx.gyp:gfx',
94         '../../url/url.gyp:url_lib',
95         '../provider/ios_provider_chrome.gyp:ios_provider_chrome_browser',
96         '../web/ios_web.gyp:ios_web',
97         'injected_js',
98         'ios_chrome_common',
99         'ios_chrome_resources.gyp:ios_chrome_resources',
100       ],
101       'link_settings': {
102         'libraries': [
103           '$(SDKROOT)/System/Library/Frameworks/Accelerate.framework',
104           '$(SDKROOT)/System/Library/Frameworks/CoreGraphics.framework',
105           '$(SDKROOT)/System/Library/Frameworks/CoreLocation.framework',
106           '$(SDKROOT)/System/Library/Frameworks/Foundation.framework',
107           '$(SDKROOT)/System/Library/Frameworks/QuartzCore.framework',
108           '$(SDKROOT)/System/Library/Frameworks/UIKit.framework',
109         ],
110       },
111       'sources': [
112         'browser/app_startup_parameters.h',
113         'browser/app_startup_parameters.mm',
114         'browser/application_context.cc',
115         'browser/application_context.h',
116         'browser/application_context_impl.cc',
117         'browser/application_context_impl.h',
118         'browser/arch_util.cc',
119         'browser/arch_util.h',
120         'browser/autofill/autofill_agent_utils.h',
121         'browser/autofill/autofill_agent_utils.mm',
122         'browser/autofill/form_input_accessory_view.h',
123         'browser/autofill/form_input_accessory_view.mm',
124         'browser/autofill/form_input_accessory_view_controller.h',
125         'browser/autofill/form_input_accessory_view_controller.mm',
126         'browser/autofill/form_input_accessory_view_delegate.h',
127         'browser/autofill/form_suggestion_controller.h',
128         'browser/autofill/form_suggestion_controller.mm',
129         'browser/autofill/form_suggestion_label.h',
130         'browser/autofill/form_suggestion_label.mm',
131         'browser/autofill/form_suggestion_provider.h',
132         'browser/autofill/form_suggestion_view.h',
133         'browser/autofill/form_suggestion_view.mm',
134         'browser/autofill/form_suggestion_view_client.h',
135         'browser/autofill/personal_data_manager_factory.cc',
136         'browser/autofill/personal_data_manager_factory.h',
137         'browser/bookmarks/bookmark_client_factory.cc',
138         'browser/bookmarks/bookmark_client_factory.h',
139         'browser/bookmarks/bookmark_client_impl.cc',
140         'browser/bookmarks/bookmark_client_impl.h',
141         'browser/bookmarks/bookmark_model_factory.cc',
142         'browser/bookmarks/bookmark_model_factory.h',
143         'browser/bookmarks/startup_task_runner_service_factory.cc',
144         'browser/bookmarks/startup_task_runner_service_factory.h',
145         'browser/browser_state/browser_state_keyed_service_factories.h',
146         'browser/browser_state/browser_state_keyed_service_factories.mm',
147         'browser/browser_state/browser_state_otr_helper.cc',
148         'browser/browser_state/browser_state_otr_helper.h',
149         'browser/browsing_data_change_listening.h',
150         'browser/chrome_paths.h',
151         'browser/chrome_paths.mm',
152         'browser/chrome_switches.cc',
153         'browser/chrome_switches.h',
154         'browser/chrome_url_constants.cc',
155         'browser/chrome_url_constants.h',
156         'browser/chrome_url_util.h',
157         'browser/chrome_url_util.mm',
158         'browser/content_settings/cookie_settings_factory.cc',
159         'browser/content_settings/cookie_settings_factory.h',
160         'browser/crash_loop_detection_util.h',
161         'browser/crash_loop_detection_util.mm',
162         'browser/crash_report/breakpad_helper.h',
163         'browser/crash_report/breakpad_helper.mm',
164         'browser/crash_report/crash_report_background_uploader.h',
165         'browser/crash_report/crash_report_background_uploader.mm',
166         'browser/crash_report/crash_report_multi_parameter.h',
167         'browser/crash_report/crash_report_multi_parameter.mm',
168         'browser/crash_report/crash_report_user_application_state.h',
169         'browser/crash_report/crash_report_user_application_state.mm',
170         'browser/crash_report/crash_upload_list.cc',
171         'browser/crash_report/crash_upload_list.h',
172         'browser/dom_distiller/distiller_viewer.cc',
173         'browser/dom_distiller/distiller_viewer.h',
174         'browser/dom_distiller/dom_distiller_service_factory.cc',
175         'browser/dom_distiller/dom_distiller_service_factory.h',
176         'browser/enhanced_bookmarks/bookmark_image_service_factory.h',
177         'browser/enhanced_bookmarks/bookmark_image_service_factory.mm',
178         'browser/enhanced_bookmarks/bookmark_image_service_ios.h',
179         'browser/enhanced_bookmarks/bookmark_image_service_ios.mm',
180         'browser/enhanced_bookmarks/bookmark_server_cluster_service_factory.cc',
181         'browser/enhanced_bookmarks/bookmark_server_cluster_service_factory.h',
182         'browser/enhanced_bookmarks/enhanced_bookmark_model_factory.cc',
183         'browser/enhanced_bookmarks/enhanced_bookmark_model_factory.h',
184         'browser/experimental_flags.h',
185         'browser/experimental_flags.mm',
186         'browser/favicon/favicon_client_impl.cc',
187         'browser/favicon/favicon_client_impl.h',
188         'browser/favicon/favicon_service_factory.cc',
189         'browser/favicon/favicon_service_factory.h',
190         'browser/file_metadata_util.h',
191         'browser/file_metadata_util.mm',
192         'browser/find_in_page/find_in_page_controller.h',
193         'browser/find_in_page/find_in_page_controller.mm',
194         'browser/find_in_page/find_in_page_model.h',
195         'browser/find_in_page/find_in_page_model.mm',
196         'browser/find_in_page/js_findinpage_manager.h',
197         'browser/find_in_page/js_findinpage_manager.mm',
198         'browser/first_run/first_run.h',
199         'browser/first_run/first_run.mm',
200         'browser/first_run/first_run_configuration.h',
201         'browser/first_run/first_run_configuration.mm',
202         'browser/first_run/first_run_metrics.h',
203         'browser/geolocation/CLLocation+OmniboxGeolocation.h',
204         'browser/geolocation/CLLocation+OmniboxGeolocation.mm',
205         'browser/geolocation/CLLocation+XGeoHeader.h',
206         'browser/geolocation/CLLocation+XGeoHeader.mm',
207         'browser/geolocation/location_manager.h',
208         'browser/geolocation/location_manager.mm',
209         'browser/geolocation/omnibox_geolocation_authorization_alert.h',
210         'browser/geolocation/omnibox_geolocation_authorization_alert.mm',
211         'browser/geolocation/omnibox_geolocation_config.h',
212         'browser/geolocation/omnibox_geolocation_config.mm',
213         'browser/geolocation/omnibox_geolocation_local_state.h',
214         'browser/geolocation/omnibox_geolocation_local_state.mm',
215         'browser/google/google_brand.h',
216         'browser/google/google_brand.mm',
217         'browser/google/google_url_tracker_client_impl.cc',
218         'browser/google/google_url_tracker_client_impl.h',
219         'browser/google/google_url_tracker_factory.cc',
220         'browser/google/google_url_tracker_factory.h',
221         'browser/history/history_backend_client_impl.cc',
222         'browser/history/history_backend_client_impl.h',
223         'browser/history/history_client_impl.cc',
224         'browser/history/history_client_impl.h',
225         'browser/history/history_service_factory.cc',
226         'browser/history/history_service_factory.h',
227         'browser/history/history_utils.cc',
228         'browser/history/history_utils.h',
229         'browser/history/top_sites_factory.cc',
230         'browser/history/top_sites_factory.h',
231         'browser/history/web_history_service_factory.cc',
232         'browser/history/web_history_service_factory.h',
233         'browser/infobars/confirm_infobar_controller.h',
234         'browser/infobars/confirm_infobar_controller.mm',
235         'browser/infobars/infobar.h',
236         'browser/infobars/infobar.mm',
237         'browser/infobars/infobar_container_ios.h',
238         'browser/infobars/infobar_container_ios.mm',
239         'browser/infobars/infobar_container_view.h',
240         'browser/infobars/infobar_container_view.mm',
241         'browser/infobars/infobar_controller.h',
242         'browser/infobars/infobar_controller.mm',
243         'browser/infobars/infobar_manager_impl.cc',
244         'browser/infobars/infobar_manager_impl.h',
245         'browser/infobars/infobar_utils.h',
246         'browser/infobars/infobar_utils.mm',
247         'browser/install_time_util.h',
248         'browser/install_time_util.mm',
249         'browser/installation_notifier.h',
250         'browser/installation_notifier.mm',
251         'browser/memory/memory_debugger.h',
252         'browser/memory/memory_debugger.mm',
253         'browser/memory/memory_debugger_manager.h',
254         'browser/memory/memory_debugger_manager.mm',
255         'browser/memory/memory_metrics.cc',
256         'browser/memory/memory_metrics.h',
257         'browser/memory/memory_wedge.cc',
258         'browser/memory/memory_wedge.h',
259         'browser/metrics/ios_stability_metrics_provider.h',
260         'browser/metrics/ios_stability_metrics_provider.mm',
261         'browser/metrics/previous_session_info.h',
262         'browser/metrics/previous_session_info.mm',
263         'browser/net/chrome_cookie_store_ios_client.h',
264         'browser/net/chrome_cookie_store_ios_client.mm',
265         'browser/net/image_fetcher.h',
266         'browser/net/image_fetcher.mm',
267         'browser/net/metrics_network_client.h',
268         'browser/net/metrics_network_client.mm',
269         'browser/net/metrics_network_client_manager.h',
270         'browser/net/metrics_network_client_manager.mm',
271         'browser/net/retryable_url_fetcher.h',
272         'browser/net/retryable_url_fetcher.mm',
273         'browser/passwords/password_generation_utils.h',
274         'browser/passwords/password_generation_utils.mm',
275         'browser/pref_names.cc',
276         'browser/pref_names.h',
277         'browser/prefs/pref_observer_bridge.h',
278         'browser/prefs/pref_observer_bridge.mm',
279         'browser/procedural_block_types.h',
280         'browser/search/search_util.cc',
281         'browser/search/search_util.h',
282         'browser/search_engines/search_engines_util.cc',
283         'browser/search_engines/search_engines_util.h',
284         'browser/search_engines/template_url_service_client_impl.cc',
285         'browser/search_engines/template_url_service_client_impl.h',
286         'browser/search_engines/template_url_service_factory.cc',
287         'browser/search_engines/template_url_service_factory.h',
288         'browser/search_engines/ui_thread_search_terms_data.cc',
289         'browser/search_engines/ui_thread_search_terms_data.h',
290         'browser/signin/about_signin_internals_factory.cc',
291         'browser/signin/about_signin_internals_factory.h',
292         'browser/signin/account_fetcher_service_factory.cc',
293         'browser/signin/account_fetcher_service_factory.h',
294         'browser/signin/account_reconcilor_factory.cc',
295         'browser/signin/account_reconcilor_factory.h',
296         'browser/signin/account_tracker_service_factory.cc',
297         'browser/signin/account_tracker_service_factory.h',
298         'browser/signin/chrome_identity_service_observer_bridge.h',
299         'browser/signin/chrome_identity_service_observer_bridge.mm',
300         'browser/signin/constants.h',
301         'browser/signin/constants.mm',
302         'browser/signin/gaia_auth_fetcher_ios.h',
303         'browser/signin/gaia_auth_fetcher_ios.mm',
304         'browser/signin/gaia_auth_fetcher_ios_private.h',
305         'browser/signin/gaia_cookie_manager_service_factory.cc',
306         'browser/signin/gaia_cookie_manager_service_factory.h',
307         'browser/signin/oauth2_token_service_factory.cc',
308         'browser/signin/oauth2_token_service_factory.h',
309         'browser/signin/signin_client_factory.cc',
310         'browser/signin/signin_client_factory.h',
311         'browser/signin/signin_client_impl.cc',
312         'browser/signin/signin_client_impl.h',
313         'browser/signin/signin_error_controller_factory.cc',
314         'browser/signin/signin_error_controller_factory.h',
315         'browser/signin/signin_manager_factory.cc',
316         'browser/signin/signin_manager_factory.h',
317         'browser/signin/signin_manager_factory_observer.h',
318         'browser/signin/signin_util.h',
319         'browser/signin/signin_util.mm',
320         'browser/snapshots/snapshot_cache.h',
321         'browser/snapshots/snapshot_cache.mm',
322         'browser/snapshots/snapshot_manager.h',
323         'browser/snapshots/snapshot_manager.mm',
324         'browser/snapshots/snapshot_overlay.h',
325         'browser/snapshots/snapshot_overlay.mm',
326         'browser/snapshots/snapshots_util.h',
327         'browser/snapshots/snapshots_util.mm',
328         'browser/suggestions/image_fetcher_impl.h',
329         'browser/suggestions/image_fetcher_impl.mm',
330         'browser/suggestions/suggestions_service_factory.h',
331         'browser/suggestions/suggestions_service_factory.mm',
332         'browser/sync/glue/sync_start_util.cc',
333         'browser/sync/glue/sync_start_util.h',
334         'browser/sync/sync_observer_bridge.h',
335         'browser/sync/sync_observer_bridge.mm',
336         'browser/sync/sync_setup_service.cc',
337         'browser/sync/sync_setup_service.h',
338         'browser/sync/sync_setup_service_factory.cc',
339         'browser/sync/sync_setup_service_factory.h',
340         'browser/translate/after_translate_infobar_controller.h',
341         'browser/translate/after_translate_infobar_controller.mm',
342         'browser/translate/before_translate_infobar_controller.h',
343         'browser/translate/before_translate_infobar_controller.mm',
344         'browser/translate/chrome_ios_translate_client.h',
345         'browser/translate/chrome_ios_translate_client.mm',
346         'browser/translate/never_translate_infobar_controller.h',
347         'browser/translate/never_translate_infobar_controller.mm',
348         'browser/translate/translate_accept_languages_factory.cc',
349         'browser/translate/translate_accept_languages_factory.h',
350         'browser/translate/translate_infobar_tags.h',
351         'browser/translate/translate_message_infobar_controller.h',
352         'browser/translate/translate_message_infobar_controller.mm',
353         'browser/translate/translate_service_ios.cc',
354         'browser/translate/translate_service_ios.h',
355         'browser/ui/UIView+SizeClassSupport.h',
356         'browser/ui/UIView+SizeClassSupport.mm',
357         'browser/ui/animation_util.h',
358         'browser/ui/animation_util.mm',
359         'browser/ui/autofill/autofill_client_ios.h',
360         'browser/ui/autofill/autofill_client_ios.mm',
361         'browser/ui/background_generator.h',
362         'browser/ui/background_generator.mm',
363         'browser/ui/commands/UIKit+ChromeExecuteCommand.h',
364         'browser/ui/commands/UIKit+ChromeExecuteCommand.mm',
365         'browser/ui/commands/clear_browsing_data_command.h',
366         'browser/ui/commands/clear_browsing_data_command.mm',
367         'browser/ui/commands/generic_chrome_command.h',
368         'browser/ui/commands/generic_chrome_command.mm',
369         'browser/ui/commands/ios_command_ids.h',
370         'browser/ui/commands/open_url_command.h',
371         'browser/ui/commands/open_url_command.mm',
372         'browser/ui/commands/set_up_for_testing_command.h',
373         'browser/ui/commands/set_up_for_testing_command.mm',
374         'browser/ui/commands/show_mail_composer_command.h',
375         'browser/ui/commands/show_mail_composer_command.mm',
376         'browser/ui/commands/show_signin_command.h',
377         'browser/ui/commands/show_signin_command.mm',
378         'browser/ui/file_locations.h',
379         'browser/ui/file_locations.mm',
380         'browser/ui/image_util.h',
381         'browser/ui/image_util.mm',
382         'browser/ui/keyboard/hardware_keyboard_watcher.h',
383         'browser/ui/keyboard/hardware_keyboard_watcher.mm',
384         'browser/ui/native_content_controller.h',
385         'browser/ui/native_content_controller.mm',
386         'browser/ui/omnibox/web_omnibox_edit_controller.cc',
387         'browser/ui/omnibox/web_omnibox_edit_controller.h',
388         'browser/ui/orientation_limiting_navigation_controller.h',
389         'browser/ui/orientation_limiting_navigation_controller.mm',
390         'browser/ui/reversed_animation.h',
391         'browser/ui/reversed_animation.mm',
392         'browser/ui/show_mail_composer_util.h',
393         'browser/ui/show_mail_composer_util.mm',
394         'browser/ui/show_privacy_settings_util.h',
395         'browser/ui/show_privacy_settings_util.mm',
396         'browser/ui/side_swipe_gesture_recognizer.h',
397         'browser/ui/side_swipe_gesture_recognizer.mm',
398         'browser/ui/size_class_support_util.h',
399         'browser/ui/size_class_support_util.mm',
400         'browser/ui/ui_util.h',
401         'browser/ui/ui_util.mm',
402         'browser/ui/uikit_ui_util.h',
403         'browser/ui/uikit_ui_util.mm',
404         'browser/ui/url_loader.h',
405         'browser/undo/bookmark_undo_service_factory.cc',
406         'browser/undo/bookmark_undo_service_factory.h',
407         'browser/updatable_config/updatable_array.h',
408         'browser/updatable_config/updatable_array.mm',
409         'browser/updatable_config/updatable_config_base.h',
410         'browser/updatable_config/updatable_config_base.mm',
411         'browser/updatable_config/updatable_dictionary.h',
412         'browser/updatable_config/updatable_dictionary.mm',
413         'browser/web/dom_altering_lock.h',
414         'browser/web/dom_altering_lock.mm',
415         'browser/web/web_view_type_util.h',
416         'browser/web/web_view_type_util.mm',
417         'browser/web_data_service_factory.cc',
418         'browser/web_data_service_factory.h',
419         'browser/web_resource/ios_web_resource_service.cc',
420         'browser/web_resource/ios_web_resource_service.h',
421         'browser/xcallback_parameters.h',
422         'browser/xcallback_parameters.mm',
423       ],
424       'conditions': [
425         ['enable_rlz==1', {
426           'dependencies': [
427             '../../components/components.gyp:rlz',
428             'ios_chrome_browser_rlz',
429           ],
430         }],
431       ],
432     },
433     {
434       'target_name': 'ios_chrome_common',
435       'type': 'static_library',
436       'include_dirs': [
437         '../..',
438       ],
439       'dependencies': [
440         '../../base/base.gyp:base',
441         '../../components/components.gyp:version_info',
442       ],
443       'link_settings': {
444         'libraries': [
445           '$(SDKROOT)/System/Library/Frameworks/CoreGraphics.framework',
446           '$(SDKROOT)/System/Library/Frameworks/Foundation.framework',
447         ],
448       },
449       'sources': [
450         'common/channel_info.h',
451         'common/channel_info.mm',
452         'common/string_util.h',
453         'common/string_util.mm',
454       ]
455     },
456     {
457       'target_name': 'injected_js',
458       'type': 'none',
459       'sources': [
460         'browser/enhanced_bookmarks/bookmark_image_service_ios.js',
461         'browser/find_in_page/resources/find_in_page.js',
462       ],
463       'includes': [
464         '../../ios/web/js_compile.gypi',
465       ],
466       'link_settings': {
467         'mac_bundle_resources': [
468           '<(SHARED_INTERMEDIATE_DIR)/bookmark_image_service_ios.js',
469           '<(SHARED_INTERMEDIATE_DIR)/find_in_page.js',
470         ],
471       },
472     },
473   ],
474   'conditions': [
475     ['enable_rlz_support==1', {
476       'targets': [
477         {
478           'target_name': 'ios_chrome_browser_rlz',
479           'type': 'static_library',
480           'sources': [
481             'browser/rlz/rlz_tracker_delegate_impl.cc',
482             'browser/rlz/rlz_tracker_delegate_impl.h',
483           ],
484           'dependencies': [
485             '../../components/components.gyp:google_core_browser',
486             '../../components/components.gyp:omnibox_browser',
487             '../../components/components.gyp:rlz',
488             '../../components/components.gyp:search_engines',
489             '../../rlz/rlz.gyp:rlz_lib',
490           ],
491         },
492       ],
493     }],
494   ],