summaryrefslogtreecommitdiff
path: root/user/mariadb
diff options
context:
space:
mode:
Diffstat (limited to 'user/mariadb')
-rw-r--r--user/mariadb/APKBUILD71
-rw-r--r--user/mariadb/crc32-power.patch8
-rw-r--r--user/mariadb/gcc_builtins_ppc.h78
-rw-r--r--user/mariadb/libedit.patch57
-rw-r--r--user/mariadb/missing-header.patch12
-rw-r--r--user/mariadb/ppchax.patch4
-rw-r--r--user/mariadb/types.patch11
7 files changed, 51 insertions, 190 deletions
diff --git a/user/mariadb/APKBUILD b/user/mariadb/APKBUILD
index aca78406b..ee293e709 100644
--- a/user/mariadb/APKBUILD
+++ b/user/mariadb/APKBUILD
@@ -2,8 +2,8 @@
# Contributor: Dan Theisen <djt@hxx.in>
# Maintainer: Dan Theisen <djt@hxx.in>
pkgname=mariadb
-pkgver=10.4.7
-pkgrel=0
+pkgver=10.6.4
+pkgrel=1
pkgdesc="Open source database server"
url="https://mariadb.org/"
arch="all"
@@ -18,34 +18,45 @@ depends="$pkgname-common"
depends_dev="openssl-dev zlib-dev"
makedepends="$depends_dev bison cmake curl-dev libaio-dev libarchive-dev
libedit-dev libevent-dev libexecinfo-dev libxml2-dev ncurses-dev
- linux-pam-dev pcre-dev xz-dev"
+ linux-pam-dev pcre2-dev xz-dev"
_mytopdeps="perl perl-dbi perl-dbd-mysql perl-getopt-long perl-socket
perl-term-readkey"
subpackages="$pkgname-client $pkgname-server $pkgname-libs $pkgname-embedded
- $pkgname-common::noarch $pkgname-backup mytop::noarch $pkgname-openrc
+ $pkgname-common $pkgname-backup mytop::noarch $pkgname-openrc
$pkgname-doc $pkgname-dev"
-source="https://downloads.mariadb.org/interstitial/mariadb-$pkgver/source/mariadb-$pkgver.tar.gz
- crc32-power.patch
- gcc_builtins_ppc.h
- libedit.patch
+source="https://archive.mariadb.org/$pkgname-$pkgver/source/$pkgname-$pkgver.tar.gz
ppchax.patch
- types.patch
+ missing-header.patch
mariadb.initd
mariadb-server.limits
"
+# secfixes:
+# 10.6.4-r0:
+# - CVE-2020-13249
+# - CVE-2020-2814
+# - CVE-2020-2812
+# - CVE-2020-2760
+# - CVE-2020-2752
+# - CVE-2020-28912
+# - CVE-2020-14812
+# - CVE-2020-14789
+# - CVE-2020-14776
+# - CVE-2020-14765
+# - CVE-2021-27928
+# - CVE-2021-2166
+# - CVE-2021-2154
+# - CVE-2021-2389
+# - CVE-2021-2389
+# 10.4.12-r0:
+# - CVE-2020-7221
+
build() {
if [ "$CBUILD" != "$CHOST" ]; then
CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
fi
- case "$CTARGET_ARCH" in
- ppc)
- cp "$srcdir"/gcc_builtins_ppc.h "$builddir"/include/atomic/gcc_builtins.h
- ;;
- esac
-
- local _release="\
+ _release="\
-DBUILD_CONFIG=mysql_release \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_CXX_FLAGS=\"$CXXFLAGS -DNDEBUG\" \
@@ -57,7 +68,7 @@ build() {
# SKIP_TESTS skips client unittests that require a server to be present
# JEMALLOC is reported to not work on musl, TODO: test this
# ASAN also doesn't work on musl iirc
- local _deps="\
+ _deps="\
-DWITH_MARIABACKUP=ON \
-DWITH_NUMA=OFF \
-DWITH_LIBNUMA=OFF \
@@ -77,7 +88,7 @@ build() {
-DSKIP_TESTS=ON "
# AWS_KEY_MANAGEMENT makes this package non-redistributable, disable it
- local _plugins="\
+ _plugins="\
-DPLUGIN_ARCHIVE=YES \
-DPLUGIN_ARIA=YES \
-DPLUGIN_BLACKHOLE=YES \
@@ -90,7 +101,7 @@ build() {
-DPLUGIN_FEEDBACK=NO "
# Investigate turning more of these on
- local _innodb="\
+ _innodb="\
-DWITH_INNODB_LZMA=YES \
-DWITH_INNODB_BZIP2=NO \
-DWITH_INNODB_LZ4=NO \
@@ -98,7 +109,7 @@ build() {
-DWITH_INNODB_SNAPPY=NO "
# MongoDB is not libre software, disable it
- local _connect="\
+ _connect="\
-DCONNECT_WITH_MYSQL=YES \
-DCONNECT_WITH_MONGO=NO \
-DCONNECT_WITH_ODBC=NO \
@@ -106,12 +117,12 @@ build() {
-DCONNECT_WITH_LIBXML2=system "
# non-portable things, things that don't work on musl, BE, 32-bit etc
- local _evil="\
+ _evil="\
-DPLUGIN_MROONGA=NO \
-DPLUGIN_ROCKSDB=NO \
-DPLUGIN_TOKUDB=NO "
- local _system_libs="\
+ _system_libs="\
-DWITH_LIBARCHIVE=system \
-DWITH_PCRE=system \
-DWITH_SSL=system \
@@ -119,7 +130,7 @@ build() {
-DWITH_EXTERNAL_ZLIB=YES \
-DCONC_WITH_EXTERNAL_ZLIB=YES "
- local _system_paths="\
+ _system_paths="\
-DCMAKE_INSTALL_PREFIX=/usr \
-DSYSCONFDIR=/etc/mysql \
-DMYSQL_DATADIR=/var/lib/mariadb \
@@ -249,11 +260,6 @@ dev() {
provides="mysql-dev=$pkgver-r$pkgrel"
depends="$pkgname-libs"
_install_component Development
-
- # move symlinks for static libs from libs subpackage to dev
- LIB_PATH=${pkgdir}-libs/usr/lib
- mv $LIB_PATH/libmysqlclient.a ${subpkgdir}/usr/lib/
- mv $LIB_PATH/libmysqlclient_r.a ${subpkgdir}/usr/lib/
}
doc() {
@@ -263,11 +269,8 @@ doc() {
default_doc
}
-sha512sums="cb8b5adaef1970b9c8f04db08c18660f8b3df87f699aa93c1bee9497b887ddf50fcf3a2aebbe21a5fc9dfcbd118d0192d7421512522d98eaf30a014822c2f7ce mariadb-10.4.7.tar.gz
-03a4f60674cb45bcccb59971260c56f0f5f64eb79ad4078c485bc8112df2b9ee2b4eb08350530443b318440787b672b2947bc439783e813a32350f9179417cd0 crc32-power.patch
-15ae6d4564c5c8b8583502acd54bf0019e8a62ebcf87278015506e58848cb6996ff61ca055897f9192b8818808adeeac15b8f786065cfd071cc264ca1922f7e3 gcc_builtins_ppc.h
-41dc407cc16e7af5a8b9527489016a052a8bce85bd3d00f0d06b98b3fef16a693849d15a9a15136ee8148829fe4570d03df65dfb6fe9f0bccc447cab1bd666f4 libedit.patch
-0725c1c04ce01d6035d4fef5018709c8814228bf250503455c2aa7c972278fcb78b47e681a721cb42dc61508075e1485116d8c7ac924c584b4bf5ca6b27b6594 ppchax.patch
-8dda61a8e0bc3d1712de36bc53e39dc348bc5bc9e37de37b644977df6144f8ee588e55674466dc8d45624d0cad91cc1e3d15e3951214d6d4fe783465592b1a2e types.patch
+sha512sums="c216244ce126e6f8954303a76078dc12146e8ea941041edd215dc05201adda1d5158cd7f1c9831328f783aba4f884965ae288f33bbc43229bc6224a4f1079071 mariadb-10.6.4.tar.gz
+0cb265173923cb85517a1144cfa904dafe059c1f859e13b4415442cabbb414db5904f2dcee0e865914b0f9c181d1d61d220834cb187b14f8538a0d2552025a9d ppchax.patch
+6618ee5608b06941da08872ea7ea16149b72a0174b157f970c03a9a9110efe0704c72742e63181f8059244e89fe25d1b07f1c87fed72115d62f347f58fafccdd missing-header.patch
1a2b058aad5fd6d6964db58b663591299a5bf82e7ad21a105d53a3e7ad1c3674c737caf3ee12799cce947cf8ead1f3e789dd8afcfc769891f08208b3006f9654 mariadb.initd
d47324b34a87410eddb554f65199d145dfba9ae40407a62fb77df4e1ebf13087d15eb28e61e5e7cc9139eb42f093a0955136edae4020822652a1f0b4e219849e mariadb-server.limits"
diff --git a/user/mariadb/crc32-power.patch b/user/mariadb/crc32-power.patch
deleted file mode 100644
index aa269a599..000000000
--- a/user/mariadb/crc32-power.patch
+++ /dev/null
@@ -1,8 +0,0 @@
---- mariadb-10.4.6/cmake/crc32.cmake.old 2019-06-17 22:00:31.000000000 +0000
-+++ mariadb-10.4.6/cmake/crc32.cmake 2019-07-06 22:02:39.704198796 +0000
-@@ -1,4 +1,4 @@
--IF(CMAKE_SYSTEM_PROCESSOR MATCHES "ppc64")
-+IF(FALSE)
- SET(HAVE_CRC32_VPMSUM 1)
- SET(CRC32_LIBRARY crc32-vpmsum)
- ADD_SUBDIRECTORY(extra/crc32-vpmsum)
diff --git a/user/mariadb/gcc_builtins_ppc.h b/user/mariadb/gcc_builtins_ppc.h
deleted file mode 100644
index 8e492c58a..000000000
--- a/user/mariadb/gcc_builtins_ppc.h
+++ /dev/null
@@ -1,78 +0,0 @@
-#ifndef ATOMIC_GCC_BUILTINS_INCLUDED
-#define ATOMIC_GCC_BUILTINS_INCLUDED
-
-/* Copyright (c) 2017 MariaDB Foundation
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; version 2 of the License.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */
-
-
-#define MY_MEMORY_ORDER_RELAXED __ATOMIC_RELAXED
-#define MY_MEMORY_ORDER_CONSUME __ATOMIC_CONSUME
-#define MY_MEMORY_ORDER_ACQUIRE __ATOMIC_ACQUIRE
-#define MY_MEMORY_ORDER_RELEASE __ATOMIC_RELEASE
-#define MY_MEMORY_ORDER_ACQ_REL __ATOMIC_ACQ_REL
-#define MY_MEMORY_ORDER_SEQ_CST __ATOMIC_SEQ_CST
-
-#define my_atomic_store32_explicit(P, D, O) __atomic_store_4((P), (D), (O))
-#define my_atomic_store64_explicit(P, D, O) __atomic_store_8((P), (D), (O))
-#define my_atomic_storeptr_explicit(P, D, O) __atomic_store_4((P), (unsigned int)(D), (O))
-
-#define my_atomic_load32_explicit(P, O) __atomic_load_4((P), (O))
-#define my_atomic_load64_explicit(P, O) __atomic_load_8((P), (O))
-#define my_atomic_loadptr_explicit(P, O) __atomic_load_4((P), (O))
-
-#define my_atomic_fas32_explicit(P, D, O) __atomic_exchange_4((P), (D), (O))
-#define my_atomic_fas64_explicit(P, D, O) __atomic_exchange_8((P), (D), (O))
-#define my_atomic_fasptr_explicit(P, D, O) __atomic_exchange_4((P), (D), (O))
-
-#define my_atomic_add32_explicit(P, A, O) __atomic_fetch_add_4((P), (A), (O))
-#define my_atomic_add64_explicit(P, A, O) __atomic_fetch_add_8((P), (A), (O))
-
-#define my_atomic_cas32_weak_explicit(P, E, D, S, F) \
- __atomic_compare_exchange_4((P), (E), (D), 1, (S), (F))
-#define my_atomic_cas64_weak_explicit(P, E, D, S, F) \
- __atomic_compare_exchange_8((P), (E), (D), 1, (S), (F))
-#define my_atomic_casptr_weak_explicit(P, E, D, S, F) \
- __atomic_compare_exchange_4((P), (E), (D), 1, (S), (F))
-
-#define my_atomic_cas32_strong_explicit(P, E, D, S, F) \
- __atomic_compare_exchange_4((P), (E), (D), 0, (S), (F))
-#define my_atomic_cas64_strong_explicit(P, E, D, S, F) \
- __atomic_compare_exchange_8((P), (E), (D), 0, (S), (F))
-#define my_atomic_casptr_strong_explicit(P, E, D, S, F) \
- __atomic_compare_exchange_4((P), (E), (D), 0, (S), (F))
-
-#define my_atomic_store32(P, D) __atomic_store_4((P), (D), __ATOMIC_SEQ_CST)
-#define my_atomic_store64(P, D) __atomic_store_8((P), (D), __ATOMIC_SEQ_CST)
-#define my_atomic_storeptr(P, D) __atomic_store_4((P), (D), __ATOMIC_SEQ_CST)
-
-#define my_atomic_load32(P) __atomic_load_4((P), __ATOMIC_SEQ_CST)
-#define my_atomic_load64(P) __atomic_load_8((P), __ATOMIC_SEQ_CST)
-#define my_atomic_loadptr(P) __atomic_load_4((P), __ATOMIC_SEQ_CST)
-
-#define my_atomic_fas32(P, D) __atomic_exchange_4((P), (D), __ATOMIC_SEQ_CST)
-#define my_atomic_fas64(P, D) __atomic_exchange_8((P), (D), __ATOMIC_SEQ_CST)
-#define my_atomic_fasptr(P, D) __atomic_exchange_4((P), (D), __ATOMIC_SEQ_CST)
-
-#define my_atomic_add32(P, A) __atomic_fetch_add_4((P), (A), __ATOMIC_SEQ_CST)
-#define my_atomic_add64(P, A) __atomic_fetch_add_8((P), (A), __ATOMIC_SEQ_CST)
-
-#define my_atomic_cas32(P, E, D) \
- __atomic_compare_exchange_4((P), (E), (D), 0, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST)
-#define my_atomic_cas64(P, E, D) \
- __atomic_compare_exchange_8((P), (E), (D), 0, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST)
-#define my_atomic_casptr(P, E, D) \
- __atomic_compare_exchange_4((P), (E), (D), 0, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST)
-
-#endif /* ATOMIC_GCC_BUILTINS_INCLUDED */
diff --git a/user/mariadb/libedit.patch b/user/mariadb/libedit.patch
deleted file mode 100644
index 14dc9db49..000000000
--- a/user/mariadb/libedit.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-From d9342e88289fa588ea2f1a094dbfc32f0693e23d Mon Sep 17 00:00:00 2001
-From: Sebastian Kemper <sebastian_ml@gmx.net>
-Date: Tue, 9 Apr 2019 22:28:10 +0200
-Subject: [PATCH] cmake: support new libedit interface
-
-libedit changed it's interface a while ago. MariaDB's cmake file doesn't
-recognize the new interface, the compile test fails:
-
-/mariadb-10.2.19/CMakeFiles/CMakeTmp/src.cxx: In function 'int main(int, char**)':
-/mariadb-10.2.19/CMakeFiles/CMakeTmp/src.cxx:6:47: error: invalid conversion from 'char*' to 'int' [-fpermissive]
- int res= (*rl_completion_entry_function)(0,0);
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
-
-Fix this by adding a detection for the new interface as well.
-
-Run-tested on a MIPS machine.
-
-Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
----
- cmake/readline.cmake | 17 +++++++++++++++--
- 1 file changed, 15 insertions(+), 2 deletions(-)
-
-diff --git a/cmake/readline.cmake b/cmake/readline.cmake
-index 12a8980b6a90..a2b2cc4c241f 100644
---- a/cmake/readline.cmake
-+++ b/cmake/readline.cmake
-@@ -160,8 +160,20 @@ MACRO (MYSQL_FIND_SYSTEM_LIBEDIT)
- int res= (*rl_completion_entry_function)(0,0);
- completion_matches(0,0);
- }"
-- LIBEDIT_INTERFACE)
-- SET(USE_LIBEDIT_INTERFACE ${LIBEDIT_INTERFACE})
-+ LIBEDIT_HAVE_COMPLETION_INT)
-+
-+ CHECK_CXX_SOURCE_COMPILES("
-+ #include <stdio.h>
-+ #include <readline.h>
-+ int main(int argc, char **argv)
-+ {
-+ char res= *(*rl_completion_entry_function)(0,0);
-+ completion_matches(0,0);
-+ }"
-+ LIBEDIT_HAVE_COMPLETION_CHAR)
-+ IF(LIBEDIT_HAVE_COMPLETION_INT OR LIBEDIT_HAVE_COMPLETION_CHAR)
-+ SET(USE_LIBEDIT_INTERFACE 1)
-+ ENDIF()
- ENDIF()
- ENDMACRO()
-
-@@ -187,6 +199,7 @@ MACRO (MYSQL_CHECK_READLINE)
- IF(USE_LIBEDIT_INTERFACE)
- SET(MY_READLINE_INCLUDE_DIR ${LIBEDIT_INCLUDE_DIR})
- SET(MY_READLINE_LIBRARY ${LIBEDIT_LIBRARY} ${CURSES_LIBRARY})
-+ SET(USE_NEW_READLINE_INTERFACE ${LIBEDIT_HAVE_COMPLETION_CHAR})
- ELSE()
- MYSQL_USE_BUNDLED_READLINE()
- ENDIF()
diff --git a/user/mariadb/missing-header.patch b/user/mariadb/missing-header.patch
new file mode 100644
index 000000000..bdb89daa3
--- /dev/null
+++ b/user/mariadb/missing-header.patch
@@ -0,0 +1,12 @@
+Needed for compilation on GCC 13.
+
+--- mariadb-10.6.4/tpool/aio_linux.cc.old 2021-08-03 09:48:41.000000000 -0500
++++ mariadb-10.6.4/tpool/aio_linux.cc 2024-05-28 18:55:26.914066003 -0500
+@@ -18,6 +18,7 @@
+
+ # include <thread>
+ # include <atomic>
++# include <cstdio>
+ # include <libaio.h>
+ # include <sys/syscall.h>
+
diff --git a/user/mariadb/ppchax.patch b/user/mariadb/ppchax.patch
index 26ffb5189..4ce0d304b 100644
--- a/user/mariadb/ppchax.patch
+++ b/user/mariadb/ppchax.patch
@@ -1,6 +1,6 @@
--- mariadb-10.4.6/configure.cmake.old 2019-06-17 22:00:31.000000000 +0000
+++ mariadb-10.4.6/configure.cmake 2019-07-06 23:21:57.705655766 +0000
-@@ -922,6 +922,10 @@
+@@ -867,6 +867,10 @@
return (int)__atomic_load_n(ptr, __ATOMIC_SEQ_CST);
}"
HAVE_GCC_C11_ATOMICS)
@@ -13,7 +13,7 @@
SET(HAVE_valgrind 1)
--- mariadb-10.4.6/mysys/CMakeLists.txt.old 2019-06-17 22:00:32.000000000 +0000
+++ mariadb-10.4.6/mysys/CMakeLists.txt 2019-07-07 00:03:56.956394100 +0000
-@@ -91,6 +91,10 @@
+@@ -92,6 +92,10 @@
TARGET_LINK_LIBRARIES(mysys pthread)
ENDIF()
diff --git a/user/mariadb/types.patch b/user/mariadb/types.patch
deleted file mode 100644
index 7f2917b47..000000000
--- a/user/mariadb/types.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- mariadb-10.4.7/plugin/auth_pam/testing/pam_mariadb_mtr.c.old 2019-07-30 11:32:16.000000000 +0000
-+++ mariadb-10.4.7/plugin/auth_pam/testing/pam_mariadb_mtr.c 2019-08-17 21:37:59.264353123 +0000
-@@ -56,7 +56,7 @@
- if (strcmp(r1, "crash pam module") == 0 && atoi(r2) == 616)
- abort();
-
-- if (strlen(r1) == (uint)atoi(r2) % 100)
-+ if (strlen(r1) == (unsigned int)atoi(r2) % 100)
- retval = PAM_SUCCESS;
- else
- retval = PAM_AUTH_ERR;