blob: d8d3ed00d9888174de5e196e96c28ec4e46e0efd [file] [log] [blame]
# Copyright 2021 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/rust/rustc_library.gni")
if (is_host) {
rustc_library("ffx_emulator_engines") {
with_unit_tests = true
edition = "2021"
sources = [
"src/arg_templates.rs",
"src/lib.rs",
"src/qemu_based/comms.rs",
"src/qemu_based/crosvm/mod.rs",
"src/qemu_based/femu/mod.rs",
"src/qemu_based/gpt.rs",
"src/qemu_based/mod.rs",
"src/qemu_based/qemu/mod.rs",
"src/serialization.rs",
"src/show_output.rs",
]
deps = [
"//build/sdk/meta:rust",
"//src/developer/ffx/config:lib",
"//src/developer/ffx/fidl:fuchsia.developer.ffx_rust",
"//src/developer/ffx/lib/emulator_instance:lib",
"//src/developer/ffx/lib/errors:lib",
"//src/developer/ffx/lib/fho:lib",
"//src/developer/ffx/lib/port_picker:lib",
"//src/developer/ffx/lib/ssh:lib",
"//src/developer/ffx/lib/target:lib",
"//src/developer/ffx/plugins/emulator/common:ffx_emulator_common",
"//src/developer/ffx/plugins/emulator/configuration:ffx_emulator_config",
"//src/lib/assembly/vbmeta",
"//src/lib/fuchsia-async",
"//src/storage/lib/sparse/rust:lib",
"//third_party/rust_crates:anyhow",
"//third_party/rust_crates:async-trait",
"//third_party/rust_crates:camino",
"//third_party/rust_crates:handlebars",
"//third_party/rust_crates:log",
"//third_party/rust_crates:nix",
"//third_party/rust_crates:serde_json",
"//third_party/rust_crates:shared_child",
"//third_party/rust_crates:tempfile",
"//tools/make-fuchsia-vol:lib",
]
test_deps = [
"//src/lib/fuchsia",
"//third_party/rust_crates:async-trait",
"//third_party/rust_crates:serde",
"//third_party/rust_crates:tempfile",
]
inputs = [
"test_data/unknown_engine_type_engine.json",
"test_data/testkey_atx_psk.pem",
"test_data/atx_metadata.bin",
"templates/emulator_flags.json.template",
"templates/efi_flags.json.template",
]
}
group("tests") {
testonly = true
deps = [ ":ffx_emulator_engines_test($host_toolchain)" ]
}
}