cjhopman | cd7694af | 2014-09-08 00:00:04 | [diff] [blame] | 1 | # 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 | |
| 5 | import("//build/config/android/config.gni") |
| 6 | import("//build/config/android/rules.gni") |
baixo | 1660022 | 2014-12-04 20:08:38 | [diff] [blame] | 7 | import("//build/module_args/v8.gni") |
cjhopman | 2fd48fd | 2014-09-24 00:52:56 | [diff] [blame] | 8 | import("//third_party/icu/config.gni") |
cjhopman | cd7694af | 2014-09-08 00:00:04 | [diff] [blame] | 9 | |
| 10 | generate_jni("content_shell_jni_headers") { |
| 11 | jni_package = "content/shell" |
| 12 | sources = [ |
scottmg | 7c7296f4 | 2015-02-28 02:23:09 | [diff] [blame] | 13 | "java/src/org/chromium/content_shell/Shell.java", |
cjhopman | cd7694af | 2014-09-08 00:00:04 | [diff] [blame] | 14 | "java/src/org/chromium/content_shell/ShellLayoutTestUtils.java", |
| 15 | "java/src/org/chromium/content_shell/ShellManager.java", |
ppi | f581fe9 | 2014-10-08 18:52:19 | [diff] [blame] | 16 | "java/src/org/chromium/content_shell/ShellMojoTestUtils.java", |
cjhopman | cd7694af | 2014-09-08 00:00:04 | [diff] [blame] | 17 | ] |
| 18 | } |
| 19 | |
| 20 | shared_library("libcontent_shell_content_view") { |
cjhopman | 2fd48fd | 2014-09-24 00:52:56 | [diff] [blame] | 21 | testonly = true |
cjhopman | cd7694af | 2014-09-08 00:00:04 | [diff] [blame] | 22 | deps = [ |
| 23 | ":content_shell_jni_headers", |
cjhopman | 2fd48fd | 2014-09-24 00:52:56 | [diff] [blame] | 24 | "//content/shell:content_shell_lib", |
| 25 | "//content/shell:pak", |
| 26 | "//components/crash/browser", |
cjhopman | cd7694af | 2014-09-08 00:00:04 | [diff] [blame] | 27 | "//skia", |
| 28 | "//media/base/android", |
| 29 | ] |
| 30 | sources = [ |
cjhopman | 2fd48fd | 2014-09-24 00:52:56 | [diff] [blame] | 31 | "shell_library_loader.cc", |
cjhopman | cd7694af | 2014-09-08 00:00:04 | [diff] [blame] | 32 | ] |
cjhopman | cd7694af | 2014-09-08 00:00:04 | [diff] [blame] | 33 | } |
| 34 | |
| 35 | android_resources("content_shell_java_resources") { |
cjhopman | 2fd48fd | 2014-09-24 00:52:56 | [diff] [blame] | 36 | testonly = true |
cjhopman | cd7694af | 2014-09-08 00:00:04 | [diff] [blame] | 37 | resource_dirs = [ "java/res" ] |
| 38 | custom_package = "org.chromium.content_shell" |
| 39 | } |
| 40 | |
| 41 | android_library("content_shell_java") { |
cjhopman | 2fd48fd | 2014-09-24 00:52:56 | [diff] [blame] | 42 | testonly = true |
cjhopman | cd7694af | 2014-09-08 00:00:04 | [diff] [blame] | 43 | deps = [ |
| 44 | "//base:base_java", |
| 45 | "//content/public/android:content_java", |
cjhopman | 394dfd1 | 2014-09-09 08:55:54 | [diff] [blame] | 46 | "//media/base/android:media_java", |
cjhopman | cd7694af | 2014-09-08 00:00:04 | [diff] [blame] | 47 | "//net/android:net_java", |
blundell | 70fb54767 | 2015-01-19 17:18:33 | [diff] [blame] | 48 | "//third_party/mojo/src/mojo/public/java:system", |
cjhopman | cd7694af | 2014-09-08 00:00:04 | [diff] [blame] | 49 | "//ui/android:ui_java", |
| 50 | ":content_shell_java_resources", |
| 51 | ] |
| 52 | DEPRECATED_java_in_dir = "java/src" |
| 53 | } |
| 54 | |
scottmg | 6da1b58 | 2014-12-08 18:31:15 | [diff] [blame] | 55 | content_shell_manifest = |
| 56 | "$target_gen_dir/content_shell_manifest/AndroidManifest.xml" |
sievers | 0350cad | 2014-12-03 23:50:55 | [diff] [blame] | 57 | |
| 58 | jinja_template("content_shell_manifest") { |
| 59 | testonly = true |
sievers | 4c08a9c | 2014-12-05 01:57:28 | [diff] [blame] | 60 | input = "shell_apk/AndroidManifest.xml.jinja2" |
sievers | 0350cad | 2014-12-03 23:50:55 | [diff] [blame] | 61 | output = content_shell_manifest |
| 62 | } |
| 63 | |
cjhopman | cd7694af | 2014-09-08 00:00:04 | [diff] [blame] | 64 | android_resources("content_shell_apk_resources") { |
cjhopman | 2fd48fd | 2014-09-24 00:52:56 | [diff] [blame] | 65 | testonly = true |
cjhopman | cd7694af | 2014-09-08 00:00:04 | [diff] [blame] | 66 | resource_dirs = [ "shell_apk/res" ] |
| 67 | deps = [ |
scottmg | 7afc409 | 2014-12-03 19:22:42 | [diff] [blame] | 68 | ":content_shell_java_resources", |
brettw | f950579 | 2015-06-03 19:43:38 | [diff] [blame] | 69 | ":content_shell_manifest", |
cjhopman | cd7694af | 2014-09-08 00:00:04 | [diff] [blame] | 70 | ] |
sievers | 0350cad | 2014-12-03 23:50:55 | [diff] [blame] | 71 | android_manifest = content_shell_manifest |
cjhopman | cd7694af | 2014-09-08 00:00:04 | [diff] [blame] | 72 | } |
| 73 | |
cjhopman | 394dfd1 | 2014-09-09 08:55:54 | [diff] [blame] | 74 | android_library("content_shell_apk_java") { |
cjhopman | 2fd48fd | 2014-09-24 00:52:56 | [diff] [blame] | 75 | testonly = true |
cjhopman | 394dfd1 | 2014-09-09 08:55:54 | [diff] [blame] | 76 | deps = [ |
| 77 | ":content_shell_apk_resources", |
| 78 | ":content_shell_java", |
| 79 | "//base:base_java", |
| 80 | "//content/public/android:content_java", |
| 81 | "//media/base/android:media_java", |
| 82 | "//net/android:net_java", |
| 83 | "//ui/android:ui_java", |
| 84 | ] |
| 85 | DEPRECATED_java_in_dir = "shell_apk/src" |
| 86 | } |
| 87 | |
cjhopman | 2fd48fd | 2014-09-24 00:52:56 | [diff] [blame] | 88 | content_shell_assets_dir = "$root_build_dir/content_shell/assets" |
| 89 | copy_ex("copy_content_shell_assets") { |
| 90 | clear_dir = true |
| 91 | dest = content_shell_assets_dir |
| 92 | sources = [ |
scottmg | 7afc409 | 2014-12-03 19:22:42 | [diff] [blame] | 93 | "$root_out_dir/content_shell.pak", |
cjhopman | 2fd48fd | 2014-09-24 00:52:56 | [diff] [blame] | 94 | ] |
brettw | f950579 | 2015-06-03 19:43:38 | [diff] [blame] | 95 | deps = [ |
| 96 | "//content/shell:pak", |
| 97 | ] |
cjhopman | 2fd48fd | 2014-09-24 00:52:56 | [diff] [blame] | 98 | |
| 99 | if (icu_use_data_file) { |
scottmg | 7afc409 | 2014-12-03 19:22:42 | [diff] [blame] | 100 | sources += [ "$root_build_dir/icudtl.dat" ] |
brettw | de2ee733 | 2015-06-01 18:32:40 | [diff] [blame] | 101 | deps += [ "//third_party/icu:icudata" ] |
cjhopman | 2fd48fd | 2014-09-24 00:52:56 | [diff] [blame] | 102 | } |
baixo | 1660022 | 2014-12-04 20:08:38 | [diff] [blame] | 103 | if (v8_use_external_startup_data) { |
| 104 | sources += [ |
rmcilroy | 5837d33 | 2014-12-17 14:30:58 | [diff] [blame] | 105 | "$root_build_dir/natives_blob.bin", |
| 106 | "$root_build_dir/snapshot_blob.bin", |
baixo | 1660022 | 2014-12-04 20:08:38 | [diff] [blame] | 107 | ] |
brettw | de2ee733 | 2015-06-01 18:32:40 | [diff] [blame] | 108 | deps += [ "//v8" ] |
baixo | 1660022 | 2014-12-04 20:08:38 | [diff] [blame] | 109 | } |
cjhopman | 2fd48fd | 2014-09-24 00:52:56 | [diff] [blame] | 110 | } |
| 111 | |
cjhopman | cd7694af | 2014-09-08 00:00:04 | [diff] [blame] | 112 | android_apk("content_shell_apk") { |
cjhopman | aac45ed8 | 2014-10-17 22:08:19 | [diff] [blame] | 113 | use_chromium_linker = true |
cjhopman | 2fd48fd | 2014-09-24 00:52:56 | [diff] [blame] | 114 | testonly = true |
brettw | f883517a | 2015-06-02 17:38:29 | [diff] [blame] | 115 | data_deps = [ |
cjhopman | cd7694af | 2014-09-08 00:00:04 | [diff] [blame] | 116 | # "//tools/android/forwarder", |
| 117 | ] |
| 118 | deps = [ |
brettw | f950579 | 2015-06-03 19:43:38 | [diff] [blame] | 119 | ":content_shell_apk_java", |
cjhopman | cd7694af | 2014-09-08 00:00:04 | [diff] [blame] | 120 | ":content_shell_apk_resources", |
| 121 | ":content_shell_java", |
brettw | f950579 | 2015-06-03 19:43:38 | [diff] [blame] | 122 | ":content_shell_manifest", |
cjhopman | 2fd48fd | 2014-09-24 00:52:56 | [diff] [blame] | 123 | ":copy_content_shell_assets", |
brettw | f950579 | 2015-06-03 19:43:38 | [diff] [blame] | 124 | ":libcontent_shell_content_view", |
cjhopman | cd7694af | 2014-09-08 00:00:04 | [diff] [blame] | 125 | "//base:base_java", |
| 126 | "//content/public/android:content_java", |
cjhopman | 394dfd1 | 2014-09-09 08:55:54 | [diff] [blame] | 127 | "//media/base/android:media_java", |
cjhopman | cd7694af | 2014-09-08 00:00:04 | [diff] [blame] | 128 | "//net/android:net_java", |
scottmg | 7afc409 | 2014-12-03 19:22:42 | [diff] [blame] | 129 | |
cjhopman | cd7694af | 2014-09-08 00:00:04 | [diff] [blame] | 130 | #"//third_party/mesa:osmesa_in_lib_dir", |
| 131 | "//ui/android:ui_java", |
| 132 | ] |
| 133 | apk_name = "ContentShell" |
sievers | 0350cad | 2014-12-03 23:50:55 | [diff] [blame] | 134 | android_manifest = content_shell_manifest |
scottmg | 7afc409 | 2014-12-03 19:22:42 | [diff] [blame] | 135 | native_libs = [ "libcontent_shell_content_view.so" ] |
cjhopman | 2fd48fd | 2014-09-24 00:52:56 | [diff] [blame] | 136 | asset_location = content_shell_assets_dir |
cjhopman | cd7694af | 2014-09-08 00:00:04 | [diff] [blame] | 137 | |
| 138 | # TODO(GYP) |
cjhopman | cd7694af | 2014-09-08 00:00:04 | [diff] [blame] | 139 | #'extra_native_libs': ['<(SHARED_LIB_DIR)/libosmesa.so'], |
cjhopman | cd7694af | 2014-09-08 00:00:04 | [diff] [blame] | 140 | } |
cjhopman | 394dfd1 | 2014-09-09 08:55:54 | [diff] [blame] | 141 | |
| 142 | android_library("content_shell_test_java") { |
cjhopman | 2fd48fd | 2014-09-24 00:52:56 | [diff] [blame] | 143 | testonly = true |
cjhopman | 394dfd1 | 2014-09-09 08:55:54 | [diff] [blame] | 144 | deps = [ |
| 145 | ":content_shell_java", |
| 146 | ":content_shell_apk_java", |
| 147 | "//base:base_java", |
| 148 | "//base:base_java_test_support", |
| 149 | "//content/public/test/android:content_java_test_support", |
| 150 | "//content/shell/android:content_shell_java", |
| 151 | "//content/public/android:content_java", |
| 152 | ] |
| 153 | DEPRECATED_java_in_dir = "javatests/src" |
| 154 | } |
| 155 | |
mikecase | 56d80d7 | 2015-06-03 00:57:26 | [diff] [blame] | 156 | instrumentation_test_apk("content_shell_test_apk") { |
cjhopman | 394dfd1 | 2014-09-09 08:55:54 | [diff] [blame] | 157 | deps = [ |
| 158 | "//content/public/android:content_javatests", |
| 159 | "//base:base_javatests", |
| 160 | "//net/android:net_javatests", |
| 161 | ] |
mikecase | 56d80d7 | 2015-06-03 00:57:26 | [diff] [blame] | 162 | data_deps = [ ":content_shell_apk" ] |
cjhopman | 7b9ba2e | 2015-04-22 23:31:53 | [diff] [blame] | 163 | apk_under_test = ":content_shell_apk" |
cjhopman | 394dfd1 | 2014-09-09 08:55:54 | [diff] [blame] | 164 | apk_name = "ContentShellTest" |
| 165 | android_manifest = "javatests/AndroidManifest.xml" |
mikecase | 56d80d7 | 2015-06-03 00:57:26 | [diff] [blame] | 166 | isolate_file = "../../content_shell_test_apk.isolate" |
cjhopman | 394dfd1 | 2014-09-09 08:55:54 | [diff] [blame] | 167 | } |
cjhopman | aac45ed8 | 2014-10-17 22:08:19 | [diff] [blame] | 168 | |
dpranke | 4327621 | 2015-02-20 02:55:19 | [diff] [blame] | 169 | if (current_cpu != "x64" && current_cpu != "arm64") { |
scottmg | 6da1b58 | 2014-12-08 18:31:15 | [diff] [blame] | 170 | chromium_linker_test_manifest = |
| 171 | "$target_gen_dir/linker_test_apk/AndroidManifest.xml" |
sievers | 0350cad | 2014-12-03 23:50:55 | [diff] [blame] | 172 | |
| 173 | jinja_template("chromium_linker_test_manifest") { |
| 174 | testonly = true |
sievers | 4c08a9c | 2014-12-05 01:57:28 | [diff] [blame] | 175 | input = "linker_test_apk/AndroidManifest.xml.jinja2" |
sievers | 0350cad | 2014-12-03 23:50:55 | [diff] [blame] | 176 | output = chromium_linker_test_manifest |
| 177 | } |
| 178 | |
cjhopman | aac45ed8 | 2014-10-17 22:08:19 | [diff] [blame] | 179 | android_resources("linker_resources") { |
brettw | f950579 | 2015-06-03 19:43:38 | [diff] [blame] | 180 | testonly = true |
cjhopman | aac45ed8 | 2014-10-17 22:08:19 | [diff] [blame] | 181 | resource_dirs = [ "linker_test_apk/res" ] |
sievers | 0350cad | 2014-12-03 23:50:55 | [diff] [blame] | 182 | android_manifest = chromium_linker_test_manifest |
brettw | f950579 | 2015-06-03 19:43:38 | [diff] [blame] | 183 | deps = [ |
| 184 | ":chromium_linker_test_manifest", |
| 185 | ] |
cjhopman | aac45ed8 | 2014-10-17 22:08:19 | [diff] [blame] | 186 | } |
| 187 | |
| 188 | # GYP: //content/content_tests.gypi:chromium_linker_test_apk |
| 189 | android_apk("chromium_linker_test_apk") { |
| 190 | testonly = true |
| 191 | deps = [ |
brettw | f950579 | 2015-06-03 19:43:38 | [diff] [blame] | 192 | ":chromium_linker_test_manifest", |
cjhopman | aac45ed8 | 2014-10-17 22:08:19 | [diff] [blame] | 193 | ":content_shell_java", |
| 194 | ":copy_content_shell_assets", |
| 195 | ":linker_resources", |
| 196 | ":linker_test", |
| 197 | "//base:base_java", |
| 198 | "//content/public/android:content_java", |
| 199 | "//ui/android:ui_java", |
| 200 | ] |
sievers | 0350cad | 2014-12-03 23:50:55 | [diff] [blame] | 201 | android_manifest = chromium_linker_test_manifest |
cjhopman | aac45ed8 | 2014-10-17 22:08:19 | [diff] [blame] | 202 | asset_location = content_shell_assets_dir |
| 203 | apk_name = "ChromiumLinkerTest" |
| 204 | DEPRECATED_java_in_dir = "linker_test_apk/src" |
scottmg | 7afc409 | 2014-12-03 19:22:42 | [diff] [blame] | 205 | native_libs = [ "liblinker_test.so" ] |
cjhopman | aac45ed8 | 2014-10-17 22:08:19 | [diff] [blame] | 206 | use_chromium_linker = true |
| 207 | enable_chromium_linker_tests = true |
| 208 | } |
| 209 | |
cjhopman | aac45ed8 | 2014-10-17 22:08:19 | [diff] [blame] | 210 | # GYP: //content/content_tests.gypi:chromium_android_linker_test |
| 211 | shared_library("linker_test") { |
| 212 | testonly = true |
| 213 | sources = [ |
| 214 | "linker_test_apk/chromium_linker_test_android.cc", |
| 215 | "linker_test_apk/chromium_linker_test_linker_tests.cc", |
| 216 | ] |
| 217 | |
| 218 | deps = [ |
| 219 | ":linker_test_jni_headers", |
| 220 | "//content/shell:content_shell_lib", |
scottmg | 7afc409 | 2014-12-03 19:22:42 | [diff] [blame] | 221 | |
cjhopman | aac45ed8 | 2014-10-17 22:08:19 | [diff] [blame] | 222 | # Required to include "content/public/browser/android/compositor.h" |
| 223 | # in chromium_linker_test_android.cc :-( |
| 224 | "//skia", |
simonb | 01cb97b | 2015-08-24 15:54:09 | [diff] [blame] | 225 | "//third_party/re2", |
cjhopman | aac45ed8 | 2014-10-17 22:08:19 | [diff] [blame] | 226 | ] |
| 227 | } |
| 228 | |
| 229 | # GYP: //content/content_tests.gypi:chromium_android_linker_test_jni_headers |
| 230 | generate_jni("linker_test_jni_headers") { |
| 231 | testonly = true |
| 232 | jni_package = "content/shell" |
| 233 | sources = [ |
| 234 | "linker_test_apk/src/org/chromium/chromium_linker_test_apk/LinkerTests.java", |
| 235 | ] |
| 236 | } |
| 237 | } |