# 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("id_allocator") {
  sdk = "source"
  sdk_headers = [ "id_allocator/id_allocator.h" ]
  sources = [ "id_allocator.cc" ]
  public_deps = [
    # <id_allocator/id_allocator.h> has #include <bitmap/bitmap.h>.
    "//zircon/system/ulib/bitmap",

    # <id_allocator/id_allocator.h> has #include <fbl/algorithm.h>.
    "//zircon/system/ulib/fbl",
  ]
  deps = [
    "//zircon/system/public",
    "//zircon/system/ulib/bitmap",
    "//zircon/system/ulib/fbl",
    "//zircon/system/ulib/zircon-internal",
  ]
}

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