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

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

Parent Directory Parent Directory | Revision Log Revision Log


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

  ViewVC Help
Powered by ViewVC 1.1.30