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

import("//topaz/runtime/dart_runner/dart_app.gni")

# TODO(fxb/43211) cleanup "write_xunion" bits
dart_app("fidl_dart_write_xunion_compatibility_test_server") {
  main_dart = "lib/main.dart"

  meta = [
    {
      path = rebase_path(
              "meta/fidl_dart_write_xunion_compatibility_test_server.cmx")
      dest = "fidl_dart_write_xunion_compatibility_test_server.cmx"
    },
  ]

  source_dir = "."
  sources = []
  deps = [
    "//garnet/public/lib/fidl/compatibility_test:compatibility_test_service",
    "//topaz/public/dart/fuchsia_services",
  ]
}
