# Copyright 2016 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("//peridot/build/executable_package.gni")

executable_package("todo_cpp") {
  meta = [
    {
      path = "meta/todo_cpp.cmx"
      dest = "todo_cpp.cmx"
    },
  ]

  deps = [
    "//garnet/public/lib/fsl",
    "//sdk/fidl/fuchsia.ledger",
    "//sdk/fidl/fuchsia.modular",
    "//sdk/lib/fidl/cpp",
    "//sdk/lib/sys/cpp",
    "//src/ledger/bin/fidl",
    "//src/lib/fxl",
    "//zircon/public/lib/async-loop-cpp",
    "//zircon/public/lib/fit",
  ]

  sources = [
    "generator.cc",
    "generator.h",
    "todo.cc",
    "todo.h",
  ]
}
