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

Contents of /cauldron/mariadb/pristine/SPECS/mariadb.spec

Parent Directory Parent Directory | Revision Log Revision Log


Revision 428547 - (show annotations) (download)
Mon May 27 01:42:57 2013 UTC (10 years, 10 months ago) by blino
Original Path: cauldron/mariadb/current/SPECS/mariadb.spec
File size: 29424 byte(s)
package mysql_performance_tables.sql

1 #(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 %define libmysqlembedded_major 0
36 %define libmysqlembedded_minor 0.1
37 %define libname %mklibname mariadb %{major}
38 %define libmariadbservices %mklibname mariadbservices
39 %define libmariadbembedded %mklibname mariadb-embedded %{major}
40 %define develname %mklibname -d mariadb
41 %define old_staticdevelname %mklibname -d -s mariadb
42 %define libmariadbembedded_devel %mklibname -d mariadb-embedded
43
44 %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 %define mirror http://ftp.osuosl.org/pub/mariadb
51
52 %define muser mysql
53 Summary: A very fast and reliable SQL database engine
54 Name: mariadb
55 Version: 5.5.31
56 Release: %mkrel 1
57 Group: Databases
58 License: GPLv2 with exceptions
59 URL: http://mariadb.org/
60 Source0: %{mirror}/%{name}-%{version}/kvm-tarbake-jaunty-x86/%{name}-%{version}.tar.gz
61 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 # mageia patches
82 Patch120: mariadb-5.5.25-forgotten-files.patch
83 Patch132: mariadb-5.5-no-anonymous-user.patch
84
85 Requires(post): systemd >= %{systemd_required_version}
86 Requires(post): rpm-helper >= 0.24.8-1
87 Requires(preun): rpm-helper >= 0.24.8-1
88 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 Provides: mysql = %{version}-%{release}
98 Obsoletes: mysql < %{version}-%{release}
99 Obsoletes: %{libmariadbservices} < 5.5.18-0.3194.20111227.1
100 Obsoletes: %{libmysqlservices} < %{version}-%{release}
101 Conflicts: %{name}-extra%{_isa} < %{version}-%{release}
102 Conflicts: %{name}-feedback%{_isa} < %{version}-%{release}
103 Conflicts: %{name}-obsolete%{_isa} < %{version}-%{release}
104 Suggests: %{name}-extra%{_isa}
105 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 BuildRequires: boost-devel
123 BuildRequires: libaio-devel
124 BuildRequires: pam-devel
125 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 - FederatedX Storage Engine (Federated replacement)
140 - Heap Storage Engine
141 - MyISAM Storage Engine
142 - MyISAMMRG Storage Engine
143 - Partition Storage Engine
144 - Perfschema Storage Engine
145 - 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 - Sphinx Storage Engine
151
152 The feedback storage engine is provided by the mariadb-feedback package
153
154 - 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 %package -n mysql-MariaDB
162 Summary: A MySQL drop-in replacement
163 Group: System/Servers
164 Requires: %{name}%{_isa}
165
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 %package feedback
174 Summary: MariaDB feedback storage engine
175 Group: System/Servers
176 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
177 Conflicts: %{name}-common-core%{_isa} < %{version}-%{release}
178
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 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
187 Conflicts: %{name}-common-core%{_isa} < %{version}-%{release}
188
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 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
196 Conflicts: %{name}-common-core%{_isa} < %{version}-%{release}
197 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 %package core
205 Summary: Server core binary
206 Group: System/Servers
207 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
208 Provides: mysql-core = %{version}-%{release}
209 Obsoletes: mysql-core < %{version}-%{release}
210
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 Provides: mysql-common-core = %{version}-%{release}
219 Obsoletes: mysql-common-core < %{version}-%{release}
220
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 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 Provides: mysql-common = %{version}-%{release}
236 Obsoletes: mysql-common < %{version}-%{release}
237
238 %description common
239 Common files for the MariaDB database server.
240
241 %package client
242 Summary: Client
243 Group: Databases
244 Requires(post): %{libname}%{_isa} >= %{version}-%{release}
245 Requires(preun): %{libname}%{_isa} >= %{version}-%{release}
246 Requires: %{libname}%{_isa} >= %{version}-%{release}
247 Provides: mysql-client = %{version}-%{release}
248 Obsoletes: mysql-client < %{version}-%{release}
249
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 Requires(post): %{name}-client%{_isa} >= %{version}-%{release}
257 Requires(preun): %{name}-client%{_isa} >= %{version}-%{release}
258 Requires: %{name}-client%{_isa} >= %{version}-%{release}
259 Suggests: %{name}%{_isa} >= %{version}-%{release}
260 Provides: mysql-bench = %{version}-%{release}
261 Obsoletes: mysql-bench < %{version}-%{release}
262
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 Provides: %{mysql_libname} = %{version}-%{release}
272 Obsoletes: %{mysql_libname} < %{version}-%{release}
273
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 Requires(post): %{libname} >= %{version}-%{release}
282 Requires(preun): %{libname} >= %{version}-%{release}
283 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 Requires: %{libname} = %{version}-%{release}
288 Requires: %{name}-common%{_isa} >= %{version}-%{release}
289 Requires: %{name}-client%{_isa} >= %{version}-%{release}
290 Provides: %{name}-devel = %{version}-%{release}
291 Provides: %{libname}-devel = %{version}-%{release}
292 Obsoletes: %{libname}-devel < %{version}-%{release}
293 Obsoletes: %{old_staticdevelname} < %{version}-%{release}
294 Provides: %{mysql_develname} = %{version}-%{release}
295 Obsoletes: %{mysql_develname} < %{version}-%{release}
296 Provides: mysql-devel = %{version}-%{release}
297
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 Obsoletes: %{name}-embedded < %{version}-%{release}
307 Provides: %{libmysqlembedded} = %{version}-%{release}
308 Obsoletes: %{libmysqlembedded} < %{version}-%{release}
309
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 Obsoletes: %{name}-embedded-devel < %{version}-%{release}
323 Requires: %{libmariadbembedded} = %{version}-%{release}
324 Requires: %{develname} = %{version}-%{release}
325 Provides: %{libmysqlembedded_devel} = %{version}-%{release}
326 Obsoletes: %{libmysqlembedded_devel} < %{version}-%{release}
327 Provides: mysql-embedded-devel = %{version}-%{release}
328
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
338 %prep
339 %setup -q
340 %apply_patches
341
342 mkdir -p Mageia
343 cp %{SOURCE2} Mageia/mysqld.sysconfig
344 cp %{SOURCE3} Mageia/my.cnf
345
346 # 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 # 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 rm -f mysql-test/t/file_contents.test
367
368 # fix distribution name
369 sed -i 's/Source distribution/%{_vendor} MariaDB Server/' mysql-test/suite/percona/innodb_sys_index.result
370
371 # 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 -DWITH_PLUGIN_PBXT=0 \
419 -DFEATURE_SET="community" \
420 -DCOMPILATION_COMMENT="%{_vendor} MariaDB Server"
421
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 # exclude loaddata7 from being converted
444 export EXCLUDE_FROM_EOL_CONVERSION="std_data/loaddata7.dat"
445
446 # 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 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
458 # bork
459 mv %{buildroot}%{_bindir}/mysqlaccess.conf %{buildroot}%{_sysconfdir}/
460 chmod 644 %{buildroot}%{_sysconfdir}/mysqlaccess.conf
461 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 # Remove libmysqld.a, + hardlink libmysqld.so.%{libmysqlembedded_major} so that it's provided
484 rm -f %{buildroot}%{_libdir}/libmysqld.a
485 ln %{buildroot}%{_libdir}/libmysqld.so.%{major} %{buildroot}%{_libdir}/libmysqld.so.%{libmysqlembedded_major}.%{libmysqlembedded_minor}
486 ln -s libmysqld.so.%{libmysqlembedded_major}.%{libmysqlembedded_minor} %{buildroot}%{_libdir}/libmysqld.so.%{libmysqlembedded_major}
487
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 # mysql client statically built against a local embedded library, pretty useless
505 rm -f %{buildroot}%{_bindir}/mysql_embedded
506
507 # 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 rm -f %{buildroot}%{_libdir}/mysql/plugin/daemon_example.ini
512
513 # remove more useless plugins
514 rm -f %{buildroot}%{_libdir}/mysql/plugin/auth_test_plugin.so
515 rm -f %{buildroot}%{_libdir}/mysql/plugin/dialog_examples.so
516
517 # no RHEL4 selinux files for us
518 rm -rf %{buildroot}%{_datadir}/mysql/SELinux
519
520 # house cleaning
521 rm -rf %{buildroot}%{_datadir}/info
522 rm -f %{buildroot}%{_bindir}/client_test
523 rm -f %{buildroot}%{_bindir}/make_win_binary_distribution
524 rm -f %{buildroot}%{_bindir}/make_win_src_distribution
525 rm -f %{buildroot}%{_datadir}/mysql/binary-configure
526 rm -f %{buildroot}%{_datadir}/mysql/config.huge.ini
527 rm -f %{buildroot}%{_datadir}/mysql/config.medium.ini
528 rm -f %{buildroot}%{_datadir}/mysql/config.small.ini
529 rm -f %{buildroot}%{_datadir}/mysql/mysqld_multi.server
530 rm -f %{buildroot}%{_datadir}/mysql/mysql-log-rotate
531 rm -f %{buildroot}%{_datadir}/mysql/mysql.server
532 rm -f %{buildroot}%{_datadir}/mysql/ndb-config-2-node.ini
533 rm -f %{buildroot}%{_datadir}/mysql/binary-configure
534 rm -f %{buildroot}%{_mandir}/man1/make_win_bin_dist.1*
535 rm -f %{buildroot}%{_mandir}/man1/make_win_src_distribution.1*
536 rm -f %{buildroot}%{_datadir}/mysql/magic
537
538 # no idea how to fix this
539 rm -rf %{buildroot}%{_prefix}/data
540 rm -rf %{buildroot}%{_prefix}/docs
541 rm -rf %{buildroot}%{_prefix}/scripts
542 rm -f %{buildroot}%{_prefix}/COPYING
543 rm -f %{buildroot}%{_prefix}/COPYING.LESSER
544 rm -f %{buildroot}%{_prefix}/INSTALL-BINARY
545 rm -f %{buildroot}%{_prefix}/README
546
547 %multiarch_binaries %{buildroot}%{_bindir}/mysql_config
548 %multiarch_includes %{buildroot}%{_includedir}/mysql/my_config.h
549
550 cat > README.urpmi <<EOF
551
552 NOTE: MariaDB is installed without root password, it is recommended to set the
553 root password with the following command as soon as possible:
554
555 mysqladmin password
556
557 The initscript used to start mysql has been reverted to use the one shipped
558 by MariaDB. This means the following changes:
559
560 * The generation of the initial system mysql database is now done when mysql
561 is started from the initscript and only if the /var/lib/mysql/mysql
562 directory is empty (mysql_install_db). Previousely this was quite hidden and
563 silently done at (rpm) install time. As a consequence to this change you may
564 have to perform some manual tasks to upgrade the mysql system database and
565 such. So, doing something like this might help you:
566
567 /etc/init.d/mysqld stop
568 TMPDIR=/var/tmp mysql_install_db
569 mysql_upgrade
570
571 The cluster functionalities (ndb) has been deactivated and will be removed in
572 future mysql versions. Oracle has a new product named mysql-cluster that
573 replaces the cluster functionalities.
574
575 The mysql-common-core package ships with a default /etc/my.cnf file that is
576 based on the my-medium.cnf file that comes with the source code.
577 EOF
578
579 ################################################################################
580 # run the tests
581 %if %{build_test}
582 # disable failing tests
583 pushd build/mysql-test
584 export LANG=C
585 export LC_ALL=C
586 export LANGUAGE=C
587 perl ./mysql-test-run.pl \
588 --mtr-build-thread="$((${RANDOM} % 100))" \
589 --retry=0 \
590 --ssl \
591 --big-test \
592 --force \
593 --max-test-fail=0 \
594 --testcase-timeout=60 \
595 --suite-timeout=1200 || false
596 popd
597 %endif
598
599 %pre
600 # enable plugins
601 if [ -f %{_sysconfdir}/my.cnf ]; then
602 perl -pi -e "s|^#plugin-load|plugin-load|g" %{_sysconfdir}/my.cnf
603 perl -pi -e "s|^#federated|federated|g" %{_sysconfdir}/my.cnf
604 # switch to federatedx provider
605 perl -pi -e "s|;ha_federated\.so$|;ha_federatedx\.so|g" %{_sysconfdir}/my.cnf
606 fi
607
608 %pre common
609 # delete the mysql group if no mysql user is found, before adding the user
610 if [ -z "`getent passwd %{muser}`" ] && ! [ -z "`getent group %{muser}`" ]; then
611 %{_sbindir}/groupdel %{muser} 2> /dev/null || :
612 fi
613
614 %_pre_useradd %{muser} /var/lib/mysql /bin/bash
615
616 %post
617 %_tmpfilescreate mysql
618 %_post_service mysqld
619
620 %preun
621 %_preun_service mysqld
622
623 %postun
624 if [ "$1" = "1" ]; then
625 if [ -f /var/lock/subsys/mysqld ]; then
626 %{_initrddir}/mysqld restart > /dev/null 2>/dev/null || :
627 fi
628 fi
629
630 %pre common-core
631 # enable plugins
632 if [ -f %{_sysconfdir}/my.cnf ]; then
633 perl -pi -e "s|^#plugin-load|plugin-load|g" %{_sysconfdir}/my.cnf
634 perl -pi -e "s|^#federated|federated|g" %{_sysconfdir}/my.cnf
635 # switch to federatedx provider
636 perl -pi -e "s|;ha_federated\.so$|;ha_federatedx\.so|g" %{_sysconfdir}/my.cnf
637 fi
638
639 %files
640 %doc README.urpmi
641 %{_initrddir}/mysqld
642 %{_tmpfilesdir}/mysql.conf
643 %{_unitdir}/mysqld.service
644 %{_sbindir}/mysqld-prepare-db-dir
645 %{_sbindir}/mysqld-wait-ready
646 %dir %{_libdir}/mysql/plugin
647 # authentication plugins
648 %{_libdir}/mysql/plugin/auth_socket.so
649 %{_libdir}/mysql/plugin/auth_pam.so
650 %{_libdir}/mysql/plugin/dialog.so
651 %{_libdir}/mysql/plugin/mysql_clear_password.so
652 # replication plugins
653 %{_libdir}/mysql/plugin/semisync_master.so
654 %{_libdir}/mysql/plugin/semisync_slave.so
655 # storage engines
656 %{_libdir}/mysql/plugin/ha_archive.so
657 %{_libdir}/mysql/plugin/ha_blackhole.so
658 %{_libdir}/mysql/plugin/ha_federatedx.so
659 # sql logging plugin
660 %{_libdir}/mysql/plugin/sql_errlog.so
661 # upstream describes this as "junk"
662 %{_libdir}/mysql/plugin/adt_null.so
663 %{_libdir}/mysql/plugin/mypluglib.so
664 %{_libdir}/mysql/plugin/qa_auth_client.so
665 %{_libdir}/mysql/plugin/qa_auth_interface.so
666 %{_libdir}/mysql/plugin/qa_auth_server.so
667 # example plugins, not usefull at all, removing
668 #%{_libdir}/mysql/plugin/auth_test_plugin.so
669 #%{_libdir}/mysql/plugin/dialog_examples.so
670
671 %files -n mysql-MariaDB
672
673 %files obsolete
674 %{_libdir}/mysql/plugin/ha_innodb.so
675 %{_libdir}/mysql/plugin/ha_federated.so
676
677 %files feedback
678 %{_libdir}/mysql/plugin/feedback.so
679
680 %files extra
681 %{_libdir}/mysql/plugin/ha_oqgraph.so
682 %{_libdir}/mysql/plugin/ha_sphinx.so
683 %{_libdir}/mysql/plugin/handlersocket.so
684
685 %files client
686 %config(noreplace) %{_sysconfdir}/mysqlaccess.conf
687 %{_bindir}/msql2mysql
688 %{_bindir}/mysql
689 %{_bindir}/mysqlaccess
690 %{_bindir}/mysqladmin
691 %{_bindir}/mysqlanalyze
692 %{_bindir}/mysqlbinlog
693 %{_bindir}/mysqlcheck
694 %{_bindir}/mysqldump
695 %{_bindir}/mysqldumpslow
696 %{_bindir}/mysql_find_rows
697 %{_bindir}/mysqlimport
698 %{_bindir}/mysqloptimize
699 %{_bindir}/mysqlrepair
700 %{_bindir}/mysqlshow
701 %{_bindir}/mysqlslap
702 %{_bindir}/mysql_waitpid
703 %{_mandir}/man1/msql2mysql.1*
704 %{_mandir}/man1/myisam_ftdump.1*
705 %{_mandir}/man1/mysql.1*
706 %{_mandir}/man1/mysqlaccess.1*
707 %{_mandir}/man1/mysqladmin.1*
708 %{_mandir}/man1/mysqlbinlog.1*
709 %{_mandir}/man1/mysqlcheck.1*
710 %{_mandir}/man1/mysqldump.1*
711 %{_mandir}/man1/mysqldumpslow.1*
712 %{_mandir}/man1/mysql_find_rows.1*
713 %{_mandir}/man1/mysqlimport.1*
714 %{_mandir}/man1/mysqlshow.1*
715 %{_mandir}/man1/mysql_waitpid.1*
716
717 %files bench
718 %doc build/sql-bench/README
719 %{_bindir}/my_safe_process
720 %{_bindir}/mysql_client_test
721 %{_bindir}/mysql_client_test_embedded
722 %{_bindir}/mysqltest_embedded
723 %{_datadir}/mysql/sql-bench
724 %attr(-,mysql,mysql) %{_datadir}/mysql/mysql-test
725 %{_mandir}/man1/mysql-stress-test.pl.1*
726 %{_mandir}/man1/mysql-test-run.pl.1*
727 %{_mandir}/man1/mysql_client_test.1*
728 %{_mandir}/man1/mysql_client_test_embedded.1*
729 %{_mandir}/man1/mysqltest.1*
730 %{_mandir}/man1/mysqltest_embedded.1*
731
732 %files core
733 %{_sbindir}/mysqld
734
735 %files common-core
736 %config(noreplace) %{_sysconfdir}/my.cnf
737 %dir %{_datadir}/mysql
738 %{_datadir}/mysql/english
739 %{_datadir}/mysql/charsets
740
741 %files common
742 %doc README COPYING
743 %config(noreplace) %{_sysconfdir}/sysconfig/mysqld
744 %{_bindir}/aria_chk
745 %{_bindir}/aria_dump_log
746 %{_bindir}/aria_ftdump
747 %{_bindir}/aria_pack
748 %{_bindir}/aria_read_log
749 %{_bindir}/innochecksum
750 %{_bindir}/myisamchk
751 %{_bindir}/myisam_ftdump
752 %{_bindir}/myisamlog
753 %{_bindir}/myisampack
754 %{_bindir}/my_print_defaults
755 %{_bindir}/mysqlbug
756 %{_bindir}/mysql_convert_table_format
757 %{_bindir}/mysqld_multi
758 %{_bindir}/mysqld_safe
759 %{_bindir}/mysql_fix_extensions
760 %{_bindir}/mysqlhotcopy
761 %{_bindir}/mysql_install_db
762 %{_bindir}/mysql_plugin
763 %{_bindir}/mysql_secure_installation
764 %{_bindir}/mysql_setpermission
765 %{_bindir}/mysqltest
766 %{_bindir}/mysql_tzinfo_to_sql
767 %{_bindir}/mysql_upgrade
768 %{_bindir}/mysql_zap
769 %{_bindir}/mytop
770 %{_bindir}/perror
771 %{_bindir}/replace
772 %{_bindir}/resolveip
773 %{_bindir}/resolve_stack_dump
774 %attr(0755,%{muser},%{muser}) %dir /var/lib/mysql
775 %attr(0755,%{muser},%{muser}) %dir /var/lib/mysql/mysql
776 %attr(0755,%{muser},%{muser}) %dir /var/lib/mysql/test
777 %attr(0755,%{muser},%{muser}) %dir %{_var}/log/mysqld
778 %{_datadir}/mysql/*.cnf
779 %{_datadir}/mysql/fill_help_tables.sql
780 %{_datadir}/mysql/mysql_performance_tables.sql
781 %{_datadir}/mysql/mysql_system_tables.sql
782 %{_datadir}/mysql/mysql_system_tables_data.sql
783 %{_datadir}/mysql/mysql_test_data_timezone.sql
784 %{_datadir}/mysql/errmsg-utf8.txt
785 %{_datadir}/mysql/czech
786 %{_datadir}/mysql/danish
787 %{_datadir}/mysql/dutch
788 %{_datadir}/mysql/estonian
789 %{_datadir}/mysql/french
790 %{_datadir}/mysql/german
791 %{_datadir}/mysql/greek
792 %{_datadir}/mysql/hungarian
793 %{_datadir}/mysql/italian
794 %{_datadir}/mysql/japanese
795 %{_datadir}/mysql/korean
796 %{_datadir}/mysql/norwegian
797 %{_datadir}/mysql/norwegian-ny
798 %{_datadir}/mysql/polish
799 %{_datadir}/mysql/portuguese
800 %{_datadir}/mysql/romanian
801 %{_datadir}/mysql/russian
802 %{_datadir}/mysql/serbian
803 %{_datadir}/mysql/slovak
804 %{_datadir}/mysql/spanish
805 %{_datadir}/mysql/swedish
806 %{_datadir}/mysql/ukrainian
807 %{_mandir}/man1/innochecksum.1*
808 %{_mandir}/man1/myisamchk.1*
809 %{_mandir}/man1/myisamlog.1*
810 %{_mandir}/man1/myisampack.1*
811 %{_mandir}/man1/my_print_defaults.1*
812 %{_mandir}/man1/mysqlbug.1*
813 %{_mandir}/man1/mysql_convert_table_format.1*
814 %{_mandir}/man1/mysqld_multi.1*
815 %{_mandir}/man1/mysqld_safe.1*
816 %{_mandir}/man1/mysql_fix_extensions.1*
817 %{_mandir}/man1/mysql_fix_privilege_tables.1*
818 %{_mandir}/man1/mysqlhotcopy.1*
819 %{_mandir}/man1/mysql_install_db.1*
820 %{_mandir}/man1/mysqlman.1*
821 %{_mandir}/man1/mysql_secure_installation.1*
822 %{_mandir}/man1/mysql.server.1*
823 %{_mandir}/man1/mysql_setpermission.1*
824 %{_mandir}/man1/mysqlslap.1*
825 %{_mandir}/man1/mysql_tzinfo_to_sql.1*
826 %{_mandir}/man1/mysql_upgrade.1*
827 %{_mandir}/man1/mysql_zap.1*
828 %{_mandir}/man1/perror.1*
829 %{_mandir}/man1/replace.1*
830 %{_mandir}/man1/resolveip.1*
831 %{_mandir}/man1/resolve_stack_dump.1*
832 %{_mandir}/man8/mysqld.8*
833 %{_mandir}/man8/mysqlmanager.8*
834
835 %files -n %{libname}
836 %{_libdir}/libmysqlclient.so.%{major}*
837
838 %files -n %{develname}
839 %doc INSTALL-SOURCE
840 %multiarch %{multiarch_bindir}/mysql_config
841 %{_bindir}/mysql_config
842 %{_libdir}/libmysqlclient_r.so
843 %{_libdir}/libmysqlclient.so
844 %dir %{_includedir}/mysql
845 %dir %{_includedir}/mysql/psi
846 %{_includedir}/mysql/*.h
847 %{_includedir}/mysql/private/*.h
848 %{_includedir}/mysql/private/atomic/*.h
849 %{_includedir}/mysql/psi/*.h
850 %multiarch %{multiarch_includedir}/mysql/my_config.h
851 %{_mandir}/man1/comp_err.1*
852 %{_mandir}/man1/mysql_config.1*
853 %{_datadir}/aclocal/mysql.m4
854 # mysqlservices library is static, because it doesn't contain any code
855 # itself, and is meant to be statically linked to all plugins.
856 %{_libdir}/libmysqlservices.a
857
858 %files -n %{libmariadbembedded}
859 %doc README COPYING
860 %{_libdir}/libmysqld.so.%{major}
861 %{_libdir}/libmysqld.so.%{libmysqlembedded_major}*
862
863 %files -n %{libmariadbembedded_devel}
864 %{_libdir}/libmysqld.so
865 %{_bindir}/mysql_client_test_embedded
866 %{_bindir}/mysqltest_embedded
867 %{_mandir}/man1/mysql_client_test_embedded.1*
868 %{_mandir}/man1/mysqltest_embedded.1*

  ViewVC Help
Powered by ViewVC 1.1.30