blob: c65a3f3aad634fed630609145443abdb2ec05b35 [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/rust/rustc_binary.gni")
import("//src/sys/build/components.gni")
if (host_toolchain == current_toolchain) {
rustc_binary("blobfs-fsck-soft-host") {
testonly = true
edition = "2018"
deps = [
"//third_party/rust_crates:anyhow",
"//third_party/rust_crates:structopt",
"//tools/blackout/blackout-host",
]
source_root = "src/host.rs"
with_unit_tests = true
test_environments = [
{
dimensions = {
device_type = "Astro"
}
tags = [ "power-failure" ]
netboot = true
},
]
sources = [ "src/host.rs" ]
}
}
rustc_binary("blobfs-fsck-soft-target-bin") {
with_unit_tests = true
testonly = true
edition = "2018"
deps = [
"//src/lib/cstr",
"//src/lib/fdio/rust:fdio",
"//src/lib/scoped_task",
"//src/lib/storage/fs_management",
"//src/lib/storage/ramdevice_client",
"//src/lib/zircon/rust:fuchsia-zircon",
"//third_party/rust_crates:anyhow",
"//third_party/rust_crates:structopt",
"//tools/blackout/blackout-target",
]
source_root = "src/target.rs"
sources = [ "src/target.rs" ]
}
fuchsia_component("blobfs-fsck-soft-target-component") {
testonly = true
deps = [
":blobfs-fsck-soft-target-bin",
"//src/storage/bin/blobfs",
"//src/storage/blobfs/test:blobfs-load-generator",
]
manifest = "meta/blobfs_fsck_soft_target.cmx"
}
fuchsia_package("blobfs-fsck-soft-target") {
testonly = true
deps = [ ":blobfs-fsck-soft-target-component" ]
}
fuchsia_component("blobfs-fsck-soft-target-test-component") {
testonly = true
deps = [
":blobfs-fsck-soft-target-bin_test",
"//src/storage/bin/blobfs",
"//src/storage/blobfs/test:blobfs-load-generator",
]
manifest = "meta/blobfs_fsck_soft_target_bin_bin_test.cmx"
}
fuchsia_test_package("blobfs-fsck-soft-target-test") {
test_components = [ ":blobfs-fsck-soft-target-test-component" ]
deps = [
":blobfs-fsck-soft-target-test-component",
"//src/lib/storage/ramdevice_client:ramdisk-isolated-devmgr-component",
]
}
group("blobfs-fsck-soft") {
testonly = true
public_deps = [
":blobfs-fsck-soft-host($host_toolchain)",
":blobfs-fsck-soft-target",
]
}
group("tests") {
testonly = true
public_deps = [ ":blobfs-fsck-soft-target-test" ]
}
group("integration") {
testonly = true
public_deps = [
":blobfs-fsck-soft-host_test($host_toolchain)",
":blobfs-fsck-soft-target",
"//garnet/packages/prod:run",
]
}