# This file was generated by the YaTool build system (https://github.com/yandex/yatool),
# from a source YaTool build configuration provided in ya.make files.
#
# If the repository supports both CMake and ya build configurations, please modify both of them.
#
# If only CMake build configuration is supported then modify only CMake files and note that only
# simple modifications are allowed like adding source-files to targets or 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 easily ported back to the ya build
# system may be rejected.
#
# Please refer to the build instructions in the repository for more information about manual
# changes in this file.

add_library(models)


target_link_libraries(models PUBLIC
  contrib-libs-cxxsupp
  yutil
  catboost-cuda-cuda_lib
  catboost-cuda-cuda_util
  catboost-cuda-gpu_data
  internal-platform-cuda
)

target_cuda_sources(models PRIVATE
  ${PROJECT_SOURCE_DIR}/catboost/cuda/models/kernel/add_model_value.cu
)

target_sources(models PRIVATE
  ${PROJECT_SOURCE_DIR}/catboost/cuda/models/add_oblivious_tree_model_doc_parallel.cpp
  ${PROJECT_SOURCE_DIR}/catboost/cuda/models/oblivious_model.cpp
  ${PROJECT_SOURCE_DIR}/catboost/cuda/models/region_model.cpp
  ${PROJECT_SOURCE_DIR}/catboost/cuda/models/non_summetric_tree.cpp
  ${PROJECT_SOURCE_DIR}/catboost/cuda/models/model_converter.cpp
  ${PROJECT_SOURCE_DIR}/catboost/cuda/models/compact_model.cpp
)


target_cuda_flags(models
  -Wno-deprecated-gpu-targets
)

add_global_library_for(models.global
  models)


target_link_libraries(models.global PUBLIC
  contrib-libs-cxxsupp
  yutil
  catboost-cuda-cuda_lib
  catboost-cuda-cuda_util
  catboost-cuda-gpu_data
  internal-platform-cuda
)

target_sources(models.global PRIVATE
  ${PROJECT_SOURCE_DIR}/catboost/cuda/models/add_bin_values.cpp
  ${PROJECT_SOURCE_DIR}/catboost/cuda/models/add_region_doc_parallel.cpp
  ${PROJECT_SOURCE_DIR}/catboost/cuda/models/add_non_symmetric_tree_doc_parallel.cpp
)

