OLD | NEW |
| (Empty) |
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. | |
4 | |
5 { | |
6 'variables': { | |
7 'android_support_v13_target%': | |
8 '../third_party/android_tools/android_tools.gyp:android_support_v13_java
lib', | |
9 'cast_build_release': 'internal/build/cast_build_release', | |
10 'cast_is_debug_build%': 0, | |
11 # Refers to enum CastProductType in components/metrics/proto/cast_logs.proto | |
12 'cast_product_type%': 0, # CAST_PRODUCT_TYPE_UNKNOWN | |
13 'chromium_code': 1, | |
14 'chromecast_branding%': 'public', | |
15 'disable_display%': 0, | |
16 'ozone_platform_cast%': 0, | |
17 }, | |
18 'includes': [ | |
19 'chromecast_tests.gypi', | |
20 ], | |
21 'target_defaults': { | |
22 'include_dirs': [ | |
23 '..', # Root of Chromium checkout | |
24 ], | |
25 'target_conditions': [ | |
26 ['_type=="executable"', { | |
27 'ldflags': [ | |
28 # Allow OEMs to override default libraries that are shipped with | |
29 # cast receiver package by installed OEM-specific libraries in | |
30 # /oem_cast_shlib. | |
31 '-Wl,-rpath=/oem_cast_shlib', | |
32 # Some shlibs are built in same directory of executables. | |
33 '-Wl,-rpath=\$$ORIGIN', | |
34 ], | |
35 }], | |
36 ], | |
37 }, | |
38 'targets': [ | |
39 # Public API target for OEM partners to replace shlibs. | |
40 { | |
41 'target_name': 'cast_public_api', | |
42 'type': '<(component)', | |
43 'sources': [ | |
44 'public/avsettings.h', | |
45 'public/cast_egl_platform.h', | |
46 'public/cast_egl_platform_shlib.h', | |
47 'public/cast_media_shlib.h', | |
48 'public/cast_sys_info.h', | |
49 'public/chromecast_export.h', | |
50 'public/graphics_properties_shlib.h', | |
51 'public/graphics_types.h', | |
52 'public/media_codec_support.h', | |
53 'public/media/cast_decoder_buffer.h', | |
54 'public/media/cast_decrypt_config.h', | |
55 'public/media/cast_key_system.h', | |
56 'public/media/decoder_config.h', | |
57 'public/media/decrypt_context.h', | |
58 'public/media/media_pipeline_backend.h', | |
59 'public/media/media_pipeline_device_params.h', | |
60 'public/media/stream_id.h', | |
61 'public/osd_plane.h', | |
62 'public/osd_plane_shlib.h', | |
63 'public/osd_surface.h', | |
64 'public/task_runner.h', | |
65 'public/video_plane.h', | |
66 ], | |
67 'direct_dependent_settings': { | |
68 'include_dirs': [ | |
69 'public/', | |
70 ], | |
71 }, | |
72 }, | |
73 { | |
74 'target_name': 'cast_base', | |
75 'type': '<(component)', | |
76 'dependencies': [ | |
77 '../base/base.gyp:base', | |
78 ], | |
79 'sources': [ | |
80 'base/android/dumpstate_writer.cc', | |
81 'base/android/dumpstate_writer.h', | |
82 'base/android/system_time_change_notifier_android.cc', | |
83 'base/android/system_time_change_notifier_android.h', | |
84 'base/bind_to_task_runner.h', | |
85 'base/cast_constants.cc', | |
86 'base/cast_constants.h', | |
87 'base/cast_paths.cc', | |
88 'base/cast_paths.h', | |
89 'base/cast_resource.h', | |
90 'base/cast_resource.cc', | |
91 'base/chromecast_config_android.cc', | |
92 'base/chromecast_config_android.h', | |
93 'base/chromecast_switches.cc', | |
94 'base/chromecast_switches.h', | |
95 'base/device_capabilities.h', | |
96 'base/device_capabilities_impl.cc', | |
97 'base/device_capabilities_impl.h', | |
98 'base/error_codes.cc', | |
99 'base/error_codes.h', | |
100 'base/metrics/cast_histograms.h', | |
101 'base/metrics/cast_metrics_helper.cc', | |
102 'base/metrics/cast_metrics_helper.h', | |
103 'base/metrics/grouped_histogram.cc', | |
104 'base/metrics/grouped_histogram.h', | |
105 'base/path_utils.cc', | |
106 'base/path_utils.h', | |
107 'base/pref_names.cc', | |
108 'base/pref_names.h', | |
109 'base/process_utils.cc', | |
110 'base/process_utils.h', | |
111 'base/scoped_temp_file.cc', | |
112 'base/scoped_temp_file.h', | |
113 'base/serializers.cc', | |
114 'base/serializers.h', | |
115 'base/system_time_change_notifier.cc', | |
116 'base/system_time_change_notifier.h', | |
117 'base/task_runner_impl.cc', | |
118 'base/task_runner_impl.h', | |
119 ], | |
120 'conditions': [ | |
121 ['OS=="android"', { | |
122 'dependencies': [ | |
123 'cast_jni_headers', | |
124 ], | |
125 }], | |
126 ], | |
127 }, # end of target 'cast_base' | |
128 { | |
129 'target_name': 'cast_component', | |
130 'type': '<(component)', | |
131 'dependencies': [ | |
132 '../base/base.gyp:base', | |
133 ], | |
134 'sources': [ | |
135 'base/component/component.cc', | |
136 'base/component/component.h', | |
137 'base/component/component_internal.h', | |
138 ], | |
139 }, # end of target 'cast_component' | |
140 { | |
141 'target_name': 'cast_crash', | |
142 'type': '<(component)', | |
143 'include_dirs': [ | |
144 # TODO(gfhuang): we should not need to include this directly, but | |
145 # somehow depending on component.gyp:breakpad_component is not | |
146 # working as expected. | |
147 '../breakpad/src', | |
148 ], | |
149 'dependencies': [ | |
150 'cast_base', | |
151 'cast_version_header', | |
152 '../breakpad/breakpad.gyp:breakpad_client', | |
153 ], | |
154 'sources': [ | |
155 'crash/app_state_tracker.cc', | |
156 'crash/app_state_tracker.h', | |
157 'crash/cast_crash_keys.cc', | |
158 'crash/cast_crash_keys.h', | |
159 'crash/cast_crashdump_uploader.cc', | |
160 'crash/cast_crashdump_uploader.h', | |
161 'crash/linux/crash_util.cc', | |
162 'crash/linux/crash_util.h', | |
163 'crash/linux/dummy_minidump_generator.cc', | |
164 'crash/linux/dummy_minidump_generator.h', | |
165 'crash/linux/dump_info.cc', | |
166 'crash/linux/dump_info.h', | |
167 'crash/linux/minidump_generator.h', | |
168 'crash/linux/synchronized_minidump_manager.cc', | |
169 'crash/linux/synchronized_minidump_manager.h', | |
170 'crash/linux/minidump_params.cc', | |
171 'crash/linux/minidump_params.h', | |
172 'crash/linux/minidump_writer.cc', | |
173 'crash/linux/minidump_writer.h', | |
174 ], | |
175 }, # end of target 'cast_crash' | |
176 { | |
177 'target_name': 'cast_crash_client', | |
178 'type': '<(component)', | |
179 'dependencies': [ | |
180 'cast_crash', | |
181 '../breakpad/breakpad.gyp:breakpad_client', | |
182 '../components/components.gyp:crash_component', | |
183 '../content/content.gyp:content_common', | |
184 ], | |
185 'include_dirs': [ | |
186 '../breakpad/src', | |
187 ], | |
188 'sources' : [ | |
189 'app/android/cast_crash_reporter_client_android.cc', | |
190 'app/android/cast_crash_reporter_client_android.h', | |
191 'app/android/crash_handler.cc', | |
192 'app/android/crash_handler.h', | |
193 'app/linux/cast_crash_reporter_client.cc', | |
194 'app/linux/cast_crash_reporter_client.h', | |
195 ], | |
196 'conditions': [ | |
197 ['OS=="android"', { | |
198 'dependencies': [ | |
199 'cast_jni_headers', | |
200 ], | |
201 }], | |
202 ], | |
203 }, # end of target 'cast_crash_client' | |
204 { | |
205 'target_name': 'cast_crypto', | |
206 'type': '<(component)', | |
207 'dependencies': [ | |
208 '../base/base.gyp:base', | |
209 ], | |
210 'sources': [ | |
211 'crypto/signature_cache.cc', | |
212 'crypto/signature_cache.h', | |
213 ], | |
214 }, | |
215 { | |
216 'target_name': 'cast_net', | |
217 'type': '<(component)', | |
218 'sources': [ | |
219 'net/connectivity_checker.cc', | |
220 'net/connectivity_checker.h', | |
221 'net/connectivity_checker_impl.cc', | |
222 'net/connectivity_checker_impl.h', | |
223 'net/fake_connectivity_checker.cc', | |
224 'net/fake_connectivity_checker.h', | |
225 'net/net_switches.cc', | |
226 'net/net_switches.h', | |
227 'net/net_util_cast.cc', | |
228 'net/net_util_cast.h', | |
229 ], | |
230 'conditions': [ | |
231 ['OS!="android"', { | |
232 'sources': [ | |
233 'net/network_change_notifier_factory_cast.cc', | |
234 'net/network_change_notifier_factory_cast.h', | |
235 ], | |
236 }], | |
237 ], | |
238 }, | |
239 # GN target: //chromecast/app:resources | |
240 { | |
241 'target_name': 'cast_shell_resources', | |
242 'type': 'none', | |
243 'variables': { | |
244 'grit_out_dir': '<(SHARED_INTERMEDIATE_DIR)/chromecast', | |
245 }, | |
246 'actions': [ | |
247 { | |
248 'action_name': 'cast_shell_resources', | |
249 'variables': { | |
250 'grit_grd_file': 'app/resources/shell_resources.grd', | |
251 'grit_resource_ids': 'app/resources/resource_ids', | |
252 }, | |
253 'includes': [ '../build/grit_action.gypi' ], | |
254 }, | |
255 ], | |
256 'includes': [ '../build/grit_target.gypi' ], | |
257 }, | |
258 # GN target: //chromecast:cast_shell_pak | |
259 { | |
260 'target_name': 'cast_shell_pak', | |
261 'type': 'none', | |
262 'dependencies': [ | |
263 'cast_shell_resources', | |
264 '../content/app/resources/content_resources.gyp:content_resources', | |
265 '../content/app/strings/content_strings.gyp:content_strings', | |
266 '../net/net.gyp:net_resources', | |
267 '../third_party/WebKit/public/blink_resources.gyp:blink_resources', | |
268 '../ui/resources/ui_resources.gyp:ui_resources', | |
269 '../ui/strings/ui_strings.gyp:ui_strings', | |
270 ], | |
271 'actions': [ | |
272 { | |
273 'action_name': 'repack_cast_shell_pak', | |
274 'variables': { | |
275 'pak_inputs': [ | |
276 '<(SHARED_INTERMEDIATE_DIR)/blink/public/resources/blink_resources
.pak', | |
277 '<(SHARED_INTERMEDIATE_DIR)/blink/public/resources/blink_image_res
ources_100_percent.pak', | |
278 '<(SHARED_INTERMEDIATE_DIR)/chromecast/shell_resources.pak', | |
279 '<(SHARED_INTERMEDIATE_DIR)/content/content_resources.pak', | |
280 '<(SHARED_INTERMEDIATE_DIR)/content/app/resources/content_resource
s_100_percent.pak', | |
281 '<(SHARED_INTERMEDIATE_DIR)/content/app/strings/content_strings_en
-US.pak', | |
282 '<(SHARED_INTERMEDIATE_DIR)/net/net_resources.pak', | |
283 '<(SHARED_INTERMEDIATE_DIR)/ui/resources/ui_resources_100_percent.
pak', | |
284 '<(SHARED_INTERMEDIATE_DIR)/ui/resources/webui_resources.pak', | |
285 '<(SHARED_INTERMEDIATE_DIR)/ui/strings/app_locale_settings_en-US.p
ak', | |
286 '<(SHARED_INTERMEDIATE_DIR)/ui/strings/ui_strings_en-US.pak', | |
287 ], | |
288 'conditions': [ | |
289 ['chromecast_branding!="public"', { | |
290 'pak_inputs': [ | |
291 '<(SHARED_INTERMEDIATE_DIR)/chromecast/internal/cast_shell_int
ernal.pak', | |
292 ], | |
293 }], | |
294 ], | |
295 'pak_output': '<(PRODUCT_DIR)/assets/cast_shell.pak', | |
296 }, | |
297 'includes': [ '../build/repack_action.gypi' ], | |
298 }, | |
299 ], | |
300 'conditions': [ | |
301 ['chromecast_branding!="public"', { | |
302 'dependencies': [ | |
303 'internal/chromecast_resources.gyp:cast_shell_internal_pak', | |
304 ], | |
305 }], | |
306 ], | |
307 }, # end of target 'cast_shell_pak' | |
308 # This target contains all content-embedder implementation that is | |
309 # non-platform-specific. | |
310 # GN target: This target is dissolved into many targets on GN. | |
311 { | |
312 'target_name': 'cast_shell_common', | |
313 'type': '<(component)', | |
314 'dependencies': [ | |
315 'cast_base', | |
316 'cast_crash_client', | |
317 'cast_net', | |
318 'cast_shell_pak', | |
319 'cast_shell_resources', | |
320 'cast_sys_info', | |
321 'cast_version_header', | |
322 'chromecast_features', | |
323 'chromecast_locales.gyp:chromecast_locales_pak', | |
324 'chromecast_locales.gyp:chromecast_settings', | |
325 'media/media.gyp:media_base', | |
326 'media/media.gyp:media_cdm', | |
327 'media/media.gyp:media_features', | |
328 '../base/base.gyp:base', | |
329 '../components/components.gyp:breakpad_host', | |
330 '../components/components.gyp:cdm_renderer', | |
331 '../components/components.gyp:component_metrics_proto', | |
332 '../components/components.gyp:crash_component', | |
333 '../components/components.gyp:devtools_discovery', | |
334 '../components/components.gyp:devtools_http_handler', | |
335 '../components/components.gyp:network_hints_browser', | |
336 '../components/components.gyp:network_hints_renderer', | |
337 '../components/components.gyp:metrics', | |
338 '../components/components.gyp:metrics_gpu', | |
339 '../components/components.gyp:metrics_net', | |
340 '../components/components.gyp:metrics_profiler', | |
341 | |
342 # TODO(gfhuang): Eliminate this dependency if ScreenInfoMetricsProvider | |
343 # isn't needed. crbug.com/541577 | |
344 '../components/components.gyp:metrics_ui', | |
345 '../content/content.gyp:content', | |
346 '../content/content.gyp:content_app_both', | |
347 '../skia/skia.gyp:skia', | |
348 '../third_party/WebKit/public/blink.gyp:blink', | |
349 '../third_party/widevine/cdm/widevine_cdm.gyp:widevine_cdm_version_h', | |
350 ], | |
351 'sources': [ | |
352 'app/cast_main_delegate.cc', | |
353 'app/cast_main_delegate.h', | |
354 'browser/android/cast_window_android.cc', | |
355 'browser/android/cast_window_android.h', | |
356 'browser/android/cast_window_manager.cc', | |
357 'browser/android/cast_window_manager.h', | |
358 'browser/cast_browser_context.cc', | |
359 'browser/cast_browser_context.h', | |
360 'browser/cast_browser_main_parts.cc', | |
361 'browser/cast_browser_main_parts.h', | |
362 'browser/cast_browser_process.cc', | |
363 'browser/cast_browser_process.h', | |
364 'browser/cast_content_browser_client.cc', | |
365 'browser/cast_content_browser_client.h', | |
366 'browser/cast_content_window.cc', | |
367 'browser/cast_content_window.h', | |
368 'browser/cast_download_manager_delegate.cc', | |
369 'browser/cast_download_manager_delegate.h', | |
370 'browser/cast_http_user_agent_settings.cc', | |
371 'browser/cast_http_user_agent_settings.h', | |
372 'browser/cast_net_log.cc', | |
373 'browser/cast_net_log.h', | |
374 'browser/cast_network_delegate.cc', | |
375 'browser/cast_network_delegate.h', | |
376 'browser/cast_permission_manager.cc', | |
377 'browser/cast_permission_manager.h', | |
378 'browser/cast_quota_permission_context.cc', | |
379 'browser/cast_quota_permission_context.h', | |
380 'browser/cast_resource_dispatcher_host_delegate.cc', | |
381 'browser/cast_resource_dispatcher_host_delegate.h', | |
382 'browser/devtools/cast_dev_tools_delegate.cc', | |
383 'browser/devtools/cast_dev_tools_delegate.h', | |
384 'browser/devtools/remote_debugging_server.cc', | |
385 'browser/devtools/remote_debugging_server.h', | |
386 'browser/geolocation/cast_access_token_store.cc', | |
387 'browser/geolocation/cast_access_token_store.h', | |
388 'browser/metrics/cast_metrics_prefs.cc', | |
389 'browser/metrics/cast_metrics_prefs.h', | |
390 'browser/metrics/cast_metrics_service_client.cc', | |
391 'browser/metrics/cast_metrics_service_client.h', | |
392 'browser/metrics/cast_stability_metrics_provider.cc', | |
393 'browser/metrics/cast_stability_metrics_provider.h', | |
394 'browser/pref_service_helper.cc', | |
395 'browser/pref_service_helper.h', | |
396 'browser/service/cast_service_simple.cc', | |
397 'browser/service/cast_service_simple.h', | |
398 'browser/url_request_context_factory.cc', | |
399 'browser/url_request_context_factory.h', | |
400 'common/cast_content_client.cc', | |
401 'common/cast_content_client.h', | |
402 'common/cast_resource_delegate.cc', | |
403 'common/cast_resource_delegate.h', | |
404 'common/media/cast_media_client_android.cc', | |
405 'common/media/cast_media_client_android.h', | |
406 'common/media/cast_messages.h', | |
407 'common/media/cast_message_generator.cc', | |
408 'common/media/cast_message_generator.h', | |
409 'common/platform_client_auth.h', | |
410 'renderer/cast_content_renderer_client.cc', | |
411 'renderer/cast_content_renderer_client.h', | |
412 'renderer/cast_media_load_deferrer.cc', | |
413 'renderer/cast_media_load_deferrer.h', | |
414 'renderer/cast_render_thread_observer.cc', | |
415 'renderer/cast_render_thread_observer.h', | |
416 'renderer/key_systems_cast.cc', | |
417 'renderer/key_systems_cast.h', | |
418 'renderer/media/capabilities_message_filter.cc', | |
419 'renderer/media/capabilities_message_filter.h', | |
420 'service/cast_service.cc', | |
421 'service/cast_service.h', | |
422 'utility/cast_content_utility_client.h', | |
423 ], | |
424 'conditions': [ | |
425 ['chromecast_branding!="public"', { | |
426 'dependencies': [ | |
427 'internal/chromecast_internal.gyp:cast_shell_internal', | |
428 ], | |
429 }, { | |
430 'sources': [ | |
431 'browser/cast_content_browser_client_simple.cc', | |
432 'browser/cast_network_delegate_simple.cc', | |
433 'browser/pref_service_helper_simple.cc', | |
434 'common/platform_client_auth_simple.cc', | |
435 'renderer/cast_content_renderer_client_simple.cc', | |
436 'utility/cast_content_utility_client_simple.cc', | |
437 ], | |
438 }], | |
439 # ExternalMetrics not necessary on Android and (as of this writing) uses | |
440 # non-portable filesystem operations. Also webcrypto is not used on | |
441 # Android either. | |
442 ['OS=="linux"', { | |
443 'sources': [ | |
444 'browser/metrics/external_metrics.cc', | |
445 'browser/metrics/external_metrics.h', | |
446 'graphics/cast_screen.cc', | |
447 'graphics/cast_screen.h', | |
448 ], | |
449 'dependencies': [ | |
450 '../components/components.gyp:metrics_serialization', | |
451 ], | |
452 }], | |
453 ['OS=="android"', { | |
454 'dependencies': [ | |
455 '../components/components.gyp:cdm_browser', | |
456 '../components/components.gyp:external_video_surface', | |
457 'cast_jni_headers', | |
458 ], | |
459 }], | |
460 ['use_ozone==1', { | |
461 'dependencies': [ | |
462 '../ui/ozone/ozone.gyp:ozone', | |
463 ], | |
464 }], | |
465 ], | |
466 }, | |
467 # GN target: //chromecast/base:cast_sys_info | |
468 { | |
469 'target_name': 'cast_sys_info', | |
470 'type': '<(component)', | |
471 'dependencies': [ | |
472 'cast_public_api', | |
473 '../base/base.gyp:base', | |
474 ], | |
475 'sources': [ | |
476 'base/cast_sys_info_util.h', | |
477 'base/cast_sys_info_dummy.cc', | |
478 'base/cast_sys_info_dummy.h', | |
479 'base/cast_sys_info_android.cc', | |
480 'base/cast_sys_info_android.h', | |
481 ], | |
482 'conditions': [ | |
483 ['OS=="android"', { | |
484 'dependencies': [ | |
485 'cast_jni_headers', | |
486 'cast_version_header', | |
487 ], | |
488 }], | |
489 ['chromecast_branding=="public" and OS!="android"', { | |
490 'sources': [ | |
491 'base/cast_sys_info_util_simple.cc', | |
492 ], | |
493 }], | |
494 ], | |
495 }, # end of target 'cast_sys_info' | |
496 # GN target: //chromecast/base:cast_version_header | |
497 { | |
498 'target_name': 'cast_version_header', | |
499 'type': 'none', | |
500 'direct_dependent_settings': { | |
501 'include_dirs': [ | |
502 '<(SHARED_INTERMEDIATE_DIR)', | |
503 ], | |
504 }, | |
505 'actions': [ | |
506 { | |
507 'action_name': 'version_header', | |
508 'message': 'Generating version header file: <@(_outputs)', | |
509 'inputs': [ | |
510 '<(version_path)', | |
511 'base/version.h.in', | |
512 ], | |
513 'outputs': [ | |
514 '<(SHARED_INTERMEDIATE_DIR)/chromecast/base/version.h', | |
515 ], | |
516 'action': [ | |
517 'python', | |
518 '<(version_py_path)', | |
519 '-e', 'VERSION_FULL="<(version_full)"', | |
520 # CAST_BUILD_INCREMENTAL is taken from buildbot if available; | |
521 # otherwise, a dev string is used. | |
522 '-e', 'CAST_BUILD_INCREMENTAL="<!(echo ${CAST_BUILD_INCREMENTAL:="<!
(date +%Y%m%d.%H%M%S)"})"', | |
523 # CAST_BUILD_RELEASE is taken from cast_build_release file if exist; | |
524 # otherwise, a dev string is used. | |
525 '-e', 'CAST_BUILD_RELEASE="<!(if test -f <(cast_build_release); then
cat <(cast_build_release); else echo eng.${USER}; fi)"', | |
526 '-e', 'CAST_IS_DEBUG_BUILD=1 if "<(CONFIGURATION_NAME)" == "Debug" o
r <(cast_is_debug_build) == 1 else 0', | |
527 '-e', 'CAST_PRODUCT_TYPE=<(cast_product_type)', | |
528 'base/version.h.in', | |
529 '<@(_outputs)', | |
530 ], | |
531 'includes': [ | |
532 '../build/util/version.gypi', | |
533 ], | |
534 }, | |
535 ], | |
536 }, | |
537 { | |
538 'target_name': 'libcast_graphics_1.0', | |
539 'type': 'shared_library', | |
540 'dependencies': [ | |
541 'cast_public_api' | |
542 ], | |
543 'sources': [ | |
544 'graphics/cast_egl_platform_default.cc', | |
545 'graphics/graphics_properties_default.cc', | |
546 'graphics/osd_plane_default.cc' | |
547 ], | |
548 }, | |
549 { | |
550 # GN target: //chromecast:chromecast_features | |
551 'target_name': 'chromecast_features', | |
552 'includes': [ '../build/buildflag_header.gypi' ], | |
553 'variables': { | |
554 'buildflag_header_path': 'chromecast/chromecast_features.h', | |
555 'buildflag_flags': [ | |
556 'DISABLE_DISPLAY=<(disable_display)', | |
557 ] | |
558 } | |
559 }, # end of target 'chromecast_features' | |
560 ], # end of targets | |
561 | |
562 # Targets for Android receiver. | |
563 'conditions': [ | |
564 ['OS=="android"', { | |
565 'includes': ['../build/android/v8_external_startup_data_arch_suffix.gypi',
], | |
566 'variables': { | |
567 'cast_shell_assets_path': '<(PRODUCT_DIR)/assets', | |
568 }, | |
569 'targets': [ | |
570 { | |
571 'target_name': 'cast_shell_icudata', | |
572 'type': 'none', | |
573 'dependencies': [ | |
574 '../third_party/icu/icu.gyp:icudata', | |
575 '../v8/src/v8.gyp:v8_external_snapshot', | |
576 ], | |
577 'variables': { | |
578 'dest_path': '<(cast_shell_assets_path)', | |
579 'src_files': [ | |
580 '<(PRODUCT_DIR)/icudtl.dat', | |
581 ], | |
582 'renaming_sources': [ | |
583 '<(PRODUCT_DIR)/natives_blob.bin', | |
584 '<(PRODUCT_DIR)/snapshot_blob.bin', | |
585 ], | |
586 'renaming_destinations': [ | |
587 'natives_blob_<(arch_suffix).bin', | |
588 'snapshot_blob_<(arch_suffix).bin', | |
589 ], | |
590 'clear': 1, | |
591 }, | |
592 'includes': ['../build/android/copy_ex.gypi'], | |
593 }, | |
594 { | |
595 'target_name': 'libcast_shell_android', | |
596 'type': 'shared_library', | |
597 'dependencies': [ | |
598 'cast_jni_headers', | |
599 'cast_shell_common', | |
600 'cast_shell_icudata', | |
601 'cast_shell_pak', | |
602 'cast_version_header', | |
603 '../base/base.gyp:base', | |
604 '../components/components.gyp:breakpad_host', | |
605 '../content/content.gyp:content', | |
606 '../skia/skia.gyp:skia', | |
607 '../ui/gfx/gfx.gyp:gfx', | |
608 '../ui/gl/gl.gyp:gl', | |
609 ], | |
610 'sources': [ | |
611 'android/cast_jni_registrar.cc', | |
612 'android/cast_jni_registrar.h', | |
613 'android/cast_metrics_helper_android.cc', | |
614 'android/cast_metrics_helper_android.h', | |
615 'android/platform_jni_loader.h', | |
616 'app/android/cast_jni_loader.cc', | |
617 ], | |
618 'conditions': [ | |
619 ['chromecast_branding!="public"', { | |
620 'dependencies': [ | |
621 'internal/chromecast_internal.gyp:cast_shell_android_internal' | |
622 ], | |
623 }, { | |
624 'sources': [ | |
625 'android/platform_jni_loader_stub.cc', | |
626 ], | |
627 }] | |
628 ], | |
629 }, # end of target 'libcast_shell_android' | |
630 { | |
631 'target_name': 'cast_base_java', | |
632 'type': 'none', | |
633 'dependencies': [ | |
634 '../base/base.gyp:base_java', | |
635 ], | |
636 'variables': { | |
637 'android_manifest_path': 'android/AndroidManifest.xml', | |
638 'java_in_dir': 'base/java', | |
639 }, | |
640 'includes': ['../build/java.gypi'], | |
641 }, # end of target 'cast_base_java' | |
642 { | |
643 'target_name': 'cast_shell_java', | |
644 'type': 'none', | |
645 'dependencies': [ | |
646 '<(android_support_v13_target)', | |
647 'cast_base_java', | |
648 'cast_shell_manifest', | |
649 '../base/base.gyp:base_java', | |
650 '../components/components.gyp:external_video_surface_java', | |
651 '../content/content.gyp:content_java', | |
652 '../media/media.gyp:media_java', | |
653 '../net/net.gyp:net_java', | |
654 '../ui/android/ui_android.gyp:ui_java', | |
655 ], | |
656 'variables': { | |
657 'android_manifest_path': '<(SHARED_INTERMEDIATE_DIR)/cast_shell_mani
fest/AndroidManifest.xml', | |
658 'has_java_resources': 1, | |
659 'java_in_dir': 'browser/android/apk', | |
660 'resource_dir': 'browser/android/apk/res', | |
661 'R_package': 'org.chromium.chromecast.shell', | |
662 }, | |
663 'includes': ['../build/java.gypi'], | |
664 }, # end of target 'cast_shell_java' | |
665 { | |
666 'target_name': 'cast_shell_manifest', | |
667 'type': 'none', | |
668 'variables': { | |
669 'jinja_inputs': ['browser/android/apk/AndroidManifest.xml.jinja2'], | |
670 'jinja_output': '<(SHARED_INTERMEDIATE_DIR)/cast_shell_manifest/Andr
oidManifest.xml', | |
671 }, | |
672 'includes': [ '../build/android/jinja_template.gypi' ], | |
673 }, | |
674 { | |
675 'target_name': 'cast_shell_apk', | |
676 'type': 'none', | |
677 'dependencies': [ | |
678 'cast_shell_java', | |
679 'libcast_shell_android', | |
680 ], | |
681 'variables': { | |
682 'apk_name': 'CastShell', | |
683 'manifest_package_name': 'org.chromium.chromecast.shell', | |
684 # Note(gunsch): there are no Java files in the android/ directory. | |
685 # Unfortunately, the java_apk.gypi target rigidly insists on having | |
686 # a java_in_dir directory, but complains about duplicate classes | |
687 # from the common cast_shell_java target (shared with internal APK) | |
688 # if the actual Java path is used. | |
689 # This will hopefully be removable after the great GN migration. | |
690 'java_in_dir': 'android', | |
691 'android_manifest_path': '<(SHARED_INTERMEDIATE_DIR)/cast_shell_mani
fest/AndroidManifest.xml', | |
692 'package_name': 'org.chromium.chromecast.shell', | |
693 'native_lib_target': 'libcast_shell_android', | |
694 'asset_location': '<(cast_shell_assets_path)', | |
695 'additional_input_paths': [ | |
696 '<(asset_location)/cast_shell.pak', | |
697 '<(asset_location)/icudtl.dat', | |
698 '<(asset_location)/natives_blob_<(arch_suffix).bin', | |
699 '<(asset_location)/snapshot_blob_<(arch_suffix).bin', | |
700 ], | |
701 }, | |
702 'includes': [ '../build/java_apk.gypi' ], | |
703 }, | |
704 { | |
705 'target_name': 'cast_jni_headers', | |
706 'type': 'none', | |
707 'sources': [ | |
708 'base/java/src/org/chromium/chromecast/base/ChromecastConfigAndroid.
java', | |
709 'base/java/src/org/chromium/chromecast/base/DumpstateWriter.java', | |
710 'base/java/src/org/chromium/chromecast/base/SystemTimeChangeNotifier
Android.java', | |
711 'browser/android/apk/src/org/chromium/chromecast/shell/CastCrashHand
ler.java', | |
712 'browser/android/apk/src/org/chromium/chromecast/shell/CastMetricsHe
lper.java', | |
713 'browser/android/apk/src/org/chromium/chromecast/shell/CastSysInfoAn
droid.java', | |
714 'browser/android/apk/src/org/chromium/chromecast/shell/CastWindowAnd
roid.java', | |
715 'browser/android/apk/src/org/chromium/chromecast/shell/CastWindowMan
ager.java', | |
716 ], | |
717 'direct_dependent_settings': { | |
718 'include_dirs': [ | |
719 '<(SHARED_INTERMEDIATE_DIR)/chromecast', | |
720 ], | |
721 }, | |
722 'variables': { | |
723 'jni_gen_package': 'chromecast', | |
724 }, | |
725 'includes': [ '../build/jni_generator.gypi' ], | |
726 }, | |
727 ], # end of targets | |
728 }, { # OS != "android" | |
729 'targets': [ | |
730 { | |
731 'target_name': 'cast_shell_media', | |
732 'type': '<(component)', | |
733 'dependencies': [ | |
734 'cast_public_api', | |
735 'media/media.gyp:cast_media', | |
736 '../content/content.gyp:content', | |
737 '../ipc/ipc.gyp:ipc', | |
738 '../media/media.gyp:media', | |
739 ], | |
740 'sources': [ | |
741 'browser/media/cast_browser_cdm_factory.cc', | |
742 'browser/media/cast_browser_cdm_factory.h', | |
743 'browser/media/cma_message_filter_host.cc', | |
744 'browser/media/cma_message_filter_host.h', | |
745 'browser/media/media_pipeline_host.cc', | |
746 'browser/media/media_pipeline_host.h', | |
747 'common/media/cma_ipc_common.h', | |
748 'common/media/cma_messages.h', | |
749 'common/media/cma_message_generator.cc', | |
750 'common/media/cma_message_generator.h', | |
751 'common/media/cma_param_traits.cc', | |
752 'common/media/cma_param_traits.h', | |
753 'common/media/shared_memory_chunk.cc', | |
754 'common/media/shared_memory_chunk.h', | |
755 'renderer/media/audio_pipeline_proxy.cc', | |
756 'renderer/media/audio_pipeline_proxy.h', | |
757 'renderer/media/chromecast_media_renderer_factory.cc', | |
758 'renderer/media/chromecast_media_renderer_factory.h', | |
759 'renderer/media/cma_message_filter_proxy.cc', | |
760 'renderer/media/cma_message_filter_proxy.h', | |
761 'renderer/media/cma_renderer.cc', | |
762 'renderer/media/cma_renderer.h', | |
763 'renderer/media/hole_frame_factory.cc', | |
764 'renderer/media/hole_frame_factory.h', | |
765 'renderer/media/media_channel_proxy.cc', | |
766 'renderer/media/media_channel_proxy.h', | |
767 'renderer/media/media_pipeline_proxy.cc', | |
768 'renderer/media/media_pipeline_proxy.h', | |
769 'renderer/media/video_pipeline_proxy.cc', | |
770 'renderer/media/video_pipeline_proxy.h', | |
771 ], | |
772 }, # end of target 'cast_shell_media' | |
773 # This target contains all of the primary code of |cast_shell|, except | |
774 # for |main|. This allows end-to-end tests using |cast_shell|. | |
775 # This also includes all targets that cannot be built on Android. | |
776 { | |
777 'target_name': 'cast_shell_core', | |
778 'type': '<(component)', | |
779 'dependencies': [ | |
780 'cast_shell_media', | |
781 'cast_shell_common', | |
782 'media/media.gyp:cast_media', | |
783 ], | |
784 }, | |
785 { | |
786 'target_name': 'cast_shell', | |
787 'type': 'executable', | |
788 'dependencies': [ | |
789 'cast_shell_core', | |
790 ], | |
791 'sources': [ | |
792 'app/cast_main.cc', | |
793 ], | |
794 }, | |
795 ], # end of targets | |
796 }], | |
797 ], # end of conditions | |
798 } | |
OLD | NEW |