Set RequestContextObject for PNaCl pexe fetches, to fix On-Demand update.
[chromium-blink-merge.git] / android_webview / android_webview.gyp
blob804968327e447bcc90b1f274636f1046dda94a52
1 # Copyright 2009 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.
5   'variables': {
6     'chromium_code': 1,
7   },
8   'targets': [
9     {
10       'target_name': 'libwebviewchromium',
11       'type': 'shared_library',
12       'android_unmangled_name': 1,
13       'dependencies': [
14         'android_webview_common',
15       ],
16       'conditions': [
17         # Avoid clashes between the versions of this library built with
18         # android_webview_build==1 by using a different name prefix.
19         [ 'android_webview_build==0', {
20           'product_prefix': 'libstandalone',
21         }],
22         [ 'android_webview_build==1', {
23           # When building inside the android tree we also need to depend on all
24           # the java sources generated from templates which will be needed by
25           # android_webview_java in android_webview/java_library_common.mk.
26           'dependencies': [
27             '../base/base.gyp:base_java_application_state',
28             '../base/base.gyp:base_java_memory_pressure_level_list',
29             '../content/content.gyp:content_gamepad_mapping',
30             '../content/content.gyp:gesture_event_type_java',
31             '../content/content.gyp:page_transition_types_java',
32             '../content/content.gyp:popup_item_type_java',
33             '../content/content.gyp:result_codes_java',
34             '../content/content.gyp:screen_orientation_values_java',
35             '../content/content.gyp:selection_event_type_java',
36             '../content/content.gyp:speech_recognition_error_java',
37             '../media/media.gyp:media_android_imageformat_list',
38             '../net/net.gyp:cert_verify_status_android_java',
39             '../net/net.gyp:certificate_mime_types_java',
40             '../net/net.gyp:net_errors_java',
41             '../net/net.gyp:private_key_types_java',
42             '../ui/android/ui_android.gyp:bitmap_format_java',
43             '../ui/android/ui_android.gyp:window_open_disposition_java',
44           ],
45         }],
46         [ 'android_webview_build==1 and use_system_skia==0', {
47           # When not using the system skia there are linker warnings about
48           # overriden hidden symbols which there's no easy way to eliminate;
49           # disable them. http://crbug.com/157326
50           'ldflags': [
51             '-Wl,--no-fatal-warnings',
52           ],
53           'ldflags!': [
54             '-Wl,--fatal-warnings',
55           ],
56         }],
57       ],
58       'sources': [
59         'lib/main/webview_entry_point.cc',
60       ],
61     },
62     {
63       'target_name': 'android_webview_pak',
64       'type': 'none',
65       'dependencies': [
66         '<(DEPTH)/content/app/resources/content_resources.gyp:content_resources',
67         '<(DEPTH)/net/net.gyp:net_resources',
68         '<(DEPTH)/third_party/WebKit/public/blink_resources.gyp:blink_resources',
69         '<(DEPTH)/ui/resources/ui_resources.gyp:ui_resources',
70       ],
71       'actions': [
72         {
73           'action_name': 'repack_android_webview_pack',
74           'variables': {
75             'pak_inputs': [
76               '<(SHARED_INTERMEDIATE_DIR)/blink/public/resources/blink_resources.pak',
77               '<(SHARED_INTERMEDIATE_DIR)/content/app/resources/content_resources_100_percent.pak',
78               '<(SHARED_INTERMEDIATE_DIR)/content/content_resources.pak',
79               '<(SHARED_INTERMEDIATE_DIR)/net/net_resources.pak',
80               '<(SHARED_INTERMEDIATE_DIR)/ui/resources/ui_resources_100_percent.pak',
81             ],
82             'pak_output': '<(PRODUCT_DIR)/android_webview_apk/assets/webviewchromium.pak',
83           },
84          'includes': [ '../build/repack_action.gypi' ],
85         },
86         {
87           'action_name': 'add_en_US_pak_locale',
88           'variables': {
89             'pak_inputs': ['<(SHARED_INTERMEDIATE_DIR)/content/app/strings/content_strings_en-US.pak'],
90             'pak_output': '<(PRODUCT_DIR)/android_webview_apk/assets/en-US.pak',
91           },
92          'includes': [ '../build/repack_action.gypi' ],
93         }
94       ],
95     },
96     {
97       'target_name': 'android_webview_strings_grd',
98       'android_unmangled_name': 1,
99       'type': 'none',
100       'variables': {
101         'grd_file': '../android_webview/java/strings/android_webview_strings.grd',
102       },
103       'includes': [
104           '../build/java_strings_grd.gypi',
105       ],
106     },
107     {
108       'target_name': 'android_webview_common',
109       'type': 'static_library',
110       'dependencies': [
111         '../android_webview/native/webview_native.gyp:webview_native',
112         '../components/components.gyp:auto_login_parser',
113         '../components/components.gyp:autofill_content_renderer',
114         '../components/components.gyp:cdm_browser',
115         '../components/components.gyp:cdm_renderer',
116         '../components/components.gyp:data_reduction_proxy_browser',
117         '../components/components.gyp:navigation_interception',
118         '../components/components.gyp:visitedlink_browser',
119         '../components/components.gyp:visitedlink_renderer',
120         '../components/components.gyp:web_contents_delegate_android',
121         '../content/content.gyp:content_app_both',
122         '../content/content.gyp:content_browser',
123         '../gpu/command_buffer/command_buffer.gyp:gles2_utils',
124         '../gpu/gpu.gyp:command_buffer_service',
125         '../gpu/gpu.gyp:gles2_implementation',
126         '../gpu/gpu.gyp:gl_in_process_context',
127         '../media/media.gyp:media',
128         '../printing/printing.gyp:printing',
129         '../skia/skia.gyp:skia',
130         '../third_party/WebKit/public/blink.gyp:blink',
131         '../v8/tools/gyp/v8.gyp:v8',
132         '../ui/gl/gl.gyp:gl',
133         '../ui/shell_dialogs/shell_dialogs.gyp:shell_dialogs',
134         '../webkit/common/gpu/webkit_gpu.gyp:webkit_gpu',
135         'android_webview_pak',
136       ],
137       'include_dirs': [
138         '..',
139         '../skia/config',
140         '<(SHARED_INTERMEDIATE_DIR)/ui/resources/',
141       ],
142       'sources': [
143         'browser/aw_browser_context.cc',
144         'browser/aw_browser_context.h',
145         'browser/aw_browser_main_parts.cc',
146         'browser/aw_browser_main_parts.h',
147         'browser/aw_browser_permission_request_delegate.h',
148         'browser/aw_contents_client_bridge_base.cc',
149         'browser/aw_contents_client_bridge_base.h',
150         'browser/aw_content_browser_client.cc',
151         'browser/aw_content_browser_client.h',
152         'browser/aw_contents_io_thread_client.h',
153         'browser/aw_cookie_access_policy.cc',
154         'browser/aw_cookie_access_policy.h',
155         'browser/aw_download_manager_delegate.cc',
156         'browser/aw_download_manager_delegate.h',
157         'browser/aw_form_database_service.cc',
158         'browser/aw_form_database_service.h',
159         'browser/aw_gl_surface.cc',
160         'browser/aw_gl_surface.h',
161         'browser/aw_http_auth_handler_base.cc',
162         'browser/aw_http_auth_handler_base.h',
163         'browser/aw_javascript_dialog_manager.cc',
164         'browser/aw_javascript_dialog_manager.h',
165         'browser/aw_login_delegate.cc',
166         'browser/aw_login_delegate.h',
167         'browser/aw_pref_store.cc',
168         'browser/aw_pref_store.h',
169         'browser/aw_quota_manager_bridge.cc',
170         'browser/aw_quota_manager_bridge.h',
171         'browser/aw_quota_permission_context.cc',
172         'browser/aw_quota_permission_context.h',
173         'browser/aw_request_interceptor.cc',
174         'browser/aw_request_interceptor.h',
175         'browser/aw_resource_context.cc',
176         'browser/aw_resource_context.h',
177         'browser/aw_result_codes.h',
178         'browser/aw_web_preferences_populater.cc',
179         'browser/aw_web_preferences_populater.h',
180         'browser/aw_web_resource_response.cc',
181         'browser/aw_web_resource_response.h',
182         'browser/browser_view_renderer.cc',
183         'browser/browser_view_renderer.h',
184         'browser/browser_view_renderer_client.h',
185         'browser/deferred_gpu_command_service.cc',
186         'browser/deferred_gpu_command_service.h',
187         'browser/find_helper.cc',
188         'browser/find_helper.h',
189         'browser/global_tile_manager.cc',
190         'browser/global_tile_manager.h',
191         'browser/global_tile_manager_client.h',
192         'browser/gpu_memory_buffer_factory_impl.cc',
193         'browser/gpu_memory_buffer_factory_impl.h',
194         'browser/hardware_renderer.cc',
195         'browser/hardware_renderer.h',
196         'browser/icon_helper.cc',
197         'browser/icon_helper.h',
198         'browser/input_stream.h',
199         'browser/jni_dependency_factory.h',
200         'browser/gl_view_renderer_manager.cc',
201         'browser/gl_view_renderer_manager.h',
202         'browser/net/android_stream_reader_url_request_job.cc',
203         'browser/net/android_stream_reader_url_request_job.h',
204         'browser/net/aw_network_delegate.cc',
205         'browser/net/aw_network_delegate.h',
206         'browser/net/aw_url_request_context_getter.cc',
207         'browser/net/aw_url_request_context_getter.h',
208         'browser/net/aw_url_request_job_factory.cc',
209         'browser/net/aw_url_request_job_factory.h',
210         'browser/net_disk_cache_remover.cc',
211         'browser/net_disk_cache_remover.h',
212         'browser/net/init_native_callback.h',
213         'browser/net/input_stream_reader.cc',
214         'browser/net/input_stream_reader.h',
215         'browser/parent_compositor_draw_constraints.cc',
216         'browser/parent_compositor_draw_constraints.h',
217         'browser/parent_output_surface.cc',
218         'browser/parent_output_surface.h',
219         'browser/renderer_host/aw_render_view_host_ext.cc',
220         'browser/renderer_host/aw_render_view_host_ext.h',
221         'browser/renderer_host/aw_resource_dispatcher_host_delegate.cc',
222         'browser/renderer_host/aw_resource_dispatcher_host_delegate.h',
223         'browser/renderer_host/print_manager.cc',
224         'browser/renderer_host/print_manager.h',
225         'browser/scoped_allow_wait_for_legacy_web_view_api.h',
226         'browser/scoped_app_gl_state_restore.cc',
227         'browser/scoped_app_gl_state_restore.h',
228         'browser/shared_renderer_state.cc',
229         'browser/shared_renderer_state.h',
230         'common/android_webview_message_generator.cc',
231         'common/android_webview_message_generator.h',
232         'common/aw_content_client.cc',
233         'common/aw_content_client.h',
234         'common/aw_hit_test_data.cc',
235         'common/aw_hit_test_data.h',
236         'common/aw_resource.h',
237         'common/aw_switches.cc',
238         'common/aw_switches.h',
239         'common/devtools_instrumentation.h',
240         'common/print_messages.cc',
241         'common/print_messages.h',
242         'common/render_view_messages.cc',
243         'common/render_view_messages.h',
244         'common/url_constants.cc',
245         'common/url_constants.h',
246         'lib/aw_browser_dependency_factory_impl.cc',
247         'lib/aw_browser_dependency_factory_impl.h',
248         'lib/main/aw_main_delegate.cc',
249         'lib/main/aw_main_delegate.h',
250         'public/browser/draw_gl.h',
251         'renderer/aw_content_renderer_client.cc',
252         'renderer/aw_content_renderer_client.h',
253         'renderer/aw_execution_termination_filter.cc',
254         'renderer/aw_execution_termination_filter.h',
255         'renderer/aw_key_systems.cc',
256         'renderer/aw_key_systems.h',
257         'renderer/aw_permission_client.cc',
258         'renderer/aw_permission_client.h',
259         'renderer/aw_render_process_observer.cc',
260         'renderer/aw_render_process_observer.h',
261         'renderer/aw_render_frame_ext.cc',
262         'renderer/aw_render_frame_ext.h',
263         'renderer/aw_render_view_ext.cc',
264         'renderer/aw_render_view_ext.h',
265         'renderer/print_web_view_helper.cc',
266         'renderer/print_web_view_helper.h',
267         'renderer/print_web_view_helper_android.cc',
268         'renderer/print_web_view_helper_linux.cc',
269         'renderer/print_render_frame_observer.cc',
270         'renderer/print_render_frame_observer.h',
271       ],
272     },
273   ],
274   'conditions': [
275     ['android_webview_build==0', {
276       'includes': [
277         'android_webview_tests.gypi',
278       ],
279       'targets': [
280         {
281           'target_name': 'android_webview_java',
282           'type': 'none',
283           'dependencies': [
284             '../components/components.gyp:navigation_interception_java',
285             '../components/components.gyp:web_contents_delegate_android_java',
286             '../content/content.gyp:content_java',
287             '../ui/android/ui_android.gyp:ui_java',
288             'android_webview_strings_grd',
289           ],
290           'variables': {
291             'java_in_dir': '../android_webview/java',
292           },
293           'includes': [ '../build/java.gypi' ],
294         },
295       ],
296      }, {  # android_webview_build==1
297       'targets': [
298         {
299           'target_name': 'android_webview_jarjar_ui_resources',
300           'android_unmangled_name': 1,
301           'type': 'none',
302           'variables': {
303             'res_dir': '../ui/android/java/res',
304             'rules_file': '../android_webview/build/jarjar-rules.txt',
305           },
306           'includes': ['../android_webview/build/jarjar_resources.gypi'],
307         },
308         {
309           'target_name': 'android_webview_jarjar_content_resources',
310           'android_unmangled_name': 1,
311           'type': 'none',
312           'variables': {
313             'res_dir': '../content/public/android/java/res',
314             'rules_file': '../android_webview/build/jarjar-rules.txt',
315           },
316           'includes': ['../android_webview/build/jarjar_resources.gypi'],
317         },
318         {
319           'target_name': 'android_webview_resources',
320           'type': 'none',
321           'android_unmangled_name': 1,
322           'dependencies': [
323             '../content/content.gyp:content_strings_grd',
324             '../ui/android/ui_android.gyp:ui_strings_grd',
325             'android_webview_jarjar_content_resources',
326             'android_webview_jarjar_ui_resources',
327             'android_webview_strings_grd',
328           ],
329         },
330       ],
331     }],
332   ],