Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(582)

Side by Side Diff: content/content_shell.gypi

Issue 2321743002: Inline content_[tests/browser/android].gypi into GN build. (Closed)
Patch Set: gen file fix Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « content/content_resources.gypi ('k') | content/content_shell_and_tests.gyp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 # Copyright (c) 2012 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 'content_shell_product_name': 'Content Shell',
8 'content_shell_version': '99.77.34.5',
9 },
10 'targets': [
11 {
12 # GN version: //content/shell:content_shell_lib
13 'target_name': 'content_shell_lib',
14 'type': 'static_library',
15 'defines': ['CONTENT_SHELL_VERSION="<(content_shell_version)"'],
16 'variables': {
17 'chromium_code': 1,
18 # TODO(thakis): Remove this once http://crbug.com/383820 is figured out
19 'clang_warning_flags': [ '-Wno-nonnull' ],
20 },
21 'dependencies': [
22 'app/resources/content_resources.gyp:content_resources',
23 'app/strings/content_strings.gyp:content_strings',
24 'content.gyp:content_app_both',
25 'content.gyp:content_browser',
26 'content.gyp:content_common',
27 'content.gyp:content_gpu',
28 'content.gyp:content_ppapi_plugin',
29 'content.gyp:content_renderer',
30 'content.gyp:content_resources',
31 'content.gyp:content_utility',
32 'content_shell_resources',
33 'content_shell_mojo_bindings',
34 'content_test_mojo_bindings',
35 'layouttest_support_content',
36 '../base/base.gyp:base',
37 '../base/base.gyp:base_static',
38 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic _annotations',
39 '../cc/blink/cc_blink.gyp:cc_blink',
40 '../cc/cc.gyp:cc',
41 '../components/components.gyp:crash_component_breakpad_to_be_deleted',
42 '../components/components.gyp:devtools_http_handler',
43 '../components/components.gyp:web_cache_renderer',
44 '../components/components.gyp:plugins_renderer',
45 '../components/test_runner/test_runner.gyp:test_runner',
46 '../components/url_formatter/url_formatter.gyp:url_formatter',
47 '../device/bluetooth/bluetooth.gyp:device_bluetooth',
48 '../device/bluetooth/bluetooth.gyp:device_bluetooth_mocks',
49 '../device/geolocation/geolocation.gyp:device_geolocation',
50 '../gin/gin.gyp:gin',
51 '../gpu/gpu.gyp:gpu',
52 '../ipc/ipc.gyp:ipc',
53 '../media/blink/media_blink.gyp:media_blink',
54 '../media/media.gyp:media',
55 '../net/net.gyp:net',
56 '../net/net.gyp:net_resources',
57 '../ppapi/ppapi_internal.gyp:blink_deprecated_test_plugin',
58 '../ppapi/ppapi_internal.gyp:blink_test_plugin',
59 '../skia/skia.gyp:skia',
60 '../storage/storage_browser.gyp:storage',
61 '../third_party/WebKit/public/blink.gyp:blink',
62 '../third_party/WebKit/public/blink.gyp:blink_test_support',
63 '../testing/gmock.gyp:gmock',
64 '../testing/gtest.gyp:gtest',
65 '../ui/base/ime/ui_base_ime.gyp:ui_base_ime',
66 '../ui/base/ui_base.gyp:ui_base',
67 '../ui/events/events.gyp:events_base',
68 '../ui/gfx/gfx.gyp:gfx',
69 '../ui/gfx/gfx.gyp:gfx_geometry',
70 '../ui/gfx/ipc/geometry/gfx_ipc_geometry.gyp:gfx_ipc_geometry',
71 '../ui/gfx/ipc/gfx_ipc.gyp:gfx_ipc',
72 '../ui/gfx/ipc/skia/gfx_ipc_skia.gyp:gfx_ipc_skia',
73 '../ui/gl/gl.gyp:gl',
74 '../url/url.gyp:url_lib',
75 '../url/ipc/url_ipc.gyp:url_ipc',
76 '../v8/src/v8.gyp:v8',
77 ],
78 'include_dirs': [
79 '..',
80 ],
81 'sources': [
82 # Note: sources list duplicated in GN build.
83 'shell/android/shell_descriptors.h',
84 'shell/android/shell_jni_registrar.cc',
85 'shell/android/shell_jni_registrar.h',
86 'shell/android/shell_manager.cc',
87 'shell/android/shell_manager.h',
88 'shell/app/blink_test_platform_support.h',
89 'shell/app/blink_test_platform_support_android.cc',
90 'shell/app/blink_test_platform_support_linux.cc',
91 'shell/app/blink_test_platform_support_mac.mm',
92 'shell/app/blink_test_platform_support_win.cc',
93 'shell/app/paths_mac.h',
94 'shell/app/paths_mac.mm',
95 'shell/app/shell_crash_reporter_client.cc',
96 'shell/app/shell_crash_reporter_client.h',
97 'shell/app/shell_main_delegate.cc',
98 'shell/app/shell_main_delegate.h',
99 'shell/app/shell_main_delegate_mac.h',
100 'shell/app/shell_main_delegate_mac.mm',
101 'shell/browser/layout_test/blink_test_controller.cc',
102 'shell/browser/layout_test/blink_test_controller.h',
103 'shell/browser/layout_test/layout_test_android.cc',
104 'shell/browser/layout_test/layout_test_android.h',
105 'shell/browser/layout_test/layout_test_bluetooth_adapter_provider.cc',
106 'shell/browser/layout_test/layout_test_bluetooth_adapter_provider.h',
107 'shell/browser/layout_test/layout_test_bluetooth_chooser_factory.cc',
108 'shell/browser/layout_test/layout_test_bluetooth_chooser_factory.h',
109 'shell/browser/layout_test/layout_test_bluetooth_fake_adapter_setter_imp l.cc',
110 'shell/browser/layout_test/layout_test_bluetooth_fake_adapter_setter_imp l.h',
111 'shell/browser/layout_test/layout_test_browser_context.cc',
112 'shell/browser/layout_test/layout_test_browser_context.h',
113 'shell/browser/layout_test/layout_test_browser_main.cc',
114 'shell/browser/layout_test/layout_test_browser_main.h',
115 'shell/browser/layout_test/layout_test_browser_main_parts.cc',
116 'shell/browser/layout_test/layout_test_browser_main_parts.h',
117 'shell/browser/layout_test/layout_test_content_browser_client.cc',
118 'shell/browser/layout_test/layout_test_content_browser_client.h',
119 'shell/browser/layout_test/layout_test_devtools_frontend.cc',
120 'shell/browser/layout_test/layout_test_devtools_frontend.h',
121 'shell/browser/layout_test/layout_test_download_manager_delegate.cc',
122 'shell/browser/layout_test/layout_test_download_manager_delegate.h',
123 'shell/browser/layout_test/layout_test_first_device_bluetooth_chooser.cc ',
124 'shell/browser/layout_test/layout_test_first_device_bluetooth_chooser.h' ,
125 'shell/browser/layout_test/layout_test_javascript_dialog_manager.cc',
126 'shell/browser/layout_test/layout_test_javascript_dialog_manager.h',
127 'shell/browser/layout_test/layout_test_message_filter.cc',
128 'shell/browser/layout_test/layout_test_message_filter.h',
129 'shell/browser/layout_test/layout_test_notification_manager.cc',
130 'shell/browser/layout_test/layout_test_notification_manager.h',
131 'shell/browser/layout_test/layout_test_permission_manager.cc',
132 'shell/browser/layout_test/layout_test_permission_manager.h',
133 'shell/browser/layout_test/layout_test_push_messaging_service.cc',
134 'shell/browser/layout_test/layout_test_push_messaging_service.h',
135 'shell/browser/layout_test/layout_test_resource_dispatcher_host_delegate .cc',
136 'shell/browser/layout_test/layout_test_resource_dispatcher_host_delegate .h',
137 'shell/browser/layout_test/layout_test_url_request_context_getter.cc',
138 'shell/browser/layout_test/layout_test_url_request_context_getter.h',
139 'shell/browser/layout_test/secondary_test_window_observer.cc',
140 'shell/browser/layout_test/secondary_test_window_observer.h',
141 'shell/browser/layout_test/test_info_extractor.cc',
142 'shell/browser/layout_test/test_info_extractor.h',
143 'shell/browser/shell.cc',
144 'shell/browser/shell.h',
145 'shell/browser/shell_access_token_store.cc',
146 'shell/browser/shell_access_token_store.h',
147 'shell/browser/shell_android.cc',
148 'shell/browser/shell_application_mac.h',
149 'shell/browser/shell_application_mac.mm',
150 'shell/browser/shell_aura.cc',
151 'shell/browser/shell_browser_context.cc',
152 'shell/browser/shell_browser_context.h',
153 'shell/browser/shell_browser_main.cc',
154 'shell/browser/shell_browser_main.h',
155 'shell/browser/shell_browser_main_parts.cc',
156 'shell/browser/shell_browser_main_parts.h',
157 'shell/browser/shell_browser_main_parts_mac.mm',
158 'shell/browser/shell_content_browser_client.cc',
159 'shell/browser/shell_content_browser_client.h',
160 'shell/browser/shell_devtools_frontend.cc',
161 'shell/browser/shell_devtools_frontend.h',
162 'shell/browser/shell_devtools_manager_delegate.cc',
163 'shell/browser/shell_devtools_manager_delegate.h',
164 'shell/browser/shell_download_manager_delegate.cc',
165 'shell/browser/shell_download_manager_delegate.h',
166 'shell/browser/shell_javascript_dialog.h',
167 'shell/browser/shell_javascript_dialog_mac.mm',
168 'shell/browser/shell_javascript_dialog_manager.cc',
169 'shell/browser/shell_javascript_dialog_manager.h',
170 'shell/browser/shell_javascript_dialog_win.cc',
171 'shell/browser/shell_login_dialog.cc',
172 'shell/browser/shell_login_dialog.h',
173 'shell/browser/shell_login_dialog_mac.mm',
174 'shell/browser/shell_mac.mm',
175 'shell/browser/shell_mojo_test_utils_android.cc',
176 'shell/browser/shell_mojo_test_utils_android.h',
177 'shell/browser/shell_net_log.cc',
178 'shell/browser/shell_net_log.h',
179 'shell/browser/shell_network_delegate.cc',
180 'shell/browser/shell_network_delegate.h',
181 'shell/browser/shell_permission_manager.cc',
182 'shell/browser/shell_permission_manager.h',
183 'shell/browser/shell_platform_data_aura.cc',
184 'shell/browser/shell_platform_data_aura.h',
185 'shell/browser/shell_plugin_service_filter.cc',
186 'shell/browser/shell_plugin_service_filter.h',
187 'shell/browser/shell_quota_permission_context.cc',
188 'shell/browser/shell_quota_permission_context.h',
189 'shell/browser/shell_resource_dispatcher_host_delegate.cc',
190 'shell/browser/shell_resource_dispatcher_host_delegate.h',
191 'shell/browser/shell_speech_recognition_manager_delegate.cc',
192 'shell/browser/shell_speech_recognition_manager_delegate.h',
193 'shell/browser/shell_url_request_context_getter.cc',
194 'shell/browser/shell_url_request_context_getter.h',
195 'shell/browser/shell_views.cc',
196 'shell/browser/shell_web_contents_view_delegate.h',
197 'shell/browser/shell_web_contents_view_delegate_android.cc',
198 'shell/browser/shell_web_contents_view_delegate_aura.cc',
199 'shell/browser/shell_web_contents_view_delegate_creator.h',
200 'shell/browser/shell_web_contents_view_delegate_mac.mm',
201 'shell/browser/shell_web_contents_view_delegate_views.cc',
202 'shell/common/layout_test/layout_test_content_client.cc',
203 'shell/common/layout_test/layout_test_content_client.h',
204 'shell/common/layout_test/layout_test_messages.cc',
205 'shell/common/layout_test/layout_test_messages.h',
206 'shell/common/layout_test/layout_test_switches.cc',
207 'shell/common/layout_test/layout_test_switches.h',
208 'shell/common/leak_detection_result.h',
209 'shell/common/shell_content_client.cc',
210 'shell/common/shell_content_client.h',
211 'shell/common/shell_origin_trial_policy.cc',
212 'shell/common/shell_origin_trial_policy.h',
213 'shell/common/shell_messages.cc',
214 'shell/common/shell_messages.h',
215 'shell/common/shell_switches.cc',
216 'shell/common/shell_switches.h',
217 'shell/common/shell_test_configuration.cc',
218 'shell/common/shell_test_configuration.h',
219 'shell/common/v8_breakpad_support_win.cc',
220 'shell/common/v8_breakpad_support_win.h',
221 'shell/renderer/layout_test/blink_test_helpers.cc',
222 'shell/renderer/layout_test/blink_test_helpers.h',
223 'shell/renderer/layout_test/blink_test_runner.cc',
224 'shell/renderer/layout_test/blink_test_runner.h',
225 'shell/renderer/layout_test/layout_test_content_renderer_client.cc',
226 'shell/renderer/layout_test/layout_test_content_renderer_client.h',
227 'shell/renderer/layout_test/layout_test_render_frame_observer.cc',
228 'shell/renderer/layout_test/layout_test_render_frame_observer.h',
229 'shell/renderer/layout_test/layout_test_render_thread_observer.cc',
230 'shell/renderer/layout_test/layout_test_render_thread_observer.h',
231 'shell/renderer/layout_test/leak_detector.cc',
232 'shell/renderer/layout_test/leak_detector.h',
233 'shell/renderer/layout_test/test_media_stream_renderer_factory.cc',
234 'shell/renderer/layout_test/test_media_stream_renderer_factory.h',
235 'shell/renderer/layout_test/test_media_stream_video_renderer.cc',
236 'shell/renderer/layout_test/test_media_stream_video_renderer.h',
237 'shell/renderer/shell_content_renderer_client.cc',
238 'shell/renderer/shell_content_renderer_client.h',
239 'shell/renderer/shell_render_view_observer.cc',
240 'shell/renderer/shell_render_view_observer.h',
241 'shell/utility/shell_content_utility_client.cc',
242 'shell/utility/shell_content_utility_client.h',
243 ],
244 'msvs_settings': {
245 'VCLinkerTool': {
246 'SubSystem': '2', # Set /SUBSYSTEM:WINDOWS
247 },
248 },
249 'conditions': [
250 ['OS=="win"', {
251 'resource_include_dirs': [
252 '<(SHARED_INTERMEDIATE_DIR)/content/app/strings',
253 ],
254 'dependencies': [
255 '<(DEPTH)/content/app/strings/content_strings.gyp:content_strings',
256 ],
257 'configurations': {
258 'Debug_Base': {
259 'msvs_settings': {
260 'VCLinkerTool': {
261 'LinkIncremental': '<(msvs_large_module_debug_link_mode)',
262 },
263 },
264 },
265 },
266 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
267 'msvs_disabled_warnings': [ 4267, ],
268 }], # OS=="win"
269 ['OS=="linux"', {
270 'dependencies': [
271 '../build/linux/system.gyp:fontconfig',
272 '../third_party/freetype2/freetype2.gyp:freetype2',
273 ],
274 }],
275 ['use_x11 == 1', {
276 'dependencies': [
277 '../ui/events/devices/events_devices.gyp:events_devices',
278 '../ui/events/devices/x11/events_devices_x11.gyp:events_devices_x11' ,
279 '../tools/xdisplaycheck/xdisplaycheck.gyp:xdisplaycheck',
280 ],
281 }],
282 ['OS=="android"', {
283 'dependencies': [
284 '../mojo/mojo_base.gyp:libmojo_system_java',
285 'content_shell_jni_headers',
286 ],
287 }], # OS=="android"
288 ['os_posix == 1 and OS != "mac"', {
289 'dependencies': [
290 '../components/components.gyp:breakpad_host',
291 ],
292 }],
293 ['debug_devtools==1', {
294 'defines': [
295 'DEBUG_DEVTOOLS=1',
296 ],
297 }],
298 ['use_aura==1', {
299 'dependencies': [
300 '../ui/aura/aura.gyp:aura',
301 '../ui/aura/aura.gyp:aura_test_support',
302 '../ui/events/events.gyp:events',
303 '../ui/strings/ui_strings.gyp:ui_strings',
304 '../ui/wm/wm.gyp:wm',
305 ],
306 'conditions': [
307 ['toolkit_views==1', {
308 'dependencies': [
309 '../ui/resources/ui_resources.gyp:ui_resources',
310 '../ui/views/controls/webview/webview.gyp:webview',
311 '../ui/views/views.gyp:views',
312 '../ui/views/views.gyp:views_test_support',
313 ],
314 'sources/': [
315 ['exclude', 'shell/browser/shell_aura.cc'],
316 ['exclude', 'shell/browser/shell_web_contents_view_delegate_aura .cc'],
317 ],
318 }, {
319 'sources/': [
320 ['exclude', 'shell/browser/shell_views.cc'],
321 ['exclude', 'shell/browser/shell_web_contents_view_delegate_view s.cc'],
322 ],
323 }],
324 ],
325 }, {
326 'sources/': [
327 ['exclude', 'shell/browser/shell_aura.cc'],
328 ['exclude', 'shell/browser/shell_views.cc'],
329 ['exclude', 'shell/browser/shell_web_contents_view_delegate_aura.cc' ],
330 ['exclude', 'shell/browser/shell_web_contents_view_delegate_views.cc '],
331 ],
332 }], # use_aura==1
333 ['chromeos==1', {
334 'dependencies': [
335 '../chromeos/chromeos.gyp:chromeos',
336 '../ui/wm/wm.gyp:wm_test_support',
337 ],
338 }], # chromeos==1
339 ['enable_plugins==0', {
340 'sources!': [
341 'shell/browser/shell_plugin_service_filter.cc',
342 'shell/browser/shell_plugin_service_filter.h',
343 ],
344 }]
345 ],
346 },
347 {
348 # GN version: //content/shell:resources
349 'target_name': 'content_shell_resources',
350 'type': 'none',
351 'variables': {
352 'grit_out_dir': '<(SHARED_INTERMEDIATE_DIR)/content',
353 },
354 'dependencies': [
355 '../components/test_runner/test_runner.gyp:resources',
356 ],
357 'actions': [
358 {
359 'action_name': 'generate_content_shell_resources',
360 'variables': {
361 'grit_grd_file': 'shell/shell_resources.grd',
362 },
363 'includes': [ '../build/grit_action.gypi' ],
364 },
365 ],
366 'includes': [ '../build/grit_target.gypi' ],
367 'copies': [
368 {
369 'destination': '<(PRODUCT_DIR)',
370 'files': [
371 '<(SHARED_INTERMEDIATE_DIR)/content/shell_resources.pak'
372 ],
373 },
374 ],
375 },
376 {
377 # We build a minimal set of resources so WebKit in content_shell has
378 # access to necessary resources.
379 # GN version: //content/shell:pak
380 'target_name': 'content_shell_pak',
381 'type': 'none',
382 'dependencies': [
383 'app/resources/content_resources.gyp:content_resources',
384 'app/strings/content_strings.gyp:content_strings',
385 'browser/tracing/tracing_resources.gyp:tracing_resources',
386 'content.gyp:content_resources',
387 'content_shell_resources',
388 '<(DEPTH)/net/net.gyp:net_resources',
389 '<(DEPTH)/third_party/WebKit/public/blink_resources.gyp:blink_resources' ,
390 '<(DEPTH)/ui/resources/ui_resources.gyp:ui_resources',
391 '<(DEPTH)/ui/strings/ui_strings.gyp:ui_strings',
392 ],
393 'conditions': [
394 ['OS!="android"', {
395 'dependencies': [
396 'browser/devtools/devtools_resources.gyp:devtools_resources',
397 ],
398 }],
399 ['toolkit_views==1', {
400 'dependencies': [
401 '<(DEPTH)/ui/views/resources/views_resources.gyp:views_resources'
402 ],
403 }],
404 ],
405 'actions': [
406 {
407 'action_name': 'repack_content_shell_pack',
408 'variables': {
409 'pak_inputs': [
410 '<(SHARED_INTERMEDIATE_DIR)/blink/public/resources/blink_resources .pak',
411 '<(SHARED_INTERMEDIATE_DIR)/blink/public/resources/blink_image_res ources_100_percent.pak',
412 '<(SHARED_INTERMEDIATE_DIR)/content/app/resources/content_resource s_100_percent.pak',
413 '<(SHARED_INTERMEDIATE_DIR)/content/app/strings/content_strings_en -US.pak',
414 '<(SHARED_INTERMEDIATE_DIR)/content/browser/tracing/tracing_resour ces.pak',
415 '<(SHARED_INTERMEDIATE_DIR)/content/content_resources.pak',
416 '<(SHARED_INTERMEDIATE_DIR)/content/shell_resources.pak',
417 '<(SHARED_INTERMEDIATE_DIR)/net/net_resources.pak',
418 '<(SHARED_INTERMEDIATE_DIR)/ui/resources/ui_resources_100_percent. pak',
419 '<(SHARED_INTERMEDIATE_DIR)/ui/resources/webui_resources.pak',
420 '<(SHARED_INTERMEDIATE_DIR)/ui/strings/app_locale_settings_en-US.p ak',
421 '<(SHARED_INTERMEDIATE_DIR)/ui/strings/ui_strings_en-US.pak',
422 ],
423 'pak_output': '<(PRODUCT_DIR)/content_shell.pak',
424 'conditions': [
425 ['toolkit_views==1', {
426 'pak_inputs': [
427 '<(SHARED_INTERMEDIATE_DIR)/ui/views/resources/views_resources _100_percent.pak',
428 ],
429 }],
430 ['OS!="android"', {
431 'pak_inputs': ['<(SHARED_INTERMEDIATE_DIR)/blink/devtools_resour ces.pak',],
432 }],
433 ],
434 },
435 'includes': [ '../build/repack_action.gypi' ],
436 },
437 ],
438 },
439 {
440 # GN version: //content/shell:content_shell
441 'target_name': 'content_shell',
442 'type': 'executable',
443 'mac_bundle': 1,
444 'variables': {
445 'chromium_code': 1,
446 },
447 'dependencies': [
448 'content_shell_lib',
449 'content_shell_pak',
450 '../third_party/mesa/mesa.gyp:osmesa',
451 '../tools/imagediff/image_diff.gyp:image_diff',
452 ],
453 'include_dirs': [
454 '..',
455 ],
456 'sources': [
457 'shell/app/shell_main.cc',
458 ],
459 'mac_bundle_resources': [
460 'shell/app/app.icns',
461 'shell/app/app-Info.plist',
462 ],
463 # TODO(mark): Come up with a fancier way to do this. It should only
464 # be necessary to list app-Info.plist once, not the three times it is
465 # listed here.
466 'mac_bundle_resources!': [
467 'shell/app/app-Info.plist',
468 ],
469 'xcode_settings': {
470 'INFOPLIST_FILE': 'shell/app/app-Info.plist',
471 },
472 'msvs_settings': {
473 'VCManifestTool': {
474 'AdditionalManifestFiles': [
475 'shell/app/shell.exe.manifest',
476 ],
477 },
478 },
479 'conditions': [
480 ['OS=="win"', {
481 'sources': [
482 'shell/app/shell.rc',
483 ],
484 'configurations': {
485 'Debug_Base': {
486 'msvs_settings': {
487 'VCLinkerTool': {
488 'LinkIncremental': '<(msvs_large_module_debug_link_mode)',
489 },
490 },
491 },
492 },
493 'dependencies': [
494 '../sandbox/sandbox.gyp:sandbox',
495 ],
496 'conditions': [
497 ['win_console_app==1', {
498 'defines': ['WIN_CONSOLE_APP'],
499 }, { # else win_console_app==0
500 'msvs_settings': {
501 'VCLinkerTool': {
502 'SubSystem': '2', # Set /SUBSYSTEM:WINDOWS
503 },
504 },
505 }],
506 ],
507 }], # OS=="win"
508 ['OS=="mac"', {
509 'product_name': '<(content_shell_product_name)',
510 'dependencies!': [
511 'content_shell_lib',
512 ],
513 'dependencies': [
514 'content_shell_framework',
515 'content_shell_helper_app',
516 ],
517 'copies': [
518 {
519 'destination': '<(PRODUCT_DIR)/<(content_shell_product_name).app/C ontents/Frameworks',
520 'files': [
521 '<(PRODUCT_DIR)/<(content_shell_product_name) Helper.app',
522 ],
523 },
524 ],
525 'postbuilds': [
526 {
527 'postbuild_name': 'Copy <(content_shell_product_name) Framework.fr amework',
528 'action': [
529 '../build/mac/copy_framework_unversioned.sh',
530 '${BUILT_PRODUCTS_DIR}/<(content_shell_product_name) Framework.f ramework',
531 '${BUILT_PRODUCTS_DIR}/${CONTENTS_FOLDER_PATH}/Frameworks',
532 ],
533 },
534 {
535 # Modify the Info.plist as needed.
536 'postbuild_name': 'Tweak Info.plist',
537 'action': ['../build/mac/tweak_info_plist.py',
538 '--plist=${TARGET_BUILD_DIR}/${INFOPLIST_PATH}',
539 '--scm=1',
540 '--version=<(content_shell_version)'],
541 },
542 ],
543 }], # OS=="mac"
544 ['OS=="android"', {
545 'dependencies': [
546 '../tools/imagediff/image_diff.gyp:image_diff#host',
547 ],
548 'dependencies!': [
549 '../tools/imagediff/image_diff.gyp:image_diff',
550 ],
551 }], # OS=="android"
552 ],
553 },
554 {
555 'target_name': 'content_shell_builder',
556 'type': 'none',
557 'dependencies': [
558 'content_shell',
559 ],
560 },
561 {
562 'target_name': 'content_shell_mojo_bindings_mojom',
563 'type': 'none',
564 'variables': {
565 'mojom_files': [
566 'shell/common/layout_test/layout_test_bluetooth_fake_adapter_setter.m ojom'
567 ],
568 },
569 'includes': [
570 '../mojo/mojom_bindings_generator_explicit.gypi',
571 ],
572 },
573 {
574 'target_name': 'content_shell_mojo_bindings',
575 'type': 'static_library',
576 'dependencies': [
577 'content_shell_mojo_bindings_mojom',
578 '../mojo/mojo_public.gyp:mojo_cpp_bindings',
579 ],
580 },
581 ],
582 'conditions': [
583 ['OS=="mac"', {
584 'targets': [
585 {
586 # GN version: //content/shell:framework
587 'target_name': 'content_shell_framework',
588 'type': 'shared_library',
589 'product_name': '<(content_shell_product_name) Framework',
590 'mac_bundle': 1,
591 'mac_bundle_resources': [
592 'shell/app/English.lproj/HttpAuth.xib',
593 'shell/app/English.lproj/MainMenu.xib',
594 '<(PRODUCT_DIR)/content_shell.pak',
595 'shell/app/framework-Info.plist',
596 ],
597 'mac_bundle_resources!': [
598 'shell/app/framework-Info.plist',
599 ],
600 'xcode_settings': {
601 # The framework is placed within the .app's Framework
602 # directory. DYLIB_INSTALL_NAME_BASE and
603 # LD_DYLIB_INSTALL_NAME affect -install_name.
604 'DYLIB_INSTALL_NAME_BASE':
605 '@executable_path/../Frameworks',
606 # See /build/mac/copy_framework_unversioned.sh for
607 # information on LD_DYLIB_INSTALL_NAME.
608 'LD_DYLIB_INSTALL_NAME':
609 '$(DYLIB_INSTALL_NAME_BASE:standardizepath)/$(WRAPPER_NAME)/$(PR ODUCT_NAME)',
610
611 'INFOPLIST_FILE': 'shell/app/framework-Info.plist',
612 },
613 'dependencies': [
614 'content_shell_lib',
615 ],
616 'include_dirs': [
617 '..',
618 ],
619 'sources': [
620 'shell/app/shell_content_main.cc',
621 'shell/app/shell_content_main.h',
622 ],
623 'postbuilds': [
624 {
625 # Modify the Info.plist as needed. The script explains why
626 # this is needed. This is also done in the chrome target.
627 # The framework needs the Breakpad keys if this feature is
628 # enabled. It does not need the Keystone keys; these always
629 # come from the outer application bundle. The framework
630 # doesn't currently use the SCM keys for anything,
631 # but this seems like a really good place to store them.
632 'postbuild_name': 'Tweak Info.plist',
633 'action': ['../build/mac/tweak_info_plist.py',
634 '--plist=${TARGET_BUILD_DIR}/${INFOPLIST_PATH}',
635 '--breakpad=1',
636 '--keystone=0',
637 '--scm=1',
638 '--version=<(content_shell_version)',
639 '--branding=<(content_shell_product_name)'],
640 },
641 ],
642 'copies': [
643 {
644 # PPAPI test plugins are loaded relative to DIR_MODULE. On OS X,
645 # that corresponds to Content Shell Framework.framework.
646 'destination': '<(PRODUCT_DIR)/$(CONTENTS_FOLDER_PATH)',
647 'files': [
648 '<(PRODUCT_DIR)/blink_deprecated_test_plugin.plugin',
649 '<(PRODUCT_DIR)/blink_test_plugin.plugin',
650 ],
651 },
652 {
653 'destination': '<(PRODUCT_DIR)/$(CONTENTS_FOLDER_PATH)/Resources',
654 'files': [
655 '<(PRODUCT_DIR)/crash_inspector',
656 '<(PRODUCT_DIR)/crash_report_sender.app'
657 ],
658 },
659 ],
660 'conditions': [
661 ['icu_use_data_file_flag==1', {
662 'mac_bundle_resources': [
663 '<(PRODUCT_DIR)/icudtl.dat',
664 ],
665 }],
666 ['v8_use_external_startup_data==1', {
667 'mac_bundle_resources': [
668 '<(PRODUCT_DIR)/natives_blob.bin',
669 '<(PRODUCT_DIR)/snapshot_blob.bin',
670 ],
671 }],
672 ],
673 }, # target content_shell_framework
674 {
675 'target_name': 'content_shell_helper_app',
676 'type': 'executable',
677 'variables': { 'enable_wexit_time_destructors': 1, },
678 'product_name': '<(content_shell_product_name) Helper',
679 'mac_bundle': 1,
680 'dependencies': [
681 'content_shell_framework',
682 ],
683 'sources': [
684 'shell/app/shell_main.cc',
685 'shell/app/helper-Info.plist',
686 ],
687 # TODO(mark): Come up with a fancier way to do this. It should only
688 # be necessary to list helper-Info.plist once, not the three times it
689 # is listed here.
690 'mac_bundle_resources!': [
691 'shell/app/helper-Info.plist',
692 ],
693 # TODO(mark): For now, don't put any resources into this app. Its
694 # resources directory will be a symbolic link to the browser app's
695 # resources directory.
696 'mac_bundle_resources/': [
697 ['exclude', '.*'],
698 ],
699 'xcode_settings': {
700 'INFOPLIST_FILE': 'shell/app/helper-Info.plist',
701 },
702 'postbuilds': [
703 {
704 # The framework defines its load-time path
705 # (DYLIB_INSTALL_NAME_BASE) relative to the main executable
706 # (chrome). A different relative path needs to be used in
707 # content_shell_helper_app.
708 'postbuild_name': 'Fix Framework Link',
709 'action': [
710 'install_name_tool',
711 '-change',
712 '@executable_path/../Frameworks/<(content_shell_product_name) Fr amework.framework/<(content_shell_product_name) Framework',
713 '@executable_path/../../../<(content_shell_product_name) Framewo rk.framework/<(content_shell_product_name) Framework',
714 '${BUILT_PRODUCTS_DIR}/${EXECUTABLE_PATH}'
715 ],
716 },
717 {
718 # Modify the Info.plist as needed. The script explains why this
719 # is needed. This is also done in the chrome and chrome_dll
720 # targets. In this case, --breakpad=0, --keystone=0, and --scm=0
721 # are used because Breakpad, Keystone, and SCM keys are
722 # never placed into the helper.
723 'postbuild_name': 'Tweak Info.plist',
724 'action': ['../build/mac/tweak_info_plist.py',
725 '--plist=${TARGET_BUILD_DIR}/${INFOPLIST_PATH}',
726 '--breakpad=0',
727 '--keystone=0',
728 '--scm=0',
729 '--version=<(content_shell_version)'],
730 },
731 ],
732 'conditions': [
733 ['component=="shared_library"', {
734 'xcode_settings': {
735 'LD_RUNPATH_SEARCH_PATHS': [
736 # Get back from Content Shell.app/Contents/Frameworks/
737 # Helper.app/Contents/MacOS
738 '@loader_path/../../../../../..',
739 ],
740 },
741 }],
742 ],
743 }, # target content_shell_helper_app
744 ],
745 }], # OS=="mac"
746 ['OS=="android"', {
747 'targets': [
748 {
749 # TODO(jrg): Update this action and other jni generators to only
750 # require specifying the java directory and generate the rest.
751 'target_name': 'content_shell_jni_headers',
752 'type': 'none',
753 'sources': [
754 'shell/android/java/src/org/chromium/content_shell/ShellLayoutTestUt ils.java',
755 'shell/android/java/src/org/chromium/content_shell/ShellMojoTestUtil s.java',
756 'shell/android/java/src/org/chromium/content_shell/ShellManager.java ',
757 'shell/android/java/src/org/chromium/content_shell/Shell.java',
758 ],
759 'variables': {
760 'jni_gen_package': 'content/shell',
761 },
762 'includes': [ '../build/jni_generator.gypi' ],
763 },
764 {
765 'target_name': 'libcontent_shell_content_view',
766 'type': 'shared_library',
767 'dependencies': [
768 'content_shell_jni_headers',
769 'content_shell_lib',
770 'content_shell_pak',
771 # Skia is necessary to ensure the dependencies needed by
772 # WebContents are included.
773 '../skia/skia.gyp:skia',
774 '<(DEPTH)/media/media.gyp:player_android',
775 ],
776 'sources': [
777 'shell/android/shell_library_loader.cc',
778 ],
779 },
780 {
781 'target_name': 'content_shell_java',
782 'type': 'none',
783 'dependencies': [
784 'content.gyp:content_java',
785 ],
786 'variables': {
787 'java_in_dir': '../content/shell/android/java',
788 'has_java_resources': 1,
789 'R_package': 'org.chromium.content_shell',
790 'R_package_relpath': 'org/chromium/content_shell',
791 },
792 'includes': [ '../build/java.gypi' ],
793 },
794 {
795 # content_shell_apk creates a .jar as a side effect. Any java targets
796 # that need that .jar in their classpath should depend on this target,
797 # content_shell_apk_java. Dependents of content_shell_apk receive its
798 # jar path in the variable 'apk_output_jar_path'. This target should
799 # only be used by targets which instrument content_shell_apk.
800 'target_name': 'content_shell_apk_java',
801 'type': 'none',
802 'dependencies': [
803 'content_shell_apk',
804 ],
805 'includes': [ '../build/apk_fake_jar.gypi' ],
806 },
807 {
808 # GN version: //content/shell/android:content_shell_manifest
809 'target_name': 'content_shell_manifest',
810 'type': 'none',
811 'variables': {
812 'jinja_inputs': ['shell/android/shell_apk/AndroidManifest.xml.jinja2 '],
813 'jinja_output': '<(SHARED_INTERMEDIATE_DIR)/content_shell_manifest/A ndroidManifest.xml',
814 },
815 'includes': [ '../build/android/jinja_template.gypi' ],
816 },
817 {
818 # GN version: //content/shell/android:content_shell_apk
819 'target_name': 'content_shell_apk',
820 'type': 'none',
821 'dependencies': [
822 'content.gyp:content_shell_assets_copy',
823 'content.gyp:content_java',
824 'content_java_test_support',
825 'content_shell_java',
826 'libcontent_shell_content_view',
827 '../base/base.gyp:base_java',
828 '../media/media.gyp:media_java',
829 '../net/net.gyp:net_java',
830 '../third_party/mesa/mesa.gyp:osmesa_in_lib_dir',
831 '../tools/android/forwarder/forwarder.gyp:forwarder',
832 '../tools/imagediff/image_diff.gyp:image_diff#host',
833 '../ui/android/ui_android.gyp:ui_java',
834 ],
835 'variables': {
836 'apk_name': 'ContentShell',
837 'manifest_package_name': 'org.chromium.content_shell_apk',
838 'android_manifest_path': '<(SHARED_INTERMEDIATE_DIR)/content_shell_m anifest/AndroidManifest.xml',
839 'java_in_dir': 'shell/android/shell_apk',
840 'resource_dir': 'shell/android/shell_apk/res',
841 'native_lib_target': 'libcontent_shell_content_view',
842 'additional_input_paths': ['<(asset_location)/content_shell.pak'],
843 'asset_location': '<(PRODUCT_DIR)/content_shell/assets',
844 'extra_native_libs': ['<(SHARED_LIB_DIR)/libosmesa.so'],
845 'conditions': [
846 ['icu_use_data_file_flag==1', {
847 'additional_input_paths': [
848 '<(asset_location)/icudtl.dat',
849 ],
850 }],
851 ['v8_use_external_startup_data==1', {
852 'additional_input_paths': [
853 '<(asset_location)/natives_blob_<(arch_suffix).bin',
854 '<(asset_location)/snapshot_blob_<(arch_suffix).bin',
855 ],
856 }],
857 ],
858 },
859 'includes': [
860 '../build/android/v8_external_startup_data_arch_suffix.gypi',
861 '../build/java_apk.gypi',
862 ],
863 },
864 ],
865 }], # OS=="android"
866 ['OS=="win"', {
867 'targets': [
868 {
869 # GN version: //content/shell:crash_service
870 'target_name': 'content_shell_crash_service',
871 'type': 'executable',
872 'dependencies': [
873 '../base/base.gyp:base',
874 '../components/components.gyp:breakpad_crash_service',
875 ],
876 'include_dirs': [
877 '..',
878 ],
879 'sources': [
880 'shell/tools/content_shell_crash_service.cc',
881 ],
882 'msvs_settings': {
883 'VCLinkerTool': {
884 'SubSystem': '2', # Set /SUBSYSTEM:WINDOWS
885 },
886 },
887 },
888 ],
889 }], # OS=="win"
890 ['OS=="win" and fastbuild==0 and target_arch=="ia32" and syzyasan==1', {
891 'variables': {
892 'dest_dir': '<(PRODUCT_DIR)/syzygy',
893 },
894 'targets': [
895 {
896 'target_name': 'content_shell_syzyasan',
897 'type': 'none',
898 'sources' : [],
899 # Instrument content_shell with SyzyAsan.
900 'actions': [
901 {
902 'action_name': 'Instrument content_shell with SyzyAsan',
903 'inputs': [
904 '<(PRODUCT_DIR)/content_shell.exe',
905 ],
906 'outputs': [
907 '<(dest_dir)/content_shell.exe',
908 '<(dest_dir)/content_shell.exe.pdb',
909 ],
910 'action': [
911 'python',
912 '<(DEPTH)/build/win/syzygy/instrument.py',
913 '--mode', 'asan',
914 '--input_executable', '<(PRODUCT_DIR)/content_shell.exe',
915 '--input_symbol', '<(PRODUCT_DIR)/content_shell.exe.pdb',
916 '--destination_dir', '<(dest_dir)',
917 ],
918 },
919 ],
920 },
921 ],
922 }], # OS=="win" and fastbuild==0 and target_arch=="ia32"
923 ]
924 }
OLDNEW
« no previous file with comments | « content/content_resources.gypi ('k') | content/content_shell_and_tests.gyp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698