blob: bc57348741aced2904ff2305d65eb637cd76144f [file] [log] [blame]
# Copyright 2023 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/controlled_frame/api/api_sources.gni")
import("//chrome/common/features.gni")
import("//tools/json_schema_compiler/json_features.gni")
import("//tools/json_schema_compiler/json_schema_api.gni")
assert(enable_extensions)
################################################################################
# Public Targets
group("api") {
public_deps = [
":generated_api_json_strings",
":generated_api_types",
]
}
group("controlled_frame_features") {
public_deps = [ ":api_features" ]
}
################################################################################
# Private Targets
generated_json_strings("generated_api_json_strings") {
sources = controlled_frame_api_schema_sources
configs = [ "//build/config:precompiled_headers" ]
bundle_name = "ControlledFrame"
schema_include_rules = controlled_frame_api_schema_include_rules
root_namespace = controlled_frame_api_root_namespace
deps = [ "//chrome/common/extensions/api" ]
visibility = [ ":api" ]
}
generated_types("generated_api_types") {
sources = controlled_frame_api_schema_sources
configs = [ "//build/config:precompiled_headers" ]
schema_include_rules = controlled_frame_api_schema_include_rules
root_namespace = controlled_frame_api_root_namespace
deps = [ "//chrome/common/extensions/api" ]
visibility = [ ":api" ]
}
json_features("api_features") {
feature_type = "APIFeature"
method_name = "AddControlledFrameAPIFeatures"
sources = [ "_api_features.json" ]
visibility = [ ":controlled_frame_features" ]
}