Skip to content

Commit 7841a7e

Browse files
committed
Merge branch '10.3' into 10.4
2 parents 77992bc + 1423cf5 commit 7841a7e

File tree

339 files changed

+7429
-2362
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

339 files changed

+7429
-2362
lines changed

CMakeLists.txt

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -145,6 +145,7 @@ IF (NOT CPACK_GENERATOR)
145145
ENDIF(WIN32)
146146
ENDIF(NOT CPACK_GENERATOR)
147147

148+
INCLUDE(FeatureSummary)
148149
INCLUDE(misc)
149150
INCLUDE(mysql_version)
150151
INCLUDE(cpack_source_ignore_files)
@@ -428,12 +429,15 @@ ADD_SUBDIRECTORY(sql/share)
428429
IF(NOT WITHOUT_SERVER)
429430
ADD_SUBDIRECTORY(tests)
430431
ADD_SUBDIRECTORY(sql)
431-
OPTION (WITH_EMBEDDED_SERVER "Compile MySQL with embedded server" OFF)
432-
IF(WITH_EMBEDDED_SERVER)
433-
ADD_SUBDIRECTORY(libmysqld)
434-
ADD_SUBDIRECTORY(libmysqld/examples)
435-
ADD_SUBDIRECTORY(unittest/embedded)
432+
OPTION (WITH_EMBEDDED_SERVER "Compile MariaDB with embedded server" OFF)
433+
IF(WITH_EMBEDDED_SERVER)
434+
ADD_SUBDIRECTORY(libmysqld)
435+
ADD_SUBDIRECTORY(libmysqld/examples)
436+
ADD_SUBDIRECTORY(unittest/embedded)
436437
ENDIF(WITH_EMBEDDED_SERVER)
438+
IF(NOT WIN32)
439+
ADD_FEATURE_INFO(EMBEDDED_SERVER WITH_EMBEDDED_SERVER "Embedded MariaDB Server Library")
440+
ENDIF()
437441

438442
ADD_SUBDIRECTORY(mysql-test)
439443
ADD_SUBDIRECTORY(mysql-test/lib/My/SafeProcess)
@@ -527,6 +531,13 @@ IF(WIN32 AND SIGNCODE)
527531
INSTALL(SCRIPT ${PROJECT_BINARY_DIR}/sign.cmake)
528532
ENDIF()
529533

534+
FEATURE_SUMMARY(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES VAR MARIADB_FEATURE_SUMMARY)
535+
536+
OPTION(FEATURE_SUMMARY "Print feature summary at the end of configure step" ON)
537+
IF (FEATURE_SUMMARY)
538+
MESSAGE_ONCE(SUMMARY "${MARIADB_FEATURE_SUMMARY}")
539+
ENDIF()
540+
530541
IF(NON_DISTRIBUTABLE_WARNING)
531542
MESSAGE(WARNING "
532543
You have linked MariaDB with ${NON_DISTRIBUTABLE_WARNING} libraries! You may not distribute the resulting binary. If you do, you will put yourself into a legal problem with the Free Software Foundation.")

cmake/aws_sdk.cmake

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ FUNCTION (CHECK_AWS_SDK RETVAL REASON)
4545
IF(UNIX)
4646
# Check librairies required for building SDK
4747
FIND_PACKAGE(CURL)
48+
SET_PACKAGE_PROPERTIES(CURL PROPERTIES TYPE REQUIRED)
4849
IF(NOT CURL_FOUND)
4950
SKIP_AWS_SDK("AWS C++ SDK requires libcurl development package")
5051
ENDIF()
@@ -54,10 +55,12 @@ FUNCTION (CHECK_AWS_SDK RETVAL REASON)
5455
ENDIF()
5556
IF(NOT APPLE)
5657
FIND_LIBRARY(UUID_LIBRARIES uuid)
58+
SET_PACKAGE_PROPERTIES(UUID_LIBRARIES PROPERTIES TYPE REQUIRED)
5759
IF(NOT UUID_LIBRARIES)
5860
SKIP_AWS_SDK("AWS C++ SDK requires uuid development package")
5961
ENDIF()
6062
FIND_PACKAGE(OpenSSL)
63+
SET_PACKAGE_PROPERTIES(OpenSSL PROPERTIES TYPE REQUIRED)
6164
IF(NOT OPENSSL_FOUND)
6265
SKIP_AWS_SDK("AWS C++ SDK requires openssl development package")
6366
ENDIF()

cmake/for_clients.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ MACRO(EXTRACT_LINK_LIBRARIES target var)
2121
FOREACH(lib ${${target}_LIB_DEPENDS})
2222
# Filter out "general", it is not a library, just CMake hint
2323
# Also, remove duplicates
24-
IF(NOT lib STREQUAL "general" AND NOT ${var} MATCHES "-l${lib} ")
24+
IF(NOT lib STREQUAL "general" AND NOT ${var} MATCHES "-l${lib} " AND NOT lib STREQUAL "zlib")
2525
IF (lib MATCHES "^\\-")
2626
SET(${var} "${${var}} ${lib} ")
2727
ELSEIF(lib MATCHES "^/")

cmake/jemalloc.cmake

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,5 +37,6 @@ MACRO (CHECK_JEMALLOC)
3737
IF (NOT LIBJEMALLOC AND NOT WITH_JEMALLOC STREQUAL "auto")
3838
MESSAGE(FATAL_ERROR "jemalloc is not found")
3939
ENDIF()
40+
ADD_FEATURE_INFO(JEMALLOC LIBJEMALLOC "Use the JeMalloc memory allocator")
4041
ENDIF()
4142
ENDMACRO()

cmake/numa.cmake

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ MACRO (MYSQL_CHECK_NUMA)
3333
ENDIF()
3434
ENDIF()
3535

36+
ADD_FEATURE_INFO(NUMA HAVE_LIBNUMA "NUMA memory allocation policy")
3637
IF(WITH_NUMA_LOWERCASE STREQUAL "auto" AND HAVE_LIBNUMA)
3738
MESSAGE_ONCE(numa "WITH_NUMA=AUTO: NUMA memory allocation policy enabled")
3839
ELSEIF(WITH_NUMA_LOWERCASE STREQUAL "auto" AND NOT HAVE_LIBNUMA)

cmake/plugin.cmake

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ MACRO(MYSQL_ADD_PLUGIN)
4949
LIST(REMOVE_AT SOURCES 0)
5050
STRING(TOUPPER ${plugin} plugin)
5151
STRING(TOLOWER ${plugin} target)
52-
52+
5353
IF (ARG_MANDATORY)
5454
UNSET(PLUGIN_${plugin} CACHE)
5555
SET(PLUGIN_${plugin} "YES")
@@ -110,11 +110,11 @@ MACRO(MYSQL_ADD_PLUGIN)
110110
SET(with_var "WITH_${plugin}")
111111
ENDIF()
112112
UNSET(${with_var} CACHE)
113-
113+
114114
IF(NOT ARG_DEPENDENCIES)
115115
SET(ARG_DEPENDENCIES)
116116
ENDIF()
117-
117+
118118
IF(NOT ARG_MODULE_OUTPUT_NAME)
119119
IF(ARG_STORAGE_ENGINE)
120120
SET(ARG_MODULE_OUTPUT_NAME "ha_${target}")
@@ -256,6 +256,16 @@ MACRO(MYSQL_ADD_PLUGIN)
256256
INSTALL_MYSQL_TEST("${CMAKE_CURRENT_SOURCE_DIR}/mysql-test/" "plugin/${subpath}")
257257
ENDIF()
258258

259+
GET_TARGET_PROPERTY(plugin_type ${target} TYPE)
260+
STRING(REGEX REPLACE "_LIBRARY$" "" plugin_type ${plugin_type})
261+
STRING(REGEX REPLACE "^NO$" "" plugin_type ${plugin_type})
262+
IF(ARG_STORAGE_ENGINE)
263+
ADD_FEATURE_INFO(${plugin} PLUGIN_${plugin} "Storage Engine ${plugin_type}")
264+
ELSEIF(ARG_CLIENT)
265+
ADD_FEATURE_INFO(${plugin} PLUGIN_${plugin} "Client plugin ${plugin_type}")
266+
ELSE()
267+
ADD_FEATURE_INFO(${plugin} PLUGIN_${plugin} "Server plugin ${plugin_type}")
268+
ENDIF()
259269
ENDIF(NOT WITHOUT_SERVER OR ARG_CLIENT)
260270
ENDMACRO()
261271

cmake/readline.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ MACRO (MYSQL_CHECK_MULTIBYTE)
5252
ENDMACRO()
5353

5454
MACRO (FIND_CURSES)
55-
FIND_PACKAGE(Curses)
55+
FIND_PACKAGE(Curses REQUIRED)
5656
MARK_AS_ADVANCED(CURSES_CURSES_H_PATH CURSES_FORM_LIBRARY CURSES_HAVE_CURSES_H)
5757
IF(NOT CURSES_FOUND)
5858
SET(ERRORMSG "Curses library not found. Please install appropriate package,

cmake/ssl.cmake

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,7 @@ MACRO (MYSQL_CHECK_SSL)
117117
ENDIF()
118118
ENDIF()
119119
FIND_PACKAGE(OpenSSL)
120+
SET_PACKAGE_PROPERTIES(OpenSSL PROPERTIES TYPE RECOMMENDED)
120121
IF(OPENSSL_FOUND)
121122
SET(OPENSSL_LIBRARY ${OPENSSL_SSL_LIBRARY})
122123
INCLUDE(CheckSymbolExists)

cmake/systemd.cmake

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,5 +65,6 @@ MACRO(CHECK_SYSTEMD)
6565
ELSEIF(NOT WITH_SYSTEMD STREQUAL "no")
6666
MESSAGE(FATAL_ERROR "Invalid value for WITH_SYSTEMD. Must be 'yes', 'no', or 'auto'.")
6767
ENDIF()
68+
ADD_FEATURE_INFO(SYSTEMD LIBSYSTEMD "Systemd scripts and notification support")
6869
ENDIF()
6970
ENDMACRO()

cmake/wsrep.cmake

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,4 +64,7 @@ Then restart the build.
6464
ADD_SUBDIRECTORY(wsrep-lib)
6565
SET(BUILD_SHARED_LIBS ${old_BUILD_SHARED_LIBS})
6666
ENDIF()
67+
IF (NOT WIN32)
68+
ADD_FEATURE_INFO(WSREP WITH_WSREP "WSREP replication API (to use, e.g. Galera Replication library)")
69+
ENDIF()
6770
ENDIF(NOT WITHOUT_SERVER)

0 commit comments

Comments
 (0)