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

  ViewVC Help
Powered by ViewVC 1.1.30