]> TLD Linux GIT Repositories - packages/mysql.git/blob - mysql.spec
- updated to 5.7.29-32
[packages/mysql.git] / mysql.spec
1 # TODO:
2 # - mysqldump ... (invalid usage) prints to stdout not stderr (idiotic if you want to create dump and get usage in .sql)
3 # - http://bugs.mysql.com/bug.php?id=16470
4 # - innodb are dynamic (= as plugins) ?
5 # - missing have_archive, have_merge
6 # - is plugin_dir lib64 safe?
7 # - Using NDB Cluster... could not find sci transporter in /{include, lib}
8 # - !!! Makefiles for libmysqld.so !!!
9 # - segfaults on select from non-mysql user (caused by builder environment):
10 #     https://bugs.launchpad.net/pld-linux/+bug/381904
11 #     (profiling disabled temporaily to workaround this)
12 # - unpackaged files:
13 #        /usr/COPYING.AGPLv3
14 #        /usr/COPYING.GPLv2
15 #        /usr/PATENTS
16 #        /usr/README.md
17 #        /usr/bin/mysqlxtest
18 #        /usr/include/backup.h
19 # NOTE:
20 # - mysql 'root' user will be 'root' not 'mysql' with 5.7 package
21 #   this is to make pld consistent what the rest of the world uses.
22 #
23 # Conditional build:
24 %bcond_with     autodeps        # BR packages needed only for resolving deps
25 %bcond_without  innodb          # InnoDB storage engine support
26 %bcond_without  big_tables      # Support tables with more than 4G rows even on 32 bit platforms
27 %bcond_without  federated       # Federated storage engine support
28 %bcond_without  raid            # RAID support
29 %bcond_without  ssl             # OpenSSL support
30 %bcond_with     systemtap       # systemtap/dtrace probes
31 %bcond_without  tcpd            # libwrap (tcp_wrappers) support
32 %bcond_with     sphinx          # Sphinx storage engine support
33 %bcond_without  tokudb          # TokuDB
34 %bcond_without  rocksdb         # RocksDB
35 # mysql needs boost 1.59.0 and doesn't support newer/older boost versions
36 %bcond_with     system_boost    # Use system boost package
37 %bcond_with     tests           # FIXME: don't run correctly
38 %bcond_with     ndb             # NDB is now a separate product, this here is broken, so disable it
39
40 # tokudb is only supported on x86_64
41 %ifnarch %{x8664}
42 %undefine       with_rocksdb
43 %undefine       with_tokudb
44 %endif
45
46 %define         rel     1
47 %define         percona_rel     32
48 %include        /usr/lib/rpm/macros.perl
49 Summary:        MySQL: a very fast and reliable SQL database engine
50 Summary(de.UTF-8):      MySQL: ist eine SQL-Datenbank
51 Summary(fr.UTF-8):      MySQL: un serveur SQL rapide et fiable
52 Summary(pl.UTF-8):      MySQL: bardzo szybka i niezawodna baza danych (SQL)
53 Summary(pt_BR.UTF-8):   MySQL: Um servidor SQL rápido e confiável
54 Summary(ru.UTF-8):      MySQL - быстрый SQL-сервер
55 Summary(uk.UTF-8):      MySQL - швидкий SQL-сервер
56 Summary(zh_CN.UTF-8):   MySQL数据库服务器
57 Name:           mysql
58 Version:        5.7.29
59 Release:        %{percona_rel}.%{rel}
60 License:        GPL + MySQL FLOSS Exception
61 Group:          Applications/Databases
62 Source0:        https://www.percona.com/downloads/Percona-Server-5.7/LATEST/source/tarball/percona-server-%{version}-%{percona_rel}.tar.gz
63 # Source0-md5:  94d1ed60a6ca2cd47e8f86c067dcca50
64 Source100:      http://www.sphinxsearch.com/files/sphinx-2.2.11-release.tar.gz
65 # Source100-md5:        5cac34f3d78a9d612ca4301abfcbd666
66 %if %{without system_boost}
67 Source101:      http://downloads.sourceforge.net/boost/boost_1_59_0.tar.bz2
68 # Source101-md5:        6aa9a5c6a4ca1016edd0ed1178e3cb87
69 %endif
70 Source1:        %{name}.init
71 Source2:        %{name}.sysconfig
72 Source3:        %{name}.logrotate
73 Source4:        mysqld.conf
74 Source5:        %{name}-clusters.conf
75 Source7:        %{name}-ndb.init
76 Source8:        %{name}-ndb.sysconfig
77 Source9:        %{name}-ndb-mgm.init
78 Source10:       %{name}-ndb-mgm.sysconfig
79 Source11:       %{name}-ndb-cpc.init
80 Source12:       %{name}-ndb-cpc.sysconfig
81 Source13:       %{name}-client.conf
82 Source14:       my.cnf
83 Patch0:         mysql-opt.patch
84 Patch1:         mysql-versioning.patch
85 Patch2:         mysql-sphinx.patch
86 Patch3:         mysql-chain-certs.patch
87 Patch4:         mysql-dubious-exports.patch
88 Patch5:         mysql-cmake.patch
89 Patch6:         mysql-protobuf.patch
90 Patch7:         drop-sysctl_h.patch
91 URL:            https://www.percona.com/software/mysql-database/percona-server
92 BuildRequires:  bison >= 1.875
93 BuildRequires:  cmake >= 2.8.2
94 BuildRequires:  curl-devel
95 BuildRequires:  readline-devel >= 6.2
96 BuildRequires:  libstdc++-devel >= 5:4.0
97 BuildRequires:  automake
98 %{?with_system_boost:BuildRequires:     boost-devel = 1.59.0}
99 BuildRequires:  libhsclient-devel
100 %{?with_tcpd:BuildRequires:     libwrap-devel}
101 BuildRequires:  mecab-devel
102 BuildRequires:  ncurses-devel >= 4.2
103 %{?with_ssl:BuildRequires:      openssl-devel >= 0.9.7d}
104 BuildRequires:  pam-devel
105 %{?with_autodeps:BuildRequires: perl-DBI}
106 BuildRequires:  perl-devel >= 1:5.6.1
107 BuildRequires:  protobuf-devel
108 BuildRequires:  python-modules
109 BuildRequires:  rpm-perlprov >= 4.1-13
110 BuildRequires:  rpmbuild(macros) >= 1.597
111 BuildRequires:  sed >= 4.0
112 %{?with_systemtap:BuildRequires:        systemtap-sdt-devel}
113 BuildRequires:  zlib-devel
114 Requires(post,preun):   /sbin/chkconfig
115 Requires(postun):       /usr/sbin/groupdel
116 Requires(postun):       /usr/sbin/userdel
117 Requires(pre):  /bin/id
118 Requires(pre):  /usr/bin/getgid
119 Requires(pre):  /usr/sbin/groupadd
120 Requires(pre):  /usr/sbin/useradd
121 Requires(triggerpostun):        sed >= 4.0
122 Requires:       %{name}-charsets = %{version}-%{release}
123 Requires:       %{name}-libs = %{version}-%{release}
124 Requires:       /usr/bin/setsid
125 Requires:       rc-scripts >= 0.2.0
126 Suggests:       mysql-client
127 %{?with_tcpd:Suggests:  tcp_wrappers}
128 Suggests:       vim-syntax-mycnf
129 Provides:       MySQL-server
130 Provides:       group(mysql)
131 Provides:       msqlormysql
132 Provides:       user(mysql)
133 Obsoletes:      MySQL
134 Obsoletes:      mysql-server
135 Conflicts:      logrotate < 3.8.0
136 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
137
138 %define         _libexecdir     %{_sbindir}
139 %define         _localstatedir  /var/lib/mysql
140 %define         _mysqlhome      /home/services/%{name}
141
142 %description
143 MySQL is a true multi-user, multi-threaded SQL (Structured
144 Query Language) database server. SQL is the most popular database
145 language in the world. MySQL is a client/server
146 implementation that consists of a server daemon mysqld and many
147 different client programs/libraries.
148
149 The main goals of MySQL are speed, robustness and easy to
150 use. MySQL was originally developed because we at Tcx needed
151 a SQL server that could handle very big databases with magnitude
152 higher speed than what any database vendor could offer to us. We have
153 now been using MySQL since 1996 in a environment with more
154 than 40 databases, 10,000 tables, of which more than 500 have more
155 than 7 million rows. This is about 50G of mission critical data.
156
157 The base upon which MySQL is built is a set of routines that
158 have been used in a highly demanding production environment for many
159 years. While MySQL is still in development, it already offers
160 a rich and highly useful function set.
161
162 %description -l fr.UTF-8
163 MySQL est un serveur de bases de donnees SQL vraiment
164 multi-usagers et multi-taches. Le langage SQL est le langage de bases
165 de donnees le plus populaire au monde. MySQL est une
166 implementation client/serveur qui consiste en un serveur (mysqld) et
167 differents programmes/bibliotheques clientes.
168
169 Les objectifs principaux de MySQL sont: vitesse, robustesse
170 et facilite d'utilisation. MySQL fut originalement developpe
171 parce que nous, chez Tcx, avions besoin d'un serveur SQL qui pouvait
172 gerer de tres grandes bases de donnees avec une vitesse d'un ordre de
173 magnitude superieur a ce que n'importe quel vendeur pouvait nous
174 offrir. Nous utilisons MySQL depuis 1996 dans un
175 environnement avec plus de 40 bases de donnees, 10000 tables,
176 desquelles plus de 500 ont plus de 7 millions de lignes. Ceci
177 represente environ 50G de donnees critiques.
178
179 A la base de la conception de MySQL, on retrouve une serie de
180 routines qui ont ete utilisees dans un environnement de production
181 pendant plusieurs annees. Meme si MySQL est encore en
182 developpement, il offre deja une riche et utile serie de fonctions.
183
184 %description -l pl.UTF-8
185 MySQL to prawdziwie wieloużytkownikowy, wielowątkowy serwer
186 baz danych SQL. SQL jest najpopularniejszym na świecie językiem
187 używanym do baz danych. MySQL to implementacja klient/serwer
188 składająca się z demona mysqld i wielu różnych programów i bibliotek
189 klienckich.
190
191 Głównymi celami MySQL-a są szybkość, potęga i łatwość
192 użytkowania. MySQL oryginalnie był tworzony, ponieważ autorzy
193 w Tcx potrzebowali serwera SQL do obsługi bardzo dużych baz danych z
194 szybkością o wiele większą, niż mogli zaoferować inni producenci baz
195 danych. Używają go od 1996 roku w środowisku z ponad 40 bazami danych,
196 10 000 tabel, z których ponad 500 zawiera ponad 7 milionów rekordów -
197 w sumie około 50GB krytycznych danych.
198
199 Baza, na której oparty jest MySQL, składa się ze zbioru
200 procedur, które były używane w bardzo wymagającym środowisku
201 produkcyjnym przez wiele lat. Pomimo, że MySQL jest ciągle
202 rozwijany, już oferuje bogaty i użyteczny zbiór funkcji.
203
204 %description -l de.UTF-8
205 MySQL ist eine SQL-Datenbank. Allerdings ist sie im Gegensatz
206 zu Oracle, DB2 oder PostgreSQL keine relationale Datenbank. Die Daten
207 werden zwar in zweidimensionalen Tabellen gespeichert und können mit
208 einem Primärschlüssel versehen werden. Es ist aber keine Definition
209 eines Fremdschlüssels möglich. Der Benutzer ist somit bei einer
210 MySQL-Datenbank völlig allein für die (referenzielle)
211 Integrität der Daten verantwortlich. Allein durch die Nutzung externer
212 Tabellenformate, wie InnoDB bzw Berkeley DB wird eine Relationalität
213 ermöglicht. Diese Projekte sind aber getrennt von MySQL zu
214 betrachten.
215
216 %description -l pt_BR.UTF-8
217 O MySQL é um servidor de banco de dados SQL realmente
218 multiusuário e multi-tarefa. A linguagem SQL é a mais popular
219 linguagem para banco de dados no mundo. O MySQL é uma
220 implementação cliente/servidor que consiste de um servidor chamado
221 mysqld e diversos programas/bibliotecas clientes. Os principais
222 objetivos do MySQL são: velocidade, robustez e facilidade de
223 uso. O MySQL foi originalmente desenvolvido porque nós na Tcx
224 precisávamos de um servidor SQL que pudesse lidar com grandes bases de
225 dados e com uma velocidade muito maior do que a que qualquer vendedor
226 podia nos oferecer. Estamos usando o MySQL desde 1996 em um
227 ambiente com mais de 40 bases de dados com 10.000 tabelas, das quais
228 mais de 500 têm mais de 7 milhões de linhas. Isto é o equivalente a
229 aproximadamente 50G de dados críticos. A base da construção do Percona
230 Server é uma série de rotinas que foram usadas em um ambiente de
231 produção com alta demanda por muitos anos. Mesmo o MySQL
232 estando ainda em desenvolvimento, ele já oferece um conjunto de
233 funções muito ricas e úteis. Veja a documentação para maiores
234 informações.
235
236 %description -l ru.UTF-8
237 MySQL - это SQL (Structured Query Language) сервер базы
238 данных. MySQL была написана Michael'ом (monty) Widenius'ом.
239 См. файл CREDITS в дистрибутиве на предмет других участников проекта и
240 прочей информации о MySQL.
241
242 %description -l uk.UTF-8
243 MySQL - це SQL (Structured Query Language) сервер бази даних.
244 MySQL було написано Michael'ом (monty) Widenius'ом. Див. файл
245 CREDITS в дистрибутиві для інформації про інших учасників проекту та
246 іншої інформації.
247
248 %package charsets
249 Summary:        MySQL - character sets definitions
250 Summary(pl.UTF-8):      MySQL - definicje kodowań znaków
251 Group:          Applications/Databases
252
253 %description charsets
254 This package contains character sets definitions needed by both client
255 and server.
256
257 %description charsets -l pl.UTF-8
258 Ten pakiet zawiera definicje kodowań znaków potrzebne dla serwera i
259 klienta.
260
261 %package extras
262 Summary:        MySQL additional utilities
263 Summary(pl.UTF-8):      Dodatkowe narzędzia do MySQL
264 Group:          Applications/Databases
265 Requires:       %{name}-client = %{version}-%{release}
266 Requires:       %{name}-libs = %{version}-%{release}
267
268 %description extras
269 MySQL additional utilities except Perl scripts (they may be
270 found in %{name}-extras-perl package).
271
272 %description extras -l pl.UTF-8
273 Dodatkowe narzędzia do MySQL - z wyjątkiem skryptów Perla
274 (które są w pakiecie %{name}-extras-perl).
275
276 %package extras-perl
277 Summary:        MySQL additional utilities written in Perl
278 Summary(pl.UTF-8):      Dodatkowe narzędzia do MySQL napisane w Perlu
279 Group:          Applications/Databases
280 Requires:       %{name}-extras = %{version}-%{release}
281 Requires:       perl-DBD-mysql
282
283 %description extras-perl
284 MySQL additional utilities written in Perl.
285
286 %description extras-perl -l pl.UTF-8
287 Dodatkowe narzędzia do MySQL napisane w Perlu.
288
289 %package client
290 Summary:        MySQL - Client
291 Summary(pl.UTF-8):      MySQL - Klient
292 Summary(pt.UTF-8):      MySQL - Cliente
293 Summary(ru.UTF-8):      MySQL клиент
294 Summary(uk.UTF-8):      MySQL клієнт
295 Group:          Applications/Databases
296 Requires:       %{name}-charsets = %{version}-%{release}
297 Requires:       %{name}-libs = %{version}-%{release}
298 Requires:       readline >= 6.2
299 Obsoletes:      MySQL-client
300
301 %description client
302 This package contains the standard MySQL clients.
303
304 %description client -l fr.UTF-8
305 Ce package contient les clients MySQL standards.
306
307 %description client -l pl.UTF-8
308 Standardowe programy klienckie MySQL.
309
310 %description client -l pt_BR.UTF-8
311 Este pacote contém os clientes padrão para o MySQL.
312
313 %description client -l ru.UTF-8
314 Этот пакет содержит только клиент MySQL.
315
316 %description client -l uk.UTF-8
317 Цей пакет містить тільки клієнта MySQL.
318
319 %package libs
320 Summary:        Shared libraries for MySQL
321 Summary(pl.UTF-8):      Biblioteki współdzielone MySQL
322 Group:          Libraries
323 Obsoletes:      libmysql10
324 Obsoletes:      mysql-doc < 4.1.12
325
326 %description libs
327 Shared libraries for MySQL.
328
329 %description libs -l pl.UTF-8
330 Biblioteki współdzielone MySQL.
331
332 %package devel
333 Summary:        MySQL - development header files and other files
334 Summary(pl.UTF-8):      MySQL - Pliki nagłówkowe i inne dla programistów
335 Summary(pt.UTF-8):      MySQL - Medições de desempenho
336 Summary(ru.UTF-8):      MySQL - хедеры и библиотеки разработчика
337 Summary(uk.UTF-8):      MySQL - хедери та бібліотеки програміста
338 Group:          Development/Libraries
339 Requires:       %{name}-libs = %{version}-%{release}
340 %{?with_ssl:Requires: openssl-devel}
341 Requires:       zlib-devel
342 Obsoletes:      MySQL-devel
343 Obsoletes:      libmysql10-devel
344 Obsoletes:      webscalesql-devel
345
346 %description devel
347 This package contains the development header files and other files
348 necessary to develop MySQL client applications.
349
350 %description devel -l fr.UTF-8
351 Ce package contient les fichiers entetes et les librairies de
352 developpement necessaires pour developper des applications clientes
353 MySQL.
354
355 %description devel -l pl.UTF-8
356 Pliki nagłówkowe i inne pliki konieczne do kompilacji aplikacji
357 klienckich MySQL.
358
359 %description devel -l pt_BR.UTF-8
360 Este pacote contém os arquivos de cabeçalho (header files) e
361 bibliotecas necessárias para desenvolver aplicações clientes do
362 MySQL.
363
364 %description devel -l ru.UTF-8
365 Этот пакет содержит хедеры и библиотеки разработчика, необходимые для
366 разработки клиентских приложений.
367
368 %description devel -l uk.UTF-8
369 Цей пакет містить хедери та бібліотеки програміста, необхідні для
370 розробки програм-клієнтів.
371
372 %package static
373 Summary:        MySQL static libraries
374 Summary(pl.UTF-8):      Biblioteki statyczne MySQL
375 Summary(ru.UTF-8):      MySQL - статические библиотеки
376 Summary(uk.UTF-8):      MySQL - статичні бібліотеки
377 Group:          Development/Libraries
378 Requires:       %{name}-devel = %{version}-%{release}
379 Obsoletes:      MySQL-static
380
381 %description static
382 MySQL static libraries.
383
384 %description static -l pl.UTF-8
385 Biblioteki statyczne MySQL.
386
387 %description static -l ru.UTF-8
388 Этот пакет содержит статические библиотеки разработчика, необходимые
389 для разработки клиентских приложений.
390
391 %description static -l uk.UTF-8
392 Цей пакет містить статичні бібліотеки програміста, необхідні для
393 розробки програм-клієнтів.
394
395 %package bench
396 Summary:        MySQL - Benchmarks
397 Summary(pl.UTF-8):      MySQL - Programy testujące szybkość działania bazy
398 Summary(pt.UTF-8):      MySQL - Medições de desempenho
399 Summary(ru.UTF-8):      MySQL - бенчмарки
400 Summary(uk.UTF-8):      MySQL - бенчмарки
401 Group:          Applications/Databases
402 Requires:       %{name} = %{version}-%{release}
403 Requires:       %{name}-client
404 Requires:       perl(DBD::mysql)
405 Obsoletes:      MySQL-bench
406
407 %description bench
408 This package contains MySQL benchmark scripts and data.
409
410 %description bench -l pl.UTF-8
411 Programy testujące szybkość serwera MySQL.
412
413 %description bench -l pt_BR.UTF-8
414 Este pacote contém medições de desempenho de scripts e dados do
415 MySQL.
416
417 %description bench -l ru.UTF-8
418 Этот пакет содержит скрипты и данные для оценки производительности
419 MySQL.
420
421 %description bench -l uk.UTF-8
422 Цей пакет містить скрипти та дані для оцінки продуктивності Percona
423 Server.
424
425 %package doc
426 Summary:        MySQL manual
427 Summary(pl.UTF-8):      Podręcznik użytkownika MySQL
428 Group:          Applications/Databases
429
430 %description doc
431 This package contains manual in HTML format.
432
433 %description doc -l pl.UTF-8
434 Podręcznik MySQL-a w formacie HTML.
435
436 %package ndb
437 Summary:        MySQL - NDB Storage Engine Daemon
438 Summary(pl.UTF-8):      MySQL - demon silnika przechowywania danych NDB
439 Group:          Applications/Databases
440 Requires:       %{name}-libs = %{version}-%{release}
441
442 %description ndb
443 This package contains the standard MySQL NDB Storage Engine
444 Daemon.
445
446 %description ndb -l pl.UTF-8
447 Ten pakiet zawiera standardowego demona silnika przechowywania danych
448 NDB.
449
450 %package ndb-client
451 Summary:        MySQL - NDB Clients
452 Summary(pl.UTF-8):      MySQL - programy klienckie NDB
453 Group:          Applications/Databases
454 Requires:       %{name}-libs = %{version}-%{release}
455
456 %description ndb-client
457 This package contains the standard MySQL NDB Clients.
458
459 %description ndb-client -l pl.UTF-8
460 Ten pakiet zawiera standardowe programy klienckie MySQL NDB.
461
462 %package ndb-mgm
463 Summary:        MySQL - NDB Management Daemon
464 Summary(pl.UTF-8):      MySQL - demon zarządzający NDB
465 Group:          Applications/Databases
466 Requires:       %{name}-libs = %{version}-%{release}
467
468 %description ndb-mgm
469 This package contains the standard MySQL NDB Management
470 Daemon.
471
472 %description ndb-mgm -l pl.UTF-8
473 Ten pakiet zawiera standardowego demona zarządzającego MySQL
474 NDB.
475
476 %package ndb-cpc
477 Summary:        MySQL - NDB CPC Daemon
478 Summary(pl.UTF-8):      MySQL - demon NDB CPC
479 Group:          Applications/Databases
480 Requires:       %{name}-libs = %{version}-%{release}
481
482 %description ndb-cpc
483 This package contains the standard MySQL NDB CPC Daemon.
484
485 %description ndb-cpc -l pl.UTF-8
486 Ten pakiet zawiera standardowego demona MySQL NDB CPC.
487
488 %prep
489 %setup -q -n percona-server-%{version}-%{percona_rel} %{?with_sphinx:-a100} %{!?with_system_boost:-a101}
490
491 # we want to use old, mysql compatible client library name
492 find . -name CMakeLists.txt -exec sed -i -e 's#perconaserverclient#mysqlclient#g' "{}" ";"
493 sed -i -e 's#perconaserverclient#mysqlclient#g' libmysql/libmysql.{ver.in,map} scripts/mysql_config.*
494
495 %patch0 -p1
496 %patch1 -p1
497 %if %{with sphinx}
498 # http://www.sphinxsearch.com/docs/manual-0.9.9.html#sphinxse-mysql51
499 mv sphinx-*/mysqlse storage/sphinx
500 %patch2 -p1
501 %endif
502 %patch3 -p1
503 %patch4 -p1
504 %patch5 -p1
505 %patch6 -p1
506 %patch7 -p1
507
508 # to get these files rebuild
509 [ -f sql/sql_yacc.cc ] && %{__rm} sql/sql_yacc.cc
510 [ -f sql/sql_yacc.h ] && %{__rm} sql/sql_yacc.h
511
512 # map has more sane versioning that default "global everything" in ver.in
513 #cp -p libmysql/libmysql.map libmysql/libmysql.ver.in
514
515 %build
516 install -d build
517 cd build
518 # NOTE that /var/lib/mysql/mysql.sock is symlink to real sock file
519 # (it defaults to first cluster but user may change it to whatever
520 # cluster it wants)
521
522 %if "%{cc_version}" >= "7.0"
523 FALLTHROUGH_OPT="-Wimplicit-fallthrough=0"
524 %else
525 FALLTHROUGH_OPT=
526 %endif
527
528 CPPFLAGS="%{rpmcppflags}" \
529 %cmake .. \
530         -DCMAKE_BUILD_TYPE=%{!?debug:RelWithDebInfo}%{?debug:Debug} \
531         -DCMAKE_C_FLAGS_DEBUG="-fno-omit-frame-pointer -fno-strict-aliasing $FALLTHROUGH_OPT" \
532         -DCMAKE_CXX_FLAGS_DEBUG="-fno-omit-frame-pointer -fno-strict-aliasing $FALLTHROUGH_OPT" \
533         -DCMAKE_C_FLAGS_RELWITHDEBINFO="%{rpmcflags} -DNDEBUG -fno-omit-frame-pointer -fno-strict-aliasing $FALLTHROUGH_OPT -Wno-shadow" \
534         -DCMAKE_CXX_FLAGS_RELWITHDEBINFO="%{rpmcxxflags} -DNDEBUG -fno-omit-frame-pointer -fno-strict-aliasing $FALLTHROUGH_OPT -Wno-shadow" \
535         -DCOMPILATION_COMMENT="TLD Linux MySQL RPM" \
536         -DCURSES_INCLUDE_PATH=/usr/include/ncurses \
537         %{?with_systemtap:-DENABLE_DTRACE=ON} \
538         -DFEATURE_SET="community" \
539         -DINSTALL_LAYOUT=RPM \
540         -DINSTALL_LIBDIR=%{_lib} \
541         -DINSTALL_MYSQLTESTDIR_RPM="" \
542         -DINSTALL_PLUGINDIR=%{_lib}/%{name}/plugin \
543         -DINSTALL_SQLBENCHDIR=%{_datadir} \
544         -DINSTALL_SUPPORTFILESDIR=share/%{name}-support \
545         -DINSTALL_MYSQLSHAREDIR=share/%{name} \
546         -DINSTALL_SECURE_FILE_PRIVDIR="" \
547         -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \
548         %{?debug:-DWITH_DEBUG=ON} \
549         -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
550         -DWITH_FAST_MUTEXES=ON \
551         -DWITH_LIBWRAP=%{?with_tcpd:ON}%{!?with_tcpd:OFF} \
552         -DWITH_PAM=ON \
553         -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
554         -DWITH_PIC=ON \
555         -DWITH_SCALABILITY_METRICS=ON \
556         -DWITH_SSL=%{?with_ssl:system}%{!?with_ssl:no} \
557         -DWITH_UNIT_TESTS=%{?with_tests:ON}%{!?with_tests:OFF} \
558         %{!?with_tokudb:-DWITHOUT_TOKUDB=ON} \
559         %{!?with_rocksdb:-DWITHOUT_ROCKSDB=ON} \
560 %if %{without system_boost}
561         %{!?with_system_boost:-DWITH_BOOST="$(pwd)/$(ls -1d ../boost_*)"} \
562 %endif
563         -DWITH_ZLIB=system \
564         -DWITH_READLINE=system \
565         -DWITH_LZ4=system \
566         -DWITH_LIBEVENT=system \
567         -DWITH_PROTOBUF=system \
568         -DWITH_MECAB=system \
569         -DTMPDIR=/var/tmp
570
571 %{__make}
572
573 %{?with_tests:%{__make} test}
574
575 %install
576 rm -rf $RPM_BUILD_ROOT
577 install -d $RPM_BUILD_ROOT/etc/{logrotate.d,rc.d/init.d,sysconfig,%{name},skel} \
578            $RPM_BUILD_ROOT/var/{log/{archive,}/%{name},lib/mysql} \
579            $RPM_BUILD_ROOT%{_mysqlhome} \
580            $RPM_BUILD_ROOT%{_libdir}
581
582 %{__make} -C build install \
583         DESTDIR=$RPM_BUILD_ROOT
584
585 install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
586 cp -a %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/%{name}
587 cp -a %{SOURCE3} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}
588 # This is template for configuration file which is created after 'service mysql init'
589 cp -a %{SOURCE4} mysqld.conf
590 cp -a %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/clusters.conf
591 touch $RPM_BUILD_ROOT/var/log/%{name}/{mysqld,query,slow}.log
592
593 # remove innodb directives from mysqld.conf if mysqld is configured without
594 %if %{without innodb}
595         cp mysqld.conf mysqld.tmp
596         awk 'BEGIN { RS="\n\n" } !/innodb/ { printf("%s\n\n", $0) }' < mysqld.tmp > mysqld.conf
597 %endif
598
599 # remove berkeley-db directives from mysqld.conf if mysqld is configured without
600 cp mysqld.conf mysqld.tmp
601 awk 'BEGIN { RS="\n\n" } !/bdb/ { printf("%s\n\n", $0) }' < mysqld.tmp > mysqld.conf
602
603 cp -a mysqld.conf $RPM_BUILD_ROOT%{_datadir}/%{name}/mysqld.conf
604 cp -a %{SOURCE13} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/mysql-client.conf
605 ln -s mysql-client.conf $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/my.cnf
606 cp -a %{SOURCE14} $RPM_BUILD_ROOT/etc/skel/.my.cnf
607
608 # NDB
609 %if %{with ndb}
610 install -p %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}-ndb
611 cp -a %{SOURCE8} $RPM_BUILD_ROOT/etc/sysconfig/%{name}-ndb
612 install -p %{SOURCE9} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}-ndb-mgm
613 cp -a %{SOURCE10} $RPM_BUILD_ROOT/etc/sysconfig/%{name}-ndb-mgm
614 install -p %{SOURCE11} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}-ndb-cpc
615 cp -a %{SOURCE12} $RPM_BUILD_ROOT/etc/sysconfig/%{name}-ndb-cpc
616 %endif
617
618 sed -i -e 's,/usr//usr,%{_prefix},g' $RPM_BUILD_ROOT%{_bindir}/mysql_config
619 sed -i -e '/libs/s/$ldflags//' $RPM_BUILD_ROOT%{_bindir}/mysql_config
620 sed -i -e '/libs/s/-lprobes_mysql//' $RPM_BUILD_ROOT%{_bindir}/mysql_config
621
622 # remove known unpackaged files
623 %{__rm} -r $RPM_BUILD_ROOT%{_datadir}/%{name}-support
624
625 # rename not to be so generic name
626 mv $RPM_BUILD_ROOT%{_bindir}/{,mysql_}resolve_stack_dump
627 mv $RPM_BUILD_ROOT%{_mandir}/man1/{,mysql_}resolve_stack_dump.1
628
629 # move to _sysconfdir
630 #mv $RPM_BUILD_ROOT{%{_bindir},%{_sysconfdir}}/mysqlaccess.conf
631
632 # not useful without -debug build
633 %{!?debug:%{__rm} $RPM_BUILD_ROOT%{_bindir}/mysql_resolve_stack_dump}
634 %{!?debug:%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysql_resolve_stack_dump.1}
635 # generate symbols file, so one can generate backtrace using it
636 # mysql_resolve_stack_dump -s %{_datadir}/%{name}/mysqld.sym -n mysqld.stack.
637 # http://dev.mysql.com/doc/refman/5.0/en/using-stack-trace.html
638 %{?debug:nm -n $RPM_BUILD_ROOT%{_sbindir}/mysqld > $RPM_BUILD_ROOT%{_datadir}/%{name}/mysqld.sym}
639
640 # do not clobber users $PATH
641 mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/mysql_plugin
642 mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/mysql_upgrade
643 mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/innochecksum
644 mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/myisamchk
645 mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/myisamlog
646 mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/myisampack
647 #mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/mysql_fix_privilege_tables
648 mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/my_print_defaults
649 sed -i -e 's#/usr/bin/my_print_defaults#%{_sbindir}/my_print_defaults#g' $RPM_BUILD_ROOT%{_bindir}/mysql_install_db
650 mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/mysqlcheck
651
652 # delete - functionality in initscript / rpm
653 # note: mysql_install_db (and thus resolveip) are needed by digikam
654 %{__rm} $RPM_BUILD_ROOT%{_bindir}/mysqld_safe
655 %{__rm} $RPM_BUILD_ROOT%{_bindir}/mysqld_multi
656 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysqld_{multi,safe}*
657 %{__rm} $RPM_BUILD_ROOT%{_datadir}/%{name}/errmsg-utf8.txt
658 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysql.server*
659 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysqlman.1*
660 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/comp_err.1*
661
662 # we don't package those (we have no -test or -testsuite pkg) and some of them just segfault
663 %{__rm} $RPM_BUILD_ROOT%{_bindir}/mysql_client_test
664 %{__rm} -r $RPM_BUILD_ROOT%{_datadir}/mysql-test
665 # libmysqld examples
666 %{__rm} $RPM_BUILD_ROOT%{_bindir}/mysql{_client_test_embedded,_embedded,test_embedded}
667
668 # not needed
669 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/plugin/libdaemon_example.*
670 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/plugin/daemon_example.ini
671
672 # not an .info file
673 %{__rm} $RPM_BUILD_ROOT%{_infodir}/mysql.info
674
675 %clean
676 rm -rf $RPM_BUILD_ROOT
677
678 %pre
679 %groupadd -g 89 mysql
680 %useradd -u 89 -d %{_mysqlhome} -s /bin/sh -g mysql -c "MySQL Server" mysql
681
682 %post
683 /sbin/ldconfig
684 /sbin/chkconfig --add %{name}
685 %service %{name} restart
686
687 %preun
688 if [ "$1" = "0" ]; then
689         %service -q %{name} stop
690         /sbin/chkconfig --del %{name}
691 fi
692
693 %postun
694 /sbin/ldconfig
695 if [ "$1" = "0" ]; then
696         %userremove mysql
697         %groupremove mysql
698 fi
699
700 %post ndb
701 /sbin/chkconfig --add %{name}-ndb
702 %service %{name}-ndb restart "%{name} NDB engine"
703
704 %preun ndb
705 if [ "$1" = "0" ]; then
706         %service %{name}-ndb stop
707         /sbin/chkconfig --del %{name}-ndb
708 fi
709
710 %post ndb-mgm
711 /sbin/chkconfig --add %{name}-ndb-mgm
712 %service %{name}-ndb-mgm restart "%{name} NDB management node"
713
714 %preun ndb-mgm
715 if [ "$1" = "0" ]; then
716         %service %{name}-ndb-mgm stop
717         /sbin/chkconfig --del %{name}-ndb-mgm
718 fi
719
720 %post ndb-cpc
721 /sbin/chkconfig --add %{name}-ndb-cpc
722 %service %{name}-ndb-cpc restart "mysql NDB CPC"
723
724 %preun ndb-cpc
725 if [ "$1" = "0" ]; then
726         %service %{name}-ndb-cpc stop
727         /sbin/chkconfig --del %{name}-ndb-cpc
728 fi
729
730 %post   libs -p /sbin/ldconfig
731 %postun libs -p /sbin/ldconfig
732
733 %files
734 %defattr(644,root,root,755)
735 %doc build-ps/rpm/*.cnf
736 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name}
737 %attr(754,root,root) /etc/rc.d/init.d/%{name}
738 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name}
739 %attr(640,root,mysql) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/clusters.conf
740 %attr(755,root,root) %{_bindir}/ps_mysqld_helper
741 %attr(755,root,root) %{_bindir}/ps_tokudb_admin
742 %attr(755,root,root) %{_bindir}/ps-admin
743 %attr(755,root,root) %{_sbindir}/innochecksum
744 %attr(755,root,root) %{_sbindir}/my_print_defaults
745 %attr(755,root,root) %{_sbindir}/myisamchk
746 %attr(755,root,root) %{_sbindir}/myisamlog
747 %attr(755,root,root) %{_sbindir}/myisampack
748 %attr(755,root,root) %{_sbindir}/mysql_plugin
749 %attr(755,root,root) %{_sbindir}/mysql_upgrade
750 %attr(755,root,root) %{_sbindir}/mysqlcheck
751 %attr(755,root,root) %{_sbindir}/mysqld
752 %dir %{_libdir}/%{name}
753 %dir %{_libdir}/%{name}/plugin
754 %attr(755,root,root) %{_libdir}/%{name}/plugin/adt_null.so
755 %attr(755,root,root) %{_libdir}/%{name}/plugin/audit_log.so
756 %attr(755,root,root) %{_libdir}/%{name}/plugin/auth_pam_compat.so
757 %attr(755,root,root) %{_libdir}/%{name}/plugin/auth_pam.so
758 %attr(755,root,root) %{_libdir}/%{name}/plugin/auth.so
759 %attr(755,root,root) %{_libdir}/%{name}/plugin/auth_socket.so
760 %attr(755,root,root) %{_libdir}/%{name}/plugin/auth_test_plugin.so
761 %attr(755,root,root) %{_libdir}/%{name}/plugin/authentication_ldap_sasl_client.so
762 %attr(755,root,root) %{_libdir}/%{name}/plugin/connection_control.so
763 %attr(755,root,root) %{_libdir}/%{name}/plugin/dialog.so
764 %attr(755,root,root) %{_libdir}/%{name}/plugin/group_replication.so
765 %attr(755,root,root) %{_libdir}/%{name}/plugin/keyring_file.so
766 %attr(755,root,root) %{_libdir}/%{name}/plugin/keyring_udf.so
767 %attr(755,root,root) %{_libdir}/%{name}/plugin/keyring_vault.so
768 %attr(755,root,root) %{_libdir}/%{name}/plugin/libpluginmecab.so
769 %attr(755,root,root) %{_libdir}/%{name}/plugin/libfnv1a_udf.so
770 %attr(755,root,root) %{_libdir}/%{name}/plugin/libfnv_udf.so
771 %attr(755,root,root) %{_libdir}/%{name}/plugin/libmurmur_udf.so
772 %attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_framework.so
773 %attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_services.so
774 %attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_services_threaded.so
775 %attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_session_detach.so
776 %attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_session_info.so
777 %attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_session_in_thd.so
778 %attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_sql_2_sessions.so
779 %attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_sql_all_col_types.so
780 %attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_sql_cmds_1.so
781 %attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_sql_commit.so
782 %attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_sql_complex.so
783 %attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_sql_errors.so
784 %attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_sql_lock.so
785 %attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_sql_processlist.so
786 %attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_sql_replication.so
787 %attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_sql_shutdown.so
788 %attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_sql_sqlmode.so
789 %attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_sql_stored_procedures_functions.so
790 %attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_sql_views_triggers.so
791 %attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_x_sessions_deinit.so
792 %attr(755,root,root) %{_libdir}/%{name}/plugin/libtest_x_sessions_init.so
793 %attr(755,root,root) %{_libdir}/%{name}/plugin/locking_service.so
794 %attr(755,root,root) %{_libdir}/%{name}/plugin/mypluglib.so
795 %attr(755,root,root) %{_libdir}/%{name}/plugin/mysql_no_login.so
796 %attr(755,root,root) %{_libdir}/%{name}/plugin/mysqlx.so
797 %attr(755,root,root) %{_libdir}/%{name}/plugin/qa_auth_client.so
798 %attr(755,root,root) %{_libdir}/%{name}/plugin/qa_auth_interface.so
799 %attr(755,root,root) %{_libdir}/%{name}/plugin/qa_auth_server.so
800 %attr(755,root,root) %{_libdir}/%{name}/plugin/query_response_time.so
801 %attr(755,root,root) %{_libdir}/%{name}/plugin/replication_observers_example_plugin.so
802 %attr(755,root,root) %{_libdir}/%{name}/plugin/rewrite_example.so
803 %attr(755,root,root) %{_libdir}/%{name}/plugin/rewriter.so
804 %attr(755,root,root) %{_libdir}/%{name}/plugin/scalability_metrics.so
805 %attr(755,root,root) %{_libdir}/%{name}/plugin/semisync_master.so
806 %attr(755,root,root) %{_libdir}/%{name}/plugin/semisync_slave.so
807 %attr(755,root,root) %{_libdir}/%{name}/plugin/test_security_context.so
808 %attr(755,root,root) %{_libdir}/%{name}/plugin/test_udf_services.so
809 %attr(755,root,root) %{_libdir}/%{name}/plugin/validate_password.so
810 %attr(755,root,root) %{_libdir}/%{name}/plugin/version_token.so
811 %if %{with sphinx}
812 %attr(755,root,root) %{_libdir}/%{name}/plugin/ha_sphinx.so
813 %endif
814 %if %{with tokudb}
815 %attr(755,root,root) %{_bindir}/tokuft_logprint
816 %attr(755,root,root) %{_bindir}/tokuftdump
817 %attr(755,root,root) %{_libdir}/%{name}/plugin/ha_tokudb.so
818 %attr(755,root,root) %{_libdir}/%{name}/plugin/tokudb_backup.so
819 %attr(755,root,root) %{_libdir}/libHotBackup.so
820 %endif
821 %if %{with rocksdb}
822 %attr(755,root,root) %{_bindir}/ldb
823 %attr(755,root,root) %{_bindir}/mysql_ldb
824 %attr(755,root,root) %{_bindir}/sst_dump
825 %attr(755,root,root) %{_libdir}/%{name}/plugin/ha_rocksdb.so
826 %endif
827 # for plugins
828 %{_mandir}/man1/innochecksum.1*
829 %{_mandir}/man1/my_print_defaults.1*
830 %{_mandir}/man1/myisamchk.1*
831 %{_mandir}/man1/myisamlog.1*
832 %{_mandir}/man1/myisampack.1*
833 %{_mandir}/man1/mysql_plugin.1*
834 %{_mandir}/man1/mysql_upgrade.1*
835 %{_mandir}/man1/mysqlcheck.1*
836 %{_mandir}/man8/mysqld.8*
837
838 %if %{?debug:1}0
839 %attr(755,root,root) %{_bindir}/*resolve_stack_dump
840 %{_datadir}/%{name}/mysqld.sym
841 %{_mandir}/man1/*resolve_stack_dump.1*
842 %endif
843
844 %attr(700,mysql,mysql) %{_mysqlhome}
845 # root:root is proper here for mysql.rpm while mysql:mysql is potential security hole
846 %attr(751,root,root) /var/lib/mysql
847 %attr(750,mysql,mysql) %dir /var/log/%{name}
848 %attr(750,mysql,mysql) %dir /var/log/archive/%{name}
849 %attr(640,mysql,mysql) %ghost /var/log/%{name}/*
850
851 # This is template for configuration file which is created after 'service mysql init'
852 %{_datadir}/%{name}/mysqld.conf
853 %{_datadir}/%{name}/install_rewriter.sql
854 %{_datadir}/%{name}/mysql_security_commands.sql
855 %{_datadir}/%{name}/mysql_sys_schema.sql
856 %{_datadir}/%{name}/mysql_system_tables.sql
857 %{_datadir}/%{name}/mysql_system_tables_data.sql
858 %{_datadir}/%{name}/mysql_test_data_timezone.sql
859 %{_datadir}/%{name}/uninstall_rewriter.sql
860
861 %{_datadir}/%{name}/english
862 %{_datadir}/%{name}/dictionary.txt
863 %{_datadir}/%{name}/fill_help_tables.sql
864 %{_datadir}/%{name}/innodb_memcached_config.sql
865 # Don't mark these with %%lang. These are used depending
866 # on database client settings.
867 %{_datadir}/%{name}/bulgarian
868 %{_datadir}/%{name}/czech
869 %{_datadir}/%{name}/danish
870 %{_datadir}/%{name}/german
871 %{_datadir}/%{name}/greek
872 %{_datadir}/%{name}/spanish
873 %{_datadir}/%{name}/estonian
874 %{_datadir}/%{name}/french
875 %{_datadir}/%{name}/hungarian
876 %{_datadir}/%{name}/italian
877 %{_datadir}/%{name}/japanese
878 %{_datadir}/%{name}/korean
879 %{_datadir}/%{name}/dutch
880 %{_datadir}/%{name}/norwegian
881 %{_datadir}/%{name}/norwegian-ny
882 %{_datadir}/%{name}/polish
883 %{_datadir}/%{name}/portuguese
884 %{_datadir}/%{name}/romanian
885 %{_datadir}/%{name}/russian
886 %{_datadir}/%{name}/serbian
887 %{_datadir}/%{name}/slovak
888 %{_datadir}/%{name}/swedish
889 %{_datadir}/%{name}/ukrainian
890
891 %files charsets
892 %defattr(644,root,root,755)
893 %dir %{_datadir}/%{name}
894 %{_datadir}/%{name}/charsets
895
896 %files extras
897 %defattr(644,root,root,755)
898 %attr(755,root,root) %{_bindir}/myisam_ftdump
899 %attr(755,root,root) %{_bindir}/mysql_install_db
900 %attr(755,root,root) %{_bindir}/mysql_secure_installation
901 %attr(755,root,root) %{_bindir}/mysql_tzinfo_to_sql
902 %attr(755,root,root) %{_bindir}/perror
903 %attr(755,root,root) %{_bindir}/replace
904 %attr(755,root,root) %{_bindir}/resolveip
905 %{_mandir}/man1/myisam_ftdump.1*
906 %{_mandir}/man1/mysql_install_db.1*
907 %{_mandir}/man1/mysql_secure_installation.1*
908 %{_mandir}/man1/mysql_tzinfo_to_sql.1*
909 %{_mandir}/man1/perror.1*
910 %{_mandir}/man1/replace.1*
911 %{_mandir}/man1/resolveip.1*
912
913 %files extras-perl
914 %defattr(644,root,root,755)
915 %attr(755,root,root) %{_bindir}/mysqldumpslow
916 %{_mandir}/man1/mysqldumpslow.1*
917
918 %files client
919 %defattr(644,root,root,755)
920 %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/skel/.my.cnf
921 %attr(755,root,root) %{_bindir}/lz4_decompress
922 %attr(755,root,root) %{_bindir}/mysql
923 %attr(755,root,root) %{_bindir}/mysql_config_editor
924 %attr(755,root,root) %{_bindir}/mysql_ssl_rsa_setup
925 %attr(755,root,root) %{_bindir}/mysqladmin
926 %attr(755,root,root) %{_bindir}/mysqlbinlog
927 %attr(755,root,root) %{_bindir}/mysqldump
928 %attr(755,root,root) %{_bindir}/mysqlimport
929 %attr(755,root,root) %{_bindir}/mysqlpump
930 %attr(755,root,root) %{_bindir}/mysqlshow
931 %attr(755,root,root) %{_bindir}/zlib_decompress
932 %{_mandir}/man1/lz4_decompress.1*
933 %{_mandir}/man1/mysql.1*
934 %{_mandir}/man1/mysql_config_editor.1*
935 %{_mandir}/man1/mysql_ssl_rsa_setup.1*
936 %{_mandir}/man1/mysqladmin.1*
937 %{_mandir}/man1/mysqlbinlog.1*
938 %{_mandir}/man1/mysqldump.1*
939 %{_mandir}/man1/mysqlimport.1*
940 %{_mandir}/man1/mysqlpump.1*
941 %{_mandir}/man1/mysqlshow.1*
942 %{_mandir}/man1/zlib_decompress.1*
943
944 %files libs
945 %defattr(644,root,root,755)
946 %attr(751,root,root) %dir %{_sysconfdir}/%{name}
947 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/mysql-client.conf
948 %{_sysconfdir}/%{name}/my.cnf
949 %attr(755,root,root) %{_libdir}/libmysqlclient.so.*.*.*
950 %attr(755,root,root) %ghost %{_libdir}/libmysqlclient.so.20
951 %if %{with ndb}
952 %attr(755,root,root) %{_libdir}/libndbclient.so.*.*.*
953 %attr(755,root,root) %ghost %{_libdir}/libndbclient.so.3
954 %endif
955
956 %files devel
957 %defattr(644,root,root,755)
958 %attr(755,root,root) %{_bindir}/mysql_config
959 %attr(755,root,root) %{_libdir}/libmysqlclient.so
960 %{_pkgconfigdir}/mysqlclient.pc
961 %if %{with ndb}
962 %attr(755,root,root) %{_libdir}/libndbclient.so
963 %endif
964 # static-only so far
965 %{_libdir}/libmysqld.a
966 %{_libdir}/libmysqlservices.a
967 %{_includedir}/mysql
968 %{_aclocaldir}/mysql.m4
969 %{_mandir}/man1/mysql_config.1*
970
971 %files static
972 %defattr(644,root,root,755)
973 %{_libdir}/libmysqlclient.a
974 %if %{with ndb}
975 %{_libdir}/libndbclient.a
976 %endif
977
978 %files bench
979 %defattr(644,root,root,755)
980 %attr(755,root,root) %{_bindir}/mysqlslap
981 %attr(755,root,root) %{_bindir}/mysqltest
982 %{_mandir}/man1/mysqlslap.1*
983
984 %if %{with ndb}
985 %files ndb
986 %defattr(644,root,root,755)
987 %attr(755,root,root) %{_sbindir}/ndbd
988 %attr(754,root,root) /etc/rc.d/init.d/%{name}-ndb
989 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name}-ndb
990 %{_mandir}/man1/ndbd_redo_log_reader.1*
991 %{_mandir}/man8/ndbd.8*
992
993 %files ndb-client
994 %defattr(644,root,root,755)
995 %attr(755,root,root) %{_bindir}/ndb_config
996 %attr(755,root,root) %{_bindir}/ndb_delete_all
997 %attr(755,root,root) %{_bindir}/ndb_desc
998 %attr(755,root,root) %{_bindir}/ndb_drop_index
999 %attr(755,root,root) %{_bindir}/ndb_drop_table
1000 %attr(755,root,root) %{_bindir}/ndb_error_reporter
1001 %attr(755,root,root) %{_bindir}/ndb_mgm
1002 %attr(755,root,root) %{_bindir}/ndb_print_backup_file
1003 %attr(755,root,root) %{_bindir}/ndb_print_schema_file
1004 %attr(755,root,root) %{_bindir}/ndb_print_sys_file
1005 %attr(755,root,root) %{_bindir}/ndb_restore
1006 %attr(755,root,root) %{_bindir}/ndb_select_all
1007 %attr(755,root,root) %{_bindir}/ndb_select_count
1008 %attr(755,root,root) %{_bindir}/ndb_show_tables
1009 %attr(755,root,root) %{_bindir}/ndb_size.pl
1010 %attr(755,root,root) %{_bindir}/ndb_test_platform
1011 %attr(755,root,root) %{_bindir}/ndb_waiter
1012 %{_mandir}/man1/ndb_config.1*
1013 %{_mandir}/man1/ndb_delete_all.1*
1014 %{_mandir}/man1/ndb_desc.1*
1015 %{_mandir}/man1/ndb_drop_index.1*
1016 %{_mandir}/man1/ndb_drop_table.1*
1017 %{_mandir}/man1/ndb_error_reporter.1*
1018 %{_mandir}/man1/ndb_mgm.1*
1019 %{_mandir}/man1/ndb_print_backup_file.1*
1020 %{_mandir}/man1/ndb_print_schema_file.1*
1021 %{_mandir}/man1/ndb_print_sys_file.1*
1022 %{_mandir}/man1/ndb_restore.1*
1023 %{_mandir}/man1/ndb_select_all.1*
1024 %{_mandir}/man1/ndb_select_count.1*
1025 %{_mandir}/man1/ndb_show_tables.1*
1026 %{_mandir}/man1/ndb_size.pl.1*
1027 %{_mandir}/man1/ndb_waiter.1*
1028
1029 %files ndb-mgm
1030 %defattr(644,root,root,755)
1031 %attr(755,root,root) %{_sbindir}/ndb_mgmd
1032 %attr(754,root,root) /etc/rc.d/init.d/%{name}-ndb-mgm
1033 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name}-ndb-mgm
1034 %{_mandir}/man8/ndb_mgmd.8*
1035
1036 %files ndb-cpc
1037 %defattr(644,root,root,755)
1038 %attr(755,root,root) %{_sbindir}/ndb_cpcd
1039 %attr(754,root,root) /etc/rc.d/init.d/mysql-ndb-cpc
1040 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name}-ndb-cpc
1041 %{_mandir}/man1/ndb_cpcd.1*
1042 %endif