mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-08 22:45:43 +00:00
community/percona-server to 5.7.21_21-1
This commit is contained in:
parent
d0fba0575c
commit
3247d61a17
2 changed files with 98 additions and 33 deletions
|
@ -2,31 +2,32 @@
|
|||
# Maintainer: Massimiliano Torromeo <massimiliano.torromeo@gmail.com>
|
||||
|
||||
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
|
||||
# - drop valgrind makedepend, bug requiring it has been fixed
|
||||
# - drop numactl makedepend, don't build with NUMA
|
||||
# - disable epoll on aarch64
|
||||
|
||||
pkgbase=percona-server
|
||||
pkgname=('libperconaserverclient' 'percona-server-clients' 'percona-server')
|
||||
pkgver=5.7.21_20
|
||||
pkgver=5.7.21_21
|
||||
_boost_ver=1.59.0
|
||||
_pkgver=${pkgver/_/-}
|
||||
_myver=${pkgver/_rel*}
|
||||
pkgrel=1
|
||||
arch=('x86_64')
|
||||
makedepends=('cmake' 'zlib' 'lz4' 'zstd' 'libaio' 'systemd-tools' 'pam' 'jemalloc' 'openssl')
|
||||
makedepends=('cmake' 'zlib' 'lz4' 'zstd' 'libaio' 'systemd-tools' 'pam' 'jemalloc' 'openssl' 'rpcsvc-proto')
|
||||
license=('GPL')
|
||||
url="https://www.percona.com/software/mysql-database/percona-server"
|
||||
source=("https://www.percona.com/downloads/Percona-Server-${pkgver%.*_*}/Percona-Server-$_pkgver/source/tarball/percona-server-$_pkgver.tar.gz"
|
||||
"http://jenkins.percona.com/downloads/boost/boost_${_boost_ver//./_}.tar.gz"
|
||||
'my.cnf'
|
||||
'mysql-user.conf'
|
||||
'rocksdb-systemlibs.patch')
|
||||
sha256sums=('842785e9b73c606be00ea74f568615d3427362fbeed5c136d8f509f03c9d43a6'
|
||||
'rocksdb-systemlibs.patch'
|
||||
'mysql-tirpc.patch')
|
||||
sha256sums=('8f9b3723741ad8f7b4d1d9366199aa3e7bb081b46130260c13fe9c14302d6b6b'
|
||||
'47f11c8844e579d02691a607fbd32540104a9ac7a2534a8ddaef50daf502baac'
|
||||
'ae451839c368f0db25a63bb0a6a890194897a8e74818bd4245140933c29e5f83'
|
||||
'e638a2657085f15b6728f43c1fd6aa551b27608fbf6b435e33afd3606a0cfb0e'
|
||||
'fcc3bea0982cda6cc35637d448a46924eccdfeb4c4da0634a26c9d190cf50fe4')
|
||||
'fcc3bea0982cda6cc35637d448a46924eccdfeb4c4da0634a26c9d190cf50fe4'
|
||||
'fa3e4b3e6fab751fe6857e994e72a1ba951b36d27c8a1e59a7263d3f60a13c28')
|
||||
|
||||
prepare() {
|
||||
cd $pkgbase-$_pkgver
|
||||
|
@ -38,62 +39,68 @@ prepare() {
|
|||
plugin/tokudb-backup-plugin/Percona-TokuBackup/backup/CMakeLists.txt
|
||||
|
||||
patch -p1 -i "$srcdir"/rocksdb-systemlibs.patch
|
||||
patch -p1 -i "$srcdir"/mysql-tirpc.patch
|
||||
}
|
||||
|
||||
build() {
|
||||
rm -rf build
|
||||
mkdir build
|
||||
# rm -rf build
|
||||
mkdir -p build
|
||||
cd build
|
||||
|
||||
[[ $CARCH == "aarch64" ]] && CONFIG="-DHAVE_SYS_EPOLL_H=0"
|
||||
|
||||
cmake ../$pkgbase-$_pkgver \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DBUILD_CONFIG=mysql_release \
|
||||
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||
-DSYSCONFDIR=/etc/mysql \
|
||||
-DMYSQL_DATADIR=/var/lib/mysql \
|
||||
-DMYSQL_UNIX_ADDR=/run/mysqld/mysqld.sock \
|
||||
-DDEFAULT_CHARSET=utf8 \
|
||||
-DDEFAULT_COLLATION=utf8_general_ci \
|
||||
-DDEFAULT_CHARSET=utf8mb4 \
|
||||
-DDEFAULT_COLLATION=utf8mb4_unicode_ci \
|
||||
-DENABLED_LOCAL_INFILE=ON \
|
||||
-DINSTALL_INFODIR=share/mysql/docs \
|
||||
-DINSTALL_INFODIR=share/doc/percona-server \
|
||||
-DINSTALL_DOCREADMEDIR=share/doc/percona-server \
|
||||
-DINSTALL_DOCDIR=share/doc/percona-server \
|
||||
-DINSTALL_MANDIR=share/man \
|
||||
-DINSTALL_PLUGINDIR=lib/mysql/plugin \
|
||||
-DINSTALL_SCRIPTDIR=bin \
|
||||
-DINSTALL_INCLUDEDIR=include/perconaserver \
|
||||
-DINSTALL_DOCREADMEDIR=share/mysql \
|
||||
-DINSTALL_SUPPORTFILESDIR=share/mysql \
|
||||
-DINSTALL_MYSQLSHAREDIR=share/mysql \
|
||||
-DINSTALL_DOCDIR=share/mysql/docs \
|
||||
-DINSTALL_SHAREDIR=share/mysql \
|
||||
-DWITH_ZLIB=system \
|
||||
-DWITH_LZ4=system \
|
||||
-DWITH_LZ4=system \
|
||||
-DWITH_SSL=system \
|
||||
-DWITH_LIBWRAP=OFF \
|
||||
-DCMAKE_EXE_LINKER_FLAGS='-ljemalloc' \
|
||||
-DWITH_UNIT_TESTS=OFF \
|
||||
-DWITH_MECAB=OFF \
|
||||
-DWITH_PAM=ON \
|
||||
-DWITH_EXTRA_CHARSETS=complex \
|
||||
-DWITH_EMBEDDED_SERVER=ON \
|
||||
-DWITH_EMBEDDED_SHARED_LIBRARY=ON \
|
||||
-DWITH_INNODB_MEMCACHED=ON \
|
||||
-DWITH_INNOBASE_STORAGE_ENGINE=ON \
|
||||
-DWITH_PARTITION_STORAGE_ENGINE=ON \
|
||||
-DWITH_PERFSCHEMA_STORAGE_ENGINE=ON \
|
||||
-DWITH_ARCHIVE_STORAGE_ENGINE=ON \
|
||||
-DWITH_BLACKHOLE_STORAGE_ENGINE=ON \
|
||||
-DWITH_FEDERATED_STORAGE_ENGINE=OFF \
|
||||
-DWITH_EXAMPLE_STORAGE_ENGINE=OFF \
|
||||
-DWITH_ROCKSDB=1 \
|
||||
-DWITH_FEDERATED_STORAGE_ENGINE=ON \
|
||||
-DWITH_ROCKSDB=ON \
|
||||
-DTOKU_DEBUG_PARANOID=OFF \
|
||||
-DWITH_VALGRIND=OFF \
|
||||
-DUSE_VALGRIND=OFF \
|
||||
-DDEBUG_EXTNAME=OFF \
|
||||
-DBUILD_TESTING=OFF \
|
||||
-DWITH_UNIT_TESTS=OFF \
|
||||
-DUSE_GTAGS=OFF \
|
||||
-DUSE_CTAGS=OFF \
|
||||
-DUSE_ETAGS=OFF \
|
||||
-DUSE_CSCOPE=OFF \
|
||||
-DTOKUDB_BACKUP_PLUGIN_VERSION=$_pkgver \
|
||||
-DWITH_SYSTEMD=1 \
|
||||
-DCMAKE_C_FLAGS="-fPIC $CFLAGS -fno-strict-aliasing -DBIG_JOINS=1 -fomit-frame-pointer -fno-delete-null-pointer-checks" \
|
||||
-DCMAKE_CXX_FLAGS="-fPIC $CXXFLAGS -fno-strict-aliasing -DBIG_JOINS=1 -felide-constructors -fno-delete-null-pointer-checks -Wno-error=nonnull-compare -Wno-deprecated-declarations -Wno-misleading-indentation -Wno-maybe-uninitialized" \
|
||||
-DWITH_SCALABILITY_METRICS=ON \
|
||||
-DCMAKE_EXE_LINKER_FLAGS='-ljemalloc' \
|
||||
-DCMAKE_C_FLAGS="-fPIC $CFLAGS -fno-strict-aliasing -DBIG_JOINS=1 -fomit-frame-pointer -fno-delete-null-pointer-checks -Wno-dev" \
|
||||
-DCMAKE_CXX_FLAGS="-fPIC $CXXFLAGS -fno-strict-aliasing -DBIG_JOINS=1 -felide-constructors -fno-delete-null-pointer-checks -Wno-dev -Wno-error=nonnull-compare -Wno-deprecated-declarations -Wno-misleading-indentation -Wno-maybe-uninitialized" \
|
||||
-DWITH_MYSQLD_LDFLAGS="-pie ${LDFLAGS},-z,now" \
|
||||
-DWITH_BOOST="../boost_${_boost_ver//./_}" \
|
||||
-DWITH_NUMA=OFF \
|
||||
${CONFIG}
|
||||
|
||||
$CONFIG
|
||||
|
||||
make
|
||||
}
|
||||
|
@ -137,7 +144,7 @@ package_percona-server-clients() {
|
|||
package_percona-server() {
|
||||
pkgdesc='Drop-in replacement for MySQL that provides improved performance, diagnostics, instrumentation and TokuDB storage engine'
|
||||
backup=('etc/mysql/my.cnf')
|
||||
depends=('libaio' 'systemd-tools' 'pam' 'jemalloc' 'lz4' 'zstd' 'openssl')
|
||||
depends=('libaio' 'systemd-tools' 'pam' 'jemalloc' 'lz4' 'zstd' 'openssl' 'libtirpc')
|
||||
optdepends=('perl-dbd-mysql')
|
||||
conflicts=('mysql')
|
||||
provides=("mysql=$_myver" "mariadb=$_myver")
|
||||
|
@ -154,10 +161,6 @@ package_percona-server() {
|
|||
rm -rf usr/usr
|
||||
|
||||
# Move documentation
|
||||
install -dm755 usr/share/doc
|
||||
mv usr/share/mysql/docs usr/share/doc/$pkgname
|
||||
mv usr/share/mysql/{COPYING,README.MySQL} usr/share/doc/$pkgname/
|
||||
|
||||
if [ -f usr/PATENTS ]; then
|
||||
mv usr/{PATENTS,README.md} usr/share/doc/$pkgname/
|
||||
rm usr/COPYING.*
|
||||
|
|
62
community/percona-server/mysql-tirpc.patch
Normal file
62
community/percona-server/mysql-tirpc.patch
Normal file
|
@ -0,0 +1,62 @@
|
|||
diff --git a/rapid/plugin/group_replication/configure.cmake b/rapid/plugin/group_replication/configure.cmake
|
||||
index 59a074bd..35c99dbf 100644
|
||||
--- a/rapid/plugin/group_replication/configure.cmake
|
||||
+++ b/rapid/plugin/group_replication/configure.cmake
|
||||
@@ -50,8 +50,16 @@ IF (WIN32)
|
||||
ENDIF()
|
||||
|
||||
IF (NOT WIN32)
|
||||
+ # First look for tirpc, then the old Sun RPC
|
||||
+ FIND_PATH(RPC_INCLUDE_DIR
|
||||
+ NAMES rpc/rpc.h
|
||||
+ HINTS /usr/include/tirpc
|
||||
+ NO_DEFAULT_PATH
|
||||
+ )
|
||||
+ FIND_PATH(RPC_INCLUDE_DIR NAMES rpc/rpc.h)
|
||||
SET (CMAKE_REQUIRED_FLAGS_BACKUP ${CMAKE_REQUIRED_FLAGS})
|
||||
SET (CMAKE_REQUIRED_FLAGS "-Wno-error")
|
||||
+ SET (CMAKE_REQUIRED_INCLUDES ${RPC_INCLUDE_DIR})
|
||||
ENDIF()
|
||||
|
||||
#
|
||||
diff --git a/rapid/plugin/group_replication/rpcgen.cmake b/rapid/plugin/group_replication/rpcgen.cmake
|
||||
index b9c5895c..7856e046 100644
|
||||
--- a/rapid/plugin/group_replication/rpcgen.cmake
|
||||
+++ b/rapid/plugin/group_replication/rpcgen.cmake
|
||||
@@ -87,6 +87,23 @@ FOREACH(X xcom_vp)
|
||||
${XCOM_BASEDIR}/xcom_proto_enum.h
|
||||
${XCOM_BASEDIR}/xcom_limits.h)
|
||||
ELSE()
|
||||
+ FIND_PROGRAM(RPCGEN_EXECUTABLE rpcgen DOC "path to the rpcgen executable")
|
||||
+ MARK_AS_ADVANCED(RPCGEN_EXECUTABLE)
|
||||
+ IF(NOT RPCGEN_EXECUTABLE)
|
||||
+ MESSAGE(FATAL_ERROR "Could not find rpcgen")
|
||||
+ ENDIF()
|
||||
+
|
||||
+ IF(NOT RPC_INCLUDE_DIR)
|
||||
+ MESSAGE(FATAL_ERROR
|
||||
+ "Could not find rpc/rpc.h in /usr/include or /usr/include/tirpc")
|
||||
+ ENDIF()
|
||||
+ MESSAGE(STATUS "RPC_INCLUDE_DIR ${RPC_INCLUDE_DIR}")
|
||||
+ IF(RPC_INCLUDE_DIR STREQUAL "/usr/include/tirpc")
|
||||
+ INCLUDE_DIRECTORIES(SYSTEM /usr/include/tirpc)
|
||||
+ ADD_DEFINITIONS(-DHAVE_TIRPC)
|
||||
+ SET(TIRPC_LIBRARY tirpc)
|
||||
+ ENDIF()
|
||||
+
|
||||
# on unix systems try to generate them if needed
|
||||
ADD_CUSTOM_COMMAND(OUTPUT ${x_gen_h} ${x_gen_c} ${x_tmp_plat_h}
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_if_different
|
||||
@@ -103,10 +120,10 @@ FOREACH(X xcom_vp)
|
||||
|
||||
# generate the sources
|
||||
COMMAND ${CMAKE_COMMAND} -E remove -f ${x_gen_h}
|
||||
- COMMAND rpcgen -C -h -o
|
||||
+ COMMAND ${RPCGEN_EXECUTABLE} -C -h -o
|
||||
${x_gen_h} ${x_tmp_x_canonical_name}
|
||||
COMMAND ${CMAKE_COMMAND} -E remove -f ${x_gen_c}
|
||||
- COMMAND rpcgen -C -c -o
|
||||
+ COMMAND ${RPCGEN_EXECUTABLE} -C -c -o
|
||||
${x_gen_c} ${x_tmp_x_canonical_name}
|
||||
WORKING_DIRECTORY ${gen_xdr_dir}
|
||||
DEPENDS
|
Loading…
Reference in a new issue