
# 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(flatbuffers)
add_subdirectory(parallel_sort)
add_subdirectory(ut)
get_built_tool_path(
  TOOL_enum_parser_bin
  TOOL_enum_parser_dependency
  tools/enum_parser/enum_parser
  enum_parser
)
get_built_tool_path(
  TOOL_enum_parser_bin
  TOOL_enum_parser_dependency
  tools/enum_parser/enum_parser
  enum_parser
)

add_library(catboost-libs-helpers)
target_link_libraries(catboost-libs-helpers PUBLIC
  contrib-libs-cxxsupp
  yutil
  private-libs-data_types
  private-libs-data_util
  private-libs-index_range
  catboost-libs-logging
  libs-helpers-flatbuffers
  contrib-libs-flatbuffers
  library-cpp-binsaver
  cpp-containers-2d_array
  library-cpp-pop_count
  library-cpp-dbg_output
  cpp-digest-crc32c
  cpp-digest-md5
  library-cpp-json
  cpp-malloc-api
  cpp-threading-local_executor
  library-cpp-fast_exp
  cpp-deprecated-atomic
  tools-enum_parser-enum_serialization_runtime
)
target_sources(catboost-libs-helpers PRIVATE
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/array_subset.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/borders_io.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/checksum.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/compression.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/connected_components.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/cpu_random.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/dbg_output.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/dense_hash.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/dense_hash_view.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/distribution_helpers.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/double_array_iterator.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/dynamic_iterator.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/element_range.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/equal.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/exception.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/guid.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/hash.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/int_cast.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/interrupt.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/json_helpers.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/map_merge.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/math_utils.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/matrix.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/maybe.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/maybe_owning_array_holder.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/mem_usage.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/parallel_tasks.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/polymorphic_type_containers.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/power_hash.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/progress_helper.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/permutation.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/quantile.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/query_info_helper.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/resource_constrained_executor.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/resource_holder.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/restorable_rng.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/sample.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/serialization.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/set.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/short_vector_ops.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/sparse_array.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/vector_helpers.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/wx_test.cpp
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/xml_output.cpp
)
generate_enum_serilization(catboost-libs-helpers
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/sparse_array.h
  INCLUDE_HEADERS
  catboost/libs/helpers/sparse_array.h
)
generate_enum_serilization(catboost-libs-helpers
  ${CMAKE_SOURCE_DIR}/catboost/libs/helpers/distribution_helpers.h
  INCLUDE_HEADERS
  catboost/libs/helpers/distribution_helpers.h
)
