diff options
Diffstat (limited to 'cmake/wsrep.cmake')
-rw-r--r-- | cmake/wsrep.cmake | 44 |
1 files changed, 34 insertions, 10 deletions
diff --git a/cmake/wsrep.cmake b/cmake/wsrep.cmake index a1e8fc39fca..a6d843e5591 100644 --- a/cmake/wsrep.cmake +++ b/cmake/wsrep.cmake @@ -17,6 +17,7 @@ # # Galera library does not compile with windows # +IF (NOT WITHOUT_SERVER) IF(UNIX) SET(with_wsrep_default ON) ELSE() @@ -24,20 +25,43 @@ ELSE() ENDIF() OPTION(WITH_WSREP "WSREP replication API (to use, e.g. Galera Replication library)" ${with_wsrep_default}) +OPTION(WITH_WSREP_ALL + "Build all components of WSREP (unit tests, sample programs)" + OFF) -# Set the patch version -SET(WSREP_PATCH_VERSION "24") +IF(WITH_WSREP) + # Set the patch version + SET(WSREP_PATCH_VERSION "22") -# Obtain wsrep API version -FILE(STRINGS "${MySQL_SOURCE_DIR}/wsrep/wsrep_api.h" WSREP_API_VERSION - LIMIT_COUNT 1 REGEX "WSREP_INTERFACE_VERSION") -STRING(REGEX MATCH "([0-9]+)" WSREP_API_VERSION "${WSREP_API_VERSION}") + IF(NOT EXISTS "${CMAKE_SOURCE_DIR}/wsrep-lib/wsrep-API/v26/wsrep_api.h") + MESSAGE(FATAL_ERROR "No MariaDB wsrep-API code! Run + ${GIT_EXECUTABLE} submodule update --init --recursive +Then restart the build. +") + ENDIF() + # Obtain wsrep API version + FILE(STRINGS "${CMAKE_SOURCE_DIR}/wsrep-lib/wsrep-API/v26/wsrep_api.h" WSREP_API_VERSION + LIMIT_COUNT 1 REGEX "WSREP_INTERFACE_VERSION") + STRING(REGEX MATCH "([0-9]+)" WSREP_API_VERSION "${WSREP_API_VERSION}") -SET(WSREP_VERSION "${WSREP_API_VERSION}.${WSREP_PATCH_VERSION}" - CACHE INTERNAL "WSREP version") + SET(WSREP_VERSION "${WSREP_API_VERSION}.${WSREP_PATCH_VERSION}" + CACHE INTERNAL "WSREP version") -SET(WSREP_PROC_INFO ${WITH_WSREP}) + SET(WSREP_PROC_INFO ${WITH_WSREP}) -IF(WITH_WSREP) SET(WSREP_PATCH_VERSION "wsrep_${WSREP_VERSION}") + if (NOT WITH_WSREP_ALL) + SET(WSREP_LIB_WITH_UNIT_TESTS OFF CACHE BOOL + "Disable unit tests for wsrep-lib") + SET(WSREP_LIB_WITH_DBSIM OFF CACHE BOOL + "Disable building dbsim for wsrep-lib") + endif() + INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/wsrep-lib/include) + INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/wsrep-lib/wsrep-API/v26) + + SET(old_BUILD_SHARED_LIBS ${BUILD_SHARED_LIBS}) + SET(BUILD_SHARED_LIBS OFF) + ADD_SUBDIRECTORY(wsrep-lib) + SET(BUILD_SHARED_LIBS ${old_BUILD_SHARED_LIBS}) ENDIF() +ENDIF(NOT WITHOUT_SERVER) |