Commit a55ae206 authored by dpapad's avatar dpapad Committed by Commit Bot

Extensions WebUI: Autogenerate .grd file for optimized build

Leverage latest improvements to autogenerate WebUI .grd files for
optimized builds as well.

Bug: 1132403
Change-Id: Idb3a80ac6336521397b111902f375ae7bbcc83b7
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2465096
Commit-Queue: Rebekah Potter <rbpotter@chromium.org>
Auto-Submit: dpapad <dpapad@chromium.org>
Reviewed-by: default avatarRebekah Potter <rbpotter@chromium.org>
Cr-Commit-Position: refs/heads/master@{#816411}
parent becee7ed
......@@ -548,21 +548,19 @@ if (enable_extensions) {
grit_flags = [
"-E",
"root_gen_dir=" + rebase_path(root_gen_dir, root_build_dir),
"-E",
"root_src_dir=" + rebase_path("//", root_build_dir),
]
defines = chrome_grit_defines
if (optimize_webui) {
source = "extensions/extensions_resources_vulcanized.grd"
deps = [ "//chrome/browser/resources/extensions:build" ]
} else {
# These arguments are needed since the grd is generated at build time.
enable_input_discovery_for_gn_analyze = false
defines += [ "SHARED_INTERMEDIATE_DIR=" +
rebase_path(root_gen_dir, root_build_dir) ]
extensions_gen_dir = "$root_gen_dir/chrome/browser/resources/extensions"
source = "$extensions_gen_dir/extensions_resources.grd"
deps = [ "//chrome/browser/resources/extensions:build_grd" ]
}
# These arguments are needed since the grd is generated at build time.
enable_input_discovery_for_gn_analyze = false
defines += [ "SHARED_INTERMEDIATE_DIR=" +
rebase_path(root_gen_dir, root_build_dir) ]
extensions_gen_dir = "$root_gen_dir/chrome/browser/resources/extensions"
source = "$extensions_gen_dir/extensions_resources.grd"
deps = [ "//chrome/browser/resources/extensions:build_grd" ]
outputs = [
"grit/extensions_resources.h",
......
......@@ -14,11 +14,14 @@ preprocess_manifest = "preprocessed_manifest.json"
preprocess_gen_manifest = "preprocessed_gen_manifest.json"
if (optimize_webui) {
build_manifest = "build_manifest.json"
optimize_webui("build") {
host = "extensions"
input = rebase_path("$target_gen_dir/$preprocess_folder", root_build_dir)
js_out_files = [ "extensions.rollup.js" ]
js_module_in_files = [ "extensions.js" ]
out_manifest = "$target_gen_dir/$build_manifest"
deps = [
":preprocess",
......@@ -27,8 +30,22 @@ if (optimize_webui) {
]
excludes = [ "chrome://resources/js/cr.m.js" ]
}
} else {
generate_grd("build_grd") {
}
generate_grd("build_grd") {
grd_prefix = "extensions"
out_grd = "$target_gen_dir/${grd_prefix}_resources.grd"
input_files = [
"checkup_image_dark.svg",
"checkup_image.svg",
"extensions.html",
]
input_files_base_dir = rebase_path(".", "//")
if (optimize_webui) {
deps = [ ":build" ]
manifest_files = [ "$target_gen_dir/$build_manifest" ]
} else {
deps = [
":preprocess",
":preprocess_generated",
......@@ -37,8 +54,6 @@ if (optimize_webui) {
"$target_gen_dir/$preprocess_manifest",
"$target_gen_dir/$preprocess_gen_manifest",
]
grd_prefix = "extensions"
out_grd = "$target_gen_dir/${grd_prefix}_resources.grd"
}
}
......@@ -55,12 +70,6 @@ preprocess_grit("preprocess") {
"navigation_helper.js",
"service.js",
"shortcut_util.js",
# TODO(dpapad): Pass these directly to the generate_grd() target above, once
# support for that is added, as part of crbug.com/1132403.
"extensions.html",
"checkup_image_dark.svg",
"checkup_image.svg",
]
if (is_chromeos) {
......
<?xml version="1.0" encoding="UTF-8"?>
<grit latest_public_release="0" current_release="1" output_all_resource_defines="false">
<outputs>
<output filename="grit/extensions_resources.h" type="rc_header">
<emit emit_type='prepend'></emit>
</output>
<output filename="grit/extensions_resources_map.cc"
type="resource_map_source" />
<output filename="grit/extensions_resources_map.h"
type="resource_map_header" />
<output filename="extensions_resources.pak" type="data_package" />
</outputs>
<release seq="1">
<includes>
<include name="IDR_EXTENSIONS_EXTENSIONS_HTML"
file="extensions.html"
type="chrome_html" />
<include name="IDR_EXTENSIONS_EXTENSIONS_ROLLUP_JS"
file="${root_gen_dir}\chrome\browser\resources\extensions\extensions.rollup.js"
use_base_dir="false"
type="BINDATA" />
<include name="IDR_EXTENSIONS_CHECKUP_IMAGE"
file="checkup_image.svg"
type="BINDATA" />
<include name="IDR_EXTENSIONS_CHECKUP_IMAGE_DARK"
file="checkup_image_dark.svg"
type="BINDATA" />
</includes>
</release>
</grit>
......@@ -67,18 +67,9 @@ content::WebUIDataSource* CreateMdExtensionsSource(Profile* profile,
bool in_dev_mode) {
content::WebUIDataSource* source =
content::WebUIDataSource::Create(chrome::kChromeUIExtensionsHost);
#if BUILDFLAG(OPTIMIZE_WEBUI)
webui::SetupBundledWebUIDataSource(source, "extensions.js",
IDR_EXTENSIONS_EXTENSIONS_ROLLUP_JS,
IDR_EXTENSIONS_EXTENSIONS_HTML);
source->AddResourcePath("checkup_image.svg", IDR_EXTENSIONS_CHECKUP_IMAGE);
source->AddResourcePath("checkup_image_dark.svg",
IDR_EXTENSIONS_CHECKUP_IMAGE_DARK);
#else
webui::SetupWebUIDataSource(
source, base::make_span(kExtensionsResources, kExtensionsResourcesSize),
"", IDR_EXTENSIONS_EXTENSIONS_HTML);
#endif
static constexpr webui::LocalizedString kLocalizedStrings[] = {
// Add common strings.
......
......@@ -134,9 +134,6 @@
"includes": [1480],
"structures": [1500],
},
"chrome/browser/resources/extensions/extensions_resources_vulcanized.grd": {
"includes": [1520],
},
"<(SHARED_INTERMEDIATE_DIR)/chrome/browser/resources/extensions/extensions_resources.grd": {
"META": {"sizes": {"includes": [50],}},
"includes": [1540],
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment