]> git.pld-linux.org Git - packages/mysql.git/blob - mysql.spec
- main package does not require -libs
[packages/mysql.git] / mysql.spec
1 # TODO:
2 # - trigger that prepares system from pre-cluster into cluster
3 # - trigger /etc/mysqld.conf into /etc/mysql/mysqld.conf. Solve possible
4 #   conflict with /var/lib/mysql/mysqld.conf
5 # - what's the libwrapper constistent name, i see in specs 'libwrap', 'tcpd', 'tcp_wrappers'
6 #
7 # Conditional build:
8 %bcond_with     bdb     # Berkeley DB support
9 %bcond_without  innodb  # Without InnoDB support
10 %bcond_without  isam    # Without ISAM table format (used in mysql 3.22)
11 %bcond_without  raid    # Without raid
12 %bcond_without  ssl     # Without OpenSSL
13 %bcond_without  tcpd    # Without libwrap (tcp_wrappers) support
14 #
15 %include        /usr/lib/rpm/macros.perl
16 Summary:        MySQL: a very fast and reliable SQL database engine
17 Summary(fr):    MySQL: un serveur SQL rapide et fiable
18 Summary(pl):    MySQL: bardzo szybka i niezawodna baza danych (SQL)
19 Summary(pt_BR): MySQL: Um servidor SQL rápido e confiável
20 Summary(ru):    MySQL - ÂÙÓÔÒÙÊ SQL-ÓÅÒ×ÅÒ
21 Summary(uk):    MySQL - Û×ÉÄËÉÊ SQL-ÓÅÒ×ÅÒ
22 Summary(zh_CN): MySQLÊý¾Ý¿â·þÎñÆ÷
23 Name:           mysql
24 Group:          Applications/Databases
25 Version:        4.0.26
26 Release:        1
27 License:        GPL + MySQL FLOSS Exception
28 Source0:        http://sunsite.icm.edu.pl/mysql/Downloads/MySQL-4.0/%{name}-%{version}.tar.gz
29 # Source0-md5:  4e2060a3875470e0d853391e8647a019
30 Source1:        %{name}.init
31 Source2:        %{name}.sysconfig
32 Source3:        %{name}.logrotate
33 Source4:        %{name}d.conf
34 Source5:        %{name}-clusters.conf
35 Source6:        %{name}.monitrc
36 Patch0:         %{name}-libs.patch
37 Patch1:         %{name}-libwrap.patch
38 Patch2:         %{name}-c++.patch
39 Patch3:         %{name}-_r-link.patch
40 Patch4:         %{name}-info.patch
41 Patch5:         %{name}-sql-cxx-pic.patch
42 Patch6:         %{name}-noproc.patch
43 Patch7:         %{name}-fix_privilege_tables.patch
44 Patch8:         %{name}-nptl.patch
45 Icon:           mysql.gif
46 URL:            http://www.mysql.com/
47 BuildRequires:  /bin/ps
48 #BuildRequires: ORBit-devel
49 BuildRequires:  autoconf
50 BuildRequires:  automake
51 %{?with_bdb:BuildRequires:      db3-devel}
52 BuildRequires:  libstdc++-devel >= 5:3.0
53 BuildRequires:  libtool
54 %{?with_tcpd:BuildRequires:     libwrap-devel}
55 BuildRequires:  ncurses-devel >= 4.2
56 %{?with_ssl:BuildRequires:      openssl-devel >= 0.9.7d}
57 BuildRequires:  perl-DBI
58 BuildRequires:  perl-devel >= 1:5.6.1
59 BuildRequires:  readline-devel >= 4.2
60 BuildRequires:  rpm-perlprov >= 4.1-13
61 BuildRequires:  rpmbuild(macros) >= 1.159
62 BuildRequires:  texinfo
63 BuildRequires:  zlib-devel
64 Requires(post,preun):   /sbin/chkconfig
65 Requires(postun):       /usr/sbin/groupdel
66 Requires(postun):       /usr/sbin/userdel
67 Requires(pre):  /bin/id
68 Requires(pre):  /usr/bin/getgid
69 Requires(pre):  /usr/sbin/groupadd
70 Requires(pre):  /usr/sbin/useradd
71 Requires:       /usr/bin/setsid
72 Requires:       rc-scripts >= 0.2.0
73 Provides:       MySQL-server
74 Provides:       group(mysql)
75 Provides:       msqlormysql
76 Provides:       user(mysql)
77 Obsoletes:      MySQL
78 Obsoletes:      mysql-server
79 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
80
81 %define         _sysconfdir     /etc/%{name}
82 %define         _libexecdir     %{_sbindir}
83 %define         _localstatedir  /var/lib/mysql
84 %define         _mysqlhome      /home/services/mysql
85
86 %define         _noautoreqdep   'perl(DBD::mysql)'
87 # workaround for buggy gcc 3.3.1
88 %define         specflags_alpha  -mno-explicit-relocs
89
90 %description
91 MySQL is a true multi-user, multi-threaded SQL (Structured Query
92 Language) database server. SQL is the most popular database language
93 in the world. MySQL is a client/server implementation that consists of
94 a server daemon mysqld and many different client programs/libraries.
95
96 The main goals of MySQL are speed, robustness and easy to use. MySQL
97 was originally developed because we at Tcx needed a SQL server that
98 could handle very big databases with magnitude higher speed than what
99 any database vendor could offer to us. We have now been using MySQL
100 since 1996 in a environment with more than 40 databases, 10,000
101 tables, of which more than 500 have more than 7 million rows. This is
102 about 50G of mission critical data.
103
104 The base upon which MySQL is built is a set of routines that have been
105 used in a highly demanding production environment for many years.
106 While MySQL is still in development, it already offers a rich and
107 highly useful function set.
108
109 %description -l fr
110 MySQL est un serveur de bases de donnees SQL vraiment multi-usagers et
111 multi-taches. Le langage SQL est le langage de bases de donnees le
112 plus populaire au monde. MySQL est une implementation client/serveur
113 qui consiste en un serveur (mysqld) et differents
114 programmes/bibliotheques clientes.
115
116 Les objectifs principaux de MySQL sont: vitesse, robustesse et
117 facilite d'utilisation. MySQL fut originalement developpe parce que
118 nous, chez Tcx, avions besoin d'un serveur SQL qui pouvait gerer de
119 tres grandes bases de donnees avec une vitesse d'un ordre de magnitude
120 superieur a ce que n'importe quel vendeur pouvait nous offrir. Nous
121 utilisons MySQL depuis 1996 dans un environnement avec plus de 40
122 bases de donnees, 10000 tables, desquelles plus de 500 ont plus de 7
123 millions de lignes. Ceci represente environ 50G de donnees critiques.
124
125 A la base de la conception de MySQL, on retrouve une serie de routines
126 qui ont ete utilisees dans un environnement de production pendant
127 plusieurs annees. Meme si MySQL est encore en developpement, il offre
128 deja une riche et utile serie de fonctions.
129
130 %description -l pl
131 MySQL to prawdziwie wielou¿ytkownikowy, wielow±tkowy serwer baz danych
132 SQL. SQL jest najpopularniejszym na ¶wiecie jêzykiem u¿ywanym do baz
133 danych. MySQL to implementacja klient/serwer sk³adaj±ca siê z demona
134 mysqld i wielu ró¿nych programów i bibliotek klienckich.
135
136 G³ównymi celami MySQL-a s± szybko¶æ, potêga i ³atwo¶æ u¿ytkowania.
137 MySQL oryginalnie by³ tworzony, poniewa¿ autorzy w Tcx potrzebowali
138 serwera SQL do obs³ugi bardzo du¿ych baz danych z szybko¶ci± o wiele
139 wiêksz±, ni¿ mogli zaoferowaæ inni producenci baz danych. U¿ywaj± go
140 od 1996 roku w ¶rodowisku z ponad 40 bazami danych, 10 000 tabel, z
141 których ponad 500 zawiera ponad 7 milionów rekordów - w sumie oko³o
142 50GB krytycznych danych.
143
144 Baza, na której oparty jest MySQL, sk³ada siê ze zbioru procedur,
145 które by³y u¿ywane w bardzo wymagaj±cym ¶rodowisku produkcyjnym przez
146 wiele lat. Pomimo, ¿e MySQL jest ci±gle rozwijany, ju¿ oferuje bogaty
147 i u¿yteczny zbiór funkcji.
148
149 %description -l pt_BR
150 O MySQL é um servidor de banco de dados SQL realmente multiusuário e
151 multi-tarefa. A linguagem SQL é a mais popular linguagem para banco de
152 dados no mundo. O MySQL é uma implementação cliente/servidor que
153 consiste de um servidor chamado mysqld e diversos
154 programas/bibliotecas clientes. Os principais objetivos do MySQL são:
155 velocidade, robustez e facilidade de uso. O MySQL foi originalmente
156 desenvolvido porque nós na Tcx precisávamos de um servidor SQL que
157 pudesse lidar com grandes bases de dados e com uma velocidade muito
158 maior do que a que qualquer vendedor podia nos oferecer. Estamos
159 usando o MySQL desde 1996 em um ambiente com mais de 40 bases de dados
160 com 10.000 tabelas, das quais mais de 500 têm mais de 7 milhões de
161 linhas. Isto é o equivalente a aproximadamente 50G de dados críticos.
162 A base da construção do MySQL é uma série de rotinas que foram usadas
163 em um ambiente de produção com alta demanda por muitos anos. Mesmo o
164 MySQL estando ainda em desenvolvimento, ele já oferece um conjunto de
165 funções muito ricas e úteis. Veja a documentação para maiores
166 informações.
167
168 %description -l ru
169 MySQL - ÜÔÏ SQL (Structured Query Language) ÓÅÒ×ÅÒ ÂÁÚÙ ÄÁÎÎÙÈ. MySQL
170 ÂÙÌÁ ÎÁÐÉÓÁÎÁ Michael'ÏÍ (monty) Widenius'ÏÍ. óÍ. ÆÁÊÌ CREDITS ×
171 ÄÉÓÔÒÉÂÕÔÉ×Å ÎÁ ÐÒÅÄÍÅÔ ÄÒÕÇÉÈ ÕÞÁÓÔÎÉËÏ× ÐÒÏÅËÔÁ É ÐÒÏÞÅÊ ÉÎÆÏÒÍÁÃÉÉ
172 Ï MySQL.
173
174 %description -l uk
175 MySQL - ÃÅ SQL (Structured Query Language) ÓÅÒ×ÅÒ ÂÁÚÉ ÄÁÎÉÈ. MySQL
176 ÂÕÌÏ ÎÁÐÉÓÁÎÏ Michael'ÏÍ (monty) Widenius'ÏÍ. äÉ×. ÆÁÊÌ CREDITS ×
177 ÄÉÓÔÒÉÂÕÔÉצ ÄÌÑ ¦ÎÆÏÒÍÁ槠ÐÒÏ ¦ÎÛÉÈ ÕÞÁÓÎÉ˦נÐÒÏÅËÔÕ ÔÁ ¦ÎÛϧ
178 ¦ÎÆÏÒÍÁæ§.
179
180 %package extras
181 Summary:        MySQL additional utilities
182 Summary(pl):    Dodatkowe narzêdzia do MySQL
183 Group:          Applications/Databases
184 Requires:       %{name}-libs = %{version}-%{release}
185
186 %description extras
187 MySQL additional utilities except Perl scripts (they may be found in
188 %{name}-extras-perl package).
189
190 %description extras -l pl
191 Dodatkowe narzêdzia do MySQL - z wyj±tkiem skryptów Perla (które s± w
192 pakiecie %{name}-extras-perl).
193
194 %package extras-perl
195 Summary:        MySQL additional utilities written in Perl
196 Summary(pl):    Dodatkowe narzêdzia do MySQL napisane w Perlu
197 Group:          Applications/Databases
198 Requires:       %{name}-extras = %{version}-%{release}
199 Requires:       perl(DBD::mysql)
200
201 %description extras-perl
202 MySQL additional utilities written in Perl.
203
204 %description extras-perl -l pl
205 Dodatkowe narzêdzia do MySQL napisane w Perlu.
206
207 %package client
208 Summary:        MySQL - Client
209 Summary(pl):    MySQL - Klient
210 Summary(pt):    MySQL - Cliente
211 Summary(ru):    MySQL ËÌÉÅÎÔ
212 Summary(uk):    MySQL Ë̦¤ÎÔ
213 Group:          Applications/Databases
214 Requires:       %{name}-libs = %{version}-%{release}
215 Obsoletes:      MySQL-client
216
217 %description client
218 This package contains the standard MySQL clients.
219
220 %description client -l fr
221 Ce package contient les clients MySQL standards.
222
223 %description client -l pl
224 Standardowe programy klienckie MySQL.
225
226 %description client -l pt_BR
227 Este pacote contém os clientes padrão para o MySQL.
228
229 %description client -l ru
230 üÔÏÔ ÐÁËÅÔ ÓÏÄÅÒÖÉÔ ÔÏÌØËÏ ËÌÉÅÎÔ MySQL.
231
232 %description client -l uk
233 ãÅÊ ÐÁËÅԠͦÓÔÉÔØ Ô¦ÌØËÉ Ë̦¤ÎÔÁ MySQL.
234
235 %package libs
236 Summary:        Shared libraries for MySQL
237 Summary(pl):    Biblioteki dzielone MySQL
238 Group:          Applications/Databases
239 Obsoletes:      libmysql10
240 Obsoletes:      mysql-doc < 4.0.25-1
241
242 %description libs
243 Shared libraries for MySQL.
244
245 %description libs -l pl
246 Biblioteki dzielone MySQL.
247
248 %package devel
249 Summary:        MySQL - Development header files and libraries
250 Summary(pl):    MySQL - Pliki nag³ówkowe i biblioteki dla programistów
251 Summary(pt):    MySQL - Medições de desempenho
252 Summary(ru):    MySQL - ÈÅÄÅÒÙ É ÂÉÂÌÉÏÔÅËÉ ÒÁÚÒÁÂÏÔÞÉËÁ
253 Summary(uk):    MySQL - ÈÅÄÅÒÉ ÔÁ Â¦Â̦ÏÔÅËÉ ÐÒÏÇÒÁͦÓÔÁ
254 Group:          Development/Libraries
255 Requires:       %{name}-libs = %{version}-%{release}
256 %{?with_ssl:Requires:   openssl-devel}
257 Requires:       zlib-devel
258 Obsoletes:      MySQL-devel
259 Obsoletes:      libmysql10-devel
260
261 %description devel
262 This package contains the development header files and libraries
263 necessary to develop MySQL client applications.
264
265 %description devel -l fr
266 Ce package contient les fichiers entetes et les librairies de
267 developpement necessaires pour developper des applications clientes
268 MySQL.
269
270 %description devel -l pl
271 Pliki nag³ówkowe i biblioteki konieczne do kompilacji aplikacji
272 klienckich MySQL.
273
274 %description devel -l pt_BR
275 Este pacote contém os arquivos de cabeçalho (header files) e
276 bibliotecas necessárias para desenvolver aplicações clientes do MySQL.
277
278 %description devel -l ru
279 üÔÏÔ ÐÁËÅÔ ÓÏÄÅÒÖÉÔ ÈÅÄÅÒÙ É ÂÉÂÌÉÏÔÅËÉ ÒÁÚÒÁÂÏÔÞÉËÁ, ÎÅÏÂÈÏÄÉÍÙÅ ÄÌÑ
280 ÒÁÚÒÁÂÏÔËÉ ËÌÉÅÎÔÓËÉÈ ÐÒÉÌÏÖÅÎÉÊ.
281
282 %description devel -l uk
283 ãÅÊ ÐÁËÅԠͦÓÔÉÔØ ÈÅÄÅÒÉ ÔÁ Â¦Â̦ÏÔÅËÉ ÐÒÏÇÒÁͦÓÔÁ, ÎÅÏÂȦÄΦ ÄÌÑ
284 ÒÏÚÒÏÂËÉ ÐÒÏÇÒÁÍ-Ë̦¤ÎÔ¦×.
285
286 %package static
287 Summary:        MySQL static libraries
288 Summary(pl):    Biblioteki statyczne MySQL
289 Summary(ru):    MySQL - ÓÔÁÔÉÞÅÓËÉÅ ÂÉÂÌÉÏÔÅËÉ
290 Summary(uk):    MySQL - ÓÔÁÔÉÞΦ Â¦Â̦ÏÔÅËÉ
291 Group:          Development/Libraries
292 Requires:       %{name}-devel = %{version}-%{release}
293 Obsoletes:      MySQL-static
294
295 %description static
296 MySQL static libraries.
297
298 %description static -l pl
299 Biblioteki statyczne MySQL.
300
301 %description static -l ru
302 üÔÏÔ ÐÁËÅÔ ÓÏÄÅÒÖÉÔ ÓÔÁÔÉÞÅÓËÉÅ ÂÉÂÌÉÏÔÅËÉ ÒÁÚÒÁÂÏÔÞÉËÁ, ÎÅÏÂÈÏÄÉÍÙÅ
303 ÄÌÑ ÒÁÚÒÁÂÏÔËÉ ËÌÉÅÎÔÓËÉÈ ÐÒÉÌÏÖÅÎÉÊ.
304
305 %description static -l uk
306 ãÅÊ ÐÁËÅԠͦÓÔÉÔØ ÓÔÁÔÉÞΦ Â¦Â̦ÏÔÅËÉ ÐÒÏÇÒÁͦÓÔÁ, ÎÅÏÂȦÄΦ ÄÌÑ
307 ÒÏÚÒÏÂËÉ ÐÒÏÇÒÁÍ-Ë̦¤ÎÔ¦×.
308
309 %package bench
310 Summary:        MySQL - Benchmarks
311 Summary(pl):    MySQL - Programy testuj±ce szybko¶æ dzia³ania bazy
312 Summary(pt):    MySQL - Medições de desempenho
313 Summary(ru):    MySQL - ÂÅÎÞÍÁÒËÉ
314 Summary(uk):    MySQL - ÂÅÎÞÍÁÒËÉ
315 Group:          Applications/Databases
316 Requires:       %{name}-client
317 Requires:       %{name} = %{version}-%{release}
318 Requires:       perl(DBD::mysql)
319 Obsoletes:      MySQL-bench
320
321 %description bench
322 This package contains MySQL benchmark scripts and data.
323
324 %description bench -l pl
325 Programy testuj±ce szybko¶æ serwera MySQL.
326
327 %description bench -l pt_BR
328 Este pacote contém medições de desempenho de scripts e dados do MySQL.
329
330 %description bench -l ru
331 üÔÏÔ ÐÁËÅÔ ÓÏÄÅÒÖÉÔ ÓËÒÉÐÔÙ É ÄÁÎÎÙÅ ÄÌÑ ÏÃÅÎËÉ ÐÒÏÉÚ×ÏÄÉÔÅÌØÎÏÓÔÉ
332 MySQL.
333
334 %description bench -l uk
335 ãÅÊ ÐÁËÅԠͦÓÔÉÔØ ÓËÒÉÐÔÉ ÔÁ ÄÁΦ ÄÌÑ ÏæÎËÉ ÐÒÏÄÕËÔÉ×ÎÏÓÔ¦ MySQL.
336
337 %package doc
338 Summary:        MySQL manual
339 Summary(pl):    Podrêcznik u¿ytkownika MySQL
340 Group:          Applications/Databases
341
342 %description doc
343 This package contains manual in HTML format.
344
345 %description doc -l pl
346 Podrêcznik MySQL-a w formacie HTML.
347
348 %prep
349 %setup -q
350 %patch0 -p1
351 %patch1 -p1
352 %patch2 -p1
353 %patch3 -p1
354 # in 4.0.25 there is no source for info file
355 #%patch4 -p1
356 %ifarch alpha
357 # this is strange: mysqld functions for UDF modules are not explicitly defined,
358 # so -rdynamic is used; in such case gcc3+ld on alpha doesn't like C++ vtables
359 # in objects compiled without -fPIC
360 %patch5 -p1
361 %endif
362 %patch6 -p1
363 %patch7 -p1
364 %patch8 -p1
365
366 %build
367 %{__libtoolize}
368 %{__aclocal}
369 %{__automake}
370 %{__autoconf}
371 # The compiler flags are as per their "official" spec ;)
372 CXXFLAGS="%{rpmcflags} -felide-constructors -fno-rtti -fno-exceptions %{!?debug:-fomit-frame-pointer}"
373 CFLAGS="%{rpmcflags} %{!?debug:-fomit-frame-pointer}"
374 %configure \
375         PS='/bin/ps' \
376         FIND_PROC='/bin/ps p $$PID' \
377         KILL='/bin/kill' \
378         CHECK_PID='/bin/kill -0 $$PID' \
379         -C \
380         --enable-assembler \
381         --enable-shared \
382         --enable-static \
383         --enable-thread-safe-client \
384         --with%{!?with_bdb:out}-berkeley-db \
385         --with%{!?with_innodb:out}-innodb \
386         --with%{!?with_isam:out}-isam \
387         --with%{!?with_raid:out}-raid \
388         --with%{!?with_ssl:out}-openssl \
389         --with%{!?with_tcpd:out}-libwrap \
390         --with-comment="PLD Linux Distribution MySQL RPM" \
391         --with%{!?debug:out}-debug \
392         --with-embedded-server \
393         --with-extra-charsets=all \
394         --with-low-memory \
395         --with-mysqld-user=mysql \
396         --with-named-curses-libs="-lncurses" \
397         --with-pthread \
398         --with-unix-socket-path=/var/lib/mysql/mysql.sock \
399         --with-vio \
400         --without-readline \
401         --without-docs
402 #       --with-mysqlfs
403
404 # NOTE that /var/lib/mysql/mysql.sock is symlink to real sock file
405 # (it defaults to first cluster but user may change it to whatever
406 #  cluster it wants)
407
408 echo -e "all:\ninstall:\nclean:\nlink_sources:\n" > libmysqld/examples/Makefile
409
410 %{__make} benchdir=$RPM_BUILD_ROOT%{_datadir}/sql-bench
411 # workaround for missing files
412 (cd Docs; touch Images/cluster-components-1.txt Images/multi-comp-1.txt errmsg-table.texi cl-errmsg-table.texi)
413 %{__make} -C Docs mysql.info
414
415 %install
416 rm -rf $RPM_BUILD_ROOT
417 install -d $RPM_BUILD_ROOT/etc/{logrotate.d,rc.d/init.d,sysconfig,mysql,monit} \
418            $RPM_BUILD_ROOT/var/{log/{archiv,}/mysql,lib/mysql} \
419            $RPM_BUILD_ROOT{%{_infodir},%{_mysqlhome}}
420
421 %if %{with bdb}
422 install -d $RPM_BUILD_ROOT/var/lib/mysql/bdb/{log,tmp}
423 %endif
424
425 # Make install
426 %{__make} install \
427         DESTDIR=$RPM_BUILD_ROOT \
428         benchdir=%{_datadir}/sql-bench \
429         libsdir=/tmp
430 # libsdir is to avoid installing innodb static libs in $RPM_BUILD_ROOT../libs
431
432 install Docs/mysql.info $RPM_BUILD_ROOT%{_infodir}
433
434 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/mysql
435 install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/mysql
436 install %{SOURCE3} $RPM_BUILD_ROOT/etc/logrotate.d/mysql
437 # This is template for configuration file which is created after 'service mysql init'
438 install %{SOURCE4} $RPM_BUILD_ROOT%{_datadir}/mysql/mysqld.conf
439 install %{SOURCE4} mysqld.conf
440 install %{SOURCE5} $RPM_BUILD_ROOT/etc/mysql/clusters.conf
441 install %{SOURCE6} $RPM_BUILD_ROOT/etc/monit
442 touch $RPM_BUILD_ROOT/var/log/mysql/{err,log,update,isamlog.log}
443
444 # remove innodb directives from mysqld.conf if mysqld is configured without
445 %if !%{with innodb}
446         cp mysqld.conf mysqld.tmp
447         awk 'BEGIN { RS="\n\n" } !/innodb/ { printf("%s\n\n", $0) }' < mysqld.tmp > mysqld.conf
448 %endif
449
450 # remove berkeley-db directives from mysqld.conf if mysqld is configured without
451 %if !%{with bdb}
452         cp mysqld.conf mysqld.tmp
453         awk 'BEGIN { RS="\n\n" } !/bdb/ { printf("%s\n\n", $0) }' < mysqld.tmp > mysqld.conf
454 %endif
455
456 install mysqld.conf $RPM_BUILD_ROOT%{_datadir}/mysql/mysqld.conf
457
458 # remove mysqld's *.po files
459 find . $RPM_BUILD_ROOT%{_datadir}/%{name} -name \*.txt | xargs -n 100 rm -f
460 mv -f $RPM_BUILD_ROOT%{_libdir}/mysql/lib* $RPM_BUILD_ROOT%{_libdir}
461 %{__perl} -pi -e 's,%{_libdir}/mysql,%{_libdir},;' $RPM_BUILD_ROOT%{_libdir}/libmysqlclient.la
462
463 rm -rf $RPM_BUILD_ROOT%{_prefix}/mysql-test
464
465 %clean
466 rm -rf $RPM_BUILD_ROOT
467
468 %pre
469 if [ -n "`/usr/bin/getgid mysql`" ]; then
470         if [ "`/usr/bin/getgid mysql`" != "89" ]; then
471                 echo "Error: group mysql doesn't have gid=89. Correct this before installing mysql." 1>&2
472                 exit 1
473         fi
474 else
475         /usr/sbin/groupadd -g 89 mysql
476 fi
477 if [ -n "`/bin/id -u mysql 2>/dev/null`" ]; then
478         if [ "`/bin/id -u mysql`" != "89" ]; then
479                 echo "Error: user mysql doesn't have uid=89. Correct this before installing mysql." 1>&2
480                 exit 1
481         fi
482 else
483         /usr/sbin/useradd -u 89 \
484                         -d %{_mysqlhome} -s /bin/sh -g mysql \
485                         -c "MySQL Server" mysql 1>&2
486 fi
487
488 %post
489 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
490 /sbin/chkconfig --add mysql
491 if [ -f /var/lock/subsys/mysql ]; then
492         /etc/rc.d/init.d/mysql restart >&2
493 else
494         echo "Run \"/etc/rc.d/init.d/mysql start\" to start mysql." >&2
495 fi
496
497 %preun
498 if [ "$1" = "0" ]; then
499         if [ -f /var/lock/subsys/mysql ]; then
500                 /etc/rc.d/init.d/mysql stop
501         fi
502         /sbin/chkconfig --del mysql
503 fi
504
505 %postun
506 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
507 if [ "$1" = "0" ]; then
508         %userremove mysql
509         %groupremove mysql
510 fi
511
512 %post   libs -p /sbin/ldconfig
513 %postun libs -p /sbin/ldconfig
514
515 %triggerpostun -- mysql <= 4.0.20-2
516 # For clusters in /etc/mysql/clusters.conf
517 if [ -f "/etc/sysconfig/mysql" ]; then
518         . /etc/sysconfig/mysql
519         if [ -n "$MYSQL_DB_CLUSTERS" ]; then
520                 for i in "$MYSQL_DB_CLUSTERS"; do
521                         echo "$i/mysqld.conf=$i" >> /etc/mysql/clusters.conf
522                 done
523                 echo "# Do not use **obsolete** option MYSQL_DB_CLUSTERS" >> /etc/sysconfig/mysql
524                 echo "# USE /etc/mysql/clusters.conf instead" >> /etc/sysconfig/mysql
525                 echo "Converted clusters from MYSQL_DB_CLUSTERS to /etc/mysql/clusters.conf."
526                 echo "You NEED to fix your /etc/sysconfig/mysql and verify /etc/mysql/clusters.conf."
527         fi
528 fi
529
530 %files
531 %defattr(644,root,root,755)
532 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/mysql
533 %attr(754,root,root) /etc/rc.d/init.d/mysql
534 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/mysql
535 %attr(751,root,root) %dir /etc/mysql
536 %attr(640,root,mysql) %config(noreplace) %verify(not md5 mtime size) /etc/mysql/clusters.conf
537 %attr(750,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/monit/*.monitrc
538 %attr(755,root,root) %{_bindir}/isamchk
539 %attr(755,root,root) %{_bindir}/isamlog
540 %attr(755,root,root) %{_bindir}/myisamchk
541 %attr(755,root,root) %{_bindir}/myisamlog
542 %attr(755,root,root) %{_bindir}/myisampack
543 %attr(755,root,root) %{_bindir}/pack_isam
544 %attr(755,root,root) %{_sbindir}/mysqld
545 %{_mandir}/man1/isamchk.1*
546 %{_mandir}/man1/isamlog.1*
547 %{_mandir}/man1/mysqld.1*
548
549 %attr(700,mysql,mysql) %{_mysqlhome}
550 # root:root is proper here for AC mysql.rpm while mysql:mysql is potential security hole
551 %attr(751,root,root) /var/lib/mysql
552 %attr(750,mysql,mysql) %dir /var/log/mysql
553 %attr(750,mysql,mysql) %dir /var/log/archiv/mysql
554 %attr(640,mysql,mysql) %config(noreplace) %verify(not md5 mtime size) /var/log/mysql/*
555
556 %{_infodir}/mysql.info*
557 %dir %{_datadir}/mysql
558 # This is template for configuration file which is created after 'service mysql init'
559 %{_datadir}/mysql/mysqld.conf
560 %{_datadir}/mysql/charsets
561 %{_datadir}/mysql/english
562 %lang(cs) %{_datadir}/mysql/czech
563 %lang(da) %{_datadir}/mysql/danish
564 %lang(de) %{_datadir}/mysql/german
565 %lang(el) %{_datadir}/mysql/greek
566 %lang(es) %{_datadir}/mysql/spanish
567 %lang(et) %{_datadir}/mysql/estonian
568 %lang(fr) %{_datadir}/mysql/french
569 %lang(hu) %{_datadir}/mysql/hungarian
570 %lang(it) %{_datadir}/mysql/italian
571 %lang(ja) %{_datadir}/mysql/japanese
572 %lang(ko) %{_datadir}/mysql/korean
573 %lang(nl) %{_datadir}/mysql/dutch
574 %lang(nb) %{_datadir}/mysql/norwegian
575 %lang(nn) %{_datadir}/mysql/norwegian-ny
576 %lang(pl) %{_datadir}/mysql/polish
577 %lang(pt) %{_datadir}/mysql/portuguese
578 %lang(ro) %{_datadir}/mysql/romanian
579 %lang(ru) %{_datadir}/mysql/russian
580 %lang(sk) %{_datadir}/mysql/slovak
581 %lang(sv) %{_datadir}/mysql/swedish
582 %lang(uk) %{_datadir}/mysql/ukrainian
583
584 %files extras
585 %defattr(644,root,root,755)
586 %attr(755,root,root) %{_bindir}/msql2mysql
587 %attr(755,root,root) %{_bindir}/mysql_fix_privilege_tables
588 %attr(755,root,root) %{_bindir}/perror
589 %attr(755,root,root) %{_bindir}/my_print_defaults
590 %attr(755,root,root) %{_bindir}/replace
591 %attr(755,root,root) %{_bindir}/resolveip
592 %{_mandir}/man1/mysql_fix_privilege_tables.1*
593 %{_mandir}/man1/perror.1*
594 %{_mandir}/man1/replace.1*
595
596 %files extras-perl
597 %defattr(644,root,root,755)
598 %attr(755,root,root) %{_bindir}/mysql_convert_table_format
599 %attr(755,root,root) %{_bindir}/mysqldumpslow
600 %attr(755,root,root) %{_bindir}/mysqlhotcopy
601 %attr(755,root,root) %{_bindir}/mysql_setpermission
602 %attr(755,root,root) %{_bindir}/mysql_zap
603 %attr(755,root,root) %{_bindir}/mysql_find_rows
604 %attr(755,root,root) %{_bindir}/mysqlaccess
605 %{_mandir}/man1/mysql_zap.1*
606 %{_mandir}/man1/mysqlaccess.1*
607
608 %files client
609 %defattr(644,root,root,755)
610 %attr(755,root,root) %{_bindir}/mysql
611 %attr(755,root,root) %{_bindir}/mysqlbug
612 %attr(755,root,root) %{_bindir}/mysqldump
613 %attr(755,root,root) %{_bindir}/mysqlimport
614 %attr(755,root,root) %{_bindir}/mysqlmanager*
615 %attr(755,root,root) %{_bindir}/mysqlshow
616 %attr(755,root,root) %{_bindir}/mysqlbinlog
617 %attr(755,root,root) %{_bindir}/mysqladmin
618 %attr(755,root,root) %{_bindir}/mysqltest
619 %{_mandir}/man1/mysql.1*
620 %{_mandir}/man1/mysqladmin.1*
621 %{_mandir}/man1/mysqldump.1*
622 %{_mandir}/man1/mysqlshow.1*
623
624 %files libs
625 %defattr(644,root,root,755)
626 %doc EXCEPTIONS-CLIENT
627 %attr(755,root,root) %{_libdir}/lib*.so.*.*
628
629 %files devel
630 %defattr(644,root,root,755)
631 %attr(755,root,root) %{_bindir}/mysql_config
632 %attr(755,root,root) %{_libdir}/lib*.so
633 %{_libdir}/lib*.la
634 %{_libdir}/lib*[!tr].a
635 %{_includedir}/mysql
636
637 %files static
638 %defattr(644,root,root,755)
639 %{_libdir}/lib*[tr].a
640
641 %files bench
642 %defattr(644,root,root,755)
643 %dir %{_datadir}/sql-bench
644 %{_datadir}/sql-bench/[CDRl]*
645 %attr(755,root,root) %{_datadir}/sql-bench/[bcgrst]*
646
647 #%files doc
648 #%defattr(644,root,root,755)
649 #%doc Docs/manual.html Docs/manual_toc.html
This page took 0.076513 seconds and 3 git commands to generate.