diff options
author | Michael Okoko <okokomichaels@outlook.com> | 2021-03-26 20:48:59 +0100 |
---|---|---|
committer | Daniel Black <daniel@mariadb.org> | 2021-03-27 08:40:04 +1100 |
commit | 48141f3c1787de941d969ad1e6675611b2b650c2 (patch) | |
tree | bbe16ae19778a3ebf56d683ebf49c88845d45471 | |
parent | 36a05268e7059163752ab91d1cbe1180dbd90b93 (diff) | |
download | mariadb-git-48141f3c1787de941d969ad1e6675611b2b650c2.tar.gz |
Replace mallinfo with mallinfo2 on supported systems
`mallinfo` is deprecated since glibc 2.33 and has been replaced by mallinfo2.
The deprecation causes building the server to fail if glibc version is > 2.33.
Check if mallinfo2 exist on the system and use it instead.
-rw-r--r-- | config.h.cmake | 1 | ||||
-rw-r--r-- | configure.cmake | 1 | ||||
-rw-r--r-- | sql/sql_test.cc | 8 |
3 files changed, 8 insertions, 2 deletions
diff --git a/config.h.cmake b/config.h.cmake index 0e19dd44694..c74592b4a65 100644 --- a/config.h.cmake +++ b/config.h.cmake @@ -177,6 +177,7 @@ #cmakedefine HAVE_DECL_MADVISE 1 #cmakedefine HAVE_DECL_MHA_MAPSIZE_VA 1 #cmakedefine HAVE_MALLINFO 1 +#cmakedefine HAVE_MALLINFO2 1 #cmakedefine HAVE_MEMCPY 1 #cmakedefine HAVE_MEMMOVE 1 #cmakedefine HAVE_MKSTEMP 1 diff --git a/configure.cmake b/configure.cmake index 58e1111bfc7..1aa0827a503 100644 --- a/configure.cmake +++ b/configure.cmake @@ -358,6 +358,7 @@ CHECK_FUNCTION_EXISTS (localtime_r HAVE_LOCALTIME_R) CHECK_FUNCTION_EXISTS (lstat HAVE_LSTAT) CHECK_FUNCTION_EXISTS (madvise HAVE_MADVISE) CHECK_FUNCTION_EXISTS (mallinfo HAVE_MALLINFO) +CHECK_FUNCTION_EXISTS (mallinfo2 HAVE_MALLINFO2) CHECK_FUNCTION_EXISTS (memcpy HAVE_MEMCPY) CHECK_FUNCTION_EXISTS (memmove HAVE_MEMMOVE) CHECK_FUNCTION_EXISTS (mkstemp HAVE_MKSTEMP) diff --git a/sql/sql_test.cc b/sql/sql_test.cc index c0e62227665..d877eb21588 100644 --- a/sql/sql_test.cc +++ b/sql/sql_test.cc @@ -616,8 +616,12 @@ Next alarm time: %lu\n", (ulong)alarm_info.next_alarm_time); #endif display_table_locks(); -#ifdef HAVE_MALLINFO - struct mallinfo info= mallinfo(); +#if defined(HAVE_MALLINFO2) + struct mallinfo2 info = mallinfo2(); +#elif defined(HAVE_MALLINFO) + struct mallinfo info= mallinfo(); +#endif +#if defined(HAVE_MALLINFO) || defined(HAVE_MALLINFO2) char llbuff[10][22]; printf("\nMemory status:\n\ Non-mmapped space allocated from system: %s\n\ |