9 changed files with 307 additions and 1 deletions
@ -0,0 +1,11 @@
|
||||
--- percona-server-8.0.26-16.orig/plugin/auth_ldap/CMakeLists.txt 2021-10-18 15:11:29.000000000 +0300
|
||||
+++ percona-server-8.0.26-16/plugin/auth_ldap/CMakeLists.txt 2021-11-13 21:44:21.752981358 +0200
|
||||
@@ -36,7 +36,7 @@ IF(WITH_LDAP)
|
||||
|
||||
# libler?
|
||||
MYSQL_ADD_PLUGIN(authentication_ldap_simple ${ALP_SOURCES_SIMPLE}
|
||||
- LINK_LIBRARIES ldap_r MODULE_ONLY MODULE_OUTPUT_NAME "authentication_ldap_simple")
|
||||
+ LINK_LIBRARIES ldap MODULE_ONLY MODULE_OUTPUT_NAME "authentication_ldap_simple")
|
||||
|
||||
IF(UNIX)
|
||||
IF(INSTALL_MYSQLTESTDIR)
|
@ -0,0 +1,200 @@
|
||||
# Maintainer: Massimiliano Torromeo <massimiliano.torromeo@gmail.com> |
||||
|
||||
pkgbase=percona-server |
||||
pkgname=('libperconaserverclient' 'percona-server-clients' 'percona-server') |
||||
pkgver=8.0.26_16 |
||||
_boost_ver=1.73.0 |
||||
_pkgver=${pkgver/_/-} |
||||
_myver=${pkgver/_rel*} |
||||
pkgrel=2 |
||||
arch=('x86_64') |
||||
makedepends=('cmake' 'zlib' 'lz4' 'zstd' 'libaio' 'pam' 'numactl' 'jemalloc' 'openssl' |
||||
'rpcsvc-proto' 'doxygen' 'graphviz' 'libevent' 'protobuf') # 'boost' |
||||
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" |
||||
"https://boostorg.jfrog.io/artifactory/main/release/$_boost_ver/source/boost_${_boost_ver//./_}.tar.gz" |
||||
'my.cnf' |
||||
'mysql-user.conf' |
||||
'mysqlrouter-user.conf' |
||||
'openldap-2.5.patch' |
||||
'build-hostname.patch' |
||||
'no-werror.patch') |
||||
sha256sums=('3db3939bd9b317dbcfc1a5638779ff87e755f62d7e6feeb3137876be8bb59d6a' |
||||
'9995e192e68528793755692917f9eb6422f3052a53c5e13ba278a228af6c7acf' |
||||
'b467b04d6d06152b2abc33f2a6de63fef0fc922dd5119d2ee1d07d3c1a489731' |
||||
'5d7710fe88ec6d298175a309c0b776142397b119c468830b2865980292ed5da6' |
||||
'4ca7ffdcb2d1716d4f31e4c7dd314e5d76e64f13fdc67c5d81c53650b793f5e0' |
||||
'92d70b75a32517f598bbffbaf5db18b0d14be504c31f531e35c8572b330785f3' |
||||
'1537fdbb92dd1c135c1eb9f4d10c44fd02e652db66c933d731990a1196f1397c' |
||||
'2343a191c452b91caa458b03b0c1ef3f5afb0e7031816c68467af5c6a6ffe253') |
||||
|
||||
prepare() { |
||||
cd $pkgbase-$_pkgver |
||||
rm -v sql/sql_yacc.{cc,h} |
||||
|
||||
patch --verbose -p1 -i "$srcdir"/openldap-2.5.patch |
||||
patch --verbose -p1 -i "$srcdir"/build-hostname.patch |
||||
patch --verbose -p1 -i "$srcdir"/no-werror.patch |
||||
|
||||
sed -r -e s@/var/run/mysqlrouter@/run/mysqlrouter@ \ |
||||
-e s@lib64/mysql@lib/mysql@ \ |
||||
-i cmake/install_layout.cmake |
||||
} |
||||
|
||||
build() { |
||||
# rm -rf build |
||||
mkdir -p build |
||||
cd build |
||||
|
||||
cmake ../$pkgbase-$_pkgver \ |
||||
-DCMAKE_C_FLAGS_RELWITHDEBINFO="${CFLAGS} -DNDEBUG" \ |
||||
-DCMAKE_CXX_FLAGS_RELWITHDEBINFO="${CXXFLAGS} -DNDEBUG" \ |
||||
-Wno-dev \ |
||||
-DCMAKE_BUILD_TYPE=RelWithDebInfo \ |
||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \ |
||||
-DBUILD_CONFIG=mysql_release \ |
||||
-DREPRODUCIBLE_BUILD=ON \ |
||||
-DCMAKE_INSTALL_PREFIX=/usr \ |
||||
-DSYSCONFDIR=/etc/mysql \ |
||||
-DMYSQL_DATADIR=/var/lib/mysql \ |
||||
-DMYSQL_UNIX_ADDR=/run/mysqld/mysqld.sock \ |
||||
-DDEFAULT_CHARSET=utf8mb4 \ |
||||
-DDEFAULT_COLLATION=utf8mb4_0900_ai_ci \ |
||||
-DWITH_EXTRA_CHARSETS=all \ |
||||
-DENABLED_LOCAL_INFILE=ON \ |
||||
-DINSTALL_LAYOUT=RPM \ |
||||
-DINSTALL_SBINDIR=bin \ |
||||
-DINSTALL_LIBDIR=lib \ |
||||
-DINSTALL_PLUGINDIR=lib/perconaserver/plugin \ |
||||
-DINSTALL_INCLUDEDIR=include/perconaserver \ |
||||
-DINSTALL_INFODIR=share/doc/percona-server \ |
||||
-DINSTALL_DOCREADMEDIR=share/doc/percona-server \ |
||||
-DINSTALL_DOCDIR=share/doc/percona-server \ |
||||
-DINSTALL_MANDIR=share/man \ |
||||
-DINSTALL_SUPPORTFILESDIR=share/mysql \ |
||||
-DINSTALL_MYSQLSHAREDIR=share/mysql \ |
||||
-DINSTALL_STATIC_LIBRARIES=OFF \ |
||||
-DWITH_ZLIB=system \ |
||||
-DWITH_LZ4=system \ |
||||
-DWITH_ZSTD=system \ |
||||
-DWITH_SSL=system \ |
||||
-DWITH_ICU=system \ |
||||
-DWITH_LIBEVENT=system \ |
||||
-DWITH_PROTOBUF=system \ |
||||
-DWITH_LIBWRAP=OFF \ |
||||
-DWITH_MECAB=OFF \ |
||||
-DWITH_PAM=ON \ |
||||
-DWITH_INNODB_MEMCACHED=ON \ |
||||
-DWITH_ARCHIVE_STORAGE_ENGINE=ON \ |
||||
-DWITH_BLACKHOLE_STORAGE_ENGINE=ON \ |
||||
-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=0 \ |
||||
-DCMAKE_EXE_LINKER_FLAGS='-ljemalloc' \ |
||||
-DWITH_NUMA=ON \ |
||||
-DWITH_BOOST="../boost_${_boost_ver//./_}" |
||||
# -DWITH_BOOST=system |
||||
|
||||
make |
||||
} |
||||
|
||||
package_libperconaserverclient() { |
||||
pkgdesc='Percona Server client libraries' |
||||
depends=('zlib' 'zstd' 'openssl') |
||||
optdepends=('libsasl: authentication_ldap_sasl_client plugin') |
||||
|
||||
cd build |
||||
for dir in include libmysql libservices; do |
||||
make -C $dir DESTDIR="$pkgdir" install |
||||
done |
||||
|
||||
rm -vrf "$pkgdir"/usr/lib/perconaserver/plugin/debug |
||||
|
||||
install -Dm755 scripts/mysql_config "$pkgdir"/usr/bin/perconaserver_config |
||||
install -Dm644 "$srcdir"/$pkgbase-$_pkgver/man/mysql_config.1 "$pkgdir"/usr/share/man/man1/perconaserver_config.1 |
||||
sed s@/lib64@/lib@ -i "$pkgdir"/usr/bin/perconaserver_config |
||||
|
||||
install -D -m0644 scripts/perconaserverclient.pc "$pkgdir"/usr/lib/pkgconfig/perconaserverclient.pc |
||||
install -D -m0644 "$srcdir"/$pkgbase-$_pkgver/support-files/mysql.m4 "$pkgdir"/usr/share/aclocal/perconaserverclient.m4 |
||||
} |
||||
|
||||
package_percona-server-clients() { |
||||
pkgdesc='Percona Server client tools' |
||||
depends=('libperconaserverclient' 'zlib' 'zstd' 'lz4' 'openssl' 'jemalloc' 'readline') |
||||
conflicts=('mysql-clients') |
||||
provides=("mysql-clients=$_myver" "mariadb-clients=$_myver") |
||||
|
||||
cd build |
||||
make -C client DESTDIR="$pkgdir" install |
||||
|
||||
# install man pages |
||||
install -d "$pkgdir"/usr/share/man/man1 |
||||
for man in mysql{,admin,check,dump,import,show,slap,pump,binlog,_upgrade}; do |
||||
install -m644 "$srcdir"/$pkgbase-$_pkgver/man/$man.1 "$pkgdir"/usr/share/man/man1/$man.1 |
||||
done |
||||
|
||||
# provided by percona-server |
||||
rm "$pkgdir"/usr/bin/mysql{_config_editor,_secure_installation,_ssl_rsa_setup} |
||||
} |
||||
|
||||
package_percona-server() { |
||||
pkgdesc='Drop-in replacement for MySQL that provides improved performance, diagnostics, instrumentation and MyRocks storage engine' |
||||
backup=('etc/mysql/my.cnf' 'etc/mysqlrouter/mysqlrouter.conf') |
||||
depends=('libaio' 'pam' 'jemalloc' 'numactl' 'lz4' 'zstd' 'openssl' 'libtirpc' 'curl' |
||||
'libevent' 'protobuf' 'icu') # 'boost-libs' |
||||
optdepends=('perl-dbd-mysql') |
||||
conflicts=('mysql') |
||||
provides=("mysql=$_myver" "mariadb=$_myver") |
||||
options=('emptydirs') |
||||
|
||||
cd build |
||||
make DESTDIR="$pkgdir" install |
||||
|
||||
cd "$pkgdir" |
||||
install -Dm644 "$srcdir"/my.cnf etc/mysql/my.cnf |
||||
install -Dm644 "$srcdir"/mysql-user.conf usr/lib/sysusers.d/mysql.conf |
||||
|
||||
install -dm755 etc/mysqlrouter |
||||
sed -e 's:@ROUTER_RUNTIMEDIR@:/run/mysqlrouter:' \ |
||||
-e 's:^logging_folder.*:logging_folder =:' \ |
||||
"$srcdir"/$pkgbase-$_pkgver/packaging/rpm-common/mysqlrouter.conf.in \ |
||||
> etc/mysqlrouter/mysqlrouter.conf |
||||
install -Dm644 "$srcdir"/mysqlrouter-user.conf usr/lib/sysusers.d/mysqlrouter.conf |
||||
|
||||
chmod 755 usr |
||||
rm -vrf usr/{cmake,lib/perconaserver/plugin/debug,lib/tmpfiles.d/mysql{,router}.conf} |
||||
|
||||
# Move documentation |
||||
if [ -f usr/PATENTS ]; then |
||||
mv usr/{PATENTS,README.md} usr/share/doc/$pkgname/ |
||||
rm usr/COPYING.* |
||||
fi |
||||
|
||||
# provided by libperconaserverclient |
||||
rm usr/bin/mysql_config |
||||
rm usr/lib/libperconaserverclient* |
||||
rm -r usr/include/ |
||||
rm usr/share/man/man1/mysql_config.1 |
||||
rm -r usr/share/aclocal usr/lib/pkgconfig |
||||
|
||||
# provided by percona-server-clients |
||||
rm usr/bin/mysql{,admin,check,dump,import,show,slap,pump,binlog,test,_upgrade,_migrate_keyring} |
||||
rm usr/lib/perconaserver/plugin/authentication_*_client.so |
||||
rm usr/share/man/man1/mysql{,admin,check,dump,import,show,slap,pump,binlog,_upgrade}.1 |
||||
|
||||
# not needed |
||||
rm -r usr/share/mysql-test |
||||
rm usr/share/doc/percona-server/mysql.info |
||||
} |
@ -0,0 +1,17 @@
|
||||
diff --git a/storage/tokudb/PerconaFT/cmake_modules/TokuSetupCTest.cmake b/storage/tokudb/PerconaFT/cmake_modules/TokuSetupCTest.cmake
|
||||
index 5b6882cc..d165f3e7 100644
|
||||
--- a/storage/tokudb/PerconaFT/cmake_modules/TokuSetupCTest.cmake
|
||||
+++ b/storage/tokudb/PerconaFT/cmake_modules/TokuSetupCTest.cmake
|
||||
@@ -56,11 +56,7 @@ endmacro(whoami)
|
||||
|
||||
## gives the current hostname, minus .tokutek.com if it's there
|
||||
macro(hostname out)
|
||||
- execute_process(
|
||||
- COMMAND hostname
|
||||
- OUTPUT_VARIABLE fullhostname
|
||||
- OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
- string(REGEX REPLACE "\\.tokutek\\.com$" "" ${out} "${fullhostname}")
|
||||
+ set(${out} "archbuild")
|
||||
endmacro(hostname)
|
||||
|
||||
## gather machine info
|
@ -0,0 +1,34 @@
|
||||
# For advice on how to change settings please see |
||||
# http://dev.mysql.com/doc/refman/8.0/en/server-configuration-defaults.html |
||||
|
||||
[client] |
||||
socket = /run/mysqld/mysqld.sock |
||||
|
||||
[mysqld] |
||||
# |
||||
# Remove leading # and set to the amount of RAM for the most important data |
||||
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%. |
||||
# innodb_buffer_pool_size = 128M |
||||
# |
||||
# Remove the leading "# " to disable binary logging |
||||
# Binary logging captures changes between backups and is enabled by |
||||
# default. It's default setting is log_bin=binlog |
||||
# disable_log_bin |
||||
# |
||||
# Remove leading # to set options mainly useful for reporting servers. |
||||
# The server defaults are faster for transactions and fast SELECTs. |
||||
# Adjust sizes as needed, experiment to find the optimal values. |
||||
# join_buffer_size = 128M |
||||
# sort_buffer_size = 2M |
||||
# read_rnd_buffer_size = 2M |
||||
# |
||||
# Remove leading # to revert to previous value for default_authentication_plugin, |
||||
# this will increase compatibility with older clients. For background, see: |
||||
# https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_default_authentication_plugin |
||||
# default-authentication-plugin=mysql_native_password |
||||
|
||||
datadir = /var/lib/mysql |
||||
socket = /run/mysqld/mysqld.sock |
||||
|
||||
log-error = /var/log/mysqld.log |
||||
pid-file = /run/mysqld/mysqld.pid |
@ -0,0 +1 @@
|
||||
u mysql 89 "MySQL user" /var/lib/mysql |
@ -0,0 +1 @@
|
||||
u mysqlrouter - "Percona MySQL Router" /var/lib/mysqlrouter |
@ -0,0 +1,28 @@
|
||||
diff --git a/plugin/tokudb-backup-plugin/Percona-TokuBackup/backup/CMakeLists.txt b/plugin/tokudb-backup-plugin/Percona-TokuBackup/backup/CMakeLists.txt
|
||||
index 9d2c1dd2..cefa9190 100644
|
||||
--- a/plugin/tokudb-backup-plugin/Percona-TokuBackup/backup/CMakeLists.txt
|
||||
+++ b/plugin/tokudb-backup-plugin/Percona-TokuBackup/backup/CMakeLists.txt
|
||||
@@ -20,7 +20,7 @@ set_property(DIRECTORY APPEND PROPERTY COMPILE_DEFINITIONS
|
||||
_FILE_OFFSET_BITS=64
|
||||
_LARGEFILE64_SOURCE)
|
||||
|
||||
-set(CMAKE_CXX_FLAGS "-Werror -W -Wall -Wshadow ${CMAKE_CXX_FLAGS}")
|
||||
+set(CMAKE_CXX_FLAGS "-W -Wall -Wshadow ${CMAKE_CXX_FLAGS}")
|
||||
|
||||
set(USE_VALGRIND OFF CACHE BOOL "whether to use valgrind headers")
|
||||
if (USE_VALGRIND)
|
||||
diff --git a/storage/tokudb/PerconaFT/cmake_modules/TokuSetupCompiler.cmake b/storage/tokudb/PerconaFT/cmake_modules/TokuSetupCompiler.cmake
|
||||
index 92897b88..95dad8ac 100644
|
||||
--- a/storage/tokudb/PerconaFT/cmake_modules/TokuSetupCompiler.cmake
|
||||
+++ b/storage/tokudb/PerconaFT/cmake_modules/TokuSetupCompiler.cmake
|
||||
@@ -171,8 +171,8 @@ if (NOT CMAKE_CXX_COMPILER_ID STREQUAL Clang)
|
||||
endif ()
|
||||
|
||||
## always want these
|
||||
-set(CMAKE_C_FLAGS "-Wall -Werror ${CMAKE_C_FLAGS}")
|
||||
-set(CMAKE_CXX_FLAGS "-Wall -Werror ${CMAKE_CXX_FLAGS}")
|
||||
+set(CMAKE_C_FLAGS "-Wall ${CMAKE_C_FLAGS}")
|
||||
+set(CMAKE_CXX_FLAGS "-Wall ${CMAKE_CXX_FLAGS}")
|
||||
|
||||
# pick language dialect
|
||||
set(CMAKE_C_FLAGS "-std=c99 ${CMAKE_C_FLAGS}")
|
@ -0,0 +1,11 @@
|
||||
--- percona-server-8.0.26-16.orig/plugin/auth_ldap/CMakeLists.txt 2021-10-18 15:11:29.000000000 +0300
|
||||
+++ percona-server-8.0.26-16/plugin/auth_ldap/CMakeLists.txt 2021-11-13 21:44:21.752981358 +0200
|
||||
@@ -36,7 +36,7 @@ IF(WITH_LDAP)
|
||||
|
||||
# libler?
|
||||
MYSQL_ADD_PLUGIN(authentication_ldap_simple ${ALP_SOURCES_SIMPLE}
|
||||
- LINK_LIBRARIES ldap_r MODULE_ONLY MODULE_OUTPUT_NAME "authentication_ldap_simple")
|
||||
+ LINK_LIBRARIES ldap MODULE_ONLY MODULE_OUTPUT_NAME "authentication_ldap_simple")
|
||||
|
||||
IF(UNIX)
|
||||
IF(INSTALL_MYSQLTESTDIR)
|
Loading…
Reference in new issue