]> TLD Linux GIT Repositories - packages/mysql.git/blobdiff - mysql.spec
- MySQL 8.2 from PLD
[packages/mysql.git] / mysql.spec
index f1b667e62fb8332d2598e79c6cd7b4dcb3aff1da..b01f597041934986f2f15369e34f2c500022d36b 100644 (file)
@@ -1,4 +1,6 @@
 # TODO:
+# - -DWITH_AUTHENTICATION_KERBEROS=ON (BR: MIT krb5)
+# - -DWITH_AUTHENTICATION_FIDO=ON (using system libfido?)
 # - mysqldump ... (invalid usage) prints to stdout not stderr (idiotic if you want to create dump and get usage in .sql)
 # - http://bugs.mysql.com/bug.php?id=16470
 # - innodb are dynamic (= as plugins) ?
 # - segfaults on select from non-mysql user (caused by builder environment):
 #     https://bugs.launchpad.net/pld-linux/+bug/381904
 #     (profiling disabled temporaily to workaround this)
-# - unpackaged files:
-#        /usr/COPYING.AGPLv3
-#        /usr/COPYING.GPLv2
-#        /usr/PATENTS
-#        /usr/README.md
-#        /usr/bin/mysqlxtest
-#        /usr/include/backup.h
-# NOTE:
-# - mysql 'root' user will be 'root' not 'mysql' with 5.7 package
-#   this is to make pld consistent what the rest of the world uses.
 #
 # Conditional build:
-%bcond_with    autodeps        # BR packages needed only for resolving deps
 %bcond_without innodb          # InnoDB storage engine support
 %bcond_without big_tables      # Support tables with more than 4G rows even on 32 bit platforms
 %bcond_without federated       # Federated storage engine support
 %bcond_without raid            # RAID support
 %bcond_without ssl             # OpenSSL support
-%bcond_with    systemtap       # systemtap/dtrace probes
+%bcond_without systemtap       # systemtap/dtrace probes
 %bcond_without tcpd            # libwrap (tcp_wrappers) support
 %bcond_with    sphinx          # Sphinx storage engine support
-%bcond_with    tokudb          # TokuDB
-%bcond_with    rocksdb         # RocksDB
-# mysql needs boost 1.59.0 and doesn't support newer/older boost versions
-%bcond_with    system_boost    # Use system boost package
-%bcond_with    tests           # FIXME: don't run correctly
+# mysql needs boost 1.77.0 and doesn't support newer/older boost versions
+%bcond_with    system_boost
+%bcond_without tests           # run test suite
 %bcond_with    ndb             # NDB is now a separate product, this here is broken, so disable it
-%bcond_with    coredumper      # coredumper support
+%bcond_without ldap            # LDAP auth support (requires MIT Kerberos)
 
-# tokudb is only supported on x86_64
-%ifnarch %{x8664}
-%undefine      with_rocksdb
-%undefine      with_tokudb
-%endif
-
-%define                rel     1
-%define                percona_rel     46
 Summary:       MySQL: a very fast and reliable SQL database engine
 Summary(de.UTF-8):     MySQL: ist eine SQL-Datenbank
 Summary(fr.UTF-8):     MySQL: un serveur SQL rapide et fiable
@@ -54,66 +35,77 @@ Summary(pt_BR.UTF-8):       MySQL: Um servidor SQL rápido e confiável
 Summary(ru.UTF-8):     MySQL - быстрый SQL-сервер
 Summary(uk.UTF-8):     MySQL - швидкий SQL-сервер
 Summary(zh_CN.UTF-8):  MySQL数据库服务器
-Name:          mysql
-Version:       5.7.42
-Release:       %{percona_rel}.%{rel}
-License:       GPL + MySQL FLOSS Exception
+%define majorver        8.2
+Name:          mysql%{majorver}
+Version:       8.2.0
+Release:        0.1
+License:       GPL v2 + MySQL FOSS License Exception
 Group:         Applications/Databases
-Source0:       https://www.percona.com/downloads/Percona-Server-5.7/LATEST/source/tarball/percona-server-%{version}-%{percona_rel}.tar.gz
-# Source0-md5: 6f937a7fe774edad0213a75e34df19d5
+#Source0Download: https://dev.mysql.com/downloads/mysql/8.2.html#downloads
+Source0:       http://cdn.mysql.com/Downloads/MySQL-%{majorver}/mysql-%{version}.tar.gz
+# Source0-md5: 9ddeecbdb046cd4a8a4340445206130d
 Source100:     http://www.sphinxsearch.com/files/sphinx-2.2.11-release.tar.gz
 # Source100-md5:       5cac34f3d78a9d612ca4301abfcbd666
 %if %{without system_boost}
-Source101:      http://downloads.sourceforge.net/boost/boost_1_59_0.tar.bz2
-# Source101-md5:       6aa9a5c6a4ca1016edd0ed1178e3cb87
+Source101:     http://downloads.sourceforge.net/boost/boost_1_77_0.tar.bz2
+# Source101-md5:       09dc857466718f27237144c6f2432d86
 %endif
-Source1:       %{name}.init
-Source2:       %{name}.sysconfig
-Source3:       %{name}.logrotate
+Source1:       mysql.init
+Source2:       mysql.sysconfig
+Source3:       mysql.logrotate
 Source4:       mysqld.conf
-Source5:       %{name}-clusters.conf
-Source7:       %{name}-ndb.init
-Source8:       %{name}-ndb.sysconfig
-Source9:       %{name}-ndb-mgm.init
-Source10:      %{name}-ndb-mgm.sysconfig
-Source11:      %{name}-ndb-cpc.init
-Source12:      %{name}-ndb-cpc.sysconfig
-Source13:      %{name}-client.conf
+Source5:       mysql-clusters.conf
+Source7:       mysql-ndb.init
+Source8:       mysql-ndb.sysconfig
+Source9:       mysql-ndb-mgm.init
+Source10:      mysql-ndb-mgm.sysconfig
+Source11:      mysql-ndb-cpc.init
+Source12:      mysql-ndb-cpc.sysconfig
+Source13:      mysql-client.conf
 Source14:      my.cnf
 Patch0:                mysql-opt.patch
-Patch1:                mysql-versioning.patch
-Patch2:                mysql-protobuf.patch
-Patch3:                build.patch
-Patch4:                mysql-sphinx.patch
-Patch5:                mysql-5.7-sphinx.patch
-Patch6:                mysql-chain-certs.patch
-Patch7:                mysql-dubious-exports.patch
-Patch8:                mysql-cmake.patch
-URL:           https://www.percona.com/software/mysql-database/percona-server
+Patch1:                mysql-system-xxhash.patch
+
+Patch17:       mysql-5.7-sphinx.patch
+Patch18:       mysql-sphinx.patch
+
+Patch24:       mysql-cmake.patch
+Patch25:       mysql-readline.patch
+
+Patch26:       mysqldumpslow-clusters.patch
+URL:           http://www.mysql.com/products/community/
 BuildRequires: bison >= 1.875
+%{?with_system_boost:BuildRequires:    boost-devel >= 1.77.0}
 BuildRequires: cmake >= 2.8.2
-BuildRequires: curl-devel
-BuildRequires: readline-devel >= 6.2
-BuildRequires: libstdc++-devel >= 5:4.0
-BuildRequires: automake
-%{?with_system_boost:BuildRequires:    boost-devel = 1.59.0}
+%{?with_ldap:BuildRequires:    cyrus-sasl-devel}
+# for configure and tests
+%{?with_ldap:BuildRequires:    cyrus-sasl-scram}
+#%{?with_ldap:BuildRequires:   krb5-devel}
+BuildRequires: libaio-devel
+BuildRequires: libevent-devel
 BuildRequires: libhsclient-devel
+BuildRequires: libstdc++-devel >= 5:7.1
 %{?with_tcpd:BuildRequires:    libwrap-devel}
-BuildRequires: lz4-devel >= 1:1.9.3
+BuildRequires: lz4-devel
 BuildRequires: mecab-devel
 BuildRequires: ncurses-devel >= 4.2
-%{?with_ssl:BuildRequires:     openssl-devel >= 0.9.7d}
+%{?with_ssl:BuildRequires:     openssl-devel >= 1.1.1}
+%{?with_ldap:BuildRequires:    openldap-devel}
 BuildRequires: pam-devel
-%{?with_autodeps:BuildRequires:        perl-DBI}
 BuildRequires: perl-devel >= 1:5.6.1
-BuildRequires: protobuf-devel
-BuildRequires: python3-modules
+BuildRequires: protobuf-devel >= 2.5
+BuildRequires: python-modules
+BuildRequires: readline-devel >= 6.2
 BuildRequires: rpcsvc-proto
+BuildRequires: rpm-build >= 4.6
 BuildRequires: rpm-perlprov >= 4.1-13
-BuildRequires: rpmbuild(macros) >= 1.597
+BuildRequires: rpmbuild(macros) >= 1.605
 BuildRequires: sed >= 4.0
 %{?with_systemtap:BuildRequires:       systemtap-sdt-devel}
-BuildRequires: zlib-devel
+BuildRequires: xxHash-devel
+BuildRequires: zlib-devel >= 1.2.12
+BuildRequires: zstd-devel
+Requires(post):        sed >= 4.0
 Requires(post,preun):  /sbin/chkconfig
 Requires(postun):      /usr/sbin/groupdel
 Requires(postun):      /usr/sbin/userdel
@@ -121,137 +113,134 @@ Requires(pre):  /bin/id
 Requires(pre): /usr/bin/getgid
 Requires(pre): /usr/sbin/groupadd
 Requires(pre): /usr/sbin/useradd
-Requires(post):        sed >= 4.0
 Requires:      %{name}-charsets = %{version}-%{release}
 Requires:      %{name}-libs = %{version}-%{release}
 Requires:      /usr/bin/setsid
 Requires:      rc-scripts >= 0.2.0
-Suggests:      mysql-client
+Suggests:      %{name}-client
 %{?with_tcpd:Suggests: tcp_wrappers}
 Suggests:      vim-syntax-mycnf
 Provides:      MySQL-server
 Provides:      group(mysql)
 Provides:      msqlormysql
 Provides:      user(mysql)
-Obsoletes:     MySQL
-Obsoletes:     mysql-server
+Obsoletes:     MySQL < 3.22.27
+Obsoletes:     mysql-server < 4
 Conflicts:     logrotate < 3.8.0
-BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+# "MySQL supports only 64-bit platforms."
+BuildArch:      %{x8664} %{arch64}
+BuildRoot:     %{tmpdir}/mysql-%{version}-root-%(id -u -n)
 
 %define                _libexecdir     %{_sbindir}
-%define                _localstatedir  /var/lib/mysql
+%define                _localstatedir  /var/lib/%{name}
 %define                _mysqlhome      /home/services/%{name}
 
 %description
-MySQL is a true multi-user, multi-threaded SQL (Structured
-Query Language) database server. SQL is the most popular database
-language in the world. MySQL is a client/server
-implementation that consists of a server daemon mysqld and many
-different client programs/libraries.
-
-The main goals of MySQL are speed, robustness and easy to
-use. MySQL was originally developed because we at Tcx needed
-a SQL server that could handle very big databases with magnitude
-higher speed than what any database vendor could offer to us. We have
-now been using MySQL since 1996 in a environment with more
-than 40 databases, 10,000 tables, of which more than 500 have more
-than 7 million rows. This is about 50G of mission critical data.
-
-The base upon which MySQL is built is a set of routines that
-have been used in a highly demanding production environment for many
-years. While MySQL is still in development, it already offers
-a rich and highly useful function set.
+MySQL is a true multi-user, multi-threaded SQL (Structured Query
+Language) database server. SQL is the most popular database language
+in the world. MySQL is a client/server implementation that consists of
+a server daemon mysqld and many different client programs/libraries.
+
+The main goals of MySQL are speed, robustness and easy to use. MySQL
+was originally developed because we at Tcx needed a SQL server that
+could handle very big databases with magnitude higher speed than what
+any database vendor could offer to us. We have now been using MySQL
+since 1996 in a environment with more than 40 databases, 10,000
+tables, of which more than 500 have more than 7 million rows. This is
+about 50G of mission critical data.
+
+The base upon which MySQL is built is a set of routines that have been
+used in a highly demanding production environment for many years.
+While MySQL is still in development, it already offers a rich and
+highly useful function set.
 
 %description -l fr.UTF-8
-MySQL est un serveur de bases de donnees SQL vraiment
-multi-usagers et multi-taches. Le langage SQL est le langage de bases
-de donnees le plus populaire au monde. MySQL est une
-implementation client/serveur qui consiste en un serveur (mysqld) et
-differents programmes/bibliotheques clientes.
-
-Les objectifs principaux de MySQL sont: vitesse, robustesse
-et facilite d'utilisation. MySQL fut originalement developpe
-parce que nous, chez Tcx, avions besoin d'un serveur SQL qui pouvait
-gerer de tres grandes bases de donnees avec une vitesse d'un ordre de
-magnitude superieur a ce que n'importe quel vendeur pouvait nous
-offrir. Nous utilisons MySQL depuis 1996 dans un
-environnement avec plus de 40 bases de donnees, 10000 tables,
-desquelles plus de 500 ont plus de 7 millions de lignes. Ceci
-represente environ 50G de donnees critiques.
-
-A la base de la conception de MySQL, on retrouve une serie de
-routines qui ont ete utilisees dans un environnement de production
-pendant plusieurs annees. Meme si MySQL est encore en
-developpement, il offre deja une riche et utile serie de fonctions.
+MySQL est un serveur de bases de donnees SQL vraiment multi-usagers et
+multi-taches. Le langage SQL est le langage de bases de donnees le
+plus populaire au monde. MySQL est une implementation client/serveur
+qui consiste en un serveur (mysqld) et differents
+programmes/bibliotheques clientes.
+
+Les objectifs principaux de MySQL sont: vitesse, robustesse et
+facilite d'utilisation. MySQL fut originalement developpe parce que
+nous, chez Tcx, avions besoin d'un serveur SQL qui pouvait gerer de
+tres grandes bases de donnees avec une vitesse d'un ordre de magnitude
+superieur a ce que n'importe quel vendeur pouvait nous offrir. Nous
+utilisons MySQL depuis 1996 dans un environnement avec plus de 40
+bases de donnees, 10000 tables, desquelles plus de 500 ont plus de 7
+millions de lignes. Ceci represente environ 50G de donnees critiques.
+
+A la base de la conception de MySQL, on retrouve une serie de routines
+qui ont ete utilisees dans un environnement de production pendant
+plusieurs annees. Meme si MySQL est encore en developpement, il offre
+deja une riche et utile serie de fonctions.
 
 %description -l pl.UTF-8
-MySQL to prawdziwie wieloużytkownikowy, wielowątkowy serwer
-baz danych SQL. SQL jest najpopularniejszym na świecie językiem
-używanym do baz danych. MySQL to implementacja klient/serwer
-składająca się z demona mysqld i wielu różnych programów i bibliotek
-klienckich.
-
-Głównymi celami MySQL-a są szybkość, potęga i łatwość
-użytkowania. MySQL oryginalnie był tworzony, ponieważ autorzy
-w Tcx potrzebowali serwera SQL do obsługi bardzo dużych baz danych z
-szybkością o wiele większą, niż mogli zaoferować inni producenci baz
-danych. Używają go od 1996 roku w środowisku z ponad 40 bazami danych,
-10 000 tabel, z których ponad 500 zawiera ponad 7 milionów rekordów -
-w sumie około 50GB krytycznych danych.
-
-Baza, na której oparty jest MySQL, składa się ze zbioru
-procedur, które były używane w bardzo wymagającym środowisku
-produkcyjnym przez wiele lat. Pomimo, że MySQL jest ciągle
-rozwijany, już oferuje bogaty i użyteczny zbiór funkcji.
+MySQL to prawdziwie wieloużytkownikowy, wielowątkowy serwer baz danych
+SQL. SQL jest najpopularniejszym na świecie językiem używanym do baz
+danych. MySQL to implementacja klient/serwer składająca się z demona
+mysqld i wielu różnych programów i bibliotek klienckich.
+
+Głównymi celami MySQL-a są szybkość, potęga i łatwość użytkowania.
+MySQL oryginalnie był tworzony, ponieważ autorzy w Tcx potrzebowali
+serwera SQL do obsługi bardzo dużych baz danych z szybkością o wiele
+większą, niż mogli zaoferować inni producenci baz danych. Używają go
+od 1996 roku w środowisku z ponad 40 bazami danych, 10 000 tabel, z
+których ponad 500 zawiera ponad 7 milionów rekordów - w sumie około
+50GB krytycznych danych.
+
+Baza, na której oparty jest MySQL, składa się ze zbioru procedur,
+które były używane w bardzo wymagającym środowisku produkcyjnym przez
+wiele lat. Pomimo, że MySQL jest ciągle rozwijany, już oferuje bogaty
+i użyteczny zbiór funkcji.
 
 %description -l de.UTF-8
-MySQL ist eine SQL-Datenbank. Allerdings ist sie im Gegensatz
-zu Oracle, DB2 oder PostgreSQL keine relationale Datenbank. Die Daten
+MySQL ist eine SQL-Datenbank. Allerdings ist sie im Gegensatz zu
+Oracle, DB2 oder PostgreSQL keine relationale Datenbank. Die Daten
 werden zwar in zweidimensionalen Tabellen gespeichert und können mit
 einem Primärschlüssel versehen werden. Es ist aber keine Definition
 eines Fremdschlüssels möglich. Der Benutzer ist somit bei einer
-MySQL-Datenbank völlig allein für die (referenzielle)
-Integrität der Daten verantwortlich. Allein durch die Nutzung externer
+MySQL-Datenbank völlig allein für die (referenzielle) Integrität der
+Daten verantwortlich. Allein durch die Nutzung externer
 Tabellenformate, wie InnoDB bzw Berkeley DB wird eine Relationalität
-ermöglicht. Diese Projekte sind aber getrennt von MySQL zu
-betrachten.
+ermöglicht. Diese Projekte sind aber getrennt von MySQL zu betrachten.
 
 %description -l pt_BR.UTF-8
-O MySQL é um servidor de banco de dados SQL realmente
-multiusuário e multi-tarefa. A linguagem SQL é a mais popular
-linguagem para banco de dados no mundo. O MySQL é uma
-implementação cliente/servidor que consiste de um servidor chamado
-mysqld e diversos programas/bibliotecas clientes. Os principais
-objetivos do MySQL são: velocidade, robustez e facilidade de
-uso. O MySQL foi originalmente desenvolvido porque nós na Tcx
-precisávamos de um servidor SQL que pudesse lidar com grandes bases de
-dados e com uma velocidade muito maior do que a que qualquer vendedor
-podia nos oferecer. Estamos usando o MySQL desde 1996 em um
-ambiente com mais de 40 bases de dados com 10.000 tabelas, das quais
-mais de 500 têm mais de 7 milhões de linhas. Isto é o equivalente a
-aproximadamente 50G de dados críticos. A base da construção do Percona
-Server é uma série de rotinas que foram usadas em um ambiente de
-produção com alta demanda por muitos anos. Mesmo o MySQL
-estando ainda em desenvolvimento, ele já oferece um conjunto de
+O MySQL é um servidor de banco de dados SQL realmente multiusuário e
+multi-tarefa. A linguagem SQL é a mais popular linguagem para banco de
+dados no mundo. O MySQL é uma implementação cliente/servidor que
+consiste de um servidor chamado mysqld e diversos
+programas/bibliotecas clientes. Os principais objetivos do MySQL são:
+velocidade, robustez e facilidade de uso. O MySQL foi originalmente
+desenvolvido porque nós na Tcx precisávamos de um servidor SQL que
+pudesse lidar com grandes bases de dados e com uma velocidade muito
+maior do que a que qualquer vendedor podia nos oferecer. Estamos
+usando o MySQL desde 1996 em um ambiente com mais de 40 bases de dados
+com 10.000 tabelas, das quais mais de 500 têm mais de 7 milhões de
+linhas. Isto é o equivalente a aproximadamente 50G de dados críticos.
+A base da construção do MySQL é uma série de rotinas que foram usadas
+em um ambiente de produção com alta demanda por muitos anos. Mesmo o
+MySQL estando ainda em desenvolvimento, ele já oferece um conjunto de
 funções muito ricas e úteis. Veja a documentação para maiores
 informações.
 
 %description -l ru.UTF-8
-MySQL - это SQL (Structured Query Language) сервер базы
´Ð°Ð½Ð½Ñ\8bÑ\85. MySQL Ð±Ñ\8bла Ð½Ð°Ð¿Ð¸Ñ\81ана Michael'ом (monty) Widenius'ом.
¡Ð¼. Ñ\84айл CREDITS Ð² Ð´Ð¸Ñ\81Ñ\82Ñ\80ибÑ\83Ñ\82иве Ð½Ð° Ð¿Ñ\80едмеÑ\82 Ð´Ñ\80Ñ\83гиÑ\85 Ñ\83Ñ\87аÑ\81Ñ\82ников Ð¿Ñ\80оекÑ\82а и
¿Ñ\80оÑ\87ей Ð¸Ð½Ñ\84оÑ\80маÑ\86ии Ð¾ MySQL.
+MySQL - это SQL (Structured Query Language) сервер базы данных. MySQL
±Ñ\8bла Ð½Ð°Ð¿Ð¸Ñ\81ана Michael'ом (monty) Widenius'ом. Ð¡Ð¼. Ñ\84айл CREDITS Ð²
´Ð¸Ñ\81Ñ\82Ñ\80ибÑ\83Ñ\82иве Ð½Ð° Ð¿Ñ\80едмеÑ\82 Ð´Ñ\80Ñ\83гиÑ\85 Ñ\83Ñ\87аÑ\81Ñ\82ников Ð¿Ñ\80оекÑ\82а Ð¸ Ð¿Ñ\80оÑ\87ей Ð¸Ð½Ñ\84оÑ\80маÑ\86ии
+о MySQL.
 
 %description -l uk.UTF-8
-MySQL - це SQL (Structured Query Language) сервер бази даних.
-MySQL було написано Michael'ом (monty) Widenius'ом. Див. файл
-CREDITS в дистрибутиві для інформації про інших учасників проекту та
\96нÑ\88оÑ\97 Ñ\96нÑ\84оÑ\80маÑ\86Ñ\96Ñ\97.
+MySQL - це SQL (Structured Query Language) сервер бази даних. MySQL
+було написано Michael'ом (monty) Widenius'ом. Див. файл CREDITS в
+дистрибутиві для інформації про інших учасників проекту та іншої
+інформації.
 
 %package charsets
 Summary:       MySQL - character sets definitions
 Summary(pl.UTF-8):     MySQL - definicje kodowań znaków
 Group:         Applications/Databases
+BuildArch:     noarch
 
 %description charsets
 This package contains character sets definitions needed by both client
@@ -269,12 +258,12 @@ Requires: %{name}-client = %{version}-%{release}
 Requires:      %{name}-libs = %{version}-%{release}
 
 %description extras
-MySQL additional utilities except Perl scripts (they may be
-found in %{name}-extras-perl package).
+MySQL additional utilities except Perl scripts (they may be found in
+%{name}-extras-perl package).
 
 %description extras -l pl.UTF-8
-Dodatkowe narzędzia do MySQL - z wyjątkiem skryptów Perla
-(które są w pakiecie %{name}-extras-perl).
+Dodatkowe narzędzia do MySQL - z wyjątkiem skryptów Perla (które są w
+pakiecie %{name}-extras-perl).
 
 %package extras-perl
 Summary:       MySQL additional utilities written in Perl
@@ -299,7 +288,7 @@ Group:              Applications/Databases
 Requires:      %{name}-charsets = %{version}-%{release}
 Requires:      %{name}-libs = %{version}-%{release}
 Requires:      readline >= 6.2
-Obsoletes:     MySQL-client
+Obsoletes:     MySQL-client < 3.22.27
 
 %description client
 This package contains the standard MySQL clients.
@@ -323,7 +312,8 @@ Este pacote contém os clientes padrão para o MySQL.
 Summary:       Shared libraries for MySQL
 Summary(pl.UTF-8):     Biblioteki współdzielone MySQL
 Group:         Libraries
-Obsoletes:     libmysql10
+Requires:      zlib >= 1.2.12
+Obsoletes:     libmysql10 < 4
 Obsoletes:     mysql-doc < 4.1.12
 
 %description libs
@@ -340,10 +330,10 @@ Summary(ru.UTF-8):        MySQL - хедеры и библиотеки разработ
 Summary(uk.UTF-8):     MySQL - хедери та бібліотеки програміста
 Group:         Development/Libraries
 Requires:      %{name}-libs = %{version}-%{release}
-%{?with_ssl:Requires: openssl-devel}
-Requires:      zlib-devel
-Obsoletes:     MySQL-devel
-Obsoletes:     libmysql10-devel
+%{?with_ssl:Requires:  openssl-devel >= 1.1.1}
+Requires:      zlib-devel >= 1.2.12
+Obsoletes:     MySQL-devel < 3.22.27
+Obsoletes:     libmysql10-devel < 4
 Obsoletes:     webscalesql-devel
 
 %description devel
@@ -361,8 +351,7 @@ klienckich MySQL.
 
 %description devel -l pt_BR.UTF-8
 Este pacote contém os arquivos de cabeçalho (header files) e
-bibliotecas necessárias para desenvolver aplicações clientes do
-MySQL.
+bibliotecas necessárias para desenvolver aplicações clientes do MySQL.
 
 %description devel -l ru.UTF-8
 Этот пакет содержит хедеры и библиотеки разработчика, необходимые для
@@ -379,7 +368,7 @@ Summary(ru.UTF-8):  MySQL - статические библиотеки
 Summary(uk.UTF-8):     MySQL - статичні бібліотеки
 Group:         Development/Libraries
 Requires:      %{name}-devel = %{version}-%{release}
-Obsoletes:     MySQL-static
+Obsoletes:     MySQL-static < 3.22.27
 
 %description static
 MySQL static libraries.
@@ -404,8 +393,8 @@ Summary(uk.UTF-8):  MySQL - бенчмарки
 Group:         Applications/Databases
 Requires:      %{name} = %{version}-%{release}
 Requires:      %{name}-client
-Requires:      perl(DBD::mysql)
-Obsoletes:     MySQL-bench
+Requires:      perl-DBD-mysql
+Obsoletes:     MySQL-bench < 3.22.27
 
 %description bench
 This package contains MySQL benchmark scripts and data.
@@ -414,16 +403,14 @@ This package contains MySQL benchmark scripts and data.
 Programy testujące szybkość serwera MySQL.
 
 %description bench -l pt_BR.UTF-8
-Este pacote contém medições de desempenho de scripts e dados do
-MySQL.
+Este pacote contém medições de desempenho de scripts e dados do MySQL.
 
 %description bench -l ru.UTF-8
 Этот пакет содержит скрипты и данные для оценки производительности
 MySQL.
 
 %description bench -l uk.UTF-8
-Цей пакет містить скрипти та дані для оцінки продуктивності Percona
-Server.
+Цей пакет містить скрипти та дані для оцінки продуктивності MySQL.
 
 %package doc
 Summary:       MySQL manual
@@ -443,8 +430,7 @@ Group:              Applications/Databases
 Requires:      %{name}-libs = %{version}-%{release}
 
 %description ndb
-This package contains the standard MySQL NDB Storage Engine
-Daemon.
+This package contains the standard MySQL NDB Storage Engine Daemon.
 
 %description ndb -l pl.UTF-8
 Ten pakiet zawiera standardowego demona silnika przechowywania danych
@@ -469,12 +455,10 @@ Group:            Applications/Databases
 Requires:      %{name}-libs = %{version}-%{release}
 
 %description ndb-mgm
-This package contains the standard MySQL NDB Management
-Daemon.
+This package contains the standard MySQL NDB Management Daemon.
 
 %description ndb-mgm -l pl.UTF-8
-Ten pakiet zawiera standardowego demona zarządzającego MySQL
-NDB.
+Ten pakiet zawiera standardowego demona zarządzającego MySQL NDB.
 
 %package ndb-cpc
 Summary:       MySQL - NDB CPC Daemon
@@ -489,32 +473,32 @@ This package contains the standard MySQL NDB CPC Daemon.
 Ten pakiet zawiera standardowego demona MySQL NDB CPC.
 
 %prep
-%setup -q -n percona-server-%{version}-%{percona_rel} %{?with_sphinx:-a100} %{!?with_system_boost:-a101}
+%setup -q %{?with_sphinx:-a100} %{!?with_system_boost:-a101} -n mysql-%{version}
 
-# we want to use old, mysql compatible client library name
-find . -name CMakeLists.txt -exec sed -i -e 's#perconaserverclient#mysqlclient#g' "{}" ";"
-sed -i -e 's#perconaserverclient#mysqlclient#g' libmysql/libmysql.{ver.in,map} scripts/mysql_config.*
+#%patch0 -p1
+# FIXME
+#%patch1 -p1
 
-%patch0 -p1
-%patch1 -p1
-%patch2 -p1
-%patch3 -p1
 %if %{with sphinx}
 # http://www.sphinxsearch.com/docs/manual-0.9.9.html#sphinxse-mysql51
 %{__mv} sphinx-*/mysqlse storage/sphinx
-%patch4 -p1
-%patch5 -p1
+%patch17 -p1
+%patch18 -p1
 %endif
-%patch6 -p1
-%patch7 -p1
-%patch8 -p1
+
+%patch24 -p1
+%patch25 -p1
+
+#%patch26 -p1
 
 # to get these files rebuild
 [ -f sql/sql_yacc.cc ] && %{__rm} sql/sql_yacc.cc
 [ -f sql/sql_yacc.h ] && %{__rm} sql/sql_yacc.h
 
-# map has more sane versioning that default "global everything" in ver.in
-#cp -p libmysql/libmysql.map libmysql/libmysql.ver.in
+# ensure sytstem lib
+# need to keep xxhash.[ch]
+# FIXME
+#%{__rm} -rv extra/lz4/lz4**
 
 %build
 install -d build
@@ -523,96 +507,73 @@ cd build
 # (it defaults to first cluster but user may change it to whatever
 # cluster it wants)
 
-%if "%{cc_version}" >= "7.0"
-FALLTHROUGH_OPT="-Wimplicit-fallthrough=0"
-%else
-FALLTHROUGH_OPT=
-%endif
-
 CPPFLAGS="%{rpmcppflags}" \
 %cmake .. \
+        -DCMAKE_EXECUTABLE_SUFFIX=string:%{majorver} \
        -DCMAKE_BUILD_TYPE=%{!?debug:RelWithDebInfo}%{?debug:Debug} \
-       -DCMAKE_C_FLAGS_DEBUG="-fno-omit-frame-pointer -fno-strict-aliasing $FALLTHROUGH_OPT" \
-       -DCMAKE_CXX_FLAGS_DEBUG="-fno-omit-frame-pointer -fno-strict-aliasing $FALLTHROUGH_OPT" \
-       -DCMAKE_C_FLAGS_RELWITHDEBINFO="%{rpmcflags} -DNDEBUG -fno-omit-frame-pointer -fno-strict-aliasing $FALLTHROUGH_OPT -Wno-shadow" \
-       -DCMAKE_CXX_FLAGS_RELWITHDEBINFO="%{rpmcxxflags} -DNDEBUG -fno-omit-frame-pointer -fno-strict-aliasing $FALLTHROUGH_OPT -Wno-shadow" \
-       -DCOMPILATION_COMMENT="TLD Linux MySQL RPM" \
+       -DCMAKE_C_FLAGS_RELWITHDEBINFO="%{rpmcflags} -DNDEBUG -fno-omit-frame-pointer -fno-strict-aliasing" \
+       -DCMAKE_CXX_FLAGS_RELWITHDEBINFO="%{rpmcxxflags} -DNDEBUG -fno-omit-frame-pointer -fno-strict-aliasing" \
+       -DCOMPILATION_COMMENT="PLD/Linux Distribution MySQL RPM" \
        -DCURSES_INCLUDE_PATH=/usr/include/ncurses \
        %{?with_systemtap:-DENABLE_DTRACE=ON} \
        -DFEATURE_SET="community" \
        -DINSTALL_LAYOUT=RPM \
        -DINSTALL_LIBDIR=%{_lib} \
+        -DINSTALL_PRIV_LIBDIR=%{_libdir}/%{name}/private \
        -DINSTALL_MYSQLTESTDIR_RPM="" \
        -DINSTALL_PLUGINDIR=%{_lib}/%{name}/plugin \
+        -DINSTALL_SECURE_FILE_PRIVDIR=/var/lib/%{name}-files \
        -DINSTALL_SQLBENCHDIR=%{_datadir} \
        -DINSTALL_SUPPORTFILESDIR=share/%{name}-support \
        -DINSTALL_MYSQLSHAREDIR=share/%{name} \
-       -DINSTALL_SECURE_FILE_PRIVDIR="" \
-       -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \
+        -DROUTER_INSTALL_LIBDIR=%{_libdir}/%{name}router/private \
+        -DROUTER_INSTALL_PLUGINDIR=%{_libdir}/%{name}router \
+       -DMYSQL_UNIX_ADDR=/var/lib/%{name}/mysql.sock \
        %{?debug:-DWITH_DEBUG=ON} \
        -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
-       -DWITH_FAST_MUTEXES=ON \
+       %{!?with_ldap:-DWITH_AUTHENTICATION_LDAP=OFF} \
        -DWITH_LIBWRAP=%{?with_tcpd:ON}%{!?with_tcpd:OFF} \
-       -DWITH_PAM=ON \
        -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
        -DWITH_PIC=ON \
-       -DWITH_SCALABILITY_METRICS=ON \
-       -DWITH_SSL=%{?with_ssl:system}%{!?with_ssl:no} \
-       -DWITH_UNIT_TESTS=%{?with_tests:ON}%{!?with_tests:OFF} \
-       -DWITH_COREDUMPER=%{?with_coredumper:ON}%{!?with_coredumper:OFF} \
-       %{!?with_tokudb:-DWITHOUT_TOKUDB=ON} \
-       %{!?with_rocksdb:-DWITHOUT_ROCKSDB=ON} \
-%if %{without system_boost}
-       %{!?with_system_boost:-DWITH_BOOST="$(pwd)/$(ls -1d ../boost_*)"} \
-%endif
+       %{?with_ldap:-DWITH_LDAP=system} \
+       -DWITH_KERBEROS=system \
        -DWITH_LIBEVENT=system \
        -DWITH_LZ4=system \
-       -DWITH_MECAB=system \
        -DWITH_PROTOBUF=system \
-       -DWITH_READLINE=system \
+       -DWITH_SASL=system \
+        -DWITH_UNIT_TESTS=%{?with_tests:ON}%{!?with_tests:OFF} \
+       -DWITH_SSL=%{?with_ssl:system}%{!?with_ssl:no} \
+       %{!?with_system_boost:-DWITH_BOOST="$(pwd)/$(ls -1d ../boost_*)"} \
        -DWITH_ZLIB=system \
+       -DWITH_EDITLINE=system \
+       -DWITH_MECAB=system \
        -DTMPDIR=/var/tmp
 
 %{__make}
 
-%if %{with tests}
-%{__make} test
-
-cd mysql-test
-
-MTR_BINDIR=$(pwd)/../build/ \
-%{__perl} ./mysql-test-run.pl \
-       --force \
-       --retry=0 \
-       --ssl \
-       --suite-timeout=720 \
-       --testcase-timeout=30 \
-       --mysqld=--binlog-format=mixed \
-       --force-restart \
-       --shutdown-timeout=60 \
-       --max-test-fail=0 \
-       --big-test \
-       --skip-test-list=unstable-tests
-%endif
+%{?with_tests:%{__make} test}
 
 %install
 rm -rf $RPM_BUILD_ROOT
 install -d $RPM_BUILD_ROOT/etc/{logrotate.d,rc.d/init.d,sysconfig,%{name},skel} \
-          $RPM_BUILD_ROOT/var/{log/{archive,}/%{name},lib/mysql} \
+          $RPM_BUILD_ROOT/var/{log/{archive,}/%{name},lib/{%{name},%{name}-files}} \
           $RPM_BUILD_ROOT%{_mysqlhome} \
           $RPM_BUILD_ROOT%{_libdir}
 
 %{__make} -C build install \
        DESTDIR=$RPM_BUILD_ROOT
 
-install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
+sed -e 's#{MYSQL_MAJOR}#%{majorver}#g' %{SOURCE1} > $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
+
 cp -a %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/%{name}
-cp -a %{SOURCE3} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}
+sed -e 's#{MYSQL_MAJOR}#%{majorver}#g' %{SOURCE3} > $RPM_BUILD_ROOT/etc/logrotate.d/%{name}
 # This is template for configuration file which is created after 'service mysql init'
-cp -a %{SOURCE4} mysqld.conf
-cp -a %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/clusters.conf
+sed -e 's#{MYSQL_MAJOR}#%{majorver}#g' %{SOURCE4} > mysqld.conf
+sed -e 's#{MYSQL_MAJOR}#%{majorver}#g' %{SOURCE5} > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/clusters.conf
 touch $RPM_BUILD_ROOT/var/log/%{name}/{mysqld,query,slow}.log
 
+mv $RPM_BUILD_ROOT/etc/logrotate.d/{mysqlrouter,%{name}router}
+
 # remove innodb directives from mysqld.conf if mysqld is configured without
 %if %{without innodb}
        cp mysqld.conf mysqld.tmp
@@ -646,62 +607,68 @@ sed -i -e '/libs/s/-lprobes_mysql//' $RPM_BUILD_ROOT%{_bindir}/mysql_config
 %{__rm} -r $RPM_BUILD_ROOT%{_datadir}/%{name}-support
 
 # rename not to be so generic name
-mv $RPM_BUILD_ROOT%{_bindir}/{,mysql_}resolve_stack_dump
-mv $RPM_BUILD_ROOT%{_mandir}/man1/{,mysql_}resolve_stack_dump.1
-
-# move to _sysconfdir
-#mv $RPM_BUILD_ROOT{%{_bindir},%{_sysconfdir}}/mysqlaccess.conf
 
 # not useful without -debug build
-%{!?debug:%{__rm} $RPM_BUILD_ROOT%{_bindir}/mysql_resolve_stack_dump}
-%{!?debug:%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysql_resolve_stack_dump.1}
 # generate symbols file, so one can generate backtrace using it
 # mysql_resolve_stack_dump -s %{_datadir}/%{name}/mysqld.sym -n mysqld.stack.
 # http://dev.mysql.com/doc/refman/5.0/en/using-stack-trace.html
 %{?debug:nm -n $RPM_BUILD_ROOT%{_sbindir}/mysqld > $RPM_BUILD_ROOT%{_datadir}/%{name}/mysqld.sym}
 
 # do not clobber users $PATH
-mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/mysql_plugin
-mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/mysql_upgrade
-mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/innochecksum
-mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/myisamchk
-mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/myisamlog
-mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/myisampack
-#mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/mysql_fix_privilege_tables
-mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/my_print_defaults
-sed -i -e 's#/usr/bin/my_print_defaults#%{_sbindir}/my_print_defaults#g' $RPM_BUILD_ROOT%{_bindir}/mysql_install_db
-mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/mysqlcheck
+%{__mv} $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/mysql_upgrade
+%{__mv} $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/innochecksum
+%{__mv} $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/myisamchk
+%{__mv} $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/myisamlog
+%{__mv} $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/myisampack
+#%{__mv} $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/mysql_fix_privilege_tables
+%{__mv} $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/my_print_defaults
+%{__mv} $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/mysqlcheck
 
 # delete - functionality in initscript / rpm
 # note: mysql_install_db (and thus resolveip) are needed by digikam
 %{__rm} $RPM_BUILD_ROOT%{_bindir}/mysqld_safe
 %{__rm} $RPM_BUILD_ROOT%{_bindir}/mysqld_multi
 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysqld_{multi,safe}*
-%{__rm} $RPM_BUILD_ROOT%{_datadir}/%{name}/errmsg-utf8.txt
+#%{__rm} $RPM_BUILD_ROOT%{_datadir}/%{name}/mysql-log-rotate
+#%{__rm} $RPM_BUILD_ROOT%{_datadir}/%{name}/mysql.server
+#%{__rm} $RPM_BUILD_ROOT%{_datadir}/%{name}/binary-configure
 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysql.server*
 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysqlman.1*
 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/comp_err.1*
 
 # we don't package those (we have no -test or -testsuite pkg) and some of them just segfault
-%{__rm} $RPM_BUILD_ROOT%{_bindir}/mysql_client_test
+%{__rm} $RPM_BUILD_ROOT%{_bindir}/{mysql_client_test,mysqlxtest}
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/plugin/test_udf_services.so
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/plugin/component_test_udf_services.so
 %{__rm} -r $RPM_BUILD_ROOT%{_datadir}/mysql-test
-# libmysqld examples
-%{__rm} $RPM_BUILD_ROOT%{_bindir}/mysql{_client_test_embedded,_embedded,test_embedded}
 
 # not needed
 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/plugin/libdaemon_example.*
 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/plugin/daemon_example.ini
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/plugin/udf_example.so
 
-# not an .info file
-%{__rm} $RPM_BUILD_ROOT%{_infodir}/mysql.info
+# test plugins
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/plugin/libtest*.so
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/plugin/rewrite_example.so
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/plugin/test_security_context.so
+
+# fix names for parallel coinstallation
+for f in $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/* ; do
+    fb=$(basename "$f")
+    mv "${f}" "${f}%{majorver}"
+    for m in $RPM_BUILD_ROOT%{_mandir}/man*; do
+        mnr=$(echo -n $m | tail -c 1)
+        if [ -f "${m}/${fb}.${mnr}" ]; then
+            mv "${m}/${fb}.${mnr}" "$m/${fb}%{majorver}.${mnr}"
+        fi
+    done
+done
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
 %pre
 %groupadd -g 89 mysql
-%useradd -u 89 -d %{_mysqlhome} -s /bin/false -g mysql -c "MySQL Server" mysql
+%useradd -u 89 -d %{_mysqlhome} -s /bin/false -g mysql -c "%{name} Server" mysql
 
 %post
 /sbin/ldconfig
@@ -743,7 +710,7 @@ fi
 
 %post ndb-cpc
 /sbin/chkconfig --add %{name}-ndb-cpc
-%service %{name}-ndb-cpc restart "mysql NDB CPC"
+%service %{name}-ndb-cpc restart "%{name} NDB CPC"
 
 %preun ndb-cpc
 if [ "$1" = "0" ]; then
@@ -751,115 +718,113 @@ if [ "$1" = "0" ]; then
        /sbin/chkconfig --del %{name}-ndb-cpc
 fi
 
-%post   libs -p /sbin/ldconfig
-%postun libs -p /sbin/ldconfig
+%post  libs -p /sbin/ldconfig
+%postun        libs -p /sbin/ldconfig
 
 %files
 %defattr(644,root,root,755)
-%doc build-ps/rpm/*.cnf
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name}
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name}router
 %attr(754,root,root) /etc/rc.d/init.d/%{name}
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name}
 %attr(640,root,mysql) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/clusters.conf
-%attr(755,root,root) %{_bindir}/ps_mysqld_helper
-%attr(755,root,root) %{_bindir}/ps_tokudb_admin
-%attr(755,root,root) %{_bindir}/ps-admin
-%attr(755,root,root) %{_sbindir}/innochecksum
-%attr(755,root,root) %{_sbindir}/my_print_defaults
-%attr(755,root,root) %{_sbindir}/myisamchk
-%attr(755,root,root) %{_sbindir}/myisamlog
-%attr(755,root,root) %{_sbindir}/myisampack
-%attr(755,root,root) %{_sbindir}/mysql_plugin
-%attr(755,root,root) %{_sbindir}/mysql_upgrade
-%attr(755,root,root) %{_sbindir}/mysqlcheck
-%attr(755,root,root) %{_sbindir}/mysqld
+%attr(755,root,root) %{_bindir}/ibd2sdi%{majorver}
+%attr(755,root,root) %{_bindir}/mysql_migrate_keyring%{majorver}
+%attr(755,root,root) %{_bindir}/mysqlrouter%{majorver}
+%attr(755,root,root) %{_bindir}/mysqlrouter_keyring%{majorver}
+%attr(755,root,root) %{_bindir}/mysqlrouter_passwd%{majorver}
+%attr(755,root,root) %{_bindir}/mysqlrouter_plugin_info%{majorver}
+%attr(755,root,root) %{_sbindir}/innochecksum%{majorver}
+%attr(755,root,root) %{_sbindir}/my_print_defaults%{majorver}
+%attr(755,root,root) %{_sbindir}/myisamchk%{majorver}
+%attr(755,root,root) %{_sbindir}/myisamlog%{majorver}
+%attr(755,root,root) %{_sbindir}/myisampack%{majorver}
+%attr(755,root,root) %{_sbindir}/mysql_upgrade%{majorver}
+%attr(755,root,root) %{_sbindir}/mysqlcheck%{majorver}
+%attr(755,root,root) %{_sbindir}/mysqld%{majorver}
+
 %dir %{_libdir}/%{name}
 %dir %{_libdir}/%{name}/plugin
 %attr(755,root,root) %{_libdir}/%{name}/plugin/adt_null.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/audit_log.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/auth_pam_compat.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/auth_pam.so
 %attr(755,root,root) %{_libdir}/%{name}/plugin/auth.so
 %attr(755,root,root) %{_libdir}/%{name}/plugin/auth_socket.so
 %attr(755,root,root) %{_libdir}/%{name}/plugin/auth_test_plugin.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/authentication_ldap_sasl_client.so
+#%attr(755,root,root) %{_libdir}/%{name}/plugin/authentication_fido_client.so
+#%{?with_ldap:%attr(755,root,root) %{_libdir}/%{name}/plugin/authentication_ldap_sasl_client.so}
+#%attr(755,root,root) %{_libdir}/%{name}/plugin/authentication_oci_client.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_audit_api_message_emit.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_keyring_file.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_log_filter_dragnet.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_log_sink_json.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_log_sink_syseventlog.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_mysqlbackup.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_mysqlx_global_reset.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_pfs_example.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_pfs_example_component_population.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_query_attributes.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_reference_cache.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_udf_*_func.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_validate_password.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/conflicting_variables.so
 %attr(755,root,root) %{_libdir}/%{name}/plugin/connection_control.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/data_masking.ini
-%attr(755,root,root) %{_libdir}/%{name}/plugin/data_masking.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/dialog.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/ddl_rewriter.so
 %attr(755,root,root) %{_libdir}/%{name}/plugin/group_replication.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/ha_mock.so
 %attr(755,root,root) %{_libdir}/%{name}/plugin/keyring_file.so
 %attr(755,root,root) %{_libdir}/%{name}/plugin/keyring_udf.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/keyring_vault.so
 %attr(755,root,root) %{_libdir}/%{name}/plugin/libpluginmecab.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/libfnv1a_udf.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/libfnv_udf.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/libmurmur_udf.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_framework.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_services.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_services_threaded.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_session_detach.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_session_info.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_session_in_thd.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_sql_2_sessions.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_sql_all_col_types.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_sql_cmds_1.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_sql_commit.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_sql_complex.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_sql_errors.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_sql_lock.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_sql_processlist.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_sql_replication.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_sql_shutdown.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_sql_sqlmode.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_sql_stored_procedures_functions.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_sql_views_triggers.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_x_sessions_deinit.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_x_sessions_init.so
 %attr(755,root,root) %{_libdir}/%{name}/plugin/locking_service.so
 %attr(755,root,root) %{_libdir}/%{name}/plugin/mypluglib.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/mysql_clone.so
 %attr(755,root,root) %{_libdir}/%{name}/plugin/mysql_no_login.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/mysqlx.so
 %attr(755,root,root) %{_libdir}/%{name}/plugin/qa_auth_client.so
 %attr(755,root,root) %{_libdir}/%{name}/plugin/qa_auth_interface.so
 %attr(755,root,root) %{_libdir}/%{name}/plugin/qa_auth_server.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/query_response_time.so
 %attr(755,root,root) %{_libdir}/%{name}/plugin/replication_observers_example_plugin.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/rewrite_example.so
 %attr(755,root,root) %{_libdir}/%{name}/plugin/rewriter.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/scalability_metrics.so
 %attr(755,root,root) %{_libdir}/%{name}/plugin/semisync_master.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/semisync_replica.so
 %attr(755,root,root) %{_libdir}/%{name}/plugin/semisync_slave.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/test_security_context.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/test_udf_services.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/semisync_source.so
 %attr(755,root,root) %{_libdir}/%{name}/plugin/validate_password.so
 %attr(755,root,root) %{_libdir}/%{name}/plugin/version_token.so
 %if %{with sphinx}
 %attr(755,root,root) %{_libdir}/%{name}/plugin/ha_sphinx.so
 %endif
-%if %{with tokudb}
-%attr(755,root,root) %{_bindir}/tokuft_logprint
-%attr(755,root,root) %{_bindir}/tokuftdump
-%attr(755,root,root) %{_libdir}/%{name}/plugin/ha_tokudb.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/tokudb_backup.so
-%attr(755,root,root) %{_libdir}/libHotBackup.so
-%endif
-%if %{with rocksdb}
-%attr(755,root,root) %{_bindir}/ldb
-%attr(755,root,root) %{_bindir}/mysql_ldb
-%attr(755,root,root) %{_bindir}/sst_dump
-%attr(755,root,root) %{_libdir}/%{name}/plugin/ha_rocksdb.so
-%endif
-# for plugins
-%{_mandir}/man1/innochecksum.1*
-%{_mandir}/man1/my_print_defaults.1*
-%{_mandir}/man1/myisamchk.1*
-%{_mandir}/man1/myisamlog.1*
-%{_mandir}/man1/myisampack.1*
-%{_mandir}/man1/mysql_plugin.1*
-%{_mandir}/man1/mysql_upgrade.1*
-%{_mandir}/man1/mysqlcheck.1*
-%{_mandir}/man8/mysqld.8*
+%dir %{_libdir}/%{name}/private
+%{_libdir}/%{name}/private/icudt*l
+%dir %{_libdir}/%{name}router
+%attr(755,root,root) %{_libdir}/%{name}router/connection_pool.so
+%attr(755,root,root) %{_libdir}/%{name}router/destination_status.so
+%attr(755,root,root) %{_libdir}/%{name}router/http_auth_backend.so
+%attr(755,root,root) %{_libdir}/%{name}router/http_auth_realm.so
+%attr(755,root,root) %{_libdir}/%{name}router/http_server.so
+%attr(755,root,root) %{_libdir}/%{name}router/io.so
+%attr(755,root,root) %{_libdir}/%{name}router/keepalive.so
+%attr(755,root,root) %{_libdir}/%{name}router/metadata_cache.so
+%attr(755,root,root) %{_libdir}/%{name}router/rest_api.so
+%attr(755,root,root) %{_libdir}/%{name}router/rest_connection_pool.so
+%attr(755,root,root) %{_libdir}/%{name}router/rest_metadata_cache.so
+%attr(755,root,root) %{_libdir}/%{name}router/rest_router.so
+%attr(755,root,root) %{_libdir}/%{name}router/rest_routing.so
+%attr(755,root,root) %{_libdir}/%{name}router/router_openssl.so
+%attr(755,root,root) %{_libdir}/%{name}router/router_protobuf.so
+%attr(755,root,root) %{_libdir}/%{name}router/routing.so
+%dir %{_libdir}/%{name}router/private
+%attr(755,root,root) %{_libdir}/%{name}router/private/libmysqlharness*.so*
+%attr(755,root,root) %{_libdir}/%{name}router/private/libmysqlrouter*.so*
+%{_mandir}/man1/ibd2sdi%{majorver}.1*
+%{_mandir}/man1/innochecksum%{majorver}.1*
+%{_mandir}/man1/my_print_defaults%{majorver}.1*
+%{_mandir}/man1/myisamchk%{majorver}.1*
+%{_mandir}/man1/myisamlog%{majorver}.1*
+%{_mandir}/man1/myisampack%{majorver}.1*
+%{_mandir}/man1/mysql_upgrade%{majorver}.1*
+%{_mandir}/man1/mysqlcheck%{majorver}.1*
+%{_mandir}/man1/mysqlrouter%{majorver}.1*
+%{_mandir}/man1/mysqlrouter_passwd%{majorver}.1*
+%{_mandir}/man1/mysqlrouter_plugin_info%{majorver}.1*
+%{_mandir}/man8/mysqld%{majorver}.8*
 
 %if %{?debug:1}0
 %attr(755,root,root) %{_bindir}/*resolve_stack_dump
@@ -869,25 +834,21 @@ fi
 
 %attr(700,mysql,mysql) %{_mysqlhome}
 # root:root is proper here for mysql.rpm while mysql:mysql is potential security hole
-%attr(751,root,root) /var/lib/mysql
+%attr(751,root,root) /var/lib/%{name}
+%attr(750,mysql,mysql) %dir /var/lib/%{name}-files
 %attr(750,mysql,mysql) %dir /var/log/%{name}
 %attr(750,mysql,mysql) %dir /var/log/archive/%{name}
 %attr(640,mysql,mysql) %ghost /var/log/%{name}/*
 
 # This is template for configuration file which is created after 'service mysql init'
 %{_datadir}/%{name}/mysqld.conf
-%{_datadir}/%{name}/install_rewriter.sql
-%{_datadir}/%{name}/mysql_security_commands.sql
-%{_datadir}/%{name}/mysql_sys_schema.sql
-%{_datadir}/%{name}/mysql_system_tables.sql
-%{_datadir}/%{name}/mysql_system_tables_data.sql
-%{_datadir}/%{name}/mysql_test_data_timezone.sql
-%{_datadir}/%{name}/uninstall_rewriter.sql
 
 %{_datadir}/%{name}/english
 %{_datadir}/%{name}/dictionary.txt
-%{_datadir}/%{name}/fill_help_tables.sql
-%{_datadir}/%{name}/innodb_memcached_config.sql
+%{_datadir}/%{name}/messages_to_clients.txt
+%{_datadir}/%{name}/messages_to_error_log.txt
+%{_datadir}/%{name}/install_rewriter.sql
+%{_datadir}/%{name}/uninstall_rewriter.sql
 # Don't mark these with %%lang. These are used depending
 # on database client settings.
 %{_datadir}/%{name}/bulgarian
@@ -921,51 +882,41 @@ fi
 
 %files extras
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/myisam_ftdump
-%attr(755,root,root) %{_bindir}/mysql_install_db
-%attr(755,root,root) %{_bindir}/mysql_secure_installation
-%attr(755,root,root) %{_bindir}/mysql_tzinfo_to_sql
-%attr(755,root,root) %{_bindir}/perror
-%attr(755,root,root) %{_bindir}/replace
-%attr(755,root,root) %{_bindir}/resolveip
-%{_mandir}/man1/myisam_ftdump.1*
-%{_mandir}/man1/mysql_install_db.1*
-%{_mandir}/man1/mysql_secure_installation.1*
-%{_mandir}/man1/mysql_tzinfo_to_sql.1*
-%{_mandir}/man1/perror.1*
-%{_mandir}/man1/replace.1*
-%{_mandir}/man1/resolveip.1*
+%attr(755,root,root) %{_bindir}/myisam_ftdump%{majorver}
+%attr(755,root,root) %{_bindir}/mysql_secure_installation%{majorver}
+%attr(755,root,root) %{_bindir}/mysql_ssl_rsa_setup%{majorver}
+%attr(755,root,root) %{_bindir}/mysql_tzinfo_to_sql%{majorver}
+%attr(755,root,root) %{_bindir}/perror%{majorver}
+%{_mandir}/man1/myisam_ftdump%{majorver}.1*
+%{_mandir}/man1/mysql_ssl_rsa_setup%{majorver}.1*
+%{_mandir}/man1/mysql_secure_installation%{majorver}.1*
+%{_mandir}/man1/mysql_tzinfo_to_sql%{majorver}.1*
+%{_mandir}/man1/perror%{majorver}.1*
 
 %files extras-perl
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/mysqldumpslow
-%{_mandir}/man1/mysqldumpslow.1*
+%attr(755,root,root) %{_bindir}/mysqldumpslow%{majorver}
+%{_mandir}/man1/mysqldumpslow%{majorver}.1*
 
 %files client
 %defattr(644,root,root,755)
-%attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/skel/.my.cnf
-%attr(755,root,root) %{_bindir}/lz4_decompress
-%attr(755,root,root) %{_bindir}/mysql
-%attr(755,root,root) %{_bindir}/mysql_config_editor
-%attr(755,root,root) %{_bindir}/mysql_ssl_rsa_setup
-%attr(755,root,root) %{_bindir}/mysqladmin
-%attr(755,root,root) %{_bindir}/mysqlbinlog
-%attr(755,root,root) %{_bindir}/mysqldump
-%attr(755,root,root) %{_bindir}/mysqlimport
-%attr(755,root,root) %{_bindir}/mysqlpump
-%attr(755,root,root) %{_bindir}/mysqlshow
-%attr(755,root,root) %{_bindir}/zlib_decompress
-%{_mandir}/man1/lz4_decompress.1*
-%{_mandir}/man1/mysql.1*
-%{_mandir}/man1/mysql_config_editor.1*
-%{_mandir}/man1/mysql_ssl_rsa_setup.1*
-%{_mandir}/man1/mysqladmin.1*
-%{_mandir}/man1/mysqlbinlog.1*
-%{_mandir}/man1/mysqldump.1*
-%{_mandir}/man1/mysqlimport.1*
-%{_mandir}/man1/mysqlpump.1*
-%{_mandir}/man1/mysqlshow.1*
-%{_mandir}/man1/zlib_decompress.1*
+%attr(600,root,root) %config(noreplace,missingok) %verify(not md5 mtime size) /etc/skel/.my.cnf
+%attr(755,root,root) %{_bindir}/mysql%{majorver}
+%attr(755,root,root) %{_bindir}/mysqladmin%{majorver}
+%attr(755,root,root) %{_bindir}/mysqlbinlog%{majorver}
+%attr(755,root,root) %{_bindir}/mysql_config_editor%{majorver}
+%attr(755,root,root) %{_bindir}/mysqldump%{majorver}
+%attr(755,root,root) %{_bindir}/mysqlimport%{majorver}
+%attr(755,root,root) %{_bindir}/mysqlpump%{majorver}
+%attr(755,root,root) %{_bindir}/mysqlshow%{majorver}
+%{_mandir}/man1/mysql%{majorver}.1*
+%{_mandir}/man1/mysqladmin%{majorver}.1*
+%{_mandir}/man1/mysqlbinlog%{majorver}.1*
+%{_mandir}/man1/mysql_config_editor%{majorver}.1*
+%{_mandir}/man1/mysqldump%{majorver}.1*
+%{_mandir}/man1/mysqlimport%{majorver}.1*
+%{_mandir}/man1/mysqlpump%{majorver}.1*
+%{_mandir}/man1/mysqlshow%{majorver}.1*
 
 %files libs
 %defattr(644,root,root,755)
@@ -973,7 +924,7 @@ fi
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/mysql-client.conf
 %{_sysconfdir}/%{name}/my.cnf
 %attr(755,root,root) %{_libdir}/libmysqlclient.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libmysqlclient.so.20
+%attr(755,root,root) %ghost %{_libdir}/libmysqlclient.so.22
 %if %{with ndb}
 %attr(755,root,root) %{_libdir}/libndbclient.so.*.*.*
 %attr(755,root,root) %ghost %{_libdir}/libndbclient.so.3
@@ -981,18 +932,16 @@ fi
 
 %files devel
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/mysql_config
+%attr(755,root,root) %{_bindir}/mysql_config%{majorver}
 %attr(755,root,root) %{_libdir}/libmysqlclient.so
-%{_pkgconfigdir}/mysqlclient.pc
 %if %{with ndb}
 %attr(755,root,root) %{_libdir}/libndbclient.so
 %endif
-# static-only so far
-%{_libdir}/libmysqld.a
+%{_pkgconfigdir}/mysqlclient.pc
 %{_libdir}/libmysqlservices.a
 %{_includedir}/mysql
 %{_aclocaldir}/mysql.m4
-%{_mandir}/man1/mysql_config.1*
+%{_mandir}/man1/mysql_config%{majorver}.1*
 
 %files static
 %defattr(644,root,root,755)
@@ -1001,68 +950,115 @@ fi
 %{_libdir}/libndbclient.a
 %endif
 
+# rename to test or split?
 %files bench
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/mysqlslap
-%attr(755,root,root) %{_bindir}/mysqltest
-%{_mandir}/man1/mysqlslap.1*
+%attr(755,root,root) %{_bindir}/comp_err%{majorver}
+%attr(755,root,root) %{_bindir}/mysql_keyring_encryption_test%{majorver}
+%attr(755,root,root) %{_bindir}/mysqlslap%{majorver}
+%attr(755,root,root) %{_bindir}/mysqltest%{majorver}
+%attr(755,root,root) %{_bindir}/mysqltest_safe_process%{majorver}
+%attr(755,root,root) %{_bindir}/zlib_decompress%{majorver}
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_example_component1.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_example_component2.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_example_component3.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_log_sink_test.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_audit_api_message.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_backup_lock_service.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_component_deinit.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_host_application_signal.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_mysql_current_thread_reader.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_mysql_runtime_error.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_mysql_system_variable_set.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_pfs_notification.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_pfs_resource_group.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_sensitive_system_variables.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_status_var_service.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_status_var_service_int.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_status_var_service_reg_only.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_status_var_service_str.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_status_var_service_unreg_only.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_string_service.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_string_service_charset.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_string_service_long.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_sys_var_service.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_sys_var_service_int.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_sys_var_service_same.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_sys_var_service_str.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_system_variable_source.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_table_access.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_udf_registration.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/pfs_example_plugin_employee.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/test_services_host_application_signal.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/test_services_plugin_registry.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/udf_example.so
+#%dir %{_datadir}/sql-bench
+#%{_datadir}/sql-bench/[CDRl]*
+#%attr(755,root,root) %{_datadir}/sql-bench/[bcgirst]*
+%{_mandir}/man1/lz4_decompress.1*
+%{_mandir}/man1/mysqlslap%{majorver}.1*
+%{_mandir}/man1/zlib_decompress%{majorver}.1*
+
+#%files doc
+#%defattr(644,root,root,755)
+#%doc Docs/manual.html Docs/manual_toc.html
 
 %if %{with ndb}
 %files ndb
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_sbindir}/ndbd
+%attr(755,root,root) %{_sbindir}/ndbd%{majorver}
 %attr(754,root,root) /etc/rc.d/init.d/%{name}-ndb
-%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name}-ndb
-%{_mandir}/man1/ndbd_redo_log_reader.1*
-%{_mandir}/man8/ndbd.8*
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/mysql-ndb
+%{_mandir}/man1/ndbd_redo_log_reader%{majorver}.1*
+%{_mandir}/man8/ndbd%{majorver}.8*
 
 %files ndb-client
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/ndb_config
-%attr(755,root,root) %{_bindir}/ndb_delete_all
-%attr(755,root,root) %{_bindir}/ndb_desc
-%attr(755,root,root) %{_bindir}/ndb_drop_index
-%attr(755,root,root) %{_bindir}/ndb_drop_table
-%attr(755,root,root) %{_bindir}/ndb_error_reporter
-%attr(755,root,root) %{_bindir}/ndb_mgm
-%attr(755,root,root) %{_bindir}/ndb_print_backup_file
-%attr(755,root,root) %{_bindir}/ndb_print_schema_file
-%attr(755,root,root) %{_bindir}/ndb_print_sys_file
-%attr(755,root,root) %{_bindir}/ndb_restore
-%attr(755,root,root) %{_bindir}/ndb_select_all
-%attr(755,root,root) %{_bindir}/ndb_select_count
-%attr(755,root,root) %{_bindir}/ndb_show_tables
-%attr(755,root,root) %{_bindir}/ndb_size.pl
-%attr(755,root,root) %{_bindir}/ndb_test_platform
-%attr(755,root,root) %{_bindir}/ndb_waiter
-%{_mandir}/man1/ndb_config.1*
-%{_mandir}/man1/ndb_delete_all.1*
-%{_mandir}/man1/ndb_desc.1*
-%{_mandir}/man1/ndb_drop_index.1*
-%{_mandir}/man1/ndb_drop_table.1*
-%{_mandir}/man1/ndb_error_reporter.1*
-%{_mandir}/man1/ndb_mgm.1*
-%{_mandir}/man1/ndb_print_backup_file.1*
-%{_mandir}/man1/ndb_print_schema_file.1*
-%{_mandir}/man1/ndb_print_sys_file.1*
-%{_mandir}/man1/ndb_restore.1*
-%{_mandir}/man1/ndb_select_all.1*
-%{_mandir}/man1/ndb_select_count.1*
-%{_mandir}/man1/ndb_show_tables.1*
-%{_mandir}/man1/ndb_size.pl.1*
-%{_mandir}/man1/ndb_waiter.1*
+%attr(755,root,root) %{_bindir}/ndb_config%{majorver}
+%attr(755,root,root) %{_bindir}/ndb_delete_all%{majorver}
+%attr(755,root,root) %{_bindir}/ndb_desc%{majorver}
+%attr(755,root,root) %{_bindir}/ndb_drop_index%{majorver}
+%attr(755,root,root) %{_bindir}/ndb_drop_table%{majorver}
+%attr(755,root,root) %{_bindir}/ndb_error_reporter%{majorver}
+%attr(755,root,root) %{_bindir}/ndb_mgm%{majorver}
+%attr(755,root,root) %{_bindir}/ndb_print_backup_file%{majorver}
+%attr(755,root,root) %{_bindir}/ndb_print_schema_file%{majorver}
+%attr(755,root,root) %{_bindir}/ndb_print_sys_file%{majorver}
+%attr(755,root,root) %{_bindir}/ndb_restore%{majorver}
+%attr(755,root,root) %{_bindir}/ndb_select_all%{majorver}
+%attr(755,root,root) %{_bindir}/ndb_select_count%{majorver}
+%attr(755,root,root) %{_bindir}/ndb_show_tables%{majorver}
+%attr(755,root,root) %{_bindir}/ndb_size.pl%{majorver}
+%attr(755,root,root) %{_bindir}/ndb_test_platform%{majorver}
+%attr(755,root,root) %{_bindir}/ndb_waiter%{majorver}
+%{_mandir}/man1/ndb_config%{majorver}.1*
+%{_mandir}/man1/ndb_delete_all%{majorver}.1*
+%{_mandir}/man1/ndb_desc%{majorver}.1*
+%{_mandir}/man1/ndb_drop_index%{majorver}.1*
+%{_mandir}/man1/ndb_drop_table%{majorver}.1*
+%{_mandir}/man1/ndb_error_reporter%{majorver}.1*
+%{_mandir}/man1/ndb_mgm%{majorver}.1*
+%{_mandir}/man1/ndb_print_backup_file%{majorver}.1*
+%{_mandir}/man1/ndb_print_schema_file%{majorver}.1*
+%{_mandir}/man1/ndb_print_sys_file%{majorver}.1*
+%{_mandir}/man1/ndb_restore%{majorver}.1*
+%{_mandir}/man1/ndb_select_all%{majorver}.1*
+%{_mandir}/man1/ndb_select_count%{majorver}.1*
+%{_mandir}/man1/ndb_show_tables%{majorver}.1*
+%{_mandir}/man1/ndb_size.pl%{majorver}.1*
+%{_mandir}/man1/ndb_waiter%{majorver}.1*
 
 %files ndb-mgm
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_sbindir}/ndb_mgmd
+%attr(755,root,root) %{_sbindir}/ndb_mgmd%{majorver}
 %attr(754,root,root) /etc/rc.d/init.d/%{name}-ndb-mgm
-%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name}-ndb-mgm
-%{_mandir}/man8/ndb_mgmd.8*
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/mysql-ndb-mgm
+%{_mandir}/man8/ndb_mgmd%{majorver}.8*
 
 %files ndb-cpc
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_sbindir}/ndb_cpcd
-%attr(754,root,root) /etc/rc.d/init.d/mysql-ndb-cpc
-%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name}-ndb-cpc
-%{_mandir}/man1/ndb_cpcd.1*
+%attr(755,root,root) %{_sbindir}/ndb_cpcd%{majorver}
+%attr(754,root,root) /etc/rc.d/init.d/%{name}-ndb-cpc
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/mysql-ndb-cpc
+%{_mandir}/man1/ndb_cpcd%{majorver}.1*
 %endif