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

zx_library("fzl") {
  sdk = "source"
  sdk_headers = [
    "lib/fzl/fifo.h",
    "lib/fzl/memory-probe.h",
    "lib/fzl/owned-vmo-mapper.h",
    "lib/fzl/pinned-vmo.h",
    "lib/fzl/resizeable-vmo-mapper.h",
    "lib/fzl/time.h",
    "lib/fzl/vmar-manager.h",
    "lib/fzl/vmo-mapper.h",
    "lib/fzl/vmo-pool.h",
  ]
  sources = [
    "memory-probe.cc",
    "owned-vmo-mapper.cc",
    "pinned-vmo.cc",
    "resizeable-vmo-mapper.cc",
    "time.cc",
    "vmar-manager.cc",
    "vmo-mapper.cc",
    "vmo-pool.cc",
  ]
  deps = [
    "//zircon/system/ulib/fbl",
    "//zircon/system/ulib/zx",
  ]
  public_deps = [
    # Many public headers here use various fbl headers.
    "//zircon/system/ulib/fbl",

    # Many public headers here use various zx headers.
    "//zircon/system/ulib/zx",
  ]
}

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