/[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 317084 - (hide annotations) (download)
Sun Nov 11 22:20:24 2012 UTC (11 years, 4 months ago) by spuhler
File size: 29504 byte(s)
bumped rel in order to make it update from mga2
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     %define major 18
35 alien 182848 %define libmysqlembedded_major 0
36     %define libmysqlembedded_minor 0.1
37 alien 166284 %define libname %mklibname mariadb %{major}
38     %define libmariadbservices %mklibname mariadbservices
39 alien 182848 %define libmariadbembedded %mklibname mariadb-embedded %{major}
40 alien 166284 %define develname %mklibname -d mariadb
41     %define old_staticdevelname %mklibname -d -s mariadb
42     %define libmariadbembedded_devel %mklibname -d mariadb-embedded
43    
44 alien 183054 %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 alien 223554 %define mirror http://ftp.osuosl.org/pub/mariadb
51 alien 166284
52     %define muser mysql
53     Summary: A very fast and reliable SQL database engine
54     Name: mariadb
55 alien 279279 Version: 5.5.25
56 spuhler 317084 Release: %mkrel 3
57 alien 166284 Group: Databases
58     License: GPLv2 with exceptions
59     URL: http://mariadb.org/
60 alien 215169 Source0: %{mirror}/%{name}-%{version}/kvm-tarbake-jaunty-x86/%{name}-%{version}.tar.gz
61 alien 166284 Source2: mysqld.sysconfig
62     Source3: my.cnf
63     Source4: libmysql.version
64     Source10: mysql.tmpfiles.d
65     Source11: mysqld.service
66     Source12: mysqld-prepare-db-dir
67     Source13: mysqld-wait-ready
68     # the following patches are rediffed from the mysql-5.5 src.rpm to mariadb-5.5
69     # fedora patches
70     Patch1: mariadb-5.5-errno.patch
71     Patch2: mariadb-5.5-strmov.patch
72     Patch3: mariadb-5.5-install-test.patch
73     Patch4: mysql-expired-certs.patch
74     Patch7: mariadb-5.5-versioning.patch
75     Patch8: mariadb-5.5-dubious-exports.patch
76     Patch12: mysql-openssl-test.patch
77    
78     # mandriva patches
79     Patch101: mariadb-5.5-logrotate.patch
80     Patch102: mariadb-5.5-initscript.patch
81     Patch103: mariadb-5.5-mysql_upgrade-exit-status.patch
82     Patch106: mariadb-5.5-hotcopy.patch
83     Patch107: mariadb-5.5-mysql_install_db-quiet.patch
84    
85 alien 279279 # mageia patches (from upstream)
86     Patch120: mariadb-5.5.25-forgotten-files.patch
87     Patch121: mariadb-5.5-fix-merge-with-gis-index.patch
88     Patch122: mariadb-5.5.25-fix-OS-report-feedback.patch
89    
90 tmb 233779 Requires(post): rpm-helper >= 0.24.8-1
91     Requires(preun): rpm-helper >= 0.24.8-1
92 alien 193664 Requires(post): %{name}-common%{_isa} = %{version}-%{release}
93     Requires(preun): %{name}-common%{_isa} = %{version}-%{release}
94     Requires(post): %{name}-client%{_isa} = %{version}-%{release}
95     Requires(preun): %{name}-client%{_isa} = %{version}-%{release}
96     Requires(postun): %{name}-common%{_isa} = %{version}-%{release}
97     Requires(postun): %{name}-client%{_isa} = %{version}-%{release}
98     Requires: %{name}-common%{_isa} = %{version}-%{release}
99     Requires: %{name}-core%{_isa} = %{version}-%{release}
100     Requires: %{name}-client%{_isa} = %{version}-%{release}
101 alien 182848 Provides: mysql = %{version}-%{release}
102 fwang 230765 Obsoletes: mysql < %{version}-%{release}
103 alien 188299 Obsoletes: %{libmariadbservices} < 5.5.18-0.3194.20111227.1
104 fwang 230765 Obsoletes: %{libmysqlservices} < %{version}-%{release}
105 alien 230190 Conflicts: %{name}-extra%{_isa} < %{version}-%{release}
106     Conflicts: %{name}-feedback%{_isa} < %{version}-%{release}
107     Conflicts: %{name}-obsolete%{_isa} < %{version}-%{release}
108 alien 193664 Suggests: %{name}-extra%{_isa}
109 alien 166284 BuildRequires: bison
110     BuildRequires: cmake
111     BuildRequires: doxygen
112     BuildRequires: glibc-devel
113     BuildRequires: libaio-devel
114     BuildRequires: libstdc++-devel
115     BuildRequires: libtermcap-devel
116     BuildRequires: multiarch-utils >= 1.0.3
117     BuildRequires: ncurses-devel
118     BuildRequires: openssl-devel
119     BuildRequires: wrap-devel
120     BuildRequires: python
121     BuildRequires: systemtap
122     BuildRequires: tetex
123     BuildRequires: texinfo
124     BuildRequires: xfs-devel
125     BuildRequires: zlib-devel
126 alien 166362 BuildRequires: boost-devel
127 alien 233249 BuildRequires: libaio-devel
128 alien 279953 BuildRequires: pam-devel
129 alien 166284 BuildConflicts: edit-devel
130    
131     %description
132     The MariaDB software delivers a very fast, multi-threaded, multi-user, and
133     robust SQL (Structured Query Language) database server. MariaDB Server is
134     intended for mission-critical, heavy-load production systems as well as for
135     embedding into mass-deployed software.
136    
137     The mariadb server is compiled with the following storage engines:
138    
139     - Aria Storage Engine
140     - Archive Storage Engine
141     - Blackhole Storage Engine
142     - CSV Storage Engine
143 alien 188246 - FederatedX Storage Engine (Federated replacement)
144 alien 166284 - Heap Storage Engine
145     - MyISAM Storage Engine
146     - MyISAMMRG Storage Engine
147     - Partition Storage Engine
148     - Perfschema Storage Engine
149 alien 188246 - XtraDB Storage Engine (InnoDB replacement)
150    
151     The following extra storage engines are provided by the mariadb-extra package
152    
153     - OQGraph Storage Engine
154 alien 166284 - Sphinx Storage Engine
155    
156 alien 188246 The feedback storage engine is provided by the mariadb-feedback package
157 alien 166284
158 alien 188246 - Feedback Storage Engine
159    
160     The following storage engines are provided in the mariadb-obsolete package
161    
162     - Federated Storage Engine
163     - InnoDB Storage Engine
164    
165 alien 192139 %package -n mysql-MariaDB
166 alien 192933 Summary: A MySQL drop-in replacement
167 alien 192139 Group: System/Servers
168 alien 193664 Requires: %{name}%{_isa}
169 alien 192139
170     %description -n mysql-MariaDB
171     MariaDB is a complete MySQL drop-in replacement with additional fixes and
172     storage engines.
173    
174     This package is used as a transitional virtual package, which requires
175     MariaDB so that people who used to use mysql can find it nicely.
176    
177 alien 188246 %package feedback
178     Summary: MariaDB feedback storage engine
179     Group: System/Servers
180 alien 193664 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
181 alien 230190 Conflicts: %{name}-common-core%{_isa} < %{version}-%{release}
182 alien 188246
183     %description feedback
184     MariaDB feedback storage engine submits feedback about your mariadb server.
185     Results can be seen on http://mariadb.org/feedback_plugin/ .
186    
187     %package extra
188     Summary: MariaDB extra storage engines
189     Group: System/Servers
190 alien 193664 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
191 alien 230190 Conflicts: %{name}-common-core%{_isa} < %{version}-%{release}
192 alien 188246
193     %description extra
194     MariaDB oqgraph and sphinx storage engines.
195    
196     %package obsolete
197     Summary: MariaDB obsolete storage engines
198     Group: System/Servers
199 alien 193664 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
200 alien 230190 Conflicts: %{name}-common-core%{_isa} < %{version}-%{release}
201 alien 188246 Conflicts: mysql-core < 5.5.18
202    
203     %description obsolete
204     MariaDB obsolete storage engines. InnoDB and Federated are being replaced by
205     XtraDB and FederatedX storage engines. These obsolete storage engines are
206     provided in case you need the vanilla mysql storage engines.
207    
208 alien 166284 %package core
209     Summary: Server core binary
210     Group: System/Servers
211 alien 193664 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
212 alien 182848 Provides: mysql-core = %{version}-%{release}
213 fwang 230765 Obsoletes: mysql-core < %{version}-%{release}
214 alien 166284
215     %description core
216     Core mysqld server binary. For a full MariaDB database server, install
217     package 'mariadb'.
218    
219     %package common-core
220     Summary: Common files required by core binary
221     Group: System/Servers
222 alien 182848 Provides: mysql-common-core = %{version}-%{release}
223 fwang 230765 Obsoletes: mysql-common-core < %{version}-%{release}
224 alien 166284
225     %description common-core
226     Common files minimally required by mysqld server binary.
227    
228     %package common
229     Summary: Common files
230     Group: System/Servers
231     Requires(post): rpm-helper
232     Requires(preun): rpm-helper
233     Requires(pre): rpm-helper
234     Requires(postun): rpm-helper
235 alien 193664 Requires(post): %{name}-client%{_isa} >= %{version}-%{release}
236     Requires(preun): %{name}-client%{_isa} >= %{version}-%{release}
237     Requires: %{name}-client%{_isa} >= %{version}-%{release}
238     Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
239 alien 182848 Provides: mysql-common = %{version}-%{release}
240 fwang 230765 Obsoletes: mysql-common < %{version}-%{release}
241 alien 166284
242     %description common
243     Common files for the MariaDB database server.
244    
245     %package client
246     Summary: Client
247     Group: Databases
248 alien 193664 Requires(post): %{libname}%{_isa} >= %{version}-%{release}
249     Requires(preun): %{libname}%{_isa} >= %{version}-%{release}
250     Requires: %{libname}%{_isa} >= %{version}-%{release}
251 alien 182848 Provides: mysql-client = %{version}-%{release}
252 fwang 230765 Obsoletes: mysql-client < %{version}-%{release}
253 alien 166284
254     %description client
255     This package contains the standard MariaDB clients.
256    
257     %package bench
258     Summary: Benchmarks and test system
259     Group: System/Servers
260 alien 193664 Requires(post): %{name}-client%{_isa} >= %{version}-%{release}
261     Requires(preun): %{name}-client%{_isa} >= %{version}-%{release}
262     Requires: %{name}-client%{_isa} >= %{version}-%{release}
263 alien 182848 Provides: mysql-bench = %{version}-%{release}
264 fwang 230765 Obsoletes: mysql-bench < %{version}-%{release}
265 alien 166284
266     %description bench
267     This package contains MariaDB benchmark scripts and data.
268    
269     %package -n %{libname}
270     Summary: Shared libraries
271     Group: System/Libraries
272     Provides: %{name}-shared-libs = %{version}-%{release}
273     Provides: %{name}-shared = %{version}-%{release}
274 alien 183054 Provides: %{mysql_libname} = %{version}-%{release}
275 fwang 230765 Obsoletes: %{mysql_libname} < %{version}-%{release}
276 alien 166284
277     %description -n %{libname}
278     This package contains the shared libraries (*.so*) which certain languages and
279     applications need to dynamically load and use MariaDB.
280    
281     %package -n %{develname}
282     Summary: Development header files and libraries
283     Group: Development/Other
284 alien 194264 Requires(post): %{libname} >= %{version}-%{release}
285     Requires(preun): %{libname} >= %{version}-%{release}
286 alien 193664 Requires(post): %{name}-common%{_isa} >= %{version}-%{release}
287     Requires(preun): %{name}-common%{_isa} >= %{version}-%{release}
288     Requires(post): %{name}-client%{_isa} >= %{version}-%{release}
289     Requires(preun): %{name}-client%{_isa} >= %{version}-%{release}
290 alien 194264 Requires: %{libname} = %{version}-%{release}
291 alien 193664 Requires: %{name}-common%{_isa} >= %{version}-%{release}
292     Requires: %{name}-client%{_isa} >= %{version}-%{release}
293 alien 166284 Provides: %{name}-devel = %{version}-%{release}
294     Provides: %{libname}-devel = %{version}-%{release}
295 fwang 230765 Obsoletes: %{libname}-devel < %{version}-%{release}
296     Obsoletes: %{old_staticdevelname} < %{version}-%{release}
297 alien 183054 Provides: %{mysql_develname} = %{version}-%{release}
298 fwang 230765 Obsoletes: %{mysql_develname} < %{version}-%{release}
299 fwang 182925 Provides: mysql-devel = %{version}-%{release}
300 alien 166284
301     %description -n %{develname}
302     This package contains the development header files and libraries necessary to
303     develop MariaDB client applications.
304    
305     %package -n %{libmariadbembedded}
306     Summary: MariaDB as an embeddable library
307     Group: System/Libraries
308     Provides: %{name}-embedded = %{version}-%{release}
309 fwang 230765 Obsoletes: %{name}-embedded < %{version}-%{release}
310 alien 183054 Provides: %{libmysqlembedded} = %{version}-%{release}
311 fwang 230765 Obsoletes: %{libmysqlembedded} < %{version}-%{release}
312 alien 166284
313     %description -n %{libmariadbembedded}
314     MariaDB is a multi-user, multi-threaded SQL database server. This
315     package contains a version of the MariaDB server that can be embedded
316     into a client application instead of running as a separate process.
317    
318     The API is identical for the embedded MariaDB version and the client/server
319     version.
320    
321     %package -n %{libmariadbembedded_devel}
322     Summary: Development files for MySQL as an embeddable library
323     Group: Development/Other
324     Provides: %{name}-embedded-devel = %{version}-%{release}
325 fwang 230765 Obsoletes: %{name}-embedded-devel < %{version}-%{release}
326 alien 194264 Requires: %{libmariadbembedded} = %{version}-%{release}
327     Requires: %{develname} = %{version}-%{release}
328 alien 183054 Provides: %{libmysqlembedded_devel} = %{version}-%{release}
329 fwang 230765 Obsoletes: %{libmysqlembedded_devel} < %{version}-%{release}
330 fwang 182925 Provides: mysql-embedded-devel = %{version}-%{release}
331 alien 166284
332     %description -n %{libmariadbembedded_devel}
333     MariaDB is a multi-user, multi-threaded SQL database server. This
334     package contains files needed for developing and testing with
335     the embedded version of the MariaDB server.
336    
337     The API is identical for the embedded MariaDB version and the client/server
338     version.
339    
340 alien 230286
341 alien 166284 %prep
342 alien 182848 %setup -q
343 alien 166284 %apply_patches
344    
345     mkdir -p Mageia
346     cp %{SOURCE2} Mageia/mysqld.sysconfig
347     cp %{SOURCE3} Mageia/my.cnf
348    
349     # lib64 fix
350     perl -pi -e "s|/usr/lib/|%{_libdir}/|g" Mageia/my.cnf
351    
352     # antiborker
353     perl -pi -e "s|\@bindir\@|%{_bindir}|g" support-files/* scripts/*
354     perl -pi -e "s|\@sbindir\@|%{_sbindir}|g" support-files/* scripts/*
355     perl -pi -e "s|\@libexecdir\@|%{_sbindir}|g" support-files/* scripts/*
356     perl -pi -e "s|\@localstatedir\@|/var/lib/mysql|g" support-files/* scripts/*
357     perl -pi -e "s|^basedir=.*|basedir=%{_prefix}|g" support-files/* scripts/mysql_install_db*
358    
359     # this may be part of the problems with mysql-test
360     # http://bugs.mysql.com/bug.php?id=52223
361     #perl -pi -e "s|basedir/lib\b|basedir/%{_lib}\b|g" mysql-test/mysql-test-run.pl
362     #perl -pi -e "s|basedir/lib/|basedir/%{_lib}/|g" mysql-test/mysql-test-run.pl
363    
364     # workaround for upstream bug #56342
365     rm -f mysql-test/t/ssl_8k_key-master.opt
366    
367     # upstream has fallen down badly on symbol versioning, do it ourselves
368     cp %{SOURCE4} libmysql/libmysql.version
369    
370     %build
371     %serverbuild
372     export CFLAGS="${CFLAGS:-%{optflags}}"
373     export CXXFLAGS="${CXXFLAGS:-%{optflags}}"
374     export FFLAGS="${FFLAGS:-%{optflags}}"
375    
376     %cmake \
377     -DCMAKE_BUILD_TYPE=RelWithDebInfo \
378     -DCMAKE_INSTALL_PREFIX=%{_prefix} \
379     -DINSTALL_SBINDIR=sbin \
380     -DMYSQL_DATADIR=/var/lib/mysql \
381     -DSYSCONFDIR=%{_sysconfdir} \
382     -DINSTALL_PLUGINDIR=%{_lib}/mysql/plugin \
383     -DINSTALL_MANDIR=share/man \
384     -DINSTALL_SHAREDIR=share/mysql \
385     -DINSTALL_LIBDIR=%{_lib} \
386     -DINSTALL_INCLUDEDIR=include/mysql \
387     -DINSTALL_INFODIR=share/info \
388     -DINSTALL_MYSQLDATADIR=/var/lib/mysql \
389     -DINSTALL_MYSQLTESTDIR=share/mysql/mysql-test \
390     -DINSTALL_SQLBENCHDIR=share/mysql \
391     -DINSTALL_SUPPORTFILESDIR=share/mysql \
392     -DINSTALL_MYSQLSHAREDIR=share/mysql \
393     -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \
394     -DWITH_READLINE=0 \
395     -DWITH_LIBEDIT=0 \
396     -DWITH_LIBWRAP=1 \
397     -DWITH_SSL=system \
398     -DWITH_ZLIB=system \
399     -DWITH_PIC=1 \
400     -DMYSQL_TCP_PORT=3306 \
401     -DEXTRA_CHARSETS=all \
402     -DENABLED_LOCAL_INFILE=1 \
403     -DENABLE_DTRACE=1 \
404     -DWITH_EMBEDDED_SERVER=1 \
405     -DMYSQL_USER=%{muser} \
406     %if %{build_debug}
407     -DWITH_DEBUG=1 \
408     %else
409     -DWITH_DEBUG=0 \
410     %endif
411     -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
412     -DWITHOUT_NDBCLUSTER_STORAGE_ENGINE=1 \
413     -DWITHOUT_DAEMON_EXAMPLE=1 \
414 alien 168615 -DWITH_PLUGIN_PBXT=1 \
415 alien 166284 -DFEATURE_SET="community" \
416 fwang 182925 -DCOMPILATION_COMMENT="%{_vendor} - MariaDB Community Edition (GPL)"
417 alien 166284
418     cp ../libmysql/libmysql.version libmysql/libmysql.version
419    
420     %make
421    
422     %install
423     rm -rf %{buildroot}
424    
425     # don't fiddle with the initscript!
426     export DONT_GPRINTIFY=1
427    
428     %if %{build_debug}
429     export DONT_STRIP=1
430     %endif
431    
432     install -d %{buildroot}%{_sysconfdir}/sysconfig
433     install -d %{buildroot}%{_initrddir}
434     install -d %{buildroot}%{_var}/run/mysqld
435     install -d %{buildroot}%{_var}/log/mysqld
436     install -d %{buildroot}/var/lib/mysql/{mysql,test}
437    
438     %makeinstall_std -C build
439    
440     # install init scripts
441     install -m0755 build/support-files/mysql.server %{buildroot}%{_initrddir}/mysqld
442    
443     # install configuration files
444     install -m0644 Mageia/mysqld.sysconfig %{buildroot}%{_sysconfdir}/sysconfig/mysqld
445     install -m0644 Mageia/my.cnf %{buildroot}%{_sysconfdir}/my.cnf
446    
447     mkdir -p %{buildroot}/etc/tmpfiles.d
448     install -m 0644 %{SOURCE10} %{buildroot}/etc/tmpfiles.d/mysql.conf
449     mkdir -p %{buildroot}/lib/systemd/system
450     install -m 644 %{SOURCE11} %{buildroot}/lib/systemd/system
451     install -m 755 %{SOURCE12} %{buildroot}%{_sbindir}/mysqld-prepare-db-dir
452     install -m 755 %{SOURCE13} %{buildroot}%{_sbindir}/mysqld-wait-ready
453    
454     # bork
455 alien 279279 mv %{buildroot}%{_bindir}/mysqlaccess.conf %{buildroot}%{_sysconfdir}/
456     chmod 644 %{buildroot}%{_sysconfdir}/mysqlaccess.conf
457 alien 166284 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 alien 185578 # Remove libmysqld.a, + hardlink libmysqld.so.%{libmysqlembedded_major} so that it's provided
480 alien 166284 rm -f %{buildroot}%{_libdir}/libmysqld.a
481 alien 185578 ln %{buildroot}%{_libdir}/libmysqld.so.%{major} %{buildroot}%{_libdir}/libmysqld.so.%{libmysqlembedded_major}.%{libmysqlembedded_minor}
482 alien 182848 ln -s libmysqld.so.%{libmysqlembedded_major}.%{libmysqlembedded_minor} %{buildroot}%{_libdir}/libmysqld.so.%{libmysqlembedded_major}
483 alien 166284
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 alien 182848 # mysql client statically built against a local embedded library, pretty useless
501     rm -f %{buildroot}%{_bindir}/mysql_embedded
502    
503 alien 230190 # 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 alien 182848 rm -f %{buildroot}%{_libdir}/mysql/plugin/daemon_example.ini
508    
509 alien 188246 # 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 alien 279279 # no RHEL4 selinux files for us
514     rm -rf %{buildroot}%{_datadir}/mysql/SELinux
515    
516 alien 166284 # 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 alien 223554 rm -f %{buildroot}%{_prefix}/COPYING.LESSER
540 alien 166284 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 alien 192139 root password with the following command as soon as possible:
550 alien 166284
551 alien 192139 mysqladmin password
552 alien 166284
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 alien 185578 /etc/init.d/mysqld stop
564 alien 166284 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 alien 192139 # switch to federatedx provider
604     perl -pi -e "s|;ha_federated\.so$|;ha_federatedx\.so|g" %{_sysconfdir}/my.cnf
605 alien 166284 fi
606    
607     %pre common
608     # delete the mysql group if no mysql user is found, before adding the user
609     if [ -z "`getent passwd %{muser}`" ] && ! [ -z "`getent group %{muser}`" ]; then
610     %{_sbindir}/groupdel %{muser} 2> /dev/null || :
611     fi
612    
613     %_pre_useradd %{muser} /var/lib/mysql /bin/bash
614    
615     %post
616     %_post_service mysqld
617    
618     %preun
619     %_preun_service mysqld
620    
621     %postun
622 alien 247826 if [ "$1" = "1" ]; then
623 alien 166284 if [ -f /var/lock/subsys/mysqld ]; then
624     %{_initrddir}/mysqld restart > /dev/null 2>/dev/null || :
625     fi
626     fi
627    
628     %pre common-core
629     # enable plugins
630     if [ -f %{_sysconfdir}/my.cnf ]; then
631     perl -pi -e "s|^#plugin-load|plugin-load|g" %{_sysconfdir}/my.cnf
632     perl -pi -e "s|^#federated|federated|g" %{_sysconfdir}/my.cnf
633 alien 192139 # switch to federatedx provider
634     perl -pi -e "s|;ha_federated\.so$|;ha_federatedx\.so|g" %{_sysconfdir}/my.cnf
635 alien 166284 fi
636    
637     %files
638     %doc README.urpmi
639     %{_initrddir}/mysqld
640     %_sysconfdir/tmpfiles.d/mysql.conf
641     /lib/systemd/system/mysqld.service
642     %{_sbindir}/mysqld-prepare-db-dir
643     %{_sbindir}/mysqld-wait-ready
644     %dir %{_libdir}/mysql/plugin
645 alien 188246 # authentication plugins
646 alien 166284 %{_libdir}/mysql/plugin/auth_socket.so
647 alien 279953 %{_libdir}/mysql/plugin/auth_pam.so
648 alien 166284 %{_libdir}/mysql/plugin/dialog.so
649 alien 188246 %{_libdir}/mysql/plugin/mysql_clear_password.so
650     # replication plugins
651     %{_libdir}/mysql/plugin/semisync_master.so
652     %{_libdir}/mysql/plugin/semisync_slave.so
653     # storage engines
654 alien 166284 %{_libdir}/mysql/plugin/ha_archive.so
655     %{_libdir}/mysql/plugin/ha_blackhole.so
656     %{_libdir}/mysql/plugin/ha_federatedx.so
657 alien 227543 # sql logging plugin
658     %{_libdir}/mysql/plugin/sql_errlog.so
659 alien 188246 # upstream describes this as "junk"
660     %{_libdir}/mysql/plugin/adt_null.so
661 alien 166284 %{_libdir}/mysql/plugin/mypluglib.so
662     %{_libdir}/mysql/plugin/qa_auth_client.so
663     %{_libdir}/mysql/plugin/qa_auth_interface.so
664     %{_libdir}/mysql/plugin/qa_auth_server.so
665 alien 188246 # example plugins, not usefull at all, removing
666     #%{_libdir}/mysql/plugin/auth_test_plugin.so
667     #%{_libdir}/mysql/plugin/dialog_examples.so
668 alien 166284
669 alien 192691 %files -n mysql-MariaDB
670    
671 alien 188246 %files obsolete
672     %{_libdir}/mysql/plugin/ha_innodb.so
673     %{_libdir}/mysql/plugin/ha_federated.so
674    
675     %files feedback
676     %{_libdir}/mysql/plugin/feedback.so
677    
678     %files extra
679     %{_libdir}/mysql/plugin/ha_oqgraph.so
680     %{_libdir}/mysql/plugin/ha_sphinx.so
681 alien 279279 %{_libdir}/mysql/plugin/handlersocket.so
682 alien 188246
683 alien 166284 %files client
684     %config(noreplace) %{_sysconfdir}/mysqlaccess.conf
685     %{_bindir}/msql2mysql
686     %{_bindir}/mysql
687     %{_bindir}/mysqlaccess
688     %{_bindir}/mysqladmin
689     %{_bindir}/mysqlanalyze
690     %{_bindir}/mysqlbinlog
691     %{_bindir}/mysqlcheck
692     %{_bindir}/mysqldump
693     %{_bindir}/mysqldumpslow
694     %{_bindir}/mysql_find_rows
695     %{_bindir}/mysqlimport
696     %{_bindir}/mysqloptimize
697     %{_bindir}/mysqlrepair
698     %{_bindir}/mysqlshow
699     %{_bindir}/mysqlslap
700     %{_bindir}/mysql_waitpid
701     %{_mandir}/man1/msql2mysql.1*
702     %{_mandir}/man1/myisam_ftdump.1*
703     %{_mandir}/man1/mysql.1*
704     %{_mandir}/man1/mysqlaccess.1*
705     %{_mandir}/man1/mysqladmin.1*
706     %{_mandir}/man1/mysqlbinlog.1*
707     %{_mandir}/man1/mysqlcheck.1*
708     %{_mandir}/man1/mysqldump.1*
709     %{_mandir}/man1/mysqldumpslow.1*
710     %{_mandir}/man1/mysql_find_rows.1*
711     %{_mandir}/man1/mysqlimport.1*
712     %{_mandir}/man1/mysqlshow.1*
713     %{_mandir}/man1/mysql_waitpid.1*
714    
715     %files bench
716     %doc build/sql-bench/README
717     %{_bindir}/my_safe_process
718     %{_bindir}/mysql_client_test
719     %{_bindir}/mysql_client_test_embedded
720     %{_bindir}/mysqltest_embedded
721     %{_datadir}/mysql/sql-bench
722     %attr(-,mysql,mysql) %{_datadir}/mysql/mysql-test
723     %{_mandir}/man1/mysql-stress-test.pl.1*
724     %{_mandir}/man1/mysql-test-run.pl.1*
725     %{_mandir}/man1/mysql_client_test.1*
726     %{_mandir}/man1/mysql_client_test_embedded.1*
727     %{_mandir}/man1/mysqltest.1*
728     %{_mandir}/man1/mysqltest_embedded.1*
729    
730     %files core
731     %{_sbindir}/mysqld
732    
733     %files common-core
734     %config(noreplace) %{_sysconfdir}/my.cnf
735     %dir %{_datadir}/mysql
736     %{_datadir}/mysql/english
737     %{_datadir}/mysql/charsets
738    
739     %files common
740     %doc README COPYING
741     %config(noreplace) %{_sysconfdir}/sysconfig/mysqld
742     %{_bindir}/aria_chk
743     %{_bindir}/aria_dump_log
744     %{_bindir}/aria_ftdump
745     %{_bindir}/aria_pack
746     %{_bindir}/aria_read_log
747     %{_bindir}/innochecksum
748     %{_bindir}/myisamchk
749     %{_bindir}/myisam_ftdump
750     %{_bindir}/myisamlog
751     %{_bindir}/myisampack
752     %{_bindir}/my_print_defaults
753     %{_bindir}/mysqlbug
754     %{_bindir}/mysql_convert_table_format
755     %{_bindir}/mysqld_multi
756     %{_bindir}/mysqld_safe
757     %{_bindir}/mysql_fix_extensions
758     %{_bindir}/mysqlhotcopy
759     %{_bindir}/mysql_install_db
760 alien 230190 %{_bindir}/mysql_plugin
761 alien 166284 %{_bindir}/mysql_secure_installation
762     %{_bindir}/mysql_setpermission
763     %{_bindir}/mysqltest
764     %{_bindir}/mysql_tzinfo_to_sql
765     %{_bindir}/mysql_upgrade
766     %{_bindir}/mysql_zap
767 alien 279279 %{_bindir}/mytop
768 alien 166284 %{_bindir}/perror
769     %{_bindir}/replace
770     %{_bindir}/resolveip
771     %{_bindir}/resolve_stack_dump
772     %attr(0755,%{muser},%{muser}) %dir /var/lib/mysql
773     %attr(0755,%{muser},%{muser}) %dir /var/lib/mysql/mysql
774     %attr(0755,%{muser},%{muser}) %dir /var/lib/mysql/test
775     %attr(0755,%{muser},%{muser}) %dir %{_var}/run/mysqld
776     %attr(0755,%{muser},%{muser}) %dir %{_var}/log/mysqld
777     %{_datadir}/mysql/*.cnf
778     %{_datadir}/mysql/fill_help_tables.sql
779     %{_datadir}/mysql/mysql_system_tables.sql
780     %{_datadir}/mysql/mysql_system_tables_data.sql
781     %{_datadir}/mysql/mysql_test_data_timezone.sql
782     %{_datadir}/mysql/errmsg-utf8.txt
783     %{_datadir}/mysql/czech
784     %{_datadir}/mysql/danish
785     %{_datadir}/mysql/dutch
786     %{_datadir}/mysql/estonian
787     %{_datadir}/mysql/french
788     %{_datadir}/mysql/german
789     %{_datadir}/mysql/greek
790     %{_datadir}/mysql/hungarian
791     %{_datadir}/mysql/italian
792     %{_datadir}/mysql/japanese
793     %{_datadir}/mysql/korean
794     %{_datadir}/mysql/norwegian
795     %{_datadir}/mysql/norwegian-ny
796     %{_datadir}/mysql/polish
797     %{_datadir}/mysql/portuguese
798     %{_datadir}/mysql/romanian
799     %{_datadir}/mysql/russian
800     %{_datadir}/mysql/serbian
801     %{_datadir}/mysql/slovak
802     %{_datadir}/mysql/spanish
803     %{_datadir}/mysql/swedish
804     %{_datadir}/mysql/ukrainian
805     %{_mandir}/man1/innochecksum.1*
806     %{_mandir}/man1/myisamchk.1*
807     %{_mandir}/man1/myisamlog.1*
808     %{_mandir}/man1/myisampack.1*
809     %{_mandir}/man1/my_print_defaults.1*
810 alien 279279 %{_mandir}/man1/mysqlbug.1*
811 alien 166284 %{_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 fwang 259273 %{_includedir}/mysql/private/*.h
846 alien 279279 %{_includedir}/mysql/private/atomic/*.h
847 alien 166284 %{_includedir}/mysql/psi/*.h
848     %multiarch %{multiarch_includedir}/mysql/my_config.h
849 alien 279279 %{_mandir}/man1/comp_err.1*
850 alien 166284 %{_mandir}/man1/mysql_config.1*
851     %{_datadir}/aclocal/mysql.m4
852 alien 188299 # 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 alien 166284
856     %files -n %{libmariadbembedded}
857     %doc README COPYING
858 alien 182848 %{_libdir}/libmysqld.so.%{major}
859     %{_libdir}/libmysqld.so.%{libmysqlembedded_major}*
860 alien 166284
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