include(CheckSymbolExists)

check_symbol_exists(pledge "unistd.h" HAVE_PLEDGE)

configure_file(config.h.in config.h @ONLY)

add_executable(crossbow
    crossbow.c
    digest.c
    download.c
    filemap.c
    itemset.c
    launcher.c
    logging.c
    outfmt.c
    outfmt_parser.c
    persist_dir.c
    persist_file.c
    placeholders.c
    radix.c
    rc.c
    text.c
)

set_property(TARGET crossbow PROPERTY C_STANDARD 11)

target_include_directories(crossbow
    PRIVATE ${CMAKE_CURRENT_BINARY_DIR} ${UTHASH_H_INCLUDE}
)

target_link_libraries(crossbow
    PRIVATE
        PkgConfig::CURL
        PkgConfig::MRSS
        OpenSSL::Crypto
)

install(TARGETS crossbow)
