# 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("//build/package.gni")

package("intl_wisdom") {
  deps = [
    "//garnet/examples/intl/client:intl_wisdom_client",
    "//garnet/examples/intl/server:intl_wisdom_server",
  ]

  binaries = [
    {
      name = "intl_wisdom_client"
    },
    {
      name = "intl_wisdom_server"
    },
  ]

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

  resources = [
    {
      path = rebase_path("//third_party/icu/common/icudtl.dat")
      dest = "icudtl.dat"
    },
  ]
}
