]> TLD Linux GIT Repositories - packages/mysql.git/blob - mysql.spec
- fix bcond comment (breaks build)
[packages/mysql.git] / mysql.spec
1 # Conditional build:
2 %bcond_without  innodb          # InnoDB storage engine support
3 %bcond_without  big_tables      # Support tables with more than 4G rows even on 32 bit platforms
4 %bcond_without  federated       # Federated storage engine support
5 %bcond_without  raid            # RAID support
6 %bcond_without  ssl             # OpenSSL support
7 %bcond_with     systemtap       # systemtap/dtrace probes
8 %bcond_without  tcpd            # libwrap (tcp_wrappers) support
9 %bcond_with     sphinx          # Sphinx storage engine support
10 # mysql needs boost 1.77.0 and doesn't support newer/older boost versions
11 %bcond_with     system_boost
12 %bcond_with     tests           # run test suite
13 %bcond_with     ndb             # NDB is now a separate product, this here is broken, so disable it
14 %bcond_without  ldap            # LDAP auth support (requires MIT Kerberos)
15 %bcond_with     default         # default version of MySQL (with common and devel)
16
17 %define mysqlversion 8.4
18 %define mysqlpriority 84
19
20 Summary:        MySQL: a very fast and reliable SQL database engine
21 Summary(de.UTF-8):      MySQL: ist eine SQL-Datenbank
22 Summary(fr.UTF-8):      MySQL: un serveur SQL rapide et fiable
23 Summary(pl.UTF-8):      MySQL: bardzo szybka i niezawodna baza danych (SQL)
24 Summary(pt_BR.UTF-8):   MySQL: Um servidor SQL rápido e confiável
25 Summary(ru.UTF-8):      MySQL - быстрый SQL-сервер
26 Summary(uk.UTF-8):      MySQL - швидкий SQL-сервер
27 Summary(zh_CN.UTF-8):   MySQL数据库服务器
28 Name:           mysql-%{mysqlversion}
29 Version:        8.4.0
30 Release:        1
31 License:        GPL v2 + MySQL FOSS License Exception
32 Group:          Applications/Databases
33 Source0:        http://cdn.mysql.com/Downloads/MySQL-%{mysqlversion}/mysql-%{version}.tar.gz
34 # Source0-md5:  c3b1ccd1ba5b09f118ce6e27f0f0df98
35 Source100:      http://www.sphinxsearch.com/files/sphinx-2.2.11-release.tar.gz
36 # Source100-md5:        5cac34f3d78a9d612ca4301abfcbd666
37 %if %{without system_boost}
38 Source101:      http://downloads.sourceforge.net/boost/boost_1_77_0.tar.bz2
39 # Source101-md5:        09dc857466718f27237144c6f2432d86
40 %endif
41 Source1:        mysql.init
42 Source2:        mysql.sysconfig
43 Source3:        mysql.logrotate
44 Source4:        mysqld.conf
45 Source5:        mysql-clusters.conf
46 Source7:        mysql-ndb.init
47 Source8:        mysql-ndb.sysconfig
48 Source9:        mysql-ndb-mgm.init
49 Source10:       mysql-ndb-mgm.sysconfig
50 Source11:       mysql-ndb-cpc.init
51 Source12:       mysql-ndb-cpc.sysconfig
52 Source13:       mysql-client.conf
53 Source14:       my.cnf
54 Patch0:         no_relative_paths.patch
55 Patch1:         mysql-system-xxhash.patch
56
57 Patch17:        mysql-5.7-sphinx.patch
58 Patch18:        mysql-sphinx.patch
59
60 Patch24:        mysql-cmake.patch
61 Patch25:        mysql-readline.patch
62
63 URL:            http://www.mysql.com/products/community/
64 BuildRequires:  bison >= 1.875
65 %{?with_system_boost:BuildRequires:     boost-devel >= 1.77.0}
66 BuildRequires:  cmake >= 2.8.2
67 %{?with_ldap:BuildRequires:     cyrus-sasl-devel}
68 # for configure and tests
69 %{?with_ldap:BuildRequires:     cyrus-sasl-scram}
70 BuildRequires:  libaio-devel
71 BuildRequires:  libevent-devel
72 BuildRequires:  libhsclient-devel
73 BuildRequires:  libstdc++-devel >= 5:7.1
74 %{?with_tcpd:BuildRequires:     libwrap-devel}
75 BuildRequires:  lz4-devel
76 BuildRequires:  mecab-devel
77 BuildRequires:  ncurses-devel >= 4.2
78 %{?with_ssl:BuildRequires:      openssl-devel >= 1.1.1}
79 %{?with_ldap:BuildRequires:     openldap-devel}
80 BuildRequires:  pam-devel
81 BuildRequires:  perl-devel >= 1:5.6.1
82 BuildRequires:  protobuf-devel >= 2.5
83 BuildRequires:  python3-modules
84 BuildRequires:  readline-devel >= 6.2
85 BuildRequires:  rpcsvc-proto
86 BuildRequires:  rpm-build >= 4.6
87 BuildRequires:  rpm-perlprov >= 4.1-13
88 BuildRequires:  rpmbuild(macros) >= 1.605
89 BuildRequires:  sed >= 4.0
90 %{?with_systemtap:BuildRequires:        systemtap-sdt-devel}
91 BuildRequires:  xxHash-devel
92 BuildRequires:  zlib-devel >= 1.2.12
93 BuildRequires:  zstd-devel
94 Requires(post): sed >= 4.0
95 Requires(post,preun):   /sbin/chkconfig
96 Requires(postun):       /usr/sbin/groupdel
97 Requires(postun):       /usr/sbin/userdel
98 Requires(pre):  /bin/id
99 Requires(pre):  /usr/bin/getgid
100 Requires(pre):  /usr/sbin/groupadd
101 Requires(pre):  /usr/sbin/useradd
102 Requires:       alternatives
103 Requires:       %{name}-charsets = %{version}-%{release}
104 Requires:       %{name}-dirs = %{version}-%{release}
105 Requires:       %{name}-libs = %{version}-%{release}
106 Requires:       /usr/bin/setsid
107 Requires:       rc-scripts >= 0.2.0
108 Suggests:       %{name}-client
109 %{?with_tcpd:Suggests:  tcp_wrappers}
110 Suggests:       vim-syntax-mycnf
111 Provides:       MySQL-server
112 Provides:       group(mysql)
113 Provides:       msqlormysql
114 Provides:       user(mysql)
115 Obsoletes:      MySQL < 3.22.27
116 Obsoletes:      mysql-server < 4
117 Conflicts:      logrotate < 3.8.0
118 # "MySQL supports only 64-bit platforms."
119 BuildArch:      %{x8664} %{arch64}
120 BuildRoot:      %{tmpdir}/mysql-%{version}-root-%(id -u -n)
121
122 %define         _libexecdir     %{_sbindir}
123 %define         _localstatedir  /var/lib/%{name}
124
125 %define         mysqldatadir    share/mysql/%{mysqlversion}
126 %define         mysqllibdir     %{_lib}/mysql/%{mysqlversion}
127
128 %description
129 MySQL is a true multi-user, multi-threaded SQL (Structured Query
130 Language) database server. SQL is the most popular database language
131 in the world. MySQL is a client/server implementation that consists of
132 a server daemon mysqld and many different client programs/libraries.
133
134 The main goals of MySQL are speed, robustness and easy to use. MySQL
135 was originally developed because we at Tcx needed a SQL server that
136 could handle very big databases with magnitude higher speed than what
137 any database vendor could offer to us. We have now been using MySQL
138 since 1996 in a environment with more than 40 databases, 10,000
139 tables, of which more than 500 have more than 7 million rows. This is
140 about 50G of mission critical data.
141
142 The base upon which MySQL is built is a set of routines that have been
143 used in a highly demanding production environment for many years.
144 While MySQL is still in development, it already offers a rich and
145 highly useful function set.
146
147 %description -l fr.UTF-8
148 MySQL est un serveur de bases de donnees SQL vraiment multi-usagers et
149 multi-taches. Le langage SQL est le langage de bases de donnees le
150 plus populaire au monde. MySQL est une implementation client/serveur
151 qui consiste en un serveur (mysqld) et differents
152 programmes/bibliotheques clientes.
153
154 Les objectifs principaux de MySQL sont: vitesse, robustesse et
155 facilite d'utilisation. MySQL fut originalement developpe parce que
156 nous, chez Tcx, avions besoin d'un serveur SQL qui pouvait gerer de
157 tres grandes bases de donnees avec une vitesse d'un ordre de magnitude
158 superieur a ce que n'importe quel vendeur pouvait nous offrir. Nous
159 utilisons MySQL depuis 1996 dans un environnement avec plus de 40
160 bases de donnees, 10000 tables, desquelles plus de 500 ont plus de 7
161 millions de lignes. Ceci represente environ 50G de donnees critiques.
162
163 A la base de la conception de MySQL, on retrouve une serie de routines
164 qui ont ete utilisees dans un environnement de production pendant
165 plusieurs annees. Meme si MySQL est encore en developpement, il offre
166 deja une riche et utile serie de fonctions.
167
168 %description -l pl.UTF-8
169 MySQL to prawdziwie wieloużytkownikowy, wielowątkowy serwer baz danych
170 SQL. SQL jest najpopularniejszym na świecie językiem używanym do baz
171 danych. MySQL to implementacja klient/serwer składająca się z demona
172 mysqld i wielu różnych programów i bibliotek klienckich.
173
174 Głównymi celami MySQL-a są szybkość, potęga i łatwość użytkowania.
175 MySQL oryginalnie był tworzony, ponieważ autorzy w Tcx potrzebowali
176 serwera SQL do obsługi bardzo dużych baz danych z szybkością o wiele
177 większą, niż mogli zaoferować inni producenci baz danych. Używają go
178 od 1996 roku w środowisku z ponad 40 bazami danych, 10 000 tabel, z
179 których ponad 500 zawiera ponad 7 milionów rekordów - w sumie około
180 50GB krytycznych danych.
181
182 Baza, na której oparty jest MySQL, składa się ze zbioru procedur,
183 które były używane w bardzo wymagającym środowisku produkcyjnym przez
184 wiele lat. Pomimo, że MySQL jest ciągle rozwijany, już oferuje bogaty
185 i użyteczny zbiór funkcji.
186
187 %description -l de.UTF-8
188 MySQL ist eine SQL-Datenbank. Allerdings ist sie im Gegensatz zu
189 Oracle, DB2 oder PostgreSQL keine relationale Datenbank. Die Daten
190 werden zwar in zweidimensionalen Tabellen gespeichert und können mit
191 einem Primärschlüssel versehen werden. Es ist aber keine Definition
192 eines Fremdschlüssels möglich. Der Benutzer ist somit bei einer
193 MySQL-Datenbank völlig allein für die (referenzielle) Integrität der
194 Daten verantwortlich. Allein durch die Nutzung externer
195 Tabellenformate, wie InnoDB bzw Berkeley DB wird eine Relationalität
196 ermöglicht. Diese Projekte sind aber getrennt von MySQL zu betrachten.
197
198 %description -l pt_BR.UTF-8
199 O MySQL é um servidor de banco de dados SQL realmente multiusuário e
200 multi-tarefa. A linguagem SQL é a mais popular linguagem para banco de
201 dados no mundo. O MySQL é uma implementação cliente/servidor que
202 consiste de um servidor chamado mysqld e diversos
203 programas/bibliotecas clientes. Os principais objetivos do MySQL são:
204 velocidade, robustez e facilidade de uso. O MySQL foi originalmente
205 desenvolvido porque nós na Tcx precisávamos de um servidor SQL que
206 pudesse lidar com grandes bases de dados e com uma velocidade muito
207 maior do que a que qualquer vendedor podia nos oferecer. Estamos
208 usando o MySQL desde 1996 em um ambiente com mais de 40 bases de dados
209 com 10.000 tabelas, das quais mais de 500 têm mais de 7 milhões de
210 linhas. Isto é o equivalente a aproximadamente 50G de dados críticos.
211 A base da construção do MySQL é uma série de rotinas que foram usadas
212 em um ambiente de produção com alta demanda por muitos anos. Mesmo o
213 MySQL estando ainda em desenvolvimento, ele já oferece um conjunto de
214 funções muito ricas e úteis. Veja a documentação para maiores
215 informações.
216
217 %description -l ru.UTF-8
218 MySQL - это SQL (Structured Query Language) сервер базы данных. MySQL
219 была написана Michael'ом (monty) Widenius'ом. См. файл CREDITS в
220 дистрибутиве на предмет других участников проекта и прочей информации
221 о MySQL.
222
223 %description -l uk.UTF-8
224 MySQL - це SQL (Structured Query Language) сервер бази даних. MySQL
225 було написано Michael'ом (monty) Widenius'ом. Див. файл CREDITS в
226 дистрибутиві для інформації про інших учасників проекту та іншої
227 інформації.
228
229 %package charsets
230 Summary:        MySQL - character sets definitions
231 Summary(pl.UTF-8):      MySQL - definicje kodowań znaków
232 Group:          Applications/Databases
233 Requires:       %{name}-dirs = %{version}-%{release}
234 BuildArch:      noarch
235
236 %description charsets
237 This package contains character sets definitions needed by both client
238 and server.
239
240 %description charsets -l pl.UTF-8
241 Ten pakiet zawiera definicje kodowań znaków potrzebne dla serwera i
242 klienta.
243
244 %package -n mysql-common
245 Summary:        Common MySQL files and directories
246 Summary(pl.UTF-8):      MySQL - wspólne pliki i katalogi
247 Group:          Applicataion/Databases
248
249 %description -n mysql-common
250 Common MySQL files and directories.
251
252 %description -n mysql-common -l pl.UTF-8
253 MySQL - wspólne pliki i katalogi.
254
255 %package dirs
256 Summary:        Common directories for MysSQL %{mysqlversion}
257 Summary(pl.UTF-8):      Wspólne pliki i katalogi dla MySQL %{mysqlversion}
258 Group:          Applicataion/Databases
259 Requires:       mysql-common >= 8.0.0
260
261 %description dirs
262 Common directories for MysSQL %{mysqlversion}
263
264 %description dirs -l pl.UTF-8
265 Wspólne pliki i katalogi dla MySQL %{mysqlversion}
266
267 %package extras
268 Summary:        MySQL additional utilities
269 Summary(pl.UTF-8):      Dodatkowe narzędzia do MySQL
270 Group:          Applications/Databases
271 Requires:       alternatives
272 Requires:       %{name}-client = %{version}-%{release}
273 Requires:       %{name}-dirs = %{version}-%{release}
274 Requires:       %{name}-libs = %{version}-%{release}
275
276 %description extras
277 MySQL additional utilities except Perl scripts (they may be found in
278 %{name}-extras-perl package).
279
280 %description extras -l pl.UTF-8
281 Dodatkowe narzędzia do MySQL - z wyjątkiem skryptów Perla (które są w
282 pakiecie %{name}-extras-perl).
283
284 %package extras-perl
285 Summary:        MySQL additional utilities written in Perl
286 Summary(pl.UTF-8):      Dodatkowe narzędzia do MySQL napisane w Perlu
287 Group:          Applications/Databases
288 Requires:       alternatives
289 Requires:       %{name}-extras = %{version}-%{release}
290 Requires:       perl-DBD-mysql
291
292 %description extras-perl
293 MySQL additional utilities written in Perl.
294
295 %description extras-perl -l pl.UTF-8
296 Dodatkowe narzędzia do MySQL napisane w Perlu.
297
298 %package client
299 Summary:        MySQL - Client
300 Summary(pl.UTF-8):      MySQL - Klient
301 Summary(pt.UTF-8):      MySQL - Cliente
302 Summary(ru.UTF-8):      MySQL клиент
303 Summary(uk.UTF-8):      MySQL клієнт
304 Group:          Applications/Databases
305 Requires:       alternatives
306 Requires:       %{name}-charsets = %{version}-%{release}
307 Requires:       %{name}-dirs = %{version}-%{release}
308 Requires:       %{name}-libs = %{version}-%{release}
309 Requires:       readline >= 6.2
310 Obsoletes:      MySQL-client < 3.22.27
311
312 %description client
313 This package contains the standard MySQL clients.
314
315 %description client -l fr.UTF-8
316 Ce package contient les clients MySQL standards.
317
318 %description client -l pl.UTF-8
319 Standardowe programy klienckie MySQL.
320
321 %description client -l pt_BR.UTF-8
322 Este pacote contém os clientes padrão para o MySQL.
323
324 %description client -l ru.UTF-8
325 Этот пакет содержит только клиент MySQL.
326
327 %description client -l uk.UTF-8
328 Цей пакет містить тільки клієнта MySQL.
329
330 %package libs
331 Summary:        Shared libraries for MySQL
332 Summary(pl.UTF-8):      Biblioteki współdzielone MySQL
333 Group:          Libraries
334 Requires:       %{name}-dirs = %{version}-%{release}
335 Requires:       zlib >= 1.2.12
336 Provides:       mysql-libs = %{version}-%{release}
337 Obsoletes:      libmysql10 < 4
338 Obsoletes:      mysql-doc < 4.1.12
339
340 %description libs
341 Shared libraries for MySQL.
342
343 %description libs -l pl.UTF-8
344 Biblioteki współdzielone MySQL.
345
346 %package -n mysql-devel
347 Summary:        MySQL - development header files and other files
348 Summary(pl.UTF-8):      MySQL - Pliki nagłówkowe i inne dla programistów
349 Summary(pt.UTF-8):      MySQL - Medições de desempenho
350 Summary(ru.UTF-8):      MySQL - хедеры и библиотеки разработчика
351 Summary(uk.UTF-8):      MySQL - хедери та бібліотеки програміста
352 Group:          Development/Libraries
353 Requires:       %{name}-dirs = %{version}-%{release}
354 Requires:       %{name}-libs = %{version}-%{release}
355 %{?with_ssl:Requires:   openssl-devel >= 1.1.1}
356 Requires:       zlib-devel >= 1.2.12
357 Obsoletes:      MySQL-devel < 3.22.27
358 Obsoletes:      libmysql10-devel < 4
359 Obsoletes:      webscalesql-devel
360
361 %description -n mysql-devel
362 This package contains the development header files and other files
363 necessary to develop MySQL client applications.
364
365 %description -n mysql-devel -l fr.UTF-8
366 Ce package contient les fichiers entetes et les librairies de
367 developpement necessaires pour developper des applications clientes
368 MySQL.
369
370 %description -n mysql-devel -l pl.UTF-8
371 Pliki nagłówkowe i inne pliki konieczne do kompilacji aplikacji
372 klienckich MySQL.
373
374 %description -n mysql-devel -l pt_BR.UTF-8
375 Este pacote contém os arquivos de cabeçalho (header files) e
376 bibliotecas necessárias para desenvolver aplicações clientes do MySQL.
377
378 %description -n mysql-devel -l ru.UTF-8
379 Этот пакет содержит хедеры и библиотеки разработчика, необходимые для
380 разработки клиентских приложений.
381
382 %description -n mysql-devel -l uk.UTF-8
383 Цей пакет містить хедери та бібліотеки програміста, необхідні для
384 розробки програм-клієнтів.
385
386 %package -n mysql-static
387 Summary:        MySQL static libraries
388 Summary(pl.UTF-8):      Biblioteki statyczne MySQL
389 Summary(ru.UTF-8):      MySQL - статические библиотеки
390 Summary(uk.UTF-8):      MySQL - статичні бібліотеки
391 Group:          Development/Libraries
392 Requires:       mysql-devel = %{version}-%{release}
393 Obsoletes:      MySQL-static < 3.22.27
394
395 %description -n mysql-static
396 MySQL static libraries.
397
398 %description -n mysql-static -l pl.UTF-8
399 Biblioteki statyczne MySQL.
400
401 %description -n mysql-static -l ru.UTF-8
402 Этот пакет содержит статические библиотеки разработчика, необходимые
403 для разработки клиентских приложений.
404
405 %description -n mysql-static -l uk.UTF-8
406 Цей пакет містить статичні бібліотеки програміста, необхідні для
407 розробки програм-клієнтів.
408
409 %package ndb
410 Summary:        MySQL - NDB Storage Engine Daemon
411 Summary(pl.UTF-8):      MySQL - demon silnika przechowywania danych NDB
412 Group:          Applications/Databases
413 Requires:       alternatives
414 Requires:       %{name}-dirs = %{version}-%{release}
415 Requires:       %{name}-libs = %{version}-%{release}
416
417 %description ndb
418 This package contains the standard MySQL NDB Storage Engine Daemon.
419
420 %description ndb -l pl.UTF-8
421 Ten pakiet zawiera standardowego demona silnika przechowywania danych
422 NDB.
423
424 %package ndb-client
425 Summary:        MySQL - NDB Clients
426 Summary(pl.UTF-8):      MySQL - programy klienckie NDB
427 Group:          Applications/Databases
428 Requires:       alternatives
429 Requires:       %{name}-dirs = %{version}-%{release}
430 Requires:       %{name}-libs = %{version}-%{release}
431
432 %description ndb-client
433 This package contains the standard MySQL NDB Clients.
434
435 %description ndb-client -l pl.UTF-8
436 Ten pakiet zawiera standardowe programy klienckie MySQL NDB.
437
438 %package ndb-mgm
439 Summary:        MySQL - NDB Management Daemon
440 Summary(pl.UTF-8):      MySQL - demon zarządzający NDB
441 Group:          Applications/Databases
442 Requires:       alternatives
443 Requires:       %{name}-dirs = %{version}-%{release}
444 Requires:       %{name}-libs = %{version}-%{release}
445
446 %description ndb-mgm
447 This package contains the standard MySQL NDB Management Daemon.
448
449 %description ndb-mgm -l pl.UTF-8
450 Ten pakiet zawiera standardowego demona zarządzającego MySQL NDB.
451
452 %package ndb-cpc
453 Summary:        MySQL - NDB CPC Daemon
454 Summary(pl.UTF-8):      MySQL - demon NDB CPC
455 Group:          Applications/Databases
456 Requires:       alternatives
457 Requires:       %{name}-dirs = %{version}-%{release}
458 Requires:       %{name}-libs = %{version}-%{release}
459
460 %description ndb-cpc
461 This package contains the standard MySQL NDB CPC Daemon.
462
463 %description ndb-cpc -l pl.UTF-8
464 Ten pakiet zawiera standardowego demona MySQL NDB CPC.
465
466 %package router
467 Summary:        MySQL Router
468 Summary(pl.UTF-8):      MySQL Router
469 Group:          Applications/Databases
470 Requires:       alternatives
471 Requires:       %{name}-dirs = %{version}-%{release}
472 Requires:       %{name}-libs = %{version}-%{release}
473
474 %description router
475 The MySQL Router software delivers a fast, multi-threaded way of
476 routing connections from MySQL Clients to MySQL Servers.
477
478 %description router -l pl.UTF-8
479 Oprogramowanie MySQL Router zapewnia szybki i wielowątkowy sposób
480 przekierowywania połączeń od klientów MySQL do serwerów MySQL.
481
482 %prep
483 %setup -q %{?with_sphinx:-a100} %{!?with_system_boost:-a101} -n mysql-%{version}
484
485 %patch0 -p1
486 %patch1 -p1
487
488 %if %{with sphinx}
489 # http://www.sphinxsearch.com/docs/manual-0.9.9.html#sphinxse-mysql51
490 %{__mv} sphinx-*/mysqlse storage/sphinx
491 %patch17 -p1
492 %patch18 -p1
493 %endif
494
495 %patch24 -p1
496 %patch25 -p1
497
498 # to get these files rebuild
499 [ -f sql/sql_yacc.cc ] && %{__rm} sql/sql_yacc.cc
500 [ -f sql/sql_yacc.h ] && %{__rm} sql/sql_yacc.h
501
502 # ensure sytstem lib
503 # need to keep xxhash.[ch]
504 %{__rm} -rv extra/lz4/lz4**
505
506 %build
507 install -d build
508 cd build
509 # NOTE that /var/lib/mysql/mysql.sock is symlink to real sock file
510 # (it defaults to first cluster but user may change it to whatever
511 # cluster it wants)
512
513 CPPFLAGS="%{rpmcppflags}" \
514 %cmake .. \
515         -DCMAKE_BUILD_TYPE=%{!?debug:RelWithDebInfo}%{?debug:Debug} \
516         -DCMAKE_C_FLAGS_RELWITHDEBINFO="%{rpmcflags} -DNDEBUG -fno-omit-frame-pointer -fno-strict-aliasing" \
517         -DCMAKE_CXX_FLAGS_RELWITHDEBINFO="%{rpmcxxflags} -DNDEBUG -fno-omit-frame-pointer -fno-strict-aliasing" \
518         -DCOMPILATION_COMMENT="TLD Linux MySQL RPM" \
519         -DCURSES_INCLUDE_PATH=/usr/include/ncurses \
520         %{?with_systemtap:-DENABLE_DTRACE=ON} \
521         -DFEATURE_SET="community" \
522         -DINSTALL_LAYOUT=RPM \
523         -DINSTALL_BINDIR=%{mysqllibdir}/bin \
524         -DINSTALL_SBINDIR=%{mysqllibdir}/sbin \
525         -DINSTALL_MANDIR=%{mysqldatadir}/man \
526         -DINSTALL_LIBDIR=%{_lib} \
527         -DINSTALL_PRIV_LIBDIR=%{_libdir}/mysql/%{mysqlversion}/private \
528         -DINSTALL_MYSQLTESTDIR_RPM="" \
529         -DINSTALL_MYSQLDATADIR=/var/lib/mysql/%{mysqlversion} \
530         -DINSTALL_PLUGINDIR=%{_lib}/mysql/%{mysqlversion}/plugin \
531         -DINSTALL_SECURE_FILE_PRIVDIR=/var/lib/mysql-files/%{mysqlversion} \
532         -DINSTALL_SQLBENCHDIR=%{_datadir} \
533         -DINSTALL_SUPPORTFILESDIR=share/mysql/%{mysqlversion}/support \
534         -DINSTALL_MYSQLSHAREDIR=share/mysql/%{mysqlversion}/lang \
535         -DINSTALL_MYSQLTESTDIR=share/mysql/%{mysqlversion}/test \
536         -DROUTER_INSTALL_DATADIR=/var/lib/mysqlrouter/%{mysqlversion} \
537         -DROUTER_INSTALL_LIBDIR=%{_libdir}/mysql/%{mysqlversion}/router/private \
538         -DROUTER_INSTALL_LOGDIR=/var/log/mysqlrouter/%{mysqlversion} \
539         -DROUTER_INSTALL_PLUGINDIR=%{_libdir}/mysql/%{mysqlversion}/router \
540         -DMYSQL_UNIX_ADDR=/var/lib/mysql/%{mysqlversion}/mysql.sock \
541         %{?debug:-DWITH_DEBUG=ON} \
542         -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
543         %{!?with_ldap:-DWITH_AUTHENTICATION_LDAP=OFF} \
544         -DWITH_LIBWRAP=%{?with_tcpd:ON}%{!?with_tcpd:OFF} \
545         -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
546         -DWITH_PIC=ON \
547         %{?with_ldap:-DWITH_LDAP=system} \
548         -DWITH_KERBEROS=system \
549         -DWITH_LIBEVENT=system \
550         -DWITH_LZ4=system \
551         -DWITH_PROTOBUF=system \
552         -DWITH_SASL=system \
553         -DWITH_UNIT_TESTS=%{?with_tests:ON}%{!?with_tests:OFF} \
554         -DWITH_SSL=%{?with_ssl:system}%{!?with_ssl:no} \
555         %{!?with_system_boost:-DWITH_BOOST="$(pwd)/$(ls -1d ../boost_*)"} \
556         -DWITH_ZLIB=system \
557         -DWITH_EDITLINE=system \
558         -DWITH_MECAB=system \
559         -DTMPDIR=/var/tmp
560
561 %{__make}
562
563 %{?with_tests:%{__make} test}
564
565 %install
566 rm -rf $RPM_BUILD_ROOT
567 install -d $RPM_BUILD_ROOT/etc/{ld.so.conf.d,logrotate.d,rc.d/init.d,sysconfig,mysql/%{mysqlversion},skel} \
568            $RPM_BUILD_ROOT/var/{log/{archive,}/{mysql,mysqlrouter}/%{mysqlversion},lib/{mysql,mysql-files,mysqlrouter}/%{mysqlversion}} \
569            $RPM_BUILD_ROOT%{_libdir}
570
571 %{__make} -C build install \
572         DESTDIR=$RPM_BUILD_ROOT
573
574 sed -e 's,@mysqlbindir@,%{_libdir}/mysql/%{mysqlversion}/bin,g; s,@mysqlsbindir@,%{_libdir}/mysql/%{mysqlversion}/sbin,g; s,@mysqlversion@,%{mysqlversion},g;' %{SOURCE1} >$RPM_BUILD_ROOT/etc/rc.d/init.d/mysql-%{mysqlversion}
575 sed -e 's,@mysqlversion@,%{mysqlversion},g;' %{SOURCE2} >$RPM_BUILD_ROOT/etc/sysconfig/mysql-%{mysqlversion}
576 sed -e 's,@mysqlversion@,%{mysqlversion},g;' %{SOURCE3} >$RPM_BUILD_ROOT/etc/logrotate.d/mysql-%{mysqlversion}
577 # This is template for configuration file which is created after 'service mysql init'
578 sed -e 's,@mysqlversion@,%{mysqlversion},g;' %{SOURCE4} >mysqld.conf
579 sed -e 's,@mysqlversion@,%{mysqlversion},g;' %{SOURCE5} >$RPM_BUILD_ROOT%{_sysconfdir}/mysql/%{mysqlversion}/clusters.conf
580 touch $RPM_BUILD_ROOT/var/log/mysql/%{mysqlversion}/{mysqld,query,slow}.log
581 touch $RPM_BUILD_ROOT/var/log/mysqlrouter/%{mysqlversion}/mysqlrouter.log
582
583 mv $RPM_BUILD_ROOT/etc/logrotate.d/{mysqlrouter,%{name}-router}
584
585 echo "%{_libdir}/mysql/%{mysqlversion}/router/private" >$RPM_BUILD_ROOT/etc/ld.so.conf.d/%{name}-router.conf
586
587 # remove innodb directives from mysqld.conf if mysqld is configured without
588 %if %{without innodb}
589         cp mysqld.conf mysqld.tmp
590         awk 'BEGIN { RS="\n\n" } !/innodb/ { printf("%s\n\n", $0) }' < mysqld.tmp > mysqld.conf
591 %endif
592
593 # remove berkeley-db directives from mysqld.conf if mysqld is configured without
594 cp mysqld.conf mysqld.tmp
595 awk 'BEGIN { RS="\n\n" } !/bdb/ { printf("%s\n\n", $0) }' < mysqld.tmp > mysqld.conf
596
597 cp -a mysqld.conf $RPM_BUILD_ROOT%{_datadir}/mysql/%{mysqlversion}/mysqld.conf
598 cp -a %{SOURCE13} $RPM_BUILD_ROOT%{_sysconfdir}/mysql/%{mysqlversion}/mysql-client.conf
599 ln -s mysql-client.conf $RPM_BUILD_ROOT%{_sysconfdir}/mysql/%{mysqlversion}/my.cnf
600 cp -a %{SOURCE14} $RPM_BUILD_ROOT/etc/skel/.my.cnf
601
602 # NDB
603 %if %{with ndb}
604 install -p %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}-ndb
605 cp -a %{SOURCE8} $RPM_BUILD_ROOT/etc/sysconfig/%{name}-ndb
606 install -p %{SOURCE9} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}-ndb-mgm
607 cp -a %{SOURCE10} $RPM_BUILD_ROOT/etc/sysconfig/%{name}-ndb-mgm
608 install -p %{SOURCE11} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}-ndb-cpc
609 cp -a %{SOURCE12} $RPM_BUILD_ROOT/etc/sysconfig/%{name}-ndb-cpc
610 %endif
611
612 sed -i -e 's,/usr//usr,%{_prefix},g' $RPM_BUILD_ROOT%{_libdir}/mysql/%{mysqlversion}/bin/mysql_config
613 sed -i -e '/libs/s/$ldflags//' $RPM_BUILD_ROOT%{_libdir}/mysql/%{mysqlversion}/bin/mysql_config
614 sed -i -e '/libs/s/-lprobes_mysql//' $RPM_BUILD_ROOT%{_libdir}/mysql/%{mysqlversion}/bin/mysql_config
615
616 # remove known unpackaged files
617 %{__rm} -r $RPM_BUILD_ROOT%{_datadir}/mysql/%{mysqlversion}/support
618
619 # rename not to be so generic name
620
621 # not useful without -debug build
622 # generate symbols file, so one can generate backtrace using it
623 # mysql_resolve_stack_dump -s %{_datadir}/%{name}/mysqld.sym -n mysqld.stack.
624 # http://dev.mysql.com/doc/refman/5.0/en/using-stack-trace.html
625 %{?debug:nm -n $RPM_BUILD_ROOT%{_sbindir}/mysqld > $RPM_BUILD_ROOT%{_datadir}/%{name}/mysqld.sym}
626
627 # do not clobber users $PATH
628 %{__mv} $RPM_BUILD_ROOT{%{_libdir}/mysql/%{mysqlversion}/bin,%{_libdir}/mysql/%{mysqlversion}/sbin}/innochecksum
629 %{__mv} $RPM_BUILD_ROOT{%{_libdir}/mysql/%{mysqlversion}/bin,%{_libdir}/mysql/%{mysqlversion}/sbin}/myisamchk
630 %{__mv} $RPM_BUILD_ROOT{%{_libdir}/mysql/%{mysqlversion}/bin,%{_libdir}/mysql/%{mysqlversion}/sbin}/myisamlog
631 %{__mv} $RPM_BUILD_ROOT{%{_libdir}/mysql/%{mysqlversion}/bin,%{_libdir}/mysql/%{mysqlversion}/sbin}/myisampack
632 %{__mv} $RPM_BUILD_ROOT{%{_libdir}/mysql/%{mysqlversion}/bin,%{_libdir}/mysql/%{mysqlversion}/sbin}/my_print_defaults
633 %{__mv} $RPM_BUILD_ROOT{%{_libdir}/mysql/%{mysqlversion}/bin,%{_libdir}/mysql/%{mysqlversion}/sbin}/mysqlcheck
634
635 # delete - functionality in initscript / rpm
636 # note: mysql_install_db (and thus resolveip) are needed by digikam
637 %{__rm} $RPM_BUILD_ROOT%{_libdir}/mysql/%{mysqlversion}/bin/mysqld_safe
638 %{__rm} $RPM_BUILD_ROOT%{_libdir}/mysql/%{mysqlversion}/bin/mysqld_multi
639 %{__rm} $RPM_BUILD_ROOT%{_datadir}/mysql/%{mysqlversion}/man/man1/mysqld_{multi,safe}*
640 %{__rm} $RPM_BUILD_ROOT%{_datadir}/mysql/%{mysqlversion}/man/man1/mysql.server*
641
642 # man pages for removed commands
643 %{__rm} $RPM_BUILD_ROOT%{_datadir}/mysql/%{mysqlversion}/man/man1/mysqlman.1*
644 %{__rm} $RPM_BUILD_ROOT%{_datadir}/mysql/%{mysqlversion}/man/man1/mysqlslap.1*
645 %{__rm} $RPM_BUILD_ROOT%{_datadir}/mysql/%{mysqlversion}/man/man1/comp_err.1*
646
647 # we don't package those (we have no -test or -testsuite pkg) and some of them just segfault
648 %{__rm} -r $RPM_BUILD_ROOT%{_datadir}/mysql/%{mysqlversion}/test
649 %{__rm} $RPM_BUILD_ROOT%{_libdir}/mysql/%{mysqlversion}/bin/{comp_err,mysql_client_test,mysql_keyring_encryption_test,mysql_test_event_tracking,mysqlslap,mysqltest,mysqltest_safe_process,mysqlxtest}
650 %{__rm} $RPM_BUILD_ROOT%{_libdir}/mysql/%{mysqlversion}/plugin/test_udf_services.so
651 %{__rm} $RPM_BUILD_ROOT%{_libdir}/mysql/%{mysqlversion}/plugin/component_example_*.so
652 %{__rm} $RPM_BUILD_ROOT%{_libdir}/mysql/%{mysqlversion}/plugin/component_log_sink_test.so
653 %{__rm} $RPM_BUILD_ROOT%{_libdir}/mysql/%{mysqlversion}/plugin/component_pfs_example*.so
654 %{__rm} $RPM_BUILD_ROOT%{_libdir}/mysql/%{mysqlversion}/plugin/component_test_*.so
655 %{__rm} $RPM_BUILD_ROOT%{_libdir}/mysql/%{mysqlversion}/plugin/test_services_*.so
656 %{__rm} $RPM_BUILD_ROOT%{_libdir}/mysql/%{mysqlversion}/plugin/libdaemon_example.*
657 %{__rm} $RPM_BUILD_ROOT%{_libdir}/mysql/%{mysqlversion}/plugin/daemon_example.ini
658 %{__rm} $RPM_BUILD_ROOT%{_libdir}/mysql/%{mysqlversion}/plugin/libtest*.so
659 %{__rm} $RPM_BUILD_ROOT%{_libdir}/mysql/%{mysqlversion}/plugin/pfs_example*.so
660 %{__rm} $RPM_BUILD_ROOT%{_libdir}/mysql/%{mysqlversion}/plugin/rewrite_example.so
661 %{__rm} $RPM_BUILD_ROOT%{_libdir}/mysql/%{mysqlversion}/plugin/udf_example.so
662 %{__rm} $RPM_BUILD_ROOT%{_libdir}/mysql/%{mysqlversion}/plugin/test_security_context.so
663
664 %clean
665 rm -rf $RPM_BUILD_ROOT
666
667 %post
668 /sbin/ldconfig
669 /sbin/chkconfig --add %{name}
670 %service %{name} restart
671
672 %preun
673 if [ "$1" = "0" ]; then
674         %service -q %{name} stop
675         /sbin/chkconfig --del %{name}
676 fi
677
678 %posttrans
679 update-alternatives \
680         --install %{_bindir}/ibd2sdi ibd2sdi %{_libdir}/mysql/%{mysqlversion}/bin/ibd2sdi %{mysqlpriority} \
681         --slave %{_mandir}/man1/ibd2sdi.1 ibd2sdi.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/ibd2sdi.1* || :
682 update-alternatives \
683         --install %{_bindir}/mysql_migrate_keyring mysql_migrate_keyring %{_libdir}/mysql/%{mysqlversion}/bin/mysql_migrate_keyring %{mysqlpriority} \
684         --slave %{_mandir}/man1/mysql_migrate_keyring.1 mysql_migrate_keyring.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysql_migrate_keyring.1* || :
685 update-alternatives \
686         --install %{_sbindir}/innochecksum innochecksum %{_libdir}/mysql/%{mysqlversion}/sbin/innochecksum %{mysqlpriority} \
687         --slave %{_mandir}/man1/innochecksum.1 innochecksum.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/innochecksum.1* || :
688 update-alternatives \
689         --install %{_sbindir}/my_print_defaults my_print_defaults %{_libdir}/mysql/%{mysqlversion}/sbin/my_print_defaults %{mysqlpriority} \
690         --slave %{_mandir}/man1/my_print_defaults.1 my_print_defaults.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/my_print_defaults.1* || :
691 update-alternatives \
692         --install %{_sbindir}/myisamchk myisamchk %{_libdir}/mysql/%{mysqlversion}/sbin/myisamchk %{mysqlpriority} \
693         --slave %{_mandir}/man1/myisamchk.1 myisamchk.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/myisamchk.1* || :
694 update-alternatives \
695         --install %{_sbindir}/myisamlog myisamlog %{_libdir}/mysql/%{mysqlversion}/sbin/myisamlog %{mysqlpriority} \
696         --slave %{_mandir}/man1/myisamlog.1 myisamlog.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/myisamlog.1* || :
697 update-alternatives \
698         --install %{_sbindir}/myisampack myisampack %{_libdir}/mysql/%{mysqlversion}/sbin/myisampack %{mysqlpriority} \
699         --slave %{_mandir}/man1/myisampack.1 myisampack.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/myisampack.1* || :
700 update-alternatives \
701         --install %{_sbindir}/mysqlcheck mysqlcheck %{_libdir}/mysql/%{mysqlversion}/sbin/mysqlcheck %{mysqlpriority} \
702         --slave %{_mandir}/man1/mysqlcheck.1 mysqlcheck.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysqlcheck.1* || :
703 update-alternatives \
704         --install %{_sbindir}/mysqld mysqld %{_libdir}/mysql/%{mysqlversion}/sbin/mysqld %{mysqlpriority} \
705         --slave %{_mandir}/man8/mysqld.8 mysqld.8 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysqld.8* || :
706
707 %postun
708 /sbin/ldconfig
709 if [ "$1" = "0" ]; then
710         update-alternatives --remove ibd2sdi %{_libdir}/mysql/%{mysqlversion}/bin/ibd2sdi || :
711         update-alternatives --remove mysql_migrate_keyring %{_libdir}/mysql/%{mysqlversion}/bin/mysql_migrate_keyring || :
712         update-alternatives --remove innochecksum %{_libdir}/mysql/%{mysqlversion}/sbin/innochecksum || :
713         update-alternatives --remove my_print_defaults %{_libdir}/mysql/%{mysqlversion}/sbin/my_print_defaults || :
714         update-alternatives --remove myisamchk %{_libdir}/mysql/%{mysqlversion}/sbin/myisamchk || :
715         update-alternatives --remove myisamlog %{_libdir}/mysql/%{mysqlversion}/sbin/myisamlog || :
716         update-alternatives --remove myisampack %{_libdir}/mysql/%{mysqlversion}/sbin/myisampack || :
717         update-alternatives --remove mysqlcheck %{_libdir}/mysql/%{mysqlversion}/sbin/mysqlcheck || :
718         update-alternatives --remove mysqld %{_libdir}/mysql/%{mysqlversion}/sbin/mysqld || :
719 fi
720
721 %pre -n mysql-common
722 %groupadd -g 89 mysql
723 %useradd -u 89 -d /var/lib/mysql -s /bin/false -g mysql -c "MySQL Server" mysql
724
725 %postun -n mysql-common
726 if [ "$1" = "0" ]; then
727         %userremove mysql
728         %groupremove mysql
729 fi
730
731 %posttrans client
732 update-alternatives \
733         --install %{_bindir}/mysql mysql %{_libdir}/mysql/%{mysqlversion}/bin/mysql %{mysqlpriority} \
734         --slave %{_mandir}/man1/mysql.1 mysql.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysql.1* || :
735 update-alternatives \
736         --install %{_bindir}/mysqladmin mysqladmin %{_libdir}/mysql/%{mysqlversion}/bin/mysqladmin %{mysqlpriority} \
737         --slave %{_mandir}/man1/mysqladmin.1 mysqladmin.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysqladmin.1* || :
738 update-alternatives \
739         --install %{_bindir}/mysqlbinlog mysqlbinlog %{_libdir}/mysql/%{mysqlversion}/bin/mysqlbinlog %{mysqlpriority} \
740         --slave %{_mandir}/man1/mysqlbinlog.1 mysqlbinlog.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysqlbinlog.1* || :
741 update-alternatives \
742         --install %{_bindir}/mysql_config_editor mysql_config_editor %{_libdir}/mysql/%{mysqlversion}/bin/mysql_config_editor %{mysqlpriority} \
743         --slave %{_mandir}/man1/mysql_config_editor.1 mysql_config_editor.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysql_config_editor.1* || :
744 update-alternatives \
745         --install %{_bindir}/mysqldump mysqldump %{_libdir}/mysql/%{mysqlversion}/bin/mysqldump %{mysqlpriority} \
746         --slave %{_mandir}/man1/mysqldump.1 mysqldump.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysqldump.1* || :
747 update-alternatives \
748         --install %{_bindir}/mysqlimport mysqlimport %{_libdir}/mysql/%{mysqlversion}/bin/mysqlimport %{mysqlpriority} \
749         --slave %{_mandir}/man1/mysqlimport.1 mysqlimport.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysqlimport.1* || :
750 update-alternatives \
751         --install %{_bindir}/mysqlpump mysqlpump %{_libdir}/mysql/%{mysqlversion}/bin/mysqlpump %{mysqlpriority} \
752         --slave %{_mandir}/man1/mysqlpump.1 mysqlpump.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysqlpump.1* || :
753 update-alternatives \
754         --install %{_bindir}/mysqlshow mysqlshow %{_libdir}/mysql/%{mysqlversion}/bin/mysqlshow %{mysqlpriority} \
755         --slave %{_mandir}/man1/mysqlshow.1 mysqlshow.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysqlshow.1* || :
756
757 %postun client
758 if [ $1 -eq 0 ]; then
759         update-alternatives --remove mysql %{_libdir}/mysql/%{mysqlversion}/bin/mysql || :
760         update-alternatives --remove mysqladmin %{_libdir}/mysql/%{mysqlversion}/bin/mysqladmin || :
761         update-alternatives --remove mysqlbinlog %{_libdir}/mysql/%{mysqlversion}/bin/mysqlbinlog || :
762         update-alternatives --remove mysql_config_editor %{_libdir}/mysql/%{mysqlversion}/bin/mysql_config_editor || :
763         update-alternatives --remove mysqldump %{_libdir}/mysql/%{mysqlversion}/bin/mysqldump || :
764         update-alternatives --remove mysqlimport %{_libdir}/mysql/%{mysqlversion}/bin/mysqlimport || :
765         update-alternatives --remove mysqlpump %{_libdir}/mysql/%{mysqlversion}/bin/mysqlpump || :
766         update-alternatives --remove mysqlshow %{_libdir}/mysql/%{mysqlversion}/bin/mysqlshow || :
767 fi
768
769 %posttrans extras
770 update-alternatives \
771         --install %{_bindir}/myisam_ftdump myisam_ftdump %{_libdir}/mysql/%{mysqlversion}/bin/myisam_ftdump %{mysqlpriority} \
772         --slave %{_mandir}/man1/myisam_ftdump.1 myisam_ftdump.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/myisam_ftdump.1* || :
773 update-alternatives \
774         --install %{_bindir}/mysql_secure_installation mysql_secure_installation %{_libdir}/mysql/%{mysqlversion}/bin/mysql_secure_installation %{mysqlpriority} \
775         --slave %{_mandir}/man1/mysql_secure_installation.1 mysql_secure_installation.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysql_secure_installation.1* || :
776 update-alternatives \
777         --install %{_bindir}/mysql_ssl_rsa_setup mysql_ssl_rsa_setup %{_libdir}/mysql/%{mysqlversion}/bin/mysql_ssl_rsa_setup %{mysqlpriority} \
778         --slave %{_mandir}/man1/mysql_ssl_rsa_setup.1 mysql_ssl_rsa_setup.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysql_ssl_rsa_setup.1* || :
779 update-alternatives \
780         --install %{_bindir}/mysql_tzinfo_to_sql mysql_tzinfo_to_sql %{_libdir}/mysql/%{mysqlversion}/bin/mysql_tzinfo_to_sql %{mysqlpriority} \
781         --slave %{_mandir}/man1/mysql_tzinfo_to_sql.1 mysql_tzinfo_to_sql.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysql_tzinfo_to_sql.1* || :
782 update-alternatives \
783         --install %{_bindir}/perror perror %{_libdir}/mysql/%{mysqlversion}/bin/perror %{mysqlpriority} \
784         --slave %{_mandir}/man1/perror.1 perror.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/perror.1* || :
785
786 %postun extras
787 if [ $1 -eq 0 ]; then
788         update-alternatives --remove myisam_ftdump %{_libdir}/mysql/%{mysqlversion}/bin/myisam_ftdump || :
789         update-alternatives --remove mysql_secure_installation %{_libdir}/mysql/%{mysqlversion}/bin/mysql_secure_installation || :
790         update-alternatives --remove mysql_ssl_rsa_setup %{_libdir}/mysql/%{mysqlversion}/bin/mysql_ssl_rsa_setup || :
791         update-alternatives --remove mysql_tzinfo_to_sql %{_libdir}/mysql/%{mysqlversion}/bin/mysql_tzinfo_to_sql || :
792         update-alternatives --remove perror %{_libdir}/mysql/%{mysqlversion}/bin/perror || :
793 fi
794
795 %posttrans extras-perl
796 update-alternatives \
797         --install %{_bindir}/mysqldumpslow mysqldumpslow %{_libdir}/mysql/%{mysqlversion}/bin/mysqldumpslow %{mysqlpriority} \
798         --slave %{_mandir}/man1/mysqldumpslow.1 mysqldumpslow.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysqldumpslow.1* || :
799
800 %postun extras-perl
801 if [ $1 -eq 0 ]; then
802         update-alternatives --remove mysqldumpslow %{_libdir}/mysql/%{mysqlversion}/bin/mysqldumpslow || :
803 fi
804
805 %posttrans -n mysql-devel
806 update-alternatives \
807         --install %{_bindir}/mysql_config mysql_config %{_libdir}/mysql/%{mysqlversion}/bin/mysql_config %{mysqlpriority} \
808         --slave %{_mandir}/man1/mysql_config.1 mysql_config.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysql_config.1* || :
809
810 %postun -n mysql-devel
811 if [ $1 -eq 0 ]; then
812         update-alternatives --remove mysql_config %{_libdir}/mysql/%{mysqlversion}/bin/mysql_config || :
813 fi
814
815 %post ndb
816 /sbin/chkconfig --add %{name}-ndb
817 %service %{name}-ndb restart "%{name} NDB engine"
818
819 %preun ndb
820 if [ "$1" = "0" ]; then
821         %service %{name}-ndb stop
822         /sbin/chkconfig --del %{name}-ndb
823 fi
824
825 %posttrans ndb
826 update-alternatives \
827         --install %{_sbindir}/ndbd ndbd %{_libdir}/mysql/%{mysqlversion}/sbin/ndbd %{mysqlpriority} \
828         --slave %{_mandir}/man1/ndbd.1 ndbd.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndbd.1* || :
829
830 %postun ndb
831 if [ "$1" = "0" ]; then
832         update-alternatives --remove ndbd %{_libdir}/mysql/%{mysqlversion}/sbin/ndbd || :
833 fi
834
835 %posttrans ndb-client
836 update-alternatives \
837         --install %{_bindir}/ndb_config ndb_config %{_libdir}/mysql/%{mysqlversion}/bin/ndb_config %{mysqlpriority} \
838         --slave %{_mandir}/man1/ndb_config.1 ndb_config.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_config.1* || :
839 update-alternatives \
840         --install %{_bindir}/ndb_delete_all ndb_delete_all %{_libdir}/mysql/%{mysqlversion}/bin/ndb_delete_all %{mysqlpriority} \
841         --slave %{_mandir}/man1/ndb_delete_all.1 ndb_delete_all.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_delete_all.1* || :
842 update-alternatives \
843         --install %{_bindir}/ndb_desc ndb_desc %{_libdir}/mysql/%{mysqlversion}/bin/ndb_desc %{mysqlpriority} \
844         --slave %{_mandir}/man1/ndb_desc.1 ndb_desc.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_desc.1* || :
845 update-alternatives \
846         --install %{_bindir}/ndb_drop_index ndb_drop_index %{_libdir}/mysql/%{mysqlversion}/bin/ndb_drop_index %{mysqlpriority} \
847         --slave %{_mandir}/man1/ndb_drop_index.1 ndb_drop_index.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_drop_index.1* || :
848 update-alternatives \
849         --install %{_bindir}/ndb_drop_table ndb_drop_table %{_libdir}/mysql/%{mysqlversion}/bin/ndb_drop_table %{mysqlpriority} \
850         --slave %{_mandir}/man1/ndb_drop_table.1 ndb_drop_table.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_drop_table.1* || :
851 update-alternatives \
852         --install %{_bindir}/ndb_error_reporter ndb_error_reporter %{_libdir}/mysql/%{mysqlversion}/bin/ndb_error_reporter %{mysqlpriority} \
853         --slave %{_mandir}/man1/ndb_error_reporter.1 ndb_error_reporter.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_error_reporter.1* || :
854 update-alternatives \
855         --install %{_bindir}/ndb_mgm ndb_mgm %{_libdir}/mysql/%{mysqlversion}/bin/ndb_mgm %{mysqlpriority} \
856         --slave %{_mandir}/man1/ndb_mgm.1 ndb_mgm.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_mgm.1* || :
857 update-alternatives \
858         --install %{_bindir}/ndb_print_backup_file ndb_print_backup_file %{_libdir}/mysql/%{mysqlversion}/bin/ndb_print_backup_file %{mysqlpriority} \
859         --slave %{_mandir}/man1/ndb_print_backup_file.1 ndb_print_backup_file.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_print_backup_file.1* || :
860 update-alternatives \
861         --install %{_bindir}/ndb_print_schema_file ndb_print_schema_file %{_libdir}/mysql/%{mysqlversion}/bin/ndb_print_schema_file %{mysqlpriority} \
862         --slave %{_mandir}/man1/ndb_print_schema_file.1 ndb_print_schema_file.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_print_schema_file.1* || :
863 update-alternatives \
864         --install %{_bindir}/ndb_print_sys_file ndb_print_sys_file %{_libdir}/mysql/%{mysqlversion}/bin/ndb_print_sys_file %{mysqlpriority} \
865         --slave %{_mandir}/man1/ndb_print_sys_file.1 ndb_print_sys_file.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_print_sys_file.1* || :
866 update-alternatives \
867         --install %{_bindir}/ndb_restore ndb_restore %{_libdir}/mysql/%{mysqlversion}/bin/ndb_restore %{mysqlpriority} \
868         --slave %{_mandir}/man1/ndb_restore.1 ndb_restore.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_restore.1* || :
869 update-alternatives \
870         --install %{_bindir}/ndb_select_all ndb_select_all %{_libdir}/mysql/%{mysqlversion}/bin/ndb_select_all %{mysqlpriority} \
871         --slave %{_mandir}/man1/ndb_select_all.1 ndb_select_all.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_select_all.1* || :
872 update-alternatives \
873         --install %{_bindir}/ndb_select_count ndb_select_count %{_libdir}/mysql/%{mysqlversion}/bin/ndb_select_count %{mysqlpriority} \
874         --slave %{_mandir}/man1/ndb_select_count.1 ndb_select_count.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_select_count.1* || :
875 update-alternatives \
876         --install %{_bindir}/ndb_show_tables ndb_show_tables %{_libdir}/mysql/%{mysqlversion}/bin/ndb_show_tables %{mysqlpriority} \
877         --slave %{_mandir}/man1/ndb_show_tables.1 ndb_show_tables.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_show_tables.1* || :
878 update-alternatives \
879         --install %{_bindir}/ndb_size.pl ndb_size.pl %{_libdir}/mysql/%{mysqlversion}/bin/ndb_size.pl %{mysqlpriority} \
880         --slave %{_mandir}/man1/ndb_size.pl.1 ndb_size.pl.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_size.pl.1* || :
881 update-alternatives \
882         --install %{_bindir}/ndb_test_platform ndb_test_platform %{_libdir}/mysql/%{mysqlversion}/bin/ndb_test_platform %{mysqlpriority} \
883         --slave %{_mandir}/man1/ndb_test_platform.1 ndb_test_platform.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_test_platform.1* || :
884 update-alternatives \
885         --install %{_bindir}/ndb_waiter ndb_waiter %{_libdir}/mysql/%{mysqlversion}/bin/ndb_waiter %{mysqlpriority} \
886         --slave %{_mandir}/man1/ndb_waiter.1 ndb_waiter.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_waiter.1* || :
887
888 %postun ndb-client
889 if [ $1 -eq 0 ]; then
890         update-alternatives --remove ndb_config %{_libdir}/mysql/%{mysqlversion}/bin/ndb_config || :
891         update-alternatives --remove ndb_delete_all %{_libdir}/mysql/%{mysqlversion}/bin/ndb_delete_all || :
892         update-alternatives --remove ndb_desc %{_libdir}/mysql/%{mysqlversion}/bin/ndb_desc || :
893         update-alternatives --remove ndb_drop_index %{_libdir}/mysql/%{mysqlversion}/bin/ndb_drop_index || :
894         update-alternatives --remove ndb_drop_table %{_libdir}/mysql/%{mysqlversion}/bin/ndb_drop_table || :
895         update-alternatives --remove ndb_error_reporter %{_libdir}/mysql/%{mysqlversion}/bin/ndb_error_reporter || :
896         update-alternatives --remove ndb_mgm %{_libdir}/mysql/%{mysqlversion}/bin/ndb_mgm || :
897         update-alternatives --remove ndb_print_backup_file %{_libdir}/mysql/%{mysqlversion}/bin/ndb_print_backup_file || :
898         update-alternatives --remove ndb_print_schema_file %{_libdir}/mysql/%{mysqlversion}/bin/ndb_print_schema_file || :
899         update-alternatives --remove ndb_print_sys_file %{_libdir}/mysql/%{mysqlversion}/bin/ndb_print_sys_file || :
900         update-alternatives --remove ndb_restore %{_libdir}/mysql/%{mysqlversion}/bin/ndb_restore || :
901         update-alternatives --remove ndb_select_all %{_libdir}/mysql/%{mysqlversion}/bin/ndb_select_all || :
902         update-alternatives --remove ndb_select_count %{_libdir}/mysql/%{mysqlversion}/bin/ndb_select_count || :
903         update-alternatives --remove ndb_show_tables %{_libdir}/mysql/%{mysqlversion}/bin/ndb_show_tables || :
904         update-alternatives --remove ndb_size.pl %{_libdir}/mysql/%{mysqlversion}/bin/ndb_size.pl || :
905         update-alternatives --remove ndb_test_platform %{_libdir}/mysql/%{mysqlversion}/bin/ndb_test_platform || :
906         update-alternatives --remove ndb_waiter %{_libdir}/mysql/%{mysqlversion}/bin/ndb_waiter || :
907 fi
908
909 %post ndb-mgm
910 /sbin/chkconfig --add %{name}-ndb-mgm
911 %service %{name}-ndb-mgm restart "%{name} NDB management node"
912
913 %preun ndb-mgm
914 if [ "$1" = "0" ]; then
915         %service %{name}-ndb-mgm stop
916         /sbin/chkconfig --del %{name}-ndb-mgm
917 fi
918
919 %posttrans ndb-mgm
920 update-alternatives \
921         --install %{_sbindir}/ndb_mgmd ndb_mgmd %{_libdir}/mysql/%{mysqlversion}/sbin/ndb_mgmd %{mysqlpriority} \
922         --slave %{_mandir}/man1/ndb_mgmd.1 ndb_mgmd.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_mgmd.1* || :
923
924 %postun ndb-mgm
925 if [ "$1" = "0" ]; then
926         update-alternatives --remove ndb_mgmd %{_libdir}/mysql/%{mysqlversion}/sbin/ndb_mgmd || :
927 fi
928
929 %post ndb-cpc
930 /sbin/chkconfig --add %{name}-ndb-cpc
931 %service %{name}-ndb-cpc restart "%{name} NDB CPC"
932
933 %preun ndb-cpc
934 if [ "$1" = "0" ]; then
935         %service %{name}-ndb-cpc stop
936         /sbin/chkconfig --del %{name}-ndb-cpc
937 fi
938
939 %posttrans ndb-cpc
940 update-alternatives \
941         --install %{_sbindir}/ndb_cpcd ndb_cpcd %{_libdir}/mysql/%{mysqlversion}/sbin/ndb_cpcd %{mysqlpriority} \
942         --slave %{_mandir}/man1/ndb_cpcd.1 ndb_cpcd.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_cpcd.1* || :
943
944 %postun ndb-cpc
945 if [ "$1" = "0" ]; then
946         update-alternatives --remove ndb_cpcd %{_libdir}/mysql/%{mysqlversion}/sbin/ndb_cpcd || :
947 fi
948
949 %post   libs -p /sbin/ldconfig
950 %postun libs -p /sbin/ldconfig
951
952 %pre router
953 %groupadd -g 348 mysqlrouter
954 %useradd -u 348 -d /var/lib/mysqlrouter -s /bin/false -g mysqlrouter -c "MySQL Router" mysqlrouter
955
956 %post   router
957 /sbin/ldconfig
958
959 %posttrans router
960 update-alternatives \
961         --install %{_bindir}/mysqlrouter mysqlrouter %{_libdir}/mysql/%{mysqlversion}/bin/mysqlrouter %{mysqlpriority} \
962         --slave %{_mandir}/man1/mysqlrouter.1 mysqlrouter.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysqlrouter.1* || :
963 update-alternatives \
964         --install %{_bindir}/mysqlrouter_keyring mysqlrouter_keyring %{_libdir}/mysql/%{mysqlversion}/bin/mysqlrouter_keyring %{mysqlpriority} \
965         --slave %{_mandir}/man1/mysqlrouter_keyring.1 mysqlrouter_keyring.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysqlrouter_keyring.1* || :
966 update-alternatives \
967         --install %{_bindir}/mysqlrouter_passwd mysqlrouter_passwd %{_libdir}/mysql/%{mysqlversion}/bin/mysqlrouter_passwd %{mysqlpriority} \
968         --slave %{_mandir}/man1/mysqlrouter_passwd.1 mysqlrouter_passwd.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysqlrouter_passwd.1* || :
969 update-alternatives \
970         --install %{_bindir}/mysqlrouter_plugin_info mysqlrouter_plugin_info %{_libdir}/mysql/%{mysqlversion}/bin/mysqlrouter_plugin_info %{mysqlpriority} \
971         --slave %{_mandir}/man1/mysqlrouter_plugin_info.1 mysqlrouter_plugin_info.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysqlrouter_plugin_info.1* || :
972
973 %postun router
974 /sbin/ldconfig
975 if [ "$1" = "0" ]; then
976         update-alternatives --remove mysqlrouter %{_libdir}/mysql/%{mysqlversion}/bin/mysqlrouter || :
977         update-alternatives --remove mysqlrouter_keyring %{_libdir}/mysql/%{mysqlversion}/bin/mysqlrouter_keyring || :
978         update-alternatives --remove mysqlrouter_passwd %{_libdir}/mysql/%{mysqlversion}/bin/mysqlrouter_passwd || :
979         update-alternatives --remove mysqlrouter_plugin_info %{_libdir}/mysql/%{mysqlversion}/bin/mysqlrouter_plugin_info || :
980         %userremove mysqlrouter
981         %groupremove mysqlrouter
982 fi
983
984 %files
985 %defattr(644,root,root,755)
986 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name}
987 %attr(754,root,root) /etc/rc.d/init.d/%{name}
988 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name}
989 %attr(640,root,mysql) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mysql/%{mysqlversion}/clusters.conf
990 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/ibd2sdi
991 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/mysql_migrate_keyring
992 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/sbin/innochecksum
993 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/sbin/my_print_defaults
994 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/sbin/myisamchk
995 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/sbin/myisamlog
996 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/sbin/myisampack
997 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/sbin/mysqlcheck
998 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/sbin/mysqld
999 %dir %{_libdir}/mysql/%{mysqlversion}/plugin
1000 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/adt_null.so
1001 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/auth.so
1002 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/auth_socket.so
1003 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/auth_test_plugin.so
1004 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/component_audit_api_message_emit.so
1005 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/component_keyring_file.so
1006 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/component_log_filter_dragnet.so
1007 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/component_log_sink_json.so
1008 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/component_log_sink_syseventlog.so
1009 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/component_mysqlbackup.so
1010 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/component_mysqlx_global_reset.so
1011 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/component_query_attributes.so
1012 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/component_reference_cache.so
1013 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/component_udf_*_func.so
1014 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/component_validate_password.so
1015 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/conflicting_variables.so
1016 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/connection_control.so
1017 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/ddl_rewriter.so
1018 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/group_replication.so
1019 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/ha_mock.so
1020 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/keyring_udf.so
1021 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/libpluginmecab.so
1022 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/locking_service.so
1023 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/mypluglib.so
1024 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/mysql_clone.so
1025 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/mysql_no_login.so
1026 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/qa_auth_client.so
1027 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/qa_auth_interface.so
1028 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/qa_auth_server.so
1029 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/replication_observers_example_plugin.so
1030 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/rewriter.so
1031 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/semisync_master.so
1032 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/semisync_replica.so
1033 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/semisync_slave.so
1034 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/semisync_source.so
1035 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/validate_password.so
1036 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/version_token.so
1037 %if %{with sphinx}
1038 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/plugin/ha_sphinx.so
1039 %endif
1040 %dir %{_libdir}/mysql/%{mysqlversion}/private
1041 %{_libdir}/mysql/%{mysqlversion}/private/icudt*l
1042 %{_datadir}/mysql/%{mysqlversion}/man/man1/ibd2sdi.1*
1043 %{_datadir}/mysql/%{mysqlversion}/man/man1/innochecksum.1*
1044 %{_datadir}/mysql/%{mysqlversion}/man/man1/my_print_defaults.1*
1045 %{_datadir}/mysql/%{mysqlversion}/man/man1/myisamchk.1*
1046 %{_datadir}/mysql/%{mysqlversion}/man/man1/myisamlog.1*
1047 %{_datadir}/mysql/%{mysqlversion}/man/man1/myisampack.1*
1048 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysqlcheck.1*
1049 %{_datadir}/mysql/%{mysqlversion}/man/man8/mysqld.8*
1050
1051 %if %{?debug:1}0
1052 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/*resolve_stack_dump
1053 %{_datadir}/mysql/%{mysqlversion}/mysqld.sym
1054 %{_datadir}/mysql/%{mysqlversion}/man/man1/*resolve_stack_dump.1*
1055 %endif
1056
1057 %attr(750,mysql,mysql) %dir /var/log/mysql/%{mysqlversion}
1058 %attr(750,mysql,mysql) %dir /var/log/archive/mysql/%{mysqlversion}
1059 %attr(640,mysql,mysql) %ghost /var/log/mysql/%{mysqlversion}/*
1060
1061 # This is template for configuration file which is created after 'service mysql init'
1062 %{_datadir}/mysql/%{mysqlversion}/mysqld.conf
1063
1064 %dir %{_datadir}/mysql/%{mysqlversion}/lang
1065 %{_datadir}/mysql/%{mysqlversion}/lang/english
1066 %{_datadir}/mysql/%{mysqlversion}/lang/dictionary.txt
1067 %{_datadir}/mysql/%{mysqlversion}/lang/messages_to_clients.txt
1068 %{_datadir}/mysql/%{mysqlversion}/lang/messages_to_error_log.txt
1069 %{_datadir}/mysql/%{mysqlversion}/lang/install_rewriter.sql
1070 %{_datadir}/mysql/%{mysqlversion}/lang/uninstall_rewriter.sql
1071 # Don't mark these with %%lang. These are used depending
1072 # on database client settings.
1073 %{_datadir}/mysql/%{mysqlversion}/lang/bulgarian
1074 %{_datadir}/mysql/%{mysqlversion}/lang/czech
1075 %{_datadir}/mysql/%{mysqlversion}/lang/danish
1076 %{_datadir}/mysql/%{mysqlversion}/lang/german
1077 %{_datadir}/mysql/%{mysqlversion}/lang/greek
1078 %{_datadir}/mysql/%{mysqlversion}/lang/spanish
1079 %{_datadir}/mysql/%{mysqlversion}/lang/estonian
1080 %{_datadir}/mysql/%{mysqlversion}/lang/french
1081 %{_datadir}/mysql/%{mysqlversion}/lang/hungarian
1082 %{_datadir}/mysql/%{mysqlversion}/lang/italian
1083 %{_datadir}/mysql/%{mysqlversion}/lang/japanese
1084 %{_datadir}/mysql/%{mysqlversion}/lang/korean
1085 %{_datadir}/mysql/%{mysqlversion}/lang/dutch
1086 %{_datadir}/mysql/%{mysqlversion}/lang/norwegian
1087 %{_datadir}/mysql/%{mysqlversion}/lang/norwegian-ny
1088 %{_datadir}/mysql/%{mysqlversion}/lang/polish
1089 %{_datadir}/mysql/%{mysqlversion}/lang/portuguese
1090 %{_datadir}/mysql/%{mysqlversion}/lang/romanian
1091 %{_datadir}/mysql/%{mysqlversion}/lang/russian
1092 %{_datadir}/mysql/%{mysqlversion}/lang/serbian
1093 %{_datadir}/mysql/%{mysqlversion}/lang/slovak
1094 %{_datadir}/mysql/%{mysqlversion}/lang/swedish
1095 %{_datadir}/mysql/%{mysqlversion}/lang/ukrainian
1096
1097 %files charsets
1098 %defattr(644,root,root,755)
1099 %{_datadir}/mysql/%{mysqlversion}/lang/charsets
1100
1101 %if %{with default}
1102 %files -n mysql-common
1103 %defattr(644,root,root,755)
1104 %attr(751,root,root) %dir %{_sysconfdir}/mysql
1105 %dir %{_libdir}/mysql
1106 %dir %{_datadir}/mysql
1107 %attr(751,root,root) %dir /var/lib/mysql
1108 %attr(751,root,root) %dir /var/lib/mysql-files
1109 %attr(751,root,root) %dir /var/lib/mysqlrouter
1110 %attr(751,root,root) %dir /var/log/mysql
1111 %attr(751,root,root) %dir /var/log/archive/mysql
1112 %attr(751,root,root) %dir /var/log/mysqlrouter
1113 %attr(751,root,root) %dir /var/log/archive/mysqlrouter
1114 %endif
1115
1116 %files dirs
1117 %defattr(644,root,root,755)
1118 %attr(751,root,root) %dir %{_sysconfdir}/mysql/%{mysqlversion}
1119 # root:root is proper here for mysql.rpm while mysql:mysql is potential security hole
1120 %attr(751,root,root) %dir /var/lib/mysql/%{mysqlversion}
1121 %attr(750,mysql,mysql) %dir /var/lib/mysql-files/%{mysqlversion}
1122 %dir %{_libdir}/mysql/%{mysqlversion}
1123 %dir %{_libdir}/mysql/%{mysqlversion}/bin
1124 %dir %{_libdir}/mysql/%{mysqlversion}/sbin
1125 %dir %{_datadir}/mysql/%{mysqlversion}
1126 %dir %{_datadir}/mysql/%{mysqlversion}/man
1127 %dir %{_datadir}/mysql/%{mysqlversion}/man/man1
1128 %dir %{_datadir}/mysql/%{mysqlversion}/man/man8
1129
1130 %files extras
1131 %defattr(644,root,root,755)
1132 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/myisam_ftdump
1133 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/mysql_secure_installation
1134 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/mysql_tzinfo_to_sql
1135 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/perror
1136 %{_datadir}/mysql/%{mysqlversion}/man/man1/myisam_ftdump.1*
1137 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysql_secure_installation.1*
1138 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysql_tzinfo_to_sql.1*
1139 %{_datadir}/mysql/%{mysqlversion}/man/man1/perror.1*
1140
1141 %files extras-perl
1142 %defattr(644,root,root,755)
1143 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/mysqldumpslow
1144 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysqldumpslow.1*
1145
1146 %files client
1147 %defattr(644,root,root,755)
1148 %attr(600,root,root) %config(noreplace,missingok) %verify(not md5 mtime size) /etc/skel/.my.cnf
1149 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/mysql
1150 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/mysqladmin
1151 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/mysqlbinlog
1152 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/mysql_config_editor
1153 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/mysqldump
1154 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/mysqlimport
1155 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/mysqlshow
1156 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysql.1*
1157 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysqladmin.1*
1158 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysqlbinlog.1*
1159 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysql_config_editor.1*
1160 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysqldump.1*
1161 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysqlimport.1*
1162 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysqlshow.1*
1163
1164 %files libs
1165 %defattr(644,root,root,755)
1166 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mysql/%{mysqlversion}/mysql-client.conf
1167 %{_sysconfdir}/mysql/%{mysqlversion}/my.cnf
1168 %attr(755,root,root) %{_libdir}/libmysqlclient.so.*.*.*
1169 %attr(755,root,root) %ghost %{_libdir}/libmysqlclient.so.24
1170 %if %{with ndb}
1171 %attr(755,root,root) %{_libdir}/libndbclient.so.*.*.*
1172 %attr(755,root,root) %ghost %{_libdir}/libndbclient.so.3
1173 %endif
1174
1175 %if %{with default}
1176 %files -n mysql-devel
1177 %defattr(644,root,root,755)
1178 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/mysql_config
1179 %attr(755,root,root) %{_libdir}/libmysqlclient.so
1180 %if %{with ndb}
1181 %attr(755,root,root) %{_libdir}/libndbclient.so
1182 %endif
1183 %{_pkgconfigdir}/mysqlclient.pc
1184 %{_libdir}/libmysqlservices.a
1185 %{_includedir}/mysql
1186 %{_aclocaldir}/mysql.m4
1187 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysql_config.1*
1188
1189 %files -n mysql-static
1190 %defattr(644,root,root,755)
1191 %{_libdir}/libmysqlclient.a
1192 %if %{with ndb}
1193 %{_libdir}/libndbclient.a
1194 %endif
1195 %endif
1196
1197 %if %{with ndb}
1198 %files ndb
1199 %defattr(644,root,root,755)
1200 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/sbin/ndbd
1201 %attr(754,root,root) /etc/rc.d/init.d/%{name}-ndb
1202 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/mysql-ndb
1203 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndbd_redo_log_reader.1*
1204 %{_datadir}/mysql/%{mysqlversion}/man/man8/ndbd.8*
1205
1206 %files ndb-client
1207 %defattr(644,root,root,755)
1208 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/ndb_config
1209 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/ndb_delete_all
1210 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/ndb_desc
1211 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/ndb_drop_index
1212 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/ndb_drop_table
1213 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/ndb_error_reporter
1214 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/ndb_mgm
1215 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/ndb_print_backup_file
1216 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/ndb_print_schema_file
1217 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/ndb_print_sys_file
1218 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/ndb_restore
1219 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/ndb_select_all
1220 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/ndb_select_count
1221 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/ndb_show_tables
1222 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/ndb_size.pl
1223 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/ndb_test_platform
1224 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/ndb_waiter
1225 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_config.1*
1226 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_delete_all.1*
1227 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_desc.1*
1228 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_drop_index.1*
1229 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_drop_table.1*
1230 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_error_reporter.1*
1231 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_mgm.1*
1232 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_print_backup_file.1*
1233 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_print_schema_file.1*
1234 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_print_sys_file.1*
1235 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_restore.1*
1236 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_select_all.1*
1237 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_select_count.1*
1238 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_show_tables.1*
1239 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_size.pl.1*
1240 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_waiter.1*
1241
1242 %files ndb-mgm
1243 %defattr(644,root,root,755)
1244 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/sbin/ndb_mgmd
1245 %attr(754,root,root) /etc/rc.d/init.d/%{name}-ndb-mgm
1246 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/mysql-ndb-mgm
1247 %{_datadir}/mysql/%{mysqlversion}/man/man8/ndb_mgmd.8*
1248
1249 %files ndb-cpc
1250 %defattr(644,root,root,755)
1251 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/sbin/ndb_cpcd
1252 %attr(754,root,root) /etc/rc.d/init.d/%{name}-ndb-cpc
1253 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/mysql-ndb-cpc
1254 %{_datadir}/mysql/%{mysqlversion}/man/man1/ndb_cpcd.1*
1255 %endif
1256
1257 %files router
1258 %defattr(644,root,root,755)
1259 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name}-router
1260 %{_sysconfdir}/ld.so.conf.d/%{name}-router.conf
1261 %dir %{_libdir}/mysql/%{mysqlversion}/router
1262 %dir %{_libdir}/mysql/%{mysqlversion}/router/private
1263 %attr(750,root,root) %dir /var/lib/mysqlrouter/%{mysqlversion}
1264 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/mysqlrouter
1265 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/mysqlrouter_keyring
1266 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/mysqlrouter_passwd
1267 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/bin/mysqlrouter_plugin_info
1268 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/router/connection_pool.so
1269 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/router/destination_status.so
1270 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/router/http_auth_backend.so
1271 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/router/http_auth_realm.so
1272 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/router/http_server.so
1273 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/router/io.so
1274 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/router/keepalive.so
1275 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/router/metadata_cache.so
1276 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/router/rest_api.so
1277 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/router/rest_connection_pool.so
1278 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/router/rest_metadata_cache.so
1279 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/router/rest_router.so
1280 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/router/rest_routing.so
1281 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/router/router_openssl.so
1282 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/router/router_protobuf.so
1283 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/router/routing.so
1284 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/router/private/libmysqlharness*.so*
1285 %attr(755,root,root) %{_libdir}/mysql/%{mysqlversion}/router/private/libmysqlrouter*.so*
1286 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysqlrouter.1*
1287 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysqlrouter_passwd.1*
1288 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysqlrouter_plugin_info.1*
1289 %attr(750,mysqlrouter,mysqlrouter) %dir /var/log/mysqlrouter/%{mysqlversion}
1290 %attr(750,mysqlrouter,mysqlrouter) %dir /var/log/archive/mysqlrouter/%{mysqlversion}
1291 %attr(640,mysql,mysql) %ghost /var/log/mysqlrouter/%{mysqlversion}/*