OLD | NEW |
1 # Copyright 2015 The Chromium Authors. All rights reserved. | 1 # Copyright 2015 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 assert(is_android) | 5 assert(is_android) |
6 | 6 |
7 import("//third_party/mojo/src/mojo/public/mojo.gni") | 7 import("//third_party/mojo/src/mojo/public/mojo.gni") |
8 import("//build/config/android/config.gni") | 8 import("//build/config/android/config.gni") |
9 import("//build/config/android/rules.gni") | 9 import("//build/config/android/rules.gni") |
| 10 import("//mojo/generate_mojo_shell_assets_list.gni") |
10 | 11 |
11 mojo_runner_assets_dir = "$root_build_dir/mojo_runner_assets" | 12 mandoline_assets_dir = "$root_build_dir/mandoline_assets" |
12 | 13 |
13 group("android") { | 14 group("android") { |
14 deps = [ | 15 deps = [ |
15 ":mandoline_apk", | 16 ":mandoline_apk", |
16 ] | 17 ] |
17 } | 18 } |
18 | 19 |
| 20 executable("mandoline_runner") { |
| 21 deps = [ |
| 22 "//mojo/common", |
| 23 "//mojo/environment:chromium", |
| 24 "//mojo/runner:mojo_runner_lib", |
| 25 ] |
| 26 |
| 27 sources = [ |
| 28 "../core_services_initialization.cc", |
| 29 "mandoline_context_init.cc", |
| 30 ] |
| 31 |
| 32 # On android, the executable is also the native library used by the apk. |
| 33 # It means dynamic symbols must be preserved and exported. |
| 34 ldflags = [ "-Wl,--export-dynamic" ] |
| 35 } |
| 36 |
| 37 copy("copy_mandoline_runner") { |
| 38 deps = [ |
| 39 ":mandoline_runner", |
| 40 ] |
| 41 sources = [ |
| 42 "$root_out_dir/exe.stripped/mandoline_runner", |
| 43 ] |
| 44 outputs = [ |
| 45 "$root_out_dir/lib.stripped/libmandoline_runner.so", |
| 46 ] |
| 47 } |
| 48 |
| 49 copy_ex("copy_mandoline_assets") { |
| 50 clear_dir = true |
| 51 dest = mandoline_assets_dir |
| 52 deps = [ |
| 53 "//components/html_viewer", |
| 54 "//components/resource_provider", |
| 55 "//components/surfaces", |
| 56 "//mandoline/services/core_services", |
| 57 ] |
| 58 sources = [ |
| 59 "$root_out_dir/core_services.mojo", |
| 60 "$root_out_dir/html_viewer", |
| 61 "$root_out_dir/lib.stripped/libbootstrap.so", |
| 62 "$root_out_dir/network_service.mojo", |
| 63 "$root_out_dir/obj/mojo/runner/bootstrap_java.dex.jar", |
| 64 "$root_out_dir/resource_provider.mojo", |
| 65 "$root_out_dir/surfaces_service.mojo", |
| 66 ] |
| 67 } |
| 68 |
| 69 generate_mojo_shell_assets_list("build_mandoline_assets") { |
| 70 deps = [ |
| 71 ":copy_mandoline_assets", |
| 72 ] |
| 73 dir = mandoline_assets_dir |
| 74 } |
| 75 |
19 android_apk("mandoline_apk") { | 76 android_apk("mandoline_apk") { |
20 apk_name = "Mandoline" | 77 apk_name = "Mandoline" |
21 | 78 |
22 android_manifest = "apk/AndroidManifest.xml" | 79 android_manifest = "apk/AndroidManifest.xml" |
23 | 80 |
24 native_libs = [ "libmojo_runner.so" ] | 81 native_libs = [ "libmandoline_runner.so" ] |
25 | 82 |
26 asset_location = mojo_runner_assets_dir | 83 asset_location = mandoline_assets_dir |
27 | 84 |
28 deps = [ | 85 deps = [ |
29 "//mojo/runner:copy_mojo_runner", | 86 ":build_mandoline_assets", |
30 "//mojo/runner:copy_mojo_runner_assets", | 87 ":copy_mandoline_runner", |
31 "//mojo/runner:java", | 88 "//mojo/runner:java", |
32 "//mojo/runner:resources", | 89 "//mojo/runner:resources", |
33 "//base:base_java", | 90 "//base:base_java", |
34 "//components/native_viewport:native_viewport_java", | 91 "//components/native_viewport:native_viewport_java", |
35 "//third_party/android_tools:google_play_services_default_resources", | 92 "//third_party/android_tools:google_play_services_default_resources", |
36 ] | 93 ] |
37 } | 94 } |
OLD | NEW |