~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to support-files/mysql.spec.sh

Removed reference to aio.h - we don't reference its use anywhere.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
# Copyright (C) 2000-2007 MySQL AB
 
2
 
3
# This program is free software; you can redistribute it and/or modify
 
4
# it under the terms of the GNU General Public License as published by
 
5
# the Free Software Foundation; version 2 of the License.
 
6
 
7
# This program is distributed in the hope that it will be useful,
 
8
# but WITHOUT ANY WARRANTY; without even the implied warranty of
 
9
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
10
# GNU General Public License for more details.
 
11
 
12
# You should have received a copy of the GNU General Public License
 
13
# along with this program; see the file COPYING. If not, write to the
 
14
# Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston
 
15
# MA  02110-1301  USA.
 
16
 
 
17
%define mysql_version           @VERSION@
 
18
%define mysql_vendor    MySQL AB
 
19
 
 
20
# use "rpmbuild --with static" or "rpm --define '_with_static 1'" (for RPM 3.x)
 
21
# to enable static linking (off by default)
 
22
%{?_with_static:%define STATIC_BUILD 1}
 
23
%{!?_with_static:%define STATIC_BUILD 0}
 
24
 
 
25
# use "rpmbuild --with yassl" or "rpm --define '_with_yassl 1'" (for RPM 3.x)
 
26
# to build with yaSSL support (off by default)
 
27
%{?_with_yassl:%define YASSL_BUILD 1}
 
28
%{!?_with_yassl:%define YASSL_BUILD 0}
 
29
 
 
30
%if %{STATIC_BUILD}
 
31
%define release 0
 
32
%else
 
33
%define release 0.glibc23
 
34
%endif
 
35
%define license GPL
 
36
%define mysqld_user             mysql
 
37
%define mysqld_group    mysql
 
38
%define server_suffix -standard
 
39
%define mysqldatadir /var/lib/mysql
 
40
 
 
41
# We don't package all files installed into the build root by intention -
 
42
# See BUG#998 for details.
 
43
%define _unpackaged_files_terminate_build 0
 
44
 
 
45
%define see_base For a description of MySQL see the base MySQL RPM or http://www.mysql.com
 
46
 
 
47
# On SuSE 9 no separate "debuginfo" package is built. To enable basic
 
48
# debugging on that platform, we don't strip binaries on SuSE 9. We
 
49
# disable the strip of binaries by redefining the RPM macro
 
50
# "__os_install_post" leaving out the script calls that normally does
 
51
# this. We do this in all cases, as on platforms where "debuginfo" is
 
52
# created, a script "find-debuginfo.sh" will be called that will do
 
53
# the strip anyway, part of separating the executable and debug
 
54
# information into separate files put into separate packages.
 
55
#
 
56
# Some references (shows more advanced conditional usage):
 
57
# http://www.redhat.com/archives/rpm-list/2001-November/msg00257.html
 
58
# http://www.redhat.com/archives/rpm-list/2003-February/msg00275.html
 
59
# http://www.redhat.com/archives/rhl-devel-list/2004-January/msg01546.html
 
60
# http://lists.opensuse.org/archive/opensuse-commit/2006-May/1171.html
 
61
 
 
62
%define __os_install_post /usr/lib/rpm/brp-compress
 
63
 
 
64
Name: MySQL
 
65
Summary:        MySQL: a very fast and reliable SQL database server
 
66
Group:          Applications/Databases
 
67
Version:        @MYSQL_NO_DASH_VERSION@
 
68
Release:        %{release}
 
69
License:        %{license}
 
70
Source:         http://www.mysql.com/Downloads/MySQL-@MYSQL_BASE_VERSION@/mysql-%{mysql_version}.tar.gz
 
71
URL:            http://www.mysql.com/
 
72
Packager:       MySQL Production Engineering Team <build@mysql.com>
 
73
Vendor:         %{mysql_vendor}
 
74
Provides:       msqlormysql MySQL-server mysql
 
75
BuildRequires: ncurses-devel
 
76
Obsoletes:      mysql
 
77
 
 
78
# Think about what you use here since the first step is to
 
79
# run a rm -rf
 
80
BuildRoot:    %{_tmppath}/%{name}-%{version}-build
 
81
 
 
82
# From the manual
 
83
%description
 
84
The MySQL(TM) software delivers a very fast, multi-threaded, multi-user,
 
85
and robust SQL (Structured Query Language) database server. MySQL Server
 
86
is intended for mission-critical, heavy-load production systems as well
 
87
as for embedding into mass-deployed software. MySQL is a trademark of
 
88
MySQL AB.
 
89
 
 
90
Copyright (C) 2000-2007 MySQL AB
 
91
This software comes with ABSOLUTELY NO WARRANTY. This is free software,
 
92
and you are welcome to modify and redistribute it under the GPL license.
 
93
 
 
94
The MySQL web site (http://www.mysql.com/) provides the latest
 
95
news and information about the MySQL software. Also please see the
 
96
documentation and the manual for more information.
 
97
 
 
98
%package server
 
99
Summary:        MySQL: a very fast and reliable SQL database server
 
100
Group:          Applications/Databases
 
101
Requires: coreutils grep procps /usr/sbin/useradd /usr/sbin/groupadd /sbin/chkconfig
 
102
Provides:       msqlormysql mysql-server mysql MySQL
 
103
Obsoletes:      MySQL mysql mysql-server
 
104
 
 
105
%description server
 
106
The MySQL(TM) software delivers a very fast, multi-threaded, multi-user,
 
107
and robust SQL (Structured Query Language) database server. MySQL Server
 
108
is intended for mission-critical, heavy-load production systems as well
 
109
as for embedding into mass-deployed software. MySQL is a trademark of
 
110
MySQL AB.
 
111
 
 
112
Copyright (C) 2000-2007 MySQL AB
 
113
This software comes with ABSOLUTELY NO WARRANTY. This is free software,
 
114
and you are welcome to modify and redistribute it under the GPL license.
 
115
 
 
116
The MySQL web site (http://www.mysql.com/) provides the latest
 
117
news and information about the MySQL software. Also please see the
 
118
documentation and the manual for more information.
 
119
 
 
120
This package includes the MySQL server binary (incl. InnoDB) as well
 
121
as related utilities to run and administrate a MySQL server.
 
122
 
 
123
If you want to access and work with the database, you have to install
 
124
package "MySQL-client" as well!
 
125
 
 
126
%package client
 
127
Summary: MySQL - Client
 
128
Group: Applications/Databases
 
129
Obsoletes: mysql-client
 
130
Provides: mysql-client
 
131
 
 
132
%description client
 
133
This package contains the standard MySQL clients and administration tools. 
 
134
 
 
135
%{see_base}
 
136
 
 
137
%package ndb-storage
 
138
Summary:        MySQL - ndbcluster storage engine
 
139
Group:          Applications/Databases
 
140
 
 
141
%description ndb-storage
 
142
This package contains the ndbcluster storage engine. 
 
143
It is necessary to have this package installed on all 
 
144
computers that should store ndbcluster table data.
 
145
 
 
146
%{see_base}
 
147
 
 
148
%package ndb-management
 
149
Summary:        MySQL - ndbcluster storage engine management
 
150
Group:          Applications/Databases
 
151
 
 
152
%description ndb-management
 
153
This package contains ndbcluster storage engine management.
 
154
It is necessary to have this package installed on at least 
 
155
one computer in the cluster.
 
156
 
 
157
%{see_base}
 
158
 
 
159
%package ndb-tools
 
160
Summary:        MySQL - ndbcluster storage engine basic tools
 
161
Group:          Applications/Databases
 
162
 
 
163
%description ndb-tools
 
164
This package contains ndbcluster storage engine basic tools.
 
165
 
 
166
%{see_base}
 
167
 
 
168
%package ndb-extra
 
169
Summary:        MySQL - ndbcluster storage engine extra tools
 
170
Group:          Applications/Databases
 
171
 
 
172
%description ndb-extra
 
173
This package contains some extra ndbcluster storage engine tools for the advanced user.
 
174
They should be used with caution.
 
175
 
 
176
%{see_base}
 
177
 
 
178
%package test
 
179
Requires: %{name}-client perl-DBI perl
 
180
Summary: MySQL - Test suite
 
181
Group: Applications/Databases
 
182
Provides: mysql-test
 
183
Obsoletes: mysql-bench mysql-test
 
184
AutoReqProv: no
 
185
 
 
186
%description test
 
187
This package contains the MySQL regression test suite.
 
188
 
 
189
%{see_base}
 
190
 
 
191
%package devel
 
192
Summary: MySQL - Development header files and libraries
 
193
Group: Applications/Databases
 
194
Provides: mysql-devel
 
195
Obsoletes: mysql-devel
 
196
 
 
197
%description devel
 
198
This package contains the development header files and libraries
 
199
necessary to develop MySQL client applications.
 
200
 
 
201
%{see_base}
 
202
 
 
203
%package shared
 
204
Summary: MySQL - Shared libraries
 
205
Group: Applications/Databases
 
206
 
 
207
%description shared
 
208
This package contains the shared libraries (*.so*) which certain
 
209
languages and applications need to dynamically load and use MySQL.
 
210
 
 
211
%package embedded
 
212
Requires: %{name}-devel
 
213
Summary: MySQL - embedded library
 
214
Group: Applications/Databases
 
215
Obsoletes: mysql-embedded
 
216
 
 
217
%description embedded
 
218
This package contains the MySQL server as an embedded library.
 
219
 
 
220
The embedded MySQL server library makes it possible to run a
 
221
full-featured MySQL server inside the client application.
 
222
The main benefits are increased speed and more simple management
 
223
for embedded applications.
 
224
 
 
225
The API is identical for the embedded MySQL version and the
 
226
client/server version.
 
227
 
 
228
%{see_base}
 
229
 
 
230
%prep
 
231
# We unpack the source two times, for 'debug' and 'release' build.
 
232
%setup -T -a 0 -c -n mysql-%{mysql_version}
 
233
mv mysql-%{mysql_version} mysql-debug-%{mysql_version}
 
234
%setup -D -T -a 0 -n mysql-%{mysql_version}
 
235
mv mysql-%{mysql_version} mysql-release-%{mysql_version}
 
236
 
 
237
%build
 
238
 
 
239
BuildMySQL() {
 
240
# The --enable-assembler simply does nothing on systems that does not
 
241
# support assembler speedups.
 
242
sh -c  "PATH=\"${MYSQL_BUILD_PATH:-$PATH}\" \
 
243
        CC=\"${CC:-$MYSQL_BUILD_CC}\" \
 
244
        CXX=\"${CXX:-$MYSQL_BUILD_CXX}\" \
 
245
        CFLAGS=\"$CFLAGS\" \
 
246
        CXXFLAGS=\"$CXXFLAGS\" \
 
247
        LDFLAGS=\"$MYSQL_BUILD_LDFLAGS\" \
 
248
        ./configure \
 
249
            $* \
 
250
            --with-mysqld-ldflags='-static' \
 
251
            --with-client-ldflags='-static' \
 
252
            --with-zlib-dir=bundled \
 
253
            --enable-assembler \
 
254
            --enable-local-infile \
 
255
            --with-fast-mutexes \
 
256
            --with-mysqld-user=%{mysqld_user} \
 
257
            --with-unix-socket-path=/var/lib/mysql/mysql.sock \
 
258
            --with-pic \
 
259
            --prefix=/ \
 
260
            --with-extra-charsets=all \
 
261
%if %{YASSL_BUILD}
 
262
            --with-ssl \
 
263
%endif
 
264
            --exec-prefix=%{_exec_prefix} \
 
265
            --libexecdir=%{_sbindir} \
 
266
            --libdir=%{_libdir} \
 
267
            --sysconfdir=%{_sysconfdir} \
 
268
            --datadir=%{_datadir} \
 
269
            --localstatedir=%{mysqldatadir} \
 
270
            --infodir=%{_infodir} \
 
271
            --includedir=%{_includedir} \
 
272
            --mandir=%{_mandir} \
 
273
            --enable-thread-safe-client \
 
274
            --with-readline \
 
275
            "
 
276
 make
 
277
}
 
278
 
 
279
# Use our own copy of glibc
 
280
 
 
281
OTHER_LIBC_DIR=/usr/local/mysql-glibc
 
282
USE_OTHER_LIBC_DIR=""
 
283
if test -d "$OTHER_LIBC_DIR"
 
284
then
 
285
  USE_OTHER_LIBC_DIR="--with-other-libc=$OTHER_LIBC_DIR"
 
286
fi
 
287
 
 
288
# Use the build root for temporary storage of the shared libraries.
 
289
 
 
290
RBR=$RPM_BUILD_ROOT
 
291
 
 
292
# Clean up the BuildRoot first
 
293
[ "$RBR" != "/" ] && [ -d $RBR ] && rm -rf $RBR;
 
294
mkdir -p $RBR%{_libdir}/mysql
 
295
 
 
296
#
 
297
# Use MYSQL_BUILD_PATH so that we can use a dedicated version of gcc
 
298
#
 
299
PATH=${MYSQL_BUILD_PATH:-/bin:/usr/bin}
 
300
export PATH
 
301
 
 
302
# Build the Debug binary.
 
303
 
 
304
# Use gcc for C and C++ code (to avoid a dependency on libstdc++ and
 
305
# including exceptions into the code
 
306
if [ -z "$CXX" -a -z "$CC" ]
 
307
then
 
308
        export CC="gcc"
 
309
        export CXX="gcc"
 
310
fi
 
311
 
 
312
##############################################################################
 
313
#
 
314
#  Build the debug version
 
315
#
 
316
##############################################################################
 
317
 
 
318
# Strip -Oxxx, add -g and --with-debug.
 
319
(cd mysql-debug-%{mysql_version} &&
 
320
CFLAGS=`echo "${MYSQL_BUILD_CFLAGS:-$RPM_OPT_FLAGS} -g" | sed -e 's/-O[0-9]*//g'` \
 
321
CXXFLAGS=`echo "${MYSQL_BUILD_CXXFLAGS:-$RPM_OPT_FLAGS -felide-constructors -fno-exceptions -fno-rtti} -g" | sed -e 's/-O[0-9]*//g'` \
 
322
BuildMySQL "--enable-shared \
 
323
                --with-debug \
 
324
                --with-innodb \
 
325
                --with-ndbcluster \
 
326
                --with-archive-storage-engine \
 
327
                --with-csv-storage-engine \
 
328
                --with-example-storage-engine \
 
329
                --with-blackhole-storage-engine \
 
330
                --with-federated-storage-engine \
 
331
%ifarch i386 x86_64
 
332
                --with-falcon \
 
333
%else
 
334
                --without-falcon \
 
335
%endif
 
336
                --with-partition \
 
337
                --with-big-tables \
 
338
                --with-comment=\"MySQL Community Server - Debug (GPL)\"")
 
339
 
 
340
# We might want to save the config log file
 
341
if test -n "$MYSQL_DEBUGCONFLOG_DEST"
 
342
then
 
343
  cp -fp mysql-debug-%{mysql_version}/config.log "$MYSQL_DEBUGCONFLOG_DEST"
 
344
fi
 
345
 
 
346
(cd mysql-debug-%{mysql_version} ; make test-bt-debug)
 
347
 
 
348
##############################################################################
 
349
#
 
350
#  Build the release binary
 
351
#
 
352
##############################################################################
 
353
 
 
354
(cd mysql-release-%{mysql_version} &&
 
355
CFLAGS="${MYSQL_BUILD_CFLAGS:-$RPM_OPT_FLAGS} -g" \
 
356
CXXFLAGS="${MYSQL_BUILD_CXXFLAGS:-$RPM_OPT_FLAGS -felide-constructors -fno-exceptions -fno-rtti} -g" \
 
357
BuildMySQL "--enable-shared \
 
358
                --with-innodb \
 
359
                --with-ndbcluster \
 
360
                --with-archive-storage-engine \
 
361
                --with-csv-storage-engine \
 
362
                --with-example-storage-engine \
 
363
                --with-blackhole-storage-engine \
 
364
                --with-federated-storage-engine \
 
365
%ifarch i386 x86_64
 
366
                --with-falcon \
 
367
%else
 
368
                --without-falcon \
 
369
%endif
 
370
                --with-partition \
 
371
                --with-embedded-server \
 
372
                --with-big-tables \
 
373
                --with-comment=\"MySQL Community Server (GPL)\"")
 
374
# We might want to save the config log file
 
375
if test -n "$MYSQL_CONFLOG_DEST"
 
376
then
 
377
  cp -fp  mysql-release-%{mysql_version}/config.log "$MYSQL_CONFLOG_DEST"
 
378
fi
 
379
 
 
380
(cd mysql-release-%{mysql_version} ; make test-bt)
 
381
 
 
382
##############################################################################
 
383
 
 
384
# Include libgcc.a in the devel subpackage (BUG 4921)
 
385
if expr "$CC" : ".*gcc.*" > /dev/null ;
 
386
then
 
387
  libgcc=`$CC $CFLAGS --print-libgcc-file`
 
388
  if [ -f $libgcc ]
 
389
  then
 
390
    %define have_libgcc 1
 
391
    install -m 644 $libgcc $RBR%{_libdir}/mysql/libmygcc.a
 
392
  fi
 
393
fi
 
394
 
 
395
##############################################################################
 
396
 
 
397
%install
 
398
RBR=$RPM_BUILD_ROOT
 
399
MBD=$RPM_BUILD_DIR/mysql-%{mysql_version}/mysql-release-%{mysql_version}
 
400
 
 
401
# Ensure that needed directories exists
 
402
install -d $RBR%{_sysconfdir}/{logrotate.d,init.d}
 
403
install -d $RBR%{mysqldatadir}/mysql
 
404
install -d $RBR%{_datadir}/mysql-test
 
405
install -d $RBR%{_includedir}
 
406
install -d $RBR%{_libdir}
 
407
install -d $RBR%{_mandir}
 
408
install -d $RBR%{_sbindir}
 
409
 
 
410
 
 
411
# Install all binaries 
 
412
(cd $MBD && make install DESTDIR=$RBR benchdir_root=%{_datadir})
 
413
# Old packages put shared libs in %{_libdir}/ (not %{_libdir}/mysql), so do
 
414
# the same here.
 
415
mv $RBR/%{_libdir}/mysql/*.so* $RBR/%{_libdir}/
 
416
 
 
417
# install "mysqld-debug"
 
418
$MBD/libtool --mode=execute install -m 755 \
 
419
                 $RPM_BUILD_DIR/mysql-%{mysql_version}/mysql-debug-%{mysql_version}/sql/mysqld \
 
420
                 $RBR%{_sbindir}/mysqld-debug
 
421
 
 
422
# install saved perror binary with NDB support (BUG#13740)
 
423
install -m 755 $MBD/extra/perror $RBR%{_bindir}/perror
 
424
 
 
425
# Install logrotate and autostart
 
426
install -m 644 $MBD/support-files/mysql-log-rotate $RBR%{_sysconfdir}/logrotate.d/mysql
 
427
install -m 755 $MBD/support-files/mysql.server $RBR%{_sysconfdir}/init.d/mysql
 
428
 
 
429
# Install embedded server library in the build root
 
430
install -m 644 $MBD/libmysqld/libmysqld.a $RBR%{_libdir}/mysql/
 
431
 
 
432
# Create a symlink "rcmysql", pointing to the init.script. SuSE users
 
433
# will appreciate that, as all services usually offer this.
 
434
ln -s %{_sysconfdir}/init.d/mysql $RPM_BUILD_ROOT%{_sbindir}/rcmysql
 
435
 
 
436
# Touch the place where the my.cnf config file might be located.
 
437
# Just to make sure it's in the file list and marked as a config file.
 
438
touch $RBR%{_sysconfdir}/my.cnf
 
439
 
 
440
%pre server
 
441
# Check if we can safely upgrade.  An upgrade is only safe if it's from one
 
442
# of our RPMs in the same version family.
 
443
 
 
444
installed=`rpm -q --whatprovides mysql-server 2> /dev/null`
 
445
if [ $? -eq 0 -a -n "$installed" ]; then
 
446
  vendor=`rpm -q --queryformat='%{VENDOR}' "$installed" 2>&1`
 
447
  version=`rpm -q --queryformat='%{VERSION}' "$installed" 2>&1`
 
448
  myvendor='%{mysql_vendor}'
 
449
  myversion='%{mysql_version}'
 
450
 
 
451
  old_family=`echo $version   | sed -n -e 's,^\([1-9][0-9]*\.[0-9][0-9]*\)\..*$,\1,p'`
 
452
  new_family=`echo $myversion | sed -n -e 's,^\([1-9][0-9]*\.[0-9][0-9]*\)\..*$,\1,p'`
 
453
 
 
454
  [ -z "$vendor" ] && vendor='<unknown>'
 
455
  [ -z "$old_family" ] && old_family="<unrecognized version $version>"
 
456
  [ -z "$new_family" ] && new_family="<bad package specification: version $myversion>"
 
457
 
 
458
  error_text=
 
459
  if [ "$vendor" != "$myvendor" ]; then
 
460
    error_text="$error_text
 
461
The current MySQL server package is provided by a different
 
462
vendor ($vendor) than $myvendor.  Some files may be installed
 
463
to different locations, including log files and the service
 
464
startup script in %{_sysconfdir}/init.d/.
 
465
"
 
466
  fi
 
467
 
 
468
  if [ "$old_family" != "$new_family" ]; then
 
469
    error_text="$error_text
 
470
Upgrading directly from MySQL $old_family to MySQL $new_family may not
 
471
be safe in all cases.  A manual dump and restore using mysqldump is
 
472
recommended.  It is important to review the MySQL manual's Upgrading
 
473
section for version-specific incompatibilities.
 
474
"
 
475
  fi
 
476
 
 
477
  if [ -n "$error_text" ]; then
 
478
    cat <<HERE >&2
 
479
 
 
480
******************************************************************
 
481
A MySQL server package ($installed) is installed.
 
482
$error_text
 
483
A manual upgrade is required.
 
484
 
 
485
- Ensure that you have a complete, working backup of your data and my.cnf
 
486
  files
 
487
- Shut down the MySQL server cleanly
 
488
- Remove the existing MySQL packages.  Usually this command will
 
489
  list the packages you should remove:
 
490
  rpm -qa | grep -i '^mysql-'
 
491
 
 
492
  You may choose to use 'rpm --nodeps -ev <package-name>' to remove
 
493
  the package which contains the mysqlclient shared library.  The
 
494
  library will be reinstalled by the MySQL-shared-compat package.
 
495
- Install the new MySQL packages supplied by $myvendor
 
496
- Ensure that the MySQL server is started
 
497
 
 
498
This is a brief description of the upgrade process.  Important details
 
499
can be found in the MySQL manual, in the Upgrading section.
 
500
******************************************************************
 
501
HERE
 
502
    exit 1
 
503
  fi
 
504
fi
 
505
 
 
506
# Shut down a previously installed server first
 
507
if test -x %{_sysconfdir}/init.d/mysql
 
508
then
 
509
  %{_sysconfdir}/init.d/mysql stop > /dev/null 2>&1
 
510
  echo "Giving mysqld a couple of seconds to exit nicely"
 
511
  sleep 5
 
512
elif test -x %{_sysconfdir}/rc.d/init.d/mysql
 
513
then
 
514
  %{_sysconfdir}/rc.d/init.d/mysql stop > /dev/null 2>&1
 
515
  echo "Giving mysqld a couple of seconds to exit nicely"
 
516
  sleep 5
 
517
fi
 
518
 
 
519
%post server
 
520
mysql_datadir=%{mysqldatadir}
 
521
 
 
522
# Create data directory if needed
 
523
if test ! -d $mysql_datadir; then mkdir -m 755 $mysql_datadir; fi
 
524
if test ! -d $mysql_datadir/mysql; then mkdir $mysql_datadir/mysql; fi
 
525
if test ! -d $mysql_datadir/test; then mkdir $mysql_datadir/test; fi
 
526
 
 
527
# Make MySQL start/shutdown automatically when the machine does it.
 
528
# use insserv for older SuSE Linux versions
 
529
if test -x /sbin/insserv
 
530
then
 
531
        /sbin/insserv %{_sysconfdir}/init.d/mysql
 
532
# use chkconfig on Red Hat and newer SuSE releases
 
533
elif test -x /sbin/chkconfig
 
534
then
 
535
        /sbin/chkconfig --add mysql
 
536
fi
 
537
 
 
538
# Create a MySQL user and group. Do not report any problems if it already
 
539
# exists.
 
540
groupadd -r %{mysqld_group} 2> /dev/null || true
 
541
useradd -M -r -d $mysql_datadir -s /bin/bash -c "MySQL server" -g %{mysqld_group} %{mysqld_user} 2> /dev/null || true 
 
542
# The user may already exist, make sure it has the proper group nevertheless (BUG#12823)
 
543
usermod -g %{mysqld_group} %{mysqld_user} 2> /dev/null || true
 
544
 
 
545
# Change permissions so that the user that will run the MySQL daemon
 
546
# owns all database files.
 
547
chown -R %{mysqld_user}:%{mysqld_group} $mysql_datadir
 
548
 
 
549
# Initiate databases if needed
 
550
%{_bindir}/mysql_install_db --rpm --user=%{mysqld_user}
 
551
 
 
552
# Upgrade databases if needed would go here - but it cannot be automated yet
 
553
 
 
554
# Change permissions again to fix any new files.
 
555
chown -R %{mysqld_user}:%{mysqld_group} $mysql_datadir
 
556
 
 
557
# Fix permissions for the permission database so that only the user
 
558
# can read them.
 
559
chmod -R og-rw $mysql_datadir/mysql
 
560
 
 
561
# Restart in the same way that mysqld will be started normally.
 
562
%{_sysconfdir}/init.d/mysql start
 
563
 
 
564
# Allow mysqld_safe to start mysqld and print a message before we exit
 
565
sleep 2
 
566
 
 
567
#echo "Thank you for installing the MySQL Community Server! For Production
 
568
#systems, we recommend MySQL Enterprise, which contains enterprise-ready
 
569
#software, intelligent advisory services, and full production support with
 
570
#scheduled service packs and more.  Visit www.mysql.com/enterprise for more
 
571
#information." 
 
572
 
 
573
%post ndb-storage
 
574
mysql_clusterdir=/var/lib/mysql-cluster
 
575
 
 
576
# Create cluster directory if needed
 
577
if test ! -d $mysql_clusterdir; then mkdir -m 755 $mysql_clusterdir; fi
 
578
 
 
579
 
 
580
%preun server
 
581
if test $1 = 0
 
582
then
 
583
  # Stop MySQL before uninstalling it
 
584
  if test -x %{_sysconfdir}/init.d/mysql
 
585
  then
 
586
    %{_sysconfdir}/init.d/mysql stop > /dev/null
 
587
 
 
588
    # Remove autostart of mysql
 
589
    # for older SuSE Linux versions
 
590
    if test -x /sbin/insserv
 
591
    then
 
592
      /sbin/insserv -r %{_sysconfdir}/init.d/mysql
 
593
    # use chkconfig on Red Hat and newer SuSE releases
 
594
    elif test -x /sbin/chkconfig
 
595
    then
 
596
      /sbin/chkconfig --del mysql
 
597
    fi
 
598
  fi
 
599
fi
 
600
 
 
601
# We do not remove the mysql user since it may still own a lot of
 
602
# database files.
 
603
 
 
604
# Clean up the BuildRoot
 
605
%clean
 
606
[ "$RPM_BUILD_ROOT" != "/" ] && [ -d $RPM_BUILD_ROOT ] && rm -rf $RPM_BUILD_ROOT;
 
607
 
 
608
%files server
 
609
%defattr(-,root,root,0755)
 
610
 
 
611
%doc mysql-release-%{mysql_version}/COPYING mysql-release-%{mysql_version}/README 
 
612
%doc mysql-release-%{mysql_version}/support-files/my-*.cnf
 
613
%doc mysql-release-%{mysql_version}/support-files/ndb-*.ini
 
614
 
 
615
%doc %attr(644, root, root) %{_infodir}/mysql.info*
 
616
 
 
617
%doc %attr(644, root, man) %{_mandir}/man1/my_print_defaults.1*
 
618
%doc %attr(644, root, man) %{_mandir}/man1/myisam_ftdump.1*
 
619
%doc %attr(644, root, man) %{_mandir}/man1/myisamchk.1*
 
620
%doc %attr(644, root, man) %{_mandir}/man1/myisamlog.1*
 
621
%doc %attr(644, root, man) %{_mandir}/man1/myisampack.1*
 
622
%doc %attr(644, root, man) %{_mandir}/man8/mysqld.8*
 
623
%doc %attr(644, root, man) %{_mandir}/man1/mysqld_multi.1*
 
624
%doc %attr(644, root, man) %{_mandir}/man1/mysqld_safe.1*
 
625
%doc %attr(644, root, man) %{_mandir}/man1/mysql_fix_privilege_tables.1*
 
626
%doc %attr(644, root, man) %{_mandir}/man1/mysql_install_db.1*
 
627
%doc %attr(644, root, man) %{_mandir}/man1/mysqlhotcopy.1*
 
628
%doc %attr(644, root, man) %{_mandir}/man1/mysqlman.1*
 
629
%doc %attr(644, root, man) %{_mandir}/man1/mysql.server.1*
 
630
%doc %attr(644, root, man) %{_mandir}/man1/mysqltest.1*
 
631
%doc %attr(644, root, man) %{_mandir}/man1/mysql_tzinfo_to_sql.1*
 
632
%doc %attr(644, root, man) %{_mandir}/man1/mysql_zap.1*
 
633
%doc %attr(644, root, man) %{_mandir}/man1/perror.1*
 
634
%doc %attr(644, root, man) %{_mandir}/man1/replace.1*
 
635
 
 
636
%ghost %config(noreplace,missingok) %{_sysconfdir}/my.cnf
 
637
 
 
638
%attr(755, root, root) %{_bindir}/my_print_defaults
 
639
%attr(755, root, root) %{_bindir}/myisam_ftdump
 
640
%attr(755, root, root) %{_bindir}/myisamchk
 
641
%attr(755, root, root) %{_bindir}/myisamlog
 
642
%attr(755, root, root) %{_bindir}/myisampack
 
643
%attr(755, root, root) %{_bindir}/mysql_convert_table_format
 
644
%attr(755, root, root) %{_bindir}/mysql_fix_extensions
 
645
%attr(755, root, root) %{_bindir}/mysql_fix_privilege_tables
 
646
%attr(755, root, root) %{_bindir}/mysql_install_db
 
647
%attr(755, root, root) %{_bindir}/mysql_secure_installation
 
648
%attr(755, root, root) %{_bindir}/mysql_setpermission
 
649
%attr(755, root, root) %{_bindir}/mysql_tzinfo_to_sql
 
650
%attr(755, root, root) %{_bindir}/mysql_zap
 
651
%attr(755, root, root) %{_bindir}/mysqlbug
 
652
%attr(755, root, root) %{_bindir}/mysqld_multi
 
653
%attr(755, root, root) %{_bindir}/mysqld_safe
 
654
%attr(755, root, root) %{_bindir}/mysqldumpslow
 
655
%attr(755, root, root) %{_bindir}/mysqlhotcopy
 
656
%attr(755, root, root) %{_bindir}/mysqltest
 
657
%attr(755, root, root) %{_bindir}/perror
 
658
%attr(755, root, root) %{_bindir}/replace
 
659
%attr(755, root, root) %{_bindir}/resolve_stack_dump
 
660
%attr(755, root, root) %{_bindir}/resolveip
 
661
 
 
662
%attr(755, root, root) %{_sbindir}/mysqld
 
663
%attr(755, root, root) %{_sbindir}/mysqld-debug
 
664
%attr(755, root, root) %{_sbindir}/rcmysql
 
665
 
 
666
%attr(644, root, root) %config(noreplace,missingok) %{_sysconfdir}/logrotate.d/mysql
 
667
%attr(755, root, root) %{_sysconfdir}/init.d/mysql
 
668
 
 
669
%attr(755, root, root) %{_datadir}/mysql/
 
670
 
 
671
%files client
 
672
%defattr(-, root, root, 0755)
 
673
%attr(755, root, root) %{_bindir}/msql2mysql
 
674
%attr(755, root, root) %{_bindir}/mysql
 
675
%attr(755, root, root) %{_bindir}/mysql_find_rows
 
676
%attr(755, root, root) %{_bindir}/mysql_waitpid
 
677
%attr(755, root, root) %{_bindir}/mysqlaccess
 
678
%attr(755, root, root) %{_bindir}/mysqladmin
 
679
%attr(755, root, root) %{_bindir}/mysqlbinlog
 
680
%attr(755, root, root) %{_bindir}/mysqlcheck
 
681
%attr(755, root, root) %{_bindir}/mysqldump
 
682
%attr(755, root, root) %{_bindir}/mysqlimport
 
683
%attr(755, root, root) %{_bindir}/mysqlshow
 
684
%attr(755, root, root) %{_bindir}/mysqlslap
 
685
 
 
686
%doc %attr(644, root, man) %{_mandir}/man1/msql2mysql.1*
 
687
%doc %attr(644, root, man) %{_mandir}/man1/mysql.1*
 
688
%doc %attr(644, root, man) %{_mandir}/man1/mysqlaccess.1*
 
689
%doc %attr(644, root, man) %{_mandir}/man1/mysqladmin.1*
 
690
%doc %attr(644, root, man) %{_mandir}/man1/mysqlbinlog.1*
 
691
%doc %attr(644, root, man) %{_mandir}/man1/mysqlcheck.1*
 
692
%doc %attr(644, root, man) %{_mandir}/man1/mysqldump.1*
 
693
%doc %attr(644, root, man) %{_mandir}/man1/mysqlimport.1*
 
694
%doc %attr(644, root, man) %{_mandir}/man1/mysqlshow.1*
 
695
%doc %attr(644, root, man) %{_mandir}/man1/mysqlslap.1*
 
696
 
 
697
%post shared
 
698
/sbin/ldconfig
 
699
 
 
700
%postun shared
 
701
/sbin/ldconfig
 
702
 
 
703
%files ndb-storage
 
704
%defattr(-,root,root,0755)
 
705
%attr(755, root, root) %{_sbindir}/ndbd
 
706
%doc %attr(644, root, man) %{_mandir}/man8/ndbd.8*
 
707
 
 
708
%files ndb-management
 
709
%defattr(-,root,root,0755)
 
710
%attr(755, root, root) %{_sbindir}/ndb_mgmd
 
711
%doc %attr(644, root, man) %{_mandir}/man8/ndb_mgmd.8*
 
712
 
 
713
%files ndb-tools
 
714
%defattr(-,root,root,0755)
 
715
%attr(755, root, root) %{_bindir}/ndb_config
 
716
%attr(755, root, root) %{_bindir}/ndb_desc
 
717
%attr(755, root, root) %{_bindir}/ndb_error_reporter
 
718
%attr(755, root, root) %{_bindir}/ndb_mgm
 
719
%attr(755, root, root) %{_bindir}/ndb_print_backup_file
 
720
%attr(755, root, root) %{_bindir}/ndb_print_schema_file
 
721
%attr(755, root, root) %{_bindir}/ndb_print_sys_file
 
722
%attr(755, root, root) %{_bindir}/ndb_restore
 
723
%attr(755, root, root) %{_bindir}/ndb_select_all
 
724
%attr(755, root, root) %{_bindir}/ndb_select_count
 
725
%attr(755, root, root) %{_bindir}/ndb_show_tables
 
726
%attr(755, root, root) %{_bindir}/ndb_size.pl
 
727
%attr(755, root, root) %{_bindir}/ndb_test_platform
 
728
%attr(755, root, root) %{_bindir}/ndb_waiter
 
729
%doc %attr(644, root, man) %{_mandir}/man1/ndb_config.1*
 
730
%doc %attr(644, root, man) %{_mandir}/man1/ndb_desc.1*
 
731
%doc %attr(644, root, man) %{_mandir}/man1/ndb_error_reporter.1*
 
732
%doc %attr(644, root, man) %{_mandir}/man1/ndb_print_backup_file.1*
 
733
%doc %attr(644, root, man) %{_mandir}/man1/ndb_print_schema_file.1*
 
734
%doc %attr(644, root, man) %{_mandir}/man1/ndb_print_sys_file.1*
 
735
%doc %attr(644, root, man) %{_mandir}/man1/ndb_select_all.1*
 
736
%doc %attr(644, root, man) %{_mandir}/man1/ndb_select_count.1*
 
737
%doc %attr(644, root, man) %{_mandir}/man1/ndb_show_tables.1*
 
738
%doc %attr(644, root, man) %{_mandir}/man1/ndb_size.pl.1*
 
739
%doc %attr(644, root, man) %{_mandir}/man1/ndb_waiter.1*
 
740
 
 
741
%files ndb-extra
 
742
%defattr(-,root,root,0755)
 
743
%attr(755, root, root) %{_sbindir}/ndb_cpcd
 
744
%attr(755, root, root) %{_bindir}/ndb_delete_all
 
745
%attr(755, root, root) %{_bindir}/ndb_drop_index
 
746
%attr(755, root, root) %{_bindir}/ndb_drop_table
 
747
%doc %attr(644, root, man) %{_mandir}/man1/ndb_delete_all.1*
 
748
%doc %attr(644, root, man) %{_mandir}/man1/ndb_drop_index.1*
 
749
%doc %attr(644, root, man) %{_mandir}/man1/ndb_drop_table.1*
 
750
 
 
751
%files devel
 
752
%defattr(-, root, root, 0755)
 
753
%doc mysql-release-%{mysql_version}/EXCEPTIONS-CLIENT
 
754
%doc %attr(644, root, man) %{_mandir}/man1/mysql_config.1*
 
755
%attr(755, root, root) %{_bindir}/mysql_config
 
756
%dir %attr(755, root, root) %{_includedir}/mysql
 
757
%dir %attr(755, root, root) %{_libdir}/mysql
 
758
%{_includedir}/mysql/*
 
759
%{_libdir}/mysql/libdbug.a
 
760
%{_libdir}/mysql/libheap.a
 
761
%if %{have_libgcc}
 
762
%{_libdir}/mysql/libmygcc.a
 
763
%endif
 
764
%{_libdir}/mysql/libmyisam.a
 
765
%{_libdir}/mysql/libmyisammrg.a
 
766
%{_libdir}/mysql/libmysqlclient.a
 
767
%{_libdir}/mysql/libmysqlclient.la
 
768
%{_libdir}/mysql/libmysqlclient_r.a
 
769
%{_libdir}/mysql/libmysqlclient_r.la
 
770
%{_libdir}/mysql/libmystrings.a
 
771
%{_libdir}/mysql/libmysys.a
 
772
%{_libdir}/mysql/libndbclient.a
 
773
%{_libdir}/mysql/libndbclient.la
 
774
%{_libdir}/mysql/libvio.a
 
775
%{_libdir}/mysql/libz.a
 
776
%{_libdir}/mysql/libz.la
 
777
 
 
778
%files shared
 
779
%defattr(-, root, root, 0755)
 
780
# Shared libraries (omit for architectures that don't support them)
 
781
%{_libdir}/libmysql*.so*
 
782
%{_libdir}/libndb*.so*
 
783
 
 
784
%files test
 
785
%defattr(-, root, root, 0755)
 
786
%attr(-, root, root) %{_datadir}/mysql-test
 
787
%attr(755, root, root) %{_bindir}/mysql_client_test
 
788
%attr(755, root, root) %{_bindir}/mysql_client_test_embedded
 
789
%attr(755, root, root) %{_bindir}/mysqltest_embedded
 
790
%doc %attr(644, root, man) %{_mandir}/man1/mysql_client_test.1*
 
791
%doc %attr(644, root, man) %{_mandir}/man1/mysql_client_test_embedded.1*
 
792
%doc %attr(644, root, man) %{_mandir}/man1/mysql-stress-test.pl.1*
 
793
%doc %attr(644, root, man) %{_mandir}/man1/mysql-test-run.pl.1*
 
794
%doc %attr(644, root, man) %{_mandir}/man1/mysqltest_embedded.1*
 
795
 
 
796
%files embedded
 
797
%defattr(-, root, root, 0755) 
 
798
%attr(644, root, root) %{_libdir}/mysql/libmysqld.a
 
799
 
 
800
# The spec file changelog only includes changes made to the spec file
 
801
# itself - note that they must be ordered by date (important when
 
802
# merging BK trees)
 
803
%changelog
 
804
* Wed Mar 19 2008 Joerg Bruehe <joerg@mysql.com>
 
805
 
 
806
- Add the man pages for "ndbd" and "ndb_mgmd".
 
807
 
 
808
* Mon Feb 18 2008 Timothy Smith <tim@mysql.com>
 
809
 
 
810
- Require a manual upgrade if the alread-installed mysql-server is
 
811
  from another vendor, or is of a different major version.
 
812
 
 
813
* Fri Dec 21 2007 Joerg Bruehe <joerg@mysql.com>
 
814
 
 
815
- "mysqlmanager" got removed from version 6.0, all references deleted.
 
816
 
 
817
* Thu Dec 06 2007 Jonathan Perkin <jperkin@mysql.com>
 
818
 
 
819
- Enabled the "Falcon" storage engine on i386/x86_64.
 
820
 
 
821
* Wed May 02 2007 Joerg Bruehe <joerg@mysql.com>
 
822
 
 
823
- "ndb_size.tmpl" is not needed any more, 
 
824
  "man1/mysql_install_db.1" lacked the trailing '*'.
 
825
 
 
826
* Sat Apr 07 2007 Kent Boortz <kent@mysql.com>
 
827
 
 
828
- Removed man page for "mysql_create_system_tables"
 
829
 
 
830
* Wed Mar 21 2007 Daniel Fischer <df@mysql.com>
 
831
 
 
832
- Add debug server.
 
833
 
 
834
* Mon Mar 19 2007 Daniel Fischer <df@mysql.com>
 
835
 
 
836
- Remove Max RPMs; the server RPMs contain a mysqld compiled with all
 
837
  features that previously only were built into Max.
 
838
 
 
839
* Fri Mar 02 2007 Joerg Bruehe <joerg@mysql.com>
 
840
 
 
841
- Add several man pages for NDB which are now created.
 
842
 
 
843
* Fri Jan 05 2007 Kent Boortz <kent@mysql.com>
 
844
 
 
845
- Put back "libmygcc.a", found no real reason it was removed.
 
846
 
 
847
- Add CFLAGS to gcc call with --print-libgcc-file, to make sure the
 
848
  correct "libgcc.a" path is returned for the 32/64 bit architecture.
 
849
 
 
850
* Mon Dec 18 2006 Joerg Bruehe <joerg@mysql.com>
 
851
 
 
852
- Fix the move of "mysqlmanager" to section 8: Directory name was wrong.
 
853
 
 
854
* Thu Dec 14 2006 Joerg Bruehe <joerg@mysql.com>
 
855
 
 
856
- Include the new man pages for "my_print_defaults" and "mysql_tzinfo_to_sql"
 
857
  in the server RPM.
 
858
- The "mysqlmanager" man page got moved from section 1 to 8.
 
859
 
 
860
* Thu Nov 30 2006 Joerg Bruehe <joerg@mysql.com>
 
861
 
 
862
- Call "make install" using "benchdir_root=%{_datadir}", 
 
863
  because that is affecting the regression test suite as well.
 
864
 
 
865
* Thu Nov 16 2006 Joerg Bruehe <joerg@mysql.com>
 
866
 
 
867
- Explicitly note that the "MySQL-shared" RPMs (as built by MySQL AB) 
 
868
  replace "mysql-shared" (as distributed by SuSE) to allow easy upgrading
 
869
  (bug#22081).
 
870
 
 
871
* Mon Nov 13 2006 Joerg Bruehe <joerg@mysql.com>
 
872
 
 
873
- Add "--with-partition" to all server builds.
 
874
 
 
875
- Use "--report-features" in one test run per server build.
 
876
 
 
877
* Tue Aug 15 2006 Joerg Bruehe <joerg@mysql.com>
 
878
 
 
879
- The "max" server is removed from packages, effective from 5.1.12-beta.
 
880
  Delete all steps to build, package, or install it.
 
881
 
 
882
* Mon Jul 10 2006 Joerg Bruehe <joerg@mysql.com>
 
883
 
 
884
- Fix a typing error in the "make" target for the Perl script to run the tests.
 
885
 
 
886
* Tue Jul 04 2006 Joerg Bruehe <joerg@mysql.com>
 
887
 
 
888
- Use the Perl script to run the tests, because it will automatically check
 
889
  whether the server is configured with SSL.
 
890
 
 
891
* Tue Jun 27 2006 Joerg Bruehe <joerg@mysql.com>
 
892
 
 
893
- move "mysqldumpslow" from the client RPM to the server RPM (bug#20216)
 
894
 
 
895
- Revert all previous attempts to call "mysql_upgrade" during RPM upgrade,
 
896
  there are some more aspects which need to be solved before this is possible.
 
897
  For now, just ensure the binary "mysql_upgrade" is delivered and installed.
 
898
 
 
899
* Thu Jun 22 2006 Joerg Bruehe <joerg@mysql.com>
 
900
 
 
901
- Close a gap of the previous version by explicitly using
 
902
  a newly created temporary directory for the socket to be used
 
903
  in the "mysql_upgrade" operation, overriding any local setting.
 
904
 
 
905
* Tue Jun 20 2006 Joerg Bruehe <joerg@mysql.com>
 
906
 
 
907
- To run "mysql_upgrade", we need a running server;
 
908
  start it in isolation and skip password checks.
 
909
 
 
910
* Sat May 20 2006 Kent Boortz <kent@mysql.com>
 
911
 
 
912
- Always compile for PIC, position independent code.
 
913
 
 
914
* Wed May 10 2006 Kent Boortz <kent@mysql.com>
 
915
 
 
916
- Use character set "all" when compiling with Cluster, to make Cluster
 
917
  nodes independent on the character set directory, and the problem
 
918
  that two RPM sub packages both wants to install this directory.
 
919
 
 
920
* Mon May 01 2006 Kent Boortz <kent@mysql.com>
 
921
 
 
922
- Use "./libtool --mode=execute" instead of searching for the
 
923
  executable in current directory and ".libs".
 
924
 
 
925
* Fri Apr 28 2006 Kent Boortz <kent@mysql.com>
 
926
 
 
927
- Install and run "mysql_upgrade"
 
928
 
 
929
* Wed Apr 12 2006 Jim Winstead <jimw@mysql.com>
 
930
 
 
931
- Remove sql-bench, and MySQL-bench RPM (will be built as an independent
 
932
  project from the mysql-bench repository)
 
933
 
 
934
* Tue Apr 11 2006 Jim Winstead <jimw@mysql.com>
 
935
 
 
936
- Remove old mysqltestmanager and related programs
 
937
* Sat Apr 01 2006 Kent Boortz <kent@mysql.com>
 
938
 
 
939
- Set $LDFLAGS from $MYSQL_BUILD_LDFLAGS
 
940
 
 
941
* Wed Mar 07 2006 Kent Boortz <kent@mysql.com>
 
942
 
 
943
- Changed product name from "Community Edition" to "Community Server"
 
944
 
 
945
* Mon Mar 06 2006 Kent Boortz <kent@mysql.com>
 
946
 
 
947
- Fast mutexes is now disabled by default, but should be
 
948
  used in Linux builds.
 
949
 
 
950
* Mon Feb 20 2006 Kent Boortz <kent@mysql.com>
 
951
 
 
952
- Reintroduced a max build
 
953
- Limited testing of 'debug' and 'max' servers
 
954
- Berkeley DB only in 'max'
 
955
 
 
956
* Mon Feb 13 2006 Joerg Bruehe <joerg@mysql.com>
 
957
 
 
958
- Use "-i" on "make test-force";
 
959
  this is essential for later evaluation of this log file.
 
960
 
 
961
* Thu Feb 09 2006 Kent Boortz <kent@mysql.com>
 
962
 
 
963
- Pass '-static' to libtool, link static with our own libraries, dynamic
 
964
  with system libraries.  Link with the bundled zlib.
 
965
 
 
966
* Wed Feb 08 2006 Kristian Nielsen <knielsen@mysql.com>
 
967
 
 
968
- Modified RPM spec to match new 5.1 debug+max combined community packaging.
 
969
 
 
970
* Sun Dec 18 2005 Kent Boortz <kent@mysql.com>
 
971
 
 
972
- Added "client/mysqlslap"
 
973
 
 
974
* Mon Dec 12 2005 Rodrigo Novo <rodrigo@mysql.com>
 
975
 
 
976
- Added zlib to the list of (static) libraries installed
 
977
- Added check against libtool wierdness (WRT: sql/mysqld || sql/.libs/mysqld)
 
978
- Compile MySQL with bundled zlib
 
979
- Fixed %packager name to "MySQL Production Engineering Team"
 
980
 
 
981
* Mon Dec 05 2005 Joerg Bruehe <joerg@mysql.com>
 
982
 
 
983
- Avoid using the "bundled" zlib on "shared" builds: 
 
984
  As it is not installed (on the build system), this gives dependency 
 
985
  problems with "libtool" causing the build to fail.
 
986
  (Change was done on Nov 11, but left uncommented.)
 
987
 
 
988
* Tue Nov 22 2005 Joerg Bruehe <joerg@mysql.com>
 
989
 
 
990
- Extend the file existence check for "init.d/mysql" on un-install
 
991
  to also guard the call to "insserv"/"chkconfig".
 
992
 
 
993
* Thu Oct 27 2005 Lenz Grimmer <lenz@grimmer.com>
 
994
 
 
995
- added more man pages
 
996
 
 
997
* Wed Oct 19 2005 Kent Boortz <kent@mysql.com>
 
998
 
 
999
- Made yaSSL support an option (off by default)
 
1000
 
 
1001
* Wed Oct 19 2005 Kent Boortz <kent@mysql.com>
 
1002
 
 
1003
- Enabled yaSSL support
 
1004
 
 
1005
* Sat Oct 15 2005 Kent Boortz <kent@mysql.com>
 
1006
 
 
1007
- Give mode arguments the same way in all places
 
1008
- Moved copy of mysqld.a to "standard" build, but
 
1009
  disabled it as we don't do embedded yet in 5.0
 
1010
 
 
1011
* Fri Oct 14 2005 Kent Boortz <kent@mysql.com>
 
1012
 
 
1013
- For 5.x, always compile with --with-big-tables
 
1014
- Copy the config.log file to location outside
 
1015
  the build tree
 
1016
 
 
1017
* Fri Oct 14 2005 Kent Boortz <kent@mysql.com>
 
1018
 
 
1019
- Removed unneeded/obsolete configure options
 
1020
- Added archive engine to standard server
 
1021
- Removed the embedded server from experimental server
 
1022
- Changed suffix "-Max" => "-max"
 
1023
- Changed comment string "Max" => "Experimental"
 
1024
 
 
1025
* Thu Oct 13 2005 Lenz Grimmer <lenz@mysql.com>
 
1026
 
 
1027
- added a usermod call to assign a potential existing mysql user to the
 
1028
  correct user group (BUG#12823)
 
1029
- Save the perror binary built during Max build so it supports the NDB
 
1030
  error codes (BUG#13740)
 
1031
- added a separate macro "mysqld_group" to be able to define the
 
1032
  user group of the mysql user seperately, if desired.
 
1033
 
 
1034
* Thu Sep 29 2005 Lenz Grimmer <lenz@mysql.com>
 
1035
 
 
1036
- fixed the removing of the RPM_BUILD_ROOT in the %clean section (the
 
1037
  $RBR variable did not get expanded, thus leaving old build roots behind)
 
1038
 
 
1039
* Thu Aug 04 2005 Lenz Grimmer <lenz@mysql.com>
 
1040
 
 
1041
- Fixed the creation of the mysql user group account in the postinstall
 
1042
  section (BUG 12348)
 
1043
- Fixed enabling the Archive storage engine in the Max binary
 
1044
 
 
1045
* Tue Aug 02 2005 Lenz Grimmer <lenz@mysql.com>
 
1046
 
 
1047
- Fixed the Requires: tag for the server RPM (BUG 12233)
 
1048
 
 
1049
* Fri Jul 15 2005 Lenz Grimmer <lenz@mysql.com>
 
1050
 
 
1051
- create a "mysql" user group and assign the mysql user account to that group
 
1052
  in the server postinstall section. (BUG 10984)
 
1053
 
 
1054
* Tue Jun 14 2005 Lenz Grimmer <lenz@mysql.com>
 
1055
 
 
1056
- Do not build statically on i386 by default, only when adding either "--with
 
1057
  static" or "--define '_with_static 1'" to the RPM build options. Static
 
1058
  linking really only makes sense when linking against the specially patched
 
1059
  glibc 2.2.5.
 
1060
 
 
1061
* Mon Jun 06 2005 Lenz Grimmer <lenz@mysql.com>
 
1062
 
 
1063
- added mysql_client_test to the "bench" subpackage (BUG 10676)
 
1064
- added the libndbclient static and shared libraries (BUG 10676)
 
1065
 
 
1066
* Wed Jun 01 2005 Lenz Grimmer <lenz@mysql.com>
 
1067
 
 
1068
- use "mysqldatadir" variable instead of hard-coding the path multiple times
 
1069
- use the "mysqld_user" variable on all occasions a user name is referenced
 
1070
- removed (incomplete) Brazilian translations
 
1071
- removed redundant release tags from the subpackage descriptions
 
1072
 
 
1073
* Wed May 25 2005 Joerg Bruehe <joerg@mysql.com>
 
1074
 
 
1075
- Added a "make clean" between separate calls to "BuildMySQL".
 
1076
 
 
1077
* Thu May 12 2005 Guilhem Bichot <guilhem@mysql.com>
 
1078
 
 
1079
- Removed the mysql_tableinfo script made obsolete by the information schema
 
1080
 
 
1081
* Wed Apr 20 2005 Lenz Grimmer <lenz@mysql.com>
 
1082
 
 
1083
- Enabled the "blackhole" storage engine for the Max RPM
 
1084
 
 
1085
* Wed Apr 13 2005 Lenz Grimmer <lenz@mysql.com>
 
1086
 
 
1087
- removed the MySQL manual files (html/ps/texi) - they have been removed
 
1088
  from the MySQL sources and are now available seperately.
 
1089
 
 
1090
* Mon Apr 4 2005 Petr Chardin <petr@mysql.com>
 
1091
 
 
1092
- old mysqlmanager, mysqlmanagerc and mysqlmanager-pwger renamed into
 
1093
  mysqltestmanager, mysqltestmanager and mysqltestmanager-pwgen respectively
 
1094
 
 
1095
* Fri Mar 18 2005 Lenz Grimmer <lenz@mysql.com>
 
1096
 
 
1097
- Disabled RAID in the Max binaries once and for all (it has finally been
 
1098
  removed from the source tree)
 
1099
 
 
1100
* Sun Feb 20 2005 Petr Chardin <petr@mysql.com>
 
1101
 
 
1102
- Install MySQL Instance Manager together with mysqld, touch mysqlmanager
 
1103
  password file
 
1104
 
 
1105
* Mon Feb 14 2005 Lenz Grimmer <lenz@mysql.com>
 
1106
 
 
1107
- Fixed the compilation comments and moved them into the separate build sections
 
1108
  for Max and Standard
 
1109
 
 
1110
* Mon Feb 7 2005 Tomas Ulin <tomas@mysql.com>
 
1111
 
 
1112
- enabled the "Ndbcluster" storage engine for the max binary
 
1113
- added extra make install in ndb subdir after Max build to get ndb binaries
 
1114
- added packages for ndbcluster storage engine
 
1115
 
 
1116
* Fri Jan 14 2005 Lenz Grimmer <lenz@mysql.com>
 
1117
 
 
1118
- replaced obsoleted "BuildPrereq" with "BuildRequires" instead
 
1119
 
 
1120
* Thu Jan 13 2005 Lenz Grimmer <lenz@mysql.com>
 
1121
 
 
1122
- enabled the "Federated" storage engine for the max binary
 
1123
 
 
1124
* Tue Jan 04 2005 Petr Chardin <petr@mysql.com>
 
1125
 
 
1126
- ISAM and merge storage engines were purged. As well as appropriate
 
1127
  tools and manpages (isamchk and isamlog)
 
1128
 
 
1129
* Thu Dec 31 2004 Lenz Grimmer <lenz@mysql.com>
 
1130
 
 
1131
- enabled the "Archive" storage engine for the max binary
 
1132
- enabled the "CSV" storage engine for the max binary
 
1133
- enabled the "Example" storage engine for the max binary
 
1134
 
 
1135
* Thu Aug 26 2004 Lenz Grimmer <lenz@mysql.com>
 
1136
 
 
1137
- MySQL-Max now requires MySQL-server instead of MySQL (BUG 3860)
 
1138
 
 
1139
* Fri Aug 20 2004 Lenz Grimmer <lenz@mysql.com>
 
1140
 
 
1141
- do not link statically on IA64/AMD64 as these systems do not have
 
1142
  a patched glibc installed
 
1143
 
 
1144
* Tue Aug 10 2004 Lenz Grimmer <lenz@mysql.com>
 
1145
 
 
1146
- Added libmygcc.a to the devel subpackage (required to link applications
 
1147
  against the the embedded server libmysqld.a) (BUG 4921)
 
1148
 
 
1149
* Mon Aug 09 2004 Lenz Grimmer <lenz@mysql.com>
 
1150
 
 
1151
- Added EXCEPTIONS-CLIENT to the "devel" package
 
1152
 
 
1153
* Thu Jul 29 2004 Lenz Grimmer <lenz@mysql.com>
 
1154
 
 
1155
- disabled OpenSSL in the Max binaries again (the RPM packages were the
 
1156
  only exception to this anyway) (BUG 1043)
 
1157
 
 
1158
* Wed Jun 30 2004 Lenz Grimmer <lenz@mysql.com>
 
1159
 
 
1160
- fixed server postinstall (mysql_install_db was called with the wrong
 
1161
  parameter)
 
1162
 
 
1163
* Thu Jun 24 2004 Lenz Grimmer <lenz@mysql.com>
 
1164
 
 
1165
- added mysql_tzinfo_to_sql to the server subpackage
 
1166
- run "make clean" instead of "make distclean"
 
1167
 
 
1168
* Mon Apr 05 2004 Lenz Grimmer <lenz@mysql.com>
 
1169
 
 
1170
- added ncurses-devel to the build prerequisites (BUG 3377)
 
1171
 
 
1172
* Thu Feb 12 2004 Lenz Grimmer <lenz@mysql.com>
 
1173
 
 
1174
- when using gcc, _always_ use CXX=gcc 
 
1175
- replaced Copyright with License field (Copyright is obsolete)
 
1176
 
 
1177
* Tue Feb 03 2004 Lenz Grimmer <lenz@mysql.com>
 
1178
 
 
1179
- added myisam_ftdump to the Server package
 
1180
 
 
1181
* Tue Jan 13 2004 Lenz Grimmer <lenz@mysql.com>
 
1182
 
 
1183
- link the mysql client against libreadline instead of libedit (BUG 2289)
 
1184
 
 
1185
* Mon Dec 22 2003 Lenz Grimmer <lenz@mysql.com>
 
1186
 
 
1187
- marked /etc/logrotate.d/mysql as a config file (BUG 2156)
 
1188
 
 
1189
* Fri Dec 13 2003 Lenz Grimmer <lenz@mysql.com>
 
1190
 
 
1191
- fixed file permissions (BUG 1672)
 
1192
 
 
1193
* Thu Dec 11 2003 Lenz Grimmer <lenz@mysql.com>
 
1194
 
 
1195
- made testing for gcc3 a bit more robust
 
1196
 
 
1197
* Fri Dec 05 2003 Lenz Grimmer <lenz@mysql.com>
 
1198
 
 
1199
- added missing file mysql_create_system_tables to the server subpackage
 
1200
 
 
1201
* Fri Nov 21 2003 Lenz Grimmer <lenz@mysql.com>
 
1202
 
 
1203
- removed dependency on MySQL-client from the MySQL-devel subpackage
 
1204
  as it is not really required. (BUG 1610)
 
1205
 
 
1206
* Fri Aug 29 2003 Lenz Grimmer <lenz@mysql.com>
 
1207
 
 
1208
- Fixed BUG 1162 (removed macro names from the changelog)
 
1209
- Really fixed BUG 998 (disable the checking for installed but
 
1210
  unpackaged files)
 
1211
 
 
1212
* Tue Aug 05 2003 Lenz Grimmer <lenz@mysql.com>
 
1213
 
 
1214
- Fixed BUG 959 (libmysqld not being compiled properly)
 
1215
- Fixed BUG 998 (RPM build errors): added missing files to the
 
1216
  distribution (mysql_fix_extensions, mysql_tableinfo, mysqldumpslow,
 
1217
  mysql_fix_privilege_tables.1), removed "-n" from install section.
 
1218
 
 
1219
* Wed Jul 09 2003 Lenz Grimmer <lenz@mysql.com>
 
1220
 
 
1221
- removed the GIF Icon (file was not included in the sources anyway)
 
1222
- removed unused variable shared_lib_version
 
1223
- do not run automake before building the standard binary
 
1224
  (should not be necessary)
 
1225
- add server suffix '-standard' to standard binary (to be in line
 
1226
  with the binary tarball distributions)
 
1227
- Use more RPM macros (_exec_prefix, _sbindir, _libdir, _sysconfdir,
 
1228
  _datadir, _includedir) throughout the spec file.
 
1229
- allow overriding CC and CXX (required when building with other compilers)
 
1230
 
 
1231
* Fri May 16 2003 Lenz Grimmer <lenz@mysql.com>
 
1232
 
 
1233
- re-enabled RAID again
 
1234
 
 
1235
* Wed Apr 30 2003 Lenz Grimmer <lenz@mysql.com>
 
1236
 
 
1237
- disabled MyISAM RAID (--with-raid) - it throws an assertion which
 
1238
  needs to be investigated first.
 
1239
 
 
1240
* Mon Mar 10 2003 Lenz Grimmer <lenz@mysql.com>
 
1241
 
 
1242
- added missing file mysql_secure_installation to server subpackage
 
1243
  (BUG 141)
 
1244
 
 
1245
* Tue Feb 11 2003 Lenz Grimmer <lenz@mysql.com>
 
1246
 
 
1247
- re-added missing pre- and post(un)install scripts to server subpackage
 
1248
- added config file /etc/my.cnf to the file list (just for completeness)
 
1249
- make sure to create the datadir with 755 permissions
 
1250
 
 
1251
* Mon Jan 27 2003 Lenz Grimmer <lenz@mysql.com>
 
1252
 
 
1253
- removed unused CC and CXX variables
 
1254
- CFLAGS and CXXFLAGS should honor RPM_OPT_FLAGS
 
1255
 
 
1256
* Fri Jan 24 2003 Lenz Grimmer <lenz@mysql.com>
 
1257
 
 
1258
- renamed package "MySQL" to "MySQL-server"
 
1259
- fixed Copyright tag
 
1260
- added mysql_waitpid to client subpackage (required for mysql-test-run)
 
1261
 
 
1262
* Wed Nov 27 2002 Lenz Grimmer <lenz@mysql.com>
 
1263
 
 
1264
- moved init script from /etc/rc.d/init.d to /etc/init.d (the majority of 
 
1265
  Linux distributions now support this scheme as proposed by the LSB either
 
1266
  directly or via a compatibility symlink)
 
1267
- Use new "restart" init script action instead of starting and stopping
 
1268
  separately
 
1269
- Be more flexible in activating the automatic bootup - use insserv (on
 
1270
  older SuSE versions) or chkconfig (Red Hat, newer SuSE versions and
 
1271
  others) to create the respective symlinks
 
1272
 
 
1273
* Wed Sep 25 2002 Lenz Grimmer <lenz@mysql.com>
 
1274
 
 
1275
- MySQL-Max now requires MySQL >= 4.0 to avoid version mismatches
 
1276
  (mixing 3.23 and 4.0 packages)
 
1277
 
 
1278
* Fri Aug 09 2002 Lenz Grimmer <lenz@mysql.com>
 
1279
 
 
1280
- Turn off OpenSSL in MySQL-Max for now until it works properly again
 
1281
- enable RAID for the Max binary instead
 
1282
- added compatibility link: safe_mysqld -> mysqld_safe to ease the
 
1283
  transition from 3.23
 
1284
 
 
1285
* Thu Jul 18 2002 Lenz Grimmer <lenz@mysql.com>
 
1286
 
 
1287
- Reworked the build steps a little bit: the Max binary is supposed
 
1288
  to include OpenSSL, which cannot be linked statically, thus trying
 
1289
        to statically link against a special glibc is futile anyway
 
1290
- because of this, it is not required to make yet another build run
 
1291
  just to compile the shared libs (saves a lot of time)
 
1292
- updated package description of the Max subpackage
 
1293
- clean up the BuildRoot directory afterwards
 
1294
 
 
1295
* Mon Jul 15 2002 Lenz Grimmer <lenz@mysql.com>
 
1296
 
 
1297
- Updated Packager information
 
1298
- Fixed the build options: the regular package is supposed to
 
1299
  include InnoDB and linked statically, while the Max package
 
1300
        should include BDB and SSL support
 
1301
 
 
1302
* Fri May 03 2002 Lenz Grimmer <lenz@mysql.com>
 
1303
 
 
1304
- Use more RPM macros (e.g. infodir, mandir) to make the spec
 
1305
  file more portable
 
1306
- reorganized the installation of documentation files: let RPM
 
1307
  take care of this
 
1308
- reorganized the file list: actually install man pages along
 
1309
  with the binaries of the respective subpackage
 
1310
- do not include libmysqld.a in the devel subpackage as well, if we
 
1311
  have a special "embedded" subpackage
 
1312
- reworked the package descriptions
 
1313
 
 
1314
* Mon Oct  8 2001 Monty
 
1315
 
 
1316
- Added embedded server as a separate RPM
 
1317
 
 
1318
* Fri Apr 13 2001 Monty
 
1319
 
 
1320
- Added mysqld-max to the distribution
 
1321
 
 
1322
* Tue Jan 2  2001  Monty
 
1323
 
 
1324
- Added mysql-test to the bench package
 
1325
 
 
1326
* Fri Aug 18 2000 Tim Smith <tim@mysql.com>
 
1327
 
 
1328
- Added separate libmysql_r directory; now both a threaded
 
1329
  and non-threaded library is shipped.
 
1330
 
 
1331
* Wed Sep 28 1999 David Axmark <davida@mysql.com>
 
1332
 
 
1333
- Added the support-files/my-example.cnf to the docs directory.
 
1334
 
 
1335
- Removed devel dependency on base since it is about client
 
1336
  development.
 
1337
 
 
1338
* Wed Sep 8 1999 David Axmark <davida@mysql.com>
 
1339
 
 
1340
- Cleaned up some for 3.23.
 
1341
 
 
1342
* Thu Jul 1 1999 David Axmark <davida@mysql.com>
 
1343
 
 
1344
- Added support for shared libraries in a separate sub
 
1345
  package. Original fix by David Fox (dsfox@cogsci.ucsd.edu)
 
1346
 
 
1347
- The --enable-assembler switch is now automatically disables on
 
1348
  platforms there assembler code is unavailable. This should allow
 
1349
  building this RPM on non i386 systems.
 
1350
 
 
1351
* Mon Feb 22 1999 David Axmark <david@detron.se>
 
1352
 
 
1353
- Removed unportable cc switches from the spec file. The defaults can
 
1354
  now be overridden with environment variables. This feature is used
 
1355
  to compile the official RPM with optimal (but compiler version
 
1356
  specific) switches.
 
1357
 
 
1358
- Removed the repetitive description parts for the sub rpms. Maybe add
 
1359
  again if RPM gets a multiline macro capability.
 
1360
 
 
1361
- Added support for a pt_BR translation. Translation contributed by
 
1362
  Jorge Godoy <jorge@bestway.com.br>.
 
1363
 
 
1364
* Wed Nov 4 1998 David Axmark <david@detron.se>
 
1365
 
 
1366
- A lot of changes in all the rpm and install scripts. This may even
 
1367
  be a working RPM :-)
 
1368
 
 
1369
* Sun Aug 16 1998 David Axmark <david@detron.se>
 
1370
 
 
1371
- A developers changelog for MySQL is available in the source RPM. And
 
1372
  there is a history of major user visible changed in the Reference
 
1373
  Manual.  Only RPM specific changes will be documented here.