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

visibility = [ "//src/modular/*" ]

source_set("scoped_tmpfs") {
  sources = [
    "scoped_tmpfs.cc",
    "scoped_tmpfs.h",
  ]

  public_deps = [
    "//src/lib/fsl",
    "//zircon/public/lib/sync",
    "//zircon/system/ulib/async-loop:async-loop-cpp",
    "//zircon/system/ulib/async-loop:async-loop-default",
    "//zircon/system/ulib/memfs",
  ]

  deps = [
    "//sdk/lib/fdio",
    "//sdk/lib/syslog/cpp",
  ]
}

source_set("unittests") {
  testonly = true

  sources = [ "scoped_tmpfs_unittest.cc" ]

  deps = [
    ":scoped_tmpfs",
    "//third_party/googletest:gtest",
  ]
}
