cpack
[m6w6/libmemcached] / CMakeLists.txt
1 cmake_minimum_required(VERSION 3.9...3.18)
2
3 if(${CMAKE_VERSION} VERSION_LESS 3.12)
4 cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION})
5 endif()
6
7 include(CMakeVersions.txt)
8
9 project(libmemcached
10 VERSION "${LIBMEMCACHED_VERSION}"
11 HOMEPAGE_URL "https://github.com/m6w6/libmemcached"
12 DESCRIPTION "libmemcached, a C/C++ memcached client library"
13 )
14
15 set(CXX_STANDARD 11)
16 set(CMAKE_POSITION_INDEPENDENT_CODE ON)
17
18 include(CMakeConfig.txt)
19
20 if(BUILD_DOCS OR BUILD_DOCSONLY)
21 add_subdirectory(docs)
22 endif()
23
24 if(NOT BUILD_DOCSONLY)
25
26 set(CLIENTS
27 memcapable
28 memcat
29 memcp
30 memdump
31 memerror
32 memexist
33 memflush
34 memparse
35 memping
36 memrm
37 memslap
38 memstat
39 memtouch
40 )
41
42 add_subdirectory(src)
43 add_subdirectory(contrib)
44 add_subdirectory(include)
45 add_subdirectory(support)
46
47 # tests need c++17 support
48 add_subdirectory(test)
49
50 # keep last
51 configure_file(${CONFIGURE_FILE_IN} ${CONFIGURE_FILE_OUT} @ONLY)
52 include(CPack.txt)
53 endif()
54
55 if(ENV{INVALID_CONFIGURATION})
56 message(FATAL_ERROR "invalid configuration -- giving up")
57 endif()