comparison CMakeLists.txt @ 0:8991989c4708

Initial import
author David Demelier <markand@malikania.fr>
date Tue, 22 Mar 2016 18:26:05 +0100
parents
children 6bc25027c198
comparison
equal deleted inserted replaced
-1:000000000000 0:8991989c4708
1 #
2 # CMakeLists.txt -- CMake build system for malikania
3 #
4 # Copyright (c) 2013-2016 Malikania Authors
5 #
6 # Permission to use, copy, modify, and/or distribute this software for any
7 # purpose with or without fee is hereby granted, provided that the above
8 # copyright notice and this permission notice appear in all copies.
9 #
10 # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
11 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
12 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
13 # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
14 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
15 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
16 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
17 #
18
19 cmake_minimum_required(VERSION 3.0)
20 project(malikania)
21
22 set(
23 CMAKE_MODULE_PATH
24 "${malikania_SOURCE_DIR}/cmake"
25 "${malikania_SOURCE_DIR}/cmake/internal"
26 "${malikania_SOURCE_DIR}/cmake/packages"
27 )
28
29 include(cmake/MalikaniaOptions.cmake)
30 include(cmake/MalikaniaFunctions.cmake)
31 include(cmake/MalikaniaVersion.cmake)
32 include(cmake/MalikaniaSystem.cmake)
33
34 configure_file(
35 ${malikania_SOURCE_DIR}/cmake/internal/Config.h.in
36 ${malikania_BINARY_DIR}/Config.h
37 )
38
39 include_directories(${CMAKE_BINARY_DIR})
40 enable_testing()
41
42 find_package(ZIP REQUIRED)
43 find_package(OpenSSL REQUIRED)
44
45 add_subdirectory(extern)
46 add_subdirectory(docs)
47 add_subdirectory(libcommon)
48 add_subdirectory(libclient)
49 add_subdirectory(libserver)
50 add_subdirectory(client)
51 add_subdirectory(server)
52 add_subdirectory(tests)
53
54 message("Building information:")
55 message(" General flags: ${CMAKE_CXX_FLAGS}")
56 message(" Debug flags: ${CMAKE_CXX_FLAGS_DEBUG}")
57 message(" Release flags: ${CMAKE_CXX_FLAGS_RELEASE}")
58 message("")
59 message("Documentation:")
60 message(" UML diagrams: ${WITH_DOCS_UML_MSG}")
61 message(" Doxygen: ${WITH_DOCS_DOXYGEN_MSG}")
62 message(" Books: ${WITH_DOCS_BOOKS_MSG}")