Skia roll 790ffe3:0b36e6b
[chromium-blink-merge.git] / content / content_child.gypi
blob9a4b4114b5f9130b494c8e94e109847c7d115af0
1 # Copyright 2013 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   'dependencies': [
7     '../base/base.gyp:base',
8     '../components/tracing.gyp:tracing',
9     '../mojo/mojo_base.gyp:mojo_application_bindings',
10     '../mojo/mojo_base.gyp:mojo_environment_chromium',
11     '../skia/skia.gyp:skia',
12     '../ui/base/ui_base.gyp:ui_base',
13     '../ui/gfx/gfx.gyp:gfx',
14     '../ui/gfx/gfx.gyp:gfx_geometry',
15     '../url/url.gyp:url_lib',
16   ],
17   'include_dirs': [
18     '..',
19   ],
20   'export_dependent_settings': [
21     '../base/base.gyp:base',
22   ],
23   'variables': {
24     'public_child_sources': [
25       'public/child/image_decoder_utils.h',
26       'public/child/request_peer.h',
27       'public/child/resource_dispatcher_delegate.h',
28     ],
29     'private_child_sources': [
30       'child/appcache/appcache_backend_proxy.cc',
31       'child/appcache/appcache_backend_proxy.h',
32       'child/appcache/appcache_dispatcher.cc',
33       'child/appcache/appcache_dispatcher.h',
34       'child/appcache/appcache_frontend_impl.cc',
35       'child/appcache/appcache_frontend_impl.h',
36       'child/appcache/web_application_cache_host_impl.cc',
37       'child/appcache/web_application_cache_host_impl.h',
38       'child/assert_matching_enums.cc',
39       'child/blink_platform_impl.cc',
40       'child/blink_platform_impl.h',
41       'child/browser_font_resource_trusted.cc',
42       'child/browser_font_resource_trusted.h',
43       'child/child_histogram_message_filter.cc',
44       'child/child_histogram_message_filter.h',
45       'child/child_message_filter.cc',
46       'child/child_message_filter.h',
47       'child/child_process.cc',
48       'child/child_process.h',
49       'child/child_resource_message_filter.cc',
50       'child/child_resource_message_filter.h',
51       'child/child_shared_bitmap_manager.cc',
52       'child/child_shared_bitmap_manager.h',
53       'child/child_thread.cc',
54       'child/child_thread.h',
55       'child/content_child_helpers.cc',
56       'child/content_child_helpers.h',
57       'child/database_util.cc',
58       'child/database_util.h',
59       'child/db_message_filter.cc',
60       'child/db_message_filter.h',
61       'child/file_info_util.cc',
62       'child/file_info_util.h',
63       'child/fileapi/file_system_dispatcher.cc',
64       'child/fileapi/file_system_dispatcher.h',
65       'child/fileapi/webfilesystem_impl.cc',
66       'child/fileapi/webfilesystem_impl.h',
67       'child/fileapi/webfilewriter_base.cc',
68       'child/fileapi/webfilewriter_base.h',
69       'child/fileapi/webfilewriter_impl.cc',
70       'child/fileapi/webfilewriter_impl.h',
71       'child/fling_animator_impl_android.cc',
72       'child/fling_animator_impl_android.h',
73       'child/fling_curve_configuration.cc',
74       'child/fling_curve_configuration.h',
75       'child/ftp_directory_listing_response_delegate.cc',
76       'child/ftp_directory_listing_response_delegate.h',
77       'child/image_decoder.cc',
78       'child/image_decoder.h',
79       'child/indexed_db/indexed_db_dispatcher.cc',
80       'child/indexed_db/indexed_db_dispatcher.h',
81       'child/indexed_db/indexed_db_key_builders.cc',
82       'child/indexed_db/indexed_db_key_builders.h',
83       'child/indexed_db/indexed_db_message_filter.cc',
84       'child/indexed_db/indexed_db_message_filter.h',
85       'child/indexed_db/webidbcursor_impl.cc',
86       'child/indexed_db/webidbcursor_impl.h',
87       'child/indexed_db/webidbdatabase_impl.cc',
88       'child/indexed_db/webidbdatabase_impl.h',
89       'child/indexed_db/webidbfactory_impl.cc',
90       'child/indexed_db/webidbfactory_impl.h',
91       'child/mojo/mojo_application.cc',
92       'child/mojo/mojo_application.h',
93       'child/multipart_response_delegate.cc',
94       'child/multipart_response_delegate.h',
95       'child/npapi/np_channel_base.cc',
96       'child/npapi/np_channel_base.h',
97       'child/npapi/npobject_base.h',
98       'child/npapi/npobject_proxy.cc',
99       'child/npapi/npobject_proxy.h',
100       'child/npapi/npobject_stub.cc',
101       'child/npapi/npobject_stub.h',
102       'child/npapi/npobject_util.cc',
103       'child/npapi/npobject_util.h',
104       'child/npapi/npruntime_util.cc',
105       'child/npapi/npruntime_util.h',
106       'child/npapi/plugin_host.cc',
107       'child/npapi/plugin_host.h',
108       'child/npapi/plugin_instance.cc',
109       'child/npapi/plugin_instance.h',
110       'child/npapi/plugin_instance_mac.mm',
111       'child/npapi/plugin_lib.cc',
112       'child/npapi/plugin_lib.h',
113       'child/npapi/plugin_stream.cc',
114       'child/npapi/plugin_stream.h',
115       'child/npapi/plugin_stream_posix.cc',
116       'child/npapi/plugin_stream_url.cc',
117       'child/npapi/plugin_stream_url.h',
118       'child/npapi/plugin_stream_win.cc',
119       'child/npapi/plugin_string_stream.cc',
120       'child/npapi/plugin_string_stream.h',
121       'child/npapi/plugin_url_fetcher.cc',
122       'child/npapi/plugin_url_fetcher.h',
123       'child/npapi/plugin_web_event_converter_mac.h',
124       'child/npapi/plugin_web_event_converter_mac.mm',
125       'child/npapi/webplugin.h',
126       'child/npapi/webplugin_accelerated_surface_mac.h',
127       'child/npapi/webplugin_delegate.h',
128       'child/npapi/webplugin_delegate_impl.cc',
129       'child/npapi/webplugin_delegate_impl.h',
130       'child/npapi/webplugin_delegate_impl_android.cc',
131       'child/npapi/webplugin_delegate_impl_aura.cc',
132       'child/npapi/webplugin_delegate_impl_mac.mm',
133       'child/npapi/webplugin_delegate_impl_win.cc',
134       'child/npapi/webplugin_ime_win.cc',
135       'child/npapi/webplugin_ime_win.h',
136       'child/npapi/webplugin_resource_client.h',
137       'child/plugin_message_generator.cc',
138       'child/plugin_message_generator.h',
139       'child/plugin_messages.h',
140       'child/plugin_param_traits.cc',
141       'child/plugin_param_traits.h',
142       'child/power_monitor_broadcast_source.cc',
143       'child/power_monitor_broadcast_source.h',
144       'child/quota_dispatcher.cc',
145       'child/quota_dispatcher.h',
146       'child/quota_message_filter.cc',
147       'child/quota_message_filter.h',
148       'child/request_extra_data.cc',
149       'child/request_extra_data.h',
150       'child/request_info.cc',
151       'child/request_info.h',
152       'child/resource_dispatcher.cc',
153       'child/resource_dispatcher.h',
154       'child/resource_loader_bridge.cc',
155       'child/resource_loader_bridge.h',
156       'child/runtime_features.cc',
157       'child/runtime_features.h',
158       'child/scoped_child_process_reference.cc',
159       'child/scoped_child_process_reference.h',
160       'child/service_worker/service_worker_dispatcher.cc',
161       'child/service_worker/service_worker_dispatcher.h',
162       'child/service_worker/service_worker_handle_reference.cc',
163       'child/service_worker/service_worker_handle_reference.h',
164       'child/service_worker/service_worker_message_filter.cc',
165       'child/service_worker/service_worker_message_filter.h',
166       'child/service_worker/service_worker_network_provider.cc',
167       'child/service_worker/service_worker_network_provider.h',
168       'child/service_worker/service_worker_provider_context.cc',
169       'child/service_worker/service_worker_provider_context.h',
170       'child/service_worker/service_worker_registration_handle_reference.cc',
171       'child/service_worker/service_worker_registration_handle_reference.h',
172       'child/service_worker/web_service_worker_impl.cc',
173       'child/service_worker/web_service_worker_impl.h',
174       'child/service_worker/web_service_worker_provider_impl.cc',
175       'child/service_worker/web_service_worker_provider_impl.h',
176       'child/service_worker/web_service_worker_registration_impl.cc',
177       'child/service_worker/web_service_worker_registration_impl.h',
178       'child/shared_worker_devtools_agent.cc',
179       'child/shared_worker_devtools_agent.h',
180       'child/simple_webmimeregistry_impl.cc',
181       'child/simple_webmimeregistry_impl.h',
182       'child/site_isolation_policy.cc',
183       'child/site_isolation_policy.h',
184       'child/socket_stream_dispatcher.cc',
185       'child/socket_stream_dispatcher.h',
186       'child/sync_load_response.cc',
187       'child/sync_load_response.h',
188       'child/thread_safe_sender.cc',
189       'child/thread_safe_sender.h',
190       'child/threaded_data_provider.cc',
191       'child/threaded_data_provider.h',
192       'child/touch_fling_gesture_curve.cc',
193       'child/touch_fling_gesture_curve.h',
194       'child/web_database_observer_impl.cc',
195       'child/web_database_observer_impl.h',
196       'child/web_discardable_memory_impl.cc',
197       'child/web_discardable_memory_impl.h',
198       'child/web_socket_stream_handle_bridge.h',
199       'child/web_socket_stream_handle_delegate.h',
200       'child/web_socket_stream_handle_impl.cc',
201       'child/web_socket_stream_handle_impl.h',
202       'child/web_url_loader_impl.cc',
203       'child/web_url_loader_impl.h',
204       'child/web_url_request_util.cc',
205       'child/web_url_request_util.h',
206       'child/webblobregistry_impl.cc',
207       'child/webblobregistry_impl.h',
208       'child/webcrypto/algorithm_dispatch.cc',
209       'child/webcrypto/algorithm_dispatch.h',
210       'child/webcrypto/algorithm_implementation.cc',
211       'child/webcrypto/algorithm_implementation.h',
212       'child/webcrypto/algorithm_registry.cc',
213       'child/webcrypto/algorithm_registry.h',
214       'child/webcrypto/crypto_data.cc',
215       'child/webcrypto/crypto_data.h',
216       'child/webcrypto/jwk.cc',
217       'child/webcrypto/jwk.h',
218       'child/webcrypto/platform_crypto.h',
219       'child/webcrypto/status.cc',
220       'child/webcrypto/status.h',
221       'child/webcrypto/structured_clone.cc',
222       'child/webcrypto/structured_clone.h',
223       'child/webcrypto/webcrypto_impl.cc',
224       'child/webcrypto/webcrypto_impl.h',
225       'child/webcrypto/webcrypto_util.cc',
226       'child/webcrypto/webcrypto_util.h',
227       'child/webfallbackthemeengine_impl.cc',
228       'child/webfallbackthemeengine_impl.h',
229       'child/webfileutilities_impl.cc',
230       'child/webfileutilities_impl.h',
231       'child/webmessageportchannel_impl.cc',
232       'child/webmessageportchannel_impl.h',
233       'child/websocket_bridge.cc',
234       'child/websocket_bridge.h',
235       'child/websocket_dispatcher.cc',
236       'child/websocket_dispatcher.h',
237       'child/webthemeengine_impl_android.cc',
238       'child/webthemeengine_impl_android.h',
239       'child/webthemeengine_impl_default.cc',
240       'child/webthemeengine_impl_default.h',
241       'child/webthemeengine_impl_mac.cc',
242       'child/webthemeengine_impl_mac.h',
243       'child/webthread_impl.cc',
244       'child/webthread_impl.h',
245       'child/weburlresponse_extradata_impl.cc',
246       'child/weburlresponse_extradata_impl.h',
247       'child/worker_task_runner.cc',
248       'child/worker_task_runner.h',
249       'child/worker_thread_task_runner.cc',
250       'child/worker_thread_task_runner.h',
251     ],
252     'webcrypto_nss_sources': [
253       'child/webcrypto/nss/aes_cbc_nss.cc',
254       'child/webcrypto/nss/aes_gcm_nss.cc',
255       'child/webcrypto/nss/aes_key_nss.cc',
256       'child/webcrypto/nss/aes_key_nss.h',
257       'child/webcrypto/nss/aes_kw_nss.cc',
258       'child/webcrypto/nss/hmac_nss.cc',
259       'child/webcrypto/nss/key_nss.cc',
260       'child/webcrypto/nss/key_nss.h',
261       'child/webcrypto/nss/rsa_key_nss.cc',
262       'child/webcrypto/nss/rsa_key_nss.h',
263       'child/webcrypto/nss/rsa_oaep_nss.cc',
264       'child/webcrypto/nss/rsa_ssa_nss.cc',
265       'child/webcrypto/nss/sha_nss.cc',
266       'child/webcrypto/nss/sym_key_nss.cc',
267       'child/webcrypto/nss/sym_key_nss.h',
268       'child/webcrypto/nss/util_nss.cc',
269       'child/webcrypto/nss/util_nss.h',
270     ],
271     'webcrypto_openssl_sources': [
272       'child/webcrypto/openssl/aes_cbc_openssl.cc',
273       'child/webcrypto/openssl/aes_ctr_openssl.cc',
274       'child/webcrypto/openssl/aes_gcm_openssl.cc',
275       'child/webcrypto/openssl/aes_key_openssl.cc',
276       'child/webcrypto/openssl/aes_key_openssl.h',
277       'child/webcrypto/openssl/aes_kw_openssl.cc',
278       'child/webcrypto/openssl/hmac_openssl.cc',
279       'child/webcrypto/openssl/key_openssl.cc',
280       'child/webcrypto/openssl/key_openssl.h',
281       'child/webcrypto/openssl/rsa_key_openssl.cc',
282       'child/webcrypto/openssl/rsa_key_openssl.h',
283       'child/webcrypto/openssl/rsa_oaep_openssl.cc',
284       'child/webcrypto/openssl/rsa_ssa_openssl.cc',
285       'child/webcrypto/openssl/sha_openssl.cc',
286       'child/webcrypto/openssl/sym_key_openssl.cc',
287       'child/webcrypto/openssl/sym_key_openssl.h',
288       'child/webcrypto/openssl/util_openssl.cc',
289       'child/webcrypto/openssl/util_openssl.h',
290     ],
291   },
292   'sources': [
293     '<@(public_child_sources)',
294     '<@(private_child_sources)',
295   ],
296   'conditions': [
297     ['use_default_render_theme==0',
298       {
299         'sources/': [
300           ['exclude', 'child/webthemeengine_impl_default.cc'],
301           ['exclude', 'child/webthemeengine_impl_default.h'],
302         ],
303       }
304     ],
305     ['OS=="android"', {
306       'includes': [
307         '../build/android/cpufeatures.gypi',
308       ],
309     }],
310     ['enable_plugins==0', {
311       'sources!': [
312         'child/browser_font_resource_trusted.cc',
313       ],
314       'sources/': [
315         ['exclude', '^child/npapi/plugin_'],
316         ['exclude', '^child/npapi/webplugin_'],
317       ],
318     }],
319     ['OS=="ios"', {
320       'sources/': [
321         # iOS only needs a small portion of content; exclude all the
322         # implementation, and re-include what is used.
323         ['exclude', '\\.(cc|mm)$'],
324       ],
325     }, {  # OS!="ios"
326       'dependencies': [
327         'app/resources/content_resources.gyp:content_resources',
328         'app/strings/content_strings.gyp:content_strings',
329         '../storage/storage_common.gyp:storage_common',
330         '../third_party/WebKit/public/blink.gyp:blink',
331         '../third_party/WebKit/public/blink_resources.gyp:blink_resources',
332         '../third_party/npapi/npapi.gyp:npapi',
333       ],
334     }],
335     ['use_aura==1', {
336       'sources!': [
337         'child/npapi/webplugin_delegate_impl_mac.mm',
338       ],
339     }],
340     ['OS=="win"', {
341       'sources!': [
342         'child/npapi/webplugin_delegate_impl_aura.cc',
343       ],
344     }],
345     ['use_openssl==1', {
346       'sources': [
347         '<@(webcrypto_openssl_sources)',
348       ],
349       'dependencies': [
350         '../third_party/boringssl/boringssl.gyp:boringssl',
351       ],
352     }, {
353       'sources': [
354         '<@(webcrypto_nss_sources)',
355       ],
356       'conditions': [
357         ['os_posix == 1 and OS != "mac" and OS != "ios" and OS != "android"', {
358           'dependencies': [
359             '../build/linux/system.gyp:ssl',
360           ],
361         }, {
362           'dependencies': [
363             '../third_party/nss/nss.gyp:nspr',
364             '../third_party/nss/nss.gyp:nss',
365           ],
366         }],
367       ],
368     }],
369   ],