blob: e85786d6892948d623ee05494e017a58fb107329 [file] [log] [blame]
# Copyright 2018 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
# TODO(https://crbug.com/1164001): When a directory which contains .grd moves
# to ash during the code migration project, a target should be moved to
# //ash/components/resources/BUILD.gn as well.
import("//chromeos/assistant/assistant.gni")
import("//chromeos/components/eche_app_ui/eche_app_ui.gni")
import("//chromeos/components/help_app_ui/help_app_ui.gni")
import("//chromeos/components/media_app_ui/media_app_ui.gni")
import("//tools/grit/grit_rule.gni")
assert(is_chromeos, "Non-ChromeOS builds cannot depend on //chromeos")
grit("resources") {
source = "chromeos_resources.grd"
outputs = [
"grit/chromeos_resources.h",
"grit/chromeos_resources_map.cc",
"grit/chromeos_resources_map.h",
"chromeos_resources.pak",
]
output_dir = "$root_gen_dir/chromeos"
defines = [
"enable_cros_libassistant=$enable_cros_libassistant",
"enable_cros_media_app=$enable_cros_media_app",
"enable_cros_eche_app=$enable_cros_eche_app",
]
grit_flags = [
"-E",
"mojom_root=" + rebase_path(root_gen_dir, root_build_dir),
]
deps = [
"//chromeos/components/multidevice/mojom:mojom_js",
"//chromeos/services/cellular_setup/public/mojom:mojom_js",
"//chromeos/services/device_sync/public/mojom:mojom_js",
"//chromeos/services/multidevice_setup/public/mojom:mojom_js",
"//chromeos/services/network_config/public/mojom:mojom_js",
"//chromeos/services/network_health/public/mojom:mojom_js",
]
}
# Resources used by chrome://camera-app.
grit("camera_app_resources") {
enable_input_discovery_for_gn_analyze = false
defines =
[ "SHARED_INTERMEDIATE_DIR=" + rebase_path(root_gen_dir, root_build_dir) ]
deps = [ "//chromeos/components/camera_app_ui:build_grd" ]
camera_app_gen_dir = "$root_gen_dir/chromeos/components/camera_app_ui"
source = "$camera_app_gen_dir/chromeos_camera_app_resources.grd"
outputs = [
"grit/chromeos_camera_app_resources.h",
"grit/chromeos_camera_app_resources_map.cc",
"grit/chromeos_camera_app_resources_map.h",
"chromeos_camera_app_resources.pak",
]
output_dir = "$root_gen_dir/chromeos"
}
# Resources used by chrome://connectivity-diagnostics
grit("connectivity_diagnostics_resources") {
# These arguments are needed since the grd is generated at build time.
enable_input_discovery_for_gn_analyze = false
conn_diag_gen_dir =
"$root_gen_dir/chromeos/components/connectivity_diagnostics/resources"
source = "$conn_diag_gen_dir/connectivity_diagnostics_resources.grd"
deps =
[ "//chromeos/components/connectivity_diagnostics/resources:build_grd" ]
outputs = [
"connectivity_diagnostics_resources.pak",
"grit/connectivity_diagnostics_resources.h",
"grit/connectivity_diagnostics_resources_map.cc",
"grit/connectivity_diagnostics_resources_map.h",
]
output_dir = "$root_gen_dir/chromeos"
}
# Resources used by chrome://file-manager
if (!is_official_build) {
grit("file_manager_resources") {
# main.html is generated at build time.
enable_input_discovery_for_gn_analyze = false
source = "../components/file_manager/resources/file_manager_resources.grd"
outputs = [
"grit/chromeos_file_manager_resources.h",
"grit/chromeos_file_manager_resources_map.cc",
"grit/chromeos_file_manager_resources_map.h",
"chromeos_file_manager_resources.pak",
]
output_dir = "$root_gen_dir/chromeos"
deps = [
"//chromeos/components/file_manager/mojom:mojom_js",
"//chromeos/components/file_manager/resources:build",
"//chromeos/components/file_manager/resources:gen_main_html",
"//mojo/public/js:bindings_lite",
]
}
}
# Resources used by chrome://help-app, and parts of the sandboxed app it hosts
# that do not come from the app bundle (below).
grit("help_app_resources") {
source = "../components/help_app_ui/resources/help_app_resources.grd"
outputs = [
"grit/chromeos_help_app_resources.h",
"grit/chromeos_help_app_resources_map.cc",
"grit/chromeos_help_app_resources_map.h",
"chromeos_help_app_resources.pak",
]
output_dir = "$root_gen_dir/chromeos"
deps = [
"//chromeos/components/help_app_ui:mojo_bindings_js",
"//chromeos/components/help_app_ui/search:mojo_bindings_js",
"//chromeos/components/local_search_service/public/mojom:mojom_js",
]
}
# Resources automatically served by the chrome://help-app bundle, obtained via DEPS.
grit("help_app_bundle_resources") {
if (enable_cros_help_app) {
# Obtained via an internal CIPD package in src/DEPS.
source =
"../components/help_app_ui/resources/prod/help_app_bundle_resources.grd"
} else {
source = "../components/help_app_ui/resources/mock/help_app_bundle_mock_resources.grd"
}
use_brotli = true
outputs = [
"grit/chromeos_help_app_bundle_resources.h",
"grit/chromeos_help_app_bundle_resources_map.cc",
"grit/chromeos_help_app_bundle_resources_map.h",
"chromeos_help_app_bundle_resources.pak",
]
output_dir = "$root_gen_dir/chromeos"
}
grit("help_app_kids_magazine_bundle_resources") {
if (enable_cros_help_app) {
source = "../components/help_app_ui/resources/prod/help_app_kids_magazine_bundle_resources.grd"
} else {
source = "../components/help_app_ui/resources/mock/help_app_kids_magazine_bundle_mock_resources.grd"
}
use_brotli = true
outputs = [
"grit/chromeos_help_app_kids_magazine_bundle_resources.h",
"grit/chromeos_help_app_kids_magazine_bundle_resources_map.cc",
"grit/chromeos_help_app_kids_magazine_bundle_resources_map.h",
"chromeos_help_app_kids_magazine_bundle_resources.pak",
]
output_dir = "$root_gen_dir/chromeos"
}
if (!is_official_build) {
# Resources used by chrome://sample-system-web-app
grit("sample_system_web_app_resources") {
# These arguments are needed since the grd is generated at build time.
enable_input_discovery_for_gn_analyze = false
sample_system_web_app_gen_dir =
"$root_gen_dir/chromeos/components/sample_system_web_app_ui"
source = "$sample_system_web_app_gen_dir/chromeos_sample_system_web_app_resources.grd"
deps = [ "//chromeos/components/sample_system_web_app_ui:build_grd" ]
outputs = [
"grit/chromeos_sample_system_web_app_resources.h",
"grit/chromeos_sample_system_web_app_resources_map.cc",
"grit/chromeos_sample_system_web_app_resources_map.h",
"chromeos_sample_system_web_app_resources.pak",
]
output_dir = "$root_gen_dir/chromeos"
}
# Resources used by chrome://demo-mode-app
grit("demo_mode_app_resources") {
enable_input_discovery_for_gn_analyze = false
demo_mode_app_gen_dir = "$root_gen_dir/chromeos/components/demo_mode_app_ui"
source = "$demo_mode_app_gen_dir/chromeos_demo_mode_app_resources.grd"
deps = [ "//chromeos/components/demo_mode_app_ui:build_grd" ]
outputs = [
"grit/chromeos_demo_mode_app_resources.h",
"grit/chromeos_demo_mode_app_resources_map.cc",
"grit/chromeos_demo_mode_app_resources_map.h",
"chromeos_demo_mode_app_resources.pak",
]
output_dir = "$root_gen_dir/chromeos"
}
}
# Resources used by chrome://telemetry-extension
grit("telemetry_extension_resources") {
source = "../components/telemetry_extension_ui/resources/telemetry_extension_resources.grd"
deps = [ "../components/telemetry_extension_ui/mojom:mojom_js" ]
outputs = [
"grit/chromeos_telemetry_extension_resources.h",
"grit/chromeos_telemetry_extension_resources_map.cc",
"grit/chromeos_telemetry_extension_resources_map.h",
"chromeos_telemetry_extension_resources.pak",
]
output_dir = "$root_gen_dir/chromeos"
}
# Resources used by chrome://media-app, and parts of the sandboxed app it hosts
# that do not come from the app bundle (below).
grit("media_app_resources") {
source = "../components/media_app_ui/resources/media_app_resources.grd"
outputs = [
"grit/chromeos_media_app_resources.h",
"chromeos_media_app_resources.pak",
]
output_dir = "$root_gen_dir/chromeos"
use_brotli = true
deps = [
"//chromeos/components/media_app_ui:mojo_bindings_js",
"//chromeos/components/media_app_ui/resources/js:launch_rollup",
"//chromeos/components/media_app_ui/resources/js:piex_rollup",
"//chromeos/components/media_app_ui/resources/js:receiver_rollup",
]
}
# Resources automatically served by the chrome://media-app bundle, obtained via DEPS.
grit("media_app_bundle_resources") {
if (enable_cros_media_app) {
# Obtained via an internal CIPD package in src/DEPS.
source = "../components/media_app_ui/resources/prod/media_app_bundle_resources.grd"
} else {
source = "../components/media_app_ui/resources/mock/media_app_bundle_mock_resources.grd"
}
use_brotli = true
outputs = [
"grit/chromeos_media_app_bundle_resources.h",
"grit/chromeos_media_app_bundle_resources_map.cc",
"grit/chromeos_media_app_bundle_resources_map.h",
"chromeos_media_app_bundle_resources.pak",
]
output_dir = "$root_gen_dir/chromeos"
}
grit("print_management_resources") {
source =
"../components/print_management/resources/print_management_resources.grd"
deps = [
"../components/print_management/mojom:mojom_js",
"../components/print_management/resources:web_components",
]
outputs = [
"grit/chromeos_print_management_resources.h",
"grit/chromeos_print_management_resources_map.cc",
"grit/chromeos_print_management_resources_map.h",
"chromeos_print_management_resources.pak",
]
output_dir = "$root_gen_dir/chromeos"
}
grit("diagnostics_app_resources") {
source =
"../components/diagnostics_ui/resources/diagnostics_app_resources.grd"
deps = [
"../components/diagnostics_ui/mojom:mojom_js",
"../components/diagnostics_ui/resources:web_components",
]
outputs = [
"chromeos_diagnostics_app_resources.pak",
"grit/chromeos_diagnostics_app_resources.h",
"grit/chromeos_diagnostics_app_resources_map.cc",
"grit/chromeos_diagnostics_app_resources_map.h",
]
output_dir = "$root_gen_dir/chromeos"
}
# Resources used by chrome://eche-app
grit("eche_app_resources") {
# These arguments are needed since the grd is generated at build time.
enable_input_discovery_for_gn_analyze = false
eche_app_gen_dir = "$root_gen_dir/chromeos/components/eche_app_ui"
source = "$eche_app_gen_dir/chromeos_eche_app_resources.grd"
deps = [ "//chromeos/components/eche_app_ui:build_grd" ]
outputs = [
"grit/chromeos_eche_app_resources.h",
"grit/chromeos_eche_app_resources_map.cc",
"grit/chromeos_eche_app_resources_map.h",
"chromeos_eche_app_resources.pak",
]
output_dir = "$root_gen_dir/chromeos"
}
# Resources automatically served by the chrome://eche-app bundle, obtained via DEPS.
grit("eche_bundle_resources") {
# Obtained via an internal CIPD package in src/DEPS.
if (enable_cros_media_app) {
# Obtained via an internal CIPD package in src/DEPS.
source =
"../components/eche_app_ui/resources/prod/eche_bundle_resources.grd"
} else {
source = "../components/eche_app_ui/resources/mock/eche_bundle_mock_resources.grd"
}
use_brotli = true
outputs = [
"grit/chromeos_eche_bundle_resources.h",
"grit/chromeos_eche_bundle_resources_map.cc",
"grit/chromeos_eche_bundle_resources_map.h",
"chromeos_eche_bundle_resources.pak",
]
output_dir = "$root_gen_dir/chromeos"
}
# Resources used by chrome://personalization SWA.
grit("personalization_app_resources") {
# These arguments are needed since the grd is generated at build time.
enable_input_discovery_for_gn_analyze = false
personalization_app_gen_dir =
"$root_gen_dir/chromeos/components/personalization_app/resources"
source =
"$personalization_app_gen_dir/chromeos_personalization_app_resources.grd"
deps = [ "//chromeos/components/personalization_app/resources:build_grd" ]
outputs = [
"grit/chromeos_personalization_app_resources.h",
"grit/chromeos_personalization_app_resources_map.cc",
"grit/chromeos_personalization_app_resources_map.h",
"chromeos_personalization_app_resources.pak",
]
output_dir = "$root_gen_dir/chromeos"
}