# Copyright 2018 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/package.gni")

executable("bin") {
  output_name = "display_manager"

  sources = [
    "display.cc",
    "display.h",
    "display_manager_impl.cc",
    "display_manager_impl.h",
    "main.cc",
  ]

  deps = [
    "//garnet/public/lib/fsl",
    "//sdk/fidl/fuchsia.device.display",
    "//sdk/lib/sys/cpp",
    "//src/lib/fxl",
    "//zircon/public/fidl/fuchsia-hardware-backlight:fuchsia-hardware-backlight_c_client",
    "//zircon/public/lib/async-loop-cpp",
  ]
}

package("display_manager") {
  deps = [
    ":bin",
  ]
  binary = "display_manager"

  meta = [
    {
      path = rebase_path("meta/display_manager.cmx")
      dest = "display_manager.cmx"
    },
  ]
}
