| Index: android_webview/BUILD.gn
|
| diff --git a/android_webview/BUILD.gn b/android_webview/BUILD.gn
|
| index 90949095041e38ff459b30d08fb080bca95e68b1..c2cbd8bbb238725f21e511c4e3f4a07815143491 100644
|
| --- a/android_webview/BUILD.gn
|
| +++ b/android_webview/BUILD.gn
|
| @@ -6,6 +6,7 @@ import("//build/config/android/config.gni")
|
| import("//build/config/android/rules.gni")
|
| import("//build/config/locales.gni")
|
| import("//tools/grit/repack.gni")
|
| +import("//tools/resources/generate_resource_whitelist.gni")
|
| import("system_webview_apk_tmpl.gni")
|
| import("webview_repack_locales.gni")
|
|
|
| @@ -18,6 +19,11 @@ if (!defined(use_webview_internal_framework)) {
|
| use_webview_internal_framework = false
|
| }
|
|
|
| +if (enable_resource_whitelist_generation) {
|
| + system_webview_pak_whitelist =
|
| + "$target_gen_dir/system_webview_pak_whitelist.txt"
|
| +}
|
| +
|
| system_webview_android_manifest =
|
| "$target_gen_dir/system_webview_apk/AndroidManifest.xml"
|
|
|
| @@ -38,6 +44,13 @@ jinja_template("system_webview_manifest") {
|
| webview_repack_locales("repack_locales") {
|
| input_locales = locales
|
| output_locales = locales
|
| +
|
| + if (enable_resource_whitelist_generation) {
|
| + repack_whitelist = system_webview_pak_whitelist
|
| + deps = [
|
| + ":system_webview_pak_whitelist",
|
| + ]
|
| + }
|
| }
|
|
|
| locale_pak_resources("locale_paks") {
|
| @@ -115,6 +128,11 @@ repack("repack_pack") {
|
| "//third_party/WebKit/public:resources",
|
| ]
|
| output = "$target_gen_dir/resources.pak"
|
| +
|
| + if (enable_resource_whitelist_generation) {
|
| + repack_whitelist = system_webview_pak_whitelist
|
| + deps += [ ":system_webview_pak_whitelist" ]
|
| + }
|
| }
|
|
|
| repack("repack_100_percent") {
|
| @@ -129,6 +147,11 @@ repack("repack_100_percent") {
|
| "//ui/resources",
|
| ]
|
| output = "$target_gen_dir/chrome_100_percent.pak"
|
| +
|
| + if (enable_resource_whitelist_generation) {
|
| + repack_whitelist = system_webview_pak_whitelist
|
| + deps += [ ":system_webview_pak_whitelist" ]
|
| + }
|
| }
|
|
|
| webview_license_path = "$target_gen_dir/webview_licenses.notice"
|
| @@ -267,7 +290,8 @@ grit("generate_components_strings") {
|
|
|
| # components_strings contains strings from all components. WebView
|
| # will never display most of them, so we try to limit the included
|
| - # strings
|
| + # strings. This whitelist trims about 50% more than the compile-based
|
| + # whitelist generated by :system_webview_pak_whitelist.
|
| whitelist = rebase_path("ui/grit_components_whitelist.txt")
|
| inputs = [
|
| whitelist,
|
| @@ -404,6 +428,16 @@ if (android_64bit_target_cpu) {
|
| }
|
| }
|
|
|
| +if (enable_resource_whitelist_generation) {
|
| + generate_resource_whitelist("system_webview_pak_whitelist") {
|
| + deps = [
|
| + ":libwebviewchromium",
|
| + ]
|
| + input = "$root_out_dir/libwebviewchromium$shlib_extension.whitelist"
|
| + output = system_webview_pak_whitelist
|
| + }
|
| +}
|
| +
|
| source_set("common") {
|
| sources = [
|
| "browser/aw_browser_context.cc",
|
|
|