# 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.
import("//build/icu/icu_source_set.gni")
import("//build/icu/third_party_icu_headers.gni")

third_party_icu_headers("icu_headers") {
  icu_assembly = true
  headers = [
    "third_party/icu/source/common/unicode/errorcode.h",
    "third_party/icu/source/common/unicode/udata.h",
    "third_party/icu/source/i18n/unicode/timezone.h",
  ]
}

icu_source_set("cpp") {
  sources = [
    "icu_data.cc",
    "icu_data.h",
  ]

  icu_deps = [ ":icu_headers" ]

  deps = [ "//src/lib/fsl" ]

  public_deps = [ "//zircon/system/ulib/zx" ]
}
