Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2429)

Unified Diff: build/config/android/rules.gni

Issue 507523002: Add content_shell_apk target (and a bunch of its dependencies) (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix PageTransitionTypes.template path Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « build/config/android/internal_rules.gni ('k') | components/crash/browser/BUILD.gn » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: build/config/android/rules.gni
diff --git a/build/config/android/rules.gni b/build/config/android/rules.gni
index a5da3d0a5809d0b211b055b4fb4444f9140346a5..510f516f47d3532544d8be43333bc274a6dc8294 100644
--- a/build/config/android/rules.gni
+++ b/build/config/android/rules.gni
@@ -118,17 +118,16 @@ template("generate_jar_jni") {
base_output_dir = "${root_gen_dir}/${target_name}/${jni_package}"
jni_output_dir = "${base_output_dir}/jni"
- jni_generator_include =
- rebase_path("//base/android/jni_generator/jni_generator_helper.h",
- root_build_dir)
+ jni_generator_include = "//base/android/jni_generator/jni_generator_helper.h"
# TODO(cjhopman): make jni_generator.py support generating jni for multiple
# .class files from a .jar.
jni_actions = []
foreach(class, invoker.classes) {
- classname_list = process_file_template(
+ _classname_list = []
+ _classname_list = process_file_template(
[class], "{{source_name_part}}")
- classname = classname_list[0]
+ classname = _classname_list[0]
jni_target_name = "${target_name}__jni_${classname}"
jni_actions += [ ":$jni_target_name" ]
action(jni_target_name) {
@@ -150,7 +149,7 @@ template("generate_jar_jni") {
"--optimize_generation=1",
"--ptr_type=long",
"--output_dir", rebase_path(jni_output_dir, root_build_dir),
- "--includes", rebase_path(jni_generator_include, "//"),
+ "--includes", rebase_path(jni_generator_include, root_build_dir),
]
}
}
@@ -293,6 +292,7 @@ template("java_cpp_template") {
# }
template("android_resources") {
assert(defined(invoker.resource_dirs))
+ assert(defined(invoker.android_manifest) || defined(invoker.custom_package))
base_path = "$target_gen_dir/$target_name"
zip_path = base_path + ".resources.zip"
@@ -474,8 +474,12 @@ template("android_library") {
proguard_config = invoker.proguard_config
}
+ jar_excluded_patterns = [
+ "*/R.class", "*/R##*.class",
+ "*/Manifest.class", "*/Manifest##*.class",
+ ]
if (defined(invoker.jar_excluded_patterns)) {
- jar_excluded_patterns = invoker.jar_excluded_patterns
+ jar_excluded_patterns += invoker.jar_excluded_patterns
}
if (defined(invoker.srcjar_deps)) {
@@ -600,6 +604,7 @@ template("android_java_prebuilt") {
# ]
# }
template("android_apk") {
+ assert(defined(invoker.final_apk_path) || defined(invoker.apk_name))
gen_dir = "$target_gen_dir/$target_name"
base_path = "$gen_dir/$target_name"
build_config = "$base_path.build_config"
@@ -609,17 +614,17 @@ template("android_apk") {
jar_path = "$base_path.jar"
final_dex_path = "$gen_dir/classes.dex"
_template_name = target_name
+ _final_apk_path = ""
+ if (defined(invoker.final_apk_path)) {
+ _final_apk_path = invoker.final_apk_path
+ } else if (defined(invoker.apk_name)) {
+ _final_apk_path = "$root_build_dir/apks/" + invoker.apk_name + ".apk"
+ }
- _native_lib_version_name = ""
-
- _use_chromium_linker = false
- _enable_chromium_linker_tests = false
- _load_library_from_apk = false
-
- _native_libs_dir = base_path + "/libs"
_native_libs = []
if (defined(invoker.native_libs)) {
_native_libs = invoker.native_libs
+ _native_libs_dir = base_path + "/libs"
}
_keystore_path = android_default_keystore_path
@@ -639,7 +644,7 @@ template("android_apk") {
_rebased_build_config = rebase_path(build_config, root_build_dir)
- write_build_config("${target_name}__build_config") {
+ write_build_config("${_template_name}__build_config") {
type = "android_apk"
srcjar = resource_srcjar_path
dex_path = final_dex_path
@@ -657,8 +662,8 @@ template("android_apk") {
final_deps = []
- final_deps += [":${target_name}__process_resources"]
- process_resources("${target_name}__process_resources") {
+ final_deps += [":${_template_name}__process_resources"]
+ process_resources("${_template_name}__process_resources") {
android_manifest = invoker.android_manifest
resource_dirs = ["//build/android/ant/empty/res"]
@@ -668,36 +673,42 @@ template("android_apk") {
generate_constant_ids = true
}
- java_cpp_template("${target_name}__native_libraries_java") {
- package_name = "org/chromium/base/library_loader"
- sources = [
- "//base/android/java/templates/NativeLibraries.template",
- ]
- inputs = [
- build_config,
- ]
+ if (_native_libs != []) {
+ _use_chromium_linker = false
+ _enable_chromium_linker_tests = false
+ _load_library_from_apk = false
+ _native_lib_version_name = ""
- defines = [
- "NATIVE_LIBRARIES_LIST=" +
- "@FileArg($_rebased_build_config:native:java_libraries_list)",
- "NATIVE_LIBRARIES_VERSION_NUMBER=\"$_native_lib_version_name\"",
- ]
- if (_use_chromium_linker) {
- defines += ["ENABLED_CHROMIUM_LINKER"]
- }
- if (_load_library_from_apk) {
- defines += ["ENABLE_CHROMIUM_LINKER_LIBRARY_IN_ZIP_FILE"]
- }
- if (_enable_chromium_linker_tests) {
- defines += ["ENABLE_CHROMIUM_LINKER_TESTS"]
+
+ java_cpp_template("${_template_name}__native_libraries_java") {
+ package_name = "org/chromium/base/library_loader"
+ sources = [
+ "//base/android/java/templates/NativeLibraries.template",
+ ]
+ inputs = [
+ build_config,
+ ]
+
+ defines = [
+ "NATIVE_LIBRARIES_LIST=" +
+ "@FileArg($_rebased_build_config:native:java_libraries_list)",
+ "NATIVE_LIBRARIES_VERSION_NUMBER=\"$_native_lib_version_name\"",
+ ]
+ if (_use_chromium_linker) {
+ defines += ["ENABLED_CHROMIUM_LINKER"]
+ }
+ if (_load_library_from_apk) {
+ defines += ["ENABLE_CHROMIUM_LINKER_LIBRARY_IN_ZIP_FILE"]
+ }
+ if (_enable_chromium_linker_tests) {
+ defines += ["ENABLE_CHROMIUM_LINKER_TESTS"]
+ }
}
+ _srcjar_deps += [ ":${_template_name}__native_libraries_java" ]
}
- _srcjar_deps += [ ":${target_name}__native_libraries_java" ]
-
- rebased_build_config = rebase_path(build_config, root_build_dir)
- final_deps += [":${target_name}__java"]
- android_java_library("${target_name}__java") {
+ final_deps += [":${_template_name}__java"]
+ android_java_library("${_template_name}__java") {
android_manifest = invoker.android_manifest
if (defined(invoker.java_files)) {
java_files = invoker.java_files
@@ -708,22 +719,24 @@ template("android_apk") {
dex_path = base_path + ".dex.jar"
}
- final_deps += [":${target_name}__final_dex"]
- dex("${target_name}__final_dex") {
+ final_deps += [":${_template_name}__final_dex"]
+ dex("${_template_name}__final_dex") {
sources = [jar_path]
inputs = [build_config]
output = final_dex_path
- dex_arg_key = "${rebased_build_config}:apk_dex:dependency_dex_files"
+ dex_arg_key = "${_rebased_build_config}:apk_dex:dependency_dex_files"
args = ["--inputs=@FileArg($dex_arg_key)"]
}
if (_native_libs != []) {
- copy_ex("${target_name}__prepare_native") {
+ copy_ex("${_template_name}__prepare_native") {
clear_dir = true
- inputs = [build_config]
+ inputs = [
+ build_config
+ ]
dest = "$_native_libs_dir/$android_app_abi"
args = [
- "--files=@FileArg(${rebased_build_config}:native:libraries)",
+ "--files=@FileArg(${_rebased_build_config}:native:libraries)",
]
if (is_debug) {
rebased_gdbserver = rebase_path(android_gdbserver, root_build_dir)
@@ -734,13 +747,17 @@ template("android_apk") {
}
}
- final_deps += [":${target_name}__create"]
- create_apk("${target_name}__create") {
- apk_path = invoker.final_apk_path
+ final_deps += [":${_template_name}__create"]
+ create_apk("${_template_name}__create") {
+ apk_path = _final_apk_path
android_manifest = invoker.android_manifest
resources_zip = all_resources_zip_path
dex_path = final_dex_path
+ if (defined(invoker.asset_location)) {
+ asset_location = invoker.asset_location
+ }
+
keystore_name = _keystore_name
keystore_path = _keystore_path
keystore_password = _keystore_password
@@ -794,8 +811,8 @@ template("unittest_apk") {
}
android_apk(target_name) {
- apk_name = test_suite_name
- final_apk_path = "$root_build_dir/${apk_name}_apk/${apk_name}-debug.apk"
+ _apk_name = test_suite_name
+ final_apk_path = "$root_build_dir/${_apk_name}_apk/${_apk_name}-debug.apk"
java_files = [
"//testing/android/java/src/org/chromium/native_test/ChromeNativeTestActivity.java"
]
« no previous file with comments | « build/config/android/internal_rules.gni ('k') | components/crash/browser/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698