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

  ViewVC Help
Powered by ViewVC 1.1.30