]> git.pld-linux.org Git - packages/mysql.git/blob - mysql.spec
- release 12
[packages/mysql.git] / mysql.spec
1 %include        /usr/lib/rpm/macros.perl
2 %define         __find_requires %{_builddir}/mysql-%{version}/find-perl-requires
3 Summary:        MySQL: a very fast and reliable SQL database engine
4 Summary(fr):    MySQL: un serveur SQL rapide et fiable
5 Summary(pl):    MySQL: bardzo szybka i niezawodna baza danych (SQL)
6 Summary(pt):    MySQL: Um servidor SQL rápido e confiável
7 Name:           mysql
8 Group:          Applications/Databases
9 Group(pl):      Aplikacje/Bazy danych
10 Group(pt):      Aplicações/Banco_de_Dados
11 Version:        3.22.32
12 Release:        12
13 License:        MySQL FREE PUBLIC LICENSE (See the manual)
14 Source0:        http://www.mysql.com/Downloads/MySQL-3.22/%{name}-%{version}.tar.gz
15 Source1:        %{name}.init
16 Source2:        %{name}.sysconfig
17 Source3:        %{name}.logrotate
18 Source4:        %{name}d.conf
19 Patch0:         %{name}-info.patch
20 Patch1:         %{name}-no_libbind.patch
21 Patch2:         %{name}-perldep.patch
22 Patch3:         %{name}-gethostbyname_r_is_in_libc_aka_no_libnsl.patch
23 Patch4:         %{name}-opt.patch
24 Icon:           mysql.gif
25 URL:            http://www.mysql.com/
26 Requires:       %{name}-libs = %{version}
27 BuildRequires:  libstdc++-devel
28 BuildRequires:  zlib-devel
29 BuildRequires:  ncurses-devel
30 BuildRequires:  readline-devel
31 BuildRequires:  texinfo
32 BuildRequires:  rpm-perlprov
33 Requires:       rc-scripts >= 0.2.0
34 Prereq:         shadow
35 Provides:       msqlormysql MySQL-server
36 Obsoletes:      MySQL
37 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
38
39 %define         _libexecdir     %{_sbindir}
40 %define         _localstatedir  /var/lib/mysql
41
42 %description
43 MySQL is a true multi-user, multi-threaded SQL (Structured Query
44 Language) database server. SQL is the most popular database language
45 in the world. MySQL is a client/server implementation that consists of
46 a server daemon mysqld and many different client programs/libraries.
47
48 The main goals of MySQL are speed, robustness and easy to use. MySQL
49 was originally developed because we at Tcx needed a SQL server that
50 could handle very big databases with magnitude higher speed than what
51 any database vendor could offer to us. We have now been using MySQL
52 since 1996 in a environment with more than 40 databases, 10,000
53 tables, of which more than 500 have more than 7 million rows. This is
54 about 50G of mission critical data.
55
56 The base upon which MySQL is built is a set of routines that have been
57 used in a highly demanding production environment for many years.
58 While MySQL is still in development, it already offers a rich and
59 highly useful function set.
60
61 %description -l fr
62 MySQL est un serveur de bases de donnees SQL vraiment multi-usagers et
63 multi-taches. Le langage SQL est le langage de bases de donnees le
64 plus populaire au monde. MySQL est une implementation client/serveur
65 qui consiste en un serveur (mysqld) et differents
66 programmes/bibliotheques clientes.
67
68 Les objectifs principaux de MySQL sont: vitesse, robustesse et
69 facilite d'utilisation. MySQL fut originalement developpe parce que
70 nous, chez Tcx, avions besoin d'un serveur SQL qui pouvait gerer de
71 tres grandes bases de donnees avec une vitesse d'un ordre de magnitude
72 superieur a ce que n'importe quel vendeur pouvait nous offrir. Nous
73 utilisons MySQL depuis 1996 dans un environnement avec plus de 40
74 bases de donnees, 10000 tables, desquelles plus de 500 ont plus de 7
75 millions de lignes. Ceci represente environ 50G de donnees critiques.
76
77 A la base de la conception de MySQL, on retrouve une serie de routines
78 qui ont ete utilisees dans un environnement de production pendant
79 plusieurs annees. Meme si MySQL est encore en developpement, il offre
80 deja une riche et utile serie de fonctions.
81
82 %description -l pl
83 MySQL to wielow±tkowy serwer baz danych SQL.
84
85 G³ówne zalety MySQL to szybko¶æ, potêga i ³atwo¶æ u¿ytkowania. MySQL
86 jest wykorzystywany m.in. do obs³ugi 40 baz danych, 10 000 tabeli,
87 gdzie ka¿da tabela zawiera 7 milionów pozycji. To ok 50GB danych.
88
89 %description -l pt_BR
90 O MySQL é um servidor de banco de dados SQL realmente multiusuário e
91 multi-tarefa. A linguagem SQL é a mais popular linguagem para banco de
92 dados no mundo. O MySQL é uma implementação cliente/servidor que
93 consiste de um servidor chamado mysqld e diversos
94 programas/bibliotecas clientes. Os principais objetivos do MySQL são:
95 velocidade, robustez e facilidade de uso. O MySQL foi originalmente
96 desenvolvido porque nós na Tcx precisávamos de um servidor SQL que
97 pudesse lidar com grandes bases de dados e com uma velocidade muito
98 maior do que a que qualquer vendedor podia nos oferecer. Estamos
99 usando o MySQL desde 1996 em um ambiente com mais de 40 bases de dados
100 com 10.000 tabelas, das quais mais de 500 têm mais de 7 milhões de
101 linhas. Isto é o equivalente a aproximadamente 50G de dados críticos.
102 A base da construção do MySQL é uma série de rotinas que foram usadas
103 em um ambiente de produção com alta demanda por muitos anos. Mesmo o
104 MySQL estando ainda em desenvolvimento, ele já oferece um conjunto de
105 funções muito ricas e úteis. Veja a documentação para maiores
106 informações.
107
108 %package extras
109 Summary:        MySQL additional utilities 
110 Group:          Applications/Databases
111 Group(pl):      Aplikacje/Bazy danych
112 Group(pt):      Aplicações/Banco_de_Dados
113 Requires:       %{name}-libs = %{version}
114
115 %description extras
116 MySQL additional utilities except Perl scripts (they may be found in
117 %{name}-extras-perl package)
118
119 %package extras-perl
120 Summary:        MySQL additional utilities written in Perl
121 Group:          Applications/Databases
122 Group(pl):      Aplikacje/Bazy danych
123 Group(pt):      Aplicações/Banco_de_Dados
124 Requires:       %{name}-extras = %{version}
125
126 %description extras-perl
127 MySQL additional utilities written in Perl.
128
129 %package client
130 Summary:        MySQL - Client
131 Summary(pl):    MySQL - Klient
132 Summary(pt):    MySQL - Cliente
133 Group:          Applications/Databases
134 Group(pl):      Aplikacje/Bazy danych
135 Group(pt):      Aplicações/Banco_de_Dados
136 Requires:       %{name}-libs = %{version}
137 Obsoletes:      MySQL-client
138
139 %description client
140 This package contains the standard MySQL clients.
141
142 %description -l fr client
143 Ce package contient les clients MySQL standards.
144
145 %description -l pl client
146 Standardowe programy klienckie MySQL.
147
148 %description -l pt_BR client
149 Este pacote contém os clientes padrão para o MySQL.
150
151 %package libs
152 Summary:        Shared libraries for MySQL
153 Group:          Applications/Databases
154 Group(pl):      Aplikacje/Bazy danych
155
156 %description libs
157 Shared libraries for MySQL.
158
159 %package devel
160 Summary:        MySQL - Development header files and libraries
161 Summary(pl):    MySQL - Pliki nag³ówkowe i biblioteki dla programistów
162 Summary(pt):    MySQL - Medições de desempenho
163 Group:          Development/Libraries
164 Group(de):      Entwicklung/Libraries
165 Group(fr):      Development/Librairies
166 Group(pl):      Programowanie/Biblioteki
167 Requires:       %{name}-libs = %{version}
168 Obsoletes:      MySQL-devel
169
170 %description devel
171 This package contains the development header files and libraries
172 necessary to develop MySQL client applications.
173
174 %description -l pl devel
175 Pliki nag³ówkowe i biblioteki konieczne do kompilacji aplikacji
176 klienckich MySQL.
177
178 %description devel -l pt_BR
179 Este pacote contém os arquivos de cabeçalho (header files) e
180 bibliotecas necessárias para desenvolver aplicações clientes do MySQL.
181
182 %description -l fr devel
183 Ce package contient les fichiers entetes et les librairies de
184 developpement necessaires pour developper des applications clientes
185 MySQL.
186
187 %package static
188 Summary:        MySQL staic libraris
189 Summary(pl):    Biblioteki statyczne MySQL
190 Group:          Development/Libraries
191 Group(de):      Entwicklung/Libraries
192 Group(fr):      Development/Librairies
193 Group(pl):      Programowanie/Biblioteki
194 Requires:       %{name}-devel = %{version}
195 Obsoletes:      MySQL-static
196
197 %description static
198 MySQL staic libraris.
199
200 %description -l pl static
201 Biblioteki statyczne MySQL.
202
203 %package bench
204 Summary:        MySQL - Benchmarks
205 Summary(pl):    mySQL - Programy testuj±ce szybko¶æ dzia³ania bazy
206 Summary(pt):    MySQL - Medições de desempenho
207 Group:          Applications/Databases
208 Group(pl):      Aplikacje/Bazy danych
209 Group(pt):      Aplicações/Banco_de_Dados
210 Requires:       %{name} = %{version}
211 Requires:       %{name}-client
212 Obsoletes:      MySQL-bench
213
214 %description bench
215 This package contains MySQL benchmark scripts and data.
216
217 %description -l pl bench
218 Programy testuj±ce szybko¶æ serwera MySQL.
219
220 %description -l pt_BR bench
221 Este pacote contém medições de desempenho de scripts e dados do MySQL.
222
223 %prep
224 %setup  -q
225 %patch0 -p1
226 %patch1 -p1
227 %patch2 -p1
228 %patch3 -p1
229 %patch4 -p1
230
231 chmod +x find-perl-requires
232
233 %build
234 automake
235 aclocal
236 autoconf
237 CXXFLAGS="%{?debug:-O -g}%{!?debug:$RPM_OPT_FLAGS} -fno-rtti -fno-exceptions"
238 %configure \
239         --without-debug \
240         --enable-shared \
241         --enable-static \
242         --with-pthread \
243         --with-named-curses-libs="-lncurses" \
244         --enable-assembler \
245         --with-charset=latin2 \
246         --with-mysqld-user=mysql \
247         --with-unix-socket-path=/var/lib/mysql/mysql.sock \
248         --with-comment='Polish Linux Distribution MySQL RPM' \
249         --without-readline \
250         --with-low-memory
251
252 %{__make} benchdir=$RPM_BUILD_ROOT%{_datadir}/sql-bench
253 (cd Docs; make info manual.texi)
254
255 %install
256 rm -rf $RPM_BUILD_ROOT
257 install -d $RPM_BUILD_ROOT%{_sysconfdir}/{logrotate.d,rc.d/init.d,sysconfig} \
258         $RPM_BUILD_ROOT/var/{log/{archiv,}/mysql,lib/mysql}
259
260 # Make install
261 %{__make} install DESTDIR=$RPM_BUILD_ROOT benchdir=%{_datadir}/sql-bench
262
263 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/mysql
264 install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/mysql
265 install %{SOURCE3} $RPM_BUILD_ROOT/etc/logrotate.d/mysql
266 install %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/mysqld.conf
267 touch $RPM_BUILD_ROOT/var/log/mysql/{err,log,update,isamlog}
268
269 find Docs -type f ! -name \*.gif ! -name \*.html -exec rm -f {} \;
270 find . -name ./CVS -exec rm -rf {} \;
271 # remove mysqld's *.po files
272 find . $RPM_BUILD_ROOT%{_datadir}/mysql -name \*.txt | xargs -n 100 rm -f
273
274 mv -f $RPM_BUILD_ROOT%{_libdir}/mysql/lib* $RPM_BUILD_ROOT%{_libdir}
275
276 %pre
277 if [ -n "`getgid mysql`" ]; then
278         if [ "`getgid mysql`" != "89" ]; then
279                 echo "Warning:group mysql haven't gid=89. Corect this before install mysql" 1>&2
280                 exit 1
281         fi
282 else
283         /usr/sbin/groupadd -g 89 -r -f mysql
284 fi
285 if [ -n "`id -u mysql 2>/dev/null`" ]; then
286         if [ "`id -u mysql`" != "89" ]; then
287                 echo "Warning:user mysql haven't uid=89. Corect this before install mysql" 1>&2
288                 exit 1
289         fi
290 else
291         /usr/sbin/useradd -u 89 -r -d /var/lib/mysql -s /bin/false -c "MySQL User" -g mysql mysql 1>&2
292 fi
293
294 %post
295 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
296 /sbin/chkconfig --add mysql
297 if [ -f /var/lock/subsys/mysql ]; then
298         /etc/rc.d/init.d/mysql restart >&2
299 else
300         echo "Run \"/etc/rc.d/init.d/mysql start\" to start mysql." >&2
301 fi
302
303 %preun
304 if [ "$1" = "0" ]; then
305         if [ -f /var/lock/subsys/mysql ]; then
306                 /etc/rc.d/init.d/mysql stop
307         fi
308         /sbin/chkconfig --del mysql
309 fi
310
311 %postun
312 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
313 if [ "$1" = "0" ]; then
314         /usr/sbin/userdel mysql
315         /usr/sbin/groupdel mysql
316 fi
317
318 %post   libs -p /sbin/ldconfig
319 %postun libs -p /sbin/ldconfig
320
321 %clean
322 rm -rf $RPM_BUILD_ROOT
323
324 %files
325 %defattr(644,root,root,755)
326 %attr(640,root,root) %config(noreplace) %verify(not md5 size mtime) /etc/logrotate.d/mysql
327 %attr(754,root,root) /etc/rc.d/init.d/mysql
328 %attr(640,root,root) %config(noreplace) %verify(not md5 size mtime) /etc/sysconfig/mysql
329 %attr(640,root,root) %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/mysqld.conf
330 %attr(755,root,root) %{_bindir}/isamchk
331 %attr(755,root,root) %{_bindir}/isamlog
332 %attr(755,root,root) %{_bindir}/mysqladmin
333 %attr(755,root,root) %{_bindir}/mysqlbug
334 %attr(755,root,root) %{_sbindir}/mysqld
335
336 %attr(771,root,mysql) %dir /var/lib/mysql
337 %attr(770,root,mysql) %dir /var/log/mysql
338 %attr(770,root,mysql) %dir /var/log/archiv/mysql
339 %attr(640,mysql,mysql) %config(noreplace) %verify(not md5 size mtime) /var/log/mysql/*
340
341 %{_infodir}/mysql.info*
342 %dir %{_datadir}/mysql
343 %{_datadir}/mysql/english
344 %lang(cs) %{_datadir}/mysql/czech
345 %lang(da) %{_datadir}/mysql/danish
346 %lang(nl) %{_datadir}/mysql/dutch
347 %lang(et) %{_datadir}/mysql/estonia
348 %lang(fr) %{_datadir}/mysql/french
349 %lang(de) %{_datadir}/mysql/german
350 %lang(el) %{_datadir}/mysql/greek
351 %lang(hu) %{_datadir}/mysql/hungarian
352 %lang(it) %{_datadir}/mysql/italian
353 %lang(ja) %{_datadir}/mysql/japanese
354 %lang(ko) %{_datadir}/mysql/korean
355 %lang(no) %{_datadir}/mysql/norwegian
356 %lang(no@nynorsk) %{_datadir}/mysql/norwegian-ny
357 %lang(pl) %{_datadir}/mysql/polish
358 %lang(pt) %{_datadir}/mysql/portuguese
359 %lang(ru) %{_datadir}/mysql/russian
360 %lang(sk) %{_datadir}/mysql/slovak
361 %lang(es) %{_datadir}/mysql/spanish
362 %lang(sv) %{_datadir}/mysql/swedish
363
364 %files extras
365 %defattr(644,root,root,755)
366 %attr(755,root,root) %{_bindir}/msql2mysql
367 %attr(755,root,root) %{_bindir}/mysql_fix_privilege_tables
368 %attr(755,root,root) %{_bindir}/perror
369 %attr(755,root,root) %{_bindir}/print_defaults
370 %attr(755,root,root) %{_bindir}/replace
371 %attr(755,root,root) %{_bindir}/resolveip
372
373 %files extras-perl
374 %defattr(644,root,root,755)
375 %attr(755,root,root) %{_bindir}/mysql_setpermission
376 %attr(755,root,root) %{_bindir}/mysql_zap
377 %attr(755,root,root) %{_bindir}/mysql_find_rows
378 %attr(755,root,root) %{_bindir}/mysqlaccess
379
380 %files client
381 %defattr(644,root,root,755)
382 %attr(755,root,root) %{_bindir}/mysql
383 %attr(755,root,root) %{_bindir}/mysqlbug
384 %attr(755,root,root) %{_bindir}/mysqldump
385 %attr(755,root,root) %{_bindir}/mysqlimport
386 %attr(755,root,root) %{_bindir}/mysqlshow
387 %{_mandir}/man1/mysql.1*
388
389 %files libs
390 %defattr(644,root,root,755)
391 %attr(755,root,root) %{_libdir}/lib*.so.*.*
392
393 %files devel
394 %defattr(644,root,root,755)
395 %attr(755,root,root) %{_libdir}/lib*.la
396 %attr(755,root,root) %{_libdir}/lib*.so
397 %{_includedir}/mysql
398
399 %files static
400 %defattr(644,root,root,755)
401 %{_libdir}/lib*.a
402
403 %files bench
404 %defattr(644,root,root,755)
405 %attr(-,root,root) %{_datadir}/sql-bench
This page took 0.060438 seconds and 4 git commands to generate.