chromium/sandbox/policy/mojom/BUILD.gn

# Copyright 2021 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//build/config/chromeos/ui_mode.gni")
import("//chromeos/ash/components/assistant/assistant.gni")
import("//mojo/public/tools/bindings/mojom.gni")
import("//ppapi/buildflags/buildflags.gni")
import("//printing/buildflags/buildflags.gni")
import("//services/screen_ai/buildflags/features.gni")

mojom("mojom") {
  generate_java = true
  sources = [
    "context.mojom",
    "sandbox.mojom",
  ]

  # WebUI bindings are only needed on ChromeOS Ash, and are used by
  # ash/webui/help_app_ui which is still using Closure Compiler. Generate the
  # bindings in JavaScript rather than TypeScript to support this legacy code.
  if (is_chromeos_ash) {
    webui_module_path = "/"
    generate_webui_js_bindings = true
  }

  enabled_features = []
  if (enable_oop_printing) {
    enabled_features += [ "enable_oop_printing" ]
  }
  if (enable_ppapi) {
    enabled_features += [ "enable_ppapi" ]
  }
  if (is_linux || is_chromeos) {
    enabled_features += [
      "has_zygote",
      "is_linux_or_chromeos",
    ]
  }
  if (is_linux || is_chromeos_ash) {
    enabled_features += [ "is_linux_or_chromeos_ash" ]
  }
  if (enable_cros_libassistant) {
    enabled_features += [ "enable_cros_libassistant" ]
  }
  if (enable_screen_ai_service) {
    enabled_features += [ "enable_screen_ai_service" ]
  }
}