# 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")

# Common variables for our SDK and in-tree targets.
common_vars = {
  sdk = "source"
  sdk_headers = [
    "lib/abr/data.h",
    "lib/abr/ops.h",
    "lib/abr/sysdeps.h",
    "lib/abr/util.h",
    "lib/abr/abr.h",
  ]
  sources = [
    "flow.c",
    "util.c",
  ]
}

zx_library("abr") {
  forward_variables_from(common_vars, "*")
  sdk_publishable = "experimental"
}

# In-tree library.
# This is necessary because in-tree targets use //zircon/system/public
# as the sysroot dependency, which is not available to sdk_publishable
# targets.
zx_library("in_tree") {
  forward_variables_from(common_vars, "*")
  deps = [ "//zircon/system/public" ]
}
