blob: 7dac39c36139de2348f29c5f54bdcc93aec98964 [file] [log] [blame]
# Copyright 2023 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/components.gni")
import("//build/rust/rustc_binary.gni")
rustc_binary("bin") {
output_name = "fs_realm"
edition = "2021"
deps = [
"//sdk/fidl/fuchsia.device:fuchsia.device_rust",
"//sdk/fidl/fuchsia.hardware.block:fuchsia.hardware.block_rust",
"//sdk/fidl/fuchsia.io:fuchsia.io_rust",
"//sdk/fidl/fuchsia.process.lifecycle:fuchsia.process.lifecycle_rust",
"//src/lib/fidl/rust/fidl",
"//src/lib/fuchsia",
"//src/lib/fuchsia-async",
"//src/lib/fuchsia-fs",
"//src/lib/fuchsia-runtime",
"//src/lib/zircon/rust:fuchsia-zircon",
"//src/storage/blobfs/bin:component",
"//src/storage/f2fs/bin:f2fs-component",
"//src/storage/fidl/fuchsia.fs.realm:fuchsia.fs.realm_rust",
"//src/storage/fxfs:fxfs_component",
"//src/storage/lib/fs_management/rust:fs_management",
"//src/storage/lib/vfs/rust:vfs",
"//src/storage/minfs/bin:minfs-component",
"//src/storage/minfs/bin:minfs-component",
"//third_party/rust_crates:anyhow",
"//third_party/rust_crates:futures",
"//third_party/rust_crates:tracing",
]
sources = [ "src/main.rs" ]
# fs_realm is only used in eng products, not production.
deps += [ "//build/validate:non_production_tag" ]
}
fuchsia_component("component") {
component_name = "fs_realm"
manifest = "meta/fs_realm.cml"
deps = [ ":bin" ]
}
fuchsia_package("fs_realm") {
deps = [ ":component" ]
# This package is added by product assembly into eng builds only.
# It should not be added manually anywhere else.
visibility = [ "//bundles/assembly/*" ]
}