/[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 581188 - (hide annotations) (download)
Tue Feb 4 15:50:38 2014 UTC (10 years, 2 months ago) by oden
File size: 31381 byte(s)
- 5.5.35
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 alien 474203 %define boostver 1_53_0
53    
54 alien 166284 %define muser mysql
55     Summary: A very fast and reliable SQL database engine
56     Name: mariadb
57 oden 581188 Version: 5.5.35
58     Release: %mkrel 1
59 alien 166284 Group: Databases
60     License: GPLv2 with exceptions
61     URL: http://mariadb.org/
62 alien 215169 Source0: %{mirror}/%{name}-%{version}/kvm-tarbake-jaunty-x86/%{name}-%{version}.tar.gz
63 alien 166284 Source2: mysqld.sysconfig
64     Source3: my.cnf
65     Source10: mysql.tmpfiles.d
66     Source11: mysqld.service
67     Source12: mysqld-prepare-db-dir
68     Source13: mysqld-wait-ready
69     # the following patches are rediffed from the mysql-5.5 src.rpm to mariadb-5.5
70     # fedora patches
71     Patch1: mariadb-5.5-errno.patch
72     Patch3: mariadb-5.5-install-test.patch
73     Patch4: mysql-expired-certs.patch
74    
75     # mandriva patches
76     Patch101: mariadb-5.5-logrotate.patch
77     Patch106: mariadb-5.5-hotcopy.patch
78     Patch107: mariadb-5.5-mysql_install_db-quiet.patch
79    
80 alien 318282 # mageia patches
81 alien 279279 Patch120: mariadb-5.5.25-forgotten-files.patch
82 alien 553511 Patch133: mariadb-5.5.34-tzinfo-wrong-location.patch
83 alien 279279
84 colin 404859 Requires(post): systemd >= %{systemd_required_version}
85 tmb 233779 Requires(post): rpm-helper >= 0.24.8-1
86     Requires(preun): rpm-helper >= 0.24.8-1
87 alien 193664 Requires(post): %{name}-common%{_isa} = %{version}-%{release}
88     Requires(preun): %{name}-common%{_isa} = %{version}-%{release}
89     Requires(post): %{name}-client%{_isa} = %{version}-%{release}
90     Requires(preun): %{name}-client%{_isa} = %{version}-%{release}
91     Requires(postun): %{name}-common%{_isa} = %{version}-%{release}
92     Requires(postun): %{name}-client%{_isa} = %{version}-%{release}
93     Requires: %{name}-common%{_isa} = %{version}-%{release}
94     Requires: %{name}-core%{_isa} = %{version}-%{release}
95     Requires: %{name}-client%{_isa} = %{version}-%{release}
96 alien 182848 Provides: mysql = %{version}-%{release}
97 fwang 230765 Obsoletes: mysql < %{version}-%{release}
98 alien 188299 Obsoletes: %{libmariadbservices} < 5.5.18-0.3194.20111227.1
99 fwang 230765 Obsoletes: %{libmysqlservices} < %{version}-%{release}
100 alien 230190 Conflicts: %{name}-extra%{_isa} < %{version}-%{release}
101     Conflicts: %{name}-feedback%{_isa} < %{version}-%{release}
102     Conflicts: %{name}-obsolete%{_isa} < %{version}-%{release}
103 alien 193664 Suggests: %{name}-extra%{_isa}
104 alien 166284 BuildRequires: bison
105     BuildRequires: cmake
106     BuildRequires: doxygen
107     BuildRequires: glibc-devel
108     BuildRequires: libaio-devel
109     BuildRequires: libstdc++-devel
110     BuildRequires: libtermcap-devel
111     BuildRequires: multiarch-utils >= 1.0.3
112     BuildRequires: ncurses-devel
113     BuildRequires: openssl-devel
114     BuildRequires: wrap-devel
115     BuildRequires: python
116     BuildRequires: systemtap
117     BuildRequires: tetex
118     BuildRequires: texinfo
119     BuildRequires: xfs-devel
120     BuildRequires: zlib-devel
121 alien 233249 BuildRequires: libaio-devel
122 alien 279953 BuildRequires: pam-devel
123 alien 166284 BuildConflicts: edit-devel
124    
125 alien 474203 ## internal BOOST sources
126     Source200: http://download.sourceforge.net/boost/boost_%{boostver}.tar.bz2
127     # https://svn.boost.org/trac/boost/ticket/6150
128     Patch204: boost-1.50.0-fix-non-utf8-files.patch
129     # https://bugzilla.redhat.com/show_bug.cgi?id=756005
130     # https://svn.boost.org/trac/boost/ticket/6131
131     Patch207: boost-1.50.0-foreach.patch
132     # https://bugzilla.redhat.com/show_bug.cgi?id=783660
133     # https://svn.boost.org/trac/boost/ticket/6459 fixed
134     Patch210: boost-1.50.0-long-double-1.patch
135     # https://bugzilla.redhat.com/show_bug.cgi?id=828856
136     # https://bugzilla.redhat.com/show_bug.cgi?id=828857
137     Patch215: boost-1.50.0-pool.patch
138 alien 482934 Patch216: boost-1.54.0-glibc.patch
139 alien 474237 BuildRequires: python-devel
140     BuildRequires: icu-devel
141 alien 474507 BuildRequires: bzip2-devel
142 alien 474203
143 alien 166284 %description
144     The MariaDB software delivers a very fast, multi-threaded, multi-user, and
145     robust SQL (Structured Query Language) database server. MariaDB Server is
146     intended for mission-critical, heavy-load production systems as well as for
147     embedding into mass-deployed software.
148    
149     The mariadb server is compiled with the following storage engines:
150    
151     - Aria Storage Engine
152     - Archive Storage Engine
153     - Blackhole Storage Engine
154     - CSV Storage Engine
155 alien 188246 - FederatedX Storage Engine (Federated replacement)
156 alien 166284 - Heap Storage Engine
157     - MyISAM Storage Engine
158     - MyISAMMRG Storage Engine
159     - Partition Storage Engine
160     - Perfschema Storage Engine
161 alien 188246 - XtraDB Storage Engine (InnoDB replacement)
162    
163     The following extra storage engines are provided by the mariadb-extra package
164    
165     - OQGraph Storage Engine
166 alien 166284 - Sphinx Storage Engine
167    
168 alien 188246 The feedback storage engine is provided by the mariadb-feedback package
169 alien 166284
170 alien 188246 - Feedback Storage Engine
171    
172     The following storage engines are provided in the mariadb-obsolete package
173    
174     - Federated Storage Engine
175     - InnoDB Storage Engine
176    
177 alien 192139 %package -n mysql-MariaDB
178 alien 192933 Summary: A MySQL drop-in replacement
179 alien 192139 Group: System/Servers
180 alien 193664 Requires: %{name}%{_isa}
181 alien 192139
182     %description -n mysql-MariaDB
183     MariaDB is a complete MySQL drop-in replacement with additional fixes and
184     storage engines.
185    
186     This package is used as a transitional virtual package, which requires
187     MariaDB so that people who used to use mysql can find it nicely.
188    
189 alien 188246 %package feedback
190     Summary: MariaDB feedback storage engine
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 feedback
196     MariaDB feedback storage engine submits feedback about your mariadb server.
197     Results can be seen on http://mariadb.org/feedback_plugin/ .
198    
199     %package extra
200     Summary: MariaDB extra storage engines
201     Group: System/Servers
202 alien 193664 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
203 alien 230190 Conflicts: %{name}-common-core%{_isa} < %{version}-%{release}
204 alien 188246
205     %description extra
206     MariaDB oqgraph and sphinx storage engines.
207    
208     %package obsolete
209     Summary: MariaDB obsolete storage engines
210     Group: System/Servers
211 alien 193664 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
212 alien 230190 Conflicts: %{name}-common-core%{_isa} < %{version}-%{release}
213 alien 188246 Conflicts: mysql-core < 5.5.18
214    
215     %description obsolete
216     MariaDB obsolete storage engines. InnoDB and Federated are being replaced by
217     XtraDB and FederatedX storage engines. These obsolete storage engines are
218     provided in case you need the vanilla mysql storage engines.
219    
220 alien 166284 %package core
221     Summary: Server core binary
222     Group: System/Servers
223 alien 193664 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
224 alien 182848 Provides: mysql-core = %{version}-%{release}
225 fwang 230765 Obsoletes: mysql-core < %{version}-%{release}
226 alien 166284
227     %description core
228     Core mysqld server binary. For a full MariaDB database server, install
229     package 'mariadb'.
230    
231     %package common-core
232     Summary: Common files required by core binary
233     Group: System/Servers
234 alien 182848 Provides: mysql-common-core = %{version}-%{release}
235 fwang 230765 Obsoletes: mysql-common-core < %{version}-%{release}
236 alien 166284
237     %description common-core
238     Common files minimally required by mysqld server binary.
239    
240     %package common
241     Summary: Common files
242     Group: System/Servers
243     Requires(post): rpm-helper
244     Requires(preun): rpm-helper
245     Requires(pre): rpm-helper
246     Requires(postun): rpm-helper
247 alien 193664 Requires(post): %{name}-client%{_isa} >= %{version}-%{release}
248     Requires(preun): %{name}-client%{_isa} >= %{version}-%{release}
249     Requires: %{name}-client%{_isa} >= %{version}-%{release}
250     Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
251 alien 182848 Provides: mysql-common = %{version}-%{release}
252 fwang 230765 Obsoletes: mysql-common < %{version}-%{release}
253 alien 166284
254     %description common
255     Common files for the MariaDB database server.
256    
257     %package client
258     Summary: Client
259     Group: Databases
260 alien 193664 Requires(post): %{libname}%{_isa} >= %{version}-%{release}
261     Requires(preun): %{libname}%{_isa} >= %{version}-%{release}
262     Requires: %{libname}%{_isa} >= %{version}-%{release}
263 alien 182848 Provides: mysql-client = %{version}-%{release}
264 fwang 230765 Obsoletes: mysql-client < %{version}-%{release}
265 alien 166284
266     %description client
267     This package contains the standard MariaDB clients.
268    
269     %package bench
270     Summary: Benchmarks and test system
271     Group: System/Servers
272 alien 193664 Requires(post): %{name}-client%{_isa} >= %{version}-%{release}
273     Requires(preun): %{name}-client%{_isa} >= %{version}-%{release}
274     Requires: %{name}-client%{_isa} >= %{version}-%{release}
275 alien 394537 Suggests: %{name}%{_isa} >= %{version}-%{release}
276 alien 182848 Provides: mysql-bench = %{version}-%{release}
277 fwang 230765 Obsoletes: mysql-bench < %{version}-%{release}
278 alien 166284
279     %description bench
280     This package contains MariaDB benchmark scripts and data.
281    
282     %package -n %{libname}
283     Summary: Shared libraries
284     Group: System/Libraries
285     Provides: %{name}-shared-libs = %{version}-%{release}
286     Provides: %{name}-shared = %{version}-%{release}
287 alien 183054 Provides: %{mysql_libname} = %{version}-%{release}
288 fwang 230765 Obsoletes: %{mysql_libname} < %{version}-%{release}
289 alien 166284
290     %description -n %{libname}
291     This package contains the shared libraries (*.so*) which certain languages and
292     applications need to dynamically load and use MariaDB.
293    
294     %package -n %{develname}
295     Summary: Development header files and libraries
296     Group: Development/Other
297 alien 194264 Requires(post): %{libname} >= %{version}-%{release}
298     Requires(preun): %{libname} >= %{version}-%{release}
299 alien 193664 Requires(post): %{name}-common%{_isa} >= %{version}-%{release}
300     Requires(preun): %{name}-common%{_isa} >= %{version}-%{release}
301     Requires(post): %{name}-client%{_isa} >= %{version}-%{release}
302     Requires(preun): %{name}-client%{_isa} >= %{version}-%{release}
303 alien 194264 Requires: %{libname} = %{version}-%{release}
304 alien 193664 Requires: %{name}-common%{_isa} >= %{version}-%{release}
305     Requires: %{name}-client%{_isa} >= %{version}-%{release}
306 alien 166284 Provides: %{name}-devel = %{version}-%{release}
307     Provides: %{libname}-devel = %{version}-%{release}
308 fwang 230765 Obsoletes: %{libname}-devel < %{version}-%{release}
309     Obsoletes: %{old_staticdevelname} < %{version}-%{release}
310 alien 183054 Provides: %{mysql_develname} = %{version}-%{release}
311 fwang 230765 Obsoletes: %{mysql_develname} < %{version}-%{release}
312 fwang 182925 Provides: mysql-devel = %{version}-%{release}
313 alien 166284
314     %description -n %{develname}
315     This package contains the development header files and libraries necessary to
316     develop MariaDB client applications.
317    
318     %package -n %{libmariadbembedded}
319     Summary: MariaDB as an embeddable library
320     Group: System/Libraries
321     Provides: %{name}-embedded = %{version}-%{release}
322 fwang 230765 Obsoletes: %{name}-embedded < %{version}-%{release}
323 alien 183054 Provides: %{libmysqlembedded} = %{version}-%{release}
324 fwang 230765 Obsoletes: %{libmysqlembedded} < %{version}-%{release}
325 alien 166284
326     %description -n %{libmariadbembedded}
327     MariaDB is a multi-user, multi-threaded SQL database server. This
328     package contains a version of the MariaDB server that can be embedded
329     into a client application instead of running as a separate process.
330    
331     The API is identical for the embedded MariaDB version and the client/server
332     version.
333    
334     %package -n %{libmariadbembedded_devel}
335     Summary: Development files for MySQL as an embeddable library
336     Group: Development/Other
337     Provides: %{name}-embedded-devel = %{version}-%{release}
338 fwang 230765 Obsoletes: %{name}-embedded-devel < %{version}-%{release}
339 alien 194264 Requires: %{libmariadbembedded} = %{version}-%{release}
340     Requires: %{develname} = %{version}-%{release}
341 alien 183054 Provides: %{libmysqlembedded_devel} = %{version}-%{release}
342 fwang 230765 Obsoletes: %{libmysqlembedded_devel} < %{version}-%{release}
343 fwang 182925 Provides: mysql-embedded-devel = %{version}-%{release}
344 alien 166284
345     %description -n %{libmariadbembedded_devel}
346     MariaDB is a multi-user, multi-threaded SQL database server. This
347     package contains files needed for developing and testing with
348     the embedded version of the MariaDB server.
349    
350     The API is identical for the embedded MariaDB version and the client/server
351     version.
352    
353 alien 230286
354 alien 166284 %prep
355 alien 182848 %setup -q
356 alien 474203 %patch1 -p1
357     %patch3 -p1
358     %patch4 -p1
359     %patch101 -p1
360     %patch106 -p1
361     %patch107 -p1
362     %patch120 -p1
363 alien 553511 %patch133 -p1
364 alien 166284
365     mkdir -p Mageia
366     cp %{SOURCE2} Mageia/mysqld.sysconfig
367     cp %{SOURCE3} Mageia/my.cnf
368    
369 alien 395508 # remove the sql_yacc.cc file so that bison will regenerate it properly, even if it's patched
370     rm -f sql/sql_yacc.cc
371    
372 alien 166284 # lib64 fix
373     perl -pi -e "s|/usr/lib/|%{_libdir}/|g" Mageia/my.cnf
374    
375     # antiborker
376     perl -pi -e "s|\@bindir\@|%{_bindir}|g" support-files/* scripts/*
377     perl -pi -e "s|\@sbindir\@|%{_sbindir}|g" support-files/* scripts/*
378     perl -pi -e "s|\@libexecdir\@|%{_sbindir}|g" support-files/* scripts/*
379     perl -pi -e "s|\@localstatedir\@|/var/lib/mysql|g" support-files/* scripts/*
380     perl -pi -e "s|^basedir=.*|basedir=%{_prefix}|g" support-files/* scripts/mysql_install_db*
381    
382     # this may be part of the problems with mysql-test
383     # http://bugs.mysql.com/bug.php?id=52223
384     #perl -pi -e "s|basedir/lib\b|basedir/%{_lib}\b|g" mysql-test/mysql-test-run.pl
385     #perl -pi -e "s|basedir/lib/|basedir/%{_lib}/|g" mysql-test/mysql-test-run.pl
386    
387     # workaround for upstream bug #56342
388     rm -f mysql-test/t/ssl_8k_key-master.opt
389 alien 398167 rm -f mysql-test/t/file_contents.test
390 alien 166284
391 alien 398167 # fix distribution name
392     sed -i 's/Source distribution/%{_vendor} MariaDB Server/' mysql-test/suite/percona/innodb_sys_index.result
393    
394 alien 474203 ## prep internal BOOST
395     %setup -q -D -T -b 200
396     cd ../boost_%{boostver}
397     %patch204 -p1
398     %patch207 -p2
399     %patch210 -p1
400     %patch215 -p0
401 alien 482934 %patch216 -p1
402 alien 474203 cd ..
403    
404 alien 166284 %build
405 alien 474203
406     pushd ../boost_%{boostver}
407     ## build internal BOOST
408     %define gcc_ver %(rpm -q --queryformat="%%{VERSION}" gcc)
409     cat > ./tools/build/v2/user-config.jam << EOF
410     using gcc : %gcc_ver : gcc : <cflags>"%optflags -I%{_includedir}/python%{py_ver}" <cxxflags>"%optflags -I%{_includedir}/python%{py_ver}" <linkflags>"%ldflags" ;
411     using python : %py_ver : %{_bindir}/python%{py_ver} : %{_includedir}/python%{py_ver} : %{_libdir} ;
412     EOF
413     ./bootstrap.sh --with-toolset=gcc --with-icu --prefix=%{_prefix} --libdir=%{_libdir}
414     ./b2 -d+2 -q %{?_smp_mflags} --without-mpi \
415     --prefix=%{_prefix} --libdir=%{_libdir} \
416     linkflags="%{ldflags} -lpython%{py_ver} -lstdc++ -lm" \
417     -sHAVE_ICU=1 \
418     link=shared threading=multi debug-symbols=off --layout=system
419    
420     ## install internal BOOST
421     ./b2 -d+2 -q %{?_smp_mflags} --without-mpi \
422     --prefix=%{buildroot}/../boost%{_prefix} --libdir=%{buildroot}/../boost%{_libdir} \
423     link=shared \
424     install
425     popd
426    
427     ## let oqgraph find boost
428     sed -i '1iSET(BOOST_ROOT %{buildroot}/../boost%{_prefix})' storage/oqgraph/CMakeLists.txt
429    
430     ## MariaDB
431 alien 166284 %serverbuild
432     export CFLAGS="${CFLAGS:-%{optflags}}"
433     export CXXFLAGS="${CXXFLAGS:-%{optflags}}"
434     export FFLAGS="${FFLAGS:-%{optflags}}"
435    
436     %cmake \
437     -DCMAKE_BUILD_TYPE=RelWithDebInfo \
438     -DCMAKE_INSTALL_PREFIX=%{_prefix} \
439     -DINSTALL_SBINDIR=sbin \
440     -DMYSQL_DATADIR=/var/lib/mysql \
441     -DSYSCONFDIR=%{_sysconfdir} \
442     -DINSTALL_PLUGINDIR=%{_lib}/mysql/plugin \
443     -DINSTALL_MANDIR=share/man \
444     -DINSTALL_SHAREDIR=share/mysql \
445     -DINSTALL_LIBDIR=%{_lib} \
446     -DINSTALL_INCLUDEDIR=include/mysql \
447     -DINSTALL_INFODIR=share/info \
448     -DINSTALL_MYSQLDATADIR=/var/lib/mysql \
449     -DINSTALL_MYSQLTESTDIR=share/mysql/mysql-test \
450     -DINSTALL_SQLBENCHDIR=share/mysql \
451     -DINSTALL_SUPPORTFILESDIR=share/mysql \
452     -DINSTALL_MYSQLSHAREDIR=share/mysql \
453     -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \
454     -DWITH_READLINE=0 \
455     -DWITH_LIBEDIT=0 \
456     -DWITH_LIBWRAP=1 \
457     -DWITH_SSL=system \
458     -DWITH_ZLIB=system \
459     -DWITH_PIC=1 \
460     -DMYSQL_TCP_PORT=3306 \
461     -DEXTRA_CHARSETS=all \
462     -DENABLED_LOCAL_INFILE=1 \
463     -DENABLE_DTRACE=1 \
464     -DWITH_EMBEDDED_SERVER=1 \
465     -DMYSQL_USER=%{muser} \
466     %if %{build_debug}
467     -DWITH_DEBUG=1 \
468     %else
469     -DWITH_DEBUG=0 \
470     %endif
471 alien 480734 -DWITHOUT_TOKUDB_STORAGE_ENGINE=1 \
472 alien 166284 -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
473     -DWITHOUT_NDBCLUSTER_STORAGE_ENGINE=1 \
474     -DWITHOUT_DAEMON_EXAMPLE=1 \
475 alien 398167 -DWITH_PLUGIN_PBXT=0 \
476 alien 166284 -DFEATURE_SET="community" \
477 alien 434195 -DRPM=1 \
478 alien 398167 -DCOMPILATION_COMMENT="%{_vendor} MariaDB Server"
479 alien 166284
480     %make
481    
482     %install
483     rm -rf %{buildroot}
484    
485     # don't fiddle with the initscript!
486     export DONT_GPRINTIFY=1
487    
488     %if %{build_debug}
489     export DONT_STRIP=1
490     %endif
491    
492     install -d %{buildroot}%{_sysconfdir}/sysconfig
493     install -d %{buildroot}%{_var}/log/mysqld
494     install -d %{buildroot}/var/lib/mysql/{mysql,test}
495    
496     %makeinstall_std -C build
497    
498 alien 398167 # exclude loaddata7 from being converted
499     export EXCLUDE_FROM_EOL_CONVERSION="std_data/loaddata7.dat"
500    
501 alien 166284 # install configuration files
502     install -m0644 Mageia/mysqld.sysconfig %{buildroot}%{_sysconfdir}/sysconfig/mysqld
503     install -m0644 Mageia/my.cnf %{buildroot}%{_sysconfdir}/my.cnf
504    
505 colin 321747 install -m 0644 -D %{SOURCE10} %{buildroot}%{_tmpfilesdir}/mysql.conf
506     install -m 0644 -D %{SOURCE11} %{buildroot}%{_unitdir}/mysqld.service
507     install -m 0755 %{SOURCE12} %{buildroot}%{_sbindir}/mysqld-prepare-db-dir
508     install -m 0755 %{SOURCE13} %{buildroot}%{_sbindir}/mysqld-wait-ready
509 alien 166284
510     # bork
511 alien 279279 mv %{buildroot}%{_bindir}/mysqlaccess.conf %{buildroot}%{_sysconfdir}/
512     chmod 644 %{buildroot}%{_sysconfdir}/mysqlaccess.conf
513 alien 166284 mv %{buildroot}%{_datadir}/mysql/aclocal %{buildroot}%{_datadir}/aclocal
514    
515     pushd %{buildroot}%{_bindir}
516     ln -sf mysqlcheck mysqlrepair
517     ln -sf mysqlcheck mysqlanalyze
518     ln -sf mysqlcheck mysqloptimize
519     popd
520    
521     # nuke -Wl,--as-needed from the mysql_config file
522     perl -pi -e "s|^ldflags=.*|ldflags=\'-rdynamic\'|g" %{buildroot}%{_bindir}/mysql_config
523    
524     # cmake generates some completely wacko references to -lprobes_mysql when
525     # building with dtrace support. Haven't found where to shut that off,
526     # so resort to this blunt instrument. While at it, let's not reference
527     # libmysqlclient_r anymore either.
528     sed -e 's/-lprobes_mysql//' -e 's/-lmysqlclient_r/-lmysqlclient/' \
529     %{buildroot}%{_bindir}/mysql_config >mysql_config.tmp
530     cp -f mysql_config.tmp %{buildroot}%{_bindir}/mysql_config
531     chmod 755 %{buildroot}%{_bindir}/mysql_config
532     install -m 0755 -d %{buildroot}/var/lib/mysql
533    
534 alien 185578 # Remove libmysqld.a, + hardlink libmysqld.so.%{libmysqlembedded_major} so that it's provided
535 alien 166284 rm -f %{buildroot}%{_libdir}/libmysqld.a
536 alien 185578 ln %{buildroot}%{_libdir}/libmysqld.so.%{major} %{buildroot}%{_libdir}/libmysqld.so.%{libmysqlembedded_major}.%{libmysqlembedded_minor}
537 alien 182848 ln -s libmysqld.so.%{libmysqlembedded_major}.%{libmysqlembedded_minor} %{buildroot}%{_libdir}/libmysqld.so.%{libmysqlembedded_major}
538 alien 166284
539     # libmysqlclient_r is no more. Upstream tries to replace it with symlinks
540     # but that really doesn't work (wrong soname in particular). We'll keep
541     # just the devel libmysqlclient_r.so link, so that rebuilding without any
542     # source change is enough to get rid of dependency on libmysqlclient_r.
543     rm -f %{buildroot}%{_libdir}/libmysqlclient_r.so*
544     ln -s libmysqlclient.so %{buildroot}%{_libdir}/libmysqlclient_r.so
545    
546     # remove static libs
547     rm -f %{buildroot}%{_libdir}/libmysqlclient.a
548     rm -f %{buildroot}%{_libdir}/libmysqlclient_r.a
549    
550     # mysql-test includes one executable that doesn't belong under /usr/share,
551     # so move it and provide a symlink
552     mv %{buildroot}%{_datadir}/mysql/mysql-test/lib/My/SafeProcess/my_safe_process %{buildroot}%{_bindir}
553     ln -s %{_bindir}/my_safe_process %{buildroot}%{_datadir}/mysql/mysql-test/lib/My/SafeProcess/my_safe_process
554    
555 alien 182848 # mysql client statically built against a local embedded library, pretty useless
556     rm -f %{buildroot}%{_bindir}/mysql_embedded
557    
558 alien 230190 # this command enables plugins, but needs ini file + configuration in my.cnf
559     # before executing... and oh yeah, mysql must be stopped... => useless
560     # however, apparently tests seem to want it, even thought they don't use it.
561     #rm -f %{buildroot}%{_bindir}/mysql_plugin
562 alien 182848 rm -f %{buildroot}%{_libdir}/mysql/plugin/daemon_example.ini
563    
564 alien 188246 # remove more useless plugins
565 blino 429629 rm -f %{buildroot}%{_libdir}/mysql/plugin/auth_0x0100.so
566 alien 188246 rm -f %{buildroot}%{_libdir}/mysql/plugin/auth_test_plugin.so
567     rm -f %{buildroot}%{_libdir}/mysql/plugin/dialog_examples.so
568    
569 alien 279279 # no RHEL4 selinux files for us
570     rm -rf %{buildroot}%{_datadir}/mysql/SELinux
571 alien 474203 # no solaris files for us
572     rm -rf %{buildroot}%{_datadir}/mysql/solaris
573 alien 434195 # no init script for us
574     rm -f %{buildroot}%{_initrddir}/mysql
575     rm -f %{buildroot}%{_initrddir}/mysqld
576     # no split up config yet
577     rm -rf %{buildroot}%{_sysconfdir}/my.cnf.d
578 alien 279279
579 alien 166284 # house cleaning
580     rm -rf %{buildroot}%{_datadir}/info
581     rm -f %{buildroot}%{_bindir}/client_test
582     rm -f %{buildroot}%{_bindir}/make_win_binary_distribution
583     rm -f %{buildroot}%{_bindir}/make_win_src_distribution
584     rm -f %{buildroot}%{_datadir}/mysql/binary-configure
585     rm -f %{buildroot}%{_datadir}/mysql/config.huge.ini
586     rm -f %{buildroot}%{_datadir}/mysql/config.medium.ini
587     rm -f %{buildroot}%{_datadir}/mysql/config.small.ini
588     rm -f %{buildroot}%{_datadir}/mysql/mysqld_multi.server
589     rm -f %{buildroot}%{_datadir}/mysql/mysql-log-rotate
590     rm -f %{buildroot}%{_datadir}/mysql/mysql.server
591     rm -f %{buildroot}%{_datadir}/mysql/ndb-config-2-node.ini
592     rm -f %{buildroot}%{_datadir}/mysql/binary-configure
593     rm -f %{buildroot}%{_mandir}/man1/make_win_bin_dist.1*
594     rm -f %{buildroot}%{_mandir}/man1/make_win_src_distribution.1*
595     rm -f %{buildroot}%{_datadir}/mysql/magic
596    
597     # no idea how to fix this
598     rm -rf %{buildroot}%{_prefix}/data
599     rm -rf %{buildroot}%{_prefix}/docs
600     rm -rf %{buildroot}%{_prefix}/scripts
601 alien 434195 rm -rf %{buildroot}%{_datadir}/doc
602     rm -rf %{buildroot}%{_sysconfdir}/init.d/mysql
603     rm -rf %{buildroot}%{_sysconfdir}/logrotate.d/mysql
604 alien 166284
605     %multiarch_binaries %{buildroot}%{_bindir}/mysql_config
606     %multiarch_includes %{buildroot}%{_includedir}/mysql/my_config.h
607    
608     cat > README.urpmi <<EOF
609    
610     NOTE: MariaDB is installed without root password, it is recommended to set the
611 alien 192139 root password with the following command as soon as possible:
612 alien 166284
613 alien 192139 mysqladmin password
614 alien 166284
615     The initscript used to start mysql has been reverted to use the one shipped
616     by MariaDB. This means the following changes:
617    
618     * The generation of the initial system mysql database is now done when mysql
619     is started from the initscript and only if the /var/lib/mysql/mysql
620     directory is empty (mysql_install_db). Previousely this was quite hidden and
621     silently done at (rpm) install time. As a consequence to this change you may
622     have to perform some manual tasks to upgrade the mysql system database and
623     such. So, doing something like this might help you:
624    
625 alien 553511 systemctl stop mysqld.service
626 alien 166284 TMPDIR=/var/tmp mysql_install_db
627 alien 553511 mysql_upgrade --skip-write-binlog
628 alien 166284
629     The cluster functionalities (ndb) has been deactivated and will be removed in
630     future mysql versions. Oracle has a new product named mysql-cluster that
631     replaces the cluster functionalities.
632    
633     The mysql-common-core package ships with a default /etc/my.cnf file that is
634     based on the my-medium.cnf file that comes with the source code.
635     EOF
636    
637     ################################################################################
638     # run the tests
639     %if %{build_test}
640     # disable failing tests
641     pushd build/mysql-test
642     export LANG=C
643     export LC_ALL=C
644     export LANGUAGE=C
645     perl ./mysql-test-run.pl \
646     --mtr-build-thread="$((${RANDOM} % 100))" \
647     --retry=0 \
648     --ssl \
649 alien 398167 --big-test \
650     --force \
651     --max-test-fail=0 \
652 alien 166284 --testcase-timeout=60 \
653 alien 398167 --suite-timeout=1200 || false
654 alien 166284 popd
655     %endif
656    
657     %pre
658     # enable plugins
659     if [ -f %{_sysconfdir}/my.cnf ]; then
660     perl -pi -e "s|^#plugin-load|plugin-load|g" %{_sysconfdir}/my.cnf
661     perl -pi -e "s|^#federated|federated|g" %{_sysconfdir}/my.cnf
662 alien 192139 # switch to federatedx provider
663     perl -pi -e "s|;ha_federated\.so$|;ha_federatedx\.so|g" %{_sysconfdir}/my.cnf
664 alien 166284 fi
665    
666     %pre common
667     # delete the mysql group if no mysql user is found, before adding the user
668     if [ -z "`getent passwd %{muser}`" ] && ! [ -z "`getent group %{muser}`" ]; then
669     %{_sbindir}/groupdel %{muser} 2> /dev/null || :
670     fi
671    
672     %_pre_useradd %{muser} /var/lib/mysql /bin/bash
673    
674     %post
675 colin 321747 %_tmpfilescreate mysql
676 alien 166284 %_post_service mysqld
677    
678     %preun
679     %_preun_service mysqld
680    
681     %postun
682 oden 581188 %_post_service mysqld
683 alien 166284
684     %pre common-core
685     # enable plugins
686     if [ -f %{_sysconfdir}/my.cnf ]; then
687     perl -pi -e "s|^#plugin-load|plugin-load|g" %{_sysconfdir}/my.cnf
688     perl -pi -e "s|^#federated|federated|g" %{_sysconfdir}/my.cnf
689 alien 192139 # switch to federatedx provider
690     perl -pi -e "s|;ha_federated\.so$|;ha_federatedx\.so|g" %{_sysconfdir}/my.cnf
691 alien 166284 fi
692    
693     %files
694     %doc README.urpmi
695 colin 321747 %{_tmpfilesdir}/mysql.conf
696     %{_unitdir}/mysqld.service
697 alien 166284 %{_sbindir}/mysqld-prepare-db-dir
698     %{_sbindir}/mysqld-wait-ready
699     %dir %{_libdir}/mysql/plugin
700 alien 188246 # authentication plugins
701 alien 166284 %{_libdir}/mysql/plugin/auth_socket.so
702 alien 279953 %{_libdir}/mysql/plugin/auth_pam.so
703 alien 166284 %{_libdir}/mysql/plugin/dialog.so
704 alien 188246 %{_libdir}/mysql/plugin/mysql_clear_password.so
705     # replication plugins
706     %{_libdir}/mysql/plugin/semisync_master.so
707     %{_libdir}/mysql/plugin/semisync_slave.so
708     # storage engines
709 alien 166284 %{_libdir}/mysql/plugin/ha_archive.so
710     %{_libdir}/mysql/plugin/ha_blackhole.so
711     %{_libdir}/mysql/plugin/ha_federatedx.so
712 alien 227543 # sql logging plugin
713     %{_libdir}/mysql/plugin/sql_errlog.so
714 alien 188246 # upstream describes this as "junk"
715     %{_libdir}/mysql/plugin/adt_null.so
716 alien 166284 %{_libdir}/mysql/plugin/mypluglib.so
717     %{_libdir}/mysql/plugin/qa_auth_client.so
718     %{_libdir}/mysql/plugin/qa_auth_interface.so
719     %{_libdir}/mysql/plugin/qa_auth_server.so
720 alien 188246 # example plugins, not usefull at all, removing
721 alien 434195 #%{_libdir}/mysql/plugin/auth_0x0100.so
722 alien 188246 #%{_libdir}/mysql/plugin/auth_test_plugin.so
723     #%{_libdir}/mysql/plugin/dialog_examples.so
724 alien 166284
725 alien 192691 %files -n mysql-MariaDB
726    
727 alien 188246 %files obsolete
728     %{_libdir}/mysql/plugin/ha_innodb.so
729     %{_libdir}/mysql/plugin/ha_federated.so
730    
731     %files feedback
732     %{_libdir}/mysql/plugin/feedback.so
733    
734     %files extra
735     %{_libdir}/mysql/plugin/ha_oqgraph.so
736     %{_libdir}/mysql/plugin/ha_sphinx.so
737 alien 279279 %{_libdir}/mysql/plugin/handlersocket.so
738 alien 434195 # new optional functionality
739     %{_libdir}/mysql/plugin/query_cache_info.so
740 alien 474203 # sphinx has 2 plugins now? odd, but wth
741     %{_libdir}/mysql/plugin/sphinx.so
742 alien 188246
743 alien 166284 %files client
744     %config(noreplace) %{_sysconfdir}/mysqlaccess.conf
745     %{_bindir}/msql2mysql
746     %{_bindir}/mysql
747     %{_bindir}/mysqlaccess
748     %{_bindir}/mysqladmin
749     %{_bindir}/mysqlanalyze
750     %{_bindir}/mysqlbinlog
751     %{_bindir}/mysqlcheck
752     %{_bindir}/mysqldump
753     %{_bindir}/mysqldumpslow
754     %{_bindir}/mysql_find_rows
755     %{_bindir}/mysqlimport
756     %{_bindir}/mysqloptimize
757     %{_bindir}/mysqlrepair
758     %{_bindir}/mysqlshow
759     %{_bindir}/mysqlslap
760     %{_bindir}/mysql_waitpid
761     %{_mandir}/man1/msql2mysql.1*
762     %{_mandir}/man1/myisam_ftdump.1*
763     %{_mandir}/man1/mysql.1*
764     %{_mandir}/man1/mysqlaccess.1*
765     %{_mandir}/man1/mysqladmin.1*
766     %{_mandir}/man1/mysqlbinlog.1*
767     %{_mandir}/man1/mysqlcheck.1*
768     %{_mandir}/man1/mysqldump.1*
769     %{_mandir}/man1/mysqldumpslow.1*
770     %{_mandir}/man1/mysql_find_rows.1*
771     %{_mandir}/man1/mysqlimport.1*
772     %{_mandir}/man1/mysqlshow.1*
773     %{_mandir}/man1/mysql_waitpid.1*
774    
775     %files bench
776     %doc build/sql-bench/README
777     %{_bindir}/my_safe_process
778     %{_bindir}/mysql_client_test
779     %{_bindir}/mysql_client_test_embedded
780     %{_bindir}/mysqltest_embedded
781     %{_datadir}/mysql/sql-bench
782     %attr(-,mysql,mysql) %{_datadir}/mysql/mysql-test
783     %{_mandir}/man1/mysql-stress-test.pl.1*
784     %{_mandir}/man1/mysql-test-run.pl.1*
785     %{_mandir}/man1/mysql_client_test.1*
786     %{_mandir}/man1/mysql_client_test_embedded.1*
787     %{_mandir}/man1/mysqltest.1*
788     %{_mandir}/man1/mysqltest_embedded.1*
789    
790     %files core
791     %{_sbindir}/mysqld
792    
793     %files common-core
794     %config(noreplace) %{_sysconfdir}/my.cnf
795     %dir %{_datadir}/mysql
796     %{_datadir}/mysql/english
797     %{_datadir}/mysql/charsets
798    
799     %files common
800     %doc README COPYING
801     %config(noreplace) %{_sysconfdir}/sysconfig/mysqld
802     %{_bindir}/aria_chk
803     %{_bindir}/aria_dump_log
804     %{_bindir}/aria_ftdump
805     %{_bindir}/aria_pack
806     %{_bindir}/aria_read_log
807     %{_bindir}/innochecksum
808     %{_bindir}/myisamchk
809     %{_bindir}/myisam_ftdump
810     %{_bindir}/myisamlog
811     %{_bindir}/myisampack
812     %{_bindir}/my_print_defaults
813     %{_bindir}/mysqlbug
814     %{_bindir}/mysql_convert_table_format
815     %{_bindir}/mysqld_multi
816     %{_bindir}/mysqld_safe
817     %{_bindir}/mysql_fix_extensions
818     %{_bindir}/mysqlhotcopy
819     %{_bindir}/mysql_install_db
820 alien 230190 %{_bindir}/mysql_plugin
821 alien 166284 %{_bindir}/mysql_secure_installation
822     %{_bindir}/mysql_setpermission
823     %{_bindir}/mysqltest
824     %{_bindir}/mysql_tzinfo_to_sql
825     %{_bindir}/mysql_upgrade
826     %{_bindir}/mysql_zap
827 alien 279279 %{_bindir}/mytop
828 alien 166284 %{_bindir}/perror
829     %{_bindir}/replace
830     %{_bindir}/resolveip
831     %{_bindir}/resolve_stack_dump
832     %attr(0755,%{muser},%{muser}) %dir /var/lib/mysql
833     %attr(0755,%{muser},%{muser}) %dir /var/lib/mysql/mysql
834     %attr(0755,%{muser},%{muser}) %dir /var/lib/mysql/test
835     %attr(0755,%{muser},%{muser}) %dir %{_var}/log/mysqld
836     %{_datadir}/mysql/*.cnf
837     %{_datadir}/mysql/fill_help_tables.sql
838 blino 428547 %{_datadir}/mysql/mysql_performance_tables.sql
839 alien 166284 %{_datadir}/mysql/mysql_system_tables.sql
840     %{_datadir}/mysql/mysql_system_tables_data.sql
841     %{_datadir}/mysql/mysql_test_data_timezone.sql
842     %{_datadir}/mysql/errmsg-utf8.txt
843     %{_datadir}/mysql/czech
844     %{_datadir}/mysql/danish
845     %{_datadir}/mysql/dutch
846     %{_datadir}/mysql/estonian
847     %{_datadir}/mysql/french
848     %{_datadir}/mysql/german
849     %{_datadir}/mysql/greek
850     %{_datadir}/mysql/hungarian
851     %{_datadir}/mysql/italian
852     %{_datadir}/mysql/japanese
853     %{_datadir}/mysql/korean
854     %{_datadir}/mysql/norwegian
855     %{_datadir}/mysql/norwegian-ny
856     %{_datadir}/mysql/polish
857     %{_datadir}/mysql/portuguese
858     %{_datadir}/mysql/romanian
859     %{_datadir}/mysql/russian
860     %{_datadir}/mysql/serbian
861     %{_datadir}/mysql/slovak
862     %{_datadir}/mysql/spanish
863     %{_datadir}/mysql/swedish
864     %{_datadir}/mysql/ukrainian
865     %{_mandir}/man1/innochecksum.1*
866     %{_mandir}/man1/myisamchk.1*
867     %{_mandir}/man1/myisamlog.1*
868     %{_mandir}/man1/myisampack.1*
869     %{_mandir}/man1/my_print_defaults.1*
870 alien 279279 %{_mandir}/man1/mysqlbug.1*
871 alien 166284 %{_mandir}/man1/mysql_convert_table_format.1*
872     %{_mandir}/man1/mysqld_multi.1*
873     %{_mandir}/man1/mysqld_safe.1*
874     %{_mandir}/man1/mysql_fix_extensions.1*
875     %{_mandir}/man1/mysql_fix_privilege_tables.1*
876     %{_mandir}/man1/mysqlhotcopy.1*
877     %{_mandir}/man1/mysql_install_db.1*
878     %{_mandir}/man1/mysqlman.1*
879 alien 474203 %{_mandir}/man1/mysql_plugin.1*
880 alien 166284 %{_mandir}/man1/mysql_secure_installation.1*
881     %{_mandir}/man1/mysql.server.1*
882     %{_mandir}/man1/mysql_setpermission.1*
883     %{_mandir}/man1/mysqlslap.1*
884     %{_mandir}/man1/mysql_tzinfo_to_sql.1*
885     %{_mandir}/man1/mysql_upgrade.1*
886     %{_mandir}/man1/mysql_zap.1*
887     %{_mandir}/man1/perror.1*
888     %{_mandir}/man1/replace.1*
889     %{_mandir}/man1/resolveip.1*
890     %{_mandir}/man1/resolve_stack_dump.1*
891     %{_mandir}/man8/mysqld.8*
892     %{_mandir}/man8/mysqlmanager.8*
893    
894     %files -n %{libname}
895     %{_libdir}/libmysqlclient.so.%{major}*
896    
897     %files -n %{develname}
898     %doc INSTALL-SOURCE
899     %multiarch %{multiarch_bindir}/mysql_config
900     %{_bindir}/mysql_config
901     %{_libdir}/libmysqlclient_r.so
902     %{_libdir}/libmysqlclient.so
903     %dir %{_includedir}/mysql
904     %dir %{_includedir}/mysql/psi
905     %{_includedir}/mysql/*.h
906 fwang 259273 %{_includedir}/mysql/private/*.h
907 alien 279279 %{_includedir}/mysql/private/atomic/*.h
908 alien 166284 %{_includedir}/mysql/psi/*.h
909     %multiarch %{multiarch_includedir}/mysql/my_config.h
910 alien 279279 %{_mandir}/man1/comp_err.1*
911 alien 166284 %{_mandir}/man1/mysql_config.1*
912     %{_datadir}/aclocal/mysql.m4
913 alien 188299 # mysqlservices library is static, because it doesn't contain any code
914     # itself, and is meant to be statically linked to all plugins.
915     %{_libdir}/libmysqlservices.a
916 alien 166284
917     %files -n %{libmariadbembedded}
918     %doc README COPYING
919 alien 182848 %{_libdir}/libmysqld.so.%{major}
920     %{_libdir}/libmysqld.so.%{libmysqlembedded_major}*
921 alien 166284
922     %files -n %{libmariadbembedded_devel}
923     %{_libdir}/libmysqld.so
924     %{_bindir}/mysql_client_test_embedded
925     %{_bindir}/mysqltest_embedded
926     %{_mandir}/man1/mysql_client_test_embedded.1*
927     %{_mandir}/man1/mysqltest_embedded.1*

  ViewVC Help
Powered by ViewVC 1.1.30