| # Copyright 2014 The Chromium Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import("//build/config/android/config.gni") |
| import("//build/config/android/rules.gni") |
| import("//third_party/icu/config.gni") |
| |
| generate_jni("content_shell_jni_headers") { |
| jni_package = "content/shell" |
| sources = [ |
| "browsertests_apk/src/org/chromium/content_browsertests_apk/ContentBrowserTestsActivity.java", |
| "java/src/org/chromium/content_shell/ShellLayoutTestUtils.java", |
| "java/src/org/chromium/content_shell/ShellManager.java", |
| "java/src/org/chromium/content_shell/ShellMojoTestUtils.java", |
| "java/src/org/chromium/content_shell/Shell.java", |
| ] |
| } |
| |
| shared_library("libcontent_shell_content_view") { |
| testonly = true |
| deps = [ |
| ":content_shell_jni_headers", |
| "//content/shell:content_shell_lib", |
| "//content/shell:pak", |
| "//components/crash/browser", |
| "//skia", |
| "//media/base/android", |
| ] |
| sources = [ |
| "shell_library_loader.cc", |
| "shell_library_loader.h", |
| ] |
| if (is_android_webview_build) { |
| ldflags = [ |
| "-lgabi++", |
| ] |
| } |
| } |
| |
| android_resources("content_shell_java_resources") { |
| testonly = true |
| resource_dirs = [ "java/res" ] |
| custom_package = "org.chromium.content_shell" |
| } |
| |
| android_library("content_shell_java") { |
| testonly = true |
| deps = [ |
| "//base:base_java", |
| "//content/public/android:content_java", |
| "//media/base/android:media_java", |
| "//mojo/public/java:system", |
| "//net/android:net_java", |
| "//ui/android:ui_java", |
| ":content_shell_java_resources", |
| ] |
| DEPRECATED_java_in_dir = "java/src" |
| } |
| |
| android_resources("content_shell_apk_resources") { |
| testonly = true |
| resource_dirs = [ "shell_apk/res" ] |
| deps = [ |
| ":content_shell_java_resources" |
| ] |
| android_manifest = "shell_apk/AndroidManifest.xml" |
| } |
| |
| android_library("content_shell_apk_java") { |
| testonly = true |
| deps = [ |
| ":content_shell_apk_resources", |
| ":content_shell_java", |
| "//base:base_java", |
| "//content/public/android:content_java", |
| "//media/base/android:media_java", |
| "//net/android:net_java", |
| "//ui/android:ui_java", |
| ] |
| DEPRECATED_java_in_dir = "shell_apk/src" |
| } |
| |
| content_shell_assets_dir = "$root_build_dir/content_shell/assets" |
| copy_ex("copy_content_shell_assets") { |
| clear_dir = true |
| dest = content_shell_assets_dir |
| sources = [ |
| "$root_out_dir/content_shell.pak" |
| ] |
| |
| if (icu_use_data_file) { |
| sources += [ |
| "$root_build_dir/icudtl.dat" |
| ] |
| } |
| } |
| |
| android_apk("content_shell_apk") { |
| use_chromium_linker = true |
| testonly = true |
| datadeps = [ |
| # "//tools/android/forwarder", |
| ] |
| deps = [ |
| ":content_shell_apk_resources", |
| ":content_shell_java", |
| ":content_shell_apk_java", |
| ":libcontent_shell_content_view", |
| ":copy_content_shell_assets", |
| "//base:base_java", |
| "//content/public/android:content_java", |
| "//media/base/android:media_java", |
| "//net/android:net_java", |
| #"//third_party/mesa:osmesa_in_lib_dir", |
| "//ui/android:ui_java", |
| ] |
| apk_name = "ContentShell" |
| android_manifest = "shell_apk/AndroidManifest.xml" |
| native_libs = [ |
| "$root_build_dir/lib.stripped/libcontent_shell_content_view.so" |
| ] |
| asset_location = content_shell_assets_dir |
| |
| # TODO(GYP) |
| #'extra_native_libs': ['<(SHARED_LIB_DIR)/libosmesa.so'], |
| |
| if (is_android_webview_build) { |
| # TODO(GYP) |
| } |
| } |
| |
| android_library("content_shell_test_java") { |
| testonly = true |
| deps = [ |
| ":content_shell_java", |
| ":content_shell_apk_java", |
| "//base:base_java", |
| "//base:base_java_test_support", |
| "//content/public/test/android:content_java_test_support", |
| "//content/shell/android:content_shell_java", |
| "//content/public/android:content_java", |
| ] |
| DEPRECATED_java_in_dir = "javatests/src" |
| } |
| |
| android_apk("content_shell_test_apk") { |
| testonly = true |
| deps = [ |
| "//content/public/android:content_javatests", |
| "//base:base_javatests", |
| "//net/android:net_javatests", |
| ] |
| datadeps = [ |
| ":content_shell_apk", |
| ] |
| apk_name = "ContentShellTest" |
| android_manifest = "javatests/AndroidManifest.xml" |
| } |
| |
| if (cpu_arch != "x64" && cpu_arch != "arm64") { |
| |
| android_resources("linker_resources") { |
| resource_dirs = [ "linker_test_apk/res" ] |
| android_manifest = "linker_test_apk/AndroidManifest.xml" |
| } |
| |
| # GYP: //content/content_tests.gypi:chromium_linker_test_apk |
| android_apk("chromium_linker_test_apk") { |
| testonly = true |
| deps = [ |
| ":content_shell_java", |
| ":copy_content_shell_assets", |
| ":linker_resources", |
| ":linker_test", |
| "//base:base_java", |
| "//content/public/android:content_java", |
| "//ui/android:ui_java", |
| ] |
| android_manifest = "linker_test_apk/AndroidManifest.xml" |
| asset_location = content_shell_assets_dir |
| apk_name = "ChromiumLinkerTest" |
| DEPRECATED_java_in_dir = "linker_test_apk/src" |
| native_libs = [ |
| "$root_build_dir/lib.stripped/liblinker_test.so" |
| ] |
| use_chromium_linker = true |
| enable_chromium_linker_tests = true |
| } |
| |
| |
| # GYP: //content/content_tests.gypi:chromium_android_linker_test |
| shared_library("linker_test") { |
| testonly = true |
| sources = [ |
| "linker_test_apk/chromium_linker_test_android.cc", |
| "linker_test_apk/chromium_linker_test_linker_tests.cc", |
| ] |
| |
| deps = [ |
| ":linker_test_jni_headers", |
| "//content/shell:content_shell_lib", |
| # Required to include "content/public/browser/android/compositor.h" |
| # in chromium_linker_test_android.cc :-( |
| "//skia", |
| ] |
| } |
| |
| # GYP: //content/content_tests.gypi:chromium_android_linker_test_jni_headers |
| generate_jni("linker_test_jni_headers") { |
| testonly = true |
| jni_package = "content/shell" |
| sources = [ |
| "linker_test_apk/src/org/chromium/chromium_linker_test_apk/LinkerTests.java", |
| ] |
| } |
| } |