]> git.pld-linux.org Git - packages/mysql.git/blame - mysql.spec
use system libevent
[packages/mysql.git] / mysql.spec
CommitLineData
50200f22 1# TODO:
1a9285c0 2# - mysqldump ... (invalid usage) prints to stdout not stderr (idiotic if you want to create dump and get usage in .sql)
c0326166 3# - http://bugs.mysql.com/bug.php?id=16470
9cc19375
AM
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}
13e51307 8# - !!! Makefiles for libmysqld.so !!!
643c5039
AG
9# - segfaults on select from non-mysql user (caused by builder environment):
10# https://bugs.launchpad.net/pld-linux/+bug/381904
20272b1d 11# (profiling disabled temporaily to workaround this)
54634a33
ER
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
6c94aa6c 18#
19# Conditional build:
aa8262f8 20%bcond_with autodeps # BR packages needed only for resolving deps
54e670e7 21%bcond_without innodb # InnoDB storage engine support
84fe95c7 22%bcond_without big_tables # Support tables with more than 4G rows even on 32 bit platforms
dc311758 23%bcond_without federated # Federated storage engine support
54e670e7
PG
24%bcond_without raid # RAID support
25%bcond_without ssl # OpenSSL support
f42f4b0d 26%bcond_without systemtap # systemtap/dtrace probes
54e670e7 27%bcond_without tcpd # libwrap (tcp_wrappers) support
26802bc2 28%bcond_without sphinx # Sphinx storage engine support
416b5906 29# mysql needs boost 1.59.0 and doesn't support newer/older boost versions
7eab437c 30%bcond_with system_boost
7fbcff7e 31%bcond_with tests # FIXME: don't run correctly
08472466 32%bcond_with ndb # NDB is now a separate product, this here is broken, so disable it
92992b51 33
c2c4112b 34%include /usr/lib/rpm/macros.perl
ceb5ca86 35Summary: MySQL: a very fast and reliable SQL database engine
fe56cb4d
ER
36Summary(de.UTF-8): MySQL: ist eine SQL-Datenbank
37Summary(fr.UTF-8): MySQL: un serveur SQL rapide et fiable
38Summary(pl.UTF-8): MySQL: bardzo szybka i niezawodna baza danych (SQL)
39Summary(pt_BR.UTF-8): MySQL: Um servidor SQL rápido e confiável
40Summary(ru.UTF-8): MySQL - быстрый SQL-сервер
41Summary(uk.UTF-8): MySQL - швидкий SQL-сервер
42Summary(zh_CN.UTF-8): MySQL数据库服务器
75eb20a9 43Name: mysql
8a88ca8f 44Version: 5.7.17
c3b4e967 45Release: 0.2
5a944cb3 46License: GPL + MySQL FLOSS Exception
7803433d 47Group: Applications/Databases
6f2c1189 48Source0: http://cdn.mysql.com/Downloads/MySQL-5.7/%{name}-%{version}.tar.gz
8a88ca8f 49# Source0-md5: db2a87ede6132b226f8d43d3ac349284
416b5906
AM
50Source100: http://www.sphinxsearch.com/files/sphinx-2.2.11-release.tar.gz
51# Source100-md5: 5cac34f3d78a9d612ca4301abfcbd666
7eab437c 52%if %{without system_boost}
a820fdeb 53Source101: http://downloads.sourceforge.net/boost/boost_1_59_0.tar.bz2
8a88ca8f 54# Source101-md5: 6aa9a5c6a4ca1016edd0ed1178e3cb87
7eab437c 55%endif
2a30c7ca 56Source1: %{name}.init
57Source2: %{name}.sysconfig
58Source3: %{name}.logrotate
59Source4: %{name}d.conf
50200f22 60Source5: %{name}-clusters.conf
d72472ee
AM
61Source7: %{name}-ndb.init
62Source8: %{name}-ndb.sysconfig
63Source9: %{name}-ndb-mgm.init
64Source10: %{name}-ndb-mgm.sysconfig
65Source11: %{name}-ndb-cpc.init
66Source12: %{name}-ndb-cpc.sysconfig
7df2d935 67Source13: %{name}-client.conf
978cdac2 68Source14: my.cnf
abe20e21 69Patch0: %{name}-opt.patch
a820fdeb 70Patch1: lz4.patch
19538fde 71
416b5906 72Patch17: %{name}-5.7-sphinx.patch
fa51fc20 73Patch18: %{name}-sphinx.patch
fc032bd9 74Patch19: %{name}-chain-certs.patch
1ff19b43 75
96b6cbc2 76Patch24: %{name}-cmake.patch
1e4b76dd 77
4256f553 78Patch26: mysqldumpslow-clusters.patch
92992b51 79URL: http://www.mysql.com/products/community/
cf421da8 80BuildRequires: bison >= 1.875
7eab437c 81%{?with_system_boost:BuildRequires: boost-devel >= 1.59.0}
cd6a3f78 82BuildRequires: cmake >= 2.6
19538fde 83BuildRequires: libaio-devel
96b6cbc2 84BuildRequires: readline-devel >= 6.2
dc8a8fa0
ER
85%if "%{pld_release}" == "ac"
86BuildRequires: libstdc++4-devel >= 5:4.0
87%else
6a4d2f37 88BuildRequires: libstdc++-devel >= 5:4.0
dc8a8fa0 89%endif
9f126bbc 90BuildRequires: automake
c3b4e967 91BuildRequires: libevent-devel
3d33ff78 92BuildRequires: libhsclient-devel
2e5f696d 93%{?with_tcpd:BuildRequires: libwrap-devel}
a820fdeb 94BuildRequires: lz4-devel
7b36dde8 95BuildRequires: ncurses-devel >= 4.2
2e5f696d 96%{?with_ssl:BuildRequires: openssl-devel >= 0.9.7d}
9f126bbc 97BuildRequires: pam-devel
3f8fcf96 98%{?with_autodeps:BuildRequires: perl-DBI}
d15a6540 99BuildRequires: perl-devel >= 1:5.6.1
9f126bbc 100BuildRequires: python-modules
d15a6540 101BuildRequires: rpm-perlprov >= 4.1-13
6a4d2f37 102BuildRequires: rpmbuild(macros) >= 1.597
84fe95c7 103BuildRequires: sed >= 4.0
f42f4b0d 104%{?with_systemtap:BuildRequires: systemtap-sdt-devel}
5a225b4d 105BuildRequires: zlib-devel
7803433d
ER
106Requires(post,preun): /sbin/chkconfig
107Requires(postun): /usr/sbin/groupdel
108Requires(postun): /usr/sbin/userdel
33f9bccb 109Requires(pre): /bin/id
7803433d 110Requires(pre): /usr/bin/getgid
33f9bccb 111Requires(pre): /usr/sbin/groupadd
112Requires(pre): /usr/sbin/useradd
6e6b75c9 113Requires(triggerpostun): sed >= 4.0
ad0a7267 114Requires: %{name}-charsets = %{version}-%{release}
5a0031b8 115Requires: %{name}-libs = %{version}-%{release}
2539bd3a 116Requires: /usr/bin/setsid
7803433d 117Requires: rc-scripts >= 0.2.0
99e96521
ER
118Suggests: mysql-client
119%{?with_tcpd:Suggests: tcp_wrappers}
a76adf0b 120Suggests: vim-syntax-mycnf
717073d7 121Provides: MySQL-server
c354982f 122Provides: group(mysql)
717073d7 123Provides: msqlormysql
c354982f 124Provides: user(mysql)
5a225b4d 125Obsoletes: MySQL
126Obsoletes: mysql-server
2070f281 127Conflicts: logrotate < 3.8.0
c354982f 128BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
ceb5ca86 129
8de1b4ed 130%define _libexecdir %{_sbindir}
e2417b45 131%define _localstatedir /var/lib/mysql
ea2c1c6a 132%define _mysqlhome /home/services/mysql
e73cea44 133
ceb5ca86 134%description
75eb20a9 135MySQL is a true multi-user, multi-threaded SQL (Structured Query
136Language) database server. SQL is the most popular database language
137in the world. MySQL is a client/server implementation that consists of
138a server daemon mysqld and many different client programs/libraries.
139
140The main goals of MySQL are speed, robustness and easy to use. MySQL
141was originally developed because we at Tcx needed a SQL server that
142could handle very big databases with magnitude higher speed than what
143any database vendor could offer to us. We have now been using MySQL
144since 1996 in a environment with more than 40 databases, 10,000
145tables, of which more than 500 have more than 7 million rows. This is
146about 50G of mission critical data.
147
148The base upon which MySQL is built is a set of routines that have been
149used in a highly demanding production environment for many years.
150While MySQL is still in development, it already offers a rich and
151highly useful function set.
ceb5ca86 152
a82d818e 153%description -l fr.UTF-8
3fe2f194 154MySQL est un serveur de bases de donnees SQL vraiment multi-usagers et
75eb20a9 155multi-taches. Le langage SQL est le langage de bases de donnees le
156plus populaire au monde. MySQL est une implementation client/serveur
157qui consiste en un serveur (mysqld) et differents
158programmes/bibliotheques clientes.
159
160Les objectifs principaux de MySQL sont: vitesse, robustesse et
161facilite d'utilisation. MySQL fut originalement developpe parce que
162nous, chez Tcx, avions besoin d'un serveur SQL qui pouvait gerer de
163tres grandes bases de donnees avec une vitesse d'un ordre de magnitude
164superieur a ce que n'importe quel vendeur pouvait nous offrir. Nous
165utilisons MySQL depuis 1996 dans un environnement avec plus de 40
166bases de donnees, 10000 tables, desquelles plus de 500 ont plus de 7
167millions de lignes. Ceci represente environ 50G de donnees critiques.
168
169A la base de la conception de MySQL, on retrouve une serie de routines
170qui ont ete utilisees dans un environnement de production pendant
171plusieurs annees. Meme si MySQL est encore en developpement, il offre
172deja une riche et utile serie de fonctions.
3fe2f194 173
a82d818e
JR
174%description -l pl.UTF-8
175MySQL to prawdziwie wieloużytkownikowy, wielowątkowy serwer baz danych
176SQL. SQL jest najpopularniejszym na świecie językiem używanym do baz
177danych. MySQL to implementacja klient/serwer składająca się z demona
178mysqld i wielu różnych programów i bibliotek klienckich.
179
180Głównymi celami MySQL-a są szybkość, potęga i łatwość użytkowania.
181MySQL oryginalnie był tworzony, ponieważ autorzy w Tcx potrzebowali
182serwera SQL do obsługi bardzo dużych baz danych z szybkością o wiele
183większą, niż mogli zaoferować inni producenci baz danych. Używają go
184od 1996 roku w środowisku z ponad 40 bazami danych, 10 000 tabel, z
185których ponad 500 zawiera ponad 7 milionów rekordów - w sumie około
d451850c
JB
18650GB krytycznych danych.
187
a82d818e
JR
188Baza, na której oparty jest MySQL, składa się ze zbioru procedur,
189które były używane w bardzo wymagającym środowisku produkcyjnym przez
190wiele lat. Pomimo, że MySQL jest ciągle rozwijany, już oferuje bogaty
191i użyteczny zbiór funkcji.
ceb5ca86 192
a82d818e 193%description -l de.UTF-8
1c06b825 194MySQL ist eine SQL-Datenbank. Allerdings ist sie im Gegensatz zu
195Oracle, DB2 oder PostgreSQL keine relationale Datenbank. Die Daten
a82d818e
JR
196werden zwar in zweidimensionalen Tabellen gespeichert und können mit
197einem Primärschlüssel versehen werden. Es ist aber keine Definition
198eines Fremdschlüssels möglich. Der Benutzer ist somit bei einer
199MySQL-Datenbank völlig allein für die (referenzielle) Integrität der
1c06b825 200Daten verantwortlich. Allein durch die Nutzung externer
a82d818e
JR
201Tabellenformate, wie InnoDB bzw Berkeley DB wird eine Relationalität
202ermöglicht. Diese Projekte sind aber getrennt von MySQL zu betrachten.
1c06b825 203
a82d818e
JR
204%description -l pt_BR.UTF-8
205O MySQL é um servidor de banco de dados SQL realmente multiusuário e
206multi-tarefa. A linguagem SQL é a mais popular linguagem para banco de
207dados no mundo. O MySQL é uma implementação cliente/servidor que
75eb20a9 208consiste de um servidor chamado mysqld e diversos
a82d818e 209programas/bibliotecas clientes. Os principais objetivos do MySQL são:
75eb20a9 210velocidade, robustez e facilidade de uso. O MySQL foi originalmente
a82d818e 211desenvolvido porque nós na Tcx precisávamos de um servidor SQL que
75eb20a9 212pudesse lidar com grandes bases de dados e com uma velocidade muito
213maior do que a que qualquer vendedor podia nos oferecer. Estamos
214usando o MySQL desde 1996 em um ambiente com mais de 40 bases de dados
a82d818e
JR
215com 10.000 tabelas, das quais mais de 500 têm mais de 7 milhões de
216linhas. Isto é o equivalente a aproximadamente 50G de dados críticos.
217A base da construção do MySQL é uma série de rotinas que foram usadas
218em um ambiente de produção com alta demanda por muitos anos. Mesmo o
219MySQL estando ainda em desenvolvimento, ele já oferece um conjunto de
220funções muito ricas e úteis. Veja a documentação para maiores
221informações.
222
223%description -l ru.UTF-8
224MySQL - это SQL (Structured Query Language) сервер базы данных. MySQL
225была написана Michael'ом (monty) Widenius'ом. См. файл CREDITS в
226дистрибутиве на предмет других участников проекта и прочей информации
227о MySQL.
228
229%description -l uk.UTF-8
230MySQL - це SQL (Structured Query Language) сервер бази даних. MySQL
231було написано Michael'ом (monty) Widenius'ом. Див. файл CREDITS в
232дистрибутиві для інформації про інших учасників проекту та іншої
233інформації.
bf60a170 234
2539bd3a
JB
235%package charsets
236Summary: MySQL - character sets definitions
fe56cb4d 237Summary(pl.UTF-8): MySQL - definicje kodowań znaków
2539bd3a
JB
238Group: Applications/Databases
239
240%description charsets
241This package contains character sets definitions needed by both client
242and server.
243
a82d818e
JR
244%description charsets -l pl.UTF-8
245Ten pakiet zawiera definicje kodowań znaków potrzebne dla serwera i
2539bd3a
JB
246klienta.
247
8de1b4ed 248%package extras
84bd803c 249Summary: MySQL additional utilities
fe56cb4d 250Summary(pl.UTF-8): Dodatkowe narzędzia do MySQL
8de1b4ed 251Group: Applications/Databases
da1eef6c 252Requires: %{name}-client = %{version}-%{release}
3103a6d7 253Requires: %{name}-libs = %{version}-%{release}
8de1b4ed 254
255%description extras
8afdedd4 256MySQL additional utilities except Perl scripts (they may be found in
73d155ac 257%{name}-extras-perl package).
8afdedd4 258
a82d818e
JR
259%description extras -l pl.UTF-8
260Dodatkowe narzędzia do MySQL - z wyjątkiem skryptów Perla (które są w
3c7e6ab8 261pakiecie %{name}-extras-perl).
84bd803c 262
8afdedd4 263%package extras-perl
264Summary: MySQL additional utilities written in Perl
fe56cb4d 265Summary(pl.UTF-8): Dodatkowe narzędzia do MySQL napisane w Perlu
8afdedd4 266Group: Applications/Databases
3103a6d7 267Requires: %{name}-extras = %{version}-%{release}
716c371c
ER
268# this is just for the sake of smooth upgrade, not to break systems
269Requires: mysqlhotcopy = %{version}-%{release}
6f2c1189 270Requires: perl-DBD-mysql
b8f6b666 271
8afdedd4 272%description extras-perl
273MySQL additional utilities written in Perl.
8de1b4ed 274
a82d818e
JR
275%description extras-perl -l pl.UTF-8
276Dodatkowe narzędzia do MySQL napisane w Perlu.
84bd803c 277
ceb5ca86 278%package client
ceb5ca86 279Summary: MySQL - Client
fe56cb4d
ER
280Summary(pl.UTF-8): MySQL - Klient
281Summary(pt.UTF-8): MySQL - Cliente
282Summary(ru.UTF-8): MySQL клиент
283Summary(uk.UTF-8): MySQL клієнт
ceb5ca86 284Group: Applications/Databases
ad0a7267 285Requires: %{name}-charsets = %{version}-%{release}
1101e5b7 286Requires: %{name}-libs = %{version}-%{release}
96b6cbc2 287Requires: readline >= 6.2
c486a119 288Obsoletes: MySQL-client
ceb5ca86
AM
289
290%description client
75eb20a9 291This package contains the standard MySQL clients.
ceb5ca86 292
a82d818e 293%description client -l fr.UTF-8
3fe2f194 294Ce package contient les clients MySQL standards.
295
a82d818e 296%description client -l pl.UTF-8
ceb5ca86
AM
297Standardowe programy klienckie MySQL.
298
a82d818e
JR
299%description client -l pt_BR.UTF-8
300Este pacote contém os clientes padrão para o MySQL.
ceb5ca86 301
a82d818e
JR
302%description client -l ru.UTF-8
303Этот пакет содержит только клиент MySQL.
bf60a170 304
a82d818e
JR
305%description client -l uk.UTF-8
306Цей пакет містить тільки клієнта MySQL.
bf60a170 307
3fe2f194 308%package libs
309Summary: Shared libraries for MySQL
21dbb6ad 310Summary(pl.UTF-8): Biblioteki współdzielone MySQL
031565bb 311Group: Libraries
5c69de9f 312Obsoletes: libmysql10
be07ff22 313Obsoletes: mysql-doc < 4.1.12
ceb5ca86 314
3fe2f194 315%description libs
c2c4112b 316Shared libraries for MySQL.
ceb5ca86 317
a82d818e 318%description libs -l pl.UTF-8
21dbb6ad 319Biblioteki współdzielone MySQL.
84bd803c 320
ceb5ca86 321%package devel
21dbb6ad
JB
322Summary: MySQL - development header files and other files
323Summary(pl.UTF-8): MySQL - Pliki nagłówkowe i inne dla programistów
fe56cb4d
ER
324Summary(pt.UTF-8): MySQL - Medições de desempenho
325Summary(ru.UTF-8): MySQL - хедеры и библиотеки разработчика
326Summary(uk.UTF-8): MySQL - хедери та бібліотеки програміста
047122f1 327Group: Development/Libraries
3103a6d7 328Requires: %{name}-libs = %{version}-%{release}
6f2c1189 329%{?with_ssl:Requires: openssl-devel}
bbc0ff50 330Requires: zlib-devel
c486a119 331Obsoletes: MySQL-devel
5c69de9f 332Obsoletes: libmysql10-devel
2adeda85 333Obsoletes: webscalesql-devel
ceb5ca86
AM
334
335%description devel
21dbb6ad 336This package contains the development header files and other files
ceb5ca86
AM
337necessary to develop MySQL client applications.
338
a82d818e 339%description devel -l fr.UTF-8
bf60a170 340Ce package contient les fichiers entetes et les librairies de
341developpement necessaires pour developper des applications clientes
342MySQL.
343
a82d818e 344%description devel -l pl.UTF-8
21dbb6ad 345Pliki nagłówkowe i inne pliki konieczne do kompilacji aplikacji
ceb5ca86 346klienckich MySQL.
b24ee098 347
a82d818e
JR
348%description devel -l pt_BR.UTF-8
349Este pacote contém os arquivos de cabeçalho (header files) e
350bibliotecas necessárias para desenvolver aplicações clientes do MySQL.
b24ee098 351
a82d818e
JR
352%description devel -l ru.UTF-8
353Этот пакет содержит хедеры и библиотеки разработчика, необходимые для
354разработки клиентских приложений.
bf60a170 355
a82d818e
JR
356%description devel -l uk.UTF-8
357Цей пакет містить хедери та бібліотеки програміста, необхідні для
358розробки програм-клієнтів.
3fe2f194 359
360%package static
01875e6d 361Summary: MySQL static libraries
fe56cb4d
ER
362Summary(pl.UTF-8): Biblioteki statyczne MySQL
363Summary(ru.UTF-8): MySQL - статические библиотеки
364Summary(uk.UTF-8): MySQL - статичні бібліотеки
3fe2f194 365Group: Development/Libraries
3103a6d7 366Requires: %{name}-devel = %{version}-%{release}
c44d1e10 367Obsoletes: MySQL-static
3fe2f194 368
369%description static
73d155ac 370MySQL static libraries.
3fe2f194 371
a82d818e 372%description static -l pl.UTF-8
3fe2f194 373Biblioteki statyczne MySQL.
374
a82d818e
JR
375%description static -l ru.UTF-8
376Этот пакет содержит статические библиотеки разработчика, необходимые
377для разработки клиентских приложений.
bf60a170 378
a82d818e
JR
379%description static -l uk.UTF-8
380Цей пакет містить статичні бібліотеки програміста, необхідні для
381розробки програм-клієнтів.
bf60a170 382
d1e91a2d
AM
383%package bench
384Summary: MySQL - Benchmarks
fe56cb4d
ER
385Summary(pl.UTF-8): MySQL - Programy testujące szybkość działania bazy
386Summary(pt.UTF-8): MySQL - Medições de desempenho
387Summary(ru.UTF-8): MySQL - бенчмарки
388Summary(uk.UTF-8): MySQL - бенчмарки
d1e91a2d
AM
389Group: Applications/Databases
390Requires: %{name} = %{version}-%{release}
391Requires: %{name}-client
19538fde 392Requires: perl-DBD-mysql
d1e91a2d
AM
393Obsoletes: MySQL-bench
394
395%description bench
396This package contains MySQL benchmark scripts and data.
397
a82d818e
JR
398%description bench -l pl.UTF-8
399Programy testujące szybkość serwera MySQL.
d1e91a2d 400
a82d818e
JR
401%description bench -l pt_BR.UTF-8
402Este pacote contém medições de desempenho de scripts e dados do MySQL.
d1e91a2d 403
a82d818e
JR
404%description bench -l ru.UTF-8
405Этот пакет содержит скрипты и данные для оценки производительности
d1e91a2d
AM
406MySQL.
407
a82d818e
JR
408%description bench -l uk.UTF-8
409Цей пакет містить скрипти та дані для оцінки продуктивності MySQL.
d1e91a2d
AM
410
411%package doc
412Summary: MySQL manual
fe56cb4d 413Summary(pl.UTF-8): Podręcznik użytkownika MySQL
d1e91a2d
AM
414Group: Applications/Databases
415
416%description doc
417This package contains manual in HTML format.
418
a82d818e
JR
419%description doc -l pl.UTF-8
420Podręcznik MySQL-a w formacie HTML.
d1e91a2d 421
d72472ee
AM
422%package ndb
423Summary: MySQL - NDB Storage Engine Daemon
fe56cb4d 424Summary(pl.UTF-8): MySQL - demon silnika przechowywania danych NDB
d72472ee
AM
425Group: Applications/Databases
426Requires: %{name}-libs = %{version}-%{release}
427
428%description ndb
429This package contains the standard MySQL NDB Storage Engine Daemon.
430
a82d818e 431%description ndb -l pl.UTF-8
8cdaa5ca
ER
432Ten pakiet zawiera standardowego demona silnika przechowywania danych
433NDB.
a4fd19f2 434
d72472ee
AM
435%package ndb-client
436Summary: MySQL - NDB Clients
fe56cb4d 437Summary(pl.UTF-8): MySQL - programy klienckie NDB
d72472ee
AM
438Group: Applications/Databases
439Requires: %{name}-libs = %{version}-%{release}
440
441%description ndb-client
442This package contains the standard MySQL NDB Clients.
443
a82d818e 444%description ndb-client -l pl.UTF-8
a4fd19f2
JB
445Ten pakiet zawiera standardowe programy klienckie MySQL NDB.
446
d72472ee
AM
447%package ndb-mgm
448Summary: MySQL - NDB Management Daemon
fe56cb4d 449Summary(pl.UTF-8): MySQL - demon zarządzający NDB
d72472ee
AM
450Group: Applications/Databases
451Requires: %{name}-libs = %{version}-%{release}
452
453%description ndb-mgm
454This package contains the standard MySQL NDB Management Daemon.
455
a82d818e
JR
456%description ndb-mgm -l pl.UTF-8
457Ten pakiet zawiera standardowego demona zarządzającego MySQL NDB.
a4fd19f2 458
d72472ee
AM
459%package ndb-cpc
460Summary: MySQL - NDB CPC Daemon
fe56cb4d 461Summary(pl.UTF-8): MySQL - demon NDB CPC
d72472ee
AM
462Group: Applications/Databases
463Requires: %{name}-libs = %{version}-%{release}
464
465%description ndb-cpc
466This package contains the standard MySQL NDB CPC Daemon.
467
a82d818e 468%description ndb-cpc -l pl.UTF-8
a4fd19f2
JB
469Ten pakiet zawiera standardowego demona MySQL NDB CPC.
470
a09e0285 471%prep
7eab437c 472%setup -q %{?with_sphinx:-a100} %{!?with_system_boost:-a101}
2e1318f3 473
abe20e21 474%patch0 -p1
a820fdeb 475%patch1 -p1
abe20e21 476
e6696823 477%if %{with sphinx}
fa51fc20 478# http://www.sphinxsearch.com/docs/manual-0.9.9.html#sphinxse-mysql51
e6696823 479mv sphinx-*/mysqlse storage/sphinx
416b5906 480%patch17 -p1
fa51fc20 481%patch18 -p1
e6696823 482%endif
6f2c1189
AM
483
484# really not fixed? verify
fc032bd9 485%patch19 -p1
1ff19b43 486
96b6cbc2 487%patch24 -p1
1e4b76dd 488
4256f553 489%patch26 -p1
fc032bd9 490
b4e1fa2c 491# to get these files rebuild
3d33ff78
JB
492[ -f sql/sql_yacc.cc ] && %{__rm} sql/sql_yacc.cc
493[ -f sql/sql_yacc.h ] && %{__rm} sql/sql_yacc.h
b24ee098 494
a820fdeb
ER
495# ensure sytstem lib
496# need to keep xxhash.[ch]
497%{__rm} -rv extra/lz4/lz4**
498
a09e0285 499%build
8ad2cc9f
AM
500install -d build
501cd build
92992b51
ER
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)
234eba13
ER
505
506%if "%{pld_release}" == "ac"
4b2e4b47 507# add suffix, but allow ccache, etc in ~/.rpmmacros
234eba13
ER
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
abe20e21 513CPPFLAGS="%{rpmcppflags}" \
3d33ff78 514%cmake .. \
96962fb9 515 -DCMAKE_BUILD_TYPE=%{!?debug:RelWithDebInfo}%{?debug:Debug} \
abe20e21
JB
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" \
f42f4b0d
JB
518 -DCOMPILATION_COMMENT="PLD/Linux Distribution MySQL RPM" \
519 -DCURSES_INCLUDE_PATH=/usr/include/ncurses \
d65cccc9 520 %{?with_systemtap:-DENABLE_DTRACE=ON} \
f42f4b0d
JB
521 -DFEATURE_SET="community" \
522 -DINSTALL_LAYOUT=RPM \
523 -DINSTALL_LIBDIR=%{_lib} \
524 -DINSTALL_MYSQLTESTDIR_RPM="" \
e4d6dd78 525 -DINSTALL_PLUGINDIR=%{_lib}/%{name}/plugin \
f42f4b0d 526 -DINSTALL_SQLBENCHDIR=%{_datadir} \
6f2c1189
AM
527 -DINSTALL_SUPPORTFILESDIR=share/%{name}-support \
528 -DINSTALL_MYSQLSHAREDIR=share/%{name} \
f42f4b0d 529 -DMYSQL_UNIX_ADDR=/var/lib/%{name}/%{name}.sock \
8ad2cc9f 530 %{?debug:-DWITH_DEBUG=ON} \
f42f4b0d 531 -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
8ad2cc9f 532 -DWITH_FAST_MUTEXES=ON \
f42f4b0d
JB
533 -DWITH_LIBWRAP=%{?with_tcpd:ON}%{!?with_tcpd:OFF} \
534 -DWITH_PAM=ON \
535 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
536 -DWITH_PIC=ON \
a820fdeb 537 -DWITH_LZ4=system \
c3b4e967 538 -DWITH_LIBEVENT="system" \
e6dcb604
ER
539%if "%{pld_release}" == "ac"
540 -DWITH_SSL=%{?with_ssl:bundled}%{!?with_ssl:no} \
541%else
5d4c4d6c 542 -DWITH_SSL=%{?with_ssl:system}%{!?with_ssl:no} \
e6dcb604 543%endif
dbbad511 544 -DWITH_UNIT_TESTS=%{?with_tests:ON}%{!?with_tests:OFF} \
7eab437c 545 %{!?with_system_boost:-DWITH_BOOST="$(pwd)/$(ls -1d ../boost_*)"} \
375e1de2
AM
546 -DWITH_ZLIB=system \
547 -DWITH_READLINE=system
8ad2cc9f
AM
548
549%{__make}
b24ee098 550
7fbcff7e
AM
551%{?with_tests:%{__make} test}
552
ceb5ca86 553%install
3fe2f194 554rm -rf $RPM_BUILD_ROOT
978cdac2 555install -d $RPM_BUILD_ROOT/etc/{logrotate.d,rc.d/init.d,sysconfig,mysql,skel} \
874af6de 556 $RPM_BUILD_ROOT/var/{log/{archive,}/mysql,lib/{mysql,mysql-files}} \
59ef9fff 557 $RPM_BUILD_ROOT%{_mysqlhome} \
a4f004ee 558 $RPM_BUILD_ROOT%{_libdir}
b24ee098 559
8ad2cc9f
AM
560%{__make} -C build install \
561 DESTDIR=$RPM_BUILD_ROOT
d451850c 562
92992b51
ER
563install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/mysql
564cp -a %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/mysql
565cp -a %{SOURCE3} $RPM_BUILD_ROOT/etc/logrotate.d/mysql
dbf4eb6a 566# This is template for configuration file which is created after 'service mysql init'
92992b51
ER
567cp -a %{SOURCE4} mysqld.conf
568cp -a %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/clusters.conf
569touch $RPM_BUILD_ROOT/var/log/%{name}/{mysqld,query,slow}.log
b24ee098 570
2e5f696d 571# remove innodb directives from mysqld.conf if mysqld is configured without
9cc19375 572%if %{without innodb}
2e5f696d
ER
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
9cc19375
AM
578cp mysqld.conf mysqld.tmp
579awk 'BEGIN { RS="\n\n" } !/bdb/ { printf("%s\n\n", $0) }' < mysqld.tmp > mysqld.conf
2e5f696d 580
6f2c1189 581cp -a mysqld.conf $RPM_BUILD_ROOT%{_datadir}/%{name}/mysqld.conf
92992b51 582cp -a %{SOURCE13} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/mysql-client.conf
49e27b83 583ln -s mysql-client.conf $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/my.cnf
978cdac2 584cp -a %{SOURCE14} $RPM_BUILD_ROOT/etc/skel/.my.cnf
2e5f696d 585
d72472ee 586# NDB
f7fb94f7 587%if %{with ndb}
92992b51
ER
588install -p %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/mysql-ndb
589cp -a %{SOURCE8} $RPM_BUILD_ROOT/etc/sysconfig/mysql-ndb
590install -p %{SOURCE9} $RPM_BUILD_ROOT/etc/rc.d/init.d/mysql-ndb-mgm
591cp -a %{SOURCE10} $RPM_BUILD_ROOT/etc/sysconfig/mysql-ndb-mgm
592install -p %{SOURCE11} $RPM_BUILD_ROOT/etc/rc.d/init.d/mysql-ndb-cpc
593cp -a %{SOURCE12} $RPM_BUILD_ROOT/etc/sysconfig/mysql-ndb-cpc
f7fb94f7 594%endif
17dc26d2 595
14996ad7 596sed -i -e 's,/usr//usr,%{_prefix},g' $RPM_BUILD_ROOT%{_bindir}/mysql_config
04497307 597sed -i -e '/libs/s/$ldflags//' $RPM_BUILD_ROOT%{_bindir}/mysql_config
c01a1c0f 598sed -i -e '/libs/s/-lprobes_mysql//' $RPM_BUILD_ROOT%{_bindir}/mysql_config
b24ee098 599
17dc26d2 600# remove known unpackaged files
6f2c1189 601%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/%{name}-support
9cc19375 602
8b2cbaf3 603# rename not to be so generic name
8b2cbaf3 604mv $RPM_BUILD_ROOT%{_bindir}/{,mysql_}resolve_stack_dump
68e8a131 605mv $RPM_BUILD_ROOT%{_mandir}/man1/{,mysql_}resolve_stack_dump.1
17dc26d2 606
c0326166 607# not useful without -debug build
21dbb6ad
JB
608%{!?debug:%{__rm} $RPM_BUILD_ROOT%{_bindir}/mysql_resolve_stack_dump}
609%{!?debug:%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysql_resolve_stack_dump.1}
c0326166 610# generate symbols file, so one can generate backtrace using it
6f2c1189 611# mysql_resolve_stack_dump -s %{_datadir}/%{name}/mysqld.sym -n mysqld.stack.
c0326166 612# http://dev.mysql.com/doc/refman/5.0/en/using-stack-trace.html
6f2c1189 613%{?debug:nm -n $RPM_BUILD_ROOT%{_sbindir}/mysqld > $RPM_BUILD_ROOT%{_datadir}/%{name}/mysqld.sym}
c0326166 614
dabd8964 615# do not clobber users $PATH
734d6226 616mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/mysql_plugin
dabd8964
ER
617mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/mysql_upgrade
618mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/innochecksum
619mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/myisamchk
620mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/myisamlog
621mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/myisampack
c9b1588e 622#mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/mysql_fix_privilege_tables
6c573014
ER
623mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/lz4_decompress
624mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/zlib_decompress
dabd8964 625mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/my_print_defaults
3b961fb0 626sed -i -e 's#/usr/bin/my_print_defaults#%{_sbindir}/my_print_defaults#g' $RPM_BUILD_ROOT%{_bindir}/mysql_install_db
dabd8964
ER
627mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/mysqlcheck
628
3b961fb0 629# delete - functionality in initscript / rpm
21dbb6ad
JB
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}*
6f2c1189
AM
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
21dbb6ad
JB
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*
9cc19375
AM
641
642# we don't package those (we have no -test or -testsuite pkg) and some of them just segfault
21dbb6ad
JB
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
48cc4c93
JB
649# libmysqld examples
650%{__rm} $RPM_BUILD_ROOT%{_bindir}/mysql{_client_test_embedded,_embedded,test_embedded}
17dc26d2 651
be74eb6e 652# not needed
15319871
ER
653%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/plugin/libdaemon_example.*
654%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/plugin/daemon_example.ini
9cc19375 655
19538fde
AM
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
59ef9fff 660
f624a76e 661%clean
1d171524 662rm -rf $RPM_BUILD_ROOT
f624a76e 663
fd32e090 664%pre
ff5f125f
ER
665%groupadd -g 89 mysql
666%useradd -u 89 -d %{_mysqlhome} -s /bin/sh -g mysql -c "MySQL Server" mysql
fd32e090 667
ceb5ca86 668%post
0f4ca10a 669/sbin/ldconfig
054c91be 670/sbin/chkconfig --add mysql
4ebde491 671%service mysql restart
dd6934b4 672
d5e8c713 673%preun
054c91be 674if [ "$1" = "0" ]; then
579146e7 675 %service -q mysql stop
054c91be 676 /sbin/chkconfig --del mysql
677fi
c44d1e10 678
ec56ce82 679%postun
0f4ca10a 680/sbin/ldconfig
fd32e090 681if [ "$1" = "0" ]; then
c354982f 682 %userremove mysql
683 %groupremove mysql
fd32e090 684fi
b24ee098 685
d72472ee
AM
686%post ndb
687/sbin/chkconfig --add mysql-ndb
1101e5b7 688%service mysql-ndb restart "mysql NDB engine"
d72472ee
AM
689
690%preun ndb
691if [ "$1" = "0" ]; then
1101e5b7
ER
692 %service mysql-ndb stop
693 /sbin/chkconfig --del mysql-ndb
d72472ee
AM
694fi
695
696%post ndb-mgm
697/sbin/chkconfig --add mysql-ndb-mgm
1101e5b7 698%service mysql-ndb-mgm restart "mysql NDB management node"
d72472ee
AM
699
700%preun ndb-mgm
701if [ "$1" = "0" ]; then
1101e5b7
ER
702 %service mysql-ndb-mgm stop
703 /sbin/chkconfig --del mysql-ndb-mgm
d72472ee
AM
704fi
705
706%post ndb-cpc
707/sbin/chkconfig --add mysql-ndb-cpc
1101e5b7 708%service mysql-ndb-cpc restart "mysql NDB CPC"
d72472ee
AM
709
710%preun ndb-cpc
711if [ "$1" = "0" ]; then
1101e5b7
ER
712 %service mysql-ndb-cpc stop
713 /sbin/chkconfig --del mysql-ndb-cpc
d72472ee
AM
714fi
715
3fe2f194 716%post libs -p /sbin/ldconfig
717%postun libs -p /sbin/ldconfig
b24ee098 718
80cc634b 719%triggerpostun -- mysql < 4.0.20-2.4
92992b51 720# For clusters in /etc/%{name}/clusters.conf
be74eb6e 721if [ -f /etc/sysconfig/mysql ]; then
99e0d1a2 722 . /etc/sysconfig/mysql
4c7c0ef7 723 if [ -n "$MYSQL_DB_CLUSTERS" ]; then
99e0d1a2 724 for i in "$MYSQL_DB_CLUSTERS"; do
92992b51 725 echo "$i/mysqld.conf=$i" >> /etc/%{name}/clusters.conf
99e0d1a2 726 done
b545a308 727 echo "# Do not use **obsolete** option MYSQL_DB_CLUSTERS" >> /etc/sysconfig/mysql
92992b51
ER
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."
99e0d1a2
PG
731 fi
732fi
733
80cc634b 734%triggerpostun -- mysql < 4.1.1
7f18dfce 735# For better compatibility with prevoius versions:
92992b51 736for config in $(awk -F= '!/^#/ && /=/{print $1}' /etc/%{name}/clusters.conf); do
7f18dfce
PG
737 if echo "$config" | grep -q '^/'; then
738 config_file="$config"
92992b51
ER
739 elif [ -f "/etc/%{name}/$config" ]; then
740 config_file=/etc/%{name}/$config
7f18dfce 741 else
92992b51 742 clusterdir=$(awk -F= "/^$config/{print \$2}" /etc/%{name}/clusters.conf)
dd25dce8
ER
743 if [ -z "$clusterdir" ]; then
744 echo >&2 "Can't find cluster dir for $config!"
92992b51 745 echo >&2 "Please remove extra (leading) spaces from /etc/%{name}/clusters.conf"
dd25dce8
ER
746 exit 1
747 fi
7f18dfce
PG
748 config_file="$clusterdir/mysqld.conf"
749 fi
0e6ae684
ER
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
7f18dfce
PG
755 echo "Adding option old-passwords to config: $config_file"
756 echo "If you want to use new, better passwords - remove it"
6e6b75c9
ER
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
7f18dfce
PG
765done
766
a2d3f15b 767%banner -e %{name}-4.1.x <<-EOF
f1180631 768 If you want to use new help tables in MySQL 4.1.x then You'll need to import the help data:
6f2c1189 769 mysql -u mysql mysql < %{_datadir}/%{name}/fill_help_tables.sql
a2d3f15b
ER
770EOF
771#'
772
dc311758 773%triggerpostun -- mysql < 5.1.0
9cc19375 774configs=""
92992b51 775for config in $(awk -F= '!/^#/ && /=/{print $1}' /etc/%{name}/clusters.conf); do
9cc19375
AM
776 if echo "$config" | grep -q '^/'; then
777 config_file="$config"
92992b51
ER
778 elif [ -f "/etc/%{name}/$config" ]; then
779 config_file=/etc/%{name}/$config
9cc19375 780 else
92992b51 781 clusterdir=$(awk -F= "/^$config/{print \$2}" /etc/%{name}/clusters.conf)
9cc19375
AM
782 if [ -z "$clusterdir" ]; then
783 echo >&2 "Can't find cluster dir for $config!"
92992b51 784 echo >&2 "Please remove extra (leading) spaces from /etc/%{name}/clusters.conf"
9cc19375
AM
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"
795done
796
1564ef07 797(
3a4d8c21 798echo 'You should run MySQL upgrade script *after* restarting MySQL server for all MySQL clusters.'
9cc19375
AM
799echo 'Thus, you should invoke:'
800for config in $configs; do
b432ea00 801 sed -i -e '
8348d337 802 s/set-variable\s*=\s* //
1564ef07
ER
803 # use # as comment in config
804 s/^;/#/
b432ea00
ER
805 ' $config
806
be74eb6e 807 datadir=$(awk -F= '!/^#/ && $1 ~ /datadir/{print $2}' $config | xargs)
9cc19375
AM
808 echo "# mysql_upgrade --datadir=$datadir"
809done
1564ef07 810) | %banner -e %{name}-5.1
9cc19375 811
b5a439fb
AM
812%triggerpostun -- mysql < 5.5.0
813configs=""
814for 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"
834done
835
1564ef07
ER
836(
837echo 'You should run MySQL upgrade script *after* restarting MySQL server for all MySQL clusters.'
838echo 'Thus, you should invoke:'
b5a439fb 839for config in $configs; do
b432ea00 840 sed -i -e '
8348d337
ER
841 s/^language *= *polish/lc-messages = pl_PL/i
842 s/set-variable\s*=\s* //
76d420b8 843 s/^skip-locking/skip-external-locking/
a54e0fde 844 # this is not valid for server. it is client option
589be940 845 s/^default-character-set/# client-config: &/
1564ef07
ER
846 # use # as comment in config
847 s/^;/#/
b432ea00 848 ' $config
1564ef07 849
589be940
ER
850 socket=$(awk -F= '!/^#/ && $1 ~ /socket/{print $2}' $config | xargs)
851 echo "# mysql_upgrade ${socket:+--socket=$socket}"
b5a439fb 852done
1564ef07 853) | %banner -e %{name}-5.5
b5a439fb 854
874af6de
AM
855%triggerpostun -- mysql < 5.7.0
856configs=""
857for 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"
877done
878
879(
880echo 'You should run MySQL upgrade script *after* restarting MySQL server for all MySQL clusters.'
881echo 'Thus, you should invoke:'
882for 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}"
891done
892) | %banner -e %{name}-5.7
893
ceb5ca86 894%files
a09e0285 895%defattr(644,root,root,755)
3d33faed 896%doc build/support-files/*.cnf
92992b51
ER
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
dabd8964 901%attr(755,root,root) %{_sbindir}/innochecksum
6c573014 902%attr(755,root,root) %{_sbindir}/lz4_decompress
2b48022a 903%attr(755,root,root) %{_sbindir}/my_print_defaults
dabd8964
ER
904%attr(755,root,root) %{_sbindir}/myisamchk
905%attr(755,root,root) %{_sbindir}/myisamlog
906%attr(755,root,root) %{_sbindir}/myisampack
734d6226 907%attr(755,root,root) %{_sbindir}/mysql_plugin
dabd8964 908%attr(755,root,root) %{_sbindir}/mysql_upgrade
2b48022a
ER
909%attr(755,root,root) %{_sbindir}/mysqlcheck
910%attr(755,root,root) %{_sbindir}/mysqld
6c573014
ER
911%attr(755,root,root) %{_sbindir}/zlib_decompress
912
92992b51
ER
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
416b5906
AM
919%attr(755,root,root) %{_libdir}/%{name}/plugin/keyring_file.so
920%attr(755,root,root) %{_libdir}/%{name}/plugin/keyring_udf.so
19538fde 921%attr(755,root,root) %{_libdir}/%{name}/plugin/locking_service.so
92992b51 922%attr(755,root,root) %{_libdir}/%{name}/plugin/mypluglib.so
abe20e21 923%attr(755,root,root) %{_libdir}/%{name}/plugin/mysql_no_login.so
416b5906 924%attr(755,root,root) %{_libdir}/%{name}/plugin/mysqlx.so
92992b51
ER
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
19538fde
AM
928%attr(755,root,root) %{_libdir}/%{name}/plugin/replication_observers_example_plugin.so
929%attr(755,root,root) %{_libdir}/%{name}/plugin/rewriter.so
92992b51
ER
930%attr(755,root,root) %{_libdir}/%{name}/plugin/semisync_master.so
931%attr(755,root,root) %{_libdir}/%{name}/plugin/semisync_slave.so
f2308fd1 932%attr(755,root,root) %{_libdir}/%{name}/plugin/validate_password.so
19538fde 933%attr(755,root,root) %{_libdir}/%{name}/plugin/version_token.so
fa51fc20 934%if %{with sphinx}
bfb02390 935%attr(755,root,root) %{_libdir}/%{name}/plugin/ha_sphinx.so
fa51fc20 936%endif
68e8a131 937%{_mandir}/man1/innochecksum.1*
6c573014 938%{_mandir}/man1/lz4_decompress.1*
2b48022a 939%{_mandir}/man1/my_print_defaults.1*
84628b90
AM
940%{_mandir}/man1/myisamchk.1*
941%{_mandir}/man1/myisamlog.1*
942%{_mandir}/man1/myisampack.1*
734d6226 943%{_mandir}/man1/mysql_plugin.1*
d0fe1bc5 944%{_mandir}/man1/mysql_upgrade.1*
2b48022a 945%{_mandir}/man1/mysqlcheck.1*
6c573014 946%{_mandir}/man1/zlib_decompress.1*
c3389a2d 947%{_mandir}/man8/mysqld.8*
c486a119 948
c27588d8
ER
949%if %{?debug:1}0
950%attr(755,root,root) %{_bindir}/*resolve_stack_dump
6f2c1189 951%{_datadir}/%{name}/mysqld.sym
c27588d8
ER
952%{_mandir}/man1/*resolve_stack_dump.1*
953%endif
954
ea2c1c6a 955%attr(700,mysql,mysql) %{_mysqlhome}
68e8a131 956# root:root is proper here for mysql.rpm while mysql:mysql is potential security hole
179f04ff 957%attr(751,root,root) /var/lib/mysql
874af6de 958# https://dev.mysql.com/doc/refman/5.7/en/server-options.html#option_mysqld_secure-file-priv
dfb3f99d 959%attr(770,mysql,mysql) %dir /var/lib/mysql-files
8594196c 960%attr(750,mysql,mysql) %dir /var/log/mysql
ced65266 961%attr(750,mysql,mysql) %dir /var/log/archive/mysql
13924afb 962%attr(640,mysql,mysql) %ghost /var/log/mysql/*
431c9391 963
dbf4eb6a 964# This is template for configuration file which is created after 'service mysql init'
6f2c1189
AM
965%{_datadir}/%{name}/mysqld.conf
966%{_datadir}/%{name}/mysql_security_commands.sql
19538fde 967%{_datadir}/%{name}/mysql_sys_schema.sql
6f2c1189
AM
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
19538fde
AM
976%{_datadir}/%{name}/install_rewriter.sql
977%{_datadir}/%{name}/uninstall_rewriter.sql
1968f823
AM
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
b24ee098 1003
ad0a7267
JR
1004%files charsets
1005%defattr(644,root,root,755)
6f2c1189
AM
1006%dir %{_datadir}/%{name}
1007%{_datadir}/%{name}/charsets
ad0a7267 1008
8de1b4ed 1009%files extras
1010%defattr(644,root,root,755)
8b2cbaf3 1011%attr(755,root,root) %{_bindir}/myisam_ftdump
90db0fd4 1012%attr(755,root,root) %{_bindir}/mysql_install_db
19538fde 1013%attr(755,root,root) %{_bindir}/mysql_ssl_rsa_setup
8b2cbaf3
ER
1014%attr(755,root,root) %{_bindir}/mysql_secure_installation
1015%attr(755,root,root) %{_bindir}/mysql_tzinfo_to_sql
b94ecc67
JB
1016%attr(755,root,root) %{_bindir}/perror
1017%attr(755,root,root) %{_bindir}/replace
90db0fd4 1018%attr(755,root,root) %{_bindir}/resolveip
9787b388 1019%{_mandir}/man1/myisam_ftdump.1*
90db0fd4 1020%{_mandir}/man1/mysql_install_db.1*
19538fde 1021%{_mandir}/man1/mysql_ssl_rsa_setup.1*
68e8a131 1022%{_mandir}/man1/mysql_secure_installation.1*
77cbc8ff 1023%{_mandir}/man1/mysql_tzinfo_to_sql.1*
e474e322 1024%{_mandir}/man1/perror.1*
1025%{_mandir}/man1/replace.1*
90db0fd4 1026%{_mandir}/man1/resolveip.1*
8de1b4ed 1027
8afdedd4 1028%files extras-perl
1029%defattr(644,root,root,755)
2b48022a 1030%attr(755,root,root) %{_bindir}/mysqldumpslow
08472466 1031%{_mandir}/man1/mysqldumpslow.1*
8afdedd4 1032
ceb5ca86 1033%files client
75eb20a9 1034%defattr(644,root,root,755)
04e76bf1 1035%attr(600,root,root) %config(noreplace,missingok) %verify(not md5 mtime size) /etc/skel/.my.cnf
01dea3d5 1036%attr(755,root,root) %{_bindir}/mysql
9cc19375
AM
1037%attr(755,root,root) %{_bindir}/mysqladmin
1038%attr(755,root,root) %{_bindir}/mysqlbinlog
f2308fd1 1039%attr(755,root,root) %{_bindir}/mysql_config_editor
01dea3d5 1040%attr(755,root,root) %{_bindir}/mysqldump
1041%attr(755,root,root) %{_bindir}/mysqlimport
19538fde 1042%attr(755,root,root) %{_bindir}/mysqlpump
01dea3d5 1043%attr(755,root,root) %{_bindir}/mysqlshow
75eb20a9 1044%{_mandir}/man1/mysql.1*
e474e322 1045%{_mandir}/man1/mysqladmin.1*
84628b90 1046%{_mandir}/man1/mysqlbinlog.1*
f2308fd1 1047%{_mandir}/man1/mysql_config_editor.1*
9cc19375 1048%{_mandir}/man1/mysqldump.1*
84628b90 1049%{_mandir}/man1/mysqlimport.1*
19538fde 1050%{_mandir}/man1/mysqlpump.1*
9cc19375 1051%{_mandir}/man1/mysqlshow.1*
b24ee098 1052
3fe2f194 1053%files libs
75eb20a9 1054%defattr(644,root,root,755)
2b48022a 1055%attr(751,root,root) %dir %{_sysconfdir}/mysql
92992b51 1056%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/mysql-client.conf
49e27b83 1057%{_sysconfdir}/%{name}/my.cnf
3b9f87c2 1058%attr(755,root,root) %{_libdir}/libmysqlclient.so.*.*.*
19538fde 1059%attr(755,root,root) %ghost %{_libdir}/libmysqlclient.so.20
08472466 1060%if %{with ndb}
3b9f87c2 1061%attr(755,root,root) %{_libdir}/libndbclient.so.*.*.*
bd1c7139 1062%attr(755,root,root) %ghost %{_libdir}/libndbclient.so.3
08472466 1063%endif
b24ee098 1064
ceb5ca86 1065%files devel
3fe2f194 1066%defattr(644,root,root,755)
bbc0ff50 1067%attr(755,root,root) %{_bindir}/mysql_config
3b9f87c2 1068%attr(755,root,root) %{_libdir}/libmysqlclient.so
08472466 1069%if %{with ndb}
3b9f87c2 1070%attr(755,root,root) %{_libdir}/libndbclient.so
08472466 1071%endif
19538fde 1072%{_pkgconfigdir}/mysqlclient.pc
48cc4c93
JB
1073# static-only so far
1074%{_libdir}/libmysqld.a
3fe2f194 1075%{_includedir}/mysql
68e8a131 1076%{_aclocaldir}/mysql.m4
84628b90 1077%{_mandir}/man1/mysql_config.1*
3fe2f194 1078
1079%files static
75eb20a9 1080%defattr(644,root,root,755)
3b9f87c2 1081%{_libdir}/libmysqlclient.a
08472466 1082%if %{with ndb}
3b9f87c2 1083%{_libdir}/libndbclient.a
08472466 1084%endif
ceb5ca86 1085
d1e91a2d
AM
1086%files bench
1087%defattr(644,root,root,755)
8ce69d92 1088%attr(755,root,root) %{_bindir}/mysqlslap
d1e91a2d 1089%attr(755,root,root) %{_bindir}/mysqltest
19538fde
AM
1090#%dir %{_datadir}/sql-bench
1091#%{_datadir}/sql-bench/[CDRl]*
1092#%attr(755,root,root) %{_datadir}/sql-bench/[bcgirst]*
8ce69d92 1093%{_mandir}/man1/mysqlslap.1*
ffda6e55
ER
1094%{_mandir}/man1/mysqltest.1*
1095%{_mandir}/man1/mysqltest_embedded.1*
d1e91a2d 1096
be07ff22
AM
1097#%files doc
1098#%defattr(644,root,root,755)
1099#%doc Docs/manual.html Docs/manual_toc.html
d1e91a2d 1100
08472466 1101%if %{with ndb}
d72472ee
AM
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
8cdaa5ca 1106%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/mysql-ndb
ffda6e55 1107%{_mandir}/man1/ndbd_redo_log_reader.1*
210f47d4 1108%{_mandir}/man8/ndbd.8*
d72472ee
AM
1109
1110%files ndb-client
1111%defattr(644,root,root,755)
e56168f2
ER
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
e56168f2
ER
1129%{_mandir}/man1/ndb_config.1*
1130%{_mandir}/man1/ndb_delete_all.1*
1131%{_mandir}/man1/ndb_desc.1*
68e8a131
ER
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*
e56168f2 1143%{_mandir}/man1/ndb_size.pl.1*
68e8a131 1144%{_mandir}/man1/ndb_waiter.1*
d72472ee
AM
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
8cdaa5ca 1150%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/mysql-ndb-mgm
210f47d4 1151%{_mandir}/man8/ndb_mgmd.8*
d72472ee 1152
d72472ee
AM
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
8cdaa5ca 1157%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/mysql-ndb-cpc
68e8a131 1158%{_mandir}/man1/ndb_cpcd.1*
08472466 1159%endif
This page took 0.353297 seconds and 4 git commands to generate.