blob: 8ceeddd104d8d3912c67cbea7a70e2a9bfdbb722 [file] [log] [blame] [edit]
# Copyright 2020 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/compiled_action.gni")
template("cmc") {
compiled_action(target_name) {
forward_variables_from(invoker,
[
"args",
"depfile",
"deps",
"inputs",
"outputs",
"sources",
"public_deps",
"testonly",
"visibility",
])
tool = "//tools/cmc"
tool_output_name = "cmc"
}
}
# Merges together cmx/cml files
#
# Parameters
#
# sources (required)
# [list of files] A list of files that are to be merged.
#
# output_name (optional)
# [path] Name for the output.
# If not specified, the target name is used.
#
# deps (optional)
# testonly (optional)
# visibility (optional)
# Standard GN meaning.
template("cmc_merge") {
cmc(target_name) {
forward_variables_from(invoker,
[
"deps",
"output_name",
"sources",
"testonly",
"visibility",
])
if (!defined(output_name)) {
output_name = target_name
}
merged_output = "${target_out_dir}/${output_name}"
inputs = invoker.sources
outputs = [ merged_output ]
args = [
"merge",
"--output",
rebase_path(merged_output, root_build_dir),
]
foreach(source, sources) {
args += [ rebase_path(source, root_build_dir) ]
}
}
}