blob: 5843b1212b524879af40a8787e3009e69ddeb513 [file] [log] [blame]
# 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",
]
}
}