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

source_set("ctype") {
  deps = [ "//zircon/third_party/ulib/musl:musl_internal" ]
  sources = [
    "__ctype_get_mb_cur_max.c",
    "iswalnum.c",
    "iswalpha.c",
    "iswblank.c",
    "iswcntrl.c",
    "iswctype.c",
    "iswdigit.c",
    "iswgraph.c",
    "iswlower.c",
    "iswprint.c",
    "iswpunct.c",
    "iswspace.c",
    "iswupper.c",
    "iswxdigit.c",
    "towctrans.c",
    "wcswidth.c",
    "wctrans.c",
    "wcwidth.c",
  ]

  configs -= [ "//build/config:symbol_visibility_hidden" ]
}
