-
if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
if(NOT DEFINED ENV{CMAKE_BUILD_TYPE})
set(ENV{CMAKE_BUILD_TYPE} Release)
CACHE STRING "set relative rpath")
endif()
+if(${CMAKE_VERSION} VERSION_LESS "3.12")
+ set(TARGET_NAMELINK_COMPONENT "")
+else()
+ set(TARGET_NAMELINK_COMPONENT NAMELINK_COMPONENT dev DESTINATION ${CMAKE_INSTALL_LIBDIR})
+endif()
+
+set(CLIENT_PREFIX mem
+ CACHE STRING "client prefix (default mem; i.e.: memstat, memcp, memcat ...)")
+
+option(BUILD_SHARED_LIBS "whether to build shared libraries"
+ ON)
option(BUILD_TESTING "whether to enable build of the test suite"
$ENV{BUILD_TESTING})
option(BUILD_DOCSONLY "build *only* documentation"
${BUILD_DOCS})
option(BUILD_DOCS_MANGZ "gzip manpages"
${BUILD_DOCS_MAN})
+if(BUILD_DOCS_MANGZ)
+ set(BUILD_DOCS_MAN ON CACHE BOOL "forced by BUILD_DOCS_MANGZ" FORCE)
+endif()
+if(BUILD_DOCS_MAN OR BUILD_DOCS_HTML)
+ set(BUILD_DOCS ON CACHE BOOL "forced by BUILD_DOCS_MAN OR BUILD_DOCS_HTML" FORCE)
+endif()
set(ENABLE_SANITIZERS "$ENV{ENABLE_SANITIZERS}"
CACHE STRING "sanitizers to enable (e.g. address;undefined ...)")
endif()
option(ENABLE_MEMASLAP "enable memaslap client"
$ENV{ENABLE_MEMASLAP})
+option(ENABLE_OPENSSL_CRYPTO
+ "enable OpenSSL's libcrypto instead of bundled AES implementation"
+ $ENV{ENABLE_OPENSSL_CRYPTO})
if(BUILD_TESTING)
set(MEMCACHED_BINARY "$ENV{MEMCACHED_BINARY}"
set(SPHINX_CONF_APPEND ""
CACHE STRING "append verbatim code to sphinx' conf.py")
endif()
-
-# legacy
-
-set(HAVE_VISIBILITY 1)
-set(HAVE_SHARED_ENABLED 1)
-set(HAVE_GCC_BUILTIN_ATOMIC 1)
-
-# modules
-
-list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/CMake")
-
-if(NOT BUILD_DOCSONLY)
- include(CMake/_Include.cmake)
-endif()