-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})
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(include)
+ add_subdirectory(src)
+ 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()