################################################################################
# Autogenerated by build_tools/bazel_to_cmake/bazel_to_cmake.py from           #
# runtime/src/iree/tokenizer/format/huggingface/BUILD.bazel                    #
#                                                                              #
# Use iree_cmake_extra_content from iree/build_defs.oss.bzl to add arbitrary   #
# CMake-only content.                                                          #
#                                                                              #
# To disable autogeneration for this file entirely, delete this header.        #
################################################################################

iree_add_all_subdirs()

iree_cc_library(
  NAME
    types
  HDRS
    "types.h"
  DEPS
    iree::base
  PUBLIC
)

iree_cc_library(
  NAME
    added_tokens_json
  HDRS
    "added_tokens_json.h"
  SRCS
    "added_tokens_json.c"
  DEPS
    iree::base
    iree::base::internal::json
    iree::tokenizer::types
  PUBLIC
)

iree_cc_test(
  NAME
    added_tokens_json_test
  SRCS
    "added_tokens_json_test.cc"
  DEPS
    ::added_tokens_json
    iree::base
    iree::testing::gtest
    iree::testing::gtest_main
)

iree_cc_library(
  NAME
    decoder_json
  HDRS
    "decoder_json.h"
  SRCS
    "decoder_json.c"
  DEPS
    iree::base
    iree::base::internal::json
    iree::tokenizer::decoder
    iree::tokenizer::decoder::byte_fallback
    iree::tokenizer::decoder::byte_level
    iree::tokenizer::decoder::ctc
    iree::tokenizer::decoder::metaspace
    iree::tokenizer::decoder::replace
    iree::tokenizer::decoder::sequence
    iree::tokenizer::decoder::strip
    iree::tokenizer::decoder::wordpiece
  PUBLIC
)

iree_cc_test(
  NAME
    decoder_json_test
  SRCS
    "decoder_json_test.cc"
  DEPS
    ::decoder_json
    iree::base
    iree::testing::gtest
    iree::testing::gtest_main
)

iree_cc_library(
  NAME
    model_json
  HDRS
    "model_json.h"
  SRCS
    "model_json.c"
  DEPS
    ::added_tokens_json
    ::types
    iree::base
    iree::base::internal::json
    iree::tokenizer::model
    iree::tokenizer::model::bpe
    iree::tokenizer::model::unigram
    iree::tokenizer::model::wordpiece
    iree::tokenizer::types
    iree::tokenizer::vocab
    iree::tokenizer::vocab::vocab_builder
  PUBLIC
)

iree_cc_test(
  NAME
    model_json_test
  SRCS
    "model_json_test.cc"
  DEPS
    ::added_tokens_json
    ::model_json
    ::types
    iree::base
    iree::testing::gtest
    iree::testing::gtest_main
    iree::tokenizer::model
    iree::tokenizer::vocab
)

iree_cc_library(
  NAME
    normalizer_json
  HDRS
    "normalizer_json.h"
  SRCS
    "normalizer_json.c"
  DEPS
    iree::base
    iree::base::internal::json
    iree::tokenizer::normalizer
    iree::tokenizer::normalizer::bert
    iree::tokenizer::normalizer::lowercase
    iree::tokenizer::normalizer::nfc
    iree::tokenizer::normalizer::nfd
    iree::tokenizer::normalizer::nfkd
    iree::tokenizer::normalizer::precompiled
    iree::tokenizer::normalizer::prepend
    iree::tokenizer::normalizer::regex_replace
    iree::tokenizer::normalizer::replace
    iree::tokenizer::normalizer::sequence
    iree::tokenizer::normalizer::strip
    iree::tokenizer::normalizer::strip_accents
  PUBLIC
)

iree_cc_test(
  NAME
    normalizer_json_test
  SRCS
    "normalizer_json_test.cc"
  DEPS
    ::normalizer_json
    iree::base
    iree::testing::gtest
    iree::testing::gtest_main
)

iree_cc_library(
  NAME
    postprocessor_json
  HDRS
    "postprocessor_json.h"
  SRCS
    "postprocessor_json.c"
  DEPS
    iree::base
    iree::base::internal::json
    iree::tokenizer::postprocessor
  PUBLIC
)

iree_cc_test(
  NAME
    postprocessor_json_test
  SRCS
    "postprocessor_json_test.cc"
  DEPS
    ::postprocessor_json
    iree::base
    iree::testing::gtest
    iree::testing::gtest_main
)

iree_cc_library(
  NAME
    segmenter_json
  HDRS
    "segmenter_json.h"
  SRCS
    "segmenter_json.c"
  DEPS
    ::types
    iree::base
    iree::base::internal::json
    iree::tokenizer::regex::compile
    iree::tokenizer::segmenter
    iree::tokenizer::segmenter::bert
    iree::tokenizer::segmenter::digits
    iree::tokenizer::segmenter::metaspace
    iree::tokenizer::segmenter::punctuation
    iree::tokenizer::segmenter::sequence
    iree::tokenizer::segmenter::split
    iree::tokenizer::segmenter::whitespace
  PUBLIC
)

iree_cc_test(
  NAME
    segmenter_json_test
  SRCS
    "segmenter_json_test.cc"
  DEPS
    ::segmenter_json
    iree::base
    iree::testing::gtest
    iree::testing::gtest_main
)

iree_cc_library(
  NAME
    tokenizer_json
  HDRS
    "tokenizer_json.h"
  SRCS
    "tokenizer_json.c"
  DEPS
    ::added_tokens_json
    ::decoder_json
    ::model_json
    ::normalizer_json
    ::postprocessor_json
    ::segmenter_json
    iree::base
    iree::base::internal::json
    iree::tokenizer
    iree::tokenizer::normalizer::prepend
    iree::tokenizer::normalizer::regex_replace
    iree::tokenizer::normalizer::replace
    iree::tokenizer::normalizer::sequence
    iree::tokenizer::normalizer::strip
    iree::tokenizer::special_tokens
  PUBLIC
)

iree_cc_test(
  NAME
    tokenizer_json_test
  SRCS
    "tokenizer_json_test.cc"
  DEPS
    ::tokenizer_json
    iree::base
    iree::testing::gtest
    iree::testing::gtest_main
)

iree_cc_fuzz(
  NAME
    decoder_json_fuzz
  SRCS
    "decoder_json_fuzz.cc"
  DEPS
    ::decoder_json
    iree::base
    iree::tokenizer::decoder
)

iree_cc_fuzz(
  NAME
    model_json_fuzz
  SRCS
    "model_json_fuzz.cc"
  DEPS
    ::added_tokens_json
    ::model_json
    iree::base
)

iree_cc_fuzz(
  NAME
    normalizer_json_fuzz
  SRCS
    "normalizer_json_fuzz.cc"
  DEPS
    ::normalizer_json
    iree::base
    iree::tokenizer::normalizer
)

iree_cc_fuzz(
  NAME
    segmenter_json_fuzz
  SRCS
    "segmenter_json_fuzz.cc"
  DEPS
    ::segmenter_json
    iree::base
    iree::tokenizer::segmenter
)

iree_cc_fuzz(
  NAME
    tokenizer_json_fuzz
  SRCS
    "tokenizer_json_fuzz.cc"
  DEPS
    ::tokenizer_json
    iree::base
)

### BAZEL_TO_CMAKE_PRESERVES_ALL_CONTENT_BELOW_THIS_LINE ###
