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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 393839 - (hide annotations) (download)
Thu Jan 31 21:50:19 2013 UTC (11 years, 2 months ago) by alien
Original Path: cauldron/mariadb/current/SPECS/mariadb.spec
File size: 29420 byte(s)
Fix CVE-2012-5615, CVE-2012-5627, mdev4029, and a buffer overflow
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 182848 Provides: mysql-bench = %{version}-%{release}
266 fwang 230765 Obsoletes: mysql-bench < %{version}-%{release}
267 alien 166284
268     %description bench
269     This package contains MariaDB benchmark scripts and data.
270    
271     %package -n %{libname}
272     Summary: Shared libraries
273     Group: System/Libraries
274     Provides: %{name}-shared-libs = %{version}-%{release}
275     Provides: %{name}-shared = %{version}-%{release}
276 alien 183054 Provides: %{mysql_libname} = %{version}-%{release}
277 fwang 230765 Obsoletes: %{mysql_libname} < %{version}-%{release}
278 alien 166284
279     %description -n %{libname}
280     This package contains the shared libraries (*.so*) which certain languages and
281     applications need to dynamically load and use MariaDB.
282    
283     %package -n %{develname}
284     Summary: Development header files and libraries
285     Group: Development/Other
286 alien 194264 Requires(post): %{libname} >= %{version}-%{release}
287     Requires(preun): %{libname} >= %{version}-%{release}
288 alien 193664 Requires(post): %{name}-common%{_isa} >= %{version}-%{release}
289     Requires(preun): %{name}-common%{_isa} >= %{version}-%{release}
290     Requires(post): %{name}-client%{_isa} >= %{version}-%{release}
291     Requires(preun): %{name}-client%{_isa} >= %{version}-%{release}
292 alien 194264 Requires: %{libname} = %{version}-%{release}
293 alien 193664 Requires: %{name}-common%{_isa} >= %{version}-%{release}
294     Requires: %{name}-client%{_isa} >= %{version}-%{release}
295 alien 166284 Provides: %{name}-devel = %{version}-%{release}
296     Provides: %{libname}-devel = %{version}-%{release}
297 fwang 230765 Obsoletes: %{libname}-devel < %{version}-%{release}
298     Obsoletes: %{old_staticdevelname} < %{version}-%{release}
299 alien 183054 Provides: %{mysql_develname} = %{version}-%{release}
300 fwang 230765 Obsoletes: %{mysql_develname} < %{version}-%{release}
301 fwang 182925 Provides: mysql-devel = %{version}-%{release}
302 alien 166284
303     %description -n %{develname}
304     This package contains the development header files and libraries necessary to
305     develop MariaDB client applications.
306    
307     %package -n %{libmariadbembedded}
308     Summary: MariaDB as an embeddable library
309     Group: System/Libraries
310     Provides: %{name}-embedded = %{version}-%{release}
311 fwang 230765 Obsoletes: %{name}-embedded < %{version}-%{release}
312 alien 183054 Provides: %{libmysqlembedded} = %{version}-%{release}
313 fwang 230765 Obsoletes: %{libmysqlembedded} < %{version}-%{release}
314 alien 166284
315     %description -n %{libmariadbembedded}
316     MariaDB is a multi-user, multi-threaded SQL database server. This
317     package contains a version of the MariaDB server that can be embedded
318     into a client application instead of running as a separate process.
319    
320     The API is identical for the embedded MariaDB version and the client/server
321     version.
322    
323     %package -n %{libmariadbembedded_devel}
324     Summary: Development files for MySQL as an embeddable library
325     Group: Development/Other
326     Provides: %{name}-embedded-devel = %{version}-%{release}
327 fwang 230765 Obsoletes: %{name}-embedded-devel < %{version}-%{release}
328 alien 194264 Requires: %{libmariadbembedded} = %{version}-%{release}
329     Requires: %{develname} = %{version}-%{release}
330 alien 183054 Provides: %{libmysqlembedded_devel} = %{version}-%{release}
331 fwang 230765 Obsoletes: %{libmysqlembedded_devel} < %{version}-%{release}
332 fwang 182925 Provides: mysql-embedded-devel = %{version}-%{release}
333 alien 166284
334     %description -n %{libmariadbembedded_devel}
335     MariaDB is a multi-user, multi-threaded SQL database server. This
336     package contains files needed for developing and testing with
337     the embedded version of the MariaDB server.
338    
339     The API is identical for the embedded MariaDB version and the client/server
340     version.
341    
342 alien 230286
343 alien 166284 %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}/log/mysqld
437     install -d %{buildroot}/var/lib/mysql/{mysql,test}
438    
439     %makeinstall_std -C build
440    
441     # install init scripts
442     install -m0755 build/support-files/mysql.server %{buildroot}%{_initrddir}/mysqld
443    
444     # install configuration files
445     install -m0644 Mageia/mysqld.sysconfig %{buildroot}%{_sysconfdir}/sysconfig/mysqld
446     install -m0644 Mageia/my.cnf %{buildroot}%{_sysconfdir}/my.cnf
447    
448 colin 321747 install -m 0644 -D %{SOURCE10} %{buildroot}%{_tmpfilesdir}/mysql.conf
449     install -m 0644 -D %{SOURCE11} %{buildroot}%{_unitdir}/mysqld.service
450     install -m 0755 %{SOURCE12} %{buildroot}%{_sbindir}/mysqld-prepare-db-dir
451     install -m 0755 %{SOURCE13} %{buildroot}%{_sbindir}/mysqld-wait-ready
452 alien 166284
453     # bork
454 alien 279279 mv %{buildroot}%{_bindir}/mysqlaccess.conf %{buildroot}%{_sysconfdir}/
455     chmod 644 %{buildroot}%{_sysconfdir}/mysqlaccess.conf
456 alien 166284 mv %{buildroot}%{_prefix}/scripts/mysql_install_db %{buildroot}%{_bindir}/
457     mv %{buildroot}%{_datadir}/mysql/aclocal %{buildroot}%{_datadir}/aclocal
458    
459     pushd %{buildroot}%{_bindir}
460     ln -sf mysqlcheck mysqlrepair
461     ln -sf mysqlcheck mysqlanalyze
462     ln -sf mysqlcheck mysqloptimize
463     popd
464    
465     # nuke -Wl,--as-needed from the mysql_config file
466     perl -pi -e "s|^ldflags=.*|ldflags=\'-rdynamic\'|g" %{buildroot}%{_bindir}/mysql_config
467    
468     # cmake generates some completely wacko references to -lprobes_mysql when
469     # building with dtrace support. Haven't found where to shut that off,
470     # so resort to this blunt instrument. While at it, let's not reference
471     # libmysqlclient_r anymore either.
472     sed -e 's/-lprobes_mysql//' -e 's/-lmysqlclient_r/-lmysqlclient/' \
473     %{buildroot}%{_bindir}/mysql_config >mysql_config.tmp
474     cp -f mysql_config.tmp %{buildroot}%{_bindir}/mysql_config
475     chmod 755 %{buildroot}%{_bindir}/mysql_config
476     install -m 0755 -d %{buildroot}/var/lib/mysql
477    
478 alien 185578 # Remove libmysqld.a, + hardlink libmysqld.so.%{libmysqlembedded_major} so that it's provided
479 alien 166284 rm -f %{buildroot}%{_libdir}/libmysqld.a
480 alien 185578 ln %{buildroot}%{_libdir}/libmysqld.so.%{major} %{buildroot}%{_libdir}/libmysqld.so.%{libmysqlembedded_major}.%{libmysqlembedded_minor}
481 alien 182848 ln -s libmysqld.so.%{libmysqlembedded_major}.%{libmysqlembedded_minor} %{buildroot}%{_libdir}/libmysqld.so.%{libmysqlembedded_major}
482 alien 166284
483     # libmysqlclient_r is no more. Upstream tries to replace it with symlinks
484     # but that really doesn't work (wrong soname in particular). We'll keep
485     # just the devel libmysqlclient_r.so link, so that rebuilding without any
486     # source change is enough to get rid of dependency on libmysqlclient_r.
487     rm -f %{buildroot}%{_libdir}/libmysqlclient_r.so*
488     ln -s libmysqlclient.so %{buildroot}%{_libdir}/libmysqlclient_r.so
489    
490     # remove static libs
491     rm -f %{buildroot}%{_libdir}/libmysqlclient.a
492     rm -f %{buildroot}%{_libdir}/libmysqlclient_r.a
493    
494     # mysql-test includes one executable that doesn't belong under /usr/share,
495     # so move it and provide a symlink
496     mv %{buildroot}%{_datadir}/mysql/mysql-test/lib/My/SafeProcess/my_safe_process %{buildroot}%{_bindir}
497     ln -s %{_bindir}/my_safe_process %{buildroot}%{_datadir}/mysql/mysql-test/lib/My/SafeProcess/my_safe_process
498    
499 alien 182848 # mysql client statically built against a local embedded library, pretty useless
500     rm -f %{buildroot}%{_bindir}/mysql_embedded
501    
502 alien 230190 # this command enables plugins, but needs ini file + configuration in my.cnf
503     # before executing... and oh yeah, mysql must be stopped... => useless
504     # however, apparently tests seem to want it, even thought they don't use it.
505     #rm -f %{buildroot}%{_bindir}/mysql_plugin
506 alien 182848 rm -f %{buildroot}%{_libdir}/mysql/plugin/daemon_example.ini
507    
508 alien 188246 # remove more useless plugins
509     rm -f %{buildroot}%{_libdir}/mysql/plugin/auth_test_plugin.so
510     rm -f %{buildroot}%{_libdir}/mysql/plugin/dialog_examples.so
511    
512 alien 279279 # no RHEL4 selinux files for us
513     rm -rf %{buildroot}%{_datadir}/mysql/SELinux
514    
515 alien 166284 # house cleaning
516     rm -rf %{buildroot}%{_datadir}/info
517     rm -f %{buildroot}%{_bindir}/client_test
518     rm -f %{buildroot}%{_bindir}/make_win_binary_distribution
519     rm -f %{buildroot}%{_bindir}/make_win_src_distribution
520     rm -f %{buildroot}%{_datadir}/mysql/binary-configure
521     rm -f %{buildroot}%{_datadir}/mysql/config.huge.ini
522     rm -f %{buildroot}%{_datadir}/mysql/config.medium.ini
523     rm -f %{buildroot}%{_datadir}/mysql/config.small.ini
524     rm -f %{buildroot}%{_datadir}/mysql/mysqld_multi.server
525     rm -f %{buildroot}%{_datadir}/mysql/mysql-log-rotate
526     rm -f %{buildroot}%{_datadir}/mysql/mysql.server
527     rm -f %{buildroot}%{_datadir}/mysql/ndb-config-2-node.ini
528     rm -f %{buildroot}%{_datadir}/mysql/binary-configure
529     rm -f %{buildroot}%{_mandir}/man1/make_win_bin_dist.1*
530     rm -f %{buildroot}%{_mandir}/man1/make_win_src_distribution.1*
531     rm -f %{buildroot}%{_datadir}/mysql/magic
532    
533     # no idea how to fix this
534     rm -rf %{buildroot}%{_prefix}/data
535     rm -rf %{buildroot}%{_prefix}/docs
536     rm -rf %{buildroot}%{_prefix}/scripts
537     rm -f %{buildroot}%{_prefix}/COPYING
538 alien 223554 rm -f %{buildroot}%{_prefix}/COPYING.LESSER
539 alien 166284 rm -f %{buildroot}%{_prefix}/INSTALL-BINARY
540     rm -f %{buildroot}%{_prefix}/README
541    
542     %multiarch_binaries %{buildroot}%{_bindir}/mysql_config
543     %multiarch_includes %{buildroot}%{_includedir}/mysql/my_config.h
544    
545     cat > README.urpmi <<EOF
546    
547     NOTE: MariaDB is installed without root password, it is recommended to set the
548 alien 192139 root password with the following command as soon as possible:
549 alien 166284
550 alien 192139 mysqladmin password
551 alien 166284
552     The initscript used to start mysql has been reverted to use the one shipped
553     by MariaDB. This means the following changes:
554    
555     * The generation of the initial system mysql database is now done when mysql
556     is started from the initscript and only if the /var/lib/mysql/mysql
557     directory is empty (mysql_install_db). Previousely this was quite hidden and
558     silently done at (rpm) install time. As a consequence to this change you may
559     have to perform some manual tasks to upgrade the mysql system database and
560     such. So, doing something like this might help you:
561    
562 alien 185578 /etc/init.d/mysqld stop
563 alien 166284 TMPDIR=/var/tmp mysql_install_db
564     mysql_upgrade
565    
566     The cluster functionalities (ndb) has been deactivated and will be removed in
567     future mysql versions. Oracle has a new product named mysql-cluster that
568     replaces the cluster functionalities.
569    
570     The mysql-common-core package ships with a default /etc/my.cnf file that is
571     based on the my-medium.cnf file that comes with the source code.
572     EOF
573    
574     ################################################################################
575     # run the tests
576     %if %{build_test}
577     # disable failing tests
578     echo "rpl_trigger : Unstable test case" >> mysql-test/t/disabled.def
579     echo "type_enum : Unstable test case" >> mysql-test/t/disabled.def
580     echo "windows : For MS Windows only" >> mysql-test/t/disabled.def
581     pushd build/mysql-test
582     export LANG=C
583     export LC_ALL=C
584     export LANGUAGE=C
585     perl ./mysql-test-run.pl \
586     --mtr-build-thread="$((${RANDOM} % 100))" \
587     --skip-ndb \
588     --timer \
589     --retry=0 \
590     --ssl \
591     --mysqld=--binlog-format=mixed \
592     --testcase-timeout=60 \
593     --suite-timeout=120 || false
594     popd
595     %endif
596    
597     %pre
598     # enable plugins
599     if [ -f %{_sysconfdir}/my.cnf ]; then
600     perl -pi -e "s|^#plugin-load|plugin-load|g" %{_sysconfdir}/my.cnf
601     perl -pi -e "s|^#federated|federated|g" %{_sysconfdir}/my.cnf
602 alien 192139 # switch to federatedx provider
603     perl -pi -e "s|;ha_federated\.so$|;ha_federatedx\.so|g" %{_sysconfdir}/my.cnf
604 alien 166284 fi
605    
606     %pre common
607     # delete the mysql group if no mysql user is found, before adding the user
608     if [ -z "`getent passwd %{muser}`" ] && ! [ -z "`getent group %{muser}`" ]; then
609     %{_sbindir}/groupdel %{muser} 2> /dev/null || :
610     fi
611    
612     %_pre_useradd %{muser} /var/lib/mysql /bin/bash
613    
614     %post
615 colin 321747 %_tmpfilescreate mysql
616 alien 166284 %_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 colin 321747 %{_tmpfilesdir}/mysql.conf
641     %{_unitdir}/mysqld.service
642 alien 166284 %{_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}/log/mysqld
776     %{_datadir}/mysql/*.cnf
777     %{_datadir}/mysql/fill_help_tables.sql
778     %{_datadir}/mysql/mysql_system_tables.sql
779     %{_datadir}/mysql/mysql_system_tables_data.sql
780     %{_datadir}/mysql/mysql_test_data_timezone.sql
781     %{_datadir}/mysql/errmsg-utf8.txt
782     %{_datadir}/mysql/czech
783     %{_datadir}/mysql/danish
784     %{_datadir}/mysql/dutch
785     %{_datadir}/mysql/estonian
786     %{_datadir}/mysql/french
787     %{_datadir}/mysql/german
788     %{_datadir}/mysql/greek
789     %{_datadir}/mysql/hungarian
790     %{_datadir}/mysql/italian
791     %{_datadir}/mysql/japanese
792     %{_datadir}/mysql/korean
793     %{_datadir}/mysql/norwegian
794     %{_datadir}/mysql/norwegian-ny
795     %{_datadir}/mysql/polish
796     %{_datadir}/mysql/portuguese
797     %{_datadir}/mysql/romanian
798     %{_datadir}/mysql/russian
799     %{_datadir}/mysql/serbian
800     %{_datadir}/mysql/slovak
801     %{_datadir}/mysql/spanish
802     %{_datadir}/mysql/swedish
803     %{_datadir}/mysql/ukrainian
804     %{_mandir}/man1/innochecksum.1*
805     %{_mandir}/man1/myisamchk.1*
806     %{_mandir}/man1/myisamlog.1*
807     %{_mandir}/man1/myisampack.1*
808     %{_mandir}/man1/my_print_defaults.1*
809 alien 279279 %{_mandir}/man1/mysqlbug.1*
810 alien 166284 %{_mandir}/man1/mysql_convert_table_format.1*
811     %{_mandir}/man1/mysqld_multi.1*
812     %{_mandir}/man1/mysqld_safe.1*
813     %{_mandir}/man1/mysql_fix_extensions.1*
814     %{_mandir}/man1/mysql_fix_privilege_tables.1*
815     %{_mandir}/man1/mysqlhotcopy.1*
816     %{_mandir}/man1/mysql_install_db.1*
817     %{_mandir}/man1/mysqlman.1*
818     %{_mandir}/man1/mysql_secure_installation.1*
819     %{_mandir}/man1/mysql.server.1*
820     %{_mandir}/man1/mysql_setpermission.1*
821     %{_mandir}/man1/mysqlslap.1*
822     %{_mandir}/man1/mysql_tzinfo_to_sql.1*
823     %{_mandir}/man1/mysql_upgrade.1*
824     %{_mandir}/man1/mysql_zap.1*
825     %{_mandir}/man1/perror.1*
826     %{_mandir}/man1/replace.1*
827     %{_mandir}/man1/resolveip.1*
828     %{_mandir}/man1/resolve_stack_dump.1*
829     %{_mandir}/man8/mysqld.8*
830     %{_mandir}/man8/mysqlmanager.8*
831    
832     %files -n %{libname}
833     %{_libdir}/libmysqlclient.so.%{major}*
834    
835     %files -n %{develname}
836     %doc INSTALL-SOURCE
837     %multiarch %{multiarch_bindir}/mysql_config
838     %{_bindir}/mysql_config
839     %{_libdir}/libmysqlclient_r.so
840     %{_libdir}/libmysqlclient.so
841     %dir %{_includedir}/mysql
842     %dir %{_includedir}/mysql/psi
843     %{_includedir}/mysql/*.h
844 fwang 259273 %{_includedir}/mysql/private/*.h
845 alien 279279 %{_includedir}/mysql/private/atomic/*.h
846 alien 166284 %{_includedir}/mysql/psi/*.h
847     %multiarch %{multiarch_includedir}/mysql/my_config.h
848 alien 279279 %{_mandir}/man1/comp_err.1*
849 alien 166284 %{_mandir}/man1/mysql_config.1*
850     %{_datadir}/aclocal/mysql.m4
851 alien 188299 # mysqlservices library is static, because it doesn't contain any code
852     # itself, and is meant to be statically linked to all plugins.
853     %{_libdir}/libmysqlservices.a
854 alien 166284
855     %files -n %{libmariadbembedded}
856     %doc README COPYING
857 alien 182848 %{_libdir}/libmysqld.so.%{major}
858     %{_libdir}/libmysqld.so.%{libmysqlembedded_major}*
859 alien 166284
860     %files -n %{libmariadbembedded_devel}
861     %{_libdir}/libmysqld.so
862     %{_bindir}/mysql_client_test_embedded
863     %{_bindir}/mysqltest_embedded
864     %{_mandir}/man1/mysql_client_test_embedded.1*
865     %{_mandir}/man1/mysqltest_embedded.1*

  ViewVC Help
Powered by ViewVC 1.1.30