blob: c35fc5b1be0a47ee6888158149bf52eef932db76 [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/components.gni")
import("//build/rust/rustc_binary.gni")
rustc_binary("lifecycle_example") {
edition = "2021"
output_name = "lifecycle_example_rust"
source_root = "src/lifecycle.rs"
deps = [
"//sdk/fidl/fuchsia.process.lifecycle:fuchsia.process.lifecycle_rust",
"//src/lib/fidl/rust/fidl",
"//src/lib/fuchsia",
"//src/lib/fuchsia-async",
"//src/lib/fuchsia-runtime",
"//src/lib/zircon/rust:fuchsia-zircon",
"//third_party/rust_crates:futures-util",
"//third_party/rust_crates:tracing",
]
sources = [ "src/lifecycle.rs" ]
}
rustc_binary("lifecycle_manager") {
edition = "2021"
output_name = "lifecycle_manager_rust"
source_root = "src/manager.rs"
deps = [
"//examples/components/routing/fidl:echo_rust",
"//sdk/fidl/fuchsia.component:fuchsia.component_rust",
"//sdk/fidl/fuchsia.component.decl:fuchsia.component.decl_rust",
"//src/lib/fuchsia",
"//src/lib/fuchsia-component",
"//third_party/rust_crates:tracing",
]
sources = [ "src/manager.rs" ]
}
fuchsia_package_with_single_component("lifecycle") {
# Since `//examples/components/lifecycle/README.md` includes instructions to
# use `ffx component run` to launch one of two versions of `lifecycle`, the
# two versions need unique package names (`lifecycle_rust` in this case).
component_name = "default"
package_name = "lifecycle_rust"
manifest = "meta/lifecycle.cml"
deps = [ ":lifecycle_example" ]
}
fuchsia_component("manager-component") {
component_name = "lifecycle_manager"
manifest = "meta/manager.cml"
deps = [ ":lifecycle_manager" ]
}