# 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/unification/zx_library.gni")

zx_library("debugdata") {
  sources = [
    "datasink.cc",
    "debugdata.cc",
  ]
  sdk = "source"
  sdk_headers = [
    "lib/debugdata/debugdata.h",
    "lib/debugdata/datasink.h",
  ]
  deps = [
    "//sdk/fidl/fuchsia.debugdata:fuchsia.debugdata_llcpp",
    "//src/lib/fxl",
    "//src/lib/storage/vfs/cpp",
    "//zircon/public/lib/async-cpp",
    "//zircon/public/lib/fbl",
    "//zircon/public/lib/fidl",
    "//zircon/system/ulib/async-loop:async-loop-cpp",
    "//zircon/system/ulib/async-loop:async-loop-default",
    "//zircon/system/ulib/fzl",
  ]
  public_deps = [
    # <debugdata/debugdata.h has #include <fuchsia/debugdata/llcpp/fidl.h>.
    "//sdk/fidl/fuchsia.debugdata:fuchsia.debugdata_llcpp",

    # <debugdata/debugdata.h> has #include <fbl/unique_fd.h>.
    "//zircon/public/lib/fbl",

    # <debugdata/debugdata.h> has #include <lib/async/cpp/wait.h>.
    "//zircon/public/lib/async-cpp",

    # <debugdata/debugdata.h> has #include <lib/zircon-internal/fnv1hash.h>.
    "//zircon/public/lib/zircon-internal",

    # <debugdata/datasink.h> has #include <lib/zx/vmo.h>.
    "//zircon/public/lib/zx",
  ]
}

group("tests") {
  testonly = true
  deps = [ "test:tests" ]
}
