X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=CMakeLists.txt;h=cab79f2c7ba53270c05161a6be5107c681bfdf32;hb=fd0f1940d4b11f582fc237ff5ccf2c385eaa0e7d;hp=7cd6745f29a89dadf49c4a1baeae26eb7d47daca;hpb=5bb6f975322d3da0caf082b8d890132194d0a4ea;p=m6w6%2Flibmemcached diff --git a/CMakeLists.txt b/CMakeLists.txt index 7cd6745f..cab79f2c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.9..3.16) +cmake_minimum_required(VERSION 3.9...3.18) if(${CMAKE_VERSION} VERSION_LESS 3.12) cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) @@ -11,46 +11,45 @@ project(libmemcached DESCRIPTION "libmemcached https://github.com/m6w6/libmemcached" ) -set(CMAKE_CXX_STANDARD 11) -set(CMAKE_CXX_STANDARD_REQUIRED ON) +set(CXX_STANDARD 11) set(CMAKE_POSITION_INDEPENDENT_CODE ON) include(CMakeConfig.txt) -foreach(INCLUDE IN ITEMS ${CMAKE_BINARY_DIR} .) - include_directories( - ${INCLUDE}/ - ${INCLUDE}/include - ${INCLUDE}/src +if(NOT BUILD_DOCSONLY) + + set(AUTOHEADER_FILE mem_config.h) + + set(CLIENTS + memcapable + memcat + memcp + memdump + memerror + memexist + memflush + memparse + memping + memrm + memslap + memstat + memtouch ) -endforeach() - -set(AUTOHEADER_FILE mem_config.h) - -set(CLIENTS - memcapable - memcat - memcp - memdump - memerror - memexist - memflush - memparse - memping - memrm - memslap - memstat - memtouch - ) -add_subdirectory(include) -add_subdirectory(src) -add_subdirectory(docs) -add_subdirectory(support) + add_subdirectory(src) + add_subdirectory(contrib) + add_subdirectory(include) + add_subdirectory(support) + add_subdirectory(test) + + # keep last + configure_file(src/mem_config.h.in ${AUTOHEADER_FILE} @ONLY) +endif() -if(BUILD_TESTING) - add_subdirectory(tests) +if(BUILD_DOCS OR BUILD_DOCSONLY) + add_subdirectory(docs) endif() -# keep last -configure_file(src/mem_config.h.in ${AUTOHEADER_FILE} @ONLY) +if(ENV{INVALID_CONFIGURATION}) + message(FATAL_ERROR "invalid configuration -- giving up") +endif()