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

executable("gltf_export") {
  output_name = "gltf_export"

  sources = [
    "main.cc",
  ]

  configs += [ "//third_party/cobalt:cobalt_config" ]

  deps = [
    "//garnet/lib/ui/gfx",
    "//garnet/lib/ui/scenic",
    "//garnet/public/lib/component/cpp",
    "//garnet/public/lib/fsl",
    "//sdk/fidl/fuchsia.ui.viewsv1",
    "//src/lib/fxl",
    "//third_party/cobalt/util/crypto_util",
    "//third_party/libpng",
    "//third_party/rapidjson",
    "//zircon/public/lib/async-loop-cpp",
    "//zircon/public/lib/trace-provider",
  ]
}
