# Copyright 2019 The Fuchsia Authors
#
# Use of this source code is governed by a MIT-style
# license that can be found in the LICENSE file or at
# https://opensource.org/licenses/MIT

import("//build/zircon/migrated_targets.gni")

zx_library("user_copy") {
  sources = [ "internal.cc" ]
  deps = [ ":tests" ]
  public_deps = [
    # <lib/user_copy/user_ptr.h> has #include <ktl/type_traits.h>.
    "//zircon/kernel/lib/ktl:headers",
  ]
}

source_set("tests") {
  #TODO: testonly = true
  visibility = [ ":*" ]
  sources = [ "user_copy_tests.cc" ]

  deps = [
    ":headers",
    "//zircon/kernel/lib/unittest",
    "//zircon/system/ulib/zircon-internal",
  ]
}
