]> git.pld-linux.org Git - packages/mysql.git/blame - mysql.spec
- added patch for CVE-2012-2122
[packages/mysql.git] / mysql.spec
CommitLineData
50200f22 1# TODO:
eb36adcd 2# - make response_time_distribution.patch compatible with i386 alpha sparc ppc arches
1a9285c0 3# - mysqldump ... (invalid usage) prints to stdout not stderr (idiotic if you want to create dump and get usage in .sql)
30c5205b 4# - unpackaged:
92992b51 5# /usr/bin/mysqlaccess.conf
c0326166 6# - http://bugs.mysql.com/bug.php?id=16470
9cc19375
AM
7# - innodb are dynamic (= as plugins) ?
8# - missing have_archive, have_merge
9# - is plugin_dir lib64 safe?
10# - Using NDB Cluster... could not find sci transporter in /{include, lib}
13e51307 11# - !!! Makefiles for libmysqld.so !!!
643c5039
AG
12# - segfaults on select from non-mysql user (caused by builder environment):
13# https://bugs.launchpad.net/pld-linux/+bug/381904
20272b1d 14# (profiling disabled temporaily to workaround this)
6c94aa6c 15#
16# Conditional build:
aa8262f8 17%bcond_with autodeps # BR packages needed only for resolving deps
54e670e7 18%bcond_without innodb # InnoDB storage engine support
84fe95c7 19%bcond_without big_tables # Support tables with more than 4G rows even on 32 bit platforms
dc311758 20%bcond_without federated # Federated storage engine support
54e670e7
PG
21%bcond_without raid # RAID support
22%bcond_without ssl # OpenSSL support
23%bcond_without tcpd # libwrap (tcp_wrappers) support
26802bc2 24%bcond_without sphinx # Sphinx storage engine support
7fbcff7e 25%bcond_with tests # FIXME: don't run correctly
08472466 26%bcond_with ndb # NDB is now a separate product, this here is broken, so disable it
92992b51 27
c2c4112b 28%include /usr/lib/rpm/macros.perl
ceb5ca86 29Summary: MySQL: a very fast and reliable SQL database engine
fe56cb4d
ER
30Summary(de.UTF-8): MySQL: ist eine SQL-Datenbank
31Summary(fr.UTF-8): MySQL: un serveur SQL rapide et fiable
32Summary(pl.UTF-8): MySQL: bardzo szybka i niezawodna baza danych (SQL)
33Summary(pt_BR.UTF-8): MySQL: Um servidor SQL rápido e confiável
34Summary(ru.UTF-8): MySQL - быстрый SQL-сервер
35Summary(uk.UTF-8): MySQL - швидкий SQL-сервер
36Summary(zh_CN.UTF-8): MySQL数据库服务器
75eb20a9 37Name: mysql
543222d2 38Version: 5.5.21
a5c997ca 39Release: 3
5a944cb3 40License: GPL + MySQL FLOSS Exception
7803433d 41Group: Applications/Databases
92992b51 42# Source0Download: http://dev.mysql.com/downloads/mysql/5.5.html#downloads
0a9213dd 43Source0: http://vesta.informatik.rwth-aachen.de/mysql/Downloads/MySQL-5.5/%{name}-%{version}.tar.gz
543222d2 44# Source0-md5: 86d6bd335054a0aed1756ed60574c16d
29ffd636
AM
45Source100: http://sphinxsearch.com/files/sphinx-2.0.3-release.tar.gz
46# Source100-md5: a1293aecd5034aa797811610beb7ba89
2a30c7ca 47Source1: %{name}.init
48Source2: %{name}.sysconfig
49Source3: %{name}.logrotate
50Source4: %{name}d.conf
50200f22 51Source5: %{name}-clusters.conf
d72472ee
AM
52Source7: %{name}-ndb.init
53Source8: %{name}-ndb.sysconfig
54Source9: %{name}-ndb-mgm.init
55Source10: %{name}-ndb-mgm.sysconfig
56Source11: %{name}-ndb-cpc.init
57Source12: %{name}-ndb-cpc.sysconfig
7df2d935 58Source13: %{name}-client.conf
978cdac2 59Source14: my.cnf
fc032bd9
AM
60# from fedora
61Source15: lib%{name}.version
51298838 62Patch2: %{name}-c++.patch
e94fe593 63Patch3: %{name}-info.patch
fc032bd9
AM
64# from fedora
65Patch5: %{name}-versioning.patch
94fa71d5 66Patch6: %{name}-system-users.patch
f29ae69c 67Patch7: %{name}-bug-34192.patch
7df2d935 68Patch8: %{name}-client-config.patch
1b41566d 69Patch9: %{name}-build.patch
9cc19375 70Patch11: %{name}-upgrade.patch
a2e8058d 71Patch12: %{name}-config.patch
3d4dbd2e 72Patch14: %{name}-bug-43594.patch
fa51fc20 73Patch18: %{name}-sphinx.patch
fc032bd9 74Patch19: %{name}-chain-certs.patch
90e4ba9d
ER
75# from fedora
76Patch20: %{name}-dubious-exports.patch
a5c997ca 77Patch21: %{name}-CVE-2012-2122.patch
a9ee80b9 78# <percona patches, updated with percona.sh>
543222d2
AM
79Patch100: bug933969.patch
80Patch101: microsec_process.patch
81Patch102: optimizer_fix.patch
82Patch103: mysql_dump_ignore_ct.patch
83Patch104: control_online_alter_index.patch
84Patch105: show_temp.patch
85Patch106: innodb_show_status.patch
86Patch107: innodb_io_patches.patch
87Patch108: innodb_opt_lru_count.patch
88Patch109: innodb_extra_rseg.patch
89Patch110: innodb_overwrite_relay_log_info.patch
90Patch111: innodb_thread_concurrency_timer_based.patch
91Patch112: innodb_dict_size_limit.patch
92Patch113: innodb_split_buf_pool_mutex.patch
93Patch114: innodb_expand_import.patch
94Patch115: innodb_show_sys_tables.patch
95Patch116: innodb_stats.patch
96Patch117: innodb_recovery_patches.patch
97Patch118: innodb_admin_command_base.patch
98Patch119: innodb_show_lock_name.patch
99Patch120: innodb_extend_slow.patch
100Patch121: innodb_lru_dump_restore.patch
101Patch122: innodb_separate_doublewrite.patch
102Patch123: innodb_pass_corrupt_table.patch
103Patch124: innodb_fast_checksum.patch
104Patch125: innodb_files_extend.patch
105Patch126: innodb_fix_misc.patch
106Patch127: innodb_deadlock_count.patch
107Patch128: innodb_adaptive_hash_index_partitions.patch
108Patch129: innodb_buffer_pool_pages_i_s.patch
109Patch130: innodb_buffer_pool_shm.patch
110Patch131: innodb_show_status_extend.patch
111Patch132: innodb_kill_idle_transaction.patch
112Patch133: innodb_fake_changes.patch
113Patch134: slow_extended.patch
114Patch135: percona_support.patch
115Patch136: query_cache_enhance.patch
116Patch137: log_connection_error.patch
117Patch138: mysql_syslog.patch
118Patch139: error_pad.patch
119Patch140: response_time_distribution.patch
120Patch141: remove_fcntl_excessive_calls.patch
121Patch142: sql_no_fcache.patch
122Patch143: show_slave_status_nolock.patch
123Patch144: log_warnings_suppress.patch
124Patch145: userstat.patch
125Patch146: bug580324.patch
126Patch147: mysql_remove_eol_carret.patch
127Patch148: processlist_row_stats.patch
128Patch149: innodb_expand_fast_index_creation.patch
129Patch150: innodb_bug60788.patch
130Patch151: start-stop-messages.patch
131Patch152: file-contents.patch
132Patch153: slave_timeout_fix.patch
133Patch154: utf8_general50_ci.patch
134Patch155: bug813587.patch
135Patch156: valgrind_zlib_suppression.patch
136Patch157: memory_dynamic_rows.patch
137Patch158: xtradb_bug317074.patch
138Patch159: subunit.patch
139Patch160: bug860910.patch
140Patch161: bug45702.patch
141Patch162: group_commit.patch
142Patch163: warning_fixes.patch
143Patch164: bug917246.patch
144Patch165: bug54330.patch
145Patch166: bug966844_page_size_error_on_5520_upgrade.patch
19c2f221 146# </percona>
92992b51 147URL: http://www.mysql.com/products/community/
9dca226d 148BuildRequires: bison
cd6a3f78 149BuildRequires: cmake >= 2.6
e85f7aef 150BuildRequires: groff
dc8a8fa0
ER
151%if "%{pld_release}" == "ac"
152BuildRequires: libstdc++4-devel >= 5:4.0
153%else
6a4d2f37 154BuildRequires: libstdc++-devel >= 5:4.0
dc8a8fa0 155%endif
374c3070 156BuildRequires: libtool
2e5f696d 157%{?with_tcpd:BuildRequires: libwrap-devel}
7b36dde8 158BuildRequires: ncurses-devel >= 4.2
2e5f696d 159%{?with_ssl:BuildRequires: openssl-devel >= 0.9.7d}
3f8fcf96 160%{?with_autodeps:BuildRequires: perl-DBI}
d15a6540 161BuildRequires: perl-devel >= 1:5.6.1
7b36dde8 162BuildRequires: readline-devel >= 4.2
d15a6540 163BuildRequires: rpm-perlprov >= 4.1-13
6a4d2f37 164BuildRequires: rpmbuild(macros) >= 1.597
84fe95c7 165BuildRequires: sed >= 4.0
5a225b4d 166BuildRequires: zlib-devel
7803433d
ER
167Requires(post,preun): /sbin/chkconfig
168Requires(postun): /usr/sbin/groupdel
169Requires(postun): /usr/sbin/userdel
33f9bccb 170Requires(pre): /bin/id
7803433d 171Requires(pre): /usr/bin/getgid
33f9bccb 172Requires(pre): /usr/sbin/groupadd
173Requires(pre): /usr/sbin/useradd
6e6b75c9 174Requires(triggerpostun): sed >= 4.0
ad0a7267 175Requires: %{name}-charsets = %{version}-%{release}
5a0031b8 176Requires: %{name}-libs = %{version}-%{release}
2539bd3a 177Requires: /usr/bin/setsid
7803433d 178Requires: rc-scripts >= 0.2.0
99e96521
ER
179Suggests: mysql-client
180%{?with_tcpd:Suggests: tcp_wrappers}
a76adf0b 181Suggests: vim-syntax-mycnf
717073d7 182Provides: MySQL-server
c354982f 183Provides: group(mysql)
717073d7 184Provides: msqlormysql
c354982f 185Provides: user(mysql)
5a225b4d 186Obsoletes: MySQL
187Obsoletes: mysql-server
2070f281 188Conflicts: logrotate < 3.8.0
c354982f 189BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
ceb5ca86 190
8de1b4ed 191%define _libexecdir %{_sbindir}
e2417b45 192%define _localstatedir /var/lib/mysql
ea2c1c6a 193%define _mysqlhome /home/services/mysql
e73cea44 194
6eab349a 195%define _noautoreqdep 'perl(DBD::mysql)'
9cc19375 196
ceb5ca86 197%description
75eb20a9 198MySQL is a true multi-user, multi-threaded SQL (Structured Query
199Language) database server. SQL is the most popular database language
200in the world. MySQL is a client/server implementation that consists of
201a server daemon mysqld and many different client programs/libraries.
202
203The main goals of MySQL are speed, robustness and easy to use. MySQL
204was originally developed because we at Tcx needed a SQL server that
205could handle very big databases with magnitude higher speed than what
206any database vendor could offer to us. We have now been using MySQL
207since 1996 in a environment with more than 40 databases, 10,000
208tables, of which more than 500 have more than 7 million rows. This is
209about 50G of mission critical data.
210
211The base upon which MySQL is built is a set of routines that have been
212used in a highly demanding production environment for many years.
213While MySQL is still in development, it already offers a rich and
214highly useful function set.
ceb5ca86 215
a82d818e 216%description -l fr.UTF-8
3fe2f194 217MySQL est un serveur de bases de donnees SQL vraiment multi-usagers et
75eb20a9 218multi-taches. Le langage SQL est le langage de bases de donnees le
219plus populaire au monde. MySQL est une implementation client/serveur
220qui consiste en un serveur (mysqld) et differents
221programmes/bibliotheques clientes.
222
223Les objectifs principaux de MySQL sont: vitesse, robustesse et
224facilite d'utilisation. MySQL fut originalement developpe parce que
225nous, chez Tcx, avions besoin d'un serveur SQL qui pouvait gerer de
226tres grandes bases de donnees avec une vitesse d'un ordre de magnitude
227superieur a ce que n'importe quel vendeur pouvait nous offrir. Nous
228utilisons MySQL depuis 1996 dans un environnement avec plus de 40
229bases de donnees, 10000 tables, desquelles plus de 500 ont plus de 7
230millions de lignes. Ceci represente environ 50G de donnees critiques.
231
232A la base de la conception de MySQL, on retrouve une serie de routines
233qui ont ete utilisees dans un environnement de production pendant
234plusieurs annees. Meme si MySQL est encore en developpement, il offre
235deja une riche et utile serie de fonctions.
3fe2f194 236
a82d818e
JR
237%description -l pl.UTF-8
238MySQL to prawdziwie wieloużytkownikowy, wielowątkowy serwer baz danych
239SQL. SQL jest najpopularniejszym na świecie językiem używanym do baz
240danych. MySQL to implementacja klient/serwer składająca się z demona
241mysqld i wielu różnych programów i bibliotek klienckich.
242
243Głównymi celami MySQL-a są szybkość, potęga i łatwość użytkowania.
244MySQL oryginalnie był tworzony, ponieważ autorzy w Tcx potrzebowali
245serwera SQL do obsługi bardzo dużych baz danych z szybkością o wiele
246większą, niż mogli zaoferować inni producenci baz danych. Używają go
247od 1996 roku w środowisku z ponad 40 bazami danych, 10 000 tabel, z
248których ponad 500 zawiera ponad 7 milionów rekordów - w sumie około
d451850c
JB
24950GB krytycznych danych.
250
a82d818e
JR
251Baza, na której oparty jest MySQL, składa się ze zbioru procedur,
252które były używane w bardzo wymagającym środowisku produkcyjnym przez
253wiele lat. Pomimo, że MySQL jest ciągle rozwijany, już oferuje bogaty
254i użyteczny zbiór funkcji.
ceb5ca86 255
a82d818e 256%description -l de.UTF-8
1c06b825 257MySQL ist eine SQL-Datenbank. Allerdings ist sie im Gegensatz zu
258Oracle, DB2 oder PostgreSQL keine relationale Datenbank. Die Daten
a82d818e
JR
259werden zwar in zweidimensionalen Tabellen gespeichert und können mit
260einem Primärschlüssel versehen werden. Es ist aber keine Definition
261eines Fremdschlüssels möglich. Der Benutzer ist somit bei einer
262MySQL-Datenbank völlig allein für die (referenzielle) Integrität der
1c06b825 263Daten verantwortlich. Allein durch die Nutzung externer
a82d818e
JR
264Tabellenformate, wie InnoDB bzw Berkeley DB wird eine Relationalität
265ermöglicht. Diese Projekte sind aber getrennt von MySQL zu betrachten.
1c06b825 266
a82d818e
JR
267%description -l pt_BR.UTF-8
268O MySQL é um servidor de banco de dados SQL realmente multiusuário e
269multi-tarefa. A linguagem SQL é a mais popular linguagem para banco de
270dados no mundo. O MySQL é uma implementação cliente/servidor que
75eb20a9 271consiste de um servidor chamado mysqld e diversos
a82d818e 272programas/bibliotecas clientes. Os principais objetivos do MySQL são:
75eb20a9 273velocidade, robustez e facilidade de uso. O MySQL foi originalmente
a82d818e 274desenvolvido porque nós na Tcx precisávamos de um servidor SQL que
75eb20a9 275pudesse lidar com grandes bases de dados e com uma velocidade muito
276maior do que a que qualquer vendedor podia nos oferecer. Estamos
277usando o MySQL desde 1996 em um ambiente com mais de 40 bases de dados
a82d818e
JR
278com 10.000 tabelas, das quais mais de 500 têm mais de 7 milhões de
279linhas. Isto é o equivalente a aproximadamente 50G de dados críticos.
280A base da construção do MySQL é uma série de rotinas que foram usadas
281em um ambiente de produção com alta demanda por muitos anos. Mesmo o
282MySQL estando ainda em desenvolvimento, ele já oferece um conjunto de
283funções muito ricas e úteis. Veja a documentação para maiores
284informações.
285
286%description -l ru.UTF-8
287MySQL - это SQL (Structured Query Language) сервер базы данных. MySQL
288была написана Michael'ом (monty) Widenius'ом. См. файл CREDITS в
289дистрибутиве на предмет других участников проекта и прочей информации
290о MySQL.
291
292%description -l uk.UTF-8
293MySQL - це SQL (Structured Query Language) сервер бази даних. MySQL
294було написано Michael'ом (monty) Widenius'ом. Див. файл CREDITS в
295дистрибутиві для інформації про інших учасників проекту та іншої
296інформації.
bf60a170 297
2539bd3a
JB
298%package charsets
299Summary: MySQL - character sets definitions
fe56cb4d 300Summary(pl.UTF-8): MySQL - definicje kodowań znaków
2539bd3a
JB
301Group: Applications/Databases
302
303%description charsets
304This package contains character sets definitions needed by both client
305and server.
306
a82d818e
JR
307%description charsets -l pl.UTF-8
308Ten pakiet zawiera definicje kodowań znaków potrzebne dla serwera i
2539bd3a
JB
309klienta.
310
17299970
ER
311%package -n mysqlhotcopy
312Summary: mysqlhotcopy - A MySQL database backup program
5fc524a3 313Summary(pl.UTF-8): mysqlhotcopy - program do tworzenia kopii zapasowych baz MySQL
17299970 314Group: Applications/Databases
17299970
ER
315Requires: perl-DBD-mysql
316
317%description -n mysqlhotcopy
318mysqlhotcopy uses LOCK TABLES, FLUSH TABLES, and cp or scp to make a
319database backup quickly. It is the fastest way to make a backup of the
320database or single tables, but it can be run only on the same machine
321where the database directories are located. mysqlhotcopy works only
322for backing up MyISAM and ARCHIVE tables.
323
324See innobackup package to backup InnoDB tables.
325
5fc524a3
JB
326%description -n mysqlhotcopy -l pl.UTF-8
327mysqlhotcopy wykorzystuje LOCK TABLES, FLUSH TABLES oraz cp i scp do
328szybkiego tworzenia kopii zapasowych baz danych. Jest to najszybszy
329sposób wykonania kopii zapasowej bazy danych lub pojedynczych tabel,
330ale może działać tylko na maszynie, na której znajdują się katalogi z
331bazą danych. mysqlhotcopy działa tylko dla tabel typu MyISAM i
332ARCHIVE.
333
334Narzędzie do tworzenia kopii tabel InnoDB znajduje się w pakiecie
335innobackup.
336
8de1b4ed 337%package extras
84bd803c 338Summary: MySQL additional utilities
fe56cb4d 339Summary(pl.UTF-8): Dodatkowe narzędzia do MySQL
8de1b4ed 340Group: Applications/Databases
da1eef6c 341Requires: %{name}-client = %{version}-%{release}
3103a6d7 342Requires: %{name}-libs = %{version}-%{release}
8de1b4ed 343
344%description extras
8afdedd4 345MySQL additional utilities except Perl scripts (they may be found in
73d155ac 346%{name}-extras-perl package).
8afdedd4 347
a82d818e
JR
348%description extras -l pl.UTF-8
349Dodatkowe narzędzia do MySQL - z wyjątkiem skryptów Perla (które są w
3c7e6ab8 350pakiecie %{name}-extras-perl).
84bd803c 351
8afdedd4 352%package extras-perl
353Summary: MySQL additional utilities written in Perl
fe56cb4d 354Summary(pl.UTF-8): Dodatkowe narzędzia do MySQL napisane w Perlu
8afdedd4 355Group: Applications/Databases
3103a6d7 356Requires: %{name}-extras = %{version}-%{release}
716c371c
ER
357# this is just for the sake of smooth upgrade, not to break systems
358Requires: mysqlhotcopy = %{version}-%{release}
b8f6b666 359Requires: perl(DBD::mysql)
360
8afdedd4 361%description extras-perl
362MySQL additional utilities written in Perl.
8de1b4ed 363
a82d818e
JR
364%description extras-perl -l pl.UTF-8
365Dodatkowe narzędzia do MySQL napisane w Perlu.
84bd803c 366
ceb5ca86 367%package client
ceb5ca86 368Summary: MySQL - Client
fe56cb4d
ER
369Summary(pl.UTF-8): MySQL - Klient
370Summary(pt.UTF-8): MySQL - Cliente
371Summary(ru.UTF-8): MySQL клиент
372Summary(uk.UTF-8): MySQL клієнт
ceb5ca86 373Group: Applications/Databases
ad0a7267 374Requires: %{name}-charsets = %{version}-%{release}
1101e5b7 375Requires: %{name}-libs = %{version}-%{release}
c486a119 376Obsoletes: MySQL-client
ceb5ca86
AM
377
378%description client
75eb20a9 379This package contains the standard MySQL clients.
ceb5ca86 380
a82d818e 381%description client -l fr.UTF-8
3fe2f194 382Ce package contient les clients MySQL standards.
383
a82d818e 384%description client -l pl.UTF-8
ceb5ca86
AM
385Standardowe programy klienckie MySQL.
386
a82d818e
JR
387%description client -l pt_BR.UTF-8
388Este pacote contém os clientes padrão para o MySQL.
ceb5ca86 389
a82d818e
JR
390%description client -l ru.UTF-8
391Этот пакет содержит только клиент MySQL.
bf60a170 392
a82d818e
JR
393%description client -l uk.UTF-8
394Цей пакет містить тільки клієнта MySQL.
bf60a170 395
3fe2f194 396%package libs
397Summary: Shared libraries for MySQL
21dbb6ad 398Summary(pl.UTF-8): Biblioteki współdzielone MySQL
031565bb 399Group: Libraries
5c69de9f 400Obsoletes: libmysql10
be07ff22 401Obsoletes: mysql-doc < 4.1.12
ceb5ca86 402
3fe2f194 403%description libs
c2c4112b 404Shared libraries for MySQL.
ceb5ca86 405
a82d818e 406%description libs -l pl.UTF-8
21dbb6ad 407Biblioteki współdzielone MySQL.
84bd803c 408
ceb5ca86 409%package devel
21dbb6ad
JB
410Summary: MySQL - development header files and other files
411Summary(pl.UTF-8): MySQL - Pliki nagłówkowe i inne dla programistów
fe56cb4d
ER
412Summary(pt.UTF-8): MySQL - Medições de desempenho
413Summary(ru.UTF-8): MySQL - хедеры и библиотеки разработчика
414Summary(uk.UTF-8): MySQL - хедери та бібліотеки програміста
047122f1 415Group: Development/Libraries
3103a6d7 416Requires: %{name}-libs = %{version}-%{release}
2e5f696d 417%{?with_ssl:Requires: openssl-devel}
bbc0ff50 418Requires: zlib-devel
c486a119 419Obsoletes: MySQL-devel
5c69de9f 420Obsoletes: libmysql10-devel
ceb5ca86
AM
421
422%description devel
21dbb6ad 423This package contains the development header files and other files
ceb5ca86
AM
424necessary to develop MySQL client applications.
425
a82d818e 426%description devel -l fr.UTF-8
bf60a170 427Ce package contient les fichiers entetes et les librairies de
428developpement necessaires pour developper des applications clientes
429MySQL.
430
a82d818e 431%description devel -l pl.UTF-8
21dbb6ad 432Pliki nagłówkowe i inne pliki konieczne do kompilacji aplikacji
ceb5ca86 433klienckich MySQL.
b24ee098 434
a82d818e
JR
435%description devel -l pt_BR.UTF-8
436Este pacote contém os arquivos de cabeçalho (header files) e
437bibliotecas necessárias para desenvolver aplicações clientes do MySQL.
b24ee098 438
a82d818e
JR
439%description devel -l ru.UTF-8
440Этот пакет содержит хедеры и библиотеки разработчика, необходимые для
441разработки клиентских приложений.
bf60a170 442
a82d818e
JR
443%description devel -l uk.UTF-8
444Цей пакет містить хедери та бібліотеки програміста, необхідні для
445розробки програм-клієнтів.
3fe2f194 446
447%package static
01875e6d 448Summary: MySQL static libraries
fe56cb4d
ER
449Summary(pl.UTF-8): Biblioteki statyczne MySQL
450Summary(ru.UTF-8): MySQL - статические библиотеки
451Summary(uk.UTF-8): MySQL - статичні бібліотеки
3fe2f194 452Group: Development/Libraries
3103a6d7 453Requires: %{name}-devel = %{version}-%{release}
c44d1e10 454Obsoletes: MySQL-static
3fe2f194 455
456%description static
73d155ac 457MySQL static libraries.
3fe2f194 458
a82d818e 459%description static -l pl.UTF-8
3fe2f194 460Biblioteki statyczne MySQL.
461
a82d818e
JR
462%description static -l ru.UTF-8
463Этот пакет содержит статические библиотеки разработчика, необходимые
464для разработки клиентских приложений.
bf60a170 465
a82d818e
JR
466%description static -l uk.UTF-8
467Цей пакет містить статичні бібліотеки програміста, необхідні для
468розробки програм-клієнтів.
bf60a170 469
d1e91a2d
AM
470%package bench
471Summary: MySQL - Benchmarks
fe56cb4d
ER
472Summary(pl.UTF-8): MySQL - Programy testujące szybkość działania bazy
473Summary(pt.UTF-8): MySQL - Medições de desempenho
474Summary(ru.UTF-8): MySQL - бенчмарки
475Summary(uk.UTF-8): MySQL - бенчмарки
d1e91a2d
AM
476Group: Applications/Databases
477Requires: %{name} = %{version}-%{release}
478Requires: %{name}-client
479Requires: perl(DBD::mysql)
480Obsoletes: MySQL-bench
481
482%description bench
483This package contains MySQL benchmark scripts and data.
484
a82d818e
JR
485%description bench -l pl.UTF-8
486Programy testujące szybkość serwera MySQL.
d1e91a2d 487
a82d818e
JR
488%description bench -l pt_BR.UTF-8
489Este pacote contém medições de desempenho de scripts e dados do MySQL.
d1e91a2d 490
a82d818e
JR
491%description bench -l ru.UTF-8
492Этот пакет содержит скрипты и данные для оценки производительности
d1e91a2d
AM
493MySQL.
494
a82d818e
JR
495%description bench -l uk.UTF-8
496Цей пакет містить скрипти та дані для оцінки продуктивності MySQL.
d1e91a2d
AM
497
498%package doc
499Summary: MySQL manual
fe56cb4d 500Summary(pl.UTF-8): Podręcznik użytkownika MySQL
d1e91a2d
AM
501Group: Applications/Databases
502
503%description doc
504This package contains manual in HTML format.
505
a82d818e
JR
506%description doc -l pl.UTF-8
507Podręcznik MySQL-a w formacie HTML.
d1e91a2d 508
d72472ee
AM
509%package ndb
510Summary: MySQL - NDB Storage Engine Daemon
fe56cb4d 511Summary(pl.UTF-8): MySQL - demon silnika przechowywania danych NDB
d72472ee
AM
512Group: Applications/Databases
513Requires: %{name}-libs = %{version}-%{release}
514
515%description ndb
516This package contains the standard MySQL NDB Storage Engine Daemon.
517
a82d818e 518%description ndb -l pl.UTF-8
8cdaa5ca
ER
519Ten pakiet zawiera standardowego demona silnika przechowywania danych
520NDB.
a4fd19f2 521
d72472ee
AM
522%package ndb-client
523Summary: MySQL - NDB Clients
fe56cb4d 524Summary(pl.UTF-8): MySQL - programy klienckie NDB
d72472ee
AM
525Group: Applications/Databases
526Requires: %{name}-libs = %{version}-%{release}
527
528%description ndb-client
529This package contains the standard MySQL NDB Clients.
530
a82d818e 531%description ndb-client -l pl.UTF-8
a4fd19f2
JB
532Ten pakiet zawiera standardowe programy klienckie MySQL NDB.
533
d72472ee
AM
534%package ndb-mgm
535Summary: MySQL - NDB Management Daemon
fe56cb4d 536Summary(pl.UTF-8): MySQL - demon zarządzający NDB
d72472ee
AM
537Group: Applications/Databases
538Requires: %{name}-libs = %{version}-%{release}
539
540%description ndb-mgm
541This package contains the standard MySQL NDB Management Daemon.
542
a82d818e
JR
543%description ndb-mgm -l pl.UTF-8
544Ten pakiet zawiera standardowego demona zarządzającego MySQL NDB.
a4fd19f2 545
d72472ee
AM
546%package ndb-cpc
547Summary: MySQL - NDB CPC Daemon
fe56cb4d 548Summary(pl.UTF-8): MySQL - demon NDB CPC
d72472ee
AM
549Group: Applications/Databases
550Requires: %{name}-libs = %{version}-%{release}
551
552%description ndb-cpc
553This package contains the standard MySQL NDB CPC Daemon.
554
a82d818e 555%description ndb-cpc -l pl.UTF-8
a4fd19f2
JB
556Ten pakiet zawiera standardowego demona MySQL NDB CPC.
557
a09e0285 558%prep
bac101f3 559%setup -q %{?with_sphinx:-a100}
e6696823 560%if %{with sphinx}
fa51fc20 561# http://www.sphinxsearch.com/docs/manual-0.9.9.html#sphinxse-mysql51
e6696823 562mv sphinx-*/mysqlse storage/sphinx
fa51fc20 563%patch18 -p1
e6696823 564%endif
9cc19375 565#%patch2 -p1 # NEEDS CHECK, which exact program needs -lc++
13701330 566%patch3 -p1
fc032bd9 567%patch5 -p1
14996ad7 568%patch6 -p1
f29ae69c 569%patch7 -p1
7df2d935 570%patch8 -p1
1b41566d 571%patch9 -p1
bbae9ea7 572%patch11 -p1
a2e8058d 573%patch12 -p1
3d4dbd2e 574%patch14 -p0
fc032bd9 575%patch19 -p1
90e4ba9d 576%patch20 -p1
a5c997ca 577%patch21 -p1
075b91cf 578# <percona %patches>
b4e1fa2c
AM
579%patch100 -p1
580%patch101 -p1
11822e22 581%patch102 -p1
b4e1fa2c
AM
582%patch103 -p1
583%patch104 -p1
584%patch105 -p1
585%patch106 -p1
586%patch107 -p1
587%patch108 -p1
588%patch109 -p1
589%patch110 -p1
590%patch111 -p1
591%patch112 -p1
592%patch113 -p1
593%patch114 -p1
594%patch115 -p1
595%patch116 -p1
596%patch117 -p1
597%patch118 -p1
598%patch119 -p1
599%patch120 -p1
600%patch121 -p1
601%patch122 -p1
602%patch123 -p1
603%patch124 -p1
604%patch125 -p1
605%patch126 -p1
606%patch127 -p1
607%patch128 -p1
608%patch129 -p1
609%patch130 -p1
610%patch131 -p1
611%patch132 -p1
612%patch133 -p1
613%patch134 -p1
614%patch135 -p1
615%patch136 -p1
616%patch137 -p1
617%patch138 -p1
618%patch139 -p1
619%patch140 -p1
620%patch141 -p1
621%patch142 -p1
622%patch143 -p1
752085cb 623%patch144 -p1
df1b5770 624%patch145 -p1
11822e22
AM
625%patch146 -p1
626%patch147 -p1
adf0fb13
AM
627%patch148 -p1
628%patch149 -p1
629%patch150 -p1
db82db79
AM
630%patch151 -p1
631%patch152 -p1
632%patch153 -p1
633%patch154 -p1
48b678b4 634%patch155 -p1
734d6226
AM
635%patch156 -p1
636%patch157 -p1
637%patch158 -p1
638%patch159 -p1
639%patch160 -p1
13ceb006
AM
640%patch161 -p1
641%patch162 -p1
29ffd636 642%patch163 -p1
543222d2
AM
643%patch164 -p1
644%patch165 -p1
645%patch166 -p1
fc032bd9
AM
646# </percona>
647
b4e1fa2c
AM
648# to get these files rebuild
649rm sql/sql_yacc.cc
650rm sql/sql_yacc.h
b24ee098 651
a09e0285 652%build
8ad2cc9f
AM
653install -d build
654cd build
92992b51
ER
655# NOTE that /var/lib/mysql/mysql.sock is symlink to real sock file
656# (it defaults to first cluster but user may change it to whatever
657# cluster it wants)
234eba13
ER
658
659%if "%{pld_release}" == "ac"
4b2e4b47 660# add suffix, but allow ccache, etc in ~/.rpmmacros
234eba13
ER
661%{expand:%%define __cc %(echo '%__cc' | sed -e 's,-gcc,-gcc4,')}
662%{expand:%%define __cxx %(echo '%__cxx' | sed -e 's,-g++,-g++4,')}
663%{expand:%%define __cpp %(echo '%__cpp' | sed -e 's,-gcc,-gcc4,')}
664%endif
665
fc032bd9
AM
666# upstream has fallen down badly on symbol versioning, do it ourselves
667install -d libmysql
668cp -a %{SOURCE15} libmysql/libmysql.version
669
92992b51 670%cmake \
96962fb9 671 -DCMAKE_BUILD_TYPE=%{!?debug:RelWithDebInfo}%{?debug:Debug} \
259cadd8 672 -DFEATURE_SET="community" \
dbbad511
ER
673 -DCMAKE_C_FLAGS_RELEASE="%{rpmcflags} -DNDEBUG -fno-omit-frame-pointer -fno-strict-aliasing" \
674 -DCMAKE_CXX_FLAGS_RELEASE="%{rpmcxxflags} -DNDEBUG -fno-omit-frame-pointer -fno-strict-aliasing" \
575c6276 675 -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
43adcf34 676 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
8ad2cc9f
AM
677 %{?debug:-DWITH_DEBUG=ON} \
678 -DWITH_FAST_MUTEXES=ON \
dbbad511 679 -DWITH_PIC=ON \
8ad2cc9f 680 -DWITH_LIBEDIT=OFF \
fc032bd9 681 -DWITH_READLINE=OFF \
e6dcb604
ER
682%if "%{pld_release}" == "ac"
683 -DWITH_SSL=%{?with_ssl:bundled}%{!?with_ssl:no} \
684%else
5d4c4d6c 685 -DWITH_SSL=%{?with_ssl:system}%{!?with_ssl:no} \
e6dcb604 686%endif
8ad2cc9f 687 -DWITH_ZLIB=system \
259cadd8 688 -DCOMPILATION_COMMENT="PLD/Linux Distribution MySQL RPM" \
5d4c4d6c 689 -DWITH_LIBWRAP=%{?with_tcpd:ON}%{!?with_tcpd:OFF} \
dbbad511 690 -DWITH_UNIT_TESTS=%{?with_tests:ON}%{!?with_tests:OFF} \
234eba13 691 -DCURSES_INCLUDE_PATH=/usr/include/ncurses \
92992b51 692 -DMYSQL_UNIX_ADDR=/var/lib/%{name}/%{name}.sock \
5dc334e6
ER
693 -DINSTALL_LAYOUT=RPM \
694 -DINSTALL_MYSQLTESTDIR_RPM="" \
c9b1588e 695 -DINSTALL_SQLBENCHDIR=%{_datadir} \
92992b51 696 -DINSTALL_SUPPORTFILESDIR=%{_datadir}/%{name}-support \
8ad2cc9f
AM
697 ..
698
699%{__make}
b24ee098 700
7fbcff7e
AM
701%{?with_tests:%{__make} test}
702
ceb5ca86 703%install
3fe2f194 704rm -rf $RPM_BUILD_ROOT
978cdac2 705install -d $RPM_BUILD_ROOT/etc/{logrotate.d,rc.d/init.d,sysconfig,mysql,skel} \
92c38d0d 706 $RPM_BUILD_ROOT/var/{log/{archive,}/mysql,lib/mysql} \
921dc37c 707 $RPM_BUILD_ROOT{%{_infodir},%{_mysqlhome}}
b24ee098 708
8ad2cc9f
AM
709%{__make} -C build install \
710 DESTDIR=$RPM_BUILD_ROOT
d451850c 711
92992b51 712cp -a Docs/mysql.info $RPM_BUILD_ROOT%{_infodir}
b24ee098 713
92992b51
ER
714install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/mysql
715cp -a %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/mysql
716cp -a %{SOURCE3} $RPM_BUILD_ROOT/etc/logrotate.d/mysql
dbf4eb6a 717# This is template for configuration file which is created after 'service mysql init'
92992b51
ER
718cp -a %{SOURCE4} mysqld.conf
719cp -a %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/clusters.conf
720touch $RPM_BUILD_ROOT/var/log/%{name}/{mysqld,query,slow}.log
b24ee098 721
2e5f696d 722# remove innodb directives from mysqld.conf if mysqld is configured without
9cc19375 723%if %{without innodb}
2e5f696d
ER
724 cp mysqld.conf mysqld.tmp
725 awk 'BEGIN { RS="\n\n" } !/innodb/ { printf("%s\n\n", $0) }' < mysqld.tmp > mysqld.conf
726%endif
727
728# remove berkeley-db directives from mysqld.conf if mysqld is configured without
9cc19375
AM
729cp mysqld.conf mysqld.tmp
730awk 'BEGIN { RS="\n\n" } !/bdb/ { printf("%s\n\n", $0) }' < mysqld.tmp > mysqld.conf
2e5f696d 731
92992b51
ER
732cp -a mysqld.conf $RPM_BUILD_ROOT%{_datadir}/%{name}/mysqld.conf
733cp -a %{SOURCE13} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/mysql-client.conf
978cdac2 734cp -a %{SOURCE14} $RPM_BUILD_ROOT/etc/skel/.my.cnf
2e5f696d 735
d72472ee 736# NDB
f7fb94f7 737%if %{with ndb}
92992b51
ER
738install -p %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/mysql-ndb
739cp -a %{SOURCE8} $RPM_BUILD_ROOT/etc/sysconfig/mysql-ndb
740install -p %{SOURCE9} $RPM_BUILD_ROOT/etc/rc.d/init.d/mysql-ndb-mgm
741cp -a %{SOURCE10} $RPM_BUILD_ROOT/etc/sysconfig/mysql-ndb-mgm
742install -p %{SOURCE11} $RPM_BUILD_ROOT/etc/rc.d/init.d/mysql-ndb-cpc
743cp -a %{SOURCE12} $RPM_BUILD_ROOT/etc/sysconfig/mysql-ndb-cpc
f7fb94f7 744%endif
17dc26d2 745
14996ad7 746# symlinks point to the .so file, fix it
df1b5770
AM
747ln -sf libmysqlclient.so.18 $RPM_BUILD_ROOT%{_libdir}/libmysqlclient_r.so.18
748ln -sf libmysqlclient.so.18.0.0 $RPM_BUILD_ROOT%{_libdir}/libmysqlclient_r.so.18.0.0
14996ad7
AM
749
750sed -i -e 's,/usr//usr,%{_prefix},g' $RPM_BUILD_ROOT%{_bindir}/mysql_config
04497307 751sed -i -e '/libs/s/$ldflags//' $RPM_BUILD_ROOT%{_bindir}/mysql_config
b24ee098 752
17dc26d2 753# remove known unpackaged files
21dbb6ad 754%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/mysql-support
9cc19375 755
8b2cbaf3 756# rename not to be so generic name
8b2cbaf3 757mv $RPM_BUILD_ROOT%{_bindir}/{,mysql_}resolve_stack_dump
68e8a131 758mv $RPM_BUILD_ROOT%{_mandir}/man1/{,mysql_}resolve_stack_dump.1
17dc26d2 759
c0326166 760# not useful without -debug build
21dbb6ad
JB
761%{!?debug:%{__rm} $RPM_BUILD_ROOT%{_bindir}/mysql_resolve_stack_dump}
762%{!?debug:%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysql_resolve_stack_dump.1}
c0326166 763# generate symbols file, so one can generate backtrace using it
92992b51 764# mysql_resolve_stack_dump -s %{_datadir}/%{name}/mysqld.sym -n mysqld.stack.
c0326166 765# http://dev.mysql.com/doc/refman/5.0/en/using-stack-trace.html
92992b51 766%{?debug:nm -n $RPM_BUILD_ROOT%{_sbindir}/mysqld > $RPM_BUILD_ROOT%{_datadir}/%{name}/mysqld.sym}
c0326166 767
dabd8964 768# do not clobber users $PATH
734d6226 769mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/mysql_plugin
dabd8964
ER
770mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/mysql_upgrade
771mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/innochecksum
772mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/myisamchk
773mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/myisamlog
774mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/myisampack
c9b1588e 775#mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/mysql_fix_privilege_tables
dabd8964 776mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/my_print_defaults
3b961fb0 777sed -i -e 's#/usr/bin/my_print_defaults#%{_sbindir}/my_print_defaults#g' $RPM_BUILD_ROOT%{_bindir}/mysql_install_db
dabd8964
ER
778mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/mysqlcheck
779
3b961fb0 780# delete - functionality in initscript / rpm
21dbb6ad
JB
781# note: mysql_install_db (and thus resolveip) are needed by digikam
782%{__rm} $RPM_BUILD_ROOT%{_bindir}/mysqld_safe
783%{__rm} $RPM_BUILD_ROOT%{_bindir}/mysqld_multi
784%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysqld_{multi,safe}*
c9b1588e
AM
785#rm $RPM_BUILD_ROOT%{_datadir}/%{name}/mysql-log-rotate
786#rm $RPM_BUILD_ROOT%{_datadir}/%{name}/mysql.server
787#rm $RPM_BUILD_ROOT%{_datadir}/%{name}/binary-configure
21dbb6ad
JB
788%{__rm} $RPM_BUILD_ROOT%{_datadir}/%{name}/errmsg-utf8.txt
789%{__rm} $RPM_BUILD_ROOT%{_bindir}/mysql_waitpid
790%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysql_waitpid.1*
791%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysql.server*
792%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysqlman.1*
793%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/comp_err.1*
9cc19375
AM
794
795# we don't package those (we have no -test or -testsuite pkg) and some of them just segfault
21dbb6ad
JB
796%{__rm} $RPM_BUILD_ROOT%{_bindir}/mysql_client_test
797%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysql_client_test.1*
798%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysql_client_test_embedded.1*
799%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysql-stress-test.pl.1*
800%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysql-test-run.pl.1*
801%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/mysql-test
17dc26d2 802
be74eb6e 803# not needed
21dbb6ad 804%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/plugin/libdaemon_example.*
9cc19375 805
f624a76e 806%clean
1d171524 807rm -rf $RPM_BUILD_ROOT
f624a76e 808
fd32e090 809%pre
ff5f125f
ER
810%groupadd -g 89 mysql
811%useradd -u 89 -d %{_mysqlhome} -s /bin/sh -g mysql -c "MySQL Server" mysql
fd32e090 812
ceb5ca86 813%post
054c91be 814[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
0f4ca10a 815/sbin/ldconfig
054c91be 816/sbin/chkconfig --add mysql
4ebde491 817%service mysql restart
dd6934b4 818
d5e8c713 819%preun
054c91be 820if [ "$1" = "0" ]; then
579146e7 821 %service -q mysql stop
054c91be 822 /sbin/chkconfig --del mysql
823fi
c44d1e10 824
ec56ce82
AM
825%postun
826[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
0f4ca10a 827/sbin/ldconfig
9cc19375 828
fd32e090 829if [ "$1" = "0" ]; then
c354982f 830 %userremove mysql
831 %groupremove mysql
fd32e090 832fi
b24ee098 833
d72472ee
AM
834%post ndb
835/sbin/chkconfig --add mysql-ndb
1101e5b7 836%service mysql-ndb restart "mysql NDB engine"
d72472ee
AM
837
838%preun ndb
839if [ "$1" = "0" ]; then
1101e5b7
ER
840 %service mysql-ndb stop
841 /sbin/chkconfig --del mysql-ndb
d72472ee
AM
842fi
843
844%post ndb-mgm
845/sbin/chkconfig --add mysql-ndb-mgm
1101e5b7 846%service mysql-ndb-mgm restart "mysql NDB management node"
d72472ee
AM
847
848%preun ndb-mgm
849if [ "$1" = "0" ]; then
1101e5b7
ER
850 %service mysql-ndb-mgm stop
851 /sbin/chkconfig --del mysql-ndb-mgm
d72472ee
AM
852fi
853
854%post ndb-cpc
855/sbin/chkconfig --add mysql-ndb-cpc
1101e5b7 856%service mysql-ndb-cpc restart "mysql NDB CPC"
d72472ee
AM
857
858%preun ndb-cpc
859if [ "$1" = "0" ]; then
1101e5b7
ER
860 %service mysql-ndb-cpc stop
861 /sbin/chkconfig --del mysql-ndb-cpc
d72472ee
AM
862fi
863
3fe2f194 864%post libs -p /sbin/ldconfig
865%postun libs -p /sbin/ldconfig
b24ee098 866
80cc634b 867%triggerpostun -- mysql < 4.0.20-2.4
92992b51 868# For clusters in /etc/%{name}/clusters.conf
be74eb6e 869if [ -f /etc/sysconfig/mysql ]; then
99e0d1a2 870 . /etc/sysconfig/mysql
4c7c0ef7 871 if [ -n "$MYSQL_DB_CLUSTERS" ]; then
99e0d1a2 872 for i in "$MYSQL_DB_CLUSTERS"; do
92992b51 873 echo "$i/mysqld.conf=$i" >> /etc/%{name}/clusters.conf
99e0d1a2 874 done
b545a308 875 echo "# Do not use **obsolete** option MYSQL_DB_CLUSTERS" >> /etc/sysconfig/mysql
92992b51
ER
876 echo "# USE /etc/%{name}/clusters.conf instead" >> /etc/sysconfig/mysql
877 echo "Converted clusters from MYSQL_DB_CLUSTERS to /etc/%{name}/clusters.conf."
878 echo "You NEED to fix your /etc/sysconfig/mysql and verify /etc/%{name}/clusters.conf."
99e0d1a2
PG
879 fi
880fi
881
80cc634b 882%triggerpostun -- mysql < 4.1.1
7f18dfce 883# For better compatibility with prevoius versions:
92992b51 884for config in $(awk -F= '!/^#/ && /=/{print $1}' /etc/%{name}/clusters.conf); do
7f18dfce
PG
885 if echo "$config" | grep -q '^/'; then
886 config_file="$config"
92992b51
ER
887 elif [ -f "/etc/%{name}/$config" ]; then
888 config_file=/etc/%{name}/$config
7f18dfce 889 else
92992b51 890 clusterdir=$(awk -F= "/^$config/{print \$2}" /etc/%{name}/clusters.conf)
dd25dce8
ER
891 if [ -z "$clusterdir" ]; then
892 echo >&2 "Can't find cluster dir for $config!"
92992b51 893 echo >&2 "Please remove extra (leading) spaces from /etc/%{name}/clusters.conf"
dd25dce8
ER
894 exit 1
895 fi
7f18dfce
PG
896 config_file="$clusterdir/mysqld.conf"
897 fi
0e6ae684
ER
898
899 if [ ! -f "$config_file" ]; then
900 echo >&2 "Lost myself! Please report this (with above errors, if any) to http://bugs.pld-linux.org/"
901 exit 1
902 fi
7f18dfce
PG
903 echo "Adding option old-passwords to config: $config_file"
904 echo "If you want to use new, better passwords - remove it"
6e6b75c9
ER
905
906 # sed magic to add 'old-passwords' to [mysqld] section
907 sed -i -e '/./{H;$!d;};x;/\[mysqld\]/{
908 a
909 a; Compatibility options:
910 aold-passwords
911 }
912 ' $config_file
7f18dfce
PG
913done
914
a2d3f15b 915%banner -e %{name}-4.1.x <<-EOF
f1180631
ER
916 If you want to use new help tables in MySQL 4.1.x then You'll need to import the help data:
917 mysql -u mysql mysql < %{_datadir}/%{name}/fill_help_tables.sql
a2d3f15b
ER
918EOF
919#'
920
dc311758 921%triggerpostun -- mysql < 5.1.0
9cc19375 922configs=""
92992b51 923for config in $(awk -F= '!/^#/ && /=/{print $1}' /etc/%{name}/clusters.conf); do
9cc19375
AM
924 if echo "$config" | grep -q '^/'; then
925 config_file="$config"
92992b51
ER
926 elif [ -f "/etc/%{name}/$config" ]; then
927 config_file=/etc/%{name}/$config
9cc19375 928 else
92992b51 929 clusterdir=$(awk -F= "/^$config/{print \$2}" /etc/%{name}/clusters.conf)
9cc19375
AM
930 if [ -z "$clusterdir" ]; then
931 echo >&2 "Can't find cluster dir for $config!"
92992b51 932 echo >&2 "Please remove extra (leading) spaces from /etc/%{name}/clusters.conf"
9cc19375
AM
933 exit 1
934 fi
935 config_file="$clusterdir/mysqld.conf"
936 fi
937
938 if [ ! -f "$config_file" ]; then
939 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/"
940 continue
941 fi
942 configs="$configs $config_file"
943done
944
1564ef07 945(
3a4d8c21 946echo 'You should run MySQL upgrade script *after* restarting MySQL server for all MySQL clusters.'
9cc19375
AM
947echo 'Thus, you should invoke:'
948for config in $configs; do
b432ea00 949 sed -i -e '
8348d337 950 s/set-variable\s*=\s* //
1564ef07
ER
951 # use # as comment in config
952 s/^;/#/
b432ea00
ER
953 ' $config
954
be74eb6e 955 datadir=$(awk -F= '!/^#/ && $1 ~ /datadir/{print $2}' $config | xargs)
9cc19375
AM
956 echo "# mysql_upgrade --datadir=$datadir"
957done
1564ef07 958) | %banner -e %{name}-5.1
9cc19375 959
b5a439fb
AM
960%triggerpostun -- mysql < 5.5.0
961configs=""
962for config in $(awk -F= '!/^#/ && /=/{print $1}' /etc/%{name}/clusters.conf); do
963 if echo "$config" | grep -q '^/'; then
964 config_file="$config"
965 elif [ -f "/etc/%{name}/$config" ]; then
966 config_file=/etc/%{name}/$config
967 else
968 clusterdir=$(awk -F= "/^$config/{print \$2}" /etc/%{name}/clusters.conf)
969 if [ -z "$clusterdir" ]; then
970 echo >&2 "Can't find cluster dir for $config!"
971 echo >&2 "Please remove extra (leading) spaces from /etc/%{name}/clusters.conf"
972 exit 1
973 fi
974 config_file="$clusterdir/mysqld.conf"
975 fi
976
977 if [ ! -f "$config_file" ]; then
978 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/"
979 continue
980 fi
981 configs="$configs $config_file"
982done
983
1564ef07
ER
984(
985echo 'You should run MySQL upgrade script *after* restarting MySQL server for all MySQL clusters.'
986echo 'Thus, you should invoke:'
b5a439fb 987for config in $configs; do
b432ea00 988 sed -i -e '
8348d337
ER
989 s/^language *= *polish/lc-messages = pl_PL/i
990 s/set-variable\s*=\s* //
76d420b8 991 s/^skip-locking/skip-external-locking/
a54e0fde 992 # this is not valid for server. it is client option
589be940 993 s/^default-character-set/# client-config: &/
1564ef07
ER
994 # use # as comment in config
995 s/^;/#/
b432ea00 996 ' $config
1564ef07 997
589be940
ER
998 socket=$(awk -F= '!/^#/ && $1 ~ /socket/{print $2}' $config | xargs)
999 echo "# mysql_upgrade ${socket:+--socket=$socket}"
b5a439fb 1000done
1564ef07 1001) | %banner -e %{name}-5.5
b5a439fb 1002
ceb5ca86 1003%files
a09e0285 1004%defattr(644,root,root,755)
c9b1588e 1005%doc build/support-files/*.cnf build/support-files/*.ini
92992b51
ER
1006%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name}
1007%attr(754,root,root) /etc/rc.d/init.d/%{name}
1008%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name}
1009%attr(640,root,mysql) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/clusters.conf
dabd8964 1010%attr(755,root,root) %{_sbindir}/innochecksum
2b48022a 1011%attr(755,root,root) %{_sbindir}/my_print_defaults
dabd8964
ER
1012%attr(755,root,root) %{_sbindir}/myisamchk
1013%attr(755,root,root) %{_sbindir}/myisamlog
1014%attr(755,root,root) %{_sbindir}/myisampack
c9b1588e 1015#%attr(755,root,root) %{_sbindir}/mysql_fix_privilege_tables
734d6226 1016%attr(755,root,root) %{_sbindir}/mysql_plugin
dabd8964 1017%attr(755,root,root) %{_sbindir}/mysql_upgrade
2b48022a
ER
1018%attr(755,root,root) %{_sbindir}/mysqlcheck
1019%attr(755,root,root) %{_sbindir}/mysqld
92992b51
ER
1020%dir %{_libdir}/%{name}
1021%dir %{_libdir}/%{name}/plugin
1022%attr(755,root,root) %{_libdir}/%{name}/plugin/adt_null.so
1023%attr(755,root,root) %{_libdir}/%{name}/plugin/auth.so
1024%attr(755,root,root) %{_libdir}/%{name}/plugin/auth_socket.so
1025%attr(755,root,root) %{_libdir}/%{name}/plugin/auth_test_plugin.so
1026%attr(755,root,root) %{_libdir}/%{name}/plugin/ha_archive.so
1027%attr(755,root,root) %{_libdir}/%{name}/plugin/ha_blackhole.so
1028%attr(755,root,root) %{_libdir}/%{name}/plugin/ha_federated.so
1029%attr(755,root,root) %{_libdir}/%{name}/plugin/mypluglib.so
1030%attr(755,root,root) %{_libdir}/%{name}/plugin/qa_auth_client.so
1031%attr(755,root,root) %{_libdir}/%{name}/plugin/qa_auth_interface.so
1032%attr(755,root,root) %{_libdir}/%{name}/plugin/qa_auth_server.so
1033%attr(755,root,root) %{_libdir}/%{name}/plugin/semisync_master.so
1034%attr(755,root,root) %{_libdir}/%{name}/plugin/semisync_slave.so
fa51fc20 1035%if %{with sphinx}
bfb02390 1036%attr(755,root,root) %{_libdir}/%{name}/plugin/ha_sphinx.so
fa51fc20 1037%endif
0f4ca10a 1038# for plugins
16b39b90 1039%attr(755,root,root) %{_libdir}/libmysqlservices.so
68e8a131 1040%{_mandir}/man1/innochecksum.1*
2b48022a 1041%{_mandir}/man1/my_print_defaults.1*
84628b90
AM
1042%{_mandir}/man1/myisamchk.1*
1043%{_mandir}/man1/myisamlog.1*
1044%{_mandir}/man1/myisampack.1*
c9b1588e 1045#%{_mandir}/man1/mysql_fix_privilege_tables.1*
734d6226 1046%{_mandir}/man1/mysql_plugin.1*
d0fe1bc5 1047%{_mandir}/man1/mysql_upgrade.1*
2b48022a 1048%{_mandir}/man1/mysqlcheck.1*
c3389a2d 1049%{_mandir}/man8/mysqld.8*
c486a119 1050
c27588d8
ER
1051%if %{?debug:1}0
1052%attr(755,root,root) %{_bindir}/*resolve_stack_dump
92992b51 1053%{_datadir}/%{name}/mysqld.sym
c27588d8
ER
1054%{_mandir}/man1/*resolve_stack_dump.1*
1055%endif
1056
ea2c1c6a 1057%attr(700,mysql,mysql) %{_mysqlhome}
68e8a131 1058# root:root is proper here for mysql.rpm while mysql:mysql is potential security hole
179f04ff 1059%attr(751,root,root) /var/lib/mysql
8594196c 1060%attr(750,mysql,mysql) %dir /var/log/mysql
ced65266 1061%attr(750,mysql,mysql) %dir /var/log/archive/mysql
13924afb 1062%attr(640,mysql,mysql) %ghost /var/log/mysql/*
431c9391 1063
8de1b4ed 1064%{_infodir}/mysql.info*
dbf4eb6a 1065# This is template for configuration file which is created after 'service mysql init'
92992b51
ER
1066%{_datadir}/%{name}/mysqld.conf
1067%{_datadir}/%{name}/mysql_system_tables.sql
1068%{_datadir}/%{name}/mysql_system_tables_data.sql
1069%{_datadir}/%{name}/mysql_test_data_timezone.sql
1070
1071%{_datadir}/%{name}/english
1072%{_datadir}/%{name}/fill_help_tables.sql
1073#%{_datadir}/%{name}/mysql_fix_privilege_tables.sql
1074%lang(cs) %{_datadir}/%{name}/czech
1075%lang(da) %{_datadir}/%{name}/danish
1076%lang(de) %{_datadir}/%{name}/german
1077%lang(el) %{_datadir}/%{name}/greek
1078%lang(es) %{_datadir}/%{name}/spanish
1079%lang(et) %{_datadir}/%{name}/estonian
1080%lang(fr) %{_datadir}/%{name}/french
1081%lang(hu) %{_datadir}/%{name}/hungarian
1082%lang(it) %{_datadir}/%{name}/italian
1083%lang(ja) %{_datadir}/%{name}/japanese
1084%lang(ko) %{_datadir}/%{name}/korean
1085%lang(nl) %{_datadir}/%{name}/dutch
1086%lang(nb) %{_datadir}/%{name}/norwegian
1087%lang(nn) %{_datadir}/%{name}/norwegian-ny
1088%lang(pl) %{_datadir}/%{name}/polish
1089%lang(pt) %{_datadir}/%{name}/portuguese
1090%lang(ro) %{_datadir}/%{name}/romanian
1091%lang(ru) %{_datadir}/%{name}/russian
1092%lang(sr) %{_datadir}/%{name}/serbian
1093%lang(sk) %{_datadir}/%{name}/slovak
1094%lang(sv) %{_datadir}/%{name}/swedish
1095%lang(uk) %{_datadir}/%{name}/ukrainian
b24ee098 1096
ad0a7267
JR
1097%files charsets
1098%defattr(644,root,root,755)
2539bd3a 1099%dir %{_datadir}/mysql
92992b51 1100%{_datadir}/%{name}/charsets
ad0a7267 1101
8de1b4ed 1102%files extras
1103%defattr(644,root,root,755)
f261d032 1104%attr(755,root,root) %{_bindir}/msql2mysql
8b2cbaf3 1105%attr(755,root,root) %{_bindir}/myisam_ftdump
90db0fd4 1106%attr(755,root,root) %{_bindir}/mysql_install_db
8b2cbaf3
ER
1107%attr(755,root,root) %{_bindir}/mysql_secure_installation
1108%attr(755,root,root) %{_bindir}/mysql_tzinfo_to_sql
b94ecc67
JB
1109%attr(755,root,root) %{_bindir}/perror
1110%attr(755,root,root) %{_bindir}/replace
90db0fd4 1111%attr(755,root,root) %{_bindir}/resolveip
b94ecc67 1112%{_mandir}/man1/msql2mysql.1*
9787b388 1113%{_mandir}/man1/myisam_ftdump.1*
90db0fd4 1114%{_mandir}/man1/mysql_install_db.1*
68e8a131 1115%{_mandir}/man1/mysql_secure_installation.1*
77cbc8ff 1116%{_mandir}/man1/mysql_tzinfo_to_sql.1*
e474e322 1117%{_mandir}/man1/perror.1*
1118%{_mandir}/man1/replace.1*
90db0fd4 1119%{_mandir}/man1/resolveip.1*
8de1b4ed 1120
17299970
ER
1121%files -n mysqlhotcopy
1122%defattr(644,root,root,755)
1123%attr(755,root,root) %{_bindir}/mysqlhotcopy
1124%{_mandir}/man1/mysqlhotcopy.1*
1125
8afdedd4 1126%files extras-perl
1127%defattr(644,root,root,755)
8594196c 1128%attr(755,root,root) %{_bindir}/mysql_convert_table_format
8afdedd4 1129%attr(755,root,root) %{_bindir}/mysql_find_rows
8b2cbaf3 1130%attr(755,root,root) %{_bindir}/mysql_fix_extensions
b894e3d4 1131%attr(755,root,root) %{_bindir}/mysql_setpermission
b894e3d4 1132%attr(755,root,root) %{_bindir}/mysql_zap
2b48022a
ER
1133%attr(755,root,root) %{_bindir}/mysqlaccess
1134%attr(755,root,root) %{_bindir}/mysqldumpslow
68e8a131 1135%{_mandir}/man1/mysql_convert_table_format.1*
ffda6e55 1136%{_mandir}/man1/mysql_find_rows.1*
68e8a131 1137%{_mandir}/man1/mysql_fix_extensions.1*
68e8a131
ER
1138%{_mandir}/man1/mysql_setpermission.1*
1139%{_mandir}/man1/mysql_zap.1*
2b48022a 1140%{_mandir}/man1/mysqlaccess.1*
08472466 1141%{_mandir}/man1/mysqldumpslow.1*
8afdedd4 1142
ceb5ca86 1143%files client
75eb20a9 1144%defattr(644,root,root,755)
978cdac2 1145%attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/skel/.my.cnf
01dea3d5 1146%attr(755,root,root) %{_bindir}/mysql
9cc19375
AM
1147%attr(755,root,root) %{_bindir}/mysqladmin
1148%attr(755,root,root) %{_bindir}/mysqlbinlog
065b78b5 1149%attr(755,root,root) %{_bindir}/mysqlbug
01dea3d5 1150%attr(755,root,root) %{_bindir}/mysqldump
1151%attr(755,root,root) %{_bindir}/mysqlimport
1152%attr(755,root,root) %{_bindir}/mysqlshow
75eb20a9 1153%{_mandir}/man1/mysql.1*
e474e322 1154%{_mandir}/man1/mysqladmin.1*
84628b90 1155%{_mandir}/man1/mysqlbinlog.1*
512d8da1 1156%{_mandir}/man1/mysqlbug.1*
9cc19375 1157%{_mandir}/man1/mysqldump.1*
84628b90 1158%{_mandir}/man1/mysqlimport.1*
9cc19375 1159%{_mandir}/man1/mysqlshow.1*
b24ee098 1160
3fe2f194 1161%files libs
75eb20a9 1162%defattr(644,root,root,755)
2b48022a 1163%attr(751,root,root) %dir %{_sysconfdir}/mysql
92992b51 1164%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/mysql-client.conf
3b9f87c2 1165%attr(755,root,root) %{_libdir}/libmysqlclient.so.*.*.*
df1b5770 1166%attr(755,root,root) %ghost %{_libdir}/libmysqlclient.so.18
3b9f87c2 1167%attr(755,root,root) %{_libdir}/libmysqlclient_r.so.*.*.*
df1b5770 1168%attr(755,root,root) %ghost %{_libdir}/libmysqlclient_r.so.18
08472466 1169%if %{with ndb}
3b9f87c2 1170%attr(755,root,root) %{_libdir}/libndbclient.so.*.*.*
bd1c7139 1171%attr(755,root,root) %ghost %{_libdir}/libndbclient.so.3
08472466 1172%endif
b24ee098 1173
ceb5ca86 1174%files devel
3fe2f194 1175%defattr(644,root,root,755)
bbc0ff50 1176%attr(755,root,root) %{_bindir}/mysql_config
3b9f87c2
JB
1177%attr(755,root,root) %{_libdir}/libmysqlclient.so
1178%attr(755,root,root) %{_libdir}/libmysqlclient_r.so
08472466 1179%if %{with ndb}
3b9f87c2 1180%attr(755,root,root) %{_libdir}/libndbclient.so
08472466 1181%endif
3fe2f194 1182%{_includedir}/mysql
68e8a131 1183%{_aclocaldir}/mysql.m4
84628b90 1184%{_mandir}/man1/mysql_config.1*
3fe2f194 1185
1186%files static
75eb20a9 1187%defattr(644,root,root,755)
3b9f87c2
JB
1188%{_libdir}/libmysqlclient.a
1189%{_libdir}/libmysqlclient_r.a
08472466 1190%if %{with ndb}
3b9f87c2 1191%{_libdir}/libndbclient.a
08472466 1192%endif
ceb5ca86 1193
d1e91a2d
AM
1194%files bench
1195%defattr(644,root,root,755)
8ce69d92 1196%attr(755,root,root) %{_bindir}/mysqlslap
d1e91a2d
AM
1197%attr(755,root,root) %{_bindir}/mysqltest
1198%dir %{_datadir}/sql-bench
1199%{_datadir}/sql-bench/[CDRl]*
1200%attr(755,root,root) %{_datadir}/sql-bench/[bcgirst]*
8ce69d92 1201%{_mandir}/man1/mysqlslap.1*
ffda6e55
ER
1202%{_mandir}/man1/mysqltest.1*
1203%{_mandir}/man1/mysqltest_embedded.1*
d1e91a2d 1204
be07ff22
AM
1205#%files doc
1206#%defattr(644,root,root,755)
1207#%doc Docs/manual.html Docs/manual_toc.html
d1e91a2d 1208
08472466 1209%if %{with ndb}
d72472ee
AM
1210%files ndb
1211%defattr(644,root,root,755)
1212%attr(755,root,root) %{_sbindir}/ndbd
1213%attr(754,root,root) /etc/rc.d/init.d/mysql-ndb
8cdaa5ca 1214%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/mysql-ndb
ffda6e55 1215%{_mandir}/man1/ndbd_redo_log_reader.1*
210f47d4 1216%{_mandir}/man8/ndbd.8*
d72472ee
AM
1217
1218%files ndb-client
1219%defattr(644,root,root,755)
e56168f2
ER
1220%attr(755,root,root) %{_bindir}/ndb_config
1221%attr(755,root,root) %{_bindir}/ndb_delete_all
1222%attr(755,root,root) %{_bindir}/ndb_desc
1223%attr(755,root,root) %{_bindir}/ndb_drop_index
1224%attr(755,root,root) %{_bindir}/ndb_drop_table
1225%attr(755,root,root) %{_bindir}/ndb_error_reporter
1226%attr(755,root,root) %{_bindir}/ndb_mgm
1227%attr(755,root,root) %{_bindir}/ndb_print_backup_file
1228%attr(755,root,root) %{_bindir}/ndb_print_schema_file
1229%attr(755,root,root) %{_bindir}/ndb_print_sys_file
1230%attr(755,root,root) %{_bindir}/ndb_restore
1231%attr(755,root,root) %{_bindir}/ndb_select_all
1232%attr(755,root,root) %{_bindir}/ndb_select_count
1233%attr(755,root,root) %{_bindir}/ndb_show_tables
1234%attr(755,root,root) %{_bindir}/ndb_size.pl
1235%attr(755,root,root) %{_bindir}/ndb_test_platform
1236%attr(755,root,root) %{_bindir}/ndb_waiter
e56168f2
ER
1237%{_mandir}/man1/ndb_config.1*
1238%{_mandir}/man1/ndb_delete_all.1*
1239%{_mandir}/man1/ndb_desc.1*
68e8a131
ER
1240%{_mandir}/man1/ndb_drop_index.1*
1241%{_mandir}/man1/ndb_drop_table.1*
1242%{_mandir}/man1/ndb_error_reporter.1*
1243%{_mandir}/man1/ndb_mgm.1*
1244%{_mandir}/man1/ndb_print_backup_file.1*
1245%{_mandir}/man1/ndb_print_schema_file.1*
1246%{_mandir}/man1/ndb_print_sys_file.1*
1247%{_mandir}/man1/ndb_restore.1*
1248%{_mandir}/man1/ndb_select_all.1*
1249%{_mandir}/man1/ndb_select_count.1*
1250%{_mandir}/man1/ndb_show_tables.1*
e56168f2 1251%{_mandir}/man1/ndb_size.pl.1*
68e8a131 1252%{_mandir}/man1/ndb_waiter.1*
d72472ee
AM
1253
1254%files ndb-mgm
1255%defattr(644,root,root,755)
1256%attr(755,root,root) %{_sbindir}/ndb_mgmd
1257%attr(754,root,root) /etc/rc.d/init.d/mysql-ndb-mgm
8cdaa5ca 1258%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/mysql-ndb-mgm
210f47d4 1259%{_mandir}/man8/ndb_mgmd.8*
d72472ee 1260
d72472ee
AM
1261%files ndb-cpc
1262%defattr(644,root,root,755)
1263%attr(755,root,root) %{_sbindir}/ndb_cpcd
1264%attr(754,root,root) /etc/rc.d/init.d/mysql-ndb-cpc
8cdaa5ca 1265%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/mysql-ndb-cpc
68e8a131 1266%{_mandir}/man1/ndb_cpcd.1*
08472466 1267%endif
This page took 3.060283 seconds and 4 git commands to generate.