/[packages]/cauldron/mariadb/current/SPECS/mariadb.spec
ViewVC logotype

Annotation of /cauldron/mariadb/current/SPECS/mariadb.spec

Parent Directory Parent Directory | Revision Log Revision Log


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

  ViewVC Help
Powered by ViewVC 1.1.30