/[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 394537 - (hide annotations) (download)
Mon Feb 4 16:23:19 2013 UTC (11 years, 2 months ago) by alien
File size: 29470 byte(s)
mariadb-bench package requires mariadb if you want to run all tests
1 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 318282 Version: 5.5.28
56 alien 393839 Release: %mkrel 7
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     Patch3: mariadb-5.5-install-test.patch
72     Patch4: mysql-expired-certs.patch
73     Patch7: mariadb-5.5-versioning.patch
74     Patch8: mariadb-5.5-dubious-exports.patch
75    
76     # mandriva patches
77     Patch101: mariadb-5.5-logrotate.patch
78     Patch102: mariadb-5.5-initscript.patch
79     Patch103: mariadb-5.5-mysql_upgrade-exit-status.patch
80     Patch106: mariadb-5.5-hotcopy.patch
81     Patch107: mariadb-5.5-mysql_install_db-quiet.patch
82    
83 alien 318282 # mageia patches
84 alien 279279 Patch120: mariadb-5.5.25-forgotten-files.patch
85 alien 323173 Patch126: mariadb-5.5-check-dbname.patch
86 alien 391746 Patch127: mariadb-5.5-no-MDL-locks-for-aliases.patch
87 alien 393839 Patch128: mariadb-5.5-mdev4029.patch
88     Patch129: mariadb-5.5-CVE-2012-5627.patch
89     Patch130: mariadb-5.5-buffer-overflow.patch
90     Patch131: mariadb-5.5-CVE-2012-5615.patch
91 alien 279279
92 tmb 233779 Requires(post): rpm-helper >= 0.24.8-1
93     Requires(preun): rpm-helper >= 0.24.8-1
94 alien 193664 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 alien 182848 Provides: mysql = %{version}-%{release}
104 fwang 230765 Obsoletes: mysql < %{version}-%{release}
105 alien 188299 Obsoletes: %{libmariadbservices} < 5.5.18-0.3194.20111227.1
106 fwang 230765 Obsoletes: %{libmysqlservices} < %{version}-%{release}
107 alien 230190 Conflicts: %{name}-extra%{_isa} < %{version}-%{release}
108     Conflicts: %{name}-feedback%{_isa} < %{version}-%{release}
109     Conflicts: %{name}-obsolete%{_isa} < %{version}-%{release}
110 alien 193664 Suggests: %{name}-extra%{_isa}
111 alien 166284 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 alien 166362 BuildRequires: boost-devel
129 alien 233249 BuildRequires: libaio-devel
130 alien 279953 BuildRequires: pam-devel
131 alien 166284 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 alien 188246 - FederatedX Storage Engine (Federated replacement)
146 alien 166284 - Heap Storage Engine
147     - MyISAM Storage Engine
148     - MyISAMMRG Storage Engine
149     - Partition Storage Engine
150     - Perfschema Storage Engine
151 alien 188246 - 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 alien 166284 - Sphinx Storage Engine
157    
158 alien 188246 The feedback storage engine is provided by the mariadb-feedback package
159 alien 166284
160 alien 188246 - 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 alien 192139 %package -n mysql-MariaDB
168 alien 192933 Summary: A MySQL drop-in replacement
169 alien 192139 Group: System/Servers
170 alien 193664 Requires: %{name}%{_isa}
171 alien 192139
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 alien 188246 %package feedback
180     Summary: MariaDB feedback storage engine
181     Group: System/Servers
182 alien 193664 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
183 alien 230190 Conflicts: %{name}-common-core%{_isa} < %{version}-%{release}
184 alien 188246
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 alien 193664 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
193 alien 230190 Conflicts: %{name}-common-core%{_isa} < %{version}-%{release}
194 alien 188246
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 alien 193664 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
202 alien 230190 Conflicts: %{name}-common-core%{_isa} < %{version}-%{release}
203 alien 188246 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 alien 166284 %package core
211     Summary: Server core binary
212     Group: System/Servers
213 alien 193664 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
214 alien 182848 Provides: mysql-core = %{version}-%{release}
215 fwang 230765 Obsoletes: mysql-core < %{version}-%{release}
216 alien 166284
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 alien 182848 Provides: mysql-common-core = %{version}-%{release}
225 fwang 230765 Obsoletes: mysql-common-core < %{version}-%{release}
226 alien 166284
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 alien 193664 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 alien 182848 Provides: mysql-common = %{version}-%{release}
242 fwang 230765 Obsoletes: mysql-common < %{version}-%{release}
243 alien 166284
244     %description common
245     Common files for the MariaDB database server.
246    
247     %package client
248     Summary: Client
249     Group: Databases
250 alien 193664 Requires(post): %{libname}%{_isa} >= %{version}-%{release}
251     Requires(preun): %{libname}%{_isa} >= %{version}-%{release}
252     Requires: %{libname}%{_isa} >= %{version}-%{release}
253 alien 182848 Provides: mysql-client = %{version}-%{release}
254 fwang 230765 Obsoletes: mysql-client < %{version}-%{release}
255 alien 166284
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 alien 193664 Requires(post): %{name}-client%{_isa} >= %{version}-%{release}
263     Requires(preun): %{name}-client%{_isa} >= %{version}-%{release}
264     Requires: %{name}-client%{_isa} >= %{version}-%{release}
265 alien 394537 Suggests: %{name}%{_isa} >= %{version}-%{release}
266 alien 182848 Provides: mysql-bench = %{version}-%{release}
267 fwang 230765 Obsoletes: mysql-bench < %{version}-%{release}
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 fwang 230765 Obsoletes: %{mysql_libname} < %{version}-%{release}
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 fwang 230765 Obsoletes: %{libname}-devel < %{version}-%{release}
299     Obsoletes: %{old_staticdevelname} < %{version}-%{release}
300 alien 183054 Provides: %{mysql_develname} = %{version}-%{release}
301 fwang 230765 Obsoletes: %{mysql_develname} < %{version}-%{release}
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 fwang 230765 Obsoletes: %{name}-embedded < %{version}-%{release}
313 alien 183054 Provides: %{libmysqlembedded} = %{version}-%{release}
314 fwang 230765 Obsoletes: %{libmysqlembedded} < %{version}-%{release}
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 230765 Obsoletes: %{name}-embedded-devel < %{version}-%{release}
329 alien 194264 Requires: %{libmariadbembedded} = %{version}-%{release}
330     Requires: %{develname} = %{version}-%{release}
331 alien 183054 Provides: %{libmysqlembedded_devel} = %{version}-%{release}
332 fwang 230765 Obsoletes: %{libmysqlembedded_devel} < %{version}-%{release}
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 alien 230286
344 alien 166284 %prep
345 alien 182848 %setup -q
346 alien 166284 %apply_patches
347    
348     mkdir -p Mageia
349     cp %{SOURCE2} Mageia/mysqld.sysconfig
350     cp %{SOURCE3} Mageia/my.cnf
351    
352     # lib64 fix
353     perl -pi -e "s|/usr/lib/|%{_libdir}/|g" Mageia/my.cnf
354    
355     # antiborker
356     perl -pi -e "s|\@bindir\@|%{_bindir}|g" support-files/* scripts/*
357     perl -pi -e "s|\@sbindir\@|%{_sbindir}|g" support-files/* scripts/*
358     perl -pi -e "s|\@libexecdir\@|%{_sbindir}|g" support-files/* scripts/*
359     perl -pi -e "s|\@localstatedir\@|/var/lib/mysql|g" support-files/* scripts/*
360     perl -pi -e "s|^basedir=.*|basedir=%{_prefix}|g" support-files/* scripts/mysql_install_db*
361    
362     # this may be part of the problems with mysql-test
363     # http://bugs.mysql.com/bug.php?id=52223
364     #perl -pi -e "s|basedir/lib\b|basedir/%{_lib}\b|g" mysql-test/mysql-test-run.pl
365     #perl -pi -e "s|basedir/lib/|basedir/%{_lib}/|g" mysql-test/mysql-test-run.pl
366    
367     # workaround for upstream bug #56342
368     rm -f mysql-test/t/ssl_8k_key-master.opt
369    
370     # upstream has fallen down badly on symbol versioning, do it ourselves
371     cp %{SOURCE4} libmysql/libmysql.version
372    
373     %build
374     %serverbuild
375     export CFLAGS="${CFLAGS:-%{optflags}}"
376     export CXXFLAGS="${CXXFLAGS:-%{optflags}}"
377     export FFLAGS="${FFLAGS:-%{optflags}}"
378    
379     %cmake \
380     -DCMAKE_BUILD_TYPE=RelWithDebInfo \
381     -DCMAKE_INSTALL_PREFIX=%{_prefix} \
382     -DINSTALL_SBINDIR=sbin \
383     -DMYSQL_DATADIR=/var/lib/mysql \
384     -DSYSCONFDIR=%{_sysconfdir} \
385     -DINSTALL_PLUGINDIR=%{_lib}/mysql/plugin \
386     -DINSTALL_MANDIR=share/man \
387     -DINSTALL_SHAREDIR=share/mysql \
388     -DINSTALL_LIBDIR=%{_lib} \
389     -DINSTALL_INCLUDEDIR=include/mysql \
390     -DINSTALL_INFODIR=share/info \
391     -DINSTALL_MYSQLDATADIR=/var/lib/mysql \
392     -DINSTALL_MYSQLTESTDIR=share/mysql/mysql-test \
393     -DINSTALL_SQLBENCHDIR=share/mysql \
394     -DINSTALL_SUPPORTFILESDIR=share/mysql \
395     -DINSTALL_MYSQLSHAREDIR=share/mysql \
396     -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \
397     -DWITH_READLINE=0 \
398     -DWITH_LIBEDIT=0 \
399     -DWITH_LIBWRAP=1 \
400     -DWITH_SSL=system \
401     -DWITH_ZLIB=system \
402     -DWITH_PIC=1 \
403     -DMYSQL_TCP_PORT=3306 \
404     -DEXTRA_CHARSETS=all \
405     -DENABLED_LOCAL_INFILE=1 \
406     -DENABLE_DTRACE=1 \
407     -DWITH_EMBEDDED_SERVER=1 \
408     -DMYSQL_USER=%{muser} \
409     %if %{build_debug}
410     -DWITH_DEBUG=1 \
411     %else
412     -DWITH_DEBUG=0 \
413     %endif
414     -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
415     -DWITHOUT_NDBCLUSTER_STORAGE_ENGINE=1 \
416     -DWITHOUT_DAEMON_EXAMPLE=1 \
417 alien 168615 -DWITH_PLUGIN_PBXT=1 \
418 alien 166284 -DFEATURE_SET="community" \
419 fwang 182925 -DCOMPILATION_COMMENT="%{_vendor} - MariaDB Community Edition (GPL)"
420 alien 166284
421     cp ../libmysql/libmysql.version libmysql/libmysql.version
422    
423     %make
424    
425     %install
426     rm -rf %{buildroot}
427    
428     # don't fiddle with the initscript!
429     export DONT_GPRINTIFY=1
430    
431     %if %{build_debug}
432     export DONT_STRIP=1
433     %endif
434    
435     install -d %{buildroot}%{_sysconfdir}/sysconfig
436     install -d %{buildroot}%{_initrddir}
437     install -d %{buildroot}%{_var}/log/mysqld
438     install -d %{buildroot}/var/lib/mysql/{mysql,test}
439    
440     %makeinstall_std -C build
441    
442     # install init scripts
443     install -m0755 build/support-files/mysql.server %{buildroot}%{_initrddir}/mysqld
444    
445     # install configuration files
446     install -m0644 Mageia/mysqld.sysconfig %{buildroot}%{_sysconfdir}/sysconfig/mysqld
447     install -m0644 Mageia/my.cnf %{buildroot}%{_sysconfdir}/my.cnf
448    
449 colin 321747 install -m 0644 -D %{SOURCE10} %{buildroot}%{_tmpfilesdir}/mysql.conf
450     install -m 0644 -D %{SOURCE11} %{buildroot}%{_unitdir}/mysqld.service
451     install -m 0755 %{SOURCE12} %{buildroot}%{_sbindir}/mysqld-prepare-db-dir
452     install -m 0755 %{SOURCE13} %{buildroot}%{_sbindir}/mysqld-wait-ready
453 alien 166284
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 colin 321747 %_tmpfilescreate mysql
617 alien 166284 %_post_service mysqld
618    
619     %preun
620     %_preun_service mysqld
621    
622     %postun
623 alien 247826 if [ "$1" = "1" ]; then
624 alien 166284 if [ -f /var/lock/subsys/mysqld ]; then
625     %{_initrddir}/mysqld restart > /dev/null 2>/dev/null || :
626     fi
627     fi
628    
629     %pre common-core
630     # enable plugins
631     if [ -f %{_sysconfdir}/my.cnf ]; then
632     perl -pi -e "s|^#plugin-load|plugin-load|g" %{_sysconfdir}/my.cnf
633     perl -pi -e "s|^#federated|federated|g" %{_sysconfdir}/my.cnf
634 alien 192139 # switch to federatedx provider
635     perl -pi -e "s|;ha_federated\.so$|;ha_federatedx\.so|g" %{_sysconfdir}/my.cnf
636 alien 166284 fi
637    
638     %files
639     %doc README.urpmi
640     %{_initrddir}/mysqld
641 colin 321747 %{_tmpfilesdir}/mysql.conf
642     %{_unitdir}/mysqld.service
643 alien 166284 %{_sbindir}/mysqld-prepare-db-dir
644     %{_sbindir}/mysqld-wait-ready
645     %dir %{_libdir}/mysql/plugin
646 alien 188246 # authentication plugins
647 alien 166284 %{_libdir}/mysql/plugin/auth_socket.so
648 alien 279953 %{_libdir}/mysql/plugin/auth_pam.so
649 alien 166284 %{_libdir}/mysql/plugin/dialog.so
650 alien 188246 %{_libdir}/mysql/plugin/mysql_clear_password.so
651     # replication plugins
652     %{_libdir}/mysql/plugin/semisync_master.so
653     %{_libdir}/mysql/plugin/semisync_slave.so
654     # storage engines
655 alien 166284 %{_libdir}/mysql/plugin/ha_archive.so
656     %{_libdir}/mysql/plugin/ha_blackhole.so
657     %{_libdir}/mysql/plugin/ha_federatedx.so
658 alien 227543 # sql logging plugin
659     %{_libdir}/mysql/plugin/sql_errlog.so
660 alien 188246 # upstream describes this as "junk"
661     %{_libdir}/mysql/plugin/adt_null.so
662 alien 166284 %{_libdir}/mysql/plugin/mypluglib.so
663     %{_libdir}/mysql/plugin/qa_auth_client.so
664     %{_libdir}/mysql/plugin/qa_auth_interface.so
665     %{_libdir}/mysql/plugin/qa_auth_server.so
666 alien 188246 # example plugins, not usefull at all, removing
667     #%{_libdir}/mysql/plugin/auth_test_plugin.so
668     #%{_libdir}/mysql/plugin/dialog_examples.so
669 alien 166284
670 alien 192691 %files -n mysql-MariaDB
671    
672 alien 188246 %files obsolete
673     %{_libdir}/mysql/plugin/ha_innodb.so
674     %{_libdir}/mysql/plugin/ha_federated.so
675    
676     %files feedback
677     %{_libdir}/mysql/plugin/feedback.so
678    
679     %files extra
680     %{_libdir}/mysql/plugin/ha_oqgraph.so
681     %{_libdir}/mysql/plugin/ha_sphinx.so
682 alien 279279 %{_libdir}/mysql/plugin/handlersocket.so
683 alien 188246
684 alien 166284 %files client
685     %config(noreplace) %{_sysconfdir}/mysqlaccess.conf
686     %{_bindir}/msql2mysql
687     %{_bindir}/mysql
688     %{_bindir}/mysqlaccess
689     %{_bindir}/mysqladmin
690     %{_bindir}/mysqlanalyze
691     %{_bindir}/mysqlbinlog
692     %{_bindir}/mysqlcheck
693     %{_bindir}/mysqldump
694     %{_bindir}/mysqldumpslow
695     %{_bindir}/mysql_find_rows
696     %{_bindir}/mysqlimport
697     %{_bindir}/mysqloptimize
698     %{_bindir}/mysqlrepair
699     %{_bindir}/mysqlshow
700     %{_bindir}/mysqlslap
701     %{_bindir}/mysql_waitpid
702     %{_mandir}/man1/msql2mysql.1*
703     %{_mandir}/man1/myisam_ftdump.1*
704     %{_mandir}/man1/mysql.1*
705     %{_mandir}/man1/mysqlaccess.1*
706     %{_mandir}/man1/mysqladmin.1*
707     %{_mandir}/man1/mysqlbinlog.1*
708     %{_mandir}/man1/mysqlcheck.1*
709     %{_mandir}/man1/mysqldump.1*
710     %{_mandir}/man1/mysqldumpslow.1*
711     %{_mandir}/man1/mysql_find_rows.1*
712     %{_mandir}/man1/mysqlimport.1*
713     %{_mandir}/man1/mysqlshow.1*
714     %{_mandir}/man1/mysql_waitpid.1*
715    
716     %files bench
717     %doc build/sql-bench/README
718     %{_bindir}/my_safe_process
719     %{_bindir}/mysql_client_test
720     %{_bindir}/mysql_client_test_embedded
721     %{_bindir}/mysqltest_embedded
722     %{_datadir}/mysql/sql-bench
723     %attr(-,mysql,mysql) %{_datadir}/mysql/mysql-test
724     %{_mandir}/man1/mysql-stress-test.pl.1*
725     %{_mandir}/man1/mysql-test-run.pl.1*
726     %{_mandir}/man1/mysql_client_test.1*
727     %{_mandir}/man1/mysql_client_test_embedded.1*
728     %{_mandir}/man1/mysqltest.1*
729     %{_mandir}/man1/mysqltest_embedded.1*
730    
731     %files core
732     %{_sbindir}/mysqld
733    
734     %files common-core
735     %config(noreplace) %{_sysconfdir}/my.cnf
736     %dir %{_datadir}/mysql
737     %{_datadir}/mysql/english
738     %{_datadir}/mysql/charsets
739    
740     %files common
741     %doc README COPYING
742     %config(noreplace) %{_sysconfdir}/sysconfig/mysqld
743     %{_bindir}/aria_chk
744     %{_bindir}/aria_dump_log
745     %{_bindir}/aria_ftdump
746     %{_bindir}/aria_pack
747     %{_bindir}/aria_read_log
748     %{_bindir}/innochecksum
749     %{_bindir}/myisamchk
750     %{_bindir}/myisam_ftdump
751     %{_bindir}/myisamlog
752     %{_bindir}/myisampack
753     %{_bindir}/my_print_defaults
754     %{_bindir}/mysqlbug
755     %{_bindir}/mysql_convert_table_format
756     %{_bindir}/mysqld_multi
757     %{_bindir}/mysqld_safe
758     %{_bindir}/mysql_fix_extensions
759     %{_bindir}/mysqlhotcopy
760     %{_bindir}/mysql_install_db
761 alien 230190 %{_bindir}/mysql_plugin
762 alien 166284 %{_bindir}/mysql_secure_installation
763     %{_bindir}/mysql_setpermission
764     %{_bindir}/mysqltest
765     %{_bindir}/mysql_tzinfo_to_sql
766     %{_bindir}/mysql_upgrade
767     %{_bindir}/mysql_zap
768 alien 279279 %{_bindir}/mytop
769 alien 166284 %{_bindir}/perror
770     %{_bindir}/replace
771     %{_bindir}/resolveip
772     %{_bindir}/resolve_stack_dump
773     %attr(0755,%{muser},%{muser}) %dir /var/lib/mysql
774     %attr(0755,%{muser},%{muser}) %dir /var/lib/mysql/mysql
775     %attr(0755,%{muser},%{muser}) %dir /var/lib/mysql/test
776     %attr(0755,%{muser},%{muser}) %dir %{_var}/log/mysqld
777     %{_datadir}/mysql/*.cnf
778     %{_datadir}/mysql/fill_help_tables.sql
779     %{_datadir}/mysql/mysql_system_tables.sql
780     %{_datadir}/mysql/mysql_system_tables_data.sql
781     %{_datadir}/mysql/mysql_test_data_timezone.sql
782     %{_datadir}/mysql/errmsg-utf8.txt
783     %{_datadir}/mysql/czech
784     %{_datadir}/mysql/danish
785     %{_datadir}/mysql/dutch
786     %{_datadir}/mysql/estonian
787     %{_datadir}/mysql/french
788     %{_datadir}/mysql/german
789     %{_datadir}/mysql/greek
790     %{_datadir}/mysql/hungarian
791     %{_datadir}/mysql/italian
792     %{_datadir}/mysql/japanese
793     %{_datadir}/mysql/korean
794     %{_datadir}/mysql/norwegian
795     %{_datadir}/mysql/norwegian-ny
796     %{_datadir}/mysql/polish
797     %{_datadir}/mysql/portuguese
798     %{_datadir}/mysql/romanian
799     %{_datadir}/mysql/russian
800     %{_datadir}/mysql/serbian
801     %{_datadir}/mysql/slovak
802     %{_datadir}/mysql/spanish
803     %{_datadir}/mysql/swedish
804     %{_datadir}/mysql/ukrainian
805     %{_mandir}/man1/innochecksum.1*
806     %{_mandir}/man1/myisamchk.1*
807     %{_mandir}/man1/myisamlog.1*
808     %{_mandir}/man1/myisampack.1*
809     %{_mandir}/man1/my_print_defaults.1*
810 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