blob: c0618a51ff764733539caf639d26e73189bf1dc2 [file] [log] [blame]
# Copyright 2019 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/host_tool_sdk_element.gni")
import("//build/sdk/sdk_prebuilt_executable.gni")
# Host tools are package per OS and architecture.
if (is_host) {
# Host tool SDK element specs.
# The tool scope contains:
#
# name (required)
# Target name.
# label (required)
# Host tool binary label.
# output (optional)
# The name of the output of the host tool binary if the target name and
# the binary name differ, which is applicable to rust binaries.
# description (optional)
# A human readable description injected into the host tool SDK metadata.
tools = [
{
name = "cmc"
label = "//tools/cmc"
output = "cmc"
description = "Component manifest compiler."
},
{
name = "fidlc"
label = "//tools/fidl/fidlc"
description = "FIDL compiler."
},
{
name = "zbi"
label = "//zircon/tools/zbi"
description = "Zircon boot image manipulator."
},
]
sdk_prebuilt_executable("banjo") {
category = "partner"
prebuilt = "//prebuilt/tools/banjo/${host_platform}/banjo_bin"
}
# Experimental SDK targets.
# TODO(42999): Consider adding element adapters when legacy host tools are
# retired.
foreach(tool, tools) {
host_tool_sdk_element(tool.name) {
deps = [ tool.label ]
if (defined(tool.output)) {
output_name = tool.output
}
if (defined(tool.description)) {
description = tool.description
}
}
}
}