cmake_minimum_required(VERSION 4.0)
project(tstd C)

set(CMAKE_C_STANDARD 23)

set(CMAKE_EXPORT_COMPILE_COMMANDS ON)

add_library(tstd STATIC library.c
        include/tstd/string.h
        string.c
        list.c
        include/tstd/list.h
        helper.h)


add_executable(test_tstd_string test/test_string.c)
add_executable(test_tstd_list test/test_list.c)
target_link_libraries(test_tstd_string tstd)
target_link_libraries(test_tstd_list tstd)

target_include_directories(tstd
        PUBLIC
        $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
        $<INSTALL_INTERFACE:include>
)

enable_testing()
add_test(NAME tstd_tests_string COMMAND test_tstd_string)
add_test(NAME tstd_tests_list COMMAND test_tstd_list)
