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

  ViewVC Help
Powered by ViewVC 1.1.30