project(libhttppp)
cmake_minimum_required(VERSION 3.26)
enable_testing ()

set(LIBV "1.0.0")
set(Upstream_VERSION 1.0.0)

include(GNUInstallDirs)

set (DEFAULT_UPLOADSIZE 4e+6 CACHE STRING "Block size for Uploads")

set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON)

set(CMAKE_CXX_STANDARD 20)

if(MSVC)
    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /std:c++20")
endif(MSVC)

find_package(libnetplus REQUIRED)
find_package(libcmdplus REQUIRED)

find_package(libhtmlpp)

include(CheckIncludeFileCXX)

set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH}  ${CMAKE_SOURCE_DIR}/cmake/)

configure_file(config.h.in ${CMAKE_CURRENT_BINARY_DIR}/config.h)

include_directories(
	${CMAKE_CURRENT_BINARY_DIR}
    ${NETPLUS_INCLUDE_DIR}
	${CMDPLUS_INCLUDE_DIR}
	${HTMLPP_INCLUDE_DIR}
)

add_subdirectory(doc)
add_subdirectory(src)
add_subdirectory(examples)
add_subdirectory(test)
