Prevent app list doodle from being pinch-to-zoomed.
[chromium-blink-merge.git] / ios / web / ios_web.gyp
blob958c203f0dc5fb7a6eb67c0186b09bbb941359f3
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_web',
12       'type': 'static_library',
13       'include_dirs': [
14         '../..',
15       ],
16       'dependencies': [
17         'ios_web_core',
18         'js_resources',
19         'user_agent',
20         '../../base/base.gyp:base',
21         '../../content/content.gyp:content_browser',
22         '../../ios/net/ios_net.gyp:ios_net',
23         '../../ios/third_party/blink/blink_html_tokenizer.gyp:blink_html_tokenizer',
24         '../../net/net.gyp:net',
25         '../../ui/base/ui_base.gyp:ui_base',
26         '../../ui/gfx/gfx.gyp:gfx',
27         '../../ui/gfx/gfx.gyp:gfx_geometry',
28         '../../ui/resources/ui_resources.gyp:ui_resources',
29         '../../url/url.gyp:url_lib',
30       ],
31       'sources': [
32         'alloc_with_zone_interceptor.h',
33         'alloc_with_zone_interceptor.mm',
34         'browser_state.cc',
35         'browser_url_rewriter_impl.cc',
36         'browser_url_rewriter_impl.h',
37         'interstitials/html_web_interstitial_impl.h',
38         'interstitials/html_web_interstitial_impl.mm',
39         'interstitials/native_web_interstitial_impl.h',
40         'interstitials/native_web_interstitial_impl.mm',
41         'interstitials/web_interstitial_facade_delegate.h',
42         'interstitials/web_interstitial_impl.h',
43         'interstitials/web_interstitial_impl.mm',
44         'load_committed_details.cc',
45         'navigation/crw_session_certificate_policy_manager.h',
46         'navigation/crw_session_certificate_policy_manager.mm',
47         'navigation/crw_session_controller+private_constructors.h',
48         'navigation/crw_session_controller.h',
49         'navigation/crw_session_controller.mm',
50         'navigation/crw_session_entry.h',
51         'navigation/crw_session_entry.mm',
52         'navigation/navigation_item_facade_delegate.h',
53         'navigation/navigation_item_impl.h',
54         'navigation/navigation_item_impl.mm',
55         'navigation/navigation_manager_delegate.h',
56         'navigation/navigation_manager_facade_delegate.h',
57         'navigation/navigation_manager_impl.h',
58         'navigation/navigation_manager_impl.mm',
59         'navigation/nscoder_util.h',
60         'navigation/nscoder_util.mm',
61         'navigation/time_smoother.cc',
62         'navigation/time_smoother.h',
63         'navigation/web_load_params.h',
64         'navigation/web_load_params.mm',
65         'net/cert_policy.cc',
66         'net/cert_store_impl.cc',
67         'net/cert_store_impl.h',
68         'net/certificate_policy_cache.cc',
69         'net/clients/crw_csp_network_client.h',
70         'net/clients/crw_csp_network_client.mm',
71         'net/clients/crw_js_injection_network_client.h',
72         'net/clients/crw_js_injection_network_client.mm',
73         'net/clients/crw_js_injection_network_client_factory.h',
74         'net/clients/crw_js_injection_network_client_factory.mm',
75         'net/clients/crw_passkit_delegate.h',
76         'net/clients/crw_passkit_network_client.h',
77         'net/clients/crw_passkit_network_client.mm',
78         'net/clients/crw_passkit_network_client_factory.h',
79         'net/clients/crw_passkit_network_client_factory.mm',
80         'net/cookie_notification_bridge.h',
81         'net/cookie_notification_bridge.mm',
82         'net/crw_request_tracker_delegate.h',
83         'net/crw_url_verifying_protocol_handler.h',
84         'net/crw_url_verifying_protocol_handler.mm',
85         'net/request_group_util.h',
86         'net/request_group_util.mm',
87         'net/request_tracker_data_memoizing_store.h',
88         'net/request_tracker_factory_impl.h',
89         'net/request_tracker_factory_impl.mm',
90         'net/request_tracker_impl.h',
91         'net/request_tracker_impl.mm',
92         'net/web_http_protocol_handler_delegate.h',
93         'net/web_http_protocol_handler_delegate.mm',
94         'public/block_types.h',
95         'public/browser_state.h',
96         'public/browser_url_rewriter.h',
97         'public/cert_policy.h',
98         'public/cert_store.h',
99         'public/certificate_policy_cache.h',
100         'public/favicon_status.cc',
101         'public/favicon_status.h',
102         'public/favicon_url.cc',
103         'public/favicon_url.h',
104         'public/interstitials/web_interstitial.h',
105         'public/interstitials/web_interstitial_delegate.h',
106         'public/load_committed_details.h',
107         'public/navigation_item.h',
108         'public/navigation_manager.h',
109         'public/referrer.h',
110         'public/referrer_util.h',
111         'public/referrer_util.cc',
112         'public/security_style.h',
113         'public/ssl_status.cc',
114         'public/ssl_status.h',
115         'public/string_util.h',
116         'public/url_scheme_util.h',
117         'public/url_util.h',
118         'public/user_agent.h',
119         'public/user_agent.mm',
120         'public/user_metrics.h',
121         'public/web/url_data_source_ios.h',
122         'public/web_client.h',
123         'public/web_client.mm',
124         'public/web_controller_factory.h',
125         'public/web_controller_factory.mm',
126         'public/web_state/credential.h',
127         'public/web_state/crw_native_content.h',
128         'public/web_state/crw_native_content_provider.h',
129         'public/web_state/crw_web_controller_observer.h',
130         'public/web_state/crw_web_delegate.h',
131         'public/web_state/crw_web_user_interface_delegate.h',
132         'public/web_state/crw_web_view_proxy.h',
133         'public/web_state/crw_web_view_scroll_view_proxy.h',
134         'public/web_state/js/crw_js_injection_evaluator.h',
135         'public/web_state/js/crw_js_injection_manager.h',
136         'public/web_state/js/crw_js_injection_receiver.h',
137         'public/web_state/page_scroll_state.h',
138         'public/web_state/page_scroll_state.mm',
139         'public/web_state/url_verification_constants.h',
140         'public/web_state/web_state.h',
141         'public/web_state/web_state_observer.h',
142         'public/web_state/web_state_observer_bridge.h',
143         'public/web_state/web_state_user_data.h',
144         'public/web_thread.h',
145         'public/web_ui_ios_data_source.h',
146         'public/web_view_type.h',
147         'public/web_view_util.h',
148         'string_util.cc',
149         'ui_web_view_util.h',
150         'ui_web_view_util.mm',
151         'url_scheme_util.mm',
152         'url_util.cc',
153         'user_metrics.cc',
154         'weak_nsobject_counter.h',
155         'weak_nsobject_counter.mm',
156         'web_state/blocked_popup_info.h',
157         'web_state/blocked_popup_info.mm',
158         'web_state/credential.cc',
159         'web_state/crw_recurring_task_delegate.h',
160         'web_state/crw_web_view_proxy_impl.h',
161         'web_state/crw_web_view_proxy_impl.mm',
162         'web_state/crw_web_view_scroll_view_proxy.mm',
163         'web_state/js/credential_util.h',
164         'web_state/js/credential_util.mm',
165         'web_state/js/crw_js_early_script_manager.h',
166         'web_state/js/crw_js_early_script_manager.mm',
167         'web_state/js/crw_js_injection_manager.mm',
168         'web_state/js/crw_js_injection_receiver.mm',
169         'web_state/js/crw_js_invoke_parameter_queue.h',
170         'web_state/js/crw_js_invoke_parameter_queue.mm',
171         'web_state/js/crw_js_plugin_placeholder_manager.h',
172         'web_state/js/crw_js_plugin_placeholder_manager.mm',
173         'web_state/js/crw_js_window_id_manager.h',
174         'web_state/js/crw_js_window_id_manager.mm',
175         'web_state/js/page_script_util.h',
176         'web_state/js/page_script_util.mm',
177         'web_state/ui/crw_context_menu_provider.h',
178         'web_state/ui/crw_context_menu_provider.mm',
179         'web_state/ui/crw_debug_web_view.h',
180         'web_state/ui/crw_debug_web_view.mm',
181         'web_state/ui/crw_simple_web_view_controller.h',
182         'web_state/ui/crw_static_file_web_view.h',
183         'web_state/ui/crw_static_file_web_view.mm',
184         'web_state/ui/crw_swipe_recognizer_provider.h',
185         'web_state/ui/crw_touch_tracking_recognizer.h',
186         'web_state/ui/crw_touch_tracking_recognizer.mm',
187         'web_state/ui/crw_ui_simple_web_view_controller.h',
188         'web_state/ui/crw_ui_simple_web_view_controller.mm',
189         'web_state/ui/crw_ui_web_view_web_controller.h',
190         'web_state/ui/crw_ui_web_view_web_controller.mm',
191         'web_state/ui/crw_web_controller+protected.h',
192         'web_state/ui/crw_web_controller.h',
193         'web_state/ui/crw_web_controller.mm',
194         'web_state/ui/crw_web_controller_container_view.h',
195         'web_state/ui/crw_web_controller_container_view.mm',
196         'web_state/ui/crw_wk_simple_web_view_controller.h',
197         'web_state/ui/crw_wk_simple_web_view_controller.mm',
198         'web_state/ui/crw_wk_web_view_crash_detector.h',
199         'web_state/ui/crw_wk_web_view_crash_detector.mm',
200         'web_state/ui/crw_wk_web_view_web_controller.h',
201         'web_state/ui/crw_wk_web_view_web_controller.mm',
202         'web_state/ui/web_view_js_utils.h',
203         'web_state/ui/web_view_js_utils.mm',
204         'web_state/ui/wk_web_view_configuration_provider.h',
205         'web_state/ui/wk_web_view_configuration_provider.mm',
206         'web_state/web_controller_observer_bridge.h',
207         'web_state/web_controller_observer_bridge.mm',
208         'web_state/web_state.cc',
209         'web_state/web_state_facade_delegate.h',
210         'web_state/web_state_impl.h',
211         'web_state/web_state_impl.mm',
212         'web_state/web_state_observer.cc',
213         'web_state/web_state_observer_bridge.mm',
214         'web_state/web_view_creation_utils.h',
215         'web_state/web_view_creation_utils.mm',
216         'web_state/wk_web_view_ssl_error_util.h',
217         'web_state/wk_web_view_ssl_error_util.mm',
218         'web_thread.cc',
219         'web_thread_impl.cc',
220         'web_thread_impl.h',
221         'web_view_util.mm',
222         'webui/crw_web_ui_page_builder.h',
223         'webui/crw_web_ui_page_builder.mm',
224         'webui/shared_resources_data_source_ios.cc',
225         'webui/shared_resources_data_source_ios.h',
226         'webui/url_data_manager_ios.cc',
227         'webui/url_data_manager_ios.h',
228         'webui/url_data_manager_ios_backend.cc',
229         'webui/url_data_manager_ios_backend.h',
230         'webui/url_data_source_ios.cc',
231         'webui/url_data_source_ios_impl.cc',
232         'webui/url_data_source_ios_impl.h',
233         'webui/url_fetcher_block_adapter.h',
234         'webui/url_fetcher_block_adapter.mm',
235         'webui/web_ui_ios_controller_factory_registry.cc',
236         'webui/web_ui_ios_controller_factory_registry.h',
237         'webui/web_ui_ios_data_source_impl.cc',
238         'webui/web_ui_ios_data_source_impl.h',
239         'webui/web_ui_ios_impl.h',
240         'webui/web_ui_ios_impl.mm',
241         '<(SHARED_INTERMEDIATE_DIR)/ui/resources/grit/webui_resources_map.cc',
242       ],
243       'link_settings': {
244         'xcode_settings': {
245           'OTHER_LDFLAGS': [
246             '-weak_framework WebKit',
247           ]
248         },
249       },
250     },
251     # Target shared by ios_web and CrNet.
252     {
253       'target_name': 'ios_web_core',
254       'type': 'static_library',
255       'dependencies': [
256         '../../base/base.gyp:base',
257       ],
258       'include_dirs': [
259         '../..',
260       ],
261       'sources': [
262         'crw_network_activity_indicator_manager.h',
263         'crw_network_activity_indicator_manager.mm',
264         'history_state_util.h',
265         'history_state_util.mm',
266       ],
267     },
268     {
269       'target_name': 'ios_web_js_bundle_ui',
270       'type': 'none',
271       'variables': {
272         'closure_entry_point': '__crWeb.webBundle',
273         'js_bundle_files': [
274           'web_state/js/resources/base.js',
275           'web_state/js/resources/common.js',
276           'web_state/js/resources/console.js',
277           'web_state/js/resources/core.js',
278           'web_state/js/resources/core_dynamic_ui.js',
279           'web_state/js/resources/dialog_overrides.js',
280           'web_state/js/resources/message.js',
281           'web_state/js/resources/message_dynamic_ui.js',
282           'web_state/js/resources/web_bundle_ui.js',
283           'web_state/js/resources/window_open_ui.js',
284         ],
285       },
286       'sources': [
287         'web_state/js/resources/web_bundle_ui.js',
288       ],
289       'link_settings': {
290         'mac_bundle_resources': [
291           '<(SHARED_INTERMEDIATE_DIR)/web_bundle_ui.js',
292         ],
293       },
294       'includes': [
295         'js_compile_bundle.gypi'
296       ],
297     },
298     {
299       'target_name': 'ios_web_js_bundle_wk',
300       'type': 'none',
301       'variables': {
302         'closure_entry_point': '__crWeb.webBundle',
303         'js_bundle_files': [
304           'web_state/js/resources/base.js',
305           'web_state/js/resources/common.js',
306           'web_state/js/resources/console.js',
307           'web_state/js/resources/core.js',
308           'web_state/js/resources/core_dynamic_wk.js',
309           'web_state/js/resources/dialog_overrides.js',
310           'web_state/js/resources/message.js',
311           'web_state/js/resources/message_dynamic_wk.js',
312           'web_state/js/resources/web_bundle_wk.js',
313           'web_state/js/resources/window_open_wk.js',
314         ],
315       },
316       'sources': [
317         'web_state/js/resources/web_bundle_wk.js',
318       ],
319       'link_settings': {
320         'mac_bundle_resources': [
321           '<(SHARED_INTERMEDIATE_DIR)/web_bundle_wk.js',
322         ],
323       },
324       'includes': [
325         'js_compile_bundle.gypi'
326       ],
327     },
328     {
329       'target_name': 'js_resources',
330       'type': 'none',
331       'dependencies': [
332         'ios_web_js_bundle_ui',
333         'ios_web_js_bundle_wk',
334       ],
335       'sources': [
336         'web_state/js/resources/plugin_placeholder.js',
337         'web_state/js/resources/window_id.js',
338       ],
339       'link_settings': {
340         'mac_bundle_resources': [
341           '<(SHARED_INTERMEDIATE_DIR)/plugin_placeholder.js',
342           '<(SHARED_INTERMEDIATE_DIR)/window_id.js',
343         ],
344       },
345       'includes': [
346         'js_compile.gypi'
347       ],
348     },
349     {
350       'target_name': 'test_support_ios_web',
351       'type': 'static_library',
352       'dependencies': [
353         'ios_web',
354         '../../content/content_shell_and_tests.gyp:test_support_content',
355         '../../ios/testing/ios_testing.gyp:ocmock_support',
356         '../../ios/third_party/gcdwebserver/gcdwebserver.gyp:gcdwebserver',
357         '../../testing/gmock.gyp:gmock',
358         '../../testing/gtest.gyp:gtest',
359         '../../third_party/ocmock/ocmock.gyp:ocmock',
360       ],
361       'include_dirs': [
362         '../..',
363       ],
364       'sources': [
365         'public/test/crw_test_js_injection_receiver.h',
366         'public/test/crw_test_js_injection_receiver.mm',
367         'public/test/http_server.h',
368         'public/test/http_server.mm',
369         'public/test/js_test_util.h',
370         'public/test/js_test_util.mm',
371         'public/test/response_providers/data_response_provider.h',
372         'public/test/response_providers/data_response_provider.mm',
373         'public/test/response_providers/file_based_response_provider.h',
374         'public/test/response_providers/file_based_response_provider.mm',
375         'public/test/response_providers/file_based_response_provider_impl.cc',
376         'public/test/response_providers/file_based_response_provider_impl.h',
377         'public/test/response_providers/response_provider.cc',
378         'public/test/response_providers/response_provider.h',
379         'public/test/test_browser_state.cc',
380         'public/test/test_browser_state.h',
381         'public/test/test_web_client.h',
382         'public/test/test_web_client.mm',
383         'public/test/test_web_state.cc',
384         'public/test/test_web_state.h',
385         'public/test/test_web_thread.h',
386         'public/test/test_web_thread_bundle.h',
387         'public/test/web_test_util.h',
388         'test/crw_fake_web_controller_observer.h',
389         'test/crw_fake_web_controller_observer.mm',
390         'test/test_web_thread.cc',
391         'test/test_web_thread_bundle.cc',
392         'test/web_test.h',
393         'test/web_test.mm',
394         'test/web_test_suite.cc',
395         'test/web_test_suite.h',
396         'test/wk_web_view_crash_utils.h',
397         'test/wk_web_view_crash_utils.mm',
398       ],
399     },
400     {
401       'target_name': 'user_agent',
402       'type': 'static_library',
403       'include_dirs': [
404         '../..',
405       ],
406       'dependencies': [
407         '../../base/base.gyp:base'
408       ],
409       'sources': [
410         'public/user_agent.h',
411         'public/user_agent.mm',
412       ],
413     },
414   ],