| # Copyright 2021 The Fuchsia Authors |
| # |
| # Use of this source code is governed by a MIT-style |
| # license that can be found in the LICENSE file or at |
| # https://opensource.org/licenses/MIT |
| |
| import("//build/zbi/zbi_input.gni") |
| |
| # Defines a kernel package, a directory namespace within a STORAGE_KERNEL ZBI |
| # item in the BOOTFS format, for a dependent zbi() target. This namespace - |
| # given by $target_name - is comprised of the resource() targets - or those |
| # that contribute resource()-like metadata - within the dependency graph. |
| # |
| # Parameters |
| # |
| # deps |
| # Required: Dependencies to reach all `resource()` targets and |
| # and `kernel_package_entries` metadata. |
| # Type: list(label) |
| # |
| # data_deps |
| # Optional: The usual GN meaning, though in this case no resource() targets |
| # in its graph will contribute to the dependent ZBI. |
| # Type: list(label) |
| # |
| # testonly, visibility |
| # Optional: The usual GN meanings. |
| # |
| template("kernel_package") { |
| zbi_input(target_name) { |
| forward_variables_from(invoker, |
| [ |
| "deps", |
| "data_deps", |
| "testonly", |
| "visibility", |
| ]) |
| prefix = target_name |
| args = [ |
| # Package entries are relatively small and should compress quickly |
| # enough. |
| "--compressed=max", |
| "--files-type=kernel", |
| ] |
| } |
| } |