#
# Copyright (C) 2018 Sebastian Kemper <sebastian_ml@gmx.net>
+# Copyright (C) 2021 Michal Hrusecky <michal@hrusecky.net>
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
include $(TOPDIR)/rules.mk
PKG_NAME:=mariadb
-PKG_VERSION:=10.4.18
+PKG_VERSION:=10.6.4
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
-PKG_SOURCE_URL := \
- https://mirror.netcologne.de/mariadb/$(PKG_NAME)-$(PKG_VERSION)/source \
- https://mirror.lstn.net/mariadb/$(PKG_NAME)-$(PKG_VERSION)/source \
- https://ftp.yz.yamagata-u.ac.jp/pub/dbms/mariadb/$(PKG_NAME)-$(PKG_VERSION)/source \
- https://downloads.mariadb.org/interstitial/$(PKG_NAME)-$(PKG_VERSION)/source
+PKG_SOURCE_URL := https://archive.mariadb.org/$(PKG_NAME)-$(PKG_VERSION)/source
-PKG_HASH:=330d9e8273002fc92f0f3f3f9b08157a3cab1265a0f114adeb6235e4283a0d3e
+PKG_HASH:=75bf9b147a95d38160d01a73b098d50a1960563b46d16a235971fff64d99643c
PKG_MAINTAINER:=Michal Hrusecky <Michal@Hrusecky.net>
-PKG_LICENSE:=GPL-2.0
+PKG_LICENSE:=GPL-2.0-only
PKG_LICENSE_FILES:=COPYING THIRDPARTY
PKG_CPE_ID:=cpe:/a:mariadb:mariadb
$(MARIADB_COMMON_DEPENDS) \
+libaio \
+liblzma \
- +libpcre \
+ +libpcre2 \
+resolveip
TITLE:=MariaDB database server base
USERID:=mariadb=376:mariadb=376
$(INSTALL_DATA) \
$(PKG_INSTALL_DIR)/lib/security/pam_user_map.so \
$$(1)/lib/security
-endif
-ifeq ($(1),ha_spider)
- $(INSTALL_DIR) $$(1)$(SHARE_DIR)
- $(INSTALL_DATA) $(PKG_INSTALL_DIR)$(SHARE_DIR)/install_spider.sql \
- $$(1)$(SHARE_DIR)
endif
endef
$$(eval $$(call BuildPackage,mariadb-server-plugin-$(subst _,-,$(1))))
--- a/scripts/mysql_install_db.sh
+++ b/scripts/mysql_install_db.sh
-@@ -418,7 +418,7 @@ fi
+@@ -419,7 +419,7 @@ fi
# Try to determine the hostname
+++ /dev/null
-From: =?utf-8?q?Ond=C5=99ej_Sur=C3=BD?= <ondrej@debian.org>
-Date: Wed, 22 Nov 2017 06:05:45 +0000
-Subject: Revert to using system pcre library
-
----
- cmake/pcre.cmake | 16 ++--------------
- 1 file changed, 2 insertions(+), 14 deletions(-)
-
---- a/cmake/pcre.cmake
-+++ b/cmake/pcre.cmake
-@@ -1,23 +1,11 @@
--INCLUDE (CheckCSourceRuns)
--
- SET(WITH_PCRE "auto" CACHE STRING
- "Which pcre to use (possible values are 'bundled', 'system', or 'auto')")
-
- MACRO (CHECK_PCRE)
- IF(WITH_PCRE STREQUAL "system" OR WITH_PCRE STREQUAL "auto")
-- CHECK_LIBRARY_EXISTS(pcre pcre_stack_guard "" HAVE_PCRE_STACK_GUARD)
-- IF(NOT CMAKE_CROSSCOMPILING)
-- SET(CMAKE_REQUIRED_LIBRARIES "pcre")
-- CHECK_C_SOURCE_RUNS("
-- #include <pcre.h>
-- int main() {
-- return -pcre_exec(NULL, NULL, NULL, -999, -999, 0, NULL, 0) < 256;
-- }" PCRE_STACK_SIZE_OK)
-- SET(CMAKE_REQUIRED_LIBRARIES)
-- ENDIF()
-+ CHECK_LIBRARY_EXISTS(pcre pcre_stack_guard "" HAVE_PCRE)
- ENDIF()
-- IF(NOT HAVE_PCRE_STACK_GUARD OR NOT PCRE_STACK_SIZE_OK OR
-- WITH_PCRE STREQUAL "bundled")
-+ IF(NOT HAVE_PCRE OR WITH_PCRE STREQUAL "bundled")
- IF (WITH_PCRE STREQUAL "system")
- MESSAGE(FATAL_ERROR "system pcre is not found or unusable")
- ENDIF()
--- a/configure.cmake
+++ b/configure.cmake
-@@ -863,7 +863,25 @@ int main()
+@@ -866,7 +866,25 @@ int main()
long long int *ptr= &var;
return (int)__atomic_load_n(ptr, __ATOMIC_SEQ_CST);
}"
SET(HAVE_valgrind 1)
--- a/mysys/CMakeLists.txt
+++ b/mysys/CMakeLists.txt
-@@ -78,6 +78,10 @@ TARGET_LINK_LIBRARIES(mysys dbug strings
- ${LIBNSL} ${LIBM} ${LIBRT} ${CMAKE_DL_LIBS} ${LIBSOCKET} ${LIBEXECINFO} ${CRC32_LIBRARY})
+@@ -168,6 +168,10 @@ TARGET_LINK_LIBRARIES(mysys dbug strings
+ ${LIBNSL} ${LIBM} ${LIBRT} ${CMAKE_DL_LIBS} ${LIBSOCKET} ${LIBEXECINFO})
DTRACE_INSTRUMENT(mysys)
+IF (HAVE_GCC_C11_ATOMICS_WITH_LIBATOMIC)
ENDIF(HAVE_BFD_H)
--- a/sql/CMakeLists.txt
+++ b/sql/CMakeLists.txt
-@@ -191,6 +191,10 @@ ELSE()
- SET(MYSQLD_SOURCE main.cc ${DTRACE_PROBES_ALL})
+@@ -324,6 +324,10 @@ IF(WITH_MYSQLD_LDFLAGS)
+ "${MYSQLD_LINK_FLAGS} ${WITH_MYSQLD_LDFLAGS}")
ENDIF()
+IF (HAVE_GCC_C11_ATOMICS_WITH_LIBATOMIC)
+ENDIF()
+
- IF(MSVC AND NOT WITHOUT_DYNAMIC_PLUGINS)
+ FIND_PACKAGE(BISON 2.0)
/* High priority */
#define HMT_high() asm volatile("or 3,3,3")
#else
-@@ -80,7 +79,7 @@ static inline void MY_RELAX_CPU(void)
+@@ -81,7 +80,7 @@ static inline void MY_RELAX_CPU(void)
__asm__ __volatile__ ("pause");
#endif
#elif defined(_ARCH_PWR8)
#elif defined __GNUC__ && (defined __arm__ || defined __aarch64__)
/* Mainly, prevent the compiler from optimizing away delay loops */
__asm__ __volatile__ ("":::"memory");
---- a/storage/tokudb/PerconaFT/portability/toku_time.h
-+++ b/storage/tokudb/PerconaFT/portability/toku_time.h
-@@ -124,7 +124,7 @@ static inline tokutime_t toku_time_now(v
- __asm __volatile__ ("mrs %[rt], cntvct_el0" : [rt] "=r" (result));
- return result;
- #elif defined(__powerpc__)
-- return __ppc_get_timebase();
-+ return __builtin_ppc_get_timebase();
- #else
- #error No timer implementation for this platform
- #endif
+ fi
pamtooldir=$plugindir
# relative from where the script was run for a relocatable install
- elif test -n "$dirname0" -a -x "$rel_mysqld" -a ! "$rel_mysqld" -ef "@sbindir@/mysqld"
-@@ -477,7 +485,9 @@ do
+ elif test -n "$dirname0" -a -x "$rel_mysqld" -a ! "$rel_mysqld" -ef "@sbindir@/mariadbd"
+@@ -478,7 +486,9 @@ do
fi
done
then
if test -z "$srcdir" -a "$in_rpm" -eq 0
then
-@@ -498,6 +508,10 @@ then
+@@ -499,6 +509,10 @@ then
echo
fi
fi
--- a/scripts/mysqld_safe.sh
+++ b/scripts/mysqld_safe.sh
-@@ -244,7 +244,7 @@ wsrep_recover_position() {
+@@ -246,7 +246,7 @@ wsrep_recover_position() {
return 1
fi
local wr_options="--disable-log-error --pid-file='$wr_pidfile'"
-@@ -664,7 +664,7 @@ then
+@@ -667,7 +667,7 @@ then
* ) err_log="$DATADIR/$err_log" ;;
esac
else
fi
fi
-@@ -743,7 +743,7 @@ fi
+@@ -746,7 +746,7 @@ fi
if test -z "$pid_file"
then
--- a/support-files/CMakeLists.txt
+++ b/support-files/CMakeLists.txt
-@@ -61,7 +61,7 @@ IF(UNIX)
+@@ -61,7 +61,7 @@ IF(UNIX AND NOT WITHOUT_SERVER)
INSTALL(FILES magic DESTINATION ${inst_location} COMPONENT SupportFiles)
INSTALL(DIRECTORY policy DESTINATION ${inst_location} COMPONENT SupportFiles)
FIND_PROGRAM(CHECKMODULE checkmodule)
+++ /dev/null
---- a/libmariadb/cmake/ConnectorName.cmake
-+++ b/libmariadb/cmake/ConnectorName.cmake
-@@ -22,7 +22,7 @@ IF(CMAKE_SYSTEM_NAME MATCHES "Windows")
- SET(MACHINE_NAME "x64")
- ELSE()
- SET(MACHINE_NAME "32")
-- END()
-+ ENDIF()
- ENDIF()
-
- SET(product_name "mysql-connector-c-${CPACK_PACKAGE_VERSION}-${PLATFORM_NAME}${CONCAT_SIGN}${MACHINE_NAME}")