/[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 230190 - (show annotations) (download)
Tue Apr 10 23:50:42 2012 UTC (11 years, 11 months ago) by alien
Original Path: cauldron/mariadb/current/SPECS/mariadb.spec
File size: 28827 byte(s)
- Update to final 5.5.23 version
- mysql_plugin is required for some tests
- change default to innodb, in accordance with upstream
- remove more upstreamed patch
- add conflicts so future updates will have optionally dependant packages in a single transaction

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.23
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
87 Requires(preun): rpm-helper
88 Requires(pre): rpm-helper
89 Requires(postun): rpm-helper
90 Requires(post): %{name}-common%{_isa} = %{version}-%{release}
91 Requires(preun): %{name}-common%{_isa} = %{version}-%{release}
92 Requires(post): %{name}-client%{_isa} = %{version}-%{release}
93 Requires(preun): %{name}-client%{_isa} = %{version}-%{release}
94 Requires(postun): %{name}-common%{_isa} = %{version}-%{release}
95 Requires(postun): %{name}-client%{_isa} = %{version}-%{release}
96 Requires: %{name}-common%{_isa} = %{version}-%{release}
97 Requires: %{name}-core%{_isa} = %{version}-%{release}
98 Requires: %{name}-client%{_isa} = %{version}-%{release}
99 Provides: mysql = %{version}-%{release}
100 Obsoletes: mysql < 5.5.18
101 Obsoletes: %{libmariadbservices} < 5.5.18-0.3194.20111227.1
102 Obsoletes: %{libmysqlservices} < 5.5.18
103 Conflicts: %{name}-extra%{_isa} < %{version}-%{release}
104 Conflicts: %{name}-feedback%{_isa} < %{version}-%{release}
105 Conflicts: %{name}-obsolete%{_isa} < %{version}-%{release}
106 Suggests: %{name}-extra%{_isa}
107 BuildRequires: bison
108 BuildRequires: cmake
109 BuildRequires: doxygen
110 BuildRequires: glibc-devel
111 BuildRequires: libaio-devel
112 BuildRequires: libstdc++-devel
113 BuildRequires: libtermcap-devel
114 BuildRequires: multiarch-utils >= 1.0.3
115 BuildRequires: ncurses-devel
116 BuildRequires: openssl-devel
117 BuildRequires: wrap-devel
118 BuildRequires: python
119 BuildRequires: systemtap
120 BuildRequires: tetex
121 BuildRequires: texinfo
122 BuildRequires: xfs-devel
123 BuildRequires: zlib-devel
124 BuildRequires: boost-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 < 5.5.18
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 < 5.5.18
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 < 5.5.18
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 < 5.5.18
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 Provides: mysql-bench = %{version}-%{release}
260 Obsoletes: mysql-bench < 5.5.18
261
262 %description bench
263 This package contains MariaDB benchmark scripts and data.
264
265 %package -n %{libname}
266 Summary: Shared libraries
267 Group: System/Libraries
268 Provides: %{name}-shared-libs = %{version}-%{release}
269 Provides: %{name}-shared = %{version}-%{release}
270 Provides: %{mysql_libname} = %{version}-%{release}
271 Obsoletes: %{mysql_libname} < 5.5.18
272
273 %description -n %{libname}
274 This package contains the shared libraries (*.so*) which certain languages and
275 applications need to dynamically load and use MariaDB.
276
277 %package -n %{develname}
278 Summary: Development header files and libraries
279 Group: Development/Other
280 Requires(post): %{libname} >= %{version}-%{release}
281 Requires(preun): %{libname} >= %{version}-%{release}
282 Requires(post): %{name}-common%{_isa} >= %{version}-%{release}
283 Requires(preun): %{name}-common%{_isa} >= %{version}-%{release}
284 Requires(post): %{name}-client%{_isa} >= %{version}-%{release}
285 Requires(preun): %{name}-client%{_isa} >= %{version}-%{release}
286 Requires: %{libname} = %{version}-%{release}
287 Requires: %{name}-common%{_isa} >= %{version}-%{release}
288 Requires: %{name}-client%{_isa} >= %{version}-%{release}
289 Provides: %{name}-devel = %{version}-%{release}
290 Provides: %{libname}-devel = %{version}-%{release}
291 Obsoletes: %{libname}-devel < 5.5.18
292 Obsoletes: %{old_staticdevelname} < 5.5.10
293 Provides: %{mysql_develname} = %{version}-%{release}
294 Obsoletes: %{mysql_develname} < 5.5.18
295 Provides: mysql-devel = %{version}-%{release}
296
297 %description -n %{develname}
298 This package contains the development header files and libraries necessary to
299 develop MariaDB client applications.
300
301 %package -n %{libmariadbembedded}
302 Summary: MariaDB as an embeddable library
303 Group: System/Libraries
304 Provides: %{name}-embedded = %{version}-%{release}
305 Obsoletes: %{name}-embedded < 5.5.10-6
306 Provides: %{libmysqlembedded} = %{version}-%{release}
307 Obsoletes: %{libmysqlembedded} < 5.5.18
308
309 %description -n %{libmariadbembedded}
310 MariaDB is a multi-user, multi-threaded SQL database server. This
311 package contains a version of the MariaDB server that can be embedded
312 into a client application instead of running as a separate process.
313
314 The API is identical for the embedded MariaDB version and the client/server
315 version.
316
317 %package -n %{libmariadbembedded_devel}
318 Summary: Development files for MySQL as an embeddable library
319 Group: Development/Other
320 Provides: %{name}-embedded-devel = %{version}-%{release}
321 Obsoletes: %{name}-embedded-devel < 5.5.10-6
322 Requires: %{libmariadbembedded} = %{version}-%{release}
323 Requires: %{develname} = %{version}-%{release}
324 Provides: %{libmysqlembedded_devel} = %{version}-%{release}
325 Obsoletes: %{libmysqlembedded_devel} < 5.5.18
326 Provides: mysql-embedded-devel = %{version}-%{release}
327
328 %description -n %{libmariadbembedded_devel}
329 MariaDB is a multi-user, multi-threaded SQL database server. This
330 package contains files needed for developing and testing with
331 the embedded version of the MariaDB server.
332
333 The API is identical for the embedded MariaDB version and the client/server
334 version.
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 mv %{buildroot}%{_bindir}/mysqlaccess.conf %{buildroot}%{_sysconfdir}/
451 chmod 644 %{buildroot}%{_sysconfdir}/mysqlaccess.conf
452 mv %{buildroot}%{_prefix}/scripts/mysql_install_db %{buildroot}%{_bindir}/
453 mv %{buildroot}%{_datadir}/mysql/aclocal %{buildroot}%{_datadir}/aclocal
454
455 pushd %{buildroot}%{_bindir}
456 ln -sf mysqlcheck mysqlrepair
457 ln -sf mysqlcheck mysqlanalyze
458 ln -sf mysqlcheck mysqloptimize
459 popd
460
461 # nuke -Wl,--as-needed from the mysql_config file
462 perl -pi -e "s|^ldflags=.*|ldflags=\'-rdynamic\'|g" %{buildroot}%{_bindir}/mysql_config
463
464 # cmake generates some completely wacko references to -lprobes_mysql when
465 # building with dtrace support. Haven't found where to shut that off,
466 # so resort to this blunt instrument. While at it, let's not reference
467 # libmysqlclient_r anymore either.
468 sed -e 's/-lprobes_mysql//' -e 's/-lmysqlclient_r/-lmysqlclient/' \
469 %{buildroot}%{_bindir}/mysql_config >mysql_config.tmp
470 cp -f mysql_config.tmp %{buildroot}%{_bindir}/mysql_config
471 chmod 755 %{buildroot}%{_bindir}/mysql_config
472 install -m 0755 -d %{buildroot}/var/lib/mysql
473
474 # Remove libmysqld.a, + hardlink libmysqld.so.%{libmysqlembedded_major} so that it's provided
475 rm -f %{buildroot}%{_libdir}/libmysqld.a
476 ln %{buildroot}%{_libdir}/libmysqld.so.%{major} %{buildroot}%{_libdir}/libmysqld.so.%{libmysqlembedded_major}.%{libmysqlembedded_minor}
477 ln -s libmysqld.so.%{libmysqlembedded_major}.%{libmysqlembedded_minor} %{buildroot}%{_libdir}/libmysqld.so.%{libmysqlembedded_major}
478
479 # libmysqlclient_r is no more. Upstream tries to replace it with symlinks
480 # but that really doesn't work (wrong soname in particular). We'll keep
481 # just the devel libmysqlclient_r.so link, so that rebuilding without any
482 # source change is enough to get rid of dependency on libmysqlclient_r.
483 rm -f %{buildroot}%{_libdir}/libmysqlclient_r.so*
484 ln -s libmysqlclient.so %{buildroot}%{_libdir}/libmysqlclient_r.so
485
486 # remove static libs
487 rm -f %{buildroot}%{_libdir}/libmysqlclient.a
488 rm -f %{buildroot}%{_libdir}/libmysqlclient_r.a
489
490 # mysql-test includes one executable that doesn't belong under /usr/share,
491 # so move it and provide a symlink
492 mv %{buildroot}%{_datadir}/mysql/mysql-test/lib/My/SafeProcess/my_safe_process %{buildroot}%{_bindir}
493 ln -s %{_bindir}/my_safe_process %{buildroot}%{_datadir}/mysql/mysql-test/lib/My/SafeProcess/my_safe_process
494
495 # mysql client statically built against a local embedded library, pretty useless
496 rm -f %{buildroot}%{_bindir}/mysql_embedded
497
498 # this command enables plugins, but needs ini file + configuration in my.cnf
499 # before executing... and oh yeah, mysql must be stopped... => useless
500 # however, apparently tests seem to want it, even thought they don't use it.
501 #rm -f %{buildroot}%{_bindir}/mysql_plugin
502 rm -f %{buildroot}%{_libdir}/mysql/plugin/daemon_example.ini
503
504 # remove more useless plugins
505 rm -f %{buildroot}%{_libdir}/mysql/plugin/auth_test_plugin.so
506 rm -f %{buildroot}%{_libdir}/mysql/plugin/dialog_examples.so
507
508 # house cleaning
509 rm -rf %{buildroot}%{_datadir}/info
510 rm -f %{buildroot}%{_bindir}/client_test
511 rm -f %{buildroot}%{_bindir}/make_win_binary_distribution
512 rm -f %{buildroot}%{_bindir}/make_win_src_distribution
513 rm -f %{buildroot}%{_datadir}/mysql/binary-configure
514 rm -f %{buildroot}%{_datadir}/mysql/config.huge.ini
515 rm -f %{buildroot}%{_datadir}/mysql/config.medium.ini
516 rm -f %{buildroot}%{_datadir}/mysql/config.small.ini
517 rm -f %{buildroot}%{_datadir}/mysql/mysqld_multi.server
518 rm -f %{buildroot}%{_datadir}/mysql/mysql-log-rotate
519 rm -f %{buildroot}%{_datadir}/mysql/mysql.server
520 rm -f %{buildroot}%{_datadir}/mysql/ndb-config-2-node.ini
521 rm -f %{buildroot}%{_datadir}/mysql/binary-configure
522 rm -f %{buildroot}%{_mandir}/man1/make_win_bin_dist.1*
523 rm -f %{buildroot}%{_mandir}/man1/make_win_src_distribution.1*
524 rm -f %{buildroot}%{_datadir}/mysql/magic
525
526 # no idea how to fix this
527 rm -rf %{buildroot}%{_prefix}/data
528 rm -rf %{buildroot}%{_prefix}/docs
529 rm -rf %{buildroot}%{_prefix}/scripts
530 rm -f %{buildroot}%{_prefix}/COPYING
531 rm -f %{buildroot}%{_prefix}/COPYING.LESSER
532 rm -f %{buildroot}%{_prefix}/INSTALL-BINARY
533 rm -f %{buildroot}%{_prefix}/README
534
535 %multiarch_binaries %{buildroot}%{_bindir}/mysql_config
536 %multiarch_includes %{buildroot}%{_includedir}/mysql/my_config.h
537
538 cat > README.urpmi <<EOF
539
540 NOTE: MariaDB is installed without root password, it is recommended to set the
541 root password with the following command as soon as possible:
542
543 mysqladmin password
544
545 The initscript used to start mysql has been reverted to use the one shipped
546 by MariaDB. This means the following changes:
547
548 * The generation of the initial system mysql database is now done when mysql
549 is started from the initscript and only if the /var/lib/mysql/mysql
550 directory is empty (mysql_install_db). Previousely this was quite hidden and
551 silently done at (rpm) install time. As a consequence to this change you may
552 have to perform some manual tasks to upgrade the mysql system database and
553 such. So, doing something like this might help you:
554
555 /etc/init.d/mysqld stop
556 TMPDIR=/var/tmp mysql_install_db
557 mysql_upgrade
558
559 The cluster functionalities (ndb) has been deactivated and will be removed in
560 future mysql versions. Oracle has a new product named mysql-cluster that
561 replaces the cluster functionalities.
562
563 The mysql-common-core package ships with a default /etc/my.cnf file that is
564 based on the my-medium.cnf file that comes with the source code.
565 EOF
566
567 ################################################################################
568 # run the tests
569 %if %{build_test}
570 # disable failing tests
571 echo "rpl_trigger : Unstable test case" >> mysql-test/t/disabled.def
572 echo "type_enum : Unstable test case" >> mysql-test/t/disabled.def
573 echo "windows : For MS Windows only" >> mysql-test/t/disabled.def
574 pushd build/mysql-test
575 export LANG=C
576 export LC_ALL=C
577 export LANGUAGE=C
578 perl ./mysql-test-run.pl \
579 --mtr-build-thread="$((${RANDOM} % 100))" \
580 --skip-ndb \
581 --timer \
582 --retry=0 \
583 --ssl \
584 --mysqld=--binlog-format=mixed \
585 --testcase-timeout=60 \
586 --suite-timeout=120 || false
587 popd
588 %endif
589
590 %pre
591 # enable plugins
592 if [ -f %{_sysconfdir}/my.cnf ]; then
593 perl -pi -e "s|^#plugin-load|plugin-load|g" %{_sysconfdir}/my.cnf
594 perl -pi -e "s|^#federated|federated|g" %{_sysconfdir}/my.cnf
595 # switch to federatedx provider
596 perl -pi -e "s|;ha_federated\.so$|;ha_federatedx\.so|g" %{_sysconfdir}/my.cnf
597 fi
598
599 %pre common
600 # delete the mysql group if no mysql user is found, before adding the user
601 if [ -z "`getent passwd %{muser}`" ] && ! [ -z "`getent group %{muser}`" ]; then
602 %{_sbindir}/groupdel %{muser} 2> /dev/null || :
603 fi
604
605 %_pre_useradd %{muser} /var/lib/mysql /bin/bash
606
607 %post
608 %_post_service mysqld
609
610 %preun
611 %_preun_service mysqld
612
613 %postun
614 if [ "$1" = "0" ]; then
615 if [ -f /var/lock/subsys/mysqld ]; then
616 %{_initrddir}/mysqld restart > /dev/null 2>/dev/null || :
617 fi
618 fi
619
620 %pre common-core
621 # enable plugins
622 if [ -f %{_sysconfdir}/my.cnf ]; then
623 perl -pi -e "s|^#plugin-load|plugin-load|g" %{_sysconfdir}/my.cnf
624 perl -pi -e "s|^#federated|federated|g" %{_sysconfdir}/my.cnf
625 # switch to federatedx provider
626 perl -pi -e "s|;ha_federated\.so$|;ha_federatedx\.so|g" %{_sysconfdir}/my.cnf
627 fi
628
629 %files
630 %doc README.urpmi
631 %{_initrddir}/mysqld
632 %_sysconfdir/tmpfiles.d/mysql.conf
633 /lib/systemd/system/mysqld.service
634 %{_sbindir}/mysqld-prepare-db-dir
635 %{_sbindir}/mysqld-wait-ready
636 %dir %{_libdir}/mysql/plugin
637 # authentication plugins
638 %{_libdir}/mysql/plugin/auth_socket.so
639 %{_libdir}/mysql/plugin/dialog.so
640 %{_libdir}/mysql/plugin/mysql_clear_password.so
641 # replication plugins
642 %{_libdir}/mysql/plugin/semisync_master.so
643 %{_libdir}/mysql/plugin/semisync_slave.so
644 # storage engines
645 %{_libdir}/mysql/plugin/ha_archive.so
646 %{_libdir}/mysql/plugin/ha_blackhole.so
647 %{_libdir}/mysql/plugin/ha_federatedx.so
648 # sql logging plugin
649 %{_libdir}/mysql/plugin/sql_errlog.so
650 # upstream describes this as "junk"
651 %{_libdir}/mysql/plugin/adt_null.so
652 %{_libdir}/mysql/plugin/mypluglib.so
653 %{_libdir}/mysql/plugin/qa_auth_client.so
654 %{_libdir}/mysql/plugin/qa_auth_interface.so
655 %{_libdir}/mysql/plugin/qa_auth_server.so
656 # example plugins, not usefull at all, removing
657 #%{_libdir}/mysql/plugin/auth_test_plugin.so
658 #%{_libdir}/mysql/plugin/dialog_examples.so
659
660 %files -n mysql-MariaDB
661
662 %files obsolete
663 %{_libdir}/mysql/plugin/ha_innodb.so
664 %{_libdir}/mysql/plugin/ha_federated.so
665
666 %files feedback
667 %{_libdir}/mysql/plugin/feedback.so
668
669 %files extra
670 %{_libdir}/mysql/plugin/ha_oqgraph.so
671 %{_libdir}/mysql/plugin/ha_sphinx.so
672
673 %files client
674 %config(noreplace) %{_sysconfdir}/mysqlaccess.conf
675 %{_bindir}/msql2mysql
676 %{_bindir}/mysql
677 %{_bindir}/mysqlaccess
678 %{_bindir}/mysqladmin
679 %{_bindir}/mysqlanalyze
680 %{_bindir}/mysqlbinlog
681 %{_bindir}/mysqlcheck
682 %{_bindir}/mysqldump
683 %{_bindir}/mysqldumpslow
684 %{_bindir}/mysql_find_rows
685 %{_bindir}/mysqlimport
686 %{_bindir}/mysqloptimize
687 %{_bindir}/mysqlrepair
688 %{_bindir}/mysqlshow
689 %{_bindir}/mysqlslap
690 %{_bindir}/mysql_waitpid
691 %{_mandir}/man1/msql2mysql.1*
692 %{_mandir}/man1/myisam_ftdump.1*
693 %{_mandir}/man1/mysql.1*
694 %{_mandir}/man1/mysqlaccess.1*
695 %{_mandir}/man1/mysqladmin.1*
696 %{_mandir}/man1/mysqlbinlog.1*
697 %{_mandir}/man1/mysqlcheck.1*
698 %{_mandir}/man1/mysqldump.1*
699 %{_mandir}/man1/mysqldumpslow.1*
700 %{_mandir}/man1/mysql_find_rows.1*
701 %{_mandir}/man1/mysqlimport.1*
702 %{_mandir}/man1/mysqlshow.1*
703 %{_mandir}/man1/mysql_waitpid.1*
704
705 %files bench
706 %doc build/sql-bench/README
707 %{_bindir}/my_safe_process
708 %{_bindir}/mysql_client_test
709 %{_bindir}/mysql_client_test_embedded
710 %{_bindir}/mysqltest_embedded
711 %{_datadir}/mysql/sql-bench
712 %attr(-,mysql,mysql) %{_datadir}/mysql/mysql-test
713 %{_mandir}/man1/mysql-stress-test.pl.1*
714 %{_mandir}/man1/mysql-test-run.pl.1*
715 %{_mandir}/man1/mysql_client_test.1*
716 %{_mandir}/man1/mysql_client_test_embedded.1*
717 %{_mandir}/man1/mysqltest.1*
718 %{_mandir}/man1/mysqltest_embedded.1*
719
720 %files core
721 %{_sbindir}/mysqld
722
723 %files common-core
724 %config(noreplace) %{_sysconfdir}/my.cnf
725 %dir %{_datadir}/mysql
726 %{_datadir}/mysql/english
727 %{_datadir}/mysql/charsets
728
729 %files common
730 %doc README COPYING
731 %config(noreplace) %{_sysconfdir}/sysconfig/mysqld
732 %{_bindir}/aria_chk
733 %{_bindir}/aria_dump_log
734 %{_bindir}/aria_ftdump
735 %{_bindir}/aria_pack
736 %{_bindir}/aria_read_log
737 %{_bindir}/innochecksum
738 %{_bindir}/myisamchk
739 %{_bindir}/myisam_ftdump
740 %{_bindir}/myisamlog
741 %{_bindir}/myisampack
742 %{_bindir}/my_print_defaults
743 %{_bindir}/mysqlbug
744 %{_bindir}/mysql_convert_table_format
745 %{_bindir}/mysqld_multi
746 %{_bindir}/mysqld_safe
747 %{_bindir}/mysql_fix_extensions
748 %{_bindir}/mysqlhotcopy
749 %{_bindir}/mysql_install_db
750 %{_bindir}/mysql_plugin
751 %{_bindir}/mysql_secure_installation
752 %{_bindir}/mysql_setpermission
753 %{_bindir}/mysqltest
754 %{_bindir}/mysql_tzinfo_to_sql
755 %{_bindir}/mysql_upgrade
756 %{_bindir}/mysql_zap
757 %{_bindir}/perror
758 %{_bindir}/replace
759 %{_bindir}/resolveip
760 %{_bindir}/resolve_stack_dump
761 %attr(0755,%{muser},%{muser}) %dir /var/lib/mysql
762 %attr(0755,%{muser},%{muser}) %dir /var/lib/mysql/mysql
763 %attr(0755,%{muser},%{muser}) %dir /var/lib/mysql/test
764 %attr(0755,%{muser},%{muser}) %dir %{_var}/run/mysqld
765 %attr(0755,%{muser},%{muser}) %dir %{_var}/log/mysqld
766 %{_datadir}/mysql/*.cnf
767 %{_datadir}/mysql/fill_help_tables.sql
768 %{_datadir}/mysql/mysql_system_tables.sql
769 %{_datadir}/mysql/mysql_system_tables_data.sql
770 %{_datadir}/mysql/mysql_test_data_timezone.sql
771 %{_datadir}/mysql/errmsg-utf8.txt
772 %{_datadir}/mysql/czech
773 %{_datadir}/mysql/danish
774 %{_datadir}/mysql/dutch
775 %{_datadir}/mysql/estonian
776 %{_datadir}/mysql/french
777 %{_datadir}/mysql/german
778 %{_datadir}/mysql/greek
779 %{_datadir}/mysql/hungarian
780 %{_datadir}/mysql/italian
781 %{_datadir}/mysql/japanese
782 %{_datadir}/mysql/korean
783 %{_datadir}/mysql/norwegian
784 %{_datadir}/mysql/norwegian-ny
785 %{_datadir}/mysql/polish
786 %{_datadir}/mysql/portuguese
787 %{_datadir}/mysql/romanian
788 %{_datadir}/mysql/russian
789 %{_datadir}/mysql/serbian
790 %{_datadir}/mysql/slovak
791 %{_datadir}/mysql/spanish
792 %{_datadir}/mysql/swedish
793 %{_datadir}/mysql/ukrainian
794 %{_mandir}/man1/innochecksum.1*
795 %{_mandir}/man1/myisamchk.1*
796 %{_mandir}/man1/myisamlog.1*
797 %{_mandir}/man1/myisampack.1*
798 %{_mandir}/man1/my_print_defaults.1*
799 %{_mandir}/man1/mysqlbug.1*
800 %{_mandir}/man1/mysql_convert_table_format.1*
801 %{_mandir}/man1/mysqld_multi.1*
802 %{_mandir}/man1/mysqld_safe.1*
803 %{_mandir}/man1/mysql_fix_extensions.1*
804 %{_mandir}/man1/mysql_fix_privilege_tables.1*
805 %{_mandir}/man1/mysqlhotcopy.1*
806 %{_mandir}/man1/mysql_install_db.1*
807 %{_mandir}/man1/mysqlman.1*
808 %{_mandir}/man1/mysql_secure_installation.1*
809 %{_mandir}/man1/mysql.server.1*
810 %{_mandir}/man1/mysql_setpermission.1*
811 %{_mandir}/man1/mysqlslap.1*
812 %{_mandir}/man1/mysql_tzinfo_to_sql.1*
813 %{_mandir}/man1/mysql_upgrade.1*
814 %{_mandir}/man1/mysql_zap.1*
815 %{_mandir}/man1/perror.1*
816 %{_mandir}/man1/replace.1*
817 %{_mandir}/man1/resolveip.1*
818 %{_mandir}/man1/resolve_stack_dump.1*
819 %{_mandir}/man8/mysqld.8*
820 %{_mandir}/man8/mysqlmanager.8*
821
822 %files -n %{libname}
823 %{_libdir}/libmysqlclient.so.%{major}*
824
825 %files -n %{develname}
826 %doc INSTALL-SOURCE
827 %multiarch %{multiarch_bindir}/mysql_config
828 %{_bindir}/mysql_config
829 %{_libdir}/libmysqlclient_r.so
830 %{_libdir}/libmysqlclient.so
831 %dir %{_includedir}/mysql
832 %dir %{_includedir}/mysql/psi
833 %{_includedir}/mysql/*.h
834 %{_includedir}/mysql/psi/*.h
835 %multiarch %{multiarch_includedir}/mysql/my_config.h
836 %{_mandir}/man1/comp_err.1*
837 %{_mandir}/man1/mysql_config.1*
838 %{_datadir}/aclocal/mysql.m4
839 # mysqlservices library is static, because it doesn't contain any code
840 # itself, and is meant to be statically linked to all plugins.
841 %{_libdir}/libmysqlservices.a
842
843 %files -n %{libmariadbembedded}
844 %doc README COPYING
845 %{_libdir}/libmysqld.so.%{major}
846 %{_libdir}/libmysqld.so.%{libmysqlembedded_major}*
847
848 %files -n %{libmariadbembedded_devel}
849 %{_libdir}/libmysqld.so
850 %{_bindir}/mysql_client_test_embedded
851 %{_bindir}/mysqltest_embedded
852 %{_mandir}/man1/mysql_client_test_embedded.1*
853 %{_mandir}/man1/mysqltest_embedded.1*

  ViewVC Help
Powered by ViewVC 1.1.30