/[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 398168 - (show annotations) (download)
Tue Feb 12 20:13:31 2013 UTC (11 years, 1 month ago) by alien
File size: 29619 byte(s)
SILENT: bump release
1 #(ie. use with rpm --rebuild):
2 #
3 # --with debug Compile with debugging code
4 #
5 # enable build with debugging code: will _not_ strip away any debugging code,
6 # will _add_ -g3 to CFLAGS, will _add_ --enable-maintainer-mode to
7 # configure.
8
9 %define build_debug 0
10 %define build_test 0
11
12 # commandline overrides:
13 # rpm -ba|--rebuild --with 'xxx'
14 %{?_with_debug: %{expand: %%define build_debug 1}}
15 %{?_with_test: %{expand: %%define build_test 1}}
16 %{?_without_test: %global build_test 0}
17
18 %if %{build_debug}
19 # disable build root strip policy
20 %define __spec_install_post %{_libdir}/rpm/brp-compress || :
21
22 # This gives extra debuggin and huge binaries
23 %{expand:%%define optflags %{optflags} %([ ! $DEBUG ] && echo '-g3')}
24 %endif
25
26 %if %{build_debug}
27 %define build_debug 1
28 %endif
29
30 %if %{build_test}
31 %define build_test 1
32 %endif
33
34 %define major 18
35 %define libmysqlembedded_major 0
36 %define libmysqlembedded_minor 0.1
37 %define libname %mklibname mariadb %{major}
38 %define libmariadbservices %mklibname mariadbservices
39 %define libmariadbembedded %mklibname mariadb-embedded %{major}
40 %define develname %mklibname -d mariadb
41 %define old_staticdevelname %mklibname -d -s mariadb
42 %define libmariadbembedded_devel %mklibname -d mariadb-embedded
43
44 %define mysql_libname %mklibname mysql %{major}
45 %define mysql_develname %mklibname -d mysql
46 %define libmysqlservices %mklibname mysqlservices
47 %define libmysqlembedded %mklibname mysqld %{libmysqlembedded_major}
48 %define libmysqlembedded_devel %mklibname -d mariadb-embedded
49
50 %define mirror http://ftp.osuosl.org/pub/mariadb
51
52 %define muser mysql
53 Summary: A very fast and reliable SQL database engine
54 Name: mariadb
55 Version: 5.5.28
56 Release: %mkrel 10
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 Patch106: mariadb-5.5-hotcopy.patch
80 Patch107: mariadb-5.5-mysql_install_db-quiet.patch
81
82 # mageia patches
83 Patch120: mariadb-5.5.25-forgotten-files.patch
84 Patch126: mariadb-5.5-check-dbname.patch
85 Patch127: mariadb-5.5-no-MDL-locks-for-aliases.patch
86 Patch128: mariadb-5.5-mdev4029.patch
87 Patch129: mariadb-5.5-CVE-2012-5627.patch
88 Patch130: mariadb-5.5-buffer-overflow.patch
89 Patch131: mariadb-5.5-CVE-2012-5615.patch
90 Patch132: mariadb-5.5-no-anonymous-user.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 # remove the sql_yacc.cc file so that bison will regenerate it properly, even if it's patched
353 rm -f sql/sql_yacc.cc
354
355 # lib64 fix
356 perl -pi -e "s|/usr/lib/|%{_libdir}/|g" Mageia/my.cnf
357
358 # antiborker
359 perl -pi -e "s|\@bindir\@|%{_bindir}|g" support-files/* scripts/*
360 perl -pi -e "s|\@sbindir\@|%{_sbindir}|g" support-files/* scripts/*
361 perl -pi -e "s|\@libexecdir\@|%{_sbindir}|g" support-files/* scripts/*
362 perl -pi -e "s|\@localstatedir\@|/var/lib/mysql|g" support-files/* scripts/*
363 perl -pi -e "s|^basedir=.*|basedir=%{_prefix}|g" support-files/* scripts/mysql_install_db*
364
365 # this may be part of the problems with mysql-test
366 # http://bugs.mysql.com/bug.php?id=52223
367 #perl -pi -e "s|basedir/lib\b|basedir/%{_lib}\b|g" mysql-test/mysql-test-run.pl
368 #perl -pi -e "s|basedir/lib/|basedir/%{_lib}/|g" mysql-test/mysql-test-run.pl
369
370 # workaround for upstream bug #56342
371 rm -f mysql-test/t/ssl_8k_key-master.opt
372 rm -f mysql-test/t/file_contents.test
373
374 # fix distribution name
375 sed -i 's/Source distribution/%{_vendor} MariaDB Server/' mysql-test/suite/percona/innodb_sys_index.result
376
377 # upstream has fallen down badly on symbol versioning, do it ourselves
378 cp %{SOURCE4} libmysql/libmysql.version
379
380 %build
381 %serverbuild
382 export CFLAGS="${CFLAGS:-%{optflags}}"
383 export CXXFLAGS="${CXXFLAGS:-%{optflags}}"
384 export FFLAGS="${FFLAGS:-%{optflags}}"
385
386 %cmake \
387 -DCMAKE_BUILD_TYPE=RelWithDebInfo \
388 -DCMAKE_INSTALL_PREFIX=%{_prefix} \
389 -DINSTALL_SBINDIR=sbin \
390 -DMYSQL_DATADIR=/var/lib/mysql \
391 -DSYSCONFDIR=%{_sysconfdir} \
392 -DINSTALL_PLUGINDIR=%{_lib}/mysql/plugin \
393 -DINSTALL_MANDIR=share/man \
394 -DINSTALL_SHAREDIR=share/mysql \
395 -DINSTALL_LIBDIR=%{_lib} \
396 -DINSTALL_INCLUDEDIR=include/mysql \
397 -DINSTALL_INFODIR=share/info \
398 -DINSTALL_MYSQLDATADIR=/var/lib/mysql \
399 -DINSTALL_MYSQLTESTDIR=share/mysql/mysql-test \
400 -DINSTALL_SQLBENCHDIR=share/mysql \
401 -DINSTALL_SUPPORTFILESDIR=share/mysql \
402 -DINSTALL_MYSQLSHAREDIR=share/mysql \
403 -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \
404 -DWITH_READLINE=0 \
405 -DWITH_LIBEDIT=0 \
406 -DWITH_LIBWRAP=1 \
407 -DWITH_SSL=system \
408 -DWITH_ZLIB=system \
409 -DWITH_PIC=1 \
410 -DMYSQL_TCP_PORT=3306 \
411 -DEXTRA_CHARSETS=all \
412 -DENABLED_LOCAL_INFILE=1 \
413 -DENABLE_DTRACE=1 \
414 -DWITH_EMBEDDED_SERVER=1 \
415 -DMYSQL_USER=%{muser} \
416 %if %{build_debug}
417 -DWITH_DEBUG=1 \
418 %else
419 -DWITH_DEBUG=0 \
420 %endif
421 -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
422 -DWITHOUT_NDBCLUSTER_STORAGE_ENGINE=1 \
423 -DWITHOUT_DAEMON_EXAMPLE=1 \
424 -DWITH_PLUGIN_PBXT=0 \
425 -DFEATURE_SET="community" \
426 -DCOMPILATION_COMMENT="%{_vendor} MariaDB Server"
427
428 cp ../libmysql/libmysql.version libmysql/libmysql.version
429
430 %make
431
432 %install
433 rm -rf %{buildroot}
434
435 # don't fiddle with the initscript!
436 export DONT_GPRINTIFY=1
437
438 %if %{build_debug}
439 export DONT_STRIP=1
440 %endif
441
442 install -d %{buildroot}%{_sysconfdir}/sysconfig
443 install -d %{buildroot}%{_initrddir}
444 install -d %{buildroot}%{_var}/log/mysqld
445 install -d %{buildroot}/var/lib/mysql/{mysql,test}
446
447 %makeinstall_std -C build
448
449 # exclude loaddata7 from being converted
450 export EXCLUDE_FROM_EOL_CONVERSION="std_data/loaddata7.dat"
451
452 # install init scripts
453 install -m0755 build/support-files/mysql.server %{buildroot}%{_initrddir}/mysqld
454
455 # install configuration files
456 install -m0644 Mageia/mysqld.sysconfig %{buildroot}%{_sysconfdir}/sysconfig/mysqld
457 install -m0644 Mageia/my.cnf %{buildroot}%{_sysconfdir}/my.cnf
458
459 install -m 0644 -D %{SOURCE10} %{buildroot}%{_tmpfilesdir}/mysql.conf
460 install -m 0644 -D %{SOURCE11} %{buildroot}%{_unitdir}/mysqld.service
461 install -m 0755 %{SOURCE12} %{buildroot}%{_sbindir}/mysqld-prepare-db-dir
462 install -m 0755 %{SOURCE13} %{buildroot}%{_sbindir}/mysqld-wait-ready
463
464 # bork
465 mv %{buildroot}%{_bindir}/mysqlaccess.conf %{buildroot}%{_sysconfdir}/
466 chmod 644 %{buildroot}%{_sysconfdir}/mysqlaccess.conf
467 mv %{buildroot}%{_prefix}/scripts/mysql_install_db %{buildroot}%{_bindir}/
468 mv %{buildroot}%{_datadir}/mysql/aclocal %{buildroot}%{_datadir}/aclocal
469
470 pushd %{buildroot}%{_bindir}
471 ln -sf mysqlcheck mysqlrepair
472 ln -sf mysqlcheck mysqlanalyze
473 ln -sf mysqlcheck mysqloptimize
474 popd
475
476 # nuke -Wl,--as-needed from the mysql_config file
477 perl -pi -e "s|^ldflags=.*|ldflags=\'-rdynamic\'|g" %{buildroot}%{_bindir}/mysql_config
478
479 # cmake generates some completely wacko references to -lprobes_mysql when
480 # building with dtrace support. Haven't found where to shut that off,
481 # so resort to this blunt instrument. While at it, let's not reference
482 # libmysqlclient_r anymore either.
483 sed -e 's/-lprobes_mysql//' -e 's/-lmysqlclient_r/-lmysqlclient/' \
484 %{buildroot}%{_bindir}/mysql_config >mysql_config.tmp
485 cp -f mysql_config.tmp %{buildroot}%{_bindir}/mysql_config
486 chmod 755 %{buildroot}%{_bindir}/mysql_config
487 install -m 0755 -d %{buildroot}/var/lib/mysql
488
489 # Remove libmysqld.a, + hardlink libmysqld.so.%{libmysqlembedded_major} so that it's provided
490 rm -f %{buildroot}%{_libdir}/libmysqld.a
491 ln %{buildroot}%{_libdir}/libmysqld.so.%{major} %{buildroot}%{_libdir}/libmysqld.so.%{libmysqlembedded_major}.%{libmysqlembedded_minor}
492 ln -s libmysqld.so.%{libmysqlembedded_major}.%{libmysqlembedded_minor} %{buildroot}%{_libdir}/libmysqld.so.%{libmysqlembedded_major}
493
494 # libmysqlclient_r is no more. Upstream tries to replace it with symlinks
495 # but that really doesn't work (wrong soname in particular). We'll keep
496 # just the devel libmysqlclient_r.so link, so that rebuilding without any
497 # source change is enough to get rid of dependency on libmysqlclient_r.
498 rm -f %{buildroot}%{_libdir}/libmysqlclient_r.so*
499 ln -s libmysqlclient.so %{buildroot}%{_libdir}/libmysqlclient_r.so
500
501 # remove static libs
502 rm -f %{buildroot}%{_libdir}/libmysqlclient.a
503 rm -f %{buildroot}%{_libdir}/libmysqlclient_r.a
504
505 # mysql-test includes one executable that doesn't belong under /usr/share,
506 # so move it and provide a symlink
507 mv %{buildroot}%{_datadir}/mysql/mysql-test/lib/My/SafeProcess/my_safe_process %{buildroot}%{_bindir}
508 ln -s %{_bindir}/my_safe_process %{buildroot}%{_datadir}/mysql/mysql-test/lib/My/SafeProcess/my_safe_process
509
510 # mysql client statically built against a local embedded library, pretty useless
511 rm -f %{buildroot}%{_bindir}/mysql_embedded
512
513 # this command enables plugins, but needs ini file + configuration in my.cnf
514 # before executing... and oh yeah, mysql must be stopped... => useless
515 # however, apparently tests seem to want it, even thought they don't use it.
516 #rm -f %{buildroot}%{_bindir}/mysql_plugin
517 rm -f %{buildroot}%{_libdir}/mysql/plugin/daemon_example.ini
518
519 # remove more useless plugins
520 rm -f %{buildroot}%{_libdir}/mysql/plugin/auth_test_plugin.so
521 rm -f %{buildroot}%{_libdir}/mysql/plugin/dialog_examples.so
522
523 # no RHEL4 selinux files for us
524 rm -rf %{buildroot}%{_datadir}/mysql/SELinux
525
526 # house cleaning
527 rm -rf %{buildroot}%{_datadir}/info
528 rm -f %{buildroot}%{_bindir}/client_test
529 rm -f %{buildroot}%{_bindir}/make_win_binary_distribution
530 rm -f %{buildroot}%{_bindir}/make_win_src_distribution
531 rm -f %{buildroot}%{_datadir}/mysql/binary-configure
532 rm -f %{buildroot}%{_datadir}/mysql/config.huge.ini
533 rm -f %{buildroot}%{_datadir}/mysql/config.medium.ini
534 rm -f %{buildroot}%{_datadir}/mysql/config.small.ini
535 rm -f %{buildroot}%{_datadir}/mysql/mysqld_multi.server
536 rm -f %{buildroot}%{_datadir}/mysql/mysql-log-rotate
537 rm -f %{buildroot}%{_datadir}/mysql/mysql.server
538 rm -f %{buildroot}%{_datadir}/mysql/ndb-config-2-node.ini
539 rm -f %{buildroot}%{_datadir}/mysql/binary-configure
540 rm -f %{buildroot}%{_mandir}/man1/make_win_bin_dist.1*
541 rm -f %{buildroot}%{_mandir}/man1/make_win_src_distribution.1*
542 rm -f %{buildroot}%{_datadir}/mysql/magic
543
544 # no idea how to fix this
545 rm -rf %{buildroot}%{_prefix}/data
546 rm -rf %{buildroot}%{_prefix}/docs
547 rm -rf %{buildroot}%{_prefix}/scripts
548 rm -f %{buildroot}%{_prefix}/COPYING
549 rm -f %{buildroot}%{_prefix}/COPYING.LESSER
550 rm -f %{buildroot}%{_prefix}/INSTALL-BINARY
551 rm -f %{buildroot}%{_prefix}/README
552
553 %multiarch_binaries %{buildroot}%{_bindir}/mysql_config
554 %multiarch_includes %{buildroot}%{_includedir}/mysql/my_config.h
555
556 cat > README.urpmi <<EOF
557
558 NOTE: MariaDB is installed without root password, it is recommended to set the
559 root password with the following command as soon as possible:
560
561 mysqladmin password
562
563 The initscript used to start mysql has been reverted to use the one shipped
564 by MariaDB. This means the following changes:
565
566 * The generation of the initial system mysql database is now done when mysql
567 is started from the initscript and only if the /var/lib/mysql/mysql
568 directory is empty (mysql_install_db). Previousely this was quite hidden and
569 silently done at (rpm) install time. As a consequence to this change you may
570 have to perform some manual tasks to upgrade the mysql system database and
571 such. So, doing something like this might help you:
572
573 /etc/init.d/mysqld stop
574 TMPDIR=/var/tmp mysql_install_db
575 mysql_upgrade
576
577 The cluster functionalities (ndb) has been deactivated and will be removed in
578 future mysql versions. Oracle has a new product named mysql-cluster that
579 replaces the cluster functionalities.
580
581 The mysql-common-core package ships with a default /etc/my.cnf file that is
582 based on the my-medium.cnf file that comes with the source code.
583 EOF
584
585 ################################################################################
586 # run the tests
587 %if %{build_test}
588 # disable failing tests
589 pushd build/mysql-test
590 export LANG=C
591 export LC_ALL=C
592 export LANGUAGE=C
593 perl ./mysql-test-run.pl \
594 --mtr-build-thread="$((${RANDOM} % 100))" \
595 --retry=0 \
596 --ssl \
597 --big-test \
598 --force \
599 --max-test-fail=0 \
600 --testcase-timeout=60 \
601 --suite-timeout=1200 || false
602 popd
603 %endif
604
605 %pre
606 # enable plugins
607 if [ -f %{_sysconfdir}/my.cnf ]; then
608 perl -pi -e "s|^#plugin-load|plugin-load|g" %{_sysconfdir}/my.cnf
609 perl -pi -e "s|^#federated|federated|g" %{_sysconfdir}/my.cnf
610 # switch to federatedx provider
611 perl -pi -e "s|;ha_federated\.so$|;ha_federatedx\.so|g" %{_sysconfdir}/my.cnf
612 fi
613
614 %pre common
615 # delete the mysql group if no mysql user is found, before adding the user
616 if [ -z "`getent passwd %{muser}`" ] && ! [ -z "`getent group %{muser}`" ]; then
617 %{_sbindir}/groupdel %{muser} 2> /dev/null || :
618 fi
619
620 %_pre_useradd %{muser} /var/lib/mysql /bin/bash
621
622 %post
623 %_tmpfilescreate mysql
624 %_post_service mysqld
625
626 %preun
627 %_preun_service mysqld
628
629 %postun
630 if [ "$1" = "1" ]; then
631 if [ -f /var/lock/subsys/mysqld ]; then
632 %{_initrddir}/mysqld restart > /dev/null 2>/dev/null || :
633 fi
634 fi
635
636 %pre common-core
637 # enable plugins
638 if [ -f %{_sysconfdir}/my.cnf ]; then
639 perl -pi -e "s|^#plugin-load|plugin-load|g" %{_sysconfdir}/my.cnf
640 perl -pi -e "s|^#federated|federated|g" %{_sysconfdir}/my.cnf
641 # switch to federatedx provider
642 perl -pi -e "s|;ha_federated\.so$|;ha_federatedx\.so|g" %{_sysconfdir}/my.cnf
643 fi
644
645 %files
646 %doc README.urpmi
647 %{_initrddir}/mysqld
648 %{_tmpfilesdir}/mysql.conf
649 %{_unitdir}/mysqld.service
650 %{_sbindir}/mysqld-prepare-db-dir
651 %{_sbindir}/mysqld-wait-ready
652 %dir %{_libdir}/mysql/plugin
653 # authentication plugins
654 %{_libdir}/mysql/plugin/auth_socket.so
655 %{_libdir}/mysql/plugin/auth_pam.so
656 %{_libdir}/mysql/plugin/dialog.so
657 %{_libdir}/mysql/plugin/mysql_clear_password.so
658 # replication plugins
659 %{_libdir}/mysql/plugin/semisync_master.so
660 %{_libdir}/mysql/plugin/semisync_slave.so
661 # storage engines
662 %{_libdir}/mysql/plugin/ha_archive.so
663 %{_libdir}/mysql/plugin/ha_blackhole.so
664 %{_libdir}/mysql/plugin/ha_federatedx.so
665 # sql logging plugin
666 %{_libdir}/mysql/plugin/sql_errlog.so
667 # upstream describes this as "junk"
668 %{_libdir}/mysql/plugin/adt_null.so
669 %{_libdir}/mysql/plugin/mypluglib.so
670 %{_libdir}/mysql/plugin/qa_auth_client.so
671 %{_libdir}/mysql/plugin/qa_auth_interface.so
672 %{_libdir}/mysql/plugin/qa_auth_server.so
673 # example plugins, not usefull at all, removing
674 #%{_libdir}/mysql/plugin/auth_test_plugin.so
675 #%{_libdir}/mysql/plugin/dialog_examples.so
676
677 %files -n mysql-MariaDB
678
679 %files obsolete
680 %{_libdir}/mysql/plugin/ha_innodb.so
681 %{_libdir}/mysql/plugin/ha_federated.so
682
683 %files feedback
684 %{_libdir}/mysql/plugin/feedback.so
685
686 %files extra
687 %{_libdir}/mysql/plugin/ha_oqgraph.so
688 %{_libdir}/mysql/plugin/ha_sphinx.so
689 %{_libdir}/mysql/plugin/handlersocket.so
690
691 %files client
692 %config(noreplace) %{_sysconfdir}/mysqlaccess.conf
693 %{_bindir}/msql2mysql
694 %{_bindir}/mysql
695 %{_bindir}/mysqlaccess
696 %{_bindir}/mysqladmin
697 %{_bindir}/mysqlanalyze
698 %{_bindir}/mysqlbinlog
699 %{_bindir}/mysqlcheck
700 %{_bindir}/mysqldump
701 %{_bindir}/mysqldumpslow
702 %{_bindir}/mysql_find_rows
703 %{_bindir}/mysqlimport
704 %{_bindir}/mysqloptimize
705 %{_bindir}/mysqlrepair
706 %{_bindir}/mysqlshow
707 %{_bindir}/mysqlslap
708 %{_bindir}/mysql_waitpid
709 %{_mandir}/man1/msql2mysql.1*
710 %{_mandir}/man1/myisam_ftdump.1*
711 %{_mandir}/man1/mysql.1*
712 %{_mandir}/man1/mysqlaccess.1*
713 %{_mandir}/man1/mysqladmin.1*
714 %{_mandir}/man1/mysqlbinlog.1*
715 %{_mandir}/man1/mysqlcheck.1*
716 %{_mandir}/man1/mysqldump.1*
717 %{_mandir}/man1/mysqldumpslow.1*
718 %{_mandir}/man1/mysql_find_rows.1*
719 %{_mandir}/man1/mysqlimport.1*
720 %{_mandir}/man1/mysqlshow.1*
721 %{_mandir}/man1/mysql_waitpid.1*
722
723 %files bench
724 %doc build/sql-bench/README
725 %{_bindir}/my_safe_process
726 %{_bindir}/mysql_client_test
727 %{_bindir}/mysql_client_test_embedded
728 %{_bindir}/mysqltest_embedded
729 %{_datadir}/mysql/sql-bench
730 %attr(-,mysql,mysql) %{_datadir}/mysql/mysql-test
731 %{_mandir}/man1/mysql-stress-test.pl.1*
732 %{_mandir}/man1/mysql-test-run.pl.1*
733 %{_mandir}/man1/mysql_client_test.1*
734 %{_mandir}/man1/mysql_client_test_embedded.1*
735 %{_mandir}/man1/mysqltest.1*
736 %{_mandir}/man1/mysqltest_embedded.1*
737
738 %files core
739 %{_sbindir}/mysqld
740
741 %files common-core
742 %config(noreplace) %{_sysconfdir}/my.cnf
743 %dir %{_datadir}/mysql
744 %{_datadir}/mysql/english
745 %{_datadir}/mysql/charsets
746
747 %files common
748 %doc README COPYING
749 %config(noreplace) %{_sysconfdir}/sysconfig/mysqld
750 %{_bindir}/aria_chk
751 %{_bindir}/aria_dump_log
752 %{_bindir}/aria_ftdump
753 %{_bindir}/aria_pack
754 %{_bindir}/aria_read_log
755 %{_bindir}/innochecksum
756 %{_bindir}/myisamchk
757 %{_bindir}/myisam_ftdump
758 %{_bindir}/myisamlog
759 %{_bindir}/myisampack
760 %{_bindir}/my_print_defaults
761 %{_bindir}/mysqlbug
762 %{_bindir}/mysql_convert_table_format
763 %{_bindir}/mysqld_multi
764 %{_bindir}/mysqld_safe
765 %{_bindir}/mysql_fix_extensions
766 %{_bindir}/mysqlhotcopy
767 %{_bindir}/mysql_install_db
768 %{_bindir}/mysql_plugin
769 %{_bindir}/mysql_secure_installation
770 %{_bindir}/mysql_setpermission
771 %{_bindir}/mysqltest
772 %{_bindir}/mysql_tzinfo_to_sql
773 %{_bindir}/mysql_upgrade
774 %{_bindir}/mysql_zap
775 %{_bindir}/mytop
776 %{_bindir}/perror
777 %{_bindir}/replace
778 %{_bindir}/resolveip
779 %{_bindir}/resolve_stack_dump
780 %attr(0755,%{muser},%{muser}) %dir /var/lib/mysql
781 %attr(0755,%{muser},%{muser}) %dir /var/lib/mysql/mysql
782 %attr(0755,%{muser},%{muser}) %dir /var/lib/mysql/test
783 %attr(0755,%{muser},%{muser}) %dir %{_var}/log/mysqld
784 %{_datadir}/mysql/*.cnf
785 %{_datadir}/mysql/fill_help_tables.sql
786 %{_datadir}/mysql/mysql_system_tables.sql
787 %{_datadir}/mysql/mysql_system_tables_data.sql
788 %{_datadir}/mysql/mysql_test_data_timezone.sql
789 %{_datadir}/mysql/errmsg-utf8.txt
790 %{_datadir}/mysql/czech
791 %{_datadir}/mysql/danish
792 %{_datadir}/mysql/dutch
793 %{_datadir}/mysql/estonian
794 %{_datadir}/mysql/french
795 %{_datadir}/mysql/german
796 %{_datadir}/mysql/greek
797 %{_datadir}/mysql/hungarian
798 %{_datadir}/mysql/italian
799 %{_datadir}/mysql/japanese
800 %{_datadir}/mysql/korean
801 %{_datadir}/mysql/norwegian
802 %{_datadir}/mysql/norwegian-ny
803 %{_datadir}/mysql/polish
804 %{_datadir}/mysql/portuguese
805 %{_datadir}/mysql/romanian
806 %{_datadir}/mysql/russian
807 %{_datadir}/mysql/serbian
808 %{_datadir}/mysql/slovak
809 %{_datadir}/mysql/spanish
810 %{_datadir}/mysql/swedish
811 %{_datadir}/mysql/ukrainian
812 %{_mandir}/man1/innochecksum.1*
813 %{_mandir}/man1/myisamchk.1*
814 %{_mandir}/man1/myisamlog.1*
815 %{_mandir}/man1/myisampack.1*
816 %{_mandir}/man1/my_print_defaults.1*
817 %{_mandir}/man1/mysqlbug.1*
818 %{_mandir}/man1/mysql_convert_table_format.1*
819 %{_mandir}/man1/mysqld_multi.1*
820 %{_mandir}/man1/mysqld_safe.1*
821 %{_mandir}/man1/mysql_fix_extensions.1*
822 %{_mandir}/man1/mysql_fix_privilege_tables.1*
823 %{_mandir}/man1/mysqlhotcopy.1*
824 %{_mandir}/man1/mysql_install_db.1*
825 %{_mandir}/man1/mysqlman.1*
826 %{_mandir}/man1/mysql_secure_installation.1*
827 %{_mandir}/man1/mysql.server.1*
828 %{_mandir}/man1/mysql_setpermission.1*
829 %{_mandir}/man1/mysqlslap.1*
830 %{_mandir}/man1/mysql_tzinfo_to_sql.1*
831 %{_mandir}/man1/mysql_upgrade.1*
832 %{_mandir}/man1/mysql_zap.1*
833 %{_mandir}/man1/perror.1*
834 %{_mandir}/man1/replace.1*
835 %{_mandir}/man1/resolveip.1*
836 %{_mandir}/man1/resolve_stack_dump.1*
837 %{_mandir}/man8/mysqld.8*
838 %{_mandir}/man8/mysqlmanager.8*
839
840 %files -n %{libname}
841 %{_libdir}/libmysqlclient.so.%{major}*
842
843 %files -n %{develname}
844 %doc INSTALL-SOURCE
845 %multiarch %{multiarch_bindir}/mysql_config
846 %{_bindir}/mysql_config
847 %{_libdir}/libmysqlclient_r.so
848 %{_libdir}/libmysqlclient.so
849 %dir %{_includedir}/mysql
850 %dir %{_includedir}/mysql/psi
851 %{_includedir}/mysql/*.h
852 %{_includedir}/mysql/private/*.h
853 %{_includedir}/mysql/private/atomic/*.h
854 %{_includedir}/mysql/psi/*.h
855 %multiarch %{multiarch_includedir}/mysql/my_config.h
856 %{_mandir}/man1/comp_err.1*
857 %{_mandir}/man1/mysql_config.1*
858 %{_datadir}/aclocal/mysql.m4
859 # mysqlservices library is static, because it doesn't contain any code
860 # itself, and is meant to be statically linked to all plugins.
861 %{_libdir}/libmysqlservices.a
862
863 %files -n %{libmariadbembedded}
864 %doc README COPYING
865 %{_libdir}/libmysqld.so.%{major}
866 %{_libdir}/libmysqld.so.%{libmysqlembedded_major}*
867
868 %files -n %{libmariadbembedded_devel}
869 %{_libdir}/libmysqld.so
870 %{_bindir}/mysql_client_test_embedded
871 %{_bindir}/mysqltest_embedded
872 %{_mandir}/man1/mysql_client_test_embedded.1*
873 %{_mandir}/man1/mysqltest_embedded.1*

  ViewVC Help
Powered by ViewVC 1.1.30