blob: 3e0a1d292253b4f24246453b8fac6882d49f8879 [file] [log] [blame]
# Copyright 2018 The Fuchsia 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("//build/sdk/sdk_atom.gni")
# Declares a set of data files to be added to an SDK.
#
# Parameters
#
# category (required)
# Publication level of the data set in SDKs.
# See //build/sdk/sdk_atom.gni.
#
# name (required)
# Name of the data set in the SDK.
#
# files (required)
# List of scopes describing the data files to add to SDKs.
# See "File scopes" in //build/sdk/sdk_atom.gni for a description of the
# scope format.
#
# type (required)
# Type of the data set in the SDK.
# Currently only "license" and "config" data types are supported.
template("sdk_data") {
assert(defined(invoker.category), "Must define an SDK category")
assert(defined(invoker.name), "Must define an SDK name")
assert(defined(invoker.files), "Must add documentation files")
assert(defined(invoker.type), "Must define a data type")
sdk_files = []
foreach(file, invoker.files) {
sdk_files += [ file.dest ]
}
sdk_atom(target_name) {
forward_variables_from(invoker,
[
"category",
"files",
])
id = "sdk://data/${invoker.name}"
meta = {
schema = "data"
dest = "${file_base}/${invoker.name}.json"
value = {
type = "${invoker.type}"
name = invoker.name
data = sdk_files
}
}
}
}