/[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 394537 - (show annotations) (download)
Mon Feb 4 16:23:19 2013 UTC (11 years, 2 months ago) by alien
File size: 29470 byte(s)
mariadb-bench package requires mariadb if you want to run all tests
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 7
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 Patch3: mariadb-5.5-install-test.patch
72 Patch4: mysql-expired-certs.patch
73 Patch7: mariadb-5.5-versioning.patch
74 Patch8: mariadb-5.5-dubious-exports.patch
75
76 # mandriva patches
77 Patch101: mariadb-5.5-logrotate.patch
78 Patch102: mariadb-5.5-initscript.patch
79 Patch103: mariadb-5.5-mysql_upgrade-exit-status.patch
80 Patch106: mariadb-5.5-hotcopy.patch
81 Patch107: mariadb-5.5-mysql_install_db-quiet.patch
82
83 # mageia patches
84 Patch120: mariadb-5.5.25-forgotten-files.patch
85 Patch126: mariadb-5.5-check-dbname.patch
86 Patch127: mariadb-5.5-no-MDL-locks-for-aliases.patch
87 Patch128: mariadb-5.5-mdev4029.patch
88 Patch129: mariadb-5.5-CVE-2012-5627.patch
89 Patch130: mariadb-5.5-buffer-overflow.patch
90 Patch131: mariadb-5.5-CVE-2012-5615.patch
91
92 Requires(post): rpm-helper >= 0.24.8-1
93 Requires(preun): rpm-helper >= 0.24.8-1
94 Requires(post): %{name}-common%{_isa} = %{version}-%{release}
95 Requires(preun): %{name}-common%{_isa} = %{version}-%{release}
96 Requires(post): %{name}-client%{_isa} = %{version}-%{release}
97 Requires(preun): %{name}-client%{_isa} = %{version}-%{release}
98 Requires(postun): %{name}-common%{_isa} = %{version}-%{release}
99 Requires(postun): %{name}-client%{_isa} = %{version}-%{release}
100 Requires: %{name}-common%{_isa} = %{version}-%{release}
101 Requires: %{name}-core%{_isa} = %{version}-%{release}
102 Requires: %{name}-client%{_isa} = %{version}-%{release}
103 Provides: mysql = %{version}-%{release}
104 Obsoletes: mysql < %{version}-%{release}
105 Obsoletes: %{libmariadbservices} < 5.5.18-0.3194.20111227.1
106 Obsoletes: %{libmysqlservices} < %{version}-%{release}
107 Conflicts: %{name}-extra%{_isa} < %{version}-%{release}
108 Conflicts: %{name}-feedback%{_isa} < %{version}-%{release}
109 Conflicts: %{name}-obsolete%{_isa} < %{version}-%{release}
110 Suggests: %{name}-extra%{_isa}
111 BuildRequires: bison
112 BuildRequires: cmake
113 BuildRequires: doxygen
114 BuildRequires: glibc-devel
115 BuildRequires: libaio-devel
116 BuildRequires: libstdc++-devel
117 BuildRequires: libtermcap-devel
118 BuildRequires: multiarch-utils >= 1.0.3
119 BuildRequires: ncurses-devel
120 BuildRequires: openssl-devel
121 BuildRequires: wrap-devel
122 BuildRequires: python
123 BuildRequires: systemtap
124 BuildRequires: tetex
125 BuildRequires: texinfo
126 BuildRequires: xfs-devel
127 BuildRequires: zlib-devel
128 BuildRequires: boost-devel
129 BuildRequires: libaio-devel
130 BuildRequires: pam-devel
131 BuildConflicts: edit-devel
132
133 %description
134 The MariaDB software delivers a very fast, multi-threaded, multi-user, and
135 robust SQL (Structured Query Language) database server. MariaDB Server is
136 intended for mission-critical, heavy-load production systems as well as for
137 embedding into mass-deployed software.
138
139 The mariadb server is compiled with the following storage engines:
140
141 - Aria Storage Engine
142 - Archive Storage Engine
143 - Blackhole Storage Engine
144 - CSV Storage Engine
145 - FederatedX Storage Engine (Federated replacement)
146 - Heap Storage Engine
147 - MyISAM Storage Engine
148 - MyISAMMRG Storage Engine
149 - Partition Storage Engine
150 - Perfschema Storage Engine
151 - XtraDB Storage Engine (InnoDB replacement)
152
153 The following extra storage engines are provided by the mariadb-extra package
154
155 - OQGraph Storage Engine
156 - Sphinx Storage Engine
157
158 The feedback storage engine is provided by the mariadb-feedback package
159
160 - Feedback Storage Engine
161
162 The following storage engines are provided in the mariadb-obsolete package
163
164 - Federated Storage Engine
165 - InnoDB Storage Engine
166
167 %package -n mysql-MariaDB
168 Summary: A MySQL drop-in replacement
169 Group: System/Servers
170 Requires: %{name}%{_isa}
171
172 %description -n mysql-MariaDB
173 MariaDB is a complete MySQL drop-in replacement with additional fixes and
174 storage engines.
175
176 This package is used as a transitional virtual package, which requires
177 MariaDB so that people who used to use mysql can find it nicely.
178
179 %package feedback
180 Summary: MariaDB feedback storage engine
181 Group: System/Servers
182 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
183 Conflicts: %{name}-common-core%{_isa} < %{version}-%{release}
184
185 %description feedback
186 MariaDB feedback storage engine submits feedback about your mariadb server.
187 Results can be seen on http://mariadb.org/feedback_plugin/ .
188
189 %package extra
190 Summary: MariaDB extra storage engines
191 Group: System/Servers
192 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
193 Conflicts: %{name}-common-core%{_isa} < %{version}-%{release}
194
195 %description extra
196 MariaDB oqgraph and sphinx storage engines.
197
198 %package obsolete
199 Summary: MariaDB obsolete storage engines
200 Group: System/Servers
201 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
202 Conflicts: %{name}-common-core%{_isa} < %{version}-%{release}
203 Conflicts: mysql-core < 5.5.18
204
205 %description obsolete
206 MariaDB obsolete storage engines. InnoDB and Federated are being replaced by
207 XtraDB and FederatedX storage engines. These obsolete storage engines are
208 provided in case you need the vanilla mysql storage engines.
209
210 %package core
211 Summary: Server core binary
212 Group: System/Servers
213 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
214 Provides: mysql-core = %{version}-%{release}
215 Obsoletes: mysql-core < %{version}-%{release}
216
217 %description core
218 Core mysqld server binary. For a full MariaDB database server, install
219 package 'mariadb'.
220
221 %package common-core
222 Summary: Common files required by core binary
223 Group: System/Servers
224 Provides: mysql-common-core = %{version}-%{release}
225 Obsoletes: mysql-common-core < %{version}-%{release}
226
227 %description common-core
228 Common files minimally required by mysqld server binary.
229
230 %package common
231 Summary: Common files
232 Group: System/Servers
233 Requires(post): rpm-helper
234 Requires(preun): rpm-helper
235 Requires(pre): rpm-helper
236 Requires(postun): rpm-helper
237 Requires(post): %{name}-client%{_isa} >= %{version}-%{release}
238 Requires(preun): %{name}-client%{_isa} >= %{version}-%{release}
239 Requires: %{name}-client%{_isa} >= %{version}-%{release}
240 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
241 Provides: mysql-common = %{version}-%{release}
242 Obsoletes: mysql-common < %{version}-%{release}
243
244 %description common
245 Common files for the MariaDB database server.
246
247 %package client
248 Summary: Client
249 Group: Databases
250 Requires(post): %{libname}%{_isa} >= %{version}-%{release}
251 Requires(preun): %{libname}%{_isa} >= %{version}-%{release}
252 Requires: %{libname}%{_isa} >= %{version}-%{release}
253 Provides: mysql-client = %{version}-%{release}
254 Obsoletes: mysql-client < %{version}-%{release}
255
256 %description client
257 This package contains the standard MariaDB clients.
258
259 %package bench
260 Summary: Benchmarks and test system
261 Group: System/Servers
262 Requires(post): %{name}-client%{_isa} >= %{version}-%{release}
263 Requires(preun): %{name}-client%{_isa} >= %{version}-%{release}
264 Requires: %{name}-client%{_isa} >= %{version}-%{release}
265 Suggests: %{name}%{_isa} >= %{version}-%{release}
266 Provides: mysql-bench = %{version}-%{release}
267 Obsoletes: mysql-bench < %{version}-%{release}
268
269 %description bench
270 This package contains MariaDB benchmark scripts and data.
271
272 %package -n %{libname}
273 Summary: Shared libraries
274 Group: System/Libraries
275 Provides: %{name}-shared-libs = %{version}-%{release}
276 Provides: %{name}-shared = %{version}-%{release}
277 Provides: %{mysql_libname} = %{version}-%{release}
278 Obsoletes: %{mysql_libname} < %{version}-%{release}
279
280 %description -n %{libname}
281 This package contains the shared libraries (*.so*) which certain languages and
282 applications need to dynamically load and use MariaDB.
283
284 %package -n %{develname}
285 Summary: Development header files and libraries
286 Group: Development/Other
287 Requires(post): %{libname} >= %{version}-%{release}
288 Requires(preun): %{libname} >= %{version}-%{release}
289 Requires(post): %{name}-common%{_isa} >= %{version}-%{release}
290 Requires(preun): %{name}-common%{_isa} >= %{version}-%{release}
291 Requires(post): %{name}-client%{_isa} >= %{version}-%{release}
292 Requires(preun): %{name}-client%{_isa} >= %{version}-%{release}
293 Requires: %{libname} = %{version}-%{release}
294 Requires: %{name}-common%{_isa} >= %{version}-%{release}
295 Requires: %{name}-client%{_isa} >= %{version}-%{release}
296 Provides: %{name}-devel = %{version}-%{release}
297 Provides: %{libname}-devel = %{version}-%{release}
298 Obsoletes: %{libname}-devel < %{version}-%{release}
299 Obsoletes: %{old_staticdevelname} < %{version}-%{release}
300 Provides: %{mysql_develname} = %{version}-%{release}
301 Obsoletes: %{mysql_develname} < %{version}-%{release}
302 Provides: mysql-devel = %{version}-%{release}
303
304 %description -n %{develname}
305 This package contains the development header files and libraries necessary to
306 develop MariaDB client applications.
307
308 %package -n %{libmariadbembedded}
309 Summary: MariaDB as an embeddable library
310 Group: System/Libraries
311 Provides: %{name}-embedded = %{version}-%{release}
312 Obsoletes: %{name}-embedded < %{version}-%{release}
313 Provides: %{libmysqlembedded} = %{version}-%{release}
314 Obsoletes: %{libmysqlembedded} < %{version}-%{release}
315
316 %description -n %{libmariadbembedded}
317 MariaDB is a multi-user, multi-threaded SQL database server. This
318 package contains a version of the MariaDB server that can be embedded
319 into a client application instead of running as a separate process.
320
321 The API is identical for the embedded MariaDB version and the client/server
322 version.
323
324 %package -n %{libmariadbembedded_devel}
325 Summary: Development files for MySQL as an embeddable library
326 Group: Development/Other
327 Provides: %{name}-embedded-devel = %{version}-%{release}
328 Obsoletes: %{name}-embedded-devel < %{version}-%{release}
329 Requires: %{libmariadbembedded} = %{version}-%{release}
330 Requires: %{develname} = %{version}-%{release}
331 Provides: %{libmysqlembedded_devel} = %{version}-%{release}
332 Obsoletes: %{libmysqlembedded_devel} < %{version}-%{release}
333 Provides: mysql-embedded-devel = %{version}-%{release}
334
335 %description -n %{libmariadbembedded_devel}
336 MariaDB is a multi-user, multi-threaded SQL database server. This
337 package contains files needed for developing and testing with
338 the embedded version of the MariaDB server.
339
340 The API is identical for the embedded MariaDB version and the client/server
341 version.
342
343
344 %prep
345 %setup -q
346 %apply_patches
347
348 mkdir -p Mageia
349 cp %{SOURCE2} Mageia/mysqld.sysconfig
350 cp %{SOURCE3} Mageia/my.cnf
351
352 # lib64 fix
353 perl -pi -e "s|/usr/lib/|%{_libdir}/|g" Mageia/my.cnf
354
355 # antiborker
356 perl -pi -e "s|\@bindir\@|%{_bindir}|g" support-files/* scripts/*
357 perl -pi -e "s|\@sbindir\@|%{_sbindir}|g" support-files/* scripts/*
358 perl -pi -e "s|\@libexecdir\@|%{_sbindir}|g" support-files/* scripts/*
359 perl -pi -e "s|\@localstatedir\@|/var/lib/mysql|g" support-files/* scripts/*
360 perl -pi -e "s|^basedir=.*|basedir=%{_prefix}|g" support-files/* scripts/mysql_install_db*
361
362 # this may be part of the problems with mysql-test
363 # http://bugs.mysql.com/bug.php?id=52223
364 #perl -pi -e "s|basedir/lib\b|basedir/%{_lib}\b|g" mysql-test/mysql-test-run.pl
365 #perl -pi -e "s|basedir/lib/|basedir/%{_lib}/|g" mysql-test/mysql-test-run.pl
366
367 # workaround for upstream bug #56342
368 rm -f mysql-test/t/ssl_8k_key-master.opt
369
370 # upstream has fallen down badly on symbol versioning, do it ourselves
371 cp %{SOURCE4} libmysql/libmysql.version
372
373 %build
374 %serverbuild
375 export CFLAGS="${CFLAGS:-%{optflags}}"
376 export CXXFLAGS="${CXXFLAGS:-%{optflags}}"
377 export FFLAGS="${FFLAGS:-%{optflags}}"
378
379 %cmake \
380 -DCMAKE_BUILD_TYPE=RelWithDebInfo \
381 -DCMAKE_INSTALL_PREFIX=%{_prefix} \
382 -DINSTALL_SBINDIR=sbin \
383 -DMYSQL_DATADIR=/var/lib/mysql \
384 -DSYSCONFDIR=%{_sysconfdir} \
385 -DINSTALL_PLUGINDIR=%{_lib}/mysql/plugin \
386 -DINSTALL_MANDIR=share/man \
387 -DINSTALL_SHAREDIR=share/mysql \
388 -DINSTALL_LIBDIR=%{_lib} \
389 -DINSTALL_INCLUDEDIR=include/mysql \
390 -DINSTALL_INFODIR=share/info \
391 -DINSTALL_MYSQLDATADIR=/var/lib/mysql \
392 -DINSTALL_MYSQLTESTDIR=share/mysql/mysql-test \
393 -DINSTALL_SQLBENCHDIR=share/mysql \
394 -DINSTALL_SUPPORTFILESDIR=share/mysql \
395 -DINSTALL_MYSQLSHAREDIR=share/mysql \
396 -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \
397 -DWITH_READLINE=0 \
398 -DWITH_LIBEDIT=0 \
399 -DWITH_LIBWRAP=1 \
400 -DWITH_SSL=system \
401 -DWITH_ZLIB=system \
402 -DWITH_PIC=1 \
403 -DMYSQL_TCP_PORT=3306 \
404 -DEXTRA_CHARSETS=all \
405 -DENABLED_LOCAL_INFILE=1 \
406 -DENABLE_DTRACE=1 \
407 -DWITH_EMBEDDED_SERVER=1 \
408 -DMYSQL_USER=%{muser} \
409 %if %{build_debug}
410 -DWITH_DEBUG=1 \
411 %else
412 -DWITH_DEBUG=0 \
413 %endif
414 -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
415 -DWITHOUT_NDBCLUSTER_STORAGE_ENGINE=1 \
416 -DWITHOUT_DAEMON_EXAMPLE=1 \
417 -DWITH_PLUGIN_PBXT=1 \
418 -DFEATURE_SET="community" \
419 -DCOMPILATION_COMMENT="%{_vendor} - MariaDB Community Edition (GPL)"
420
421 cp ../libmysql/libmysql.version libmysql/libmysql.version
422
423 %make
424
425 %install
426 rm -rf %{buildroot}
427
428 # don't fiddle with the initscript!
429 export DONT_GPRINTIFY=1
430
431 %if %{build_debug}
432 export DONT_STRIP=1
433 %endif
434
435 install -d %{buildroot}%{_sysconfdir}/sysconfig
436 install -d %{buildroot}%{_initrddir}
437 install -d %{buildroot}%{_var}/log/mysqld
438 install -d %{buildroot}/var/lib/mysql/{mysql,test}
439
440 %makeinstall_std -C build
441
442 # install init scripts
443 install -m0755 build/support-files/mysql.server %{buildroot}%{_initrddir}/mysqld
444
445 # install configuration files
446 install -m0644 Mageia/mysqld.sysconfig %{buildroot}%{_sysconfdir}/sysconfig/mysqld
447 install -m0644 Mageia/my.cnf %{buildroot}%{_sysconfdir}/my.cnf
448
449 install -m 0644 -D %{SOURCE10} %{buildroot}%{_tmpfilesdir}/mysql.conf
450 install -m 0644 -D %{SOURCE11} %{buildroot}%{_unitdir}/mysqld.service
451 install -m 0755 %{SOURCE12} %{buildroot}%{_sbindir}/mysqld-prepare-db-dir
452 install -m 0755 %{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 %_tmpfilescreate mysql
617 %_post_service mysqld
618
619 %preun
620 %_preun_service mysqld
621
622 %postun
623 if [ "$1" = "1" ]; then
624 if [ -f /var/lock/subsys/mysqld ]; then
625 %{_initrddir}/mysqld restart > /dev/null 2>/dev/null || :
626 fi
627 fi
628
629 %pre common-core
630 # enable plugins
631 if [ -f %{_sysconfdir}/my.cnf ]; then
632 perl -pi -e "s|^#plugin-load|plugin-load|g" %{_sysconfdir}/my.cnf
633 perl -pi -e "s|^#federated|federated|g" %{_sysconfdir}/my.cnf
634 # switch to federatedx provider
635 perl -pi -e "s|;ha_federated\.so$|;ha_federatedx\.so|g" %{_sysconfdir}/my.cnf
636 fi
637
638 %files
639 %doc README.urpmi
640 %{_initrddir}/mysqld
641 %{_tmpfilesdir}/mysql.conf
642 %{_unitdir}/mysqld.service
643 %{_sbindir}/mysqld-prepare-db-dir
644 %{_sbindir}/mysqld-wait-ready
645 %dir %{_libdir}/mysql/plugin
646 # authentication plugins
647 %{_libdir}/mysql/plugin/auth_socket.so
648 %{_libdir}/mysql/plugin/auth_pam.so
649 %{_libdir}/mysql/plugin/dialog.so
650 %{_libdir}/mysql/plugin/mysql_clear_password.so
651 # replication plugins
652 %{_libdir}/mysql/plugin/semisync_master.so
653 %{_libdir}/mysql/plugin/semisync_slave.so
654 # storage engines
655 %{_libdir}/mysql/plugin/ha_archive.so
656 %{_libdir}/mysql/plugin/ha_blackhole.so
657 %{_libdir}/mysql/plugin/ha_federatedx.so
658 # sql logging plugin
659 %{_libdir}/mysql/plugin/sql_errlog.so
660 # upstream describes this as "junk"
661 %{_libdir}/mysql/plugin/adt_null.so
662 %{_libdir}/mysql/plugin/mypluglib.so
663 %{_libdir}/mysql/plugin/qa_auth_client.so
664 %{_libdir}/mysql/plugin/qa_auth_interface.so
665 %{_libdir}/mysql/plugin/qa_auth_server.so
666 # example plugins, not usefull at all, removing
667 #%{_libdir}/mysql/plugin/auth_test_plugin.so
668 #%{_libdir}/mysql/plugin/dialog_examples.so
669
670 %files -n mysql-MariaDB
671
672 %files obsolete
673 %{_libdir}/mysql/plugin/ha_innodb.so
674 %{_libdir}/mysql/plugin/ha_federated.so
675
676 %files feedback
677 %{_libdir}/mysql/plugin/feedback.so
678
679 %files extra
680 %{_libdir}/mysql/plugin/ha_oqgraph.so
681 %{_libdir}/mysql/plugin/ha_sphinx.so
682 %{_libdir}/mysql/plugin/handlersocket.so
683
684 %files client
685 %config(noreplace) %{_sysconfdir}/mysqlaccess.conf
686 %{_bindir}/msql2mysql
687 %{_bindir}/mysql
688 %{_bindir}/mysqlaccess
689 %{_bindir}/mysqladmin
690 %{_bindir}/mysqlanalyze
691 %{_bindir}/mysqlbinlog
692 %{_bindir}/mysqlcheck
693 %{_bindir}/mysqldump
694 %{_bindir}/mysqldumpslow
695 %{_bindir}/mysql_find_rows
696 %{_bindir}/mysqlimport
697 %{_bindir}/mysqloptimize
698 %{_bindir}/mysqlrepair
699 %{_bindir}/mysqlshow
700 %{_bindir}/mysqlslap
701 %{_bindir}/mysql_waitpid
702 %{_mandir}/man1/msql2mysql.1*
703 %{_mandir}/man1/myisam_ftdump.1*
704 %{_mandir}/man1/mysql.1*
705 %{_mandir}/man1/mysqlaccess.1*
706 %{_mandir}/man1/mysqladmin.1*
707 %{_mandir}/man1/mysqlbinlog.1*
708 %{_mandir}/man1/mysqlcheck.1*
709 %{_mandir}/man1/mysqldump.1*
710 %{_mandir}/man1/mysqldumpslow.1*
711 %{_mandir}/man1/mysql_find_rows.1*
712 %{_mandir}/man1/mysqlimport.1*
713 %{_mandir}/man1/mysqlshow.1*
714 %{_mandir}/man1/mysql_waitpid.1*
715
716 %files bench
717 %doc build/sql-bench/README
718 %{_bindir}/my_safe_process
719 %{_bindir}/mysql_client_test
720 %{_bindir}/mysql_client_test_embedded
721 %{_bindir}/mysqltest_embedded
722 %{_datadir}/mysql/sql-bench
723 %attr(-,mysql,mysql) %{_datadir}/mysql/mysql-test
724 %{_mandir}/man1/mysql-stress-test.pl.1*
725 %{_mandir}/man1/mysql-test-run.pl.1*
726 %{_mandir}/man1/mysql_client_test.1*
727 %{_mandir}/man1/mysql_client_test_embedded.1*
728 %{_mandir}/man1/mysqltest.1*
729 %{_mandir}/man1/mysqltest_embedded.1*
730
731 %files core
732 %{_sbindir}/mysqld
733
734 %files common-core
735 %config(noreplace) %{_sysconfdir}/my.cnf
736 %dir %{_datadir}/mysql
737 %{_datadir}/mysql/english
738 %{_datadir}/mysql/charsets
739
740 %files common
741 %doc README COPYING
742 %config(noreplace) %{_sysconfdir}/sysconfig/mysqld
743 %{_bindir}/aria_chk
744 %{_bindir}/aria_dump_log
745 %{_bindir}/aria_ftdump
746 %{_bindir}/aria_pack
747 %{_bindir}/aria_read_log
748 %{_bindir}/innochecksum
749 %{_bindir}/myisamchk
750 %{_bindir}/myisam_ftdump
751 %{_bindir}/myisamlog
752 %{_bindir}/myisampack
753 %{_bindir}/my_print_defaults
754 %{_bindir}/mysqlbug
755 %{_bindir}/mysql_convert_table_format
756 %{_bindir}/mysqld_multi
757 %{_bindir}/mysqld_safe
758 %{_bindir}/mysql_fix_extensions
759 %{_bindir}/mysqlhotcopy
760 %{_bindir}/mysql_install_db
761 %{_bindir}/mysql_plugin
762 %{_bindir}/mysql_secure_installation
763 %{_bindir}/mysql_setpermission
764 %{_bindir}/mysqltest
765 %{_bindir}/mysql_tzinfo_to_sql
766 %{_bindir}/mysql_upgrade
767 %{_bindir}/mysql_zap
768 %{_bindir}/mytop
769 %{_bindir}/perror
770 %{_bindir}/replace
771 %{_bindir}/resolveip
772 %{_bindir}/resolve_stack_dump
773 %attr(0755,%{muser},%{muser}) %dir /var/lib/mysql
774 %attr(0755,%{muser},%{muser}) %dir /var/lib/mysql/mysql
775 %attr(0755,%{muser},%{muser}) %dir /var/lib/mysql/test
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