/[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 230765 - (show annotations) (download)
Sat Apr 14 09:10:16 2012 UTC (12 years ago) by fwang
File size: 29049 byte(s)
bump obsolete version to make it upgrade correctly with upcoming mga1 updates
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 2
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 < %{version}-%{release}
101 Obsoletes: %{libmariadbservices} < 5.5.18-0.3194.20111227.1
102 Obsoletes: %{libmysqlservices} < %{version}-%{release}
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 < %{version}-%{release}
210
211 %description core
212 Core mysqld server binary. For a full MariaDB database server, install
213 package 'mariadb'.
214
215 %package common-core
216 Summary: Common files required by core binary
217 Group: System/Servers
218 Provides: mysql-common-core = %{version}-%{release}
219 Obsoletes: mysql-common-core < %{version}-%{release}
220
221 %description common-core
222 Common files minimally required by mysqld server binary.
223
224 %package common
225 Summary: Common files
226 Group: System/Servers
227 Requires(post): rpm-helper
228 Requires(preun): rpm-helper
229 Requires(pre): rpm-helper
230 Requires(postun): rpm-helper
231 Requires(post): %{name}-client%{_isa} >= %{version}-%{release}
232 Requires(preun): %{name}-client%{_isa} >= %{version}-%{release}
233 Requires: %{name}-client%{_isa} >= %{version}-%{release}
234 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
235 Provides: mysql-common = %{version}-%{release}
236 Obsoletes: mysql-common < %{version}-%{release}
237
238 %description common
239 Common files for the MariaDB database server.
240
241 %package client
242 Summary: Client
243 Group: Databases
244 Requires(post): %{libname}%{_isa} >= %{version}-%{release}
245 Requires(preun): %{libname}%{_isa} >= %{version}-%{release}
246 Requires: %{libname}%{_isa} >= %{version}-%{release}
247 Provides: mysql-client = %{version}-%{release}
248 Obsoletes: mysql-client < %{version}-%{release}
249
250 %description client
251 This package contains the standard MariaDB clients.
252
253 %package bench
254 Summary: Benchmarks and test system
255 Group: System/Servers
256 Requires(post): %{name}-client%{_isa} >= %{version}-%{release}
257 Requires(preun): %{name}-client%{_isa} >= %{version}-%{release}
258 Requires: %{name}-client%{_isa} >= %{version}-%{release}
259 Provides: mysql-bench = %{version}-%{release}
260 Obsoletes: mysql-bench < %{version}-%{release}
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} < %{version}-%{release}
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 < %{version}-%{release}
292 Obsoletes: %{old_staticdevelname} < %{version}-%{release}
293 Provides: %{mysql_develname} = %{version}-%{release}
294 Obsoletes: %{mysql_develname} < %{version}-%{release}
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 < %{version}-%{release}
306 Provides: %{libmysqlembedded} = %{version}-%{release}
307 Obsoletes: %{libmysqlembedded} < %{version}-%{release}
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 < %{version}-%{release}
322 Requires: %{libmariadbembedded} = %{version}-%{release}
323 Requires: %{develname} = %{version}-%{release}
324 Provides: %{libmysqlembedded_devel} = %{version}-%{release}
325 Obsoletes: %{libmysqlembedded_devel} < %{version}-%{release}
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
337 %prep
338 %setup -q
339 %apply_patches
340
341 mkdir -p Mageia
342 cp %{SOURCE2} Mageia/mysqld.sysconfig
343 cp %{SOURCE3} Mageia/my.cnf
344
345 # lib64 fix
346 perl -pi -e "s|/usr/lib/|%{_libdir}/|g" Mageia/my.cnf
347
348 # antiborker
349 perl -pi -e "s|\@bindir\@|%{_bindir}|g" support-files/* scripts/*
350 perl -pi -e "s|\@sbindir\@|%{_sbindir}|g" support-files/* scripts/*
351 perl -pi -e "s|\@libexecdir\@|%{_sbindir}|g" support-files/* scripts/*
352 perl -pi -e "s|\@localstatedir\@|/var/lib/mysql|g" support-files/* scripts/*
353 perl -pi -e "s|^basedir=.*|basedir=%{_prefix}|g" support-files/* scripts/mysql_install_db*
354
355 # this may be part of the problems with mysql-test
356 # http://bugs.mysql.com/bug.php?id=52223
357 #perl -pi -e "s|basedir/lib\b|basedir/%{_lib}\b|g" mysql-test/mysql-test-run.pl
358 #perl -pi -e "s|basedir/lib/|basedir/%{_lib}/|g" mysql-test/mysql-test-run.pl
359
360 # workaround for upstream bug #56342
361 rm -f mysql-test/t/ssl_8k_key-master.opt
362
363 # upstream has fallen down badly on symbol versioning, do it ourselves
364 cp %{SOURCE4} libmysql/libmysql.version
365
366 %build
367 %serverbuild
368 export CFLAGS="${CFLAGS:-%{optflags}}"
369 export CXXFLAGS="${CXXFLAGS:-%{optflags}}"
370 export FFLAGS="${FFLAGS:-%{optflags}}"
371
372 %cmake \
373 -DCMAKE_BUILD_TYPE=RelWithDebInfo \
374 -DCMAKE_INSTALL_PREFIX=%{_prefix} \
375 -DINSTALL_SBINDIR=sbin \
376 -DMYSQL_DATADIR=/var/lib/mysql \
377 -DSYSCONFDIR=%{_sysconfdir} \
378 -DINSTALL_PLUGINDIR=%{_lib}/mysql/plugin \
379 -DINSTALL_MANDIR=share/man \
380 -DINSTALL_SHAREDIR=share/mysql \
381 -DINSTALL_LIBDIR=%{_lib} \
382 -DINSTALL_INCLUDEDIR=include/mysql \
383 -DINSTALL_INFODIR=share/info \
384 -DINSTALL_MYSQLDATADIR=/var/lib/mysql \
385 -DINSTALL_MYSQLTESTDIR=share/mysql/mysql-test \
386 -DINSTALL_SQLBENCHDIR=share/mysql \
387 -DINSTALL_SUPPORTFILESDIR=share/mysql \
388 -DINSTALL_MYSQLSHAREDIR=share/mysql \
389 -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \
390 -DWITH_READLINE=0 \
391 -DWITH_LIBEDIT=0 \
392 -DWITH_LIBWRAP=1 \
393 -DWITH_SSL=system \
394 -DWITH_ZLIB=system \
395 -DWITH_PIC=1 \
396 -DMYSQL_TCP_PORT=3306 \
397 -DEXTRA_CHARSETS=all \
398 -DENABLED_LOCAL_INFILE=1 \
399 -DENABLE_DTRACE=1 \
400 -DWITH_EMBEDDED_SERVER=1 \
401 -DMYSQL_USER=%{muser} \
402 %if %{build_debug}
403 -DWITH_DEBUG=1 \
404 %else
405 -DWITH_DEBUG=0 \
406 %endif
407 -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
408 -DWITHOUT_NDBCLUSTER_STORAGE_ENGINE=1 \
409 -DWITHOUT_DAEMON_EXAMPLE=1 \
410 -DWITH_PLUGIN_PBXT=1 \
411 -DFEATURE_SET="community" \
412 -DCOMPILATION_COMMENT="%{_vendor} - MariaDB Community Edition (GPL)"
413
414 cp ../libmysql/libmysql.version libmysql/libmysql.version
415
416 %make
417
418 %install
419 rm -rf %{buildroot}
420
421 # don't fiddle with the initscript!
422 export DONT_GPRINTIFY=1
423
424 %if %{build_debug}
425 export DONT_STRIP=1
426 %endif
427
428 install -d %{buildroot}%{_sysconfdir}/sysconfig
429 install -d %{buildroot}%{_initrddir}
430 install -d %{buildroot}%{_var}/run/mysqld
431 install -d %{buildroot}%{_var}/log/mysqld
432 install -d %{buildroot}/var/lib/mysql/{mysql,test}
433
434 %makeinstall_std -C build
435
436 # install init scripts
437 install -m0755 build/support-files/mysql.server %{buildroot}%{_initrddir}/mysqld
438
439 # install configuration files
440 install -m0644 Mageia/mysqld.sysconfig %{buildroot}%{_sysconfdir}/sysconfig/mysqld
441 install -m0644 Mageia/my.cnf %{buildroot}%{_sysconfdir}/my.cnf
442
443 mkdir -p %{buildroot}/etc/tmpfiles.d
444 install -m 0644 %{SOURCE10} %{buildroot}/etc/tmpfiles.d/mysql.conf
445 mkdir -p %{buildroot}/lib/systemd/system
446 install -m 644 %{SOURCE11} %{buildroot}/lib/systemd/system
447 install -m 755 %{SOURCE12} %{buildroot}%{_sbindir}/mysqld-prepare-db-dir
448 install -m 755 %{SOURCE13} %{buildroot}%{_sbindir}/mysqld-wait-ready
449
450 # bork
451 mv %{buildroot}%{_bindir}/mysqlaccess.conf %{buildroot}%{_sysconfdir}/
452 chmod 644 %{buildroot}%{_sysconfdir}/mysqlaccess.conf
453 mv %{buildroot}%{_prefix}/scripts/mysql_install_db %{buildroot}%{_bindir}/
454 mv %{buildroot}%{_datadir}/mysql/aclocal %{buildroot}%{_datadir}/aclocal
455
456 pushd %{buildroot}%{_bindir}
457 ln -sf mysqlcheck mysqlrepair
458 ln -sf mysqlcheck mysqlanalyze
459 ln -sf mysqlcheck mysqloptimize
460 popd
461
462 # nuke -Wl,--as-needed from the mysql_config file
463 perl -pi -e "s|^ldflags=.*|ldflags=\'-rdynamic\'|g" %{buildroot}%{_bindir}/mysql_config
464
465 # cmake generates some completely wacko references to -lprobes_mysql when
466 # building with dtrace support. Haven't found where to shut that off,
467 # so resort to this blunt instrument. While at it, let's not reference
468 # libmysqlclient_r anymore either.
469 sed -e 's/-lprobes_mysql//' -e 's/-lmysqlclient_r/-lmysqlclient/' \
470 %{buildroot}%{_bindir}/mysql_config >mysql_config.tmp
471 cp -f mysql_config.tmp %{buildroot}%{_bindir}/mysql_config
472 chmod 755 %{buildroot}%{_bindir}/mysql_config
473 install -m 0755 -d %{buildroot}/var/lib/mysql
474
475 # Remove libmysqld.a, + hardlink libmysqld.so.%{libmysqlembedded_major} so that it's provided
476 rm -f %{buildroot}%{_libdir}/libmysqld.a
477 ln %{buildroot}%{_libdir}/libmysqld.so.%{major} %{buildroot}%{_libdir}/libmysqld.so.%{libmysqlembedded_major}.%{libmysqlembedded_minor}
478 ln -s libmysqld.so.%{libmysqlembedded_major}.%{libmysqlembedded_minor} %{buildroot}%{_libdir}/libmysqld.so.%{libmysqlembedded_major}
479
480 # libmysqlclient_r is no more. Upstream tries to replace it with symlinks
481 # but that really doesn't work (wrong soname in particular). We'll keep
482 # just the devel libmysqlclient_r.so link, so that rebuilding without any
483 # source change is enough to get rid of dependency on libmysqlclient_r.
484 rm -f %{buildroot}%{_libdir}/libmysqlclient_r.so*
485 ln -s libmysqlclient.so %{buildroot}%{_libdir}/libmysqlclient_r.so
486
487 # remove static libs
488 rm -f %{buildroot}%{_libdir}/libmysqlclient.a
489 rm -f %{buildroot}%{_libdir}/libmysqlclient_r.a
490
491 # mysql-test includes one executable that doesn't belong under /usr/share,
492 # so move it and provide a symlink
493 mv %{buildroot}%{_datadir}/mysql/mysql-test/lib/My/SafeProcess/my_safe_process %{buildroot}%{_bindir}
494 ln -s %{_bindir}/my_safe_process %{buildroot}%{_datadir}/mysql/mysql-test/lib/My/SafeProcess/my_safe_process
495
496 # mysql client statically built against a local embedded library, pretty useless
497 rm -f %{buildroot}%{_bindir}/mysql_embedded
498
499 # this command enables plugins, but needs ini file + configuration in my.cnf
500 # before executing... and oh yeah, mysql must be stopped... => useless
501 # however, apparently tests seem to want it, even thought they don't use it.
502 #rm -f %{buildroot}%{_bindir}/mysql_plugin
503 rm -f %{buildroot}%{_libdir}/mysql/plugin/daemon_example.ini
504
505 # remove more useless plugins
506 rm -f %{buildroot}%{_libdir}/mysql/plugin/auth_test_plugin.so
507 rm -f %{buildroot}%{_libdir}/mysql/plugin/dialog_examples.so
508
509 # house cleaning
510 rm -rf %{buildroot}%{_datadir}/info
511 rm -f %{buildroot}%{_bindir}/client_test
512 rm -f %{buildroot}%{_bindir}/make_win_binary_distribution
513 rm -f %{buildroot}%{_bindir}/make_win_src_distribution
514 rm -f %{buildroot}%{_datadir}/mysql/binary-configure
515 rm -f %{buildroot}%{_datadir}/mysql/config.huge.ini
516 rm -f %{buildroot}%{_datadir}/mysql/config.medium.ini
517 rm -f %{buildroot}%{_datadir}/mysql/config.small.ini
518 rm -f %{buildroot}%{_datadir}/mysql/mysqld_multi.server
519 rm -f %{buildroot}%{_datadir}/mysql/mysql-log-rotate
520 rm -f %{buildroot}%{_datadir}/mysql/mysql.server
521 rm -f %{buildroot}%{_datadir}/mysql/ndb-config-2-node.ini
522 rm -f %{buildroot}%{_datadir}/mysql/binary-configure
523 rm -f %{buildroot}%{_mandir}/man1/make_win_bin_dist.1*
524 rm -f %{buildroot}%{_mandir}/man1/make_win_src_distribution.1*
525 rm -f %{buildroot}%{_datadir}/mysql/magic
526
527 # no idea how to fix this
528 rm -rf %{buildroot}%{_prefix}/data
529 rm -rf %{buildroot}%{_prefix}/docs
530 rm -rf %{buildroot}%{_prefix}/scripts
531 rm -f %{buildroot}%{_prefix}/COPYING
532 rm -f %{buildroot}%{_prefix}/COPYING.LESSER
533 rm -f %{buildroot}%{_prefix}/INSTALL-BINARY
534 rm -f %{buildroot}%{_prefix}/README
535
536 %multiarch_binaries %{buildroot}%{_bindir}/mysql_config
537 %multiarch_includes %{buildroot}%{_includedir}/mysql/my_config.h
538
539 cat > README.urpmi <<EOF
540
541 NOTE: MariaDB is installed without root password, it is recommended to set the
542 root password with the following command as soon as possible:
543
544 mysqladmin password
545
546 The initscript used to start mysql has been reverted to use the one shipped
547 by MariaDB. This means the following changes:
548
549 * The generation of the initial system mysql database is now done when mysql
550 is started from the initscript and only if the /var/lib/mysql/mysql
551 directory is empty (mysql_install_db). Previousely this was quite hidden and
552 silently done at (rpm) install time. As a consequence to this change you may
553 have to perform some manual tasks to upgrade the mysql system database and
554 such. So, doing something like this might help you:
555
556 /etc/init.d/mysqld stop
557 TMPDIR=/var/tmp mysql_install_db
558 mysql_upgrade
559
560 The cluster functionalities (ndb) has been deactivated and will be removed in
561 future mysql versions. Oracle has a new product named mysql-cluster that
562 replaces the cluster functionalities.
563
564 The mysql-common-core package ships with a default /etc/my.cnf file that is
565 based on the my-medium.cnf file that comes with the source code.
566 EOF
567
568 ################################################################################
569 # run the tests
570 %if %{build_test}
571 # disable failing tests
572 echo "rpl_trigger : Unstable test case" >> mysql-test/t/disabled.def
573 echo "type_enum : Unstable test case" >> mysql-test/t/disabled.def
574 echo "windows : For MS Windows only" >> mysql-test/t/disabled.def
575 pushd build/mysql-test
576 export LANG=C
577 export LC_ALL=C
578 export LANGUAGE=C
579 perl ./mysql-test-run.pl \
580 --mtr-build-thread="$((${RANDOM} % 100))" \
581 --skip-ndb \
582 --timer \
583 --retry=0 \
584 --ssl \
585 --mysqld=--binlog-format=mixed \
586 --testcase-timeout=60 \
587 --suite-timeout=120 || false
588 popd
589 %endif
590
591 %pre
592 # enable plugins
593 if [ -f %{_sysconfdir}/my.cnf ]; then
594 perl -pi -e "s|^#plugin-load|plugin-load|g" %{_sysconfdir}/my.cnf
595 perl -pi -e "s|^#federated|federated|g" %{_sysconfdir}/my.cnf
596 # switch to federatedx provider
597 perl -pi -e "s|;ha_federated\.so$|;ha_federatedx\.so|g" %{_sysconfdir}/my.cnf
598 fi
599
600 %pre common
601 # delete the mysql group if no mysql user is found, before adding the user
602 if [ -z "`getent passwd %{muser}`" ] && ! [ -z "`getent group %{muser}`" ]; then
603 %{_sbindir}/groupdel %{muser} 2> /dev/null || :
604 fi
605
606 %_pre_useradd %{muser} /var/lib/mysql /bin/bash
607
608 %post
609 %_post_service mysqld
610
611 %preun
612 %_preun_service mysqld
613
614 %postun
615 if [ "$1" = "0" ]; then
616 if [ -f /var/lock/subsys/mysqld ]; then
617 %{_initrddir}/mysqld restart > /dev/null 2>/dev/null || :
618 fi
619 fi
620
621 %pre common-core
622 # enable plugins
623 if [ -f %{_sysconfdir}/my.cnf ]; then
624 perl -pi -e "s|^#plugin-load|plugin-load|g" %{_sysconfdir}/my.cnf
625 perl -pi -e "s|^#federated|federated|g" %{_sysconfdir}/my.cnf
626 # switch to federatedx provider
627 perl -pi -e "s|;ha_federated\.so$|;ha_federatedx\.so|g" %{_sysconfdir}/my.cnf
628 fi
629
630 %files
631 %doc README.urpmi
632 %{_initrddir}/mysqld
633 %_sysconfdir/tmpfiles.d/mysql.conf
634 /lib/systemd/system/mysqld.service
635 %{_sbindir}/mysqld-prepare-db-dir
636 %{_sbindir}/mysqld-wait-ready
637 %dir %{_libdir}/mysql/plugin
638 # authentication plugins
639 %{_libdir}/mysql/plugin/auth_socket.so
640 %{_libdir}/mysql/plugin/dialog.so
641 %{_libdir}/mysql/plugin/mysql_clear_password.so
642 # replication plugins
643 %{_libdir}/mysql/plugin/semisync_master.so
644 %{_libdir}/mysql/plugin/semisync_slave.so
645 # storage engines
646 %{_libdir}/mysql/plugin/ha_archive.so
647 %{_libdir}/mysql/plugin/ha_blackhole.so
648 %{_libdir}/mysql/plugin/ha_federatedx.so
649 # sql logging plugin
650 %{_libdir}/mysql/plugin/sql_errlog.so
651 # upstream describes this as "junk"
652 %{_libdir}/mysql/plugin/adt_null.so
653 %{_libdir}/mysql/plugin/mypluglib.so
654 %{_libdir}/mysql/plugin/qa_auth_client.so
655 %{_libdir}/mysql/plugin/qa_auth_interface.so
656 %{_libdir}/mysql/plugin/qa_auth_server.so
657 # example plugins, not usefull at all, removing
658 #%{_libdir}/mysql/plugin/auth_test_plugin.so
659 #%{_libdir}/mysql/plugin/dialog_examples.so
660
661 %files -n mysql-MariaDB
662
663 %files obsolete
664 %{_libdir}/mysql/plugin/ha_innodb.so
665 %{_libdir}/mysql/plugin/ha_federated.so
666
667 %files feedback
668 %{_libdir}/mysql/plugin/feedback.so
669
670 %files extra
671 %{_libdir}/mysql/plugin/ha_oqgraph.so
672 %{_libdir}/mysql/plugin/ha_sphinx.so
673
674 %files client
675 %config(noreplace) %{_sysconfdir}/mysqlaccess.conf
676 %{_bindir}/msql2mysql
677 %{_bindir}/mysql
678 %{_bindir}/mysqlaccess
679 %{_bindir}/mysqladmin
680 %{_bindir}/mysqlanalyze
681 %{_bindir}/mysqlbinlog
682 %{_bindir}/mysqlcheck
683 %{_bindir}/mysqldump
684 %{_bindir}/mysqldumpslow
685 %{_bindir}/mysql_find_rows
686 %{_bindir}/mysqlimport
687 %{_bindir}/mysqloptimize
688 %{_bindir}/mysqlrepair
689 %{_bindir}/mysqlshow
690 %{_bindir}/mysqlslap
691 %{_bindir}/mysql_waitpid
692 %{_mandir}/man1/msql2mysql.1*
693 %{_mandir}/man1/myisam_ftdump.1*
694 %{_mandir}/man1/mysql.1*
695 %{_mandir}/man1/mysqlaccess.1*
696 %{_mandir}/man1/mysqladmin.1*
697 %{_mandir}/man1/mysqlbinlog.1*
698 %{_mandir}/man1/mysqlcheck.1*
699 %{_mandir}/man1/mysqldump.1*
700 %{_mandir}/man1/mysqldumpslow.1*
701 %{_mandir}/man1/mysql_find_rows.1*
702 %{_mandir}/man1/mysqlimport.1*
703 %{_mandir}/man1/mysqlshow.1*
704 %{_mandir}/man1/mysql_waitpid.1*
705
706 %files bench
707 %doc build/sql-bench/README
708 %{_bindir}/my_safe_process
709 %{_bindir}/mysql_client_test
710 %{_bindir}/mysql_client_test_embedded
711 %{_bindir}/mysqltest_embedded
712 %{_datadir}/mysql/sql-bench
713 %attr(-,mysql,mysql) %{_datadir}/mysql/mysql-test
714 %{_mandir}/man1/mysql-stress-test.pl.1*
715 %{_mandir}/man1/mysql-test-run.pl.1*
716 %{_mandir}/man1/mysql_client_test.1*
717 %{_mandir}/man1/mysql_client_test_embedded.1*
718 %{_mandir}/man1/mysqltest.1*
719 %{_mandir}/man1/mysqltest_embedded.1*
720
721 %files core
722 %{_sbindir}/mysqld
723
724 %files common-core
725 %config(noreplace) %{_sysconfdir}/my.cnf
726 %dir %{_datadir}/mysql
727 %{_datadir}/mysql/english
728 %{_datadir}/mysql/charsets
729
730 %files common
731 %doc README COPYING
732 %config(noreplace) %{_sysconfdir}/sysconfig/mysqld
733 %{_bindir}/aria_chk
734 %{_bindir}/aria_dump_log
735 %{_bindir}/aria_ftdump
736 %{_bindir}/aria_pack
737 %{_bindir}/aria_read_log
738 %{_bindir}/innochecksum
739 %{_bindir}/myisamchk
740 %{_bindir}/myisam_ftdump
741 %{_bindir}/myisamlog
742 %{_bindir}/myisampack
743 %{_bindir}/my_print_defaults
744 %{_bindir}/mysqlbug
745 %{_bindir}/mysql_convert_table_format
746 %{_bindir}/mysqld_multi
747 %{_bindir}/mysqld_safe
748 %{_bindir}/mysql_fix_extensions
749 %{_bindir}/mysqlhotcopy
750 %{_bindir}/mysql_install_db
751 %{_bindir}/mysql_plugin
752 %{_bindir}/mysql_secure_installation
753 %{_bindir}/mysql_setpermission
754 %{_bindir}/mysqltest
755 %{_bindir}/mysql_tzinfo_to_sql
756 %{_bindir}/mysql_upgrade
757 %{_bindir}/mysql_zap
758 %{_bindir}/perror
759 %{_bindir}/replace
760 %{_bindir}/resolveip
761 %{_bindir}/resolve_stack_dump
762 %attr(0755,%{muser},%{muser}) %dir /var/lib/mysql
763 %attr(0755,%{muser},%{muser}) %dir /var/lib/mysql/mysql
764 %attr(0755,%{muser},%{muser}) %dir /var/lib/mysql/test
765 %attr(0755,%{muser},%{muser}) %dir %{_var}/run/mysqld
766 %attr(0755,%{muser},%{muser}) %dir %{_var}/log/mysqld
767 %{_datadir}/mysql/*.cnf
768 %{_datadir}/mysql/fill_help_tables.sql
769 %{_datadir}/mysql/mysql_system_tables.sql
770 %{_datadir}/mysql/mysql_system_tables_data.sql
771 %{_datadir}/mysql/mysql_test_data_timezone.sql
772 %{_datadir}/mysql/errmsg-utf8.txt
773 %{_datadir}/mysql/czech
774 %{_datadir}/mysql/danish
775 %{_datadir}/mysql/dutch
776 %{_datadir}/mysql/estonian
777 %{_datadir}/mysql/french
778 %{_datadir}/mysql/german
779 %{_datadir}/mysql/greek
780 %{_datadir}/mysql/hungarian
781 %{_datadir}/mysql/italian
782 %{_datadir}/mysql/japanese
783 %{_datadir}/mysql/korean
784 %{_datadir}/mysql/norwegian
785 %{_datadir}/mysql/norwegian-ny
786 %{_datadir}/mysql/polish
787 %{_datadir}/mysql/portuguese
788 %{_datadir}/mysql/romanian
789 %{_datadir}/mysql/russian
790 %{_datadir}/mysql/serbian
791 %{_datadir}/mysql/slovak
792 %{_datadir}/mysql/spanish
793 %{_datadir}/mysql/swedish
794 %{_datadir}/mysql/ukrainian
795 %{_mandir}/man1/innochecksum.1*
796 %{_mandir}/man1/myisamchk.1*
797 %{_mandir}/man1/myisamlog.1*
798 %{_mandir}/man1/myisampack.1*
799 %{_mandir}/man1/my_print_defaults.1*
800 %{_mandir}/man1/mysqlbug.1*
801 %{_mandir}/man1/mysql_convert_table_format.1*
802 %{_mandir}/man1/mysqld_multi.1*
803 %{_mandir}/man1/mysqld_safe.1*
804 %{_mandir}/man1/mysql_fix_extensions.1*
805 %{_mandir}/man1/mysql_fix_privilege_tables.1*
806 %{_mandir}/man1/mysqlhotcopy.1*
807 %{_mandir}/man1/mysql_install_db.1*
808 %{_mandir}/man1/mysqlman.1*
809 %{_mandir}/man1/mysql_secure_installation.1*
810 %{_mandir}/man1/mysql.server.1*
811 %{_mandir}/man1/mysql_setpermission.1*
812 %{_mandir}/man1/mysqlslap.1*
813 %{_mandir}/man1/mysql_tzinfo_to_sql.1*
814 %{_mandir}/man1/mysql_upgrade.1*
815 %{_mandir}/man1/mysql_zap.1*
816 %{_mandir}/man1/perror.1*
817 %{_mandir}/man1/replace.1*
818 %{_mandir}/man1/resolveip.1*
819 %{_mandir}/man1/resolve_stack_dump.1*
820 %{_mandir}/man8/mysqld.8*
821 %{_mandir}/man8/mysqlmanager.8*
822
823 %files -n %{libname}
824 %{_libdir}/libmysqlclient.so.%{major}*
825
826 %files -n %{develname}
827 %doc INSTALL-SOURCE
828 %multiarch %{multiarch_bindir}/mysql_config
829 %{_bindir}/mysql_config
830 %{_libdir}/libmysqlclient_r.so
831 %{_libdir}/libmysqlclient.so
832 %dir %{_includedir}/mysql
833 %dir %{_includedir}/mysql/psi
834 %{_includedir}/mysql/*.h
835 %{_includedir}/mysql/psi/*.h
836 %multiarch %{multiarch_includedir}/mysql/my_config.h
837 %{_mandir}/man1/comp_err.1*
838 %{_mandir}/man1/mysql_config.1*
839 %{_datadir}/aclocal/mysql.m4
840 # mysqlservices library is static, because it doesn't contain any code
841 # itself, and is meant to be statically linked to all plugins.
842 %{_libdir}/libmysqlservices.a
843
844 %files -n %{libmariadbembedded}
845 %doc README COPYING
846 %{_libdir}/libmysqld.so.%{major}
847 %{_libdir}/libmysqld.so.%{libmysqlembedded_major}*
848
849 %files -n %{libmariadbembedded_devel}
850 %{_libdir}/libmysqld.so
851 %{_bindir}/mysql_client_test_embedded
852 %{_bindir}/mysqltest_embedded
853 %{_mandir}/man1/mysql_client_test_embedded.1*
854 %{_mandir}/man1/mysqltest_embedded.1*

  ViewVC Help
Powered by ViewVC 1.1.30