Files

51 lines
1.2 KiB
CMake

cmake_minimum_required(VERSION 3.23)
project(ZBBSServer
VERSION 1.0.0
)
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
set(TARGET_GROUP production CACHE STRING "Group to build")
# Uncomment if you need to use PostgresQL
option(USE_POSTGRESQL "Use PostgreSQL instead of SQLite" OFF)
if (USE_POSTGRESQL)
find_package(PostgreSQL REQUIRED)
if(NOT PostgreSQL_FOUND)
message(FATAL_ERROR "PostgreSQL not found. Please install libpq-dev or set PostgreSQL_ROOT.")
endif()
else()
find_package(SQLite3 REQUIRED)
if(NOT SQLite3_FOUND)
message(FATAL_ERROR "SQLite3 not found. Please install sqlite3-devel or set SQLite3_ROOT.")
endif()
endif()
if(
(CMAKE_CXX_COMPILER_ID STREQUAL "GNU") OR
(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
)
add_compile_definitions(_GNU_SOURCE)
endif()
find_package(OpenSSL REQUIRED)
if(NOT OpenSSL_FOUND)
message(FATAL_ERROR "OpenSSL not found. Please install libcrypto or set OpenSSL_ROOT.")
endif()
set(CURSES_NEED_NCURSES TRUE)
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
add_subdirectory(src)
# Testing
include(CTest)
include(cmake/OptionsCMocka.cmake)
add_subdirectory(external/cmocka)
add_subdirectory(test)
install(
TARGETS zbbs-server
)