• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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.
4{
5  'variables': {
6    'chromium_code': 1,
7  },
8  'conditions': [
9    ['android_webview_build==0', {
10      'includes': [
11        'android_webview_tests.gypi',
12      ],
13    }],
14  ],
15  'targets': [
16    {
17      'target_name': 'libwebviewchromium',
18      'type': 'shared_library',
19      'android_unmangled_name': 1,
20      'dependencies': [
21        'android_webview_common',
22      ],
23      'conditions': [
24        # Avoid clashes between the versions of this library built with
25        # android_webview_build==1 by using a different name prefix.
26        [ 'android_webview_build==0', {
27          'product_prefix': 'libstandalone',
28        }],
29        # The general approach is to allow the executable target to choose
30        # the allocator, but as in the WebView case we are building a library
31        # only, put the dependency on the allocator here
32        [ 'android_webview_build==1 and android_use_tcmalloc==1', {
33          'dependencies': [
34            '../base/allocator/allocator.gyp:allocator', ],
35        }],
36        [ 'android_webview_build==1 and use_system_skia==0', {
37          # When not using the system skia there are linker warnings about
38          # overriden hidden symbols which there's no easy way to eliminate;
39          # disable them. http://crbug.com/157326
40          'ldflags': [
41            '-Wl,--no-fatal-warnings',
42          ],
43          'ldflags!': [
44            '-Wl,--fatal-warnings',
45          ],
46        }],
47      ],
48      'sources': [
49        'lib/main/webview_entry_point.cc',
50      ],
51    },
52    {
53      'target_name': 'android_webview_pak',
54      'type': 'none',
55      'dependencies': [
56        '<(DEPTH)/content/content_resources.gyp:content_resources',
57        '<(DEPTH)/net/net.gyp:net_resources',
58        '<(DEPTH)/ui/resources/ui_resources.gyp:ui_resources',
59        '<(DEPTH)/webkit/webkit_resources.gyp:webkit_resources',
60      ],
61      'variables': {
62        'repack_path': '<(DEPTH)/tools/grit/grit/format/repack.py',
63      },
64      'actions': [
65        {
66          'action_name': 'repack_android_webview_pack',
67          'variables': {
68            'pak_inputs': [
69              '<(SHARED_INTERMEDIATE_DIR)/content/content_resources.pak',
70              '<(SHARED_INTERMEDIATE_DIR)/net/net_resources.pak',
71              '<(SHARED_INTERMEDIATE_DIR)/ui/ui_resources/ui_resources_100_percent.pak',
72              '<(SHARED_INTERMEDIATE_DIR)/webkit/blink_resources.pak',
73              '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_resources_100_percent.pak',
74            ],
75          },
76          'inputs': [
77            '<(repack_path)',
78            '<@(pak_inputs)',
79          ],
80          'outputs': [
81            '<(PRODUCT_DIR)/android_webview_apk/assets/webviewchromium.pak',
82          ],
83          'action': ['python', '<(repack_path)', '<@(_outputs)',
84                     '<@(pak_inputs)'],
85        }
86      ],
87    },
88    {
89      'target_name': 'android_webview_common',
90      'type': 'static_library',
91      'dependencies': [
92        '../android_webview/native/webview_native.gyp:webview_native',
93        '../components/components.gyp:auto_login_parser',
94        '../components/components.gyp:autofill_content_renderer',
95        '../components/components.gyp:navigation_interception',
96        '../components/components.gyp:visitedlink_browser',
97        '../components/components.gyp:visitedlink_renderer',
98        '../components/components.gyp:web_contents_delegate_android',
99        '../content/content.gyp:content_app_both',
100        '../gpu/gpu.gyp:command_buffer_service',
101        '../gpu/gpu.gyp:gles2_implementation',
102        '../printing/printing.gyp:printing',
103        '../skia/skia.gyp:skia',
104        '../third_party/WebKit/public/blink.gyp:blink',
105        '../ui/gl/gl.gyp:gl',
106        '../ui/shell_dialogs/shell_dialogs.gyp:shell_dialogs',
107        '../webkit/common/gpu/webkit_gpu.gyp:webkit_gpu',
108        'android_webview_pak',
109      ],
110      'include_dirs': [
111        '..',
112        '../skia/config',
113        '<(SHARED_INTERMEDIATE_DIR)/ui/ui_resources/',
114      ],
115      'sources': [
116        'browser/aw_browser_context.cc',
117        'browser/aw_browser_context.h',
118        'browser/aw_browser_main_parts.cc',
119        'browser/aw_browser_main_parts.h',
120        'browser/aw_contents_client_bridge_base.cc',
121        'browser/aw_contents_client_bridge_base.h',
122        'browser/aw_content_browser_client.cc',
123        'browser/aw_content_browser_client.h',
124        'browser/aw_contents_io_thread_client.h',
125        'browser/aw_cookie_access_policy.cc',
126        'browser/aw_cookie_access_policy.h',
127        'browser/aw_download_manager_delegate.cc',
128        'browser/aw_download_manager_delegate.h',
129        'browser/aw_form_database_service.cc',
130        'browser/aw_form_database_service.h',
131        'browser/aw_gl_surface.cc',
132        'browser/aw_gl_surface.h',
133        'browser/aw_http_auth_handler_base.cc',
134        'browser/aw_http_auth_handler_base.h',
135        'browser/aw_javascript_dialog_manager.cc',
136        'browser/aw_javascript_dialog_manager.h',
137        'browser/aw_login_delegate.cc',
138        'browser/aw_login_delegate.h',
139        'browser/aw_pref_store.cc',
140        'browser/aw_pref_store.h',
141        'browser/aw_quota_manager_bridge.cc',
142        'browser/aw_quota_manager_bridge.h',
143        'browser/aw_quota_permission_context.cc',
144        'browser/aw_quota_permission_context.h',
145        'browser/aw_request_interceptor.cc',
146        'browser/aw_request_interceptor.h',
147        'browser/aw_resource_context.cc',
148        'browser/aw_resource_context.h',
149        'browser/aw_result_codes.h',
150        'browser/aw_web_preferences_populater.cc',
151        'browser/aw_web_preferences_populater.h',
152        'browser/browser_view_renderer.h',
153        'browser/find_helper.cc',
154        'browser/find_helper.h',
155        'browser/gpu_memory_buffer_factory_impl.cc',
156        'browser/gpu_memory_buffer_factory_impl.h',
157        'browser/icon_helper.cc',
158        'browser/icon_helper.h',
159        'browser/in_process_view_renderer.cc',
160        'browser/in_process_view_renderer.h',
161        'browser/input_stream.h',
162        'browser/intercepted_request_data.cc',
163        'browser/intercepted_request_data.h',
164        'browser/jni_dependency_factory.h',
165        'browser/gl_view_renderer_manager.cc',
166        'browser/gl_view_renderer_manager.h',
167        'browser/net/android_stream_reader_url_request_job.cc',
168        'browser/net/android_stream_reader_url_request_job.h',
169        'browser/net/aw_network_delegate.cc',
170        'browser/net/aw_network_delegate.h',
171        'browser/net/aw_url_request_context_getter.cc',
172        'browser/net/aw_url_request_context_getter.h',
173        'browser/net/aw_url_request_job_factory.cc',
174        'browser/net/aw_url_request_job_factory.h',
175        'browser/net_disk_cache_remover.cc',
176        'browser/net_disk_cache_remover.h',
177        'browser/net/init_native_callback.h',
178        'browser/net/input_stream_reader.cc',
179        'browser/net/input_stream_reader.h',
180        'browser/renderer_host/aw_render_view_host_ext.cc',
181        'browser/renderer_host/aw_render_view_host_ext.h',
182        'browser/renderer_host/aw_resource_dispatcher_host_delegate.cc',
183        'browser/renderer_host/aw_resource_dispatcher_host_delegate.h',
184        'browser/renderer_host/print_manager.cc',
185        'browser/renderer_host/print_manager.h',
186        'browser/scoped_allow_wait_for_legacy_web_view_api.h',
187        'browser/scoped_app_gl_state_restore.cc',
188        'browser/scoped_app_gl_state_restore.h',
189        'common/android_webview_message_generator.cc',
190        'common/android_webview_message_generator.h',
191        'common/aw_content_client.cc',
192        'common/aw_content_client.h',
193        'common/aw_hit_test_data.cc',
194        'common/aw_hit_test_data.h',
195        'common/aw_resource.h',
196        'common/aw_switches.cc',
197        'common/aw_switches.h',
198        'common/print_messages.cc',
199        'common/print_messages.h',
200        'common/render_view_messages.cc',
201        'common/render_view_messages.h',
202        'common/url_constants.cc',
203        'common/url_constants.h',
204        'lib/aw_browser_dependency_factory_impl.cc',
205        'lib/aw_browser_dependency_factory_impl.h',
206        'lib/main/aw_main_delegate.cc',
207        'lib/main/aw_main_delegate.h',
208        'public/browser/draw_gl.h',
209        'renderer/aw_content_renderer_client.cc',
210        'renderer/aw_content_renderer_client.h',
211        'renderer/aw_key_systems.cc',
212        'renderer/aw_key_systems.h',
213        'renderer/aw_render_process_observer.cc',
214        'renderer/aw_render_process_observer.h',
215        'renderer/aw_render_view_ext.cc',
216        'renderer/aw_render_view_ext.h',
217        'renderer/print_web_view_helper.cc',
218        'renderer/print_web_view_helper.h',
219        'renderer/print_web_view_helper_android.cc',
220        'renderer/print_web_view_helper_linux.cc',
221      ],
222    },
223    {
224      'target_name': 'android_webview_java',
225      'type': 'none',
226      'dependencies': [
227        '../components/components.gyp:navigation_interception_java',
228        '../components/components.gyp:web_contents_delegate_android_java',
229        '../content/content.gyp:content_java',
230        '../ui/android/ui_android.gyp:ui_java',
231      ],
232      'variables': {
233        'java_in_dir': '../android_webview/java',
234      },
235      'includes': [ '../build/java.gypi' ],
236    },
237  ],
238}
239