OLD | NEW |
| (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 # The "19" is so that sites that sniff for version think that this is | |
9 # something reasonably current; the "77.34.5" is a hint that this isn't a | |
10 # standard Chrome. | |
11 'content_shell_version': '19.77.34.5', | |
12 'conditions': [ | |
13 ['OS=="linux"', { | |
14 'use_custom_freetype%': 1, | |
15 }, { | |
16 'use_custom_freetype%': 0, | |
17 }], | |
18 ], | |
19 }, | |
20 'targets': [ | |
21 { | |
22 'target_name': 'content_shell_lib', | |
23 'type': 'static_library', | |
24 'defines!': ['CONTENT_IMPLEMENTATION'], | |
25 'defines': ['CONTENT_SHELL_VERSION="<(content_shell_version)"'], | |
26 'variables': { | |
27 'chromium_code': 1, | |
28 }, | |
29 'dependencies': [ | |
30 'content_app', | |
31 'content_browser', | |
32 'content_common', | |
33 'content_gpu', | |
34 'content_plugin', | |
35 'content_ppapi_plugin', | |
36 'content_renderer', | |
37 'content_shell_resources', | |
38 'content_utility', | |
39 'content_worker', | |
40 'test_support_content', | |
41 'content_resources.gyp:content_resources', | |
42 '../base/base.gyp:base', | |
43 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic
_annotations', | |
44 '../ipc/ipc.gyp:ipc', | |
45 '../media/media.gyp:media', | |
46 '../net/net.gyp:net', | |
47 '../net/net.gyp:net_resources', | |
48 '../skia/skia.gyp:skia', | |
49 '../third_party/WebKit/public/blink.gyp:blink', | |
50 '../third_party/WebKit/Source/WebKit/chromium/WebKit.gyp:webkit_test_sup
port', | |
51 '../third_party/WebKit/Tools/DumpRenderTree/DumpRenderTree.gyp/DumpRende
rTree.gyp:TestRunner', | |
52 '../ui/gl/gl.gyp:gl', | |
53 '../ui/ui.gyp:ui', | |
54 '../url/url.gyp:url_lib', | |
55 '../v8/tools/gyp/v8.gyp:v8', | |
56 '../webkit/support/webkit_support.gyp:webkit_resources', | |
57 '../webkit/support/webkit_support.gyp:webkit_support', | |
58 ], | |
59 'include_dirs': [ | |
60 '..', | |
61 ], | |
62 'sources': [ | |
63 'shell/android/shell_jni_registrar.cc', | |
64 'shell/android/shell_jni_registrar.h', | |
65 'shell/android/shell_manager.cc', | |
66 'shell/android/shell_manager.h', | |
67 'shell/app/shell_main_delegate.cc', | |
68 'shell/app/shell_main_delegate.h', | |
69 'shell/common/shell_content_client.cc', | |
70 'shell/common/shell_content_client.h', | |
71 'shell/common/shell_messages.cc', | |
72 'shell/common/shell_messages.h', | |
73 'shell/common/shell_switches.cc', | |
74 'shell/common/shell_switches.h', | |
75 'shell/common/shell_test_configuration.cc', | |
76 'shell/common/shell_test_configuration.h', | |
77 'shell/common/webkit_test_helpers.cc', | |
78 'shell/common/webkit_test_helpers.h', | |
79 'shell/geolocation/shell_access_token_store.cc', | |
80 'shell/geolocation/shell_access_token_store.h', | |
81 'shell/minimal_ash.cc', | |
82 'shell/minimal_ash.h', | |
83 'shell/notify_done_forwarder.cc', | |
84 'shell/notify_done_forwarder.h', | |
85 'shell/paths_mac.h', | |
86 'shell/paths_mac.mm', | |
87 'shell/renderer/shell_content_renderer_client.cc', | |
88 'shell/renderer/shell_content_renderer_client.h', | |
89 'shell/renderer/shell_render_process_observer.cc', | |
90 'shell/renderer/shell_render_process_observer.h', | |
91 'shell/renderer/webkit_test_runner.cc', | |
92 'shell/renderer/webkit_test_runner.h', | |
93 'shell/shell.cc', | |
94 'shell/shell.h', | |
95 'shell/shell_android.cc', | |
96 'shell/shell_aura.cc', | |
97 'shell/shell_gtk.cc', | |
98 'shell/shell_mac.mm', | |
99 'shell/shell_win.cc', | |
100 'shell/shell_application_mac.h', | |
101 'shell/shell_application_mac.mm', | |
102 'shell/shell_browser_context.cc', | |
103 'shell/shell_browser_context.h', | |
104 'shell/shell_browser_main.cc', | |
105 'shell/shell_browser_main.h', | |
106 'shell/shell_browser_main_parts.cc', | |
107 'shell/shell_browser_main_parts.h', | |
108 'shell/shell_browser_main_parts_mac.mm', | |
109 'shell/shell_content_browser_client.cc', | |
110 'shell/shell_content_browser_client.h', | |
111 'shell/shell_devtools_delegate.cc', | |
112 'shell/shell_devtools_delegate.h', | |
113 'shell/shell_devtools_frontend.cc', | |
114 'shell/shell_devtools_frontend.h', | |
115 'shell/shell_download_manager_delegate.cc', | |
116 'shell/shell_download_manager_delegate.h', | |
117 'shell/shell_javascript_dialog_manager.cc', | |
118 'shell/shell_javascript_dialog_manager.h', | |
119 'shell/shell_javascript_dialog_gtk.cc', | |
120 'shell/shell_javascript_dialog_mac.mm', | |
121 'shell/shell_javascript_dialog_win.cc', | |
122 'shell/shell_javascript_dialog.h', | |
123 'shell/shell_login_dialog_gtk.cc', | |
124 'shell/shell_login_dialog_mac.mm', | |
125 'shell/shell_login_dialog.cc', | |
126 'shell/shell_login_dialog.h', | |
127 'shell/shell_message_filter.cc', | |
128 'shell/shell_message_filter.h', | |
129 'shell/shell_network_delegate.cc', | |
130 'shell/shell_network_delegate.h', | |
131 'shell/shell_plugin_service_filter.cc', | |
132 'shell/shell_plugin_service_filter.h', | |
133 'shell/shell_quota_permission_context.cc', | |
134 'shell/shell_quota_permission_context.h', | |
135 'shell/shell_resource_dispatcher_host_delegate.cc', | |
136 'shell/shell_resource_dispatcher_host_delegate.h', | |
137 'shell/shell_url_request_context_getter.cc', | |
138 'shell/shell_url_request_context_getter.h', | |
139 'shell/shell_web_contents_view_delegate_android.cc', | |
140 'shell/shell_web_contents_view_delegate_creator.h', | |
141 'shell/shell_web_contents_view_delegate_gtk.cc', | |
142 'shell/shell_web_contents_view_delegate_mac.mm', | |
143 'shell/shell_web_contents_view_delegate_win.cc', | |
144 'shell/shell_web_contents_view_delegate.h', | |
145 'shell/webkit_test_controller.cc', | |
146 'shell/webkit_test_controller.h', | |
147 'shell/webkit_test_platform_support.h', | |
148 'shell/webkit_test_platform_support_android.cc', | |
149 'shell/webkit_test_platform_support_linux.cc', | |
150 'shell/webkit_test_platform_support_mac.mm', | |
151 'shell/webkit_test_platform_support_win.cc', | |
152 ], | |
153 'msvs_settings': { | |
154 'VCLinkerTool': { | |
155 'SubSystem': '2', # Set /SUBSYSTEM:WINDOWS | |
156 }, | |
157 }, | |
158 'conditions': [ | |
159 ['OS=="win" and win_use_allocator_shim==1', { | |
160 'dependencies': [ | |
161 '../base/allocator/allocator.gyp:allocator', | |
162 ], | |
163 }], | |
164 ['OS=="win"', { | |
165 'resource_include_dirs': [ | |
166 '<(SHARED_INTERMEDIATE_DIR)/webkit', | |
167 ], | |
168 'dependencies': [ | |
169 '<(DEPTH)/webkit/support/webkit_support.gyp:webkit_strings', | |
170 ], | |
171 'configurations': { | |
172 'Debug_Base': { | |
173 'msvs_settings': { | |
174 'VCLinkerTool': { | |
175 'LinkIncremental': '<(msvs_large_module_debug_link_mode)', | |
176 }, | |
177 }, | |
178 }, | |
179 }, | |
180 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations. | |
181 'msvs_disabled_warnings': [ 4267, ], | |
182 }], # OS=="win" | |
183 ['OS=="linux"', { | |
184 'dependencies': [ | |
185 '../build/linux/system.gyp:fontconfig', | |
186 ], | |
187 }], | |
188 ['OS=="android"', { | |
189 'dependencies': [ | |
190 'content_shell_jni_headers', | |
191 ], | |
192 }, { # else: OS!="android" | |
193 'dependencies': [ | |
194 # This dependency is for running DRT against the content shell, and | |
195 # this combination is not yet supported on Android. | |
196 '../webkit/support/webkit_support.gyp:webkit_support', | |
197 ], | |
198 }], # OS=="android" | |
199 ['(os_posix==1 and use_aura==1 and linux_use_tcmalloc==1) or (android_us
e_tcmalloc==1)', { | |
200 'dependencies': [ | |
201 # This is needed by content/app/content_main_runner.cc | |
202 '../base/allocator/allocator.gyp:allocator', | |
203 ], | |
204 }], | |
205 ['use_aura==1', { | |
206 'dependencies': [ | |
207 '../ui/aura/aura.gyp:aura', | |
208 '../ui/base/strings/ui_strings.gyp:ui_strings', | |
209 '../ui/views/controls/webview/webview.gyp:webview', | |
210 '../ui/views/views.gyp:views', | |
211 '../ui/views/views.gyp:views_test_support', | |
212 '../ui/ui.gyp:ui_resources', | |
213 ], | |
214 'sources/': [ | |
215 ['exclude', 'shell/shell_gtk.cc'], | |
216 ['exclude', 'shell/shell_win.cc'], | |
217 ], | |
218 }], # use_aura==1 | |
219 ['chromeos==1', { | |
220 'dependencies': [ | |
221 '../chromeos/chromeos.gyp:chromeos', | |
222 ], | |
223 }], # chromeos==1 | |
224 ['use_ash==1', { | |
225 'dependencies': [ | |
226 '../ash/ash.gyp:ash', | |
227 ], | |
228 }], | |
229 ['use_custom_freetype==1', { | |
230 'dependencies': [ | |
231 '../third_party/freetype2/freetype2.gyp:freetype2', | |
232 ], | |
233 }], | |
234 ['enable_plugins==0', { | |
235 'sources/': [ | |
236 ['exclude', 'shell/shell_plugin_service_filter.cc'], | |
237 ['exclude', 'shell/shell_plugin_service_filter.h'], | |
238 ], | |
239 }] | |
240 ], | |
241 }, | |
242 { | |
243 'target_name': 'content_shell_resources', | |
244 'type': 'none', | |
245 'dependencies': [ | |
246 'generate_content_shell_resources', | |
247 ], | |
248 'variables': { | |
249 'grit_out_dir': '<(SHARED_INTERMEDIATE_DIR)/content', | |
250 }, | |
251 'includes': [ '../build/grit_target.gypi' ], | |
252 'copies': [ | |
253 { | |
254 'destination': '<(PRODUCT_DIR)', | |
255 'files': [ | |
256 '<(SHARED_INTERMEDIATE_DIR)/content/shell_resources.pak' | |
257 ], | |
258 }, | |
259 ], | |
260 }, | |
261 { | |
262 'target_name': 'generate_content_shell_resources', | |
263 'type': 'none', | |
264 'variables': { | |
265 'grit_out_dir': '<(SHARED_INTERMEDIATE_DIR)/content', | |
266 }, | |
267 'actions': [ | |
268 { | |
269 'action_name': 'content_shell_resources', | |
270 'variables': { | |
271 'grit_grd_file': 'shell/shell_resources.grd', | |
272 }, | |
273 'includes': [ '../build/grit_action.gypi' ], | |
274 }, | |
275 ], | |
276 }, | |
277 { | |
278 # We build a minimal set of resources so WebKit in content_shell has | |
279 # access to necessary resources. | |
280 'target_name': 'content_shell_pak', | |
281 'type': 'none', | |
282 'dependencies': [ | |
283 'browser/devtools/devtools_resources.gyp:devtools_resources', | |
284 'content_resources.gyp:content_resources', | |
285 'content_shell_resources', | |
286 '<(DEPTH)/net/net.gyp:net_resources', | |
287 '<(DEPTH)/ui/base/strings/ui_strings.gyp:ui_strings', | |
288 '<(DEPTH)/ui/ui.gyp:ui_resources', | |
289 '<(DEPTH)/webkit/support/webkit_support.gyp:webkit_resources', | |
290 '<(DEPTH)/webkit/support/webkit_support.gyp:webkit_strings', | |
291 ], | |
292 'variables': { | |
293 'repack_path': '<(DEPTH)/tools/grit/grit/format/repack.py', | |
294 }, | |
295 'actions': [ | |
296 { | |
297 'action_name': 'repack_content_shell_pack', | |
298 'variables': { | |
299 'pak_inputs': [ | |
300 '<(SHARED_INTERMEDIATE_DIR)/content/content_resources.pak', | |
301 '<(SHARED_INTERMEDIATE_DIR)/content/shell_resources.pak', | |
302 '<(SHARED_INTERMEDIATE_DIR)/net/net_resources.pak', | |
303 '<(SHARED_INTERMEDIATE_DIR)/ui/app_locale_settings/app_locale_sett
ings_en-US.pak', | |
304 '<(SHARED_INTERMEDIATE_DIR)/ui/ui_resources/ui_resources_100_perce
nt.pak', | |
305 '<(SHARED_INTERMEDIATE_DIR)/ui/ui_resources/webui_resources.pak', | |
306 '<(SHARED_INTERMEDIATE_DIR)/ui/ui_strings/ui_strings_en-US.pak', | |
307 '<(SHARED_INTERMEDIATE_DIR)/webkit/devtools_resources.pak', | |
308 '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_chromium_resources.pak', | |
309 '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_resources_100_percent.pa
k', | |
310 '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_strings_en-US.pak', | |
311 ], | |
312 }, | |
313 'inputs': [ | |
314 '<(repack_path)', | |
315 '<@(pak_inputs)', | |
316 ], | |
317 'action': ['python', '<(repack_path)', '<@(_outputs)', | |
318 '<@(pak_inputs)'], | |
319 'conditions': [ | |
320 ['OS!="android"', { | |
321 'outputs': [ | |
322 '<(PRODUCT_DIR)/content_shell.pak', | |
323 ], | |
324 }, { | |
325 'outputs': [ | |
326 '<(PRODUCT_DIR)/content_shell/assets/content_shell.pak', | |
327 ], | |
328 }], | |
329 ], | |
330 }, | |
331 ], | |
332 }, | |
333 { | |
334 'target_name': 'content_shell', | |
335 'type': 'executable', | |
336 'mac_bundle': 1, | |
337 'defines!': ['CONTENT_IMPLEMENTATION'], | |
338 'variables': { | |
339 'chromium_code': 1, | |
340 }, | |
341 'dependencies': [ | |
342 'content_shell_lib', | |
343 'content_shell_pak', | |
344 '../third_party/mesa/mesa.gyp:osmesa', | |
345 ], | |
346 'include_dirs': [ | |
347 '..', | |
348 ], | |
349 'sources': [ | |
350 'app/startup_helper_win.cc', | |
351 'shell/app/shell_main.cc', | |
352 ], | |
353 'mac_bundle_resources': [ | |
354 'shell/app/app.icns', | |
355 'shell/app/app-Info.plist', | |
356 ], | |
357 # TODO(mark): Come up with a fancier way to do this. It should only | |
358 # be necessary to list app-Info.plist once, not the three times it is | |
359 # listed here. | |
360 'mac_bundle_resources!': [ | |
361 'shell/app/app-Info.plist', | |
362 ], | |
363 'xcode_settings': { | |
364 'INFOPLIST_FILE': 'shell/app/app-Info.plist', | |
365 }, | |
366 'msvs_settings': { | |
367 'VCLinkerTool': { | |
368 'SubSystem': '2', # Set /SUBSYSTEM:WINDOWS | |
369 }, | |
370 'VCManifestTool': { | |
371 'AdditionalManifestFiles': 'shell/app/shell.exe.manifest', | |
372 }, | |
373 }, | |
374 'conditions': [ | |
375 ['OS=="win" and win_use_allocator_shim==1', { | |
376 'dependencies': [ | |
377 '../base/allocator/allocator.gyp:allocator', | |
378 ], | |
379 }], | |
380 ['OS=="win"', { | |
381 'sources': [ | |
382 'shell/app/shell.rc', | |
383 ], | |
384 'configurations': { | |
385 'Debug_Base': { | |
386 'msvs_settings': { | |
387 'VCLinkerTool': { | |
388 'LinkIncremental': '<(msvs_large_module_debug_link_mode)', | |
389 }, | |
390 }, | |
391 }, | |
392 }, | |
393 }], # OS=="win" | |
394 ['OS == "win" or toolkit_uses_gtk == 1', { | |
395 'dependencies': [ | |
396 '../sandbox/sandbox.gyp:sandbox', | |
397 ], | |
398 }], # OS=="win" or toolkit_uses_gtk == 1 | |
399 ['toolkit_uses_gtk == 1', { | |
400 'dependencies': [ | |
401 '<(DEPTH)/build/linux/system.gyp:gtk', | |
402 ], | |
403 }], # toolkit_uses_gtk | |
404 ['OS=="mac"', { | |
405 'product_name': '<(content_shell_product_name)', | |
406 'dependencies!': [ | |
407 'content_shell_lib', | |
408 ], | |
409 'dependencies': [ | |
410 'content_shell_framework', | |
411 'content_shell_helper_app', | |
412 ], | |
413 'copies': [ | |
414 { | |
415 'destination': '<(PRODUCT_DIR)/<(content_shell_product_name).app/C
ontents/Frameworks', | |
416 'files': [ | |
417 '<(PRODUCT_DIR)/<(content_shell_product_name) Helper.app', | |
418 ], | |
419 }, | |
420 ], | |
421 'postbuilds': [ | |
422 { | |
423 'postbuild_name': 'Copy <(content_shell_product_name) Framework.fr
amework', | |
424 'action': [ | |
425 '../build/mac/copy_framework_unversioned.sh', | |
426 '${BUILT_PRODUCTS_DIR}/<(content_shell_product_name) Framework.f
ramework', | |
427 '${BUILT_PRODUCTS_DIR}/${CONTENTS_FOLDER_PATH}/Frameworks', | |
428 ], | |
429 }, | |
430 { | |
431 'postbuild_name': 'Fix Framework Link', | |
432 'action': [ | |
433 'install_name_tool', | |
434 '-change', | |
435 '/Library/Frameworks/<(content_shell_product_name) Framework.fra
mework/Versions/A/<(content_shell_product_name) Framework', | |
436 '@executable_path/../Frameworks/<(content_shell_product_name) Fr
amework.framework/<(content_shell_product_name) Framework', | |
437 '${BUILT_PRODUCTS_DIR}/${EXECUTABLE_PATH}' | |
438 ], | |
439 }, | |
440 { | |
441 # Modify the Info.plist as needed. | |
442 'postbuild_name': 'Tweak Info.plist', | |
443 'action': ['../build/mac/tweak_info_plist.py', | |
444 '--scm=1', | |
445 '--version=<(content_shell_version)'], | |
446 }, | |
447 { | |
448 # This postbuid step is responsible for creating the following | |
449 # helpers: | |
450 # | |
451 # Content Shell Helper EH.app and Content Shell Helper NP.app are | |
452 # created from Content Shell Helper.app. | |
453 # | |
454 # The EH helper is marked for an executable heap. The NP helper | |
455 # is marked for no PIE (ASLR). | |
456 'postbuild_name': 'Make More Helpers', | |
457 'action': [ | |
458 '../build/mac/make_more_helpers.sh', | |
459 'Frameworks', | |
460 '<(content_shell_product_name)', | |
461 ], | |
462 }, | |
463 { | |
464 # Make sure there isn't any Objective-C in the shell's | |
465 # executable. | |
466 'postbuild_name': 'Verify No Objective-C', | |
467 'action': [ | |
468 '../build/mac/verify_no_objc.sh', | |
469 ], | |
470 }, | |
471 ], | |
472 }], # OS=="mac" | |
473 ], | |
474 }, | |
475 { | |
476 'target_name': 'content_shell_builder', | |
477 'type': 'none', | |
478 'dependencies': [ | |
479 'content_shell', | |
480 ], | |
481 }, | |
482 ], | |
483 'conditions': [ | |
484 ['OS=="mac"', { | |
485 'targets': [ | |
486 { | |
487 'target_name': 'content_shell_framework', | |
488 'type': 'shared_library', | |
489 'product_name': '<(content_shell_product_name) Framework', | |
490 'mac_bundle': 1, | |
491 'mac_bundle_resources': [ | |
492 'shell/app/English.lproj/HttpAuth.xib', | |
493 'shell/app/English.lproj/MainMenu.xib', | |
494 '<(PRODUCT_DIR)/content_shell.pak' | |
495 ], | |
496 'dependencies': [ | |
497 'content_shell_lib', | |
498 ], | |
499 'include_dirs': [ | |
500 '..', | |
501 ], | |
502 'sources': [ | |
503 'shell/shell_content_main.cc', | |
504 'shell/shell_content_main.h', | |
505 ], | |
506 'copies': [ | |
507 { | |
508 # Copy FFmpeg binaries for audio/video support. | |
509 'destination': '<(PRODUCT_DIR)/$(CONTENTS_FOLDER_PATH)/Libraries', | |
510 'files': [ | |
511 '<(PRODUCT_DIR)/ffmpegsumo.so', | |
512 ], | |
513 }, | |
514 ], | |
515 'conditions': [ | |
516 ['enable_webrtc==1', { | |
517 'variables': { | |
518 'libpeer_target_type%': 'static_library', | |
519 }, | |
520 'conditions': [ | |
521 ['libpeer_target_type!="static_library"', { | |
522 'copies': [{ | |
523 'destination': '<(PRODUCT_DIR)/$(CONTENTS_FOLDER_PATH)/Librar
ies', | |
524 'files': [ | |
525 '<(PRODUCT_DIR)/libpeerconnection.so', | |
526 ], | |
527 }], | |
528 }], | |
529 ], | |
530 }], | |
531 ], | |
532 }, # target content_shell_framework | |
533 { | |
534 'target_name': 'content_shell_helper_app', | |
535 'type': 'executable', | |
536 'variables': { 'enable_wexit_time_destructors': 1, }, | |
537 'product_name': '<(content_shell_product_name) Helper', | |
538 'mac_bundle': 1, | |
539 'dependencies': [ | |
540 'content_shell_framework', | |
541 ], | |
542 'sources': [ | |
543 'shell/app/shell_main.cc', | |
544 'shell/app/helper-Info.plist', | |
545 ], | |
546 # TODO(mark): Come up with a fancier way to do this. It should only | |
547 # be necessary to list helper-Info.plist once, not the three times it | |
548 # is listed here. | |
549 'mac_bundle_resources!': [ | |
550 'shell/app/helper-Info.plist', | |
551 ], | |
552 # TODO(mark): For now, don't put any resources into this app. Its | |
553 # resources directory will be a symbolic link to the browser app's | |
554 # resources directory. | |
555 'mac_bundle_resources/': [ | |
556 ['exclude', '.*'], | |
557 ], | |
558 'xcode_settings': { | |
559 'INFOPLIST_FILE': 'shell/app/helper-Info.plist', | |
560 }, | |
561 'postbuilds': [ | |
562 { | |
563 # The framework defines its load-time path | |
564 # (DYLIB_INSTALL_NAME_BASE) relative to the main executable | |
565 # (chrome). A different relative path needs to be used in | |
566 # content_shell_helper_app. | |
567 'postbuild_name': 'Fix Framework Link', | |
568 'action': [ | |
569 'install_name_tool', | |
570 '-change', | |
571 '/Library/Frameworks/<(content_shell_product_name) Framework.fra
mework/Versions/A/<(content_shell_product_name) Framework', | |
572 '@executable_path/../../../../Frameworks/<(content_shell_product
_name) Framework.framework/<(content_shell_product_name) Framework', | |
573 '${BUILT_PRODUCTS_DIR}/${EXECUTABLE_PATH}' | |
574 ], | |
575 }, | |
576 { | |
577 # Modify the Info.plist as needed. The script explains why this | |
578 # is needed. This is also done in the chrome and chrome_dll | |
579 # targets. In this case, --breakpad=0, --keystone=0, and --scm=0 | |
580 # are used because Breakpad, Keystone, and SCM keys are | |
581 # never placed into the helper. | |
582 'postbuild_name': 'Tweak Info.plist', | |
583 'action': ['../build/mac/tweak_info_plist.py', | |
584 '--breakpad=0', | |
585 '--keystone=0', | |
586 '--scm=0', | |
587 '--version=<(content_shell_version)'], | |
588 }, | |
589 { | |
590 # Make sure there isn't any Objective-C in the helper app's | |
591 # executable. | |
592 'postbuild_name': 'Verify No Objective-C', | |
593 'action': [ | |
594 '../build/mac/verify_no_objc.sh', | |
595 ], | |
596 }, | |
597 ], | |
598 'conditions': [ | |
599 ['component=="shared_library"', { | |
600 'xcode_settings': { | |
601 'LD_RUNPATH_SEARCH_PATHS': [ | |
602 # Get back from Content Shell.app/Contents/Frameworks/ | |
603 # Helper.app/Contents/MacOS | |
604 '@loader_path/../../../../../..', | |
605 ], | |
606 }, | |
607 }], | |
608 ], | |
609 }, # target content_shell_helper_app | |
610 ], | |
611 }], # OS=="mac" | |
612 ['OS=="android"', { | |
613 'targets': [ | |
614 { | |
615 # TODO(jrg): Update this action and other jni generators to only | |
616 # require specifying the java directory and generate the rest. | |
617 'target_name': 'content_shell_jni_headers', | |
618 'type': 'none', | |
619 'sources': [ | |
620 'shell/android/browsertests_apk/src/org/chromium/content_browsertest
s_apk/ContentBrowserTestsActivity.java', | |
621 'shell/android/java/src/org/chromium/content_shell/ShellManager.java
', | |
622 'shell/android/java/src/org/chromium/content_shell/Shell.java', | |
623 ], | |
624 'direct_dependent_settings': { | |
625 'include_dirs': [ | |
626 '<(SHARED_INTERMEDIATE_DIR)/content/shell', | |
627 ], | |
628 }, | |
629 'variables': { | |
630 'jni_gen_package': 'content/shell', | |
631 }, | |
632 'includes': [ '../build/jni_generator.gypi' ], | |
633 }, | |
634 { | |
635 'target_name': 'libcontent_shell_content_view', | |
636 'type': 'shared_library', | |
637 'dependencies': [ | |
638 'content_shell_jni_headers', | |
639 'content_shell_lib', | |
640 'content_shell_pak', | |
641 # Skia is necessary to ensure the dependencies needed by | |
642 # WebContents are included. | |
643 '../skia/skia.gyp:skia', | |
644 '<(DEPTH)/media/media.gyp:player_android', | |
645 ], | |
646 'sources': [ | |
647 'shell/android/shell_library_loader.cc', | |
648 'shell/android/shell_library_loader.h', | |
649 ], | |
650 'conditions': [ | |
651 ['android_webview_build==1', { | |
652 'ldflags': [ | |
653 '-lgabi++', # For rtti | |
654 ], | |
655 }], | |
656 ], | |
657 }, | |
658 { | |
659 'target_name': 'content_shell_java', | |
660 'type': 'none', | |
661 'dependencies': [ | |
662 'content_java', | |
663 ], | |
664 'variables': { | |
665 'java_in_dir': '../content/shell/android/java', | |
666 'has_java_resources': 1, | |
667 'R_package': 'org.chromium.content_shell', | |
668 'R_package_relpath': 'org/chromium/content_shell', | |
669 }, | |
670 'includes': [ '../build/java.gypi' ], | |
671 }, | |
672 { | |
673 # content_shell_apk creates a .jar as a side effect. Any java targets | |
674 # that need that .jar in their classpath should depend on this target, | |
675 # content_shell_apk_java. Dependents of content_shell_apk receive its | |
676 # jar path in the variable 'apk_output_jar_path'. This target should | |
677 # only be used by targets which instrument content_shell_apk. | |
678 'target_name': 'content_shell_apk_java', | |
679 'type': 'none', | |
680 'dependencies': [ | |
681 'content_shell_apk', | |
682 ], | |
683 'includes': [ '../build/apk_fake_jar.gypi' ], | |
684 }, | |
685 { | |
686 'target_name': 'content_shell_apk', | |
687 'type': 'none', | |
688 'dependencies': [ | |
689 'content_java', | |
690 'content_java_test_support', | |
691 'content_shell_java', | |
692 'libcontent_shell_content_view', | |
693 '../base/base.gyp:base_java', | |
694 '../media/media.gyp:media_java', | |
695 '../net/net.gyp:net_java', | |
696 '../ui/ui.gyp:ui_java', | |
697 ], | |
698 'variables': { | |
699 'apk_name': 'ContentShell', | |
700 'manifest_package_name': 'org.chromium.content_shell_apk', | |
701 'java_in_dir': 'shell/android/shell_apk', | |
702 'resource_dir': 'shell/android/shell_apk/res', | |
703 'native_lib_target': 'libcontent_shell_content_view', | |
704 'additional_input_paths': ['<(PRODUCT_DIR)/content_shell/assets/cont
ent_shell.pak'], | |
705 'asset_location': '<(ant_build_out)/content_shell/assets', | |
706 }, | |
707 'includes': [ '../build/java_apk.gypi' ], | |
708 }, | |
709 ], | |
710 }], # OS=="android" | |
711 ] | |
712 } | |
OLD | NEW |