summaryrefslogtreecommitdiff
path: root/dev-db/mysql
diff options
context:
space:
mode:
authorAlfred Wingate <parona@protonmail.com>2025-01-10 02:23:30 +0200
committerSam James <sam@gentoo.org>2025-01-10 04:36:28 +0000
commitaec0de90883c8cbc591cd1345dd01d9b12685eb8 (patch)
tree354bc17c75a72a7e4125159751ed1989ee5a0a43 /dev-db/mysql
parent8f3baaa744c47de00d8aba54aa36846bc9174ac5 (diff)
downloadgentoo-aec0de90883c8cbc591cd1345dd01d9b12685eb8.tar.gz
gentoo-aec0de90883c8cbc591cd1345dd01d9b12685eb8.tar.bz2
gentoo-aec0de90883c8cbc591cd1345dd01d9b12685eb8.zip
dev-db/mysql: backport boost fix for ppc
Closes: https://bugs.gentoo.org/947784 Signed-off-by: Alfred Wingate <parona@protonmail.com> Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'dev-db/mysql')
-rw-r--r--dev-db/mysql/files/mysql-8.0.37-fix-bundled-boost.patch22
-rw-r--r--dev-db/mysql/mysql-8.0.37.ebuild2
-rw-r--r--dev-db/mysql/mysql-8.0.40.ebuild2
3 files changed, 26 insertions, 0 deletions
diff --git a/dev-db/mysql/files/mysql-8.0.37-fix-bundled-boost.patch b/dev-db/mysql/files/mysql-8.0.37-fix-bundled-boost.patch
new file mode 100644
index 000000000000..58cf72f778fa
--- /dev/null
+++ b/dev-db/mysql/files/mysql-8.0.37-fix-bundled-boost.patch
@@ -0,0 +1,22 @@
+https://bugs.gentoo.org/947784
+https://github.com/boostorg/multiprecision/issues/419
+https://github.com/boostorg/multiprecision/commit/d1343f28dcbe25b100b082b34775bd92ead4602c
+
+The old version of Boost that MySQL vendors tries to use x86 intrinsics
+on PowerPC. Backport this patch for it to not do that.
+
+--- a/boost/boost_1_77_0/boost/multiprecision/cpp_int/intel_intrinsics.hpp
++++ b/boost/boost_1_77_0/boost/multiprecision/cpp_int/intel_intrinsics.hpp
+@@ -19,7 +19,11 @@
+ // If this is GCC/clang, then check that the actual intrinsic exists:
+ //
+ #if defined(__has_builtin) && defined(__GNUC__)
+-#if !__has_builtin(__builtin_ia32_addcarryx_u64) && defined(BOOST_MP_HAS_IMMINTRIN_H) && !(defined(BOOST_GCC) && (__GNUC__ >= 9))
++#if !__has_builtin(__builtin_ia32_addcarryx_u64) && defined(BOOST_MP_HAS_IMMINTRIN_H) \
++ && !(defined(BOOST_GCC) && (__GNUC__ >= 9) \
++ && (defined(__amd64__) || defined(__amd64) || defined(__x86_64__) || defined(__x86_64)\
++ || defined(i386) || defined(__i386) || defined(__i386__) || defined(_M_AMD64) \
++ || defined(_M_X64) || defined(__amd64__) || defined(_M_X64)))
+ #undef BOOST_MP_HAS_IMMINTRIN_H
+ #endif
+ #elif defined(BOOST_MP_HAS_IMMINTRIN_H) && defined(__GNUC__) && !(defined(BOOST_GCC) && (__GNUC__ >= 9))
diff --git a/dev-db/mysql/mysql-8.0.37.ebuild b/dev-db/mysql/mysql-8.0.37.ebuild
index 2d40fbcfa289..8aa043a80c1c 100644
--- a/dev-db/mysql/mysql-8.0.37.ebuild
+++ b/dev-db/mysql/mysql-8.0.37.ebuild
@@ -94,6 +94,8 @@ PATCHES=(
"${WORKDIR}"/mysql-patches
# Needed due to bundled boost-1.77, this fix is included in boost-1.81
"${FILESDIR}"/mysql-8.0.36-boost-clang-fix.patch
+ # Needed due to bundled boost-1.77, this fix is included in boost-1.79
+ "${FILESDIR}"/mysql-8.0.37-fix-bundled-boost.patch
# Needed due to bundles abseil-cpp, this fix is included in abseil-cpp-20240722
"${FILESDIR}"/mysql-8.0.37-fix-bundled-abseil.patch
)
diff --git a/dev-db/mysql/mysql-8.0.40.ebuild b/dev-db/mysql/mysql-8.0.40.ebuild
index 793e63e238df..dc17161500a0 100644
--- a/dev-db/mysql/mysql-8.0.40.ebuild
+++ b/dev-db/mysql/mysql-8.0.40.ebuild
@@ -95,6 +95,8 @@ PATCHES=(
"${WORKDIR}"/mysql-patches
# Needed due to bundled boost-1.77, this fix is included in boost-1.81
"${FILESDIR}"/mysql-8.0.36-boost-clang-fix.patch
+ # Needed due to bundled boost-1.77, this fix is included in boost-1.79
+ "${FILESDIR}"/mysql-8.0.37-fix-bundled-boost.patch
# Needed due to bundles abseil-cpp, this fix is included in abseil-cpp-20240722
"${FILESDIR}"/mysql-8.0.37-fix-bundled-abseil.patch
# Needed due to bundles abseil-cpp, this fix is in no release as of 2025-01-09