Push API: Deflake PushEventEnforcesUserVisibleNotification
[chromium-blink-merge.git] / ios / web / ios_web.gyp
blob34f62db05b676bfbb8c178fca0ec29226be15ff1
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         '../../url/url.gyp:url_lib',
28       ],
29       'sources': [
30         'alloc_with_zone_interceptor.h',
31         'alloc_with_zone_interceptor.mm',
32         'browser_state.cc',
33         'load_committed_details.cc',
34         'navigation/navigation_item_impl.h',
35         'navigation/navigation_item_impl.mm',
36         'navigation/nscoder_util.h',
37         'navigation/nscoder_util.mm',
38         'navigation/time_smoother.cc',
39         'navigation/time_smoother.h',
40         'net/cert_policy.cc',
41         'net/cert_store_impl.cc',
42         'net/cert_store_impl.h',
43         'net/certificate_policy_cache.cc',
44         'net/clients/crw_js_injection_network_client.h',
45         'net/clients/crw_js_injection_network_client.mm',
46         'net/clients/crw_js_injection_network_client_factory.h',
47         'net/clients/crw_js_injection_network_client_factory.mm',
48         'net/clients/crw_passkit_delegate.h',
49         'net/clients/crw_passkit_network_client.h',
50         'net/clients/crw_passkit_network_client.mm',
51         'net/clients/crw_passkit_network_client_factory.h',
52         'net/clients/crw_passkit_network_client_factory.mm',
53         'net/cookie_notification_bridge.h',
54         'net/cookie_notification_bridge.mm',
55         'net/crw_request_tracker_delegate.h',
56         'net/request_group_util.h',
57         'net/request_group_util.mm',
58         'net/request_tracker_data_memoizing_store.h',
59         'net/request_tracker_factory_impl.h',
60         'net/request_tracker_factory_impl.mm',
61         'net/request_tracker_impl.h',
62         'net/request_tracker_impl.mm',
63         'net/web_http_protocol_handler_delegate.h',
64         'net/web_http_protocol_handler_delegate.mm',
65         'public/block_types.h',
66         'public/browser_state.h',
67         'public/browser_url_rewriter.h',
68         'public/cert_policy.h',
69         'public/cert_store.h',
70         'public/certificate_policy_cache.h',
71         'public/favicon_status.cc',
72         'public/favicon_status.h',
73         'public/favicon_url.cc',
74         'public/favicon_url.h',
75         'public/interstitials/web_interstitial.h',
76         'public/interstitials/web_interstitial_delegate.h',
77         'public/load_committed_details.h',
78         'public/navigation_item.h',
79         'public/referrer.h',
80         'public/referrer_util.h',
81         'public/referrer_util.cc',
82         'public/security_style.h',
83         'public/ssl_status.cc',
84         'public/ssl_status.h',
85         'public/string_util.h',
86         'public/url_scheme_util.h',
87         'public/url_util.h',
88         'public/user_agent.h',
89         'public/user_agent.mm',
90         'public/user_metrics.h',
91         'public/web_client.h',
92         'public/web_client.mm',
93         'public/web_state/crw_native_content.h',
94         'public/web_state/crw_native_content_provider.h',
95         'public/web_state/crw_web_controller_observer.h',
96         'public/web_state/crw_web_delegate.h',
97         'public/web_state/crw_web_user_interface_delegate.h'
98         'public/web_state/crw_web_view_proxy.h'
99         'public/web_state/crw_web_view_scroll_view_proxy.h'
100         'public/web_state/js/crw_js_base_manager.h',
101         'public/web_state/js/crw_js_injection_evaluator.h',
102         'public/web_state/js/crw_js_injection_manager.h',
103         'public/web_state/js/crw_js_injection_receiver.h',
104         'public/web_state/page_scroll_state.h',
105         'public/web_state/page_scroll_state.mm',
106         'public/web_state/url_verification_constants.h',
107         'public/web_state/web_state_observer.h',
108         'public/web_state/web_state_observer_bridge.h',
109         'public/web_thread.h',
110         'public/web_view_type.h',
111         'string_util.cc',
112         'ui_web_view_util.h',
113         'ui_web_view_util.mm',
114         'url_scheme_util.mm',
115         'url_util.cc',
116         'user_metrics.cc',
117         'weak_nsobject_counter.h',
118         'weak_nsobject_counter.mm',
119         'web_state/blocked_popup_info.h',
120         'web_state/blocked_popup_info.mm',
121         'web_state/crw_recurring_task_delegate.h',
122         'web_state/js/crw_js_early_script_manager.h',
123         'web_state/js/crw_js_early_script_manager.mm',
124         'web_state/js/crw_js_injection_manager.mm',
125         'web_state/js/crw_js_injection_receiver.mm',
126         'web_state/js/page_script_util.h',
127         'web_state/js/page_script_util.mm',
128         'web_state/ui/crw_context_menu_provider.h',
129         'web_state/ui/crw_context_menu_provider.mm',
130         'web_state/ui/crw_debug_web_view.h',
131         'web_state/ui/crw_debug_web_view.mm',
132         'web_state/ui/crw_simple_web_view_controller.h',
133         'web_state/ui/crw_static_file_web_view.h',
134         'web_state/ui/crw_static_file_web_view.mm',
135         'web_state/web_state_observer.cc',
136         'web_state/web_state_observer_bridge.mm',
137         'web_state/wk_web_view_ssl_error_util.h',
138         'web_state/wk_web_view_ssl_error_util.mm',
139         'web_state/ui/crw_swipe_recognizer_provider.h',
140         'web_state/ui/crw_touch_tracking_recognizer.h',
141         'web_state/ui/crw_touch_tracking_recognizer.mm',
142         'web_state/ui/crw_ui_simple_web_view_controller.h',
143         'web_state/ui/crw_ui_simple_web_view_controller.mm',
144         'web_state/ui/crw_wk_simple_web_view_controller.h',
145         'web_state/ui/crw_wk_simple_web_view_controller.mm',
146         'web_state/ui/crw_wk_web_view_crash_detector.h',
147         'web_state/ui/crw_wk_web_view_crash_detector.mm',
148         'web_state/ui/web_view_js_utils.h',
149         'web_state/ui/web_view_js_utils.mm',
150         'web_thread.cc',
151         'web_thread_impl.cc',
152         'web_thread_impl.h',
153         'web_view_util.h',
154         'web_view_util.mm',
155       ],
156       'link_settings': {
157         'xcode_settings': {
158           'OTHER_LDFLAGS': [
159             '-weak_framework WebKit',
160           ]
161         },
162       },
163     },
164     # Target shared by ios_web and CrNet.
165     {
166       'target_name': 'ios_web_core',
167       'type': 'static_library',
168       'dependencies': [
169         '../../base/base.gyp:base',
170       ],
171       'include_dirs': [
172         '../..',
173       ],
174       'sources': [
175         'crw_network_activity_indicator_manager.h',
176         'crw_network_activity_indicator_manager.mm',
177         'history_state_util.h',
178         'history_state_util.mm',
179       ],
180     },
181     {
182       'target_name': 'ios_web_js_bundle_ui',
183       'type': 'none',
184       'variables': {
185         'closure_entry_point': '__crWeb.webBundle',
186         'js_bundle_files': [
187           'web_state/js/resources/base.js',
188           'web_state/js/resources/common.js',
189           'web_state/js/resources/console.js',
190           'web_state/js/resources/core.js',
191           'web_state/js/resources/core_dynamic_ui.js',
192           'web_state/js/resources/dialog_overrides.js',
193           'web_state/js/resources/message.js',
194           'web_state/js/resources/message_dynamic_ui.js',
195           'web_state/js/resources/web_bundle_ui.js',
196           'web_state/js/resources/window_open_ui.js',
197         ],
198       },
199       'sources': [
200         'web_state/js/resources/web_bundle_ui.js',
201       ],
202       'link_settings': {
203         'mac_bundle_resources': [
204           '<(SHARED_INTERMEDIATE_DIR)/web_bundle_ui.js',
205         ],
206       },
207       'includes': [
208         'js_compile_bundle.gypi'
209       ],
210     },
211     {
212       'target_name': 'ios_web_js_bundle_wk',
213       'type': 'none',
214       'variables': {
215         'closure_entry_point': '__crWeb.webBundle',
216         'js_bundle_files': [
217           'web_state/js/resources/base.js',
218           'web_state/js/resources/common.js',
219           'web_state/js/resources/console.js',
220           'web_state/js/resources/core.js',
221           'web_state/js/resources/core_dynamic_wk.js',
222           'web_state/js/resources/dialog_overrides.js',
223           'web_state/js/resources/message.js',
224           'web_state/js/resources/message_dynamic_wk.js',
225           'web_state/js/resources/web_bundle_wk.js',
226           'web_state/js/resources/window_open_wk.js',
227         ],
228       },
229       'sources': [
230         'web_state/js/resources/web_bundle_wk.js',
231       ],
232       'link_settings': {
233         'mac_bundle_resources': [
234           '<(SHARED_INTERMEDIATE_DIR)/web_bundle_wk.js',
235         ],
236       },
237       'includes': [
238         'js_compile_bundle.gypi'
239       ],
240     },
241     {
242       'target_name': 'js_resources',
243       'type': 'none',
244       'dependencies': [
245         'ios_web_js_bundle_ui',
246         'ios_web_js_bundle_wk',
247       ],
248       'sources': [
249         'web_state/js/resources/plugin_placeholder.js',
250         'web_state/js/resources/window_id.js',
251       ],
252       'link_settings': {
253         'mac_bundle_resources': [
254           '<(SHARED_INTERMEDIATE_DIR)/plugin_placeholder.js',
255           '<(SHARED_INTERMEDIATE_DIR)/window_id.js',
256         ],
257       },
258       'includes': [
259         'js_compile.gypi'
260       ],
261     },
262     {
263       'target_name': 'test_support_ios_web',
264       'type': 'static_library',
265       'dependencies': [
266         'ios_web',
267         '../../content/content_shell_and_tests.gyp:test_support_content',
268         '../../ios/testing/ios_testing.gyp:ocmock_support',
269         '../../ios/third_party/gcdwebserver/gcdwebserver.gyp:gcdwebserver',
270         '../../testing/gmock.gyp:gmock',
271         '../../testing/gtest.gyp:gtest',
272         '../../third_party/ocmock/ocmock.gyp:ocmock',
273       ],
274       'include_dirs': [
275         '../..',
276       ],
277       'sources': [
278         'public/test/crw_test_js_injection_receiver.h',
279         'public/test/crw_test_js_injection_receiver.mm',
280         'public/test/http_server.h',
281         'public/test/http_server.mm',
282         'public/test/js_test_util.h',
283         'public/test/js_test_util.mm',
284         'public/test/response_providers/data_response_provider.h',
285         'public/test/response_providers/data_response_provider.mm',
286         'public/test/response_providers/file_based_response_provider.h',
287         'public/test/response_providers/file_based_response_provider.mm',
288         'public/test/response_providers/file_based_response_provider_impl.cc',
289         'public/test/response_providers/file_based_response_provider_impl.h',
290         'public/test/response_providers/response_provider.cc',
291         'public/test/response_providers/response_provider.h',
292         'public/test/test_browser_state.cc',
293         'public/test/test_browser_state.h',
294         'public/test/test_web_client.h',
295         'public/test/test_web_client.mm',
296         'public/test/test_web_state.cc',
297         'public/test/test_web_state.h',
298         'public/test/test_web_thread.h',
299         'public/test/test_web_thread_bundle.h',
300         'test/test_web_thread.cc',
301         'test/test_web_thread_bundle.cc',
302       ],
303     },
304     {
305       'target_name': 'user_agent',
306       'type': 'static_library',
307       'include_dirs': [
308         '../..',
309       ],
310       'dependencies': [
311         '../../base/base.gyp:base'
312       ],
313       'sources': [
314         'public/user_agent.h',
315         'public/user_agent.mm',
316       ],
317     },
318   ],