# Copyright (c) 2025 The YAC Authors
#
# SPDX-License-Identifier: BSD-3-Clause

add_library(
  tests_common dist_grid_utils.c test_common.c tests.c yac_yaxt_test_util_c.c
)

if(YAC_ENABLE_FORTRAN)
  target_sources(tests_common PRIVATE utest.F90 yac_yaxt_test_util.F90)
  target_include_directories(tests_common PUBLIC ${CMAKE_CURRENT_BINARY_DIR})
endif()

target_include_directories(tests_common PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
target_link_libraries(tests_common PUBLIC yac_core)
# yac_yaxt_test_util_c.c calls the yaxt C API directly
target_link_libraries(tests_common PRIVATE yaxt::yaxt_c)

if(YAC_ENABLE_NETCDF)
  add_library(tests_file_common grid_file_common.c weight_file_common.c)
  target_include_directories(tests_common PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
  target_link_libraries(
    tests_file_common PRIVATE yac_core tests_common NetCDF::NetCDF_C
  )
endif()
