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

  ViewVC Help
Powered by ViewVC 1.1.30