# 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/assembly/bootfs_files_for_assembly.gni")

executable("clock") {
  sources = [ "clock.cc" ]
  deps = [
    "//sdk/fidl/fuchsia.hardware.rtc:fuchsia.hardware.rtc_cpp",
    "//sdk/lib/component/incoming/cpp",
    "//src/lib/files",
  ]
}

executable("clkctl") {
  visibility = [ ":*" ]
  sources = [ "clkctl.cc" ]
  deps = [
    "//sdk/fidl/fuchsia.hardware.clock:fuchsia.hardware.clock_cpp",
    "//sdk/lib/component/incoming/cpp",
    "//src/lib/files",
  ]
}

bootfs_files_for_assembly("bootfs") {
  deps = [
    ":clkctl",
    ":clock",
  ]
}
