Secure collaboration server using 0MQ and Curve.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

60 lines
1.7 KiB

# Copyright (C) 2020-2021 David Sugar <tychosoft@gmail.com>.
#
# This file is free software; as a special exception the author gives
# unlimited permission to copy and/or distribute it, with or without
# modifications, as long as this notice is preserved.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
cmake_minimum_required(VERSION 3.1)
project(Calypso VERSION 0.0.5 LANGUAGES CXX)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_STANDARD 17)
if(CMAKE_BUILD_TYPE MATCHES "Debug")
set(BUILD_TESTING TRUE)
list(APPEND CMAKE_CXX_FLAGS "-Wall")
endif()
file(GLOB_RECURSE lint_cxx_sources RELATIVE ${PROJECT_SOURCE_DIR} server/*.[ch]pp)
set(lint_cxx_includes -I${PROJECT_BINARY_DIR} -Iserver -Ivendor/headers)
include(cmake/custom.cmake OPTIONAL)
include(cmake/project.cmake)
include(cmake/features.cmake)
include(cmake/coverage.cmake)
include(cmake/linting.cmake)
include(cmake/paths.cmake)
include(cmake/deploy.cmake OPTIONAL)
file(GLOB markdown *.md)
file(GLOB cmake_includes cmake/*.cmake)
file(GLOB rack_files rack/*.rb)
# Setup headers
include_directories(
${CMAKE_CURRENT_BINARY_DIR}
${CMAKE_CURRENT_SOURCE_DIR}/server
${CMAKE_CURRENT_SOURCE_DIR}/vendor/headers
)
configure_file(config.hpp.in config.hpp)
# Build Server and migrations...
add_subdirectory(server)
# Testing
if(BUILD_TESTING)
enable_testing()
add_subdirectory(test)
endif()
# Extras...
add_custom_target(support-files SOURCES config.hpp.in Doxyfile TODO ${markdown} ${cmake_includes} server/calypso.conf test/calypso.conf)