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