blob: b1dbc399f012a0639003ba0ad9aee199d7fb5612 [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}" ]
}
}