blob: 3c6af4d6e44cc7972f0fb412237ff80ce051d9dc [file] [log] [blame]
cjhopmancd7694af2014-09-08 00:00:041# Copyright 2014 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
5import("//build/config/android/config.gni")
6import("//build/config/android/rules.gni")
dpranked4da5ab42015-10-13 06:20:337import("//build_overrides/v8.gni")
cjhopman2fd48fd2014-09-24 00:52:568import("//third_party/icu/config.gni")
cjhopmancd7694af2014-09-08 00:00:049
10generate_jni("content_shell_jni_headers") {
11 jni_package = "content/shell"
12 sources = [
scottmg7c7296f42015-02-28 02:23:0913 "java/src/org/chromium/content_shell/Shell.java",
cjhopmancd7694af2014-09-08 00:00:0414 "java/src/org/chromium/content_shell/ShellLayoutTestUtils.java",
15 "java/src/org/chromium/content_shell/ShellManager.java",
ppif581fe92014-10-08 18:52:1916 "java/src/org/chromium/content_shell/ShellMojoTestUtils.java",
cjhopmancd7694af2014-09-08 00:00:0417 ]
18}
19
20shared_library("libcontent_shell_content_view") {
cjhopman2fd48fd2014-09-24 00:52:5621 testonly = true
cjhopmancd7694af2014-09-08 00:00:0422 deps = [
23 ":content_shell_jni_headers",
brettwba7a73d2015-08-31 22:17:3924 "//build/config/sanitizers:deps",
agrieved7a71c882015-11-20 19:53:2825 "//components/crash/content/browser",
cjhopman2fd48fd2014-09-24 00:52:5626 "//content/shell:content_shell_lib",
27 "//content/shell:pak",
cjhopmancd7694af2014-09-08 00:00:0428 "//media/base/android",
agrieved7a71c882015-11-20 19:53:2829 "//skia",
cjhopmancd7694af2014-09-08 00:00:0430 ]
31 sources = [
cjhopman2fd48fd2014-09-24 00:52:5632 "shell_library_loader.cc",
cjhopmancd7694af2014-09-08 00:00:0433 ]
cjhopmancd7694af2014-09-08 00:00:0434}
35
36android_resources("content_shell_java_resources") {
cjhopman2fd48fd2014-09-24 00:52:5637 testonly = true
cjhopmancd7694af2014-09-08 00:00:0438 resource_dirs = [ "java/res" ]
39 custom_package = "org.chromium.content_shell"
40}
41
42android_library("content_shell_java") {
cjhopman2fd48fd2014-09-24 00:52:5643 testonly = true
cjhopmancd7694af2014-09-08 00:00:0444 deps = [
agrieved7a71c882015-11-20 19:53:2845 ":content_shell_java_resources",
cjhopmancd7694af2014-09-08 00:00:0446 "//base:base_java",
47 "//content/public/android:content_java",
cjhopman394dfd12014-09-09 08:55:5448 "//media/base/android:media_java",
rockot85dce0862015-11-13 01:33:5949 "//mojo/public/java:system",
cjhopmancd7694af2014-09-08 00:00:0450 "//net/android:net_java",
51 "//ui/android:ui_java",
cjhopmancd7694af2014-09-08 00:00:0452 ]
53 DEPRECATED_java_in_dir = "java/src"
54}
55
scottmg6da1b582014-12-08 18:31:1556content_shell_manifest =
57 "$target_gen_dir/content_shell_manifest/AndroidManifest.xml"
sievers0350cad2014-12-03 23:50:5558
59jinja_template("content_shell_manifest") {
60 testonly = true
sievers4c08a9c2014-12-05 01:57:2861 input = "shell_apk/AndroidManifest.xml.jinja2"
sievers0350cad2014-12-03 23:50:5562 output = content_shell_manifest
63}
64
cjhopmancd7694af2014-09-08 00:00:0465android_resources("content_shell_apk_resources") {
cjhopman2fd48fd2014-09-24 00:52:5666 testonly = true
cjhopmancd7694af2014-09-08 00:00:0467 resource_dirs = [ "shell_apk/res" ]
68 deps = [
scottmg7afc4092014-12-03 19:22:4269 ":content_shell_java_resources",
brettwf9505792015-06-03 19:43:3870 ":content_shell_manifest",
cjhopmancd7694af2014-09-08 00:00:0471 ]
sievers0350cad2014-12-03 23:50:5572 android_manifest = content_shell_manifest
cjhopmancd7694af2014-09-08 00:00:0473}
74
cjhopman394dfd12014-09-09 08:55:5475android_library("content_shell_apk_java") {
cjhopman2fd48fd2014-09-24 00:52:5676 testonly = true
cjhopman394dfd12014-09-09 08:55:5477 deps = [
78 ":content_shell_apk_resources",
79 ":content_shell_java",
80 "//base:base_java",
81 "//content/public/android:content_java",
82 "//media/base/android:media_java",
83 "//net/android:net_java",
84 "//ui/android:ui_java",
85 ]
86 DEPRECATED_java_in_dir = "shell_apk/src"
87}
88
pkotwicz8c7027d2015-11-11 06:30:0789android_assets("content_shell_assets") {
cjhopman2fd48fd2014-09-24 00:52:5690 sources = [
scottmg7afc4092014-12-03 19:22:4291 "$root_out_dir/content_shell.pak",
cjhopman2fd48fd2014-09-24 00:52:5692 ]
pkotwicz8c7027d2015-11-11 06:30:0793 disable_compression = true
brettwf9505792015-06-03 19:43:3894 deps = [
95 "//content/shell:pak",
pkotwicz8c7027d2015-11-11 06:30:0796 "//third_party/icu:icu_assets",
97 "//v8:v8_external_startup_data_assets",
brettwf9505792015-06-03 19:43:3898 ]
cjhopman2fd48fd2014-09-24 00:52:5699}
100
cjhopmancd7694af2014-09-08 00:00:04101android_apk("content_shell_apk") {
cjhopman2fd48fd2014-09-24 00:52:56102 testonly = true
cjhopmancd7694af2014-09-08 00:00:04103 deps = [
brettwf9505792015-06-03 19:43:38104 ":content_shell_apk_java",
cjhopmancd7694af2014-09-08 00:00:04105 ":content_shell_apk_resources",
pkotwicz8c7027d2015-11-11 06:30:07106 ":content_shell_assets",
cjhopmancd7694af2014-09-08 00:00:04107 ":content_shell_java",
brettwf9505792015-06-03 19:43:38108 ":content_shell_manifest",
brettwf9505792015-06-03 19:43:38109 ":libcontent_shell_content_view",
cjhopmancd7694af2014-09-08 00:00:04110 "//base:base_java",
111 "//content/public/android:content_java",
cjhopman394dfd12014-09-09 08:55:54112 "//media/base/android:media_java",
cjhopmancd7694af2014-09-08 00:00:04113 "//net/android:net_java",
agrieveda37b9ba52015-12-03 02:17:06114 "//third_party/mesa:osmesa",
cjhopmancd7694af2014-09-08 00:00:04115 "//ui/android:ui_java",
116 ]
117 apk_name = "ContentShell"
sievers0350cad2014-12-03 23:50:55118 android_manifest = content_shell_manifest
scottmg7afc4092014-12-03 19:22:42119 native_libs = [ "libcontent_shell_content_view.so" ]
agrieveda37b9ba52015-12-03 02:17:06120 loadable_modules = [ "$root_out_dir/libosmesa.so" ]
cjhopmancd7694af2014-09-08 00:00:04121}
cjhopman394dfd12014-09-09 08:55:54122
123android_library("content_shell_test_java") {
cjhopman2fd48fd2014-09-24 00:52:56124 testonly = true
cjhopman394dfd12014-09-09 08:55:54125 deps = [
cjhopman394dfd12014-09-09 08:55:54126 ":content_shell_apk_java",
agrieved7a71c882015-11-20 19:53:28127 ":content_shell_java",
cjhopman394dfd12014-09-09 08:55:54128 "//base:base_java",
129 "//base:base_java_test_support",
agrieved7a71c882015-11-20 19:53:28130 "//content/public/android:content_java",
cjhopman394dfd12014-09-09 08:55:54131 "//content/public/test/android:content_java_test_support",
132 "//content/shell/android:content_shell_java",
cjhopman394dfd12014-09-09 08:55:54133 ]
134 DEPRECATED_java_in_dir = "javatests/src"
135}
136
mikecase56d80d72015-06-03 00:57:26137instrumentation_test_apk("content_shell_test_apk") {
cjhopman394dfd12014-09-09 08:55:54138 deps = [
cjhopman394dfd12014-09-09 08:55:54139 "//base:base_javatests",
agrieved7a71c882015-11-20 19:53:28140 "//content/public/android:content_javatests",
cjhopman394dfd12014-09-09 08:55:54141 "//net/android:net_javatests",
142 ]
agrieveb37b7122015-10-23 03:53:41143 data_deps = [
144 ":content_shell_apk",
145 ]
cjhopman7b9ba2e2015-04-22 23:31:53146 apk_under_test = ":content_shell_apk"
cjhopman394dfd12014-09-09 08:55:54147 apk_name = "ContentShellTest"
148 android_manifest = "javatests/AndroidManifest.xml"
mikecase56d80d72015-06-03 00:57:26149 isolate_file = "../../content_shell_test_apk.isolate"
cjhopman394dfd12014-09-09 08:55:54150}
cjhopmanaac45ed82014-10-17 22:08:19151
simonb51958d62015-09-01 19:04:42152if (current_cpu != "x64") {
scottmg6da1b582014-12-08 18:31:15153 chromium_linker_test_manifest =
154 "$target_gen_dir/linker_test_apk/AndroidManifest.xml"
sievers0350cad2014-12-03 23:50:55155
156 jinja_template("chromium_linker_test_manifest") {
157 testonly = true
sievers4c08a9c2014-12-05 01:57:28158 input = "linker_test_apk/AndroidManifest.xml.jinja2"
sievers0350cad2014-12-03 23:50:55159 output = chromium_linker_test_manifest
160 }
161
cjhopmanaac45ed82014-10-17 22:08:19162 android_resources("linker_resources") {
brettwf9505792015-06-03 19:43:38163 testonly = true
cjhopmanaac45ed82014-10-17 22:08:19164 resource_dirs = [ "linker_test_apk/res" ]
sievers0350cad2014-12-03 23:50:55165 android_manifest = chromium_linker_test_manifest
brettwf9505792015-06-03 19:43:38166 deps = [
167 ":chromium_linker_test_manifest",
168 ]
cjhopmanaac45ed82014-10-17 22:08:19169 }
170
171 # GYP: //content/content_tests.gypi:chromium_linker_test_apk
172 android_apk("chromium_linker_test_apk") {
173 testonly = true
174 deps = [
brettwf9505792015-06-03 19:43:38175 ":chromium_linker_test_manifest",
pkotwicz8c7027d2015-11-11 06:30:07176 ":content_shell_assets",
cjhopmanaac45ed82014-10-17 22:08:19177 ":content_shell_java",
cjhopmanaac45ed82014-10-17 22:08:19178 ":linker_resources",
179 ":linker_test",
180 "//base:base_java",
181 "//content/public/android:content_java",
182 "//ui/android:ui_java",
183 ]
sievers0350cad2014-12-03 23:50:55184 android_manifest = chromium_linker_test_manifest
cjhopmanaac45ed82014-10-17 22:08:19185 apk_name = "ChromiumLinkerTest"
186 DEPRECATED_java_in_dir = "linker_test_apk/src"
scottmg7afc4092014-12-03 19:22:42187 native_libs = [ "liblinker_test.so" ]
cjhopmanaac45ed82014-10-17 22:08:19188 use_chromium_linker = true
189 enable_chromium_linker_tests = true
190 }
191
cjhopmanaac45ed82014-10-17 22:08:19192 # GYP: //content/content_tests.gypi:chromium_android_linker_test
193 shared_library("linker_test") {
194 testonly = true
195 sources = [
196 "linker_test_apk/chromium_linker_test_android.cc",
197 "linker_test_apk/chromium_linker_test_linker_tests.cc",
198 ]
199
200 deps = [
201 ":linker_test_jni_headers",
brettwba7a73d2015-08-31 22:17:39202 "//build/config/sanitizers:deps",
cjhopmanaac45ed82014-10-17 22:08:19203 "//content/shell:content_shell_lib",
scottmg7afc4092014-12-03 19:22:42204
cjhopmanaac45ed82014-10-17 22:08:19205 # Required to include "content/public/browser/android/compositor.h"
206 # in chromium_linker_test_android.cc :-(
207 "//skia",
simonb01cb97b2015-08-24 15:54:09208 "//third_party/re2",
cjhopmanaac45ed82014-10-17 22:08:19209 ]
210 }
211
212 # GYP: //content/content_tests.gypi:chromium_android_linker_test_jni_headers
213 generate_jni("linker_test_jni_headers") {
214 testonly = true
215 jni_package = "content/shell"
216 sources = [
217 "linker_test_apk/src/org/chromium/chromium_linker_test_apk/LinkerTests.java",
218 ]
219 }
220}
pkotwicz93fa232b2015-11-11 17:55:07221
222# GYP: //content/content_tests.gypi:content_shell_browsertests_java"
223android_library("content_shell_browsertests_java") {
224 testonly = true
225 deps = [
226 ":content_shell_java",
227 "//base:base_java",
228 "//content/public/android:content_java",
229 "//testing/android/native_test:native_test_java",
230 "//ui/android:ui_java",
231 ]
232 DEPRECATED_java_in_dir = "browsertests/src"
233}