# src/tsolvers/ad/solver_utils/CMakeLists.txt
# ==================================================================================
# CMakeLists.txt for the solver_utils module of the tsolvers library.
# ==================================================================================


# ==================================================================================
# 1. Append Source Files (.cpp - private)
# ==================================================================================
target_sources(trex_tsolvers PRIVATE
    ${CMAKE_CURRENT_LIST_DIR}/solver_preprocessing.cpp
    ${CMAKE_CURRENT_LIST_DIR}/buffer_registry.cpp
)
# ==================================================================================


# ==================================================================================
# 2. Append Header Files (.hpp - public)
# ==================================================================================
# Marked PUBLIC so that CMake tools and IDEs index them correctly.
target_sources(trex_tsolvers PUBLIC
    FILE_SET HEADERS
    BASE_DIRS ${PROJECT_SOURCE_DIR}/src      # project root src/
    FILES
        ${CMAKE_CURRENT_LIST_DIR}/solver_preprocessing.hpp
        ${CMAKE_CURRENT_LIST_DIR}/buffer_registry.hpp
        ${CMAKE_CURRENT_LIST_DIR}/memory_bytes.hpp
        ${CMAKE_CURRENT_LIST_DIR}/tikhonov_validation.hpp
)
# ==================================================================================
