# Copyright 2016 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.

source_set("files") {
  sources = [
    "directory.cc",
    "directory.h",
    "eintr_wrapper.h",
    "file.cc",
    "file.h",
    "file_descriptor.cc",
    "file_descriptor.h",
    "glob.cc",
    "glob.h",
    "path.cc",
    "path.h",
    "scoped_temp_dir.cc",
    "scoped_temp_dir.h",
    "unique_fd.h",
  ]

  public_deps = [
    "//src/lib/fxl:strings",
    "//zircon/public/lib/fbl",
  ]

  deps = [
    "//src/lib/fxl:fxl_logging",
    "//src/lib/fxl:memory",
    "//zircon/public/lib/fit",
  ]
}
