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