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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 601833 - (show annotations) (download)
Mon Mar 10 17:26:00 2014 UTC (10 years ago) by schedbot
File size: 35398 byte(s)
Copying release 10.0.9-0.1.mga5 to pristine/ directory.
1 #(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 %define libmysqlembedded_major 0
36 %define libmysqlembedded_minor 0.1
37 %define libname %mklibname mariadb %{major}
38 %define libmariadbservices %mklibname mariadbservices
39 %define libmariadbembedded %mklibname mariadb-embedded %{major}
40 %define develname %mklibname -d mariadb
41 %define old_staticdevelname %mklibname -d -s mariadb
42 %define libmariadbembedded_devel %mklibname -d mariadb-embedded
43
44 %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 %define mirror http://ftp.osuosl.org/pub/mariadb
51
52 %define muser mysql
53
54 # rule out some useless autodeps in the test suite
55 %define _requires_exceptions perl(th\\|perl(lib\\|perl(mtr\\|perl(My
56 %define _provides_exceptions perl(th\\|perl(lib\\|perl(mtr\\|perl(My
57
58 Summary: A very fast and reliable SQL database engine
59 Name: mariadb
60 Version: 10.0.9
61 Release: %mkrel 0.1
62 Group: Databases
63 License: GPLv2 with exceptions
64 URL: http://mariadb.org/
65 Source0: %{mirror}/%{name}-%{version}/kvm-tarbake-jaunty-x86/%{name}-%{version}.tar.gz
66 Source3: my.cnf
67 Source10: mysql.tmpfiles.d
68 Source11: mysqld.service
69 Source12: mysqld-prepare-db-dir
70 Source13: mysqld-wait-ready
71 Source50: auth_pam.cnf
72 Source51: auth_socket.cnf
73 Source52: dialog.cnf
74 Source53: ha_archive.cnf
75 Source54: ha_blackhole.cnf
76 Source55: ha_cassandra.cnf
77 Source56: ha_connect.cnf
78 Source57: ha_federatedx.cnf
79 Source58: handlersocket.cnf
80 Source59: ha_oqgraph.cnf
81 Source60: ha_sequence.cnf
82 Source61: ha_sphinx.cnf
83 Source62: ha_spider.cnf
84 Source63: locales.cnf
85 Source64: metadata_lock_info.cnf
86 Source65: mysql_clear_password.cnf
87 Source66: query_cache_info.cnf
88 Source67: query_response_time.cnf
89 Source68: semisync_master.cnf
90 Source69: semisync_slave.cnf
91 Source70: sql_errlog.cnf
92 Source71: feedback.cnf
93 Source72: ha_innodb.cnf
94
95 # the following patches are rediffed from the mysql-5.5 src.rpm to mariadb-5.5
96 # fedora patches
97 Patch1: mariadb-5.5-errno.patch
98 Patch3: mariadb-5.5-install-test.patch
99
100 # mandriva patches
101 Patch101: mariadb-5.5-logrotate.patch
102 Patch106: mariadb-5.5-hotcopy.patch
103 Patch107: mariadb-5.5-mysql_install_db-quiet.patch
104
105 # mageia patches
106 Patch121: mariadb-10.0.7-mysqlbug_67018.diff
107
108 Requires(post): systemd >= %{systemd_required_version}
109 Requires(post): rpm-helper >= 0.24.8-1
110 Requires(preun): rpm-helper >= 0.24.8-1
111 Requires(post): %{name}-common%{_isa} = %{version}-%{release}
112 Requires(preun): %{name}-common%{_isa} = %{version}-%{release}
113 Requires(post): %{name}-client%{_isa} = %{version}-%{release}
114 Requires(preun): %{name}-client%{_isa} = %{version}-%{release}
115 Requires(postun): %{name}-common%{_isa} = %{version}-%{release}
116 Requires(postun): %{name}-client%{_isa} = %{version}-%{release}
117 Requires: %{name}-common%{_isa} = %{version}-%{release}
118 Requires: %{name}-core%{_isa} = %{version}-%{release}
119 Requires: %{name}-client%{_isa} = %{version}-%{release}
120 Provides: mysql = %{version}-%{release}
121 Obsoletes: mysql < %{version}-%{release}
122 Obsoletes: %{libmariadbservices} < 5.5.18-0.3194.20111227.1
123 Obsoletes: %{libmysqlservices} < %{version}-%{release}
124 Conflicts: %{name}-extra%{_isa} < %{version}-%{release}
125 Conflicts: %{name}-feedback%{_isa} < %{version}-%{release}
126 Conflicts: %{name}-obsolete%{_isa} < %{version}-%{release}
127 Suggests: %{name}-extra%{_isa}
128 BuildRequires: bison
129 BuildRequires: cmake
130 BuildRequires: doxygen
131 BuildRequires: glibc-devel
132 BuildRequires: libaio-devel
133 BuildRequires: libstdc++-devel
134 BuildRequires: libtermcap-devel
135 BuildRequires: multiarch-utils >= 1.0.3
136 BuildRequires: ncurses-devel
137 BuildRequires: openssl-devel
138 BuildRequires: wrap-devel
139 BuildRequires: python
140 BuildRequires: systemtap
141 BuildRequires: tetex
142 BuildRequires: texinfo
143 BuildRequires: xfs-devel
144 BuildRequires: zlib-devel
145 BuildRequires: libaio-devel
146 BuildRequires: pam-devel
147 BuildConflicts: edit-devel
148 BuildRequires: python-devel
149 BuildRequires: icu-devel
150 BuildRequires: bzip2-devel
151 # use system jemalloc libs instead of bundled ones
152 BuildRequires: jemalloc-devel
153 # required by oqgraph v3
154 BuildRequires: boost-devel
155 BuildRequires: judy-devel
156 # required by cassandra
157 BuildRequires: thrift-devel
158 # external pcre, 10.0.9+
159 # https://bugs.mageia.org/show_bug.cgi?id=12665
160 BuildRequires: pcre-devel >= 8.34-2
161 BuildRequires: pcreposix-devel >= 8.34-2
162
163 %description
164 The MariaDB software delivers a very fast, multi-threaded, multi-user, and
165 robust SQL (Structured Query Language) database server. MariaDB Server is
166 intended for mission-critical, heavy-load production systems as well as for
167 embedding into mass-deployed software.
168
169 The mariadb server is compiled with the following storage engines:
170
171 - Aria Storage Engine
172 - Archive Storage Engine
173 - Blackhole Storage Engine
174 - CSV Storage Engine
175 - FederatedX Storage Engine (Federated replacement)
176 - Heap Storage Engine
177 - MyISAM Storage Engine
178 - MyISAMMRG Storage Engine
179 - Partition Storage Engine
180 - Perfschema Storage Engine
181 - Percona XtraDB Storage Engine (InnoDB replacement)
182
183 A multitude of storage engines and handlers are being provided in separate sub
184 packages such as:
185
186 mariadb-cassandra - Cassandra Storage Engine
187 mariadb-feedback - Feedback Storage Engine
188 mariadb-oqgraph - Open Query GRAPH computation engine
189 mariadb-connect - CONNECT handler
190 mariadb-sphinx - Sphinx Storage Engine
191 mariadb-sequence - Sequence Storage Engine
192 mariadb-spider - Spider Storage Engine
193
194 The following extra storage engines are provided by the mariadb-extra package
195
196 - handlersocket
197 - query_cache_info
198
199 The following storage engines are provided in the mariadb-obsolete package
200
201 - Federated Storage Engine
202
203 %package -n mysql-MariaDB
204 Summary: A MySQL drop-in replacement
205 Group: System/Servers
206 Requires: %{name}%{_isa}
207
208 %description -n mysql-MariaDB
209 MariaDB is a complete MySQL drop-in replacement with additional fixes and
210 storage engines.
211
212 This package is used as a transitional virtual package, which requires
213 MariaDB so that people who used to use mysql can find it nicely.
214
215 %package cassandra
216 Summary: Cassandra Storage Engine
217 Group: System/Servers
218 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
219 Conflicts: %{name}-common-core%{_isa} < %{version}-%{release}
220
221 %description cassandra
222 The Cassandra Storage Engine allows access to data in a Cassandra cluster from
223 MariaDB.
224
225 %package feedback
226 Summary: Feedback storage engine
227 Group: System/Servers
228 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
229 Conflicts: %{name}-common-core%{_isa} < %{version}-%{release}
230
231 %description feedback
232 MariaDB feedback storage engine submits feedback about your mariadb server.
233 Results can be seen on http://mariadb.org/feedback_plugin/ .
234
235 %package oqgraph
236 Summary: Open Query GRAPH computation engine
237 Group: System/Servers
238 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
239 Conflicts: %{name}-common-core%{_isa} < %{version}-%{release}
240 Conflicts: mariadb-extra < 10.0.7
241
242 %description oqgraph
243 The Open Query GRAPH computation engine allows you to handle hierarchies
244 (tree structures) and complex graphs (nodes having many connections in
245 several directions).
246
247 %package connect
248 Summary: CONNECT handler
249 Group: System/Servers
250 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
251 Conflicts: %{name}-common-core%{_isa} < %{version}-%{release}
252
253 %description connect
254 The CONNECT handler enables MariaDB to access external local or remote data.
255 This is done by defining tables based on different data types, in particular
256 files of various format, data extracted from other products (such as Excel),
257 or data retrieved from the environment (for example DIR, WMI, and MAC tables).
258
259 This handler supports MariaDB virtual columns and also permits to define
260 “special” columns such as ROWID and FILEID.
261
262 %package sphinx
263 Summary: Sphinx Storage Engine
264 Group: System/Servers
265 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
266 Conflicts: %{name}-common-core%{_isa} < %{version}-%{release}
267 Conflicts: mariadb-extra < 10.0.7
268 Suggests: sphinx >= 2.1.5
269
270 %description sphinx
271 SphinxSE is a storage engine that talks to searchd (Sphinx daemon) to enable
272 full text searching.
273
274 %package sequence
275 Summary: Sequence Storage Engine
276 Group: System/Servers
277 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
278 Conflicts: %{name}-common-core%{_isa} < %{version}-%{release}
279
280 %description sequence
281 A Sequence engine allows the creation of ascending or descending sequences of
282 numbers with a given starting value, ending value and increment.
283
284 It creates completely virtual, ephemeral tables automatically when you need
285 them. There is no way to create a Sequence table explicitly. Nor are they ever
286 written to disk or create .frm files. They are read-only, transactional, and
287 support XA.
288
289 %package spider
290 Summary: Spider Storage Engine
291 Group: System/Servers
292 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
293 Conflicts: %{name}-common-core%{_isa} < %{version}-%{release}
294
295 %description spider
296 The Spider storage engine supports partitioning and xa transactions, and allows
297 tables of different MariaDB instances to be handled as if they were on the same
298 instance.
299
300 %package extra
301 Summary: MariaDB extra storage engines
302 Group: System/Servers
303 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
304 Conflicts: %{name}-common-core%{_isa} < %{version}-%{release}
305
306 %description extra
307 This package provides various storage engines/handlers such as:
308
309 - handlersocket
310 - query_cache_info
311
312 %package obsolete
313 Summary: MariaDB obsolete storage engines
314 Group: System/Servers
315 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
316 Conflicts: %{name}-common-core%{_isa} < %{version}-%{release}
317 Conflicts: mysql-core < 5.5.18
318
319 %description obsolete
320 MariaDB obsolete storage engines. Federated are being replaced by XtraDB and
321 FederatedX storage engines. These obsolete storage engines are provided in
322 case you need the vanilla mysql storage engines.
323
324 %package core
325 Summary: Server core binary
326 Group: System/Servers
327 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
328 Provides: mysql-core = %{version}-%{release}
329 Obsoletes: mysql-core < %{version}-%{release}
330
331 %description core
332 Core mysqld server binary. For a full MariaDB database server, install
333 package 'mariadb'.
334
335 %package common-core
336 Summary: Common files required by core binary
337 Group: System/Servers
338 Provides: mysql-common-core = %{version}-%{release}
339 Obsoletes: mysql-common-core < %{version}-%{release}
340
341 %description common-core
342 Common files minimally required by mysqld server binary.
343
344 %package common
345 Summary: Common files
346 Group: System/Servers
347 Requires(post): rpm-helper
348 Requires(preun): rpm-helper
349 Requires(pre): rpm-helper
350 Requires(postun): rpm-helper
351 Requires(post): %{name}-client%{_isa} >= %{version}-%{release}
352 Requires(preun): %{name}-client%{_isa} >= %{version}-%{release}
353 Requires: %{name}-client%{_isa} >= %{version}-%{release}
354 Requires: %{name}-common-core%{_isa} >= %{version}-%{release}
355 Provides: mysql-common = %{version}-%{release}
356 Obsoletes: mysql-common < %{version}-%{release}
357
358 %description common
359 Common files for the MariaDB database server.
360
361 %package client
362 Summary: Client
363 Group: Databases
364 Requires(post): %{libname}%{_isa} >= %{version}-%{release}
365 Requires(preun): %{libname}%{_isa} >= %{version}-%{release}
366 Requires: %{libname}%{_isa} >= %{version}-%{release}
367 Provides: mysql-client = %{version}-%{release}
368 Obsoletes: mysql-client < %{version}-%{release}
369
370 %description client
371 This package contains the standard MariaDB clients.
372
373 %package bench
374 Summary: Benchmarks and test system
375 Group: System/Servers
376 Requires(post): %{name}-client%{_isa} >= %{version}-%{release}
377 Requires(preun): %{name}-client%{_isa} >= %{version}-%{release}
378 Requires: %{name}-client%{_isa} >= %{version}-%{release}
379 Suggests: %{name}%{_isa} >= %{version}-%{release}
380 Provides: mysql-bench = %{version}-%{release}
381 Obsoletes: mysql-bench < %{version}-%{release}
382 Conflicts: mariadb < 10.0.7
383
384 %description bench
385 This package contains MariaDB benchmark scripts and data.
386
387 %package -n %{libname}
388 Summary: Shared libraries
389 Group: System/Libraries
390 Provides: %{name}-shared-libs = %{version}-%{release}
391 Provides: %{name}-shared = %{version}-%{release}
392 Provides: %{mysql_libname} = %{version}-%{release}
393 Obsoletes: %{mysql_libname} < %{version}-%{release}
394
395 %description -n %{libname}
396 This package contains the shared libraries (*.so*) which certain languages and
397 applications need to dynamically load and use MariaDB.
398
399 %package -n %{develname}
400 Summary: Development header files and libraries
401 Group: Development/Other
402 Requires(post): %{libname} >= %{version}-%{release}
403 Requires(preun): %{libname} >= %{version}-%{release}
404 Requires(post): %{name}-common%{_isa} >= %{version}-%{release}
405 Requires(preun): %{name}-common%{_isa} >= %{version}-%{release}
406 Requires(post): %{name}-client%{_isa} >= %{version}-%{release}
407 Requires(preun): %{name}-client%{_isa} >= %{version}-%{release}
408 Requires: %{libname} = %{version}-%{release}
409 Requires: %{name}-common%{_isa} >= %{version}-%{release}
410 Requires: %{name}-client%{_isa} >= %{version}-%{release}
411 Provides: %{name}-devel = %{version}-%{release}
412 Provides: %{libname}-devel = %{version}-%{release}
413 Obsoletes: %{libname}-devel < %{version}-%{release}
414 Obsoletes: %{old_staticdevelname} < %{version}-%{release}
415 Provides: %{mysql_develname} = %{version}-%{release}
416 Obsoletes: %{mysql_develname} < %{version}-%{release}
417 Provides: mysql-devel = %{version}-%{release}
418
419 %description -n %{develname}
420 This package contains the development header files and libraries necessary to
421 develop MariaDB client applications.
422
423 %package -n %{libmariadbembedded}
424 Summary: MariaDB as an embeddable library
425 Group: System/Libraries
426 Provides: %{name}-embedded = %{version}-%{release}
427 Obsoletes: %{name}-embedded < %{version}-%{release}
428 Provides: %{libmysqlembedded} = %{version}-%{release}
429 Obsoletes: %{libmysqlembedded} < %{version}-%{release}
430
431 %description -n %{libmariadbembedded}
432 MariaDB is a multi-user, multi-threaded SQL database server. This
433 package contains a version of the MariaDB server that can be embedded
434 into a client application instead of running as a separate process.
435
436 The API is identical for the embedded MariaDB version and the client/server
437 version.
438
439 %package -n %{libmariadbembedded_devel}
440 Summary: Development files for MySQL as an embeddable library
441 Group: Development/Other
442 Provides: %{name}-embedded-devel = %{version}-%{release}
443 Obsoletes: %{name}-embedded-devel < %{version}-%{release}
444 Requires: %{libmariadbembedded} = %{version}-%{release}
445 Requires: %{develname} = %{version}-%{release}
446 Provides: %{libmysqlembedded_devel} = %{version}-%{release}
447 Obsoletes: %{libmysqlembedded_devel} < %{version}-%{release}
448 Provides: mysql-embedded-devel = %{version}-%{release}
449
450 %description -n %{libmariadbembedded_devel}
451 MariaDB is a multi-user, multi-threaded SQL database server. This
452 package contains files needed for developing and testing with
453 the embedded version of the MariaDB server.
454
455 The API is identical for the embedded MariaDB version and the client/server
456 version.
457
458
459 %prep
460 %setup -q
461 %patch1 -p1
462 %patch3 -p1
463 %patch101 -p1
464 %patch106 -p1
465 %patch107 -p1
466 %patch121 -p1
467
468 # no bundled pcre
469 rm -rf pcre
470
471 mkdir -p Mageia
472 cp %{SOURCE3} Mageia/my.cnf
473
474 # remove the sql_yacc.cc file so that bison will regenerate it properly, even if it's patched
475 rm -f sql/sql_yacc.cc
476
477 # lib64 fix
478 perl -pi -e "s|/usr/lib/|%{_libdir}/|g" Mageia/my.cnf
479
480 # antiborker
481 perl -pi -e "s|\@bindir\@|%{_bindir}|g" support-files/* scripts/*
482 perl -pi -e "s|\@sbindir\@|%{_sbindir}|g" support-files/* scripts/*
483 perl -pi -e "s|\@libexecdir\@|%{_sbindir}|g" support-files/* scripts/*
484 perl -pi -e "s|\@localstatedir\@|/var/lib/mysql|g" support-files/* scripts/*
485 perl -pi -e "s|^basedir=.*|basedir=%{_prefix}|g" support-files/* scripts/mysql_install_db*
486
487 # this may be part of the problems with mysql-test
488 # http://bugs.mysql.com/bug.php?id=52223
489 #perl -pi -e "s|basedir/lib\b|basedir/%{_lib}\b|g" mysql-test/mysql-test-run.pl
490 #perl -pi -e "s|basedir/lib/|basedir/%{_lib}/|g" mysql-test/mysql-test-run.pl
491
492 # workaround for upstream bug #56342
493 rm -f mysql-test/t/ssl_8k_key-master.opt
494 rm -f mysql-test/t/file_contents.test
495
496 # fix distribution name
497 sed -i 's/Source distribution/%{_vendor} MariaDB Server/' mysql-test/suite/percona/innodb_sys_index.result
498
499 %build
500
501 ## MariaDB
502 %serverbuild
503 export CFLAGS="${CFLAGS:-%{optflags}}"
504 export CXXFLAGS="${CXXFLAGS:-%{optflags}}"
505 export FFLAGS="${FFLAGS:-%{optflags}}"
506 export LC_ALL=C
507
508 %cmake \
509 -DCMAKE_BUILD_TYPE=RelWithDebInfo \
510 -DCMAKE_INSTALL_PREFIX=%{_prefix} \
511 -DINSTALL_SBINDIR=sbin \
512 -DMYSQL_DATADIR=/var/lib/mysql \
513 -DSYSCONFDIR=%{_sysconfdir} \
514 -DINSTALL_PLUGINDIR=%{_lib}/mysql/plugin \
515 -DINSTALL_MANDIR=share/man \
516 -DINSTALL_SHAREDIR=share/mysql \
517 -DINSTALL_LIBDIR=%{_lib} \
518 -DINSTALL_INCLUDEDIR=include/mysql \
519 -DINSTALL_INFODIR=share/info \
520 -DINSTALL_MYSQLDATADIR=/var/lib/mysql \
521 -DINSTALL_MYSQLTESTDIR=share/mysql/mysql-test \
522 -DINSTALL_SQLBENCHDIR=share/mysql \
523 -DINSTALL_SUPPORTFILESDIR=share/mysql \
524 -DINSTALL_MYSQLSHAREDIR=share/mysql \
525 -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \
526 -DWITH_READLINE=0 \
527 -DWITH_LIBEDIT=0 \
528 -DWITH_LIBWRAP=1 \
529 -DWITH_SSL=system \
530 -DWITH_ZLIB=system \
531 -DWITH_PRCE=system \
532 -DWITH_PIC=1 \
533 -DMYSQL_TCP_PORT=3306 \
534 -DEXTRA_CHARSETS=all \
535 -DENABLED_LOCAL_INFILE=1 \
536 -DENABLE_DTRACE=1 \
537 -DWITH_EMBEDDED_SERVER=1 \
538 -DMYSQL_USER=%{muser} \
539 %if %{build_debug}
540 -DWITH_DEBUG=1 \
541 %else
542 -DWITH_DEBUG=0 \
543 %endif
544 -DWITHOUT_TOKUDB_STORAGE_ENGINE=1 \
545 -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
546 -DWITHOUT_NDBCLUSTER_STORAGE_ENGINE=1 \
547 -DWITHOUT_DAEMON_EXAMPLE=1 \
548 -DWITH_PLUGIN_PBXT=0 \
549 -DFEATURE_SET="community" \
550 -DRPM=1 \
551 -DCOMPILATION_COMMENT="%{_vendor} MariaDB Server"
552
553 %make VERBOSE=1
554
555 %install
556 rm -rf %{buildroot}
557
558 # don't fiddle with the initscript!
559 export DONT_GPRINTIFY=1
560
561 %if %{build_debug}
562 export DONT_STRIP=1
563 %endif
564
565 install -d %{buildroot}%{_sysconfdir}/sysconfig
566 install -d %{buildroot}%{_var}/log/mysqld
567 install -d %{buildroot}/var/lib/mysql/{mysql,test}
568
569 %makeinstall_std -C build
570
571 # exclude loaddata7 from being converted
572 export EXCLUDE_FROM_EOL_CONVERSION="std_data/loaddata7.dat"
573
574 # install configuration files
575 install -m0644 Mageia/my.cnf %{buildroot}%{_sysconfdir}/my.cnf
576
577 install -m 0644 -D %{SOURCE10} %{buildroot}%{_tmpfilesdir}/mysql.conf
578 install -m 0644 -D %{SOURCE11} %{buildroot}%{_unitdir}/mysqld.service
579 install -m 0755 %{SOURCE12} %{buildroot}%{_sbindir}/mysqld-prepare-db-dir
580 install -m 0755 %{SOURCE13} %{buildroot}%{_sbindir}/mysqld-wait-ready
581
582 # cleanup some config files
583 rm -f %{buildroot}%{_sysconfdir}/my.cnf.d/cassandra.cnf \
584 %{buildroot}%{_sysconfdir}/my.cnf.d/connect.cnf \
585 %{buildroot}%{_sysconfdir}/my.cnf.d/oqgraph.cnf
586
587 # magic by anssi
588 pushd %{buildroot}%{_sysconfdir}/my.cnf.d
589 %{expand:%(for i in {50..72}; do echo "install -m 644 %%SOURCE$i ."; done)}
590 popd
591
592 # bork
593 mv %{buildroot}%{_datadir}/mysql/aclocal %{buildroot}%{_datadir}/aclocal
594
595 pushd %{buildroot}%{_bindir}
596 ln -sf mysqlcheck mysqlrepair
597 ln -sf mysqlcheck mysqlanalyze
598 ln -sf mysqlcheck mysqloptimize
599 popd
600
601 # nuke -Wl,--as-needed from the mysql_config file
602 perl -pi -e "s|^ldflags=.*|ldflags=\'-rdynamic\'|g" %{buildroot}%{_bindir}/mysql_config
603
604 # cmake generates some completely wacko references to -lprobes_mysql when
605 # building with dtrace support. Haven't found where to shut that off,
606 # so resort to this blunt instrument. While at it, let's not reference
607 # libmysqlclient_r anymore either.
608 sed -e 's/-lprobes_mysql//' -e 's/-lmysqlclient_r/-lmysqlclient/' \
609 %{buildroot}%{_bindir}/mysql_config >mysql_config.tmp
610 cp -f mysql_config.tmp %{buildroot}%{_bindir}/mysql_config
611 chmod 755 %{buildroot}%{_bindir}/mysql_config
612 install -m 0755 -d %{buildroot}/var/lib/mysql
613
614 # Remove libmysqld.a, + hardlink libmysqld.so.%{libmysqlembedded_major} so that it's provided
615 rm -f %{buildroot}%{_libdir}/libmysqld.a
616 ln %{buildroot}%{_libdir}/libmysqld.so.%{major} %{buildroot}%{_libdir}/libmysqld.so.%{libmysqlembedded_major}.%{libmysqlembedded_minor}
617 ln -s libmysqld.so.%{libmysqlembedded_major}.%{libmysqlembedded_minor} %{buildroot}%{_libdir}/libmysqld.so.%{libmysqlembedded_major}
618
619 # libmysqlclient_r is no more. Upstream tries to replace it with symlinks
620 # but that really doesn't work (wrong soname in particular). We'll keep
621 # just the devel libmysqlclient_r.so link, so that rebuilding without any
622 # source change is enough to get rid of dependency on libmysqlclient_r.
623 rm -f %{buildroot}%{_libdir}/libmysqlclient_r.so*
624 ln -s libmysqlclient.so %{buildroot}%{_libdir}/libmysqlclient_r.so
625
626 # remove static libs
627 rm -f %{buildroot}%{_libdir}/libmysqlclient.a
628 rm -f %{buildroot}%{_libdir}/libmysqlclient_r.a
629
630 # mysql-test includes one executable that doesn't belong under /usr/share,
631 # so move it and provide a symlink
632 mv %{buildroot}%{_datadir}/mysql/mysql-test/lib/My/SafeProcess/my_safe_process %{buildroot}%{_bindir}
633 ln -s %{_bindir}/my_safe_process %{buildroot}%{_datadir}/mysql/mysql-test/lib/My/SafeProcess/my_safe_process
634
635 # mysql client statically built against a local embedded library, pretty useless
636 rm -f %{buildroot}%{_bindir}/mysql_embedded
637
638 # this command enables plugins, but needs ini file + configuration in my.cnf
639 # before executing... and oh yeah, mysql must be stopped... => useless
640 # however, apparently tests seem to want it, even thought they don't use it.
641 #rm -f %{buildroot}%{_bindir}/mysql_plugin
642 rm -f %{buildroot}%{_libdir}/mysql/plugin/daemon_example.ini
643
644 # no RHEL4 selinux files for us
645 rm -rf %{buildroot}%{_datadir}/mysql/SELinux
646 # no solaris files for us
647 rm -rf %{buildroot}%{_datadir}/mysql/solaris
648 # no init script for us
649 rm -f %{buildroot}%{_initrddir}/mysql
650 rm -f %{buildroot}%{_initrddir}/mysqld
651
652 # house cleaning
653 rm -rf %{buildroot}%{_datadir}/info
654 rm -f %{buildroot}%{_bindir}/client_test
655 rm -f %{buildroot}%{_bindir}/make_win_binary_distribution
656 rm -f %{buildroot}%{_bindir}/make_win_src_distribution
657 rm -f %{buildroot}%{_datadir}/mysql/binary-configure
658 rm -f %{buildroot}%{_datadir}/mysql/config.huge.ini
659 rm -f %{buildroot}%{_datadir}/mysql/config.medium.ini
660 rm -f %{buildroot}%{_datadir}/mysql/config.small.ini
661 rm -f %{buildroot}%{_datadir}/mysql/mysqld_multi.server
662 rm -f %{buildroot}%{_datadir}/mysql/mysql-log-rotate
663 rm -f %{buildroot}%{_datadir}/mysql/mysql.server
664 rm -f %{buildroot}%{_datadir}/mysql/ndb-config-2-node.ini
665 rm -f %{buildroot}%{_datadir}/mysql/binary-configure
666 rm -f %{buildroot}%{_mandir}/man1/make_win_bin_dist.1*
667 rm -f %{buildroot}%{_mandir}/man1/make_win_src_distribution.1*
668 rm -f %{buildroot}%{_datadir}/mysql/magic
669
670 # no idea how to fix this
671 rm -rf %{buildroot}%{_prefix}/data
672 rm -rf %{buildroot}%{_prefix}/docs
673 rm -rf %{buildroot}%{_prefix}/scripts
674 rm -rf %{buildroot}%{_datadir}/doc
675 rm -rf %{buildroot}%{_sysconfdir}/init.d/mysql
676 rm -rf %{buildroot}%{_sysconfdir}/logrotate.d/mysql
677
678 %multiarch_binaries %{buildroot}%{_bindir}/mysql_config
679 %multiarch_includes %{buildroot}%{_includedir}/mysql/my_config.h
680
681 cat > README.urpmi <<EOF
682
683 NOTE: MariaDB is installed without root password, it is recommended to set the
684 root password with the following command as soon as possible:
685
686 mysqladmin password
687
688 The initscript used to start mysql has been reverted to use the one shipped
689 by MariaDB. This means the following changes:
690
691 * The generation of the initial system mysql database is now done when mysql
692 is started from the initscript and only if the /var/lib/mysql/mysql
693 directory is empty (mysql_install_db). Previousely this was quite hidden and
694 silently done at (rpm) install time. As a consequence to this change you may
695 have to perform some manual tasks to upgrade the mysql system database and
696 such. So, doing something like this might help you:
697
698 systemctl stop mysqld.service
699 TMPDIR=/var/tmp mysql_install_db
700 mysql_upgrade --skip-write-binlog
701
702 The cluster functionalities (ndb) has been deactivated and will be removed in
703 future mysql versions. Oracle has a new product named mysql-cluster that
704 replaces the cluster functionalities.
705
706 The mysql-common-core package ships with a default /etc/my.cnf file that is
707 based on the my-medium.cnf file that comes with the source code.
708 EOF
709
710 ################################################################################
711 # run the tests
712 %if %{build_test}
713 # disable failing tests
714 pushd build/mysql-test
715 export LANG=C
716 export LC_ALL=C
717 export LANGUAGE=C
718 perl ./mysql-test-run.pl \
719 --mtr-build-thread="$((${RANDOM} % 100))" \
720 --retry=0 \
721 --ssl \
722 --big-test \
723 --force \
724 --max-test-fail=0 \
725 --testcase-timeout=60 \
726 --suite-timeout=1200 || false
727 popd
728 %endif
729
730 %pre
731 # enable plugins
732 if [ -f %{_sysconfdir}/my.cnf ]; then
733 perl -pi -e "s|^#plugin-load|plugin-load|g" %{_sysconfdir}/my.cnf
734 perl -pi -e "s|^#federated|federated|g" %{_sysconfdir}/my.cnf
735 # switch to federatedx provider
736 perl -pi -e "s|;ha_federated\.so$|;ha_federatedx\.so|g" %{_sysconfdir}/my.cnf
737 fi
738
739 %pre common
740 # delete the mysql group if no mysql user is found, before adding the user
741 if [ -z "`getent passwd %{muser}`" ] && ! [ -z "`getent group %{muser}`" ]; then
742 %{_sbindir}/groupdel %{muser} 2> /dev/null || :
743 fi
744
745 %_pre_useradd %{muser} /var/lib/mysql /bin/bash
746
747 %post
748 %_tmpfilescreate mysql
749 %_post_service mysqld
750
751 %preun
752 %_preun_service mysqld
753
754 %postun
755 %_post_service mysqld
756
757 %pre common-core
758 # enable plugins
759 if [ -f %{_sysconfdir}/my.cnf ]; then
760 perl -pi -e "s|^#plugin-load|plugin-load|g" %{_sysconfdir}/my.cnf
761 perl -pi -e "s|^#federated|federated|g" %{_sysconfdir}/my.cnf
762 # switch to federatedx provider
763 perl -pi -e "s|;ha_federated\.so$|;ha_federatedx\.so|g" %{_sysconfdir}/my.cnf
764 fi
765
766 %files
767 %doc README.urpmi
768 # authentication plugins
769 %config(noreplace) %{_sysconfdir}/my.cnf.d/auth_pam.cnf
770 %config(noreplace) %{_sysconfdir}/my.cnf.d/auth_socket.cnf
771 %config(noreplace) %{_sysconfdir}/my.cnf.d/dialog.cnf
772 %config(noreplace) %{_sysconfdir}/my.cnf.d/mysql_clear_password.cnf
773 # replication plugins
774 %config(noreplace) %{_sysconfdir}/my.cnf.d/semisync_master.cnf
775 %config(noreplace) %{_sysconfdir}/my.cnf.d/semisync_slave.cnf
776 # storage engines
777 %config(noreplace) %{_sysconfdir}/my.cnf.d/ha_archive.cnf
778 %config(noreplace) %{_sysconfdir}/my.cnf.d/ha_blackhole.cnf
779 %config(noreplace) %{_sysconfdir}/my.cnf.d/ha_federatedx.cnf
780 # sql logging plugin
781 %config(noreplace) %{_sysconfdir}/my.cnf.d/sql_errlog.cnf
782 # new since 10.x
783 %config(noreplace) %{_sysconfdir}/my.cnf.d/locales.cnf
784 %config(noreplace) %{_sysconfdir}/my.cnf.d/metadata_lock_info.cnf
785 %config(noreplace) %{_sysconfdir}/my.cnf.d/query_response_time.cnf
786
787 %{_tmpfilesdir}/mysql.conf
788 %{_unitdir}/mysqld.service
789 %{_sbindir}/mysqld-prepare-db-dir
790 %{_sbindir}/mysqld-wait-ready
791 %dir %{_libdir}/mysql/plugin
792 # authentication plugins
793 %{_libdir}/mysql/plugin/auth_pam.so
794 %{_libdir}/mysql/plugin/auth_socket.so
795 %{_libdir}/mysql/plugin/dialog.so
796 %{_libdir}/mysql/plugin/mysql_clear_password.so
797 # replication plugins
798 %{_libdir}/mysql/plugin/semisync_master.so
799 %{_libdir}/mysql/plugin/semisync_slave.so
800 # storage engines
801 %{_libdir}/mysql/plugin/ha_archive.so
802 %{_libdir}/mysql/plugin/ha_blackhole.so
803 %{_libdir}/mysql/plugin/ha_federatedx.so
804 # sql logging plugin
805 %{_libdir}/mysql/plugin/sql_errlog.so
806 # new since 10.x
807 %{_libdir}/mysql/plugin/locales.so
808 %{_libdir}/mysql/plugin/metadata_lock_info.so
809 %{_libdir}/mysql/plugin/query_response_time.so
810
811 %files -n mysql-MariaDB
812
813 %files obsolete
814 %config(noreplace) %{_sysconfdir}/my.cnf.d/ha_innodb.cnf
815 %{_libdir}/mysql/plugin/ha_innodb.so
816 %{_libdir}/mysql/plugin/ha_federated.so
817
818 %files cassandra
819 %config(noreplace) %{_sysconfdir}/my.cnf.d/ha_cassandra.cnf
820 %{_libdir}/mysql/plugin/ha_cassandra.so
821
822 %files feedback
823 %config(noreplace) %{_sysconfdir}/my.cnf.d/feedback.cnf
824 %{_libdir}/mysql/plugin/feedback.so
825
826 %files oqgraph
827 %config(noreplace) %{_sysconfdir}/my.cnf.d/ha_oqgraph.cnf
828 %{_libdir}/mysql/plugin/ha_oqgraph.so
829
830 %files connect
831 %config(noreplace) %{_sysconfdir}/my.cnf.d/ha_connect.cnf
832 %{_libdir}/mysql/plugin/ha_connect.so
833
834 %files sphinx
835 %config(noreplace) %{_sysconfdir}/my.cnf.d/ha_sphinx.cnf
836 %{_libdir}/mysql/plugin/ha_sphinx.so
837
838 %files sequence
839 %config(noreplace) %{_sysconfdir}/my.cnf.d/ha_sequence.cnf
840 %{_libdir}/mysql/plugin/ha_sequence.so
841
842 %files spider
843 %config(noreplace) %{_sysconfdir}/my.cnf.d/ha_spider.cnf
844 %{_libdir}/mysql/plugin/ha_spider.so
845 %{_datadir}/mysql/install_spider.sql
846
847 %files extra
848 %config(noreplace) %{_sysconfdir}/my.cnf.d/handlersocket.cnf
849 %config(noreplace) %{_sysconfdir}/my.cnf.d/query_cache_info.cnf
850 %{_libdir}/mysql/plugin/handlersocket.so
851 # new optional functionality
852 %{_libdir}/mysql/plugin/query_cache_info.so
853
854 %files client
855 %config(noreplace) %{_sysconfdir}/my.cnf.d/client.cnf
856 %config(noreplace) %{_sysconfdir}/my.cnf.d/mysql-clients.cnf
857 %{_bindir}/msql2mysql
858 %{_bindir}/mysql
859 %{_bindir}/mysqlaccess
860 %{_bindir}/mysqladmin
861 %{_bindir}/mysqlanalyze
862 %{_bindir}/mysqlbinlog
863 %{_bindir}/mysqlcheck
864 %{_bindir}/mysqldump
865 %{_bindir}/mysqldumpslow
866 %{_bindir}/mysql_find_rows
867 %{_bindir}/mysqlimport
868 %{_bindir}/mysqloptimize
869 %{_bindir}/mysqlrepair
870 %{_bindir}/mysqlshow
871 %{_bindir}/mysqlslap
872 %{_bindir}/mysql_waitpid
873 %{_mandir}/man1/msql2mysql.1*
874 %{_mandir}/man1/myisam_ftdump.1*
875 %{_mandir}/man1/mysql.1*
876 %{_mandir}/man1/mysqlaccess.1*
877 %{_mandir}/man1/mysqladmin.1*
878 %{_mandir}/man1/mysqlbinlog.1*
879 %{_mandir}/man1/mysqlcheck.1*
880 %{_mandir}/man1/mysqldump.1*
881 %{_mandir}/man1/mysqldumpslow.1*
882 %{_mandir}/man1/mysql_find_rows.1*
883 %{_mandir}/man1/mysqlimport.1*
884 %{_mandir}/man1/mysqlshow.1*
885 %{_mandir}/man1/mysql_waitpid.1*
886
887 %files bench
888 %doc build/sql-bench/README
889 %{_bindir}/my_safe_process
890 %{_bindir}/mysql_client_test
891 %{_bindir}/mysql_client_test_embedded
892 %{_bindir}/mysqltest_embedded
893 %{_datadir}/mysql/sql-bench
894 %attr(-,mysql,mysql) %{_datadir}/mysql/mysql-test
895 %{_mandir}/man1/mysql-stress-test.pl.1*
896 %{_mandir}/man1/mysql-test-run.pl.1*
897 %{_mandir}/man1/mysql_client_test.1*
898 %{_mandir}/man1/mysql_client_test_embedded.1*
899 %{_mandir}/man1/mysqltest.1*
900 %{_mandir}/man1/mysqltest_embedded.1*
901 %{_libdir}/mysql/plugin/adt_null.so
902 %{_libdir}/mysql/plugin/auth_0x0100.so
903 %{_libdir}/mysql/plugin/auth_test_plugin.so
904 %{_libdir}/mysql/plugin/dialog_examples.so
905 %{_libdir}/mysql/plugin/ha_test_sql_discovery.so
906 %{_libdir}/mysql/plugin/mypluglib.so
907 %{_libdir}/mysql/plugin/qa_auth_client.so
908 %{_libdir}/mysql/plugin/qa_auth_interface.so
909 %{_libdir}/mysql/plugin/qa_auth_server.so
910
911 %files core
912 %{_sbindir}/mysqld
913
914 %files common-core
915 %config(noreplace) %{_sysconfdir}/my.cnf.d/server.cnf
916 %config(noreplace) %{_sysconfdir}/my.cnf
917 %dir %{_datadir}/mysql
918 %{_datadir}/mysql/english
919 %{_datadir}/mysql/charsets
920
921 %files common
922 %doc README COPYING
923 %dir %{_sysconfdir}/my.cnf.d
924 %{_bindir}/aria_chk
925 %{_bindir}/aria_dump_log
926 %{_bindir}/aria_ftdump
927 %{_bindir}/aria_pack
928 %{_bindir}/aria_read_log
929 %{_bindir}/innochecksum
930 %{_bindir}/myisamchk
931 %{_bindir}/myisam_ftdump
932 %{_bindir}/myisamlog
933 %{_bindir}/myisampack
934 %{_bindir}/my_print_defaults
935 %{_bindir}/mysqlbug
936 %{_bindir}/mysql_convert_table_format
937 %{_bindir}/mysqld_multi
938 %{_bindir}/mysqld_safe
939 %{_bindir}/mysql_fix_extensions
940 %{_bindir}/mysqlhotcopy
941 %{_bindir}/mysql_install_db
942 %{_bindir}/mysql_plugin
943 %{_bindir}/mysql_secure_installation
944 %{_bindir}/mysql_setpermission
945 %{_bindir}/mysqltest
946 %{_bindir}/mysql_tzinfo_to_sql
947 %{_bindir}/mysql_upgrade
948 %{_bindir}/mysql_zap
949 %{_bindir}/mytop
950 %{_bindir}/perror
951 %{_bindir}/replace
952 %{_bindir}/resolveip
953 %{_bindir}/resolve_stack_dump
954 %attr(0755,%{muser},%{muser}) %dir /var/lib/mysql
955 %attr(0755,%{muser},%{muser}) %dir /var/lib/mysql/mysql
956 %attr(0755,%{muser},%{muser}) %dir /var/lib/mysql/test
957 %attr(0755,%{muser},%{muser}) %dir %{_var}/log/mysqld
958 %{_datadir}/mysql/*.cnf
959 %{_datadir}/mysql/fill_help_tables.sql
960 %{_datadir}/mysql/mysql_performance_tables.sql
961 %{_datadir}/mysql/mysql_system_tables.sql
962 %{_datadir}/mysql/mysql_system_tables_data.sql
963 %{_datadir}/mysql/mysql_test_data_timezone.sql
964 %{_datadir}/mysql/errmsg-utf8.txt
965 %{_datadir}/mysql/czech
966 %{_datadir}/mysql/danish
967 %{_datadir}/mysql/dutch
968 %{_datadir}/mysql/estonian
969 %{_datadir}/mysql/french
970 %{_datadir}/mysql/german
971 %{_datadir}/mysql/greek
972 %{_datadir}/mysql/hungarian
973 %{_datadir}/mysql/italian
974 %{_datadir}/mysql/japanese
975 %{_datadir}/mysql/korean
976 %{_datadir}/mysql/norwegian
977 %{_datadir}/mysql/norwegian-ny
978 %{_datadir}/mysql/polish
979 %{_datadir}/mysql/portuguese
980 %{_datadir}/mysql/romanian
981 %{_datadir}/mysql/russian
982 %{_datadir}/mysql/serbian
983 %{_datadir}/mysql/slovak
984 %{_datadir}/mysql/spanish
985 %{_datadir}/mysql/swedish
986 %{_datadir}/mysql/ukrainian
987 %{_mandir}/man1/innochecksum.1*
988 %{_mandir}/man1/myisamchk.1*
989 %{_mandir}/man1/myisamlog.1*
990 %{_mandir}/man1/myisampack.1*
991 %{_mandir}/man1/my_print_defaults.1*
992 %{_mandir}/man1/mysqlbug.1*
993 %{_mandir}/man1/mysql_convert_table_format.1*
994 %{_mandir}/man1/mysqld_multi.1*
995 %{_mandir}/man1/mysqld_safe.1*
996 %{_mandir}/man1/mysql_fix_extensions.1*
997 %{_mandir}/man1/mysql_fix_privilege_tables.1*
998 %{_mandir}/man1/mysqlhotcopy.1*
999 %{_mandir}/man1/mysql_install_db.1*
1000 %{_mandir}/man1/mysqlman.1*
1001 %{_mandir}/man1/mysql_plugin.1*
1002 %{_mandir}/man1/mysql_secure_installation.1*
1003 %{_mandir}/man1/mysql.server.1*
1004 %{_mandir}/man1/mysql_setpermission.1*
1005 %{_mandir}/man1/mysqlslap.1*
1006 %{_mandir}/man1/mysql_tzinfo_to_sql.1*
1007 %{_mandir}/man1/mysql_upgrade.1*
1008 %{_mandir}/man1/mysql_zap.1*
1009 %{_mandir}/man1/perror.1*
1010 %{_mandir}/man1/replace.1*
1011 %{_mandir}/man1/resolveip.1*
1012 %{_mandir}/man1/resolve_stack_dump.1*
1013 %{_mandir}/man8/mysqld.8*
1014 %{_mandir}/man8/mysqlmanager.8*
1015
1016 %files -n %{libname}
1017 %{_libdir}/libmysqlclient.so.%{major}*
1018
1019 %files -n %{develname}
1020 %doc INSTALL-SOURCE
1021 %multiarch %{multiarch_bindir}/mysql_config
1022 %{_bindir}/mysql_config
1023 %{_libdir}/libmysqlclient_r.so
1024 %{_libdir}/libmysqlclient.so
1025 %dir %{_includedir}/mysql
1026 %dir %{_includedir}/mysql/psi
1027 %{_includedir}/mysql/*.h
1028 %{_includedir}/mysql/private/*.h
1029 %{_includedir}/mysql/private/atomic/*.h
1030 %{_includedir}/mysql/psi/*.h
1031 %multiarch %{multiarch_includedir}/mysql/my_config.h
1032 %{_mandir}/man1/mysql_config.1*
1033 %{_datadir}/aclocal/mysql.m4
1034 # mysqlservices library is static, because it doesn't contain any code
1035 # itself, and is meant to be statically linked to all plugins.
1036 %{_libdir}/libmysqlservices.a
1037
1038 %files -n %{libmariadbembedded}
1039 %doc README COPYING
1040 %{_libdir}/libmysqld.so.%{major}
1041 %{_libdir}/libmysqld.so.%{libmysqlembedded_major}*
1042
1043 %files -n %{libmariadbembedded_devel}
1044 %{_libdir}/libmysqld.so
1045 %{_bindir}/mysql_client_test_embedded
1046 %{_bindir}/mysqltest_embedded
1047 %{_mandir}/man1/mysql_client_test_embedded.1*
1048 %{_mandir}/man1/mysqltest_embedded.1*

  ViewVC Help
Powered by ViewVC 1.1.30