summaryrefslogtreecommitdiff
path: root/extra/mariadb
diff options
context:
space:
mode:
Diffstat (limited to 'extra/mariadb')
-rw-r--r--extra/mariadb/PKGBUILD26
-rw-r--r--extra/mariadb/mariadb-10.1.32-atomic.patch79
-rw-r--r--extra/mariadb/mariadb-10.6.5-atomic.patch28
3 files changed, 35 insertions, 98 deletions
diff --git a/extra/mariadb/PKGBUILD b/extra/mariadb/PKGBUILD
index 3d843259..609d3fe7 100644
--- a/extra/mariadb/PKGBUILD
+++ b/extra/mariadb/PKGBUILD
@@ -1,24 +1,12 @@
-# add -latomic where needed
-# e.g.TARGET_LINK_LIBRARIES(mariabackup sql crc atomic)
-source+=('mariadb-10.1.32-atomic.patch')
-sha256sums+=('194e43ca5468d4f4634f45eed6aaf08865c2d351fcc500696d4dc578fe94902e')
-eval "$(
- declare -f prepare | \
- sed '
- /patch -Np1.*openssl-1-1-0.patch/ a \ patch -Np1 -i "${srcdir}/mariadb-10.1.32-atomic.patch"
- '
-)"
-
-# 486-specific
-if [ "${CARCH}" = "i486" ]; then
- # no java
+# add -latomic where needed (i486)
+# patch mainly from VoidLinux, applying on i486 only, as it seems to fail on i686 and pentium4
+if [ "$CARCH" = 'i486' ]; then
+ source+=('mariadb-10.6.5-atomic.patch')
+ sha256sums+=('99ded7e667d8f90d263a8c3d21dc819c404f973a3eaf116620a5d2975bfaaec7')
eval "$(
- declare -f build | \
+ declare -f prepare | \
sed '
- s/cmake /cmake -DCONNECT_WITH_JDBC=0 /
+ /patch -Np1.*0001-arch-specific.patch/ a \ patch -Np1 -i "${srcdir}/mariadb-10.6.5-atomic.patch"
'
)"
fi
-
-# temporary checksum workaround
-sha256sums[0]='40ab19aeb8de141fdc188cf2251213c9e7351bee4d0cd29db704fae68d1068cf'
diff --git a/extra/mariadb/mariadb-10.1.32-atomic.patch b/extra/mariadb/mariadb-10.1.32-atomic.patch
deleted file mode 100644
index 42baf27c..00000000
--- a/extra/mariadb/mariadb-10.1.32-atomic.patch
+++ /dev/null
@@ -1,79 +0,0 @@
-diff -rauN mariadb-10.1.32/extra/mariabackup/CMakeLists.txt mariadb-10.1.32-atomic-patch/extra/mariabackup/CMakeLists.txt
---- mariadb-10.1.32/extra/mariabackup/CMakeLists.txt 2018-03-26 16:18:02.000000000 +0200
-+++ mariadb-10.1.32-atomic-patch/extra/mariabackup/CMakeLists.txt 2018-03-28 20:44:20.926068353 +0200
-@@ -86,7 +86,7 @@
- ADD_SUBDIRECTORY(crc)
-
-
--TARGET_LINK_LIBRARIES(mariabackup sql crc)
-+TARGET_LINK_LIBRARIES(mariabackup sql crc atomic)
-
- IF(NOT HAVE_SYSTEM_REGEX)
- TARGET_LINK_LIBRARIES(mariabackup pcreposix)
-diff -rauN mariadb-10.1.32/libmysqld/CMakeLists.txt mariadb-10.1.32-atomic-patch/libmysqld/CMakeLists.txt
---- mariadb-10.1.32/libmysqld/CMakeLists.txt 2018-03-26 16:18:02.000000000 +0200
-+++ mariadb-10.1.32-atomic-patch/libmysqld/CMakeLists.txt 2018-03-28 20:48:26.807077308 +0200
-@@ -184,7 +184,9 @@
- SET_TARGET_PROPERTIES(libmysqld PROPERTIES CLEAN_DIRECT_OUTPUT 1)
- SET_TARGET_PROPERTIES(mysqlserver PROPERTIES CLEAN_DIRECT_OUTPUT 1)
- IF(LIBMYSQLD_SO_EXTRA_LIBS)
-- TARGET_LINK_LIBRARIES(libmysqld ${LIBMYSQLD_SO_EXTRA_LIBS})
-+ TARGET_LINK_LIBRARIES(libmysqld ${LIBMYSQLD_SO_EXTRA_LIBS} atomic)
-+ ELSE()
-+ TARGET_LINK_LIBRARIES(libmysqld atomic)
- ENDIF()
- ENDIF()
- ENDIF()
-diff -rauN mariadb-10.1.32/libmysqld/examples/CMakeLists.txt mariadb-10.1.32-atomic-patch/libmysqld/examples/CMakeLists.txt
---- mariadb-10.1.32/libmysqld/examples/CMakeLists.txt 2018-03-26 16:18:02.000000000 +0200
-+++ mariadb-10.1.32-atomic-patch/libmysqld/examples/CMakeLists.txt 2018-03-28 20:49:49.911092297 +0200
-@@ -27,14 +27,14 @@
- MYSQL_ADD_EXECUTABLE(mysql_embedded ../../client/completion_hash.cc
- ../../client/mysql.cc ../../client/readline.cc
- COMPONENT Client)
--TARGET_LINK_LIBRARIES(mysql_embedded mysqlserver)
-+TARGET_LINK_LIBRARIES(mysql_embedded mysqlserver atomic)
- IF(UNIX)
- TARGET_LINK_LIBRARIES(mysql_embedded ${MY_READLINE_LIBRARY})
- ENDIF(UNIX)
-
- MYSQL_ADD_EXECUTABLE(mysqltest_embedded ../../client/mysqltest.cc
- COMPONENT Test)
--TARGET_LINK_LIBRARIES(mysqltest_embedded mysqlserver pcre pcreposix)
-+TARGET_LINK_LIBRARIES(mysqltest_embedded mysqlserver pcre pcreposix atomic)
-
- IF(CMAKE_GENERATOR MATCHES "Xcode")
- # It does not seem possible to tell Xcode the resulting target might need
-@@ -53,7 +53,7 @@
- COMPONENT Test)
- SET_TARGET_PROPERTIES(mysql_client_test_embedded PROPERTIES HAS_CXX TRUE)
- ENDIF()
--TARGET_LINK_LIBRARIES(mysql_client_test_embedded mysqlserver)
-+TARGET_LINK_LIBRARIES(mysql_client_test_embedded mysqlserver atomic)
-
- IF(UNIX)
- SET_TARGET_PROPERTIES(mysql_embedded PROPERTIES ENABLE_EXPORTS TRUE)
-diff -rauN mariadb-10.1.32/sql/CMakeLists.txt mariadb-10.1.32-atomic-patch/sql/CMakeLists.txt
---- mariadb-10.1.32/sql/CMakeLists.txt 2018-03-26 16:18:03.000000000 +0200
-+++ mariadb-10.1.32-atomic-patch/sql/CMakeLists.txt 2018-03-28 20:47:43.783551473 +0200
-@@ -276,7 +276,7 @@
- ENDIF()
- ENDIF(NOT WITHOUT_DYNAMIC_PLUGINS)
-
--TARGET_LINK_LIBRARIES(mysqld sql)
-+TARGET_LINK_LIBRARIES(mysqld sql atomic)
-
- # Provide plugins with minimal set of libraries
- SET(INTERFACE_LIBS ${LIBRT})
-diff -rauN mariadb-10.1.32/unittest/sql/CMakeLists.txt mariadb-10.1.32-atomic-patch/unittest/sql/CMakeLists.txt
---- mariadb-10.1.32/unittest/sql/CMakeLists.txt 2018-03-26 16:18:05.000000000 +0200
-+++ mariadb-10.1.32-atomic-patch/unittest/sql/CMakeLists.txt 2018-03-28 20:45:33.566958289 +0200
-@@ -27,7 +27,7 @@
- ADD_EXECUTABLE(explain_filename-t explain_filename-t.cc)
- ENDIF()
-
--TARGET_LINK_LIBRARIES(explain_filename-t sql mytap)
-+TARGET_LINK_LIBRARIES(explain_filename-t sql mytap atomic)
- MY_ADD_TEST(explain_filename)
-
- ADD_EXECUTABLE(mf_iocache-t mf_iocache-t.cc ../../sql/mf_iocache_encr.cc)
diff --git a/extra/mariadb/mariadb-10.6.5-atomic.patch b/extra/mariadb/mariadb-10.6.5-atomic.patch
new file mode 100644
index 00000000..189e4cd7
--- /dev/null
+++ b/extra/mariadb/mariadb-10.6.5-atomic.patch
@@ -0,0 +1,28 @@
+diff -rauN mariadb-10.6.5/mysys/CMakeLists.txt mariadb-10.6.5-atomic-patch/mysys/CMakeLists.txt
+--- mariadb-10.6.5/mysys/CMakeLists.txt 2021-11-05 21:03:30.000000000 +0100
++++ mariadb-10.6.5-atomic-patch/mysys/CMakeLists.txt 2021-12-05 14:25:31.517929493 +0100
+@@ -186,6 +186,11 @@
+ TARGET_LINK_LIBRARIES(mysys pthread)
+ ENDIF()
+
++# Explicit libatomic for i486
++IF (HAVE_GCC_C11_ATOMICS_WITH_LIBATOMIC)
++ TARGET_LINK_LIBRARIES(mysys atomic)
++ENDIF()
++
+ ADD_EXECUTABLE(thr_lock thr_lock.c)
+ TARGET_LINK_LIBRARIES(thr_lock mysys)
+ SET_TARGET_PROPERTIES(thr_lock PROPERTIES COMPILE_FLAGS "-DMAIN")
+diff -rauN mariadb-10.6.5/storage/rocksdb/build_rocksdb.cmake mariadb-10.6.5-atomic-patch/storage/rocksdb/build_rocksdb.cmake
+--- mariadb-10.6.5/storage/rocksdb/build_rocksdb.cmake 2021-11-05 21:03:31.000000000 +0100
++++ mariadb-10.6.5-atomic-patch/storage/rocksdb/build_rocksdb.cmake 2021-12-05 14:25:31.517929493 +0100
+@@ -494,6 +494,9 @@
+
+ ADD_CONVENIENCE_LIBRARY(rocksdblib ${SOURCES})
+ target_link_libraries(rocksdblib ${THIRDPARTY_LIBS} ${SYSTEM_LIBS})
++IF (HAVE_GCC_C11_ATOMICS_WITH_LIBATOMIC)
++ TARGET_LINK_LIBRARIES(rocksdblib atomic)
++ENDIF()
+ IF(CMAKE_CXX_COMPILER_ID MATCHES "GNU" OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
+ set_target_properties(rocksdblib PROPERTIES COMPILE_FLAGS "-fPIC -fno-builtin-memcmp -Wno-error")
+ endif()