Index: mojo/shell/BUILD.gn |
diff --git a/mojo/shell/BUILD.gn b/mojo/shell/BUILD.gn |
index 491dd17cb1aef8003a359dc57b0f69f067911c35..3fb1f456492e796dc693397f7a74dfb5f5f711c4 100644 |
--- a/mojo/shell/BUILD.gn |
+++ b/mojo/shell/BUILD.gn |
@@ -6,6 +6,11 @@ import("//build/config/ui.gni") |
import("//mojo/public/mojo.gni") |
import("//mojo/public/tools/bindings/mojom.gni") |
+if (is_android) { |
+ import("//build/config/android/config.gni") |
+ import("//build/config/android/rules.gni") |
+} |
+ |
if (!use_prebuilt_mojo_shell) { |
# GYP version: mojo/mojo.gyp:mojo_shell |
@@ -98,6 +103,62 @@ source_set("lib") { |
} |
} |
+if (is_android) { |
+ generate_jni("jni_headers") { |
+ sources = [ |
+ "android/apk/src/org/chromium/mojo_shell_apk/MojoMain.java", |
+ ] |
+ jni_package = "mojo" |
+ } |
+ |
+ android_library("java") { |
+ deps = [ |
+ "//base:base_java", |
+ "//net/android:net_java", |
+ ] |
+ java_files = [ |
+ "android/apk/src/org/chromium/mojo_shell_apk/MojoMain.java", |
+ "android/apk/src/org/chromium/mojo_shell_apk/MojoShellActivity.java", |
+ "android/apk/src/org/chromium/mojo_shell_apk/MojoShellApplication.java", |
+ ] |
+ } |
+ |
+ android_resources("resources") { |
+ resource_dirs = [ "android/apk/res" ] |
+ custom_package = "org.chromium.mojo_shell_apk" |
+ } |
+ |
+ shared_library("libmojo_shell") { |
+ deps = [ |
+ ":jni_headers", |
+ ":lib", |
+ "//ui/gl", |
+ ] |
+ |
+ sources = [ |
+ "android/library_loader.cc", |
+ "android/mojo_main.cc", |
+ "android/mojo_main.h", |
+ ] |
+ } |
+ |
+ android_apk("mojo_shell_apk") { |
+ deps = [ |
+ ":java", |
+ ":libmojo_shell", |
+ ":resources", |
+ "//mojo/services/native_viewport:native_viewport_java", |
+ ] |
+ |
+ native_libs = [ |
+ "libmojo_shell.so" |
+ ] |
+ |
+ apk_name = "MojoShell" |
+ android_manifest = "android/apk/AndroidManifest.xml" |
+ } |
+} |
+ |
mojom("app_child_process_bindings") { |
sources = [ |
"app_child_process.mojom" |