Index: chrome/BUILD.gn |
diff --git a/chrome/BUILD.gn b/chrome/BUILD.gn |
index 55aa4670861d82c359e58ceb5d7458a8a16299c1..ca8e31f4842ec273144a8506d5f9d6b019b05717 100644 |
--- a/chrome/BUILD.gn |
+++ b/chrome/BUILD.gn |
@@ -17,6 +17,10 @@ import("//chrome/version.gni") |
import("//ui/base/ui_features.gni") |
import("//v8/gni/v8.gni") |
+if (enable_resource_whitelist_generation) { |
+ android_resource_whitelist = "$root_gen_dir/resource_whitelist.txt" |
+} |
+ |
if (is_android) { |
import("//build/config/android/rules.gni") |
} else if (is_mac) { |
@@ -1468,6 +1472,11 @@ repack("packed_extra_resources") { |
} else { |
output = "$root_out_dir/resources.pak" |
} |
+ |
+ if (enable_resource_whitelist_generation) { |
+ repack_whitelist = android_resource_whitelist |
+ deps += [ "//chrome:resource_whitelist" ] |
+ } |
} |
# GYP version: chrome/chrome_resources.gyp:browser_tests_pak |
@@ -1582,6 +1591,11 @@ template("chrome_repack_percent") { |
} |
output = repack_output_file |
+ |
+ if (enable_resource_whitelist_generation) { |
+ repack_whitelist = android_resource_whitelist |
+ deps += [ "//chrome:resource_whitelist" ] |
+ } |
} |
copy(copy_name) { |
@@ -1695,6 +1709,33 @@ if (is_android) { |
} |
} |
+if (enable_resource_whitelist_generation) { |
+ action("resource_whitelist") { |
+ deps = [ |
+ "//chrome/android:chrome", |
+ ] |
+ script = "//tools/resources/generate_resource_whitelist.py" |
+ |
+ _infile = "$root_out_dir/libchrome.cr.so.whitelist" |
+ inputs = [ |
+ _infile, |
+ ] |
+ |
+ _outfile = android_resource_whitelist |
+ outputs = [ |
+ _outfile, |
+ ] |
+ |
+ args = [ |
+ "-i", |
+ rebase_path(_infile, root_build_dir), |
+ "-o", |
+ rebase_path(_outfile, root_build_dir), |
+ "--out-dir=.", |
+ ] |
+ } |
+} |
+ |
if (is_linux) { |
action("manpage") { |
if (is_chrome_branded) { |