
# This file was generated by the build system used internally in the Yandex monorepo.
# Only simple modifications are allowed (adding source-files to targets, adding simple properties
# like target_include_directories). These modifications will be ported to original
# ya.make files by maintainers. Any complex modifications which can't be ported back to the
# original buildsystem will not be accepted.


add_subdirectory(idl)
get_built_tool_path(
  TOOL_enum_parser_bin
  TOOL_enum_parser_dependency
  tools/enum_parser/enum_parser
  enum_parser
)

add_library(cpp-text_processing-dictionary)
target_link_libraries(cpp-text_processing-dictionary PUBLIC
  contrib-libs-linux-headers
  contrib-libs-cxxsupp
  yutil
  cpp-containers-flat_hash
  library-cpp-json
  text_processing-dictionary-idl
  cpp-threading-local_executor
  tools-enum_parser-enum_serialization_runtime
)
target_sources(cpp-text_processing-dictionary PRIVATE
  ${CMAKE_SOURCE_DIR}/library/cpp/text_processing/dictionary/bpe_builder.cpp
  ${CMAKE_SOURCE_DIR}/library/cpp/text_processing/dictionary/bpe_dictionary.cpp
  ${CMAKE_SOURCE_DIR}/library/cpp/text_processing/dictionary/bpe_helpers.cpp
  ${CMAKE_SOURCE_DIR}/library/cpp/text_processing/dictionary/dictionary.cpp
  ${CMAKE_SOURCE_DIR}/library/cpp/text_processing/dictionary/dictionary_builder.cpp
  ${CMAKE_SOURCE_DIR}/library/cpp/text_processing/dictionary/fbs_helpers.cpp
  ${CMAKE_SOURCE_DIR}/library/cpp/text_processing/dictionary/frequency_based_dictionary.cpp
  ${CMAKE_SOURCE_DIR}/library/cpp/text_processing/dictionary/frequency_based_dictionary_impl.cpp
  ${CMAKE_SOURCE_DIR}/library/cpp/text_processing/dictionary/mmap_frequency_based_dictionary.cpp
  ${CMAKE_SOURCE_DIR}/library/cpp/text_processing/dictionary/mmap_frequency_based_dictionary_impl.cpp
  ${CMAKE_SOURCE_DIR}/library/cpp/text_processing/dictionary/mmap_hash_table.cpp
  ${CMAKE_SOURCE_DIR}/library/cpp/text_processing/dictionary/multigram_dictionary_helpers.cpp
  ${CMAKE_SOURCE_DIR}/library/cpp/text_processing/dictionary/options.cpp
  ${CMAKE_SOURCE_DIR}/library/cpp/text_processing/dictionary/serialization_helpers.cpp
  ${CMAKE_SOURCE_DIR}/library/cpp/text_processing/dictionary/util.cpp
)
generate_enum_serilization(cpp-text_processing-dictionary
  ${CMAKE_SOURCE_DIR}/library/cpp/text_processing/dictionary/types.h
  INCLUDE_HEADERS
  library/cpp/text_processing/dictionary/types.h
)
