# 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. import("//extensions/buildflags/buildflags.gni") import("//tools/json_schema_compiler/json_schema_api.gni") assert(enable_extensions, "Cannot depend on extensions because enable_extensions=false.") function_registration("api_registration") { sources = [ "//electron/shell/common/extensions/api/extension.json", "//electron/shell/common/extensions/api/i18n.json", "//electron/shell/common/extensions/api/resources_private.idl", "//electron/shell/common/extensions/api/tabs.json", ] impl_dir = "//electron/shell/browser/extensions/api" configs = [ "//build/config:precompiled_headers" ] bundle_name = "Electron" root_namespace = "extensions::api::%(namespace)s" schema_include_rules = "extensions/common/api:extensions::api::%(namespace)s" deps = [ # Different APIs include headers from these targets. "//components/zoom", "//content/public/browser", "//extensions/browser", # Different APIs include some headers from chrome/common that in turn # include generated headers from these targets. # TODO(brettw) this should be made unnecessary if possible. "//electron/shell/common/extensions/api", ] deps += [ "//extensions/common/api" ] }