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

  ViewVC Help
Powered by ViewVC 1.1.30