# 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")



source_set("lib") {
  sources = [
    "service.cc",
    "service.h"
  ]

  public_deps = [
    "//garnet/bin/network_time:lib",
    "//garnet/public/fidl/fuchsia.timezone",
    "//garnet/public/lib/component/cpp",
    "//garnet/public/lib/fxl",
    "//garnet/public/lib/syslog/cpp",
    "//zircon/public/lib/async-loop-cpp",
    
  ]
}

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

  sources = [
    "main.cc"
  ]

  deps = [
    ":lib",
    "//garnet/public/lib/component/cpp",
    "//garnet/public/lib/fsl",
    "//garnet/public/lib/fxl",
    "//zircon/public/lib/async-default",
    "//zircon/public/lib/async-loop-cpp",
  ]
}

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

  resources = [
    {
      path = rebase_path("roughtime-servers.json")
      dest = "roughtime-servers.json"
    },
  ]

  binary = "network_time_service"

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