F40 Change "MariaDB & MySQL repackaging" - Implement conflicts with 'mariadb' names and provide 'community-mysql' names
As per: https://fedoraproject.org/wiki/Changes/F40_MariaDB_MySQL_repackaging specifically the parts: - Rename package 'community-mysql' to 'mysql' and Stop providing 'mysql' symbols by package 'mariadb' - Drop cross-installation functionality
This commit is contained in:
parent
6e17c080ef
commit
068e37f35d
@ -61,9 +61,17 @@
|
|||||||
%global dbdatadir %{_localstatedir}/lib/mysql
|
%global dbdatadir %{_localstatedir}/lib/mysql
|
||||||
|
|
||||||
|
|
||||||
# Provide mysql names for compatibility
|
# Set explicit conflicts with 'mariadb' packages
|
||||||
%bcond_without mysql_names
|
%bcond_without conflicts_mariadb
|
||||||
%bcond_without conflicts
|
# Provide explicitly the 'community-mysql' names
|
||||||
|
# 'community-mysql' names are deprecated and to be removed in future Fedora
|
||||||
|
# but we're leaving them here for compatibility reasons
|
||||||
|
%bcond_without provides_community_mysql
|
||||||
|
# Obsolete the package 'community-mysql' and all its sub-packages
|
||||||
|
%bcond_without obsoletes_community_mysql
|
||||||
|
# This is the last version of the 'community-mysql' package production release
|
||||||
|
%global obsolete_community_mysql_version 8.0.35-1
|
||||||
|
|
||||||
|
|
||||||
# Make long macros shorter
|
# Make long macros shorter
|
||||||
%global sameevr %{?epoch:%{epoch}:}%{version}-%{release}
|
%global sameevr %{?epoch:%{epoch}:}%{version}-%{release}
|
||||||
@ -199,14 +207,11 @@ Requires: %{name}-common = %{sameevr}
|
|||||||
|
|
||||||
Provides: bundled(boost) = %{boost_bundled_version}
|
Provides: bundled(boost) = %{boost_bundled_version}
|
||||||
|
|
||||||
%if %{with mysql_names}
|
%{?with_conflicts_mariadb:Conflicts: mariadb}
|
||||||
Provides: mysql = %{sameevr}
|
# Explicitly disallow installation of mysql + mariadb-server
|
||||||
Provides: mysql%{?_isa} = %{sameevr}
|
%{?with_conflicts_mariadb:Conflicts: mariadb-server}
|
||||||
Provides: mysql-compat-client = %{sameevr}
|
%{?with_provides_community_mysql:Provides: community-mysql}
|
||||||
Provides: mysql-compat-client%{?_isa} = %{sameevr}
|
%{?with_obsoletes_community_mysql:Obsoletes: community-mysql <= %obsolete_community_mysql_version}
|
||||||
%endif
|
|
||||||
|
|
||||||
%{?with_conflicts:Conflicts: mariadb}
|
|
||||||
|
|
||||||
%description
|
%description
|
||||||
MySQL is a multi-user, multi-threaded SQL database server. MySQL is a
|
MySQL is a multi-user, multi-threaded SQL database server. MySQL is a
|
||||||
@ -219,10 +224,8 @@ contains the standard MySQL client programs and generic MySQL files.
|
|||||||
%package libs
|
%package libs
|
||||||
Summary: The shared libraries required for MySQL clients
|
Summary: The shared libraries required for MySQL clients
|
||||||
Requires: %{name}-common = %{sameevr}
|
Requires: %{name}-common = %{sameevr}
|
||||||
%if %{with mysql_names}
|
%{?with_provides_community_mysql:Provides: community-mysql-libs}
|
||||||
Provides: mysql-libs = %{sameevr}
|
%{?with_obsoletes_community_mysql:Obsoletes: community-mysql-libs <= %obsolete_community_mysql_version}
|
||||||
Provides: mysql-libs%{?_isa} = %{sameevr}
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%description libs
|
%description libs
|
||||||
The mysql-libs package provides the essential shared libraries for any
|
The mysql-libs package provides the essential shared libraries for any
|
||||||
@ -235,6 +238,8 @@ MySQL server.
|
|||||||
%if %{with config}
|
%if %{with config}
|
||||||
%package config
|
%package config
|
||||||
Summary: The config files required by server and client
|
Summary: The config files required by server and client
|
||||||
|
%{?with_provides_community_mysql:Provides: community-mysql-config}
|
||||||
|
%{?with_obsoletes_community_mysql:Obsoletes: community-mysql-config <= %obsolete_community_mysql_version}
|
||||||
|
|
||||||
%description config
|
%description config
|
||||||
The package provides the config file my.cnf and my.cnf.d directory used by any
|
The package provides the config file my.cnf and my.cnf.d directory used by any
|
||||||
@ -249,6 +254,8 @@ package itself.
|
|||||||
Summary: The shared files required for MySQL server and client
|
Summary: The shared files required for MySQL server and client
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
Requires: %{_sysconfdir}/my.cnf
|
Requires: %{_sysconfdir}/my.cnf
|
||||||
|
%{?with_provides_community_mysql:Provides: community-mysql-common}
|
||||||
|
%{?with_obsoletes_community_mysql:Obsoletes: community-mysql-common <= %obsolete_community_mysql_version}
|
||||||
|
|
||||||
%description common
|
%description common
|
||||||
The mysql-common package provides the essential shared files for any
|
The mysql-common package provides the essential shared files for any
|
||||||
@ -262,6 +269,8 @@ MySQL package.
|
|||||||
Summary: The error messages files required by MySQL server
|
Summary: The error messages files required by MySQL server
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
Requires: %{name}-common = %{sameevr}
|
Requires: %{name}-common = %{sameevr}
|
||||||
|
%{?with_provides_community_mysql:Provides: community-mysql-errmsg}
|
||||||
|
%{?with_obsoletes_community_mysql:Obsoletes: community-mysql-errmsg <= %obsolete_community_mysql_version}
|
||||||
|
|
||||||
%description errmsg
|
%description errmsg
|
||||||
The package provides error messages files for the MySQL daemon
|
The package provides error messages files for the MySQL daemon
|
||||||
@ -271,9 +280,7 @@ The package provides error messages files for the MySQL daemon
|
|||||||
%package server
|
%package server
|
||||||
Summary: The MySQL server and related files
|
Summary: The MySQL server and related files
|
||||||
|
|
||||||
# Require any mysql client, but prefer community-mysql client for community-mysql server
|
Requires: %{name}%{?_isa}
|
||||||
Suggests: %{name}%{?_isa} = %{sameevr}
|
|
||||||
Requires: mysql%{?_isa}
|
|
||||||
|
|
||||||
Requires: %{name}-common = %{sameevr}
|
Requires: %{name}-common = %{sameevr}
|
||||||
Requires: %{_sysconfdir}/my.cnf
|
Requires: %{_sysconfdir}/my.cnf
|
||||||
@ -297,14 +304,13 @@ Requires(post): policycoreutils-python-utils
|
|||||||
Requires: (mysql-selinux if selinux-policy-targeted)
|
Requires: (mysql-selinux if selinux-policy-targeted)
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if %{with mysql_names}
|
%{?with_conflicts_mariadb:Conflicts: mariadb-server}
|
||||||
Provides: mysql-server = %{sameevr}
|
%{?with_conflicts_mariadb:Conflicts: mariadb-server-utils}
|
||||||
Provides: mysql-server%{?_isa} = %{sameevr}
|
%{?with_conflicts_mariadb:Conflicts: mariadb-server-galera}
|
||||||
Provides: mysql-compat-server = %{sameevr}
|
# Explicitly disallow installation of mysql + mariadb-server
|
||||||
Provides: mysql-compat-server%{?_isa} = %{sameevr}
|
%{?with_conflicts_mariadb:Conflicts: mariadb}
|
||||||
%endif
|
%{?with_provides_community_mysql:Provides: community-mysql-server}
|
||||||
%{?with_conflicts:Conflicts: mariadb-server}
|
%{?with_obsoletes_community_mysql:Obsoletes: community-mysql-server <= %obsolete_community_mysql_version}
|
||||||
%{?with_conflicts:Conflicts: mariadb-galera-server}
|
|
||||||
|
|
||||||
%description server
|
%description server
|
||||||
MySQL is a multi-user, multi-threaded SQL database server. MySQL is a
|
MySQL is a multi-user, multi-threaded SQL database server. MySQL is a
|
||||||
@ -320,7 +326,10 @@ Summary: Files for development of MySQL applications
|
|||||||
Requires: openssl-devel
|
Requires: openssl-devel
|
||||||
Requires: zlib-devel
|
Requires: zlib-devel
|
||||||
Requires: libzstd-devel
|
Requires: libzstd-devel
|
||||||
%{?with_conflicts:Conflicts: mariadb-devel}
|
%{?with_conflicts_mariadb:Conflicts: mariadb-devel}
|
||||||
|
%{?with_conflicts_mariadb:Conflicts: mariadb-connector-c-devel}
|
||||||
|
%{?with_provides_community_mysql:Provides: community-mysql-devel}
|
||||||
|
%{?with_obsoletes_community_mysql:Obsoletes: community-mysql-devel <= %obsolete_community_mysql_version}
|
||||||
|
|
||||||
%description devel
|
%description devel
|
||||||
MySQL is a multi-user, multi-threaded SQL database server. This
|
MySQL is a multi-user, multi-threaded SQL database server. This
|
||||||
@ -354,11 +363,10 @@ Requires: perl(Socket)
|
|||||||
Requires: perl(Sys::Hostname)
|
Requires: perl(Sys::Hostname)
|
||||||
Requires: perl(Test::More)
|
Requires: perl(Test::More)
|
||||||
Requires: perl(Time::HiRes)
|
Requires: perl(Time::HiRes)
|
||||||
%{?with_conflicts:Conflicts: mariadb-test}
|
|
||||||
%if %{with mysql_names}
|
%{?with_conflicts_mariadb:Conflicts: mariadb-test}
|
||||||
Provides: mysql-test = %{sameevr}
|
%{?with_provides_community_mysql:Provides: community-mysql-test}
|
||||||
Provides: mysql-test%{?_isa} = %{sameevr}
|
%{?with_obsoletes_community_mysql:Obsoletes: community-mysql-test <= %obsolete_community_mysql_version}
|
||||||
%endif
|
|
||||||
|
|
||||||
%description test
|
%description test
|
||||||
MySQL is a multi-user, multi-threaded SQL database server. This
|
MySQL is a multi-user, multi-threaded SQL database server. This
|
||||||
|
Loading…
Reference in New Issue
Block a user