blob: 7db08942747fe5fd348a2eb88e33b264256ebb4f [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/compiled_action.gni")
# Generates a flat romfs image from the provided files.
template("romfs_image") {
image_target = "_${target_name}_image"
check_target = "_${target_name}_check"
compiled_action(image_target) {
assert(defined(invoker.output), "output must be defined for $target_name")
assert(defined(invoker.inputs), "inputs must be defined for $target_name")
forward_variables_from(invoker, "*")
tool = "//src/virtualization/buildtools:mkromfs"
outputs = [
output,
]
args = [ rebase_path(output, root_out_dir) ]
foreach(input, inputs) {
args += [ rebase_path(input, root_out_dir) ]
}
}
action(check_target) {
forward_variables_from(invoker, [ "testonly" ])
deps = [
":${image_target}",
]
script = "//src/virtualization/buildtools/romfsck.py"
inputs = [
invoker.output,
]
outputs = [
"${invoker.output}.verify",
]
args = [
rebase_path(invoker.output, root_out_dir),
rebase_path("${invoker.output}.verify", root_out_dir),
]
}
group("${target_name}") {
forward_variables_from(invoker, [ "testonly" ])
public_deps = [
":${image_target}",
]
deps = [
":${check_target}",
]
}
}