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