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

zx_library("bitmap") {
  sdk = "source"
  sdk_headers = [
    "bitmap/bitmap.h",
    "bitmap/raw-bitmap.h",
    "bitmap/rle-bitmap.h",
    "bitmap/storage.h",
  ]

  sources = [ "raw-bitmap.cc" ]
  public_deps = [ "//zircon/system/ulib/fbl:headers" ]
  if (!is_kernel && !is_host) {
    public_deps += [
      # <bitmap/storage.h> has #include <lib/zx/vmo.h>.
      "//zircon/system/ulib/zx:headers",
    ]
    deps = [
      "//src/zircon/lib/zircon",
      "//zircon/system/ulib/fbl",
      "//zircon/system/ulib/zx",
    ]
  }
}

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