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