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

group("fake_camera") {
  public_deps = [ ":lib" ]
}

source_set("lib") {
  visibility = [ ":*" ]

  sources = [
    "fake_camera_impl.cc",
    "fake_camera_impl.h",
  ]

  public = [ "fake_camera.h" ]

  deps = [
    "//sdk/lib/syslog/cpp",
    "//src/camera/lib/fake_stream:impl_header",
    "//zircon/system/ulib/async:async-cpp",
    "//zircon/system/ulib/async-loop:async-loop-cpp",
    "//zircon/system/ulib/async-loop:async-loop-default",
    "//zircon/system/ulib/fzl",
  ]

  public_deps = [
    "//sdk/fidl/fuchsia.camera3",
    "//sdk/fidl/fuchsia.sysmem",
    "//sdk/lib/fidl/cpp",
    "//src/camera/lib/fake_stream",
    "//zircon/public/lib/fit",
  ]
}
