blob: 1e60ff61e255be76e9a21461c16c37c8469d144f [file] [log] [blame]
# Copyright 2021 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/components.gni")
import("//tools/cmc/build/cmc.gni")
# Defines a new core realm.
#
# The core realm on Fuchsia is a packaged non-executable component that holds
# most of the interesting packaged CFv2 components. This realm is configurable
# on a per-product basis to allow product owners to control which features and
# functionality the component instance tree is capable of on their product.
#
# For typical product definitions, the arguments to this template are set
# through GN arguments, declared in //build/product.gni.
#
# Parameters
#
# deps
# testonly
# visibility
template("core_realm_definition") {
if (defined(invoker.deps)) {
shard_deps = invoker.deps
} else {
shard_deps = []
}
generated_file_target = "${target_name}"
generated_file(generated_file_target) {
forward_variables_from(invoker,
[
"testonly",
"metadata",
])
deps = shard_deps
data_keys = [ "shard_files" ]
outputs = [ "$target_out_dir/${target_name}_core_shard_list" ]
}
}