cpack: NSIS
[m6w6/libmemcached] / CMakeConfig.txt
1 if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
2 if(NOT DEFINED ENV{CMAKE_BUILD_TYPE})
3 set(ENV{CMAKE_BUILD_TYPE} Release)
4 endif()
5 set(CMAKE_BUILD_TYPE $ENV{CMAKE_BUILD_TYPE}
6 CACHE STRING "build type (Release, Debug, ...)" FORCE)
7 endif()
8 set(CMAKE_INSTALL_PREFIX /usr/local
9 CACHE PATH "install prefix")
10
11 if(APPLE)
12 set(CMAKE_INSTALL_RPATH @loader_path
13 CACHE STRING "set relative rpath")
14 elseif(UNIX)
15 # FIXME
16 set(CMAKE_INSTALL_RPATH "\$ORIGIN"
17 CACHE STRING "set relative rpath")
18 endif()
19
20 option(BUILD_TESTING "whether to enable build of the test suite"
21 $ENV{BUILD_TESTING})
22 option(BUILD_DOCSONLY "build *only* documentation"
23 $ENV{BUILD_DOCSONLY})
24 option(BUILD_DOCS "build documentation"
25 ${BUILD_DOCSONLY})
26 option(BUILD_DOCS_HTML "build HTML docs"
27 ${BUILD_DOCS})
28 option(BUILD_DOCS_MAN "build manpages"
29 ${BUILD_DOCS})
30 option(BUILD_DOCS_MANGZ "gzip manpages"
31 ${BUILD_DOCS_MAN})
32
33 set(ENABLE_SANITIZERS "$ENV{ENABLE_SANITIZERS}"
34 CACHE STRING "sanitizers to enable (e.g. address;undefined ...)")
35 option(ENABLE_SASL "enable SASL support"
36 $ENV{ENABLE_SASL})
37 option(ENABLE_DTRACE "enable dtrace support"
38 $ENV{ENABLE_DTRACE})
39 option(ENABLE_HASH_HSIEH "enable hsieh hash support"
40 $ENV{ENABLE_HASH_HSIEH})
41 if(NOT DEFINED ENV{ENABLE_HASH_FNV64})
42 set(ENV{ENABLE_HASH_FNV64} ON)
43 endif()
44 option(ENABLE_HASH_FNV64 "enable fnv64 hash support"
45 $ENV{ENABLE_HASH_FNV64})
46 if(NOT DEFINED ENV{ENABLE_HASH_MURMUR})
47 set(ENV{ENABLE_HASH_MURMUR} ON)
48 endif()
49 option(ENABLE_HASH_MURMUR "enable murmur hash support"
50 $ENV{ENABLE_HASH_MURMUR})
51 if(NOT DEFINED ENV{ENABLE_MEMASLAP})
52 set(ENV{ENABLE_MEMASLAP} ON)
53 endif()
54 option(ENABLE_MEMASLAP "enable memaslap client"
55 $ENV{ENABLE_MEMASLAP})
56
57 if(BUILD_TESTING)
58 set(MEMCACHED_BINARY "$ENV{MEMCACHED_BINARY}"
59 CACHE STRING "memcached binary")
60 set(CMAKE_CTEST_ARGUMENTS "--output-on-failure")
61 if(CMAKE_VERSION VERSION_GREATER_EQUAL 3.17)
62 # available since CMake 3.17
63 list(APPEND CMAKE_CTEST_ARGUMENTS --repeat until-pass:2)
64 if(NOT "$ENV{CIRRUS_CI}")
65 list(APPEND CMAKE_CTEST_ARGUMENTS -j2)
66 endif()
67 endif()
68 endif()
69
70 if(BUILD_DOCS)
71 set(SPHINX_OPTIONS ""
72 CACHE STRING "additional sphinx-build command line options")
73 set(SPHINX_THEME "sphinx_rtd_theme"
74 CACHE STRING "sphinx HTML theme")
75 set(SPHINX_THEME_OPTIONS ""
76 CACHE STRING "sphinx HTML theme options")
77 set(SPHINX_EXTENSIONS ""
78 CACHE STRING "comma separated list of quoted sphinx extensions")
79 set(SPHINX_CONF_APPEND ""
80 CACHE STRING "append verbatim code to sphinx' conf.py")
81 endif()
82
83 # modules
84
85 include(GNUInstallDirs)
86
87 list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/CMake")
88
89 if(NOT BUILD_DOCSONLY)
90 include(CMake/_Include.cmake)
91 endif()