blob: cb492c369351913d81c34eb09850d1f877e74195 [file] [log] [blame]
# Copyright 2022 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//chrome/common/features.gni")
import("//chromeos/dbus/config/use_real_dbus_clients.gni")
import("//components/enterprise/buildflags/buildflags.gni")
import("//components/safe_browsing/buildflags.gni")
import("//components/signin/features.gni")
import("//extensions/buildflags/buildflags.gni")
import("//tools/metrics/generate_allowlist_from_histograms_file.gni")
generate_allowlist_from_histograms_file("webui_url_hashes") {
namespace = "webui_metrics"
input_xml_file = "//tools/metrics/histograms/metadata/ui/enums.xml"
tag = "enum"
output_file = "webui_url_hashes.h"
allow_list_name = "WebUIUrlHashes"
}
generate_allowlist_from_histograms_file("webui_hosts") {
namespace = "webui_metrics"
input_xml_file = "//tools/metrics/histograms/metadata/page/histograms.xml"
output_file = "webui_hosts.h"
tag = "variant"
allow_list_name = "WebUIHost"
}
source_set("configs") {
sources = [
"chrome_untrusted_web_ui_configs.cc",
"chrome_untrusted_web_ui_configs.h",
"chrome_web_ui_configs.cc",
"chrome_web_ui_configs.h",
]
configs += [ "//build/config/compiler:wexit_time_destructors" ]
if (!is_android) {
public_deps = [
"//chrome/browser/ui/tabs/tab_group_home",
"//chrome/browser/ui/webui/commerce",
]
}
deps = [
":webui",
"//chrome/browser/optimization_guide",
"//chrome/browser/ui",
"//chrome/browser/ui/webui/about",
"//chrome/browser/ui/webui/accessibility",
"//chrome/browser/ui/webui/autofill_and_password_manager_internals",
"//chrome/browser/ui/webui/internal_debug_pages_disabled",
"//chrome/browser/ui/webui/regional_capabilities_internals",
"//components/compose:buildflags",
"//components/lens:buildflags",
"//components/security_interstitials/content:security_interstitial_page",
"//content/public/browser",
"//extensions/buildflags",
"//printing/buildflags",
"//skia",
"//third_party/abseil-cpp:absl",
]
if (!is_android) {
deps += [
"//chrome/browser/actor/ui",
"//chrome/browser/contextual_tasks:ui",
"//chrome/browser/ui/webui/access_code_cast",
"//chrome/browser/ui/webui/actor_internals",
"//chrome/browser/ui/webui/app_service_internals",
"//chrome/browser/ui/webui/autofill_ml_internals",
"//chrome/browser/ui/webui/color_pipeline_internals",
"//chrome/browser/ui/webui/infobar_internals",
"//chrome/browser/ui/webui/legion_internals",
"//chrome/browser/ui/webui/new_tab_footer",
"//chrome/browser/ui/webui/privacy_sandbox",
"//chrome/browser/ui/webui/reload_button",
"//chrome/browser/ui/webui_browser",
]
if (!is_chromeos) {
deps += [ "//chrome/browser/ui/webui/app_home" ]
}
} else {
#is_android
deps += [ "//chrome/browser/ui/webui/notifications_internals" ]
}
if (safe_browsing_mode != 0) {
deps += [ "//chrome/browser/ui/webui/safe_browsing" ]
}
if (is_win || is_mac || is_linux || is_chromeos) {
deps += [
"//chrome/browser/ui/lens",
"//chrome/browser/ui/views/side_panel",
"//chrome/browser/ui/webui/signin",
]
if (!is_chromeos) {
deps += [
"//chrome/browser/ui/webui/app_settings",
"//chrome/browser/ui/webui/signin:profile",
"//chrome/browser/ui/webui/whats_new",
]
}
}
if (is_chromeos) {
deps += [
"//chrome/browser/ui/webui/ash/config",
"//chromeos/constants",
]
}
if (enterprise_watermark) {
deps += [
"//chrome/browser/enterprise/watermark:watermark_view_lib",
"//chrome/browser/ui/webui/watermark",
]
}
if (enable_dice_support) {
deps += [ "//chrome/browser/ui/webui/signin/signout_confirmation" ]
}
if (enable_glic) {
deps += [ "//chrome/browser/glic" ]
}
if (enable_session_service) {
deps += [ "//chrome/browser/ui/webui/tab_strip_internals" ]
}
}
source_set("webui") {
sources = [
"constrained_web_dialog_ui.cc",
"constrained_web_dialog_ui.h",
"current_channel_logo.cc",
"current_channel_logo.h",
]
sources += get_target_outputs(":webui_hosts")
sources += get_target_outputs(":webui_url_hashes")
public_deps = [ "//content/public/browser" ]
deps = [
":webui_hosts",
":webui_url_hashes",
"//chrome/common",
"//extensions/buildflags",
]
if (enable_extensions_core) {
deps += [ "//chrome/browser/extensions" ]
}
if (!is_android) {
deps += [ "//ui/web_dialogs" ]
}
}
if (!is_android) {
source_set("webui_util") {
sources = [
"webui_embedding_context.cc",
"webui_embedding_context.h",
]
deps = [
"//chrome/browser/ui/browser_window",
"//chrome/browser/ui/tabs:tabs_public",
]
}
}