# 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("//src/sys/build/components.gni")

# [START bin]
executable("bin") {
  output_name = "fidl_echo_llcpp_server"
  sources = [ "main.cc" ]
  deps = [
    "//examples/fidl/fuchsia.examples:fuchsia.examples_llcpp",
    "//sdk/lib/fdio",
    "//zircon/public/lib/fidl",
    "//zircon/system/ulib/async-loop:async-loop-cpp",
    "//zircon/system/ulib/async-loop:async-loop-default",
    "//zircon/system/ulib/svc",
  ]
}

# [END bin]

# [START rest]
# Declare a component for the server, which consists of the manifest and the
# binary that the component will run.
fuchsia_component("echo-server") {
  manifest = "server.cmx"
  deps = [ ":bin" ]
}

# Declare a package that contains a single component, our server.
fuchsia_package("server") {
  package_name = "echo-llcpp-server"
  deps = [ ":echo-server" ]
}
# [END rest]
