Added support for various compression algorithms

This commit is contained in:
Michal Schorm 2024-06-10 12:48:38 +02:00
parent f0d12b9786
commit b433324d56

View File

@ -45,8 +45,17 @@
%bcond_without test
%endif
# Page compression algorithms for InnoDB & XtraDB
# Page compression algorithms for various storage engines
%bcond_without lz4
%bcond_without bzip2
%bcond_without lzo
%bcond_without snappy
%bcond_without zstd
%if 0%{?fedora}
%bcond_without lzma
%else
%bcond_with lzma
%endif
# Aditional SELinux rules from a standalone package 'mysql-selinux' (that holds rules shared between MariaDB and MySQL)
%bcond_without require_mysql_selinux
@ -222,9 +231,14 @@ BuildRequires: multilib-rpm-config
BuildRequires: selinux-policy-devel
BuildRequires: systemd systemd-devel
# Page compression algorithms for InnoDB & XtraDB
# Page compression algorithms for various storage engines
BuildRequires: zlib-devel
%{?with_lz4:BuildRequires: lz4-devel}
%{?with_lz4:BuildRequires: lz4-devel >= 1.6}
%{?with_bzip2:BuildRequires: bzip2-devel}
%{?with_lzma:BuildRequires: lzma-sdk-devel}
%{?with_lzo:BuildRequires: lzo-devel}
%{?with_snappy:BuildRequires: snappy-devel}
%{?with_zstd:BuildRequires: libzstd-devel}
# asynchornous operations stuff; needed also for wsrep API
BuildRequires: libaio-devel
@ -903,9 +917,12 @@ fi
-DWITH_SSL=system \
-DWITH_ZLIB=system \
-DWITH_LIBFMT=%{?with_bundled_fmt:bundled}%{!?with_bundled_fmt:system} \
-DLZ4_LIBS=%{?with_lz4:/usr/%{_lib}/liblz4.so}%{!?with_lz4:} \
-DWITH_INNODB_LZ4=%{?with_lz4:ON}%{!?with_lz4:OFF} \
-DPLUGIN_PROVIDER_LZ4=%{?with_lz4:DYNAMIC}%{!?with_lz4:NO} \
-DWITH_ROCKSDB_LZ4=%{?with_lz4:ON}%{!?with_lz4:OFF} \
-DPLUGIN_PROVIDER_BZIP2=%{?with_bzip2:DYNAMIC}%{!?with_bzip2:NO} \
-DWITH_ROCKSDB_BZip2=%{?with_bzip2:ON}%{!?with_bzip2:OFF} \
-DPLUGIN_PROVIDER_LZMA=%{?with_lzma:DYNAMIC}%{!?with_lzma:NO} \
\
-DPLUGIN_MROONGA=%{?with_mroonga:DYNAMIC}%{!?with_mroonga:NO} \
-DPLUGIN_OQGRAPH=%{?with_oqgraph:DYNAMIC}%{!?with_oqgraph:NO} \
-DPLUGIN_CRACKLIB_PASSWORD_CHECK=%{?with_cracklib:DYNAMIC}%{!?with_cracklib:NO} \
@ -921,7 +938,6 @@ fi
-DPLUGIN_AWS_KEY_MANAGEMENT=NO \
-DCONNECT_WITH_MONGO=OFF \
-DCONNECT_WITH_JDBC=OFF \
-DPLUGIN_PROVIDER_LZMA=NO \
-DPLUGIN_HASHICORP_KEY_MANAGEMENT=NO \
%{?with_debug: -DCMAKE_BUILD_TYPE=Debug -DWITH_ASAN=OFF -DWITH_INNODB_EXTRA_DEBUG=ON -DWITH_VALGRIND=ON}
@ -1495,8 +1511,11 @@ fi
%config(noreplace) %{_sysconfdir}/my.cnf.d/enable_encryption.preset
%config(noreplace) %{_sysconfdir}/my.cnf.d/spider.cnf
%config(noreplace) %{_sysconfdir}/my.cnf.d/provider_lz4.cnf
#%%config(noreplace) %%{_sysconfdir}/my.cnf.d/provider_lzma.cnf
%{?with_lz4:%config(noreplace) %{_sysconfdir}/my.cnf.d/provider_lz4.cnf}
%{?with_bzip2:%config(noreplace) %{_sysconfdir}/my.cnf.d/provider_bzip2.cnf}
%{?with_lzma:%config(noreplace) %{_sysconfdir}/my.cnf.d/provider_lzma.cnf}
%{?with_lzo:%config(noreplace) %{_sysconfdir}/my.cnf.d/provider_lzo.cnf}
%{?with_snappy:%config(noreplace) %{_sysconfdir}/my.cnf.d/provider_snappy.cnf}
#%%config(noreplace) %%{_sysconfdir}/my.cnf.d/hashicorp_key_management.cnf