project(tw_io)

file(GLOB HEADERS
    include/*.hpp
    include/io/*.hpp
    include/bytebuffer/*.hpp
    include/exception/*.hpp
)

add_library(${PROJECT_NAME} INTERFACE)
add_library(tw::io ALIAS ${PROJECT_NAME})
target_sources(${PROJECT_NAME}
    INTERFACE FILE_SET HEADERS
    BASE_DIRS include
    FILES ${HEADERS})

target_include_directories(${PROJECT_NAME}
    INTERFACE
    ${PROJECT_SOURCE_DIR}/include/
)

target_link_libraries(${PROJECT_NAME}
    INTERFACE
    spdlog::spdlog
    tl::expected
)
