Mercurial > malikania
view CMakeLists.txt @ 187:eaa7f85bfc22
Tests: use BOOST_TEST, closes #917 @1h
author | David Demelier <markand@malikania.fr> |
---|---|
date | Sat, 20 Oct 2018 21:58:32 +0200 |
parents | 387f6b0a5420 |
children | 0cecdadfb5c4 |
line wrap: on
line source
# # CMakeLists.txt -- CMake build system for malikania # # Copyright (c) 2013-2018 David Demelier <markand@malikania.fr> # # Permission to use, copy, modify, and/or distribute this software for any # purpose with or without fee is hereby granted, provided that the above # copyright notice and this permission notice appear in all copies. # # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # cmake_minimum_required(VERSION 3.0) project(malikania) set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED On) set(CMAKE_POSITION_INDEPENDENT_CODE On) set(CMAKE_MODULE_PATH ${malikania_SOURCE_DIR}/cmake/packages) include(cmake/function/MalikaniaBuildAssets.cmake) include(cmake/function/MalikaniaDefineLibrary.cmake) include(cmake/function/MalikaniaDefineExample.cmake) include(cmake/function/MalikaniaDefineExecutable.cmake) include(cmake/function/MalikaniaDefineTest.cmake) include(cmake/function/MalikaniaSetg.cmake) include(cmake/MalikaniaVersion.cmake) include(cmake/MalikaniaOptions.cmake) include(cmake/MalikaniaSystem.cmake) configure_file( ${malikania_SOURCE_DIR}/cmake/internal/sysconfig.hpp.in ${malikania_BINARY_DIR}/sysconfig.hpp ) include_directories(${malikania_BINARY_DIR}) find_package(Boost REQUIRED QUIET COMPONENTS filesystem system timer unit_test_framework) find_package(OpenSSL REQUIRED) add_subdirectory(tools) add_subdirectory(examples) add_subdirectory(extern) add_subdirectory(docs) add_subdirectory(libdb) add_subdirectory(libcommon) add_subdirectory(libcommon-js) add_subdirectory(libclient) add_subdirectory(libclient-js) add_subdirectory(libserver) add_subdirectory(client) add_subdirectory(server) if (WITH_TESTS) enable_testing() add_subdirectory(tests) endif () # TODO: replace with FeatureSummary message("Building information:") message(" General flags: ${CMAKE_CXX_FLAGS}") message(" Debug flags: ${CMAKE_CXX_FLAGS_DEBUG}") message(" Release flags: ${CMAKE_CXX_FLAGS_RELEASE}") message("") message("Documentation:") message(" Doxygen: ${WITH_DOXYGEN_MSG}") message("") message("Additional options:") message(" Tests: ${WITH_TESTS_MSG}")