/[packages]/cauldron/mariadb/current/SPECS/mariadb.spec
ViewVC logotype

Annotation of /cauldron/mariadb/current/SPECS/mariadb.spec

Parent Directory Parent Directory | Revision Log Revision Log


Revision 429630 - (hide annotations) (download)
Tue May 28 16:51:31 2013 UTC (10 years, 10 months ago) by blino
File size: 29565 byte(s)
package new query_cache_info plugin

1 alien 166284 #(ie. use with rpm --rebuild):
2     #
3     # --with debug Compile with debugging code
4     #
5     # enable build with debugging code: will _not_ strip away any debugging code,
6     # will _add_ -g3 to CFLAGS, will _add_ --enable-maintainer-mode to
7     # configure.
8    
9     %define build_debug 0
10     %define build_test 0
11    
12     # commandline overrides:
13     # rpm -ba|--rebuild --with 'xxx'
14     %{?_with_debug: %{expand: %%define build_debug 1}}
15     %{?_with_test: %{expand: %%define build_test 1}}
16     %{?_without_test: %global build_test 0}
17    
18     %if %{build_debug}
19     # disable build root strip policy
20     %define __spec_install_post %{_libdir}/rpm/brp-compress || :
21    
22     # This gives extra debuggin and huge binaries
23     %{expand:%%define optflags %{optflags} %([ ! $DEBUG ] && echo '-g3')}
24     %endif
25    
26     %if %{build_debug}
27     %define build_debug 1
28     %endif
29    
30     %if %{build_test}
31     %define build_test 1
32     %endif
33    
34     %define major 18
35 alien 182848 %define libmysqlembedded_major 0
36     %define libmysqlembedded_minor 0.1
37 alien 166284 %define libname %mklibname mariadb %{major}
38     %define libmariadbservices %mklibname mariadbservices
39 alien 182848 %define libmariadbembedded %mklibname mariadb-embedded %{major}
40 alien 166284 %define develname %mklibname -d mariadb
41     %define old_staticdevelname %mklibname -d -s mariadb
42     %define libmariadbembedded_devel %mklibname -d mariadb-embedded
43    
44 alien 183054 %define mysql_libname %mklibname mysql %{major}
45     %define mysql_develname %mklibname -d mysql
46     %define libmysqlservices %mklibname mysqlservices
47     %define libmysqlembedded %mklibname mysqld %{libmysqlembedded_major}
48     %define libmysqlembedded_devel %mklibname -d mariadb-embedded
49    
50 alien 223554 %define mirror http://ftp.osuosl.org/pub/mariadb
51 alien 166284
52     %define muser mysql
53     Summary: A very fast and reliable SQL database engine
54     Name: mariadb
55 blino 428534 Version: 5.5.31
56     Release: %mkrel 1
57 alien 166284 Group: Databases
58     License: GPLv2 with exceptions
59     URL: http://mariadb.org/
60 alien 215169 Source0: %{mirror}/%{name}-%{version}/kvm-tarbake-jaunty-x86/%{name}-%{version}.tar.gz
61 alien 166284 Source2: mysqld.sysconfig
62     Source3: my.cnf
63     Source4: libmysql.version
64     Source10: mysql.tmpfiles.d
65     Source11: mysqld.service
66     Source12: mysqld-prepare-db-dir
67     Source13: mysqld-wait-ready
68     # the following patches are rediffed from the mysql-5.5 src.rpm to mariadb-5.5
69     # fedora patches
70     Patch1: mariadb-5.5-errno.patch
71     Patch3: mariadb-5.5-install-test.patch
72     Patch4: mysql-expired-certs.patch
73     Patch8: mariadb-5.5-dubious-exports.patch
74    
75     # mandriva patches
76     Patch101: mariadb-5.5-logrotate.patch
77     Patch102: mariadb-5.5-initscript.patch
78     Patch106: mariadb-5.5-hotcopy.patch
79     Patch107: mariadb-5.5-mysql_install_db-quiet.patch
80    
81 alien 318282 # mageia patches
82 alien 279279 Patch120: mariadb-5.5.25-forgotten-files.patch
83 alien 394775 Patch132: mariadb-5.5-no-anonymous-user.patch
84 alien 279279
85 colin 404859 Requires(post): systemd >= %{systemd_required_version}
86 tmb 233779 Requires(post): rpm-helper >= 0.24.8-1
87     Requires(preun): rpm-helper >= 0.24.8-1
88 alien 193664 Requires(post): %{name}-common%{_isa} = %{version}-%{release}
89     Requires(preun): %{name}-common%{_isa} = %{version}-%{release}
90     Requires(post): %{name}-client%{_isa} = %{version}-%{release}
91     Requires(preun): %{name}-client%{_isa} = %{version}-%{release}
92     Requires(postun): %{name}-common%{_isa} = %{version}-%{release}
93     Requires(postun): %{name}-client%{_isa} = %{version}-%{release}
94     Requires: %{name}-common%{_isa} = %{version}-%{release}
95     Requires: %{name}-core%{_isa} = %{version}-%{release}
96     Requires: %{name}-client%{_isa} = %{version}-%{release}
97 alien 182848 Provides: mysql = %{version}-%{release}
98 fwang 230765 Obsoletes: mysql < %{version}-%{release}
99 alien 188299 Obsoletes: %{libmariadbservices} < 5.5.18-0.3194.20111227.1
100 fwang 230765 Obsoletes: %{libmysqlservices} < %{version}-%{release}
101 alien 230190 Conflicts: %{name}-extra%{_isa} < %{version}-%{release}
102     Conflicts: %{name}-feedback%{_isa} < %{version}-%{release}
103     Conflicts: %{name}-obsolete%{_isa} < %{version}-%{release}
104 alien 193664 Suggests: %{name}-extra%{_isa}
105 alien 166284 BuildRequires: bison
106     BuildRequires: cmake
107     BuildRequires: doxygen
108     BuildRequires: glibc-devel
109     BuildRequires: libaio-devel
110     BuildRequires: libstdc++-devel
111     BuildRequires: libtermcap-devel
112     BuildRequires: multiarch-utils >= 1.0.3
113     BuildRequires: ncurses-devel
114     BuildRequires: openssl-devel
115     BuildRequires: wrap-devel
116     BuildRequires: python
117     BuildRequires: systemtap
118     BuildRequires: tetex
119     BuildRequires: texinfo
120     BuildRequires: xfs-devel
121     BuildRequires: zlib-devel
122 alien 166362 BuildRequires: boost-devel
123 alien 233249 BuildRequires: libaio-devel
124 alien 279953 BuildRequires: pam-devel
125 alien 166284 BuildConflicts: edit-devel
126    
127     %description
128     The MariaDB software delivers a very fast, multi-threaded, multi-user, and
129     robust SQL (Structured Query Language) database server. MariaDB Server is
130     intended for mission-critical, heavy-load production systems as well as for
131     embedding into mass-deployed software.
132    
133     The mariadb server is compiled with the following storage engines:
134    
135     - Aria Storage Engine
136     - Archive Storage Engine
137     - Blackhole Storage Engine
138     - CSV Storage Engine
139 alien 188246 - FederatedX Storage Engine (Federated replacement)
140 alien 166284 - Heap Storage Engine
141     - MyISAM Storage Engine
142     - MyISAMMRG Storage Engine
143     - Partition Storage Engine
144     - Perfschema Storage Engine
145 alien 188246 - XtraDB Storage Engine (InnoDB replacement)
146    
147     The following extra storage engines are provided by the mariadb-extra package
148    
149     - OQGraph Storage Engine
150 alien 166284 - Sphinx Storage Engine
151    
152 alien 188246 The feedback storage engine is provided by the mariadb-feedback package
153 alien 166284
154 alien 188246 - Feedback Storage Engine
155    
156     The following storage engines are provided in the mariadb-obsolete package
157    
158     - Federated Storage Engine
159     - InnoDB Storage Engine
160    
161 alien 192139 %package -n mysql-MariaDB
162 alien 192933 Summary: A MySQL drop-in replacement
163 alien 192139 Group: System/Servers
164 alien 193664 Requires: %{name}%{_isa}
165 alien 192139
166     %description -n mysql-MariaDB
167     MariaDB is a complete MySQL drop-in replacement with additional fixes and
168     storage engines.
169    
170     This package is used as a transitional virtual package, which requires
171     MariaDB so that people who used to use mysql can find it nicely.
172    
173 alien 188246 %package feedback
174     Summary: MariaDB feedback storage engine
175     Group: System/Servers
176 alien 193664 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
177 alien 230190 Conflicts: %{name}-common-core%{_isa} < %{version}-%{release}
178 alien 188246
179     %description feedback
180     MariaDB feedback storage engine submits feedback about your mariadb server.
181     Results can be seen on http://mariadb.org/feedback_plugin/ .
182    
183     %package extra
184     Summary: MariaDB extra storage engines
185     Group: System/Servers
186 alien 193664 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
187 alien 230190 Conflicts: %{name}-common-core%{_isa} < %{version}-%{release}
188 alien 188246
189     %description extra
190     MariaDB oqgraph and sphinx storage engines.
191    
192     %package obsolete
193     Summary: MariaDB obsolete storage engines
194     Group: System/Servers
195 alien 193664 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
196 alien 230190 Conflicts: %{name}-common-core%{_isa} < %{version}-%{release}
197 alien 188246 Conflicts: mysql-core < 5.5.18
198    
199     %description obsolete
200     MariaDB obsolete storage engines. InnoDB and Federated are being replaced by
201     XtraDB and FederatedX storage engines. These obsolete storage engines are
202     provided in case you need the vanilla mysql storage engines.
203    
204 alien 166284 %package core
205     Summary: Server core binary
206     Group: System/Servers
207 alien 193664 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
208 alien 182848 Provides: mysql-core = %{version}-%{release}
209 fwang 230765 Obsoletes: mysql-core < %{version}-%{release}
210 alien 166284
211     %description core
212     Core mysqld server binary. For a full MariaDB database server, install
213     package 'mariadb'.
214    
215     %package common-core
216     Summary: Common files required by core binary
217     Group: System/Servers
218 alien 182848 Provides: mysql-common-core = %{version}-%{release}
219 fwang 230765 Obsoletes: mysql-common-core < %{version}-%{release}
220 alien 166284
221     %description common-core
222     Common files minimally required by mysqld server binary.
223    
224     %package common
225     Summary: Common files
226     Group: System/Servers
227     Requires(post): rpm-helper
228     Requires(preun): rpm-helper
229     Requires(pre): rpm-helper
230     Requires(postun): rpm-helper
231 alien 193664 Requires(post): %{name}-client%{_isa} >= %{version}-%{release}
232     Requires(preun): %{name}-client%{_isa} >= %{version}-%{release}
233     Requires: %{name}-client%{_isa} >= %{version}-%{release}
234     Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
235 alien 182848 Provides: mysql-common = %{version}-%{release}
236 fwang 230765 Obsoletes: mysql-common < %{version}-%{release}
237 alien 166284
238     %description common
239     Common files for the MariaDB database server.
240    
241     %package client
242     Summary: Client
243     Group: Databases
244 alien 193664 Requires(post): %{libname}%{_isa} >= %{version}-%{release}
245     Requires(preun): %{libname}%{_isa} >= %{version}-%{release}
246     Requires: %{libname}%{_isa} >= %{version}-%{release}
247 alien 182848 Provides: mysql-client = %{version}-%{release}
248 fwang 230765 Obsoletes: mysql-client < %{version}-%{release}
249 alien 166284
250     %description client
251     This package contains the standard MariaDB clients.
252    
253     %package bench
254     Summary: Benchmarks and test system
255     Group: System/Servers
256 alien 193664 Requires(post): %{name}-client%{_isa} >= %{version}-%{release}
257     Requires(preun): %{name}-client%{_isa} >= %{version}-%{release}
258     Requires: %{name}-client%{_isa} >= %{version}-%{release}
259 alien 394537 Suggests: %{name}%{_isa} >= %{version}-%{release}
260 alien 182848 Provides: mysql-bench = %{version}-%{release}
261 fwang 230765 Obsoletes: mysql-bench < %{version}-%{release}
262 alien 166284
263     %description bench
264     This package contains MariaDB benchmark scripts and data.
265    
266     %package -n %{libname}
267     Summary: Shared libraries
268     Group: System/Libraries
269     Provides: %{name}-shared-libs = %{version}-%{release}
270     Provides: %{name}-shared = %{version}-%{release}
271 alien 183054 Provides: %{mysql_libname} = %{version}-%{release}
272 fwang 230765 Obsoletes: %{mysql_libname} < %{version}-%{release}
273 alien 166284
274     %description -n %{libname}
275     This package contains the shared libraries (*.so*) which certain languages and
276     applications need to dynamically load and use MariaDB.
277    
278     %package -n %{develname}
279     Summary: Development header files and libraries
280     Group: Development/Other
281 alien 194264 Requires(post): %{libname} >= %{version}-%{release}
282     Requires(preun): %{libname} >= %{version}-%{release}
283 alien 193664 Requires(post): %{name}-common%{_isa} >= %{version}-%{release}
284     Requires(preun): %{name}-common%{_isa} >= %{version}-%{release}
285     Requires(post): %{name}-client%{_isa} >= %{version}-%{release}
286     Requires(preun): %{name}-client%{_isa} >= %{version}-%{release}
287 alien 194264 Requires: %{libname} = %{version}-%{release}
288 alien 193664 Requires: %{name}-common%{_isa} >= %{version}-%{release}
289     Requires: %{name}-client%{_isa} >= %{version}-%{release}
290 alien 166284 Provides: %{name}-devel = %{version}-%{release}
291     Provides: %{libname}-devel = %{version}-%{release}
292 fwang 230765 Obsoletes: %{libname}-devel < %{version}-%{release}
293     Obsoletes: %{old_staticdevelname} < %{version}-%{release}
294 alien 183054 Provides: %{mysql_develname} = %{version}-%{release}
295 fwang 230765 Obsoletes: %{mysql_develname} < %{version}-%{release}
296 fwang 182925 Provides: mysql-devel = %{version}-%{release}
297 alien 166284
298     %description -n %{develname}
299     This package contains the development header files and libraries necessary to
300     develop MariaDB client applications.
301    
302     %package -n %{libmariadbembedded}
303     Summary: MariaDB as an embeddable library
304     Group: System/Libraries
305     Provides: %{name}-embedded = %{version}-%{release}
306 fwang 230765 Obsoletes: %{name}-embedded < %{version}-%{release}
307 alien 183054 Provides: %{libmysqlembedded} = %{version}-%{release}
308 fwang 230765 Obsoletes: %{libmysqlembedded} < %{version}-%{release}
309 alien 166284
310     %description -n %{libmariadbembedded}
311     MariaDB is a multi-user, multi-threaded SQL database server. This
312     package contains a version of the MariaDB server that can be embedded
313     into a client application instead of running as a separate process.
314    
315     The API is identical for the embedded MariaDB version and the client/server
316     version.
317    
318     %package -n %{libmariadbembedded_devel}
319     Summary: Development files for MySQL as an embeddable library
320     Group: Development/Other
321     Provides: %{name}-embedded-devel = %{version}-%{release}
322 fwang 230765 Obsoletes: %{name}-embedded-devel < %{version}-%{release}
323 alien 194264 Requires: %{libmariadbembedded} = %{version}-%{release}
324     Requires: %{develname} = %{version}-%{release}
325 alien 183054 Provides: %{libmysqlembedded_devel} = %{version}-%{release}
326 fwang 230765 Obsoletes: %{libmysqlembedded_devel} < %{version}-%{release}
327 fwang 182925 Provides: mysql-embedded-devel = %{version}-%{release}
328 alien 166284
329     %description -n %{libmariadbembedded_devel}
330     MariaDB is a multi-user, multi-threaded SQL database server. This
331     package contains files needed for developing and testing with
332     the embedded version of the MariaDB server.
333    
334     The API is identical for the embedded MariaDB version and the client/server
335     version.
336    
337 alien 230286
338 alien 166284 %prep
339 alien 182848 %setup -q
340 alien 166284 %apply_patches
341    
342     mkdir -p Mageia
343     cp %{SOURCE2} Mageia/mysqld.sysconfig
344     cp %{SOURCE3} Mageia/my.cnf
345    
346 alien 395508 # remove the sql_yacc.cc file so that bison will regenerate it properly, even if it's patched
347     rm -f sql/sql_yacc.cc
348    
349 alien 166284 # lib64 fix
350     perl -pi -e "s|/usr/lib/|%{_libdir}/|g" Mageia/my.cnf
351    
352     # antiborker
353     perl -pi -e "s|\@bindir\@|%{_bindir}|g" support-files/* scripts/*
354     perl -pi -e "s|\@sbindir\@|%{_sbindir}|g" support-files/* scripts/*
355     perl -pi -e "s|\@libexecdir\@|%{_sbindir}|g" support-files/* scripts/*
356     perl -pi -e "s|\@localstatedir\@|/var/lib/mysql|g" support-files/* scripts/*
357     perl -pi -e "s|^basedir=.*|basedir=%{_prefix}|g" support-files/* scripts/mysql_install_db*
358    
359     # this may be part of the problems with mysql-test
360     # http://bugs.mysql.com/bug.php?id=52223
361     #perl -pi -e "s|basedir/lib\b|basedir/%{_lib}\b|g" mysql-test/mysql-test-run.pl
362     #perl -pi -e "s|basedir/lib/|basedir/%{_lib}/|g" mysql-test/mysql-test-run.pl
363    
364     # workaround for upstream bug #56342
365     rm -f mysql-test/t/ssl_8k_key-master.opt
366 alien 398167 rm -f mysql-test/t/file_contents.test
367 alien 166284
368 alien 398167 # fix distribution name
369     sed -i 's/Source distribution/%{_vendor} MariaDB Server/' mysql-test/suite/percona/innodb_sys_index.result
370    
371 alien 166284 # upstream has fallen down badly on symbol versioning, do it ourselves
372     cp %{SOURCE4} libmysql/libmysql.version
373    
374     %build
375     %serverbuild
376     export CFLAGS="${CFLAGS:-%{optflags}}"
377     export CXXFLAGS="${CXXFLAGS:-%{optflags}}"
378     export FFLAGS="${FFLAGS:-%{optflags}}"
379    
380     %cmake \
381     -DCMAKE_BUILD_TYPE=RelWithDebInfo \
382     -DCMAKE_INSTALL_PREFIX=%{_prefix} \
383     -DINSTALL_SBINDIR=sbin \
384     -DMYSQL_DATADIR=/var/lib/mysql \
385     -DSYSCONFDIR=%{_sysconfdir} \
386     -DINSTALL_PLUGINDIR=%{_lib}/mysql/plugin \
387     -DINSTALL_MANDIR=share/man \
388     -DINSTALL_SHAREDIR=share/mysql \
389     -DINSTALL_LIBDIR=%{_lib} \
390     -DINSTALL_INCLUDEDIR=include/mysql \
391     -DINSTALL_INFODIR=share/info \
392     -DINSTALL_MYSQLDATADIR=/var/lib/mysql \
393     -DINSTALL_MYSQLTESTDIR=share/mysql/mysql-test \
394     -DINSTALL_SQLBENCHDIR=share/mysql \
395     -DINSTALL_SUPPORTFILESDIR=share/mysql \
396     -DINSTALL_MYSQLSHAREDIR=share/mysql \
397     -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \
398     -DWITH_READLINE=0 \
399     -DWITH_LIBEDIT=0 \
400     -DWITH_LIBWRAP=1 \
401     -DWITH_SSL=system \
402     -DWITH_ZLIB=system \
403     -DWITH_PIC=1 \
404     -DMYSQL_TCP_PORT=3306 \
405     -DEXTRA_CHARSETS=all \
406     -DENABLED_LOCAL_INFILE=1 \
407     -DENABLE_DTRACE=1 \
408     -DWITH_EMBEDDED_SERVER=1 \
409     -DMYSQL_USER=%{muser} \
410     %if %{build_debug}
411     -DWITH_DEBUG=1 \
412     %else
413     -DWITH_DEBUG=0 \
414     %endif
415     -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
416     -DWITHOUT_NDBCLUSTER_STORAGE_ENGINE=1 \
417     -DWITHOUT_DAEMON_EXAMPLE=1 \
418 alien 398167 -DWITH_PLUGIN_PBXT=0 \
419 alien 166284 -DFEATURE_SET="community" \
420 alien 398167 -DCOMPILATION_COMMENT="%{_vendor} MariaDB Server"
421 alien 166284
422     cp ../libmysql/libmysql.version libmysql/libmysql.version
423    
424     %make
425    
426     %install
427     rm -rf %{buildroot}
428    
429     # don't fiddle with the initscript!
430     export DONT_GPRINTIFY=1
431    
432     %if %{build_debug}
433     export DONT_STRIP=1
434     %endif
435    
436     install -d %{buildroot}%{_sysconfdir}/sysconfig
437     install -d %{buildroot}%{_initrddir}
438     install -d %{buildroot}%{_var}/log/mysqld
439     install -d %{buildroot}/var/lib/mysql/{mysql,test}
440    
441     %makeinstall_std -C build
442    
443 alien 398167 # exclude loaddata7 from being converted
444     export EXCLUDE_FROM_EOL_CONVERSION="std_data/loaddata7.dat"
445    
446 alien 166284 # install init scripts
447     install -m0755 build/support-files/mysql.server %{buildroot}%{_initrddir}/mysqld
448    
449     # install configuration files
450     install -m0644 Mageia/mysqld.sysconfig %{buildroot}%{_sysconfdir}/sysconfig/mysqld
451     install -m0644 Mageia/my.cnf %{buildroot}%{_sysconfdir}/my.cnf
452    
453 colin 321747 install -m 0644 -D %{SOURCE10} %{buildroot}%{_tmpfilesdir}/mysql.conf
454     install -m 0644 -D %{SOURCE11} %{buildroot}%{_unitdir}/mysqld.service
455     install -m 0755 %{SOURCE12} %{buildroot}%{_sbindir}/mysqld-prepare-db-dir
456     install -m 0755 %{SOURCE13} %{buildroot}%{_sbindir}/mysqld-wait-ready
457 alien 166284
458     # bork
459 alien 279279 mv %{buildroot}%{_bindir}/mysqlaccess.conf %{buildroot}%{_sysconfdir}/
460     chmod 644 %{buildroot}%{_sysconfdir}/mysqlaccess.conf
461 alien 166284 mv %{buildroot}%{_prefix}/scripts/mysql_install_db %{buildroot}%{_bindir}/
462     mv %{buildroot}%{_datadir}/mysql/aclocal %{buildroot}%{_datadir}/aclocal
463    
464     pushd %{buildroot}%{_bindir}
465     ln -sf mysqlcheck mysqlrepair
466     ln -sf mysqlcheck mysqlanalyze
467     ln -sf mysqlcheck mysqloptimize
468     popd
469    
470     # nuke -Wl,--as-needed from the mysql_config file
471     perl -pi -e "s|^ldflags=.*|ldflags=\'-rdynamic\'|g" %{buildroot}%{_bindir}/mysql_config
472    
473     # cmake generates some completely wacko references to -lprobes_mysql when
474     # building with dtrace support. Haven't found where to shut that off,
475     # so resort to this blunt instrument. While at it, let's not reference
476     # libmysqlclient_r anymore either.
477     sed -e 's/-lprobes_mysql//' -e 's/-lmysqlclient_r/-lmysqlclient/' \
478     %{buildroot}%{_bindir}/mysql_config >mysql_config.tmp
479     cp -f mysql_config.tmp %{buildroot}%{_bindir}/mysql_config
480     chmod 755 %{buildroot}%{_bindir}/mysql_config
481     install -m 0755 -d %{buildroot}/var/lib/mysql
482    
483 alien 185578 # Remove libmysqld.a, + hardlink libmysqld.so.%{libmysqlembedded_major} so that it's provided
484 alien 166284 rm -f %{buildroot}%{_libdir}/libmysqld.a
485 alien 185578 ln %{buildroot}%{_libdir}/libmysqld.so.%{major} %{buildroot}%{_libdir}/libmysqld.so.%{libmysqlembedded_major}.%{libmysqlembedded_minor}
486 alien 182848 ln -s libmysqld.so.%{libmysqlembedded_major}.%{libmysqlembedded_minor} %{buildroot}%{_libdir}/libmysqld.so.%{libmysqlembedded_major}
487 alien 166284
488     # libmysqlclient_r is no more. Upstream tries to replace it with symlinks
489     # but that really doesn't work (wrong soname in particular). We'll keep
490     # just the devel libmysqlclient_r.so link, so that rebuilding without any
491     # source change is enough to get rid of dependency on libmysqlclient_r.
492     rm -f %{buildroot}%{_libdir}/libmysqlclient_r.so*
493     ln -s libmysqlclient.so %{buildroot}%{_libdir}/libmysqlclient_r.so
494    
495     # remove static libs
496     rm -f %{buildroot}%{_libdir}/libmysqlclient.a
497     rm -f %{buildroot}%{_libdir}/libmysqlclient_r.a
498    
499     # mysql-test includes one executable that doesn't belong under /usr/share,
500     # so move it and provide a symlink
501     mv %{buildroot}%{_datadir}/mysql/mysql-test/lib/My/SafeProcess/my_safe_process %{buildroot}%{_bindir}
502     ln -s %{_bindir}/my_safe_process %{buildroot}%{_datadir}/mysql/mysql-test/lib/My/SafeProcess/my_safe_process
503    
504 alien 182848 # mysql client statically built against a local embedded library, pretty useless
505     rm -f %{buildroot}%{_bindir}/mysql_embedded
506    
507 alien 230190 # this command enables plugins, but needs ini file + configuration in my.cnf
508     # before executing... and oh yeah, mysql must be stopped... => useless
509     # however, apparently tests seem to want it, even thought they don't use it.
510     #rm -f %{buildroot}%{_bindir}/mysql_plugin
511 alien 182848 rm -f %{buildroot}%{_libdir}/mysql/plugin/daemon_example.ini
512    
513 alien 188246 # remove more useless plugins
514 blino 429629 rm -f %{buildroot}%{_libdir}/mysql/plugin/auth_0x0100.so
515 alien 188246 rm -f %{buildroot}%{_libdir}/mysql/plugin/auth_test_plugin.so
516     rm -f %{buildroot}%{_libdir}/mysql/plugin/dialog_examples.so
517    
518 alien 279279 # no RHEL4 selinux files for us
519     rm -rf %{buildroot}%{_datadir}/mysql/SELinux
520    
521 alien 166284 # house cleaning
522     rm -rf %{buildroot}%{_datadir}/info
523     rm -f %{buildroot}%{_bindir}/client_test
524     rm -f %{buildroot}%{_bindir}/make_win_binary_distribution
525     rm -f %{buildroot}%{_bindir}/make_win_src_distribution
526     rm -f %{buildroot}%{_datadir}/mysql/binary-configure
527     rm -f %{buildroot}%{_datadir}/mysql/config.huge.ini
528     rm -f %{buildroot}%{_datadir}/mysql/config.medium.ini
529     rm -f %{buildroot}%{_datadir}/mysql/config.small.ini
530     rm -f %{buildroot}%{_datadir}/mysql/mysqld_multi.server
531     rm -f %{buildroot}%{_datadir}/mysql/mysql-log-rotate
532     rm -f %{buildroot}%{_datadir}/mysql/mysql.server
533     rm -f %{buildroot}%{_datadir}/mysql/ndb-config-2-node.ini
534     rm -f %{buildroot}%{_datadir}/mysql/binary-configure
535     rm -f %{buildroot}%{_mandir}/man1/make_win_bin_dist.1*
536     rm -f %{buildroot}%{_mandir}/man1/make_win_src_distribution.1*
537     rm -f %{buildroot}%{_datadir}/mysql/magic
538    
539     # no idea how to fix this
540     rm -rf %{buildroot}%{_prefix}/data
541     rm -rf %{buildroot}%{_prefix}/docs
542     rm -rf %{buildroot}%{_prefix}/scripts
543     rm -f %{buildroot}%{_prefix}/COPYING
544 alien 223554 rm -f %{buildroot}%{_prefix}/COPYING.LESSER
545 alien 166284 rm -f %{buildroot}%{_prefix}/INSTALL-BINARY
546     rm -f %{buildroot}%{_prefix}/README
547    
548     %multiarch_binaries %{buildroot}%{_bindir}/mysql_config
549     %multiarch_includes %{buildroot}%{_includedir}/mysql/my_config.h
550    
551     cat > README.urpmi <<EOF
552    
553     NOTE: MariaDB is installed without root password, it is recommended to set the
554 alien 192139 root password with the following command as soon as possible:
555 alien 166284
556 alien 192139 mysqladmin password
557 alien 166284
558     The initscript used to start mysql has been reverted to use the one shipped
559     by MariaDB. This means the following changes:
560    
561     * The generation of the initial system mysql database is now done when mysql
562     is started from the initscript and only if the /var/lib/mysql/mysql
563     directory is empty (mysql_install_db). Previousely this was quite hidden and
564     silently done at (rpm) install time. As a consequence to this change you may
565     have to perform some manual tasks to upgrade the mysql system database and
566     such. So, doing something like this might help you:
567    
568 alien 185578 /etc/init.d/mysqld stop
569 alien 166284 TMPDIR=/var/tmp mysql_install_db
570     mysql_upgrade
571    
572     The cluster functionalities (ndb) has been deactivated and will be removed in
573     future mysql versions. Oracle has a new product named mysql-cluster that
574     replaces the cluster functionalities.
575    
576     The mysql-common-core package ships with a default /etc/my.cnf file that is
577     based on the my-medium.cnf file that comes with the source code.
578     EOF
579    
580     ################################################################################
581     # run the tests
582     %if %{build_test}
583     # disable failing tests
584     pushd build/mysql-test
585     export LANG=C
586     export LC_ALL=C
587     export LANGUAGE=C
588     perl ./mysql-test-run.pl \
589     --mtr-build-thread="$((${RANDOM} % 100))" \
590     --retry=0 \
591     --ssl \
592 alien 398167 --big-test \
593     --force \
594     --max-test-fail=0 \
595 alien 166284 --testcase-timeout=60 \
596 alien 398167 --suite-timeout=1200 || false
597 alien 166284 popd
598     %endif
599    
600     %pre
601     # enable plugins
602     if [ -f %{_sysconfdir}/my.cnf ]; then
603     perl -pi -e "s|^#plugin-load|plugin-load|g" %{_sysconfdir}/my.cnf
604     perl -pi -e "s|^#federated|federated|g" %{_sysconfdir}/my.cnf
605 alien 192139 # switch to federatedx provider
606     perl -pi -e "s|;ha_federated\.so$|;ha_federatedx\.so|g" %{_sysconfdir}/my.cnf
607 alien 166284 fi
608    
609     %pre common
610     # delete the mysql group if no mysql user is found, before adding the user
611     if [ -z "`getent passwd %{muser}`" ] && ! [ -z "`getent group %{muser}`" ]; then
612     %{_sbindir}/groupdel %{muser} 2> /dev/null || :
613     fi
614    
615     %_pre_useradd %{muser} /var/lib/mysql /bin/bash
616    
617     %post
618 colin 321747 %_tmpfilescreate mysql
619 alien 166284 %_post_service mysqld
620    
621     %preun
622     %_preun_service mysqld
623    
624     %postun
625 alien 247826 if [ "$1" = "1" ]; then
626 alien 166284 if [ -f /var/lock/subsys/mysqld ]; then
627     %{_initrddir}/mysqld restart > /dev/null 2>/dev/null || :
628     fi
629     fi
630    
631     %pre common-core
632     # enable plugins
633     if [ -f %{_sysconfdir}/my.cnf ]; then
634     perl -pi -e "s|^#plugin-load|plugin-load|g" %{_sysconfdir}/my.cnf
635     perl -pi -e "s|^#federated|federated|g" %{_sysconfdir}/my.cnf
636 alien 192139 # switch to federatedx provider
637     perl -pi -e "s|;ha_federated\.so$|;ha_federatedx\.so|g" %{_sysconfdir}/my.cnf
638 alien 166284 fi
639    
640     %files
641     %doc README.urpmi
642     %{_initrddir}/mysqld
643 colin 321747 %{_tmpfilesdir}/mysql.conf
644     %{_unitdir}/mysqld.service
645 alien 166284 %{_sbindir}/mysqld-prepare-db-dir
646     %{_sbindir}/mysqld-wait-ready
647     %dir %{_libdir}/mysql/plugin
648 blino 429630 %{_libdir}/mysql/plugin/query_cache_info.so
649 alien 188246 # authentication plugins
650 alien 166284 %{_libdir}/mysql/plugin/auth_socket.so
651 alien 279953 %{_libdir}/mysql/plugin/auth_pam.so
652 alien 166284 %{_libdir}/mysql/plugin/dialog.so
653 alien 188246 %{_libdir}/mysql/plugin/mysql_clear_password.so
654     # replication plugins
655     %{_libdir}/mysql/plugin/semisync_master.so
656     %{_libdir}/mysql/plugin/semisync_slave.so
657     # storage engines
658 alien 166284 %{_libdir}/mysql/plugin/ha_archive.so
659     %{_libdir}/mysql/plugin/ha_blackhole.so
660     %{_libdir}/mysql/plugin/ha_federatedx.so
661 alien 227543 # sql logging plugin
662     %{_libdir}/mysql/plugin/sql_errlog.so
663 alien 188246 # upstream describes this as "junk"
664     %{_libdir}/mysql/plugin/adt_null.so
665 alien 166284 %{_libdir}/mysql/plugin/mypluglib.so
666     %{_libdir}/mysql/plugin/qa_auth_client.so
667     %{_libdir}/mysql/plugin/qa_auth_interface.so
668     %{_libdir}/mysql/plugin/qa_auth_server.so
669 alien 188246 # example plugins, not usefull at all, removing
670     #%{_libdir}/mysql/plugin/auth_test_plugin.so
671 blino 429629 #%{_libdir}/mysql/plugin/auth_0x0100.so
672 alien 188246 #%{_libdir}/mysql/plugin/dialog_examples.so
673 alien 166284
674 alien 192691 %files -n mysql-MariaDB
675    
676 alien 188246 %files obsolete
677     %{_libdir}/mysql/plugin/ha_innodb.so
678     %{_libdir}/mysql/plugin/ha_federated.so
679    
680     %files feedback
681     %{_libdir}/mysql/plugin/feedback.so
682    
683     %files extra
684     %{_libdir}/mysql/plugin/ha_oqgraph.so
685     %{_libdir}/mysql/plugin/ha_sphinx.so
686 alien 279279 %{_libdir}/mysql/plugin/handlersocket.so
687 alien 188246
688 alien 166284 %files client
689     %config(noreplace) %{_sysconfdir}/mysqlaccess.conf
690     %{_bindir}/msql2mysql
691     %{_bindir}/mysql
692     %{_bindir}/mysqlaccess
693     %{_bindir}/mysqladmin
694     %{_bindir}/mysqlanalyze
695     %{_bindir}/mysqlbinlog
696     %{_bindir}/mysqlcheck
697     %{_bindir}/mysqldump
698     %{_bindir}/mysqldumpslow
699     %{_bindir}/mysql_find_rows
700     %{_bindir}/mysqlimport
701     %{_bindir}/mysqloptimize
702     %{_bindir}/mysqlrepair
703     %{_bindir}/mysqlshow
704     %{_bindir}/mysqlslap
705     %{_bindir}/mysql_waitpid
706     %{_mandir}/man1/msql2mysql.1*
707     %{_mandir}/man1/myisam_ftdump.1*
708     %{_mandir}/man1/mysql.1*
709     %{_mandir}/man1/mysqlaccess.1*
710     %{_mandir}/man1/mysqladmin.1*
711     %{_mandir}/man1/mysqlbinlog.1*
712     %{_mandir}/man1/mysqlcheck.1*
713     %{_mandir}/man1/mysqldump.1*
714     %{_mandir}/man1/mysqldumpslow.1*
715     %{_mandir}/man1/mysql_find_rows.1*
716     %{_mandir}/man1/mysqlimport.1*
717     %{_mandir}/man1/mysqlshow.1*
718     %{_mandir}/man1/mysql_waitpid.1*
719    
720     %files bench
721     %doc build/sql-bench/README
722     %{_bindir}/my_safe_process
723     %{_bindir}/mysql_client_test
724     %{_bindir}/mysql_client_test_embedded
725     %{_bindir}/mysqltest_embedded
726     %{_datadir}/mysql/sql-bench
727     %attr(-,mysql,mysql) %{_datadir}/mysql/mysql-test
728     %{_mandir}/man1/mysql-stress-test.pl.1*
729     %{_mandir}/man1/mysql-test-run.pl.1*
730     %{_mandir}/man1/mysql_client_test.1*
731     %{_mandir}/man1/mysql_client_test_embedded.1*
732     %{_mandir}/man1/mysqltest.1*
733     %{_mandir}/man1/mysqltest_embedded.1*
734    
735     %files core
736     %{_sbindir}/mysqld
737    
738     %files common-core
739     %config(noreplace) %{_sysconfdir}/my.cnf
740     %dir %{_datadir}/mysql
741     %{_datadir}/mysql/english
742     %{_datadir}/mysql/charsets
743    
744     %files common
745     %doc README COPYING
746     %config(noreplace) %{_sysconfdir}/sysconfig/mysqld
747     %{_bindir}/aria_chk
748     %{_bindir}/aria_dump_log
749     %{_bindir}/aria_ftdump
750     %{_bindir}/aria_pack
751     %{_bindir}/aria_read_log
752     %{_bindir}/innochecksum
753     %{_bindir}/myisamchk
754     %{_bindir}/myisam_ftdump
755     %{_bindir}/myisamlog
756     %{_bindir}/myisampack
757     %{_bindir}/my_print_defaults
758     %{_bindir}/mysqlbug
759     %{_bindir}/mysql_convert_table_format
760     %{_bindir}/mysqld_multi
761     %{_bindir}/mysqld_safe
762     %{_bindir}/mysql_fix_extensions
763     %{_bindir}/mysqlhotcopy
764     %{_bindir}/mysql_install_db
765 alien 230190 %{_bindir}/mysql_plugin
766 alien 166284 %{_bindir}/mysql_secure_installation
767     %{_bindir}/mysql_setpermission
768     %{_bindir}/mysqltest
769     %{_bindir}/mysql_tzinfo_to_sql
770     %{_bindir}/mysql_upgrade
771     %{_bindir}/mysql_zap
772 alien 279279 %{_bindir}/mytop
773 alien 166284 %{_bindir}/perror
774     %{_bindir}/replace
775     %{_bindir}/resolveip
776     %{_bindir}/resolve_stack_dump
777     %attr(0755,%{muser},%{muser}) %dir /var/lib/mysql
778     %attr(0755,%{muser},%{muser}) %dir /var/lib/mysql/mysql
779     %attr(0755,%{muser},%{muser}) %dir /var/lib/mysql/test
780     %attr(0755,%{muser},%{muser}) %dir %{_var}/log/mysqld
781     %{_datadir}/mysql/*.cnf
782     %{_datadir}/mysql/fill_help_tables.sql
783 blino 428547 %{_datadir}/mysql/mysql_performance_tables.sql
784 alien 166284 %{_datadir}/mysql/mysql_system_tables.sql
785     %{_datadir}/mysql/mysql_system_tables_data.sql
786     %{_datadir}/mysql/mysql_test_data_timezone.sql
787     %{_datadir}/mysql/errmsg-utf8.txt
788     %{_datadir}/mysql/czech
789     %{_datadir}/mysql/danish
790     %{_datadir}/mysql/dutch
791     %{_datadir}/mysql/estonian
792     %{_datadir}/mysql/french
793     %{_datadir}/mysql/german
794     %{_datadir}/mysql/greek
795     %{_datadir}/mysql/hungarian
796     %{_datadir}/mysql/italian
797     %{_datadir}/mysql/japanese
798     %{_datadir}/mysql/korean
799     %{_datadir}/mysql/norwegian
800     %{_datadir}/mysql/norwegian-ny
801     %{_datadir}/mysql/polish
802     %{_datadir}/mysql/portuguese
803     %{_datadir}/mysql/romanian
804     %{_datadir}/mysql/russian
805     %{_datadir}/mysql/serbian
806     %{_datadir}/mysql/slovak
807     %{_datadir}/mysql/spanish
808     %{_datadir}/mysql/swedish
809     %{_datadir}/mysql/ukrainian
810     %{_mandir}/man1/innochecksum.1*
811     %{_mandir}/man1/myisamchk.1*
812     %{_mandir}/man1/myisamlog.1*
813     %{_mandir}/man1/myisampack.1*
814     %{_mandir}/man1/my_print_defaults.1*
815 alien 279279 %{_mandir}/man1/mysqlbug.1*
816 alien 166284 %{_mandir}/man1/mysql_convert_table_format.1*
817     %{_mandir}/man1/mysqld_multi.1*
818     %{_mandir}/man1/mysqld_safe.1*
819     %{_mandir}/man1/mysql_fix_extensions.1*
820     %{_mandir}/man1/mysql_fix_privilege_tables.1*
821     %{_mandir}/man1/mysqlhotcopy.1*
822     %{_mandir}/man1/mysql_install_db.1*
823     %{_mandir}/man1/mysqlman.1*
824     %{_mandir}/man1/mysql_secure_installation.1*
825     %{_mandir}/man1/mysql.server.1*
826     %{_mandir}/man1/mysql_setpermission.1*
827     %{_mandir}/man1/mysqlslap.1*
828     %{_mandir}/man1/mysql_tzinfo_to_sql.1*
829     %{_mandir}/man1/mysql_upgrade.1*
830     %{_mandir}/man1/mysql_zap.1*
831     %{_mandir}/man1/perror.1*
832     %{_mandir}/man1/replace.1*
833     %{_mandir}/man1/resolveip.1*
834     %{_mandir}/man1/resolve_stack_dump.1*
835     %{_mandir}/man8/mysqld.8*
836     %{_mandir}/man8/mysqlmanager.8*
837    
838     %files -n %{libname}
839     %{_libdir}/libmysqlclient.so.%{major}*
840    
841     %files -n %{develname}
842     %doc INSTALL-SOURCE
843     %multiarch %{multiarch_bindir}/mysql_config
844     %{_bindir}/mysql_config
845     %{_libdir}/libmysqlclient_r.so
846     %{_libdir}/libmysqlclient.so
847     %dir %{_includedir}/mysql
848     %dir %{_includedir}/mysql/psi
849     %{_includedir}/mysql/*.h
850 fwang 259273 %{_includedir}/mysql/private/*.h
851 alien 279279 %{_includedir}/mysql/private/atomic/*.h
852 alien 166284 %{_includedir}/mysql/psi/*.h
853     %multiarch %{multiarch_includedir}/mysql/my_config.h
854 alien 279279 %{_mandir}/man1/comp_err.1*
855 alien 166284 %{_mandir}/man1/mysql_config.1*
856     %{_datadir}/aclocal/mysql.m4
857 alien 188299 # mysqlservices library is static, because it doesn't contain any code
858     # itself, and is meant to be statically linked to all plugins.
859     %{_libdir}/libmysqlservices.a
860 alien 166284
861     %files -n %{libmariadbembedded}
862     %doc README COPYING
863 alien 182848 %{_libdir}/libmysqld.so.%{major}
864     %{_libdir}/libmysqld.so.%{libmysqlembedded_major}*
865 alien 166284
866     %files -n %{libmariadbembedded_devel}
867     %{_libdir}/libmysqld.so
868     %{_bindir}/mysql_client_test_embedded
869     %{_bindir}/mysqltest_embedded
870     %{_mandir}/man1/mysql_client_test_embedded.1*
871     %{_mandir}/man1/mysqltest_embedded.1*

  ViewVC Help
Powered by ViewVC 1.1.30