mirror of
https://github.com/MariaDB/server.git
synced 2025-01-29 18:20:07 +01:00
Merge pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0
into pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0-build
This commit is contained in:
commit
2043bdb6e3
1 changed files with 60 additions and 110 deletions
|
@ -14,7 +14,7 @@
|
||||||
# Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston
|
# Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston
|
||||||
# MA 02110-1301 USA.
|
# MA 02110-1301 USA.
|
||||||
|
|
||||||
%define mysql_version @VERSION@
|
%define mysql_version @VERSION@
|
||||||
|
|
||||||
# use "rpmbuild --with static" or "rpm --define '_with_static 1'" (for RPM 3.x)
|
# use "rpmbuild --with static" or "rpm --define '_with_static 1'" (for RPM 3.x)
|
||||||
# to enable static linking (off by default)
|
# to enable static linking (off by default)
|
||||||
|
@ -32,10 +32,10 @@
|
||||||
%define release 0.glibc23
|
%define release 0.glibc23
|
||||||
%endif
|
%endif
|
||||||
%define license GPL
|
%define license GPL
|
||||||
%define mysqld_user mysql
|
%define mysqld_user mysql
|
||||||
%define mysqld_group mysql
|
%define mysqld_group mysql
|
||||||
%define server_suffix -standard
|
%define server_suffix -community
|
||||||
%define mysqldatadir /var/lib/mysql
|
%define mysqldatadir /var/lib/mysql
|
||||||
|
|
||||||
# We don't package all files installed into the build root by intention -
|
# We don't package all files installed into the build root by intention -
|
||||||
# See BUG#998 for details.
|
# See BUG#998 for details.
|
||||||
|
@ -99,7 +99,7 @@ Summary: MySQL: a very fast and reliable SQL database server
|
||||||
Group: Applications/Databases
|
Group: Applications/Databases
|
||||||
Requires: coreutils grep procps /usr/sbin/useradd /usr/sbin/groupadd /sbin/chkconfig
|
Requires: coreutils grep procps /usr/sbin/useradd /usr/sbin/groupadd /sbin/chkconfig
|
||||||
Provides: msqlormysql mysql-server mysql MySQL
|
Provides: msqlormysql mysql-server mysql MySQL
|
||||||
Obsoletes: MySQL mysql mysql-server
|
Obsoletes: MySQL mysql mysql-server mysql-Max
|
||||||
|
|
||||||
%description server
|
%description server
|
||||||
The MySQL(TM) software delivers a very fast, multi-threaded, multi-user,
|
The MySQL(TM) software delivers a very fast, multi-threaded, multi-user,
|
||||||
|
@ -120,7 +120,7 @@ This package includes the MySQL server binary (incl. InnoDB) as well
|
||||||
as related utilities to run and administrate a MySQL server.
|
as related utilities to run and administrate a MySQL server.
|
||||||
|
|
||||||
If you want to access and work with the database, you have to install
|
If you want to access and work with the database, you have to install
|
||||||
package "MySQL-client" as well!
|
the package "MySQL-client" as well!
|
||||||
|
|
||||||
%package client
|
%package client
|
||||||
Summary: MySQL - Client
|
Summary: MySQL - Client
|
||||||
|
@ -141,8 +141,6 @@ Group: Applications/Databases
|
||||||
This package contains the ndbcluster storage engine.
|
This package contains the ndbcluster storage engine.
|
||||||
It is necessary to have this package installed on all
|
It is necessary to have this package installed on all
|
||||||
computers that should store ndbcluster table data.
|
computers that should store ndbcluster table data.
|
||||||
Note that this storage engine can only be used in conjunction
|
|
||||||
with the MySQL Max server.
|
|
||||||
|
|
||||||
%{see_base}
|
%{see_base}
|
||||||
|
|
||||||
|
@ -211,29 +209,6 @@ Obsoletes: mysql-shared
|
||||||
This package contains the shared libraries (*.so*) which certain
|
This package contains the shared libraries (*.so*) which certain
|
||||||
languages and applications need to dynamically load and use MySQL.
|
languages and applications need to dynamically load and use MySQL.
|
||||||
|
|
||||||
%package Max
|
|
||||||
Summary: MySQL - server with extended functionality
|
|
||||||
Group: Applications/Databases
|
|
||||||
Provides: mysql-Max
|
|
||||||
Obsoletes: mysql-Max
|
|
||||||
Requires: MySQL-server >= @MYSQL_BASE_VERSION@
|
|
||||||
|
|
||||||
%description Max
|
|
||||||
Optional MySQL server binary that supports additional features like:
|
|
||||||
|
|
||||||
- Berkeley DB Storage Engine
|
|
||||||
- Ndbcluster Storage Engine interface
|
|
||||||
- Archive Storage Engine
|
|
||||||
- CSV Storage Engine
|
|
||||||
- Example Storage Engine
|
|
||||||
- Federated Storage Engine
|
|
||||||
- User Defined Functions (UDFs).
|
|
||||||
|
|
||||||
To activate this binary, just install this package in addition to
|
|
||||||
the standard MySQL package.
|
|
||||||
|
|
||||||
Please note that this is a dynamically linked binary!
|
|
||||||
|
|
||||||
#%package embedded
|
#%package embedded
|
||||||
#Requires: %{name}-devel
|
#Requires: %{name}-devel
|
||||||
#Summary: MySQL - embedded library
|
#Summary: MySQL - embedded library
|
||||||
|
@ -323,9 +298,6 @@ mkdir -p $RBR%{_libdir}/mysql
|
||||||
PATH=${MYSQL_BUILD_PATH:-/bin:/usr/bin}
|
PATH=${MYSQL_BUILD_PATH:-/bin:/usr/bin}
|
||||||
export PATH
|
export PATH
|
||||||
|
|
||||||
# Build the Max binary (includes BDB and UDFs and therefore
|
|
||||||
# cannot be linked statically against the patched glibc)
|
|
||||||
|
|
||||||
# Use gcc for C and C++ code (to avoid a dependency on libstdc++ and
|
# Use gcc for C and C++ code (to avoid a dependency on libstdc++ and
|
||||||
# including exceptions into the code
|
# including exceptions into the code
|
||||||
if [ -z "$CXX" -a -z "$CC" ]
|
if [ -z "$CXX" -a -z "$CC" ]
|
||||||
|
@ -334,76 +306,44 @@ then
|
||||||
export CXX="gcc"
|
export CXX="gcc"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
BuildMySQL "--enable-shared \
|
|
||||||
--with-extra-charsets=all \
|
|
||||||
--with-berkeley-db \
|
|
||||||
--with-innodb \
|
|
||||||
--with-ndbcluster \
|
|
||||||
--with-archive-storage-engine \
|
|
||||||
--with-csv-storage-engine \
|
|
||||||
--with-example-storage-engine \
|
|
||||||
--with-blackhole-storage-engine \
|
|
||||||
--with-federated-storage-engine \
|
|
||||||
--with-big-tables \
|
|
||||||
--with-comment=\"MySQL Community Edition - Experimental (GPL)\" \
|
|
||||||
--with-server-suffix='-max'"
|
|
||||||
|
|
||||||
# We might want to save the config log file
|
|
||||||
if test -n "$MYSQL_MAXCONFLOG_DEST"
|
|
||||||
then
|
|
||||||
cp -fp config.log "$MYSQL_MAXCONFLOG_DEST"
|
|
||||||
fi
|
|
||||||
|
|
||||||
make test-bt
|
|
||||||
|
|
||||||
# Save mysqld-max
|
|
||||||
./libtool --mode=execute cp sql/mysqld sql/mysqld-max
|
|
||||||
./libtool --mode=execute nm --numeric-sort sql/mysqld-max > sql/mysqld-max.sym
|
|
||||||
|
|
||||||
# Save the perror binary so it supports the NDB error codes (BUG#13740)
|
|
||||||
./libtool --mode=execute cp extra/perror extra/perror.ndb
|
|
||||||
|
|
||||||
# Install the ndb binaries
|
|
||||||
(cd ndb; make install DESTDIR=$RBR)
|
|
||||||
|
|
||||||
# Include libgcc.a in the devel subpackage (BUG 4921)
|
|
||||||
if expr "$CC" : ".*gcc.*" > /dev/null ;
|
|
||||||
then
|
|
||||||
libgcc=`$CC $CFLAGS --print-libgcc-file`
|
|
||||||
if [ -f $libgcc ]
|
|
||||||
then
|
|
||||||
%define have_libgcc 1
|
|
||||||
install -m 644 $libgcc $RBR%{_libdir}/mysql/libmygcc.a
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Save libraries
|
|
||||||
(cd libmysql/.libs; tar cf $RBR/shared-libs.tar *.so*)
|
|
||||||
(cd libmysql_r/.libs; tar rf $RBR/shared-libs.tar *.so*)
|
|
||||||
(cd ndb/src/.libs; tar rf $RBR/shared-libs.tar *.so*)
|
|
||||||
|
|
||||||
# Now clean up
|
|
||||||
make clean
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Only link statically on our i386 build host (which has a specially
|
# Only link statically on our i386 build host (which has a specially
|
||||||
# patched static glibc installed) - ia64 and x86_64 run glibc-2.3 (unpatched)
|
# patched static glibc installed) - ia64 and x86_64 run glibc-2.3 (unpatched)
|
||||||
# so don't link statically there
|
# so don't link statically there
|
||||||
#
|
#
|
||||||
BuildMySQL "--disable-shared \
|
for servertype in '--with-debug=full' ' '
|
||||||
|
do
|
||||||
|
BuildMySQL "\
|
||||||
%if %{STATIC_BUILD}
|
%if %{STATIC_BUILD}
|
||||||
|
--disable-shared \
|
||||||
--with-mysqld-ldflags='-all-static' \
|
--with-mysqld-ldflags='-all-static' \
|
||||||
--with-client-ldflags='-all-static' \
|
--with-client-ldflags='-all-static' \
|
||||||
$USE_OTHER_LIBC_DIR \
|
$USE_OTHER_LIBC_DIR \
|
||||||
%else
|
%else
|
||||||
|
--enable-shared \
|
||||||
--with-zlib-dir=bundled \
|
--with-zlib-dir=bundled \
|
||||||
%endif
|
%endif
|
||||||
--with-extra-charsets=complex \
|
--with-extra-charsets=complex \
|
||||||
--with-comment=\"MySQL Community Edition - Standard (GPL)\" \
|
--with-comment=\"MySQL Community Edition (GPL)\" \
|
||||||
--with-server-suffix='%{server_suffix}' \
|
--with-server-suffix='%{server_suffix}' \
|
||||||
--with-archive-storage-engine \
|
--with-archive-storage-engine \
|
||||||
--with-innodb \
|
--with-innodb \
|
||||||
--with-big-tables"
|
--with-ndbcluster \
|
||||||
|
--with-csv-storage-engine \
|
||||||
|
--with-example-storage-engine \
|
||||||
|
--with-blackhole-storage-engine \
|
||||||
|
--with-federated-storage-engine \
|
||||||
|
--with-big-tables $servertype"
|
||||||
|
if test "$servertype" != ' '
|
||||||
|
then
|
||||||
|
# if this is not the regular build, we save the server binary
|
||||||
|
./libtool --mode=execute cp sql/mysqld sql/mysqld-debug
|
||||||
|
./libtool --mode=execute nm --numeric-sort sql/mysqld-debug > sql/mysqld-debug.sym
|
||||||
|
echo "# debug"
|
||||||
|
make test-bt
|
||||||
|
make clean
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
./libtool --mode=execute nm --numeric-sort sql/mysqld > sql/mysqld.sym
|
./libtool --mode=execute nm --numeric-sort sql/mysqld > sql/mysqld.sym
|
||||||
|
|
||||||
|
@ -413,6 +353,7 @@ then
|
||||||
cp -fp config.log "$MYSQL_CONFLOG_DEST"
|
cp -fp config.log "$MYSQL_CONFLOG_DEST"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
echo "# standard"
|
||||||
make test-bt
|
make test-bt
|
||||||
|
|
||||||
%install
|
%install
|
||||||
|
@ -428,22 +369,33 @@ install -d $RBR%{_libdir}
|
||||||
install -d $RBR%{_mandir}
|
install -d $RBR%{_mandir}
|
||||||
install -d $RBR%{_sbindir}
|
install -d $RBR%{_sbindir}
|
||||||
|
|
||||||
|
|
||||||
# Install all binaries stripped
|
# Install all binaries stripped
|
||||||
make install-strip DESTDIR=$RBR benchdir_root=%{_datadir}
|
make install-strip DESTDIR=$RBR benchdir_root=%{_datadir}
|
||||||
|
|
||||||
|
# Install the ndb binaries
|
||||||
|
(cd ndb; make install DESTDIR=$RBR)
|
||||||
|
|
||||||
|
# Install the saved debug server
|
||||||
|
install -s -m 755 $MBD/sql/mysqld-debug $RBR%{_sbindir}/mysqld-debug
|
||||||
|
|
||||||
# Install shared libraries (Disable for architectures that don't support it)
|
# Install shared libraries (Disable for architectures that don't support it)
|
||||||
(cd $RBR%{_libdir}; tar xf $RBR/shared-libs.tar; rm -f $RBR/shared-libs.tar)
|
# (cd $RBR%{_libdir}; tar xf $RBR/shared-libs.tar; rm -f $RBR/shared-libs.tar)
|
||||||
|
|
||||||
# install saved mysqld-max
|
# Include libgcc.a in the devel subpackage (BUG 4921)
|
||||||
install -s -m 755 $MBD/sql/mysqld-max $RBR%{_sbindir}/mysqld-max
|
if expr "$CC" : ".*gcc.*" > /dev/null ;
|
||||||
|
then
|
||||||
# install saved perror binary with NDB support (BUG#13740)
|
libgcc=`$CC $CFLAGS --print-libgcc-file`
|
||||||
install -s -m 755 $MBD/extra/perror.ndb $RBR%{_bindir}/perror
|
if [ -f $libgcc ]
|
||||||
|
then
|
||||||
|
%define have_libgcc 1
|
||||||
|
install -m 644 $libgcc $RBR%{_libdir}/mysql/libmygcc.a
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
# install symbol files ( for stack trace resolution)
|
# install symbol files ( for stack trace resolution)
|
||||||
install -m 644 $MBD/sql/mysqld-max.sym $RBR%{_libdir}/mysql/mysqld-max.sym
|
# install -m 644 $MBD/sql/mysqld-max.sym $RBR%{_libdir}/mysql/mysqld-max.sym
|
||||||
install -m 644 $MBD/sql/mysqld.sym $RBR%{_libdir}/mysql/mysqld.sym
|
install -m 644 $MBD/sql/mysqld.sym $RBR%{_libdir}/mysql/mysqld.sym
|
||||||
|
install -m 644 $MBD/sql/mysqld-debug.sym $RBR%{_libdir}/mysql/mysqld-debug.sym
|
||||||
|
|
||||||
# Install logrotate and autostart
|
# Install logrotate and autostart
|
||||||
install -m 644 $MBD/support-files/mysql-log-rotate $RBR%{_sysconfdir}/logrotate.d/mysql
|
install -m 644 $MBD/support-files/mysql-log-rotate $RBR%{_sysconfdir}/logrotate.d/mysql
|
||||||
|
@ -529,19 +481,12 @@ chmod -R og-rw $mysql_datadir/mysql
|
||||||
# Allow safe_mysqld to start mysqld and print a message before we exit
|
# Allow safe_mysqld to start mysqld and print a message before we exit
|
||||||
sleep 2
|
sleep 2
|
||||||
|
|
||||||
|
|
||||||
%post ndb-storage
|
%post ndb-storage
|
||||||
mysql_clusterdir=/var/lib/mysql-cluster
|
mysql_clusterdir=/var/lib/mysql-cluster
|
||||||
|
|
||||||
# Create cluster directory if needed
|
# Create cluster directory if needed
|
||||||
if test ! -d $mysql_clusterdir; then mkdir -m 755 $mysql_clusterdir; fi
|
if test ! -d $mysql_clusterdir; then mkdir -m 755 $mysql_clusterdir; fi
|
||||||
|
|
||||||
|
|
||||||
%post Max
|
|
||||||
# Restart mysqld, to use the new binary.
|
|
||||||
echo "Restarting mysqld."
|
|
||||||
%{_sysconfdir}/init.d/mysql restart > /dev/null 2>&1
|
|
||||||
|
|
||||||
%preun server
|
%preun server
|
||||||
if test $1 = 0
|
if test $1 = 0
|
||||||
then
|
then
|
||||||
|
@ -634,6 +579,7 @@ fi
|
||||||
%attr(755, root, root) %{_bindir}/safe_mysqld
|
%attr(755, root, root) %{_bindir}/safe_mysqld
|
||||||
|
|
||||||
%attr(755, root, root) %{_sbindir}/mysqld
|
%attr(755, root, root) %{_sbindir}/mysqld
|
||||||
|
%attr(755, root, root) %{_sbindir}/mysqld-debug
|
||||||
%attr(755, root, root) %{_sbindir}/mysqlmanager
|
%attr(755, root, root) %{_sbindir}/mysqlmanager
|
||||||
%attr(755, root, root) %{_sbindir}/rcmysql
|
%attr(755, root, root) %{_sbindir}/rcmysql
|
||||||
%attr(644, root, root) %{_libdir}/mysql/mysqld.sym
|
%attr(644, root, root) %{_libdir}/mysql/mysqld.sym
|
||||||
|
@ -762,11 +708,6 @@ fi
|
||||||
%doc %attr(644, root, man) %{_mandir}/man1/mysql-stress-test.pl.1*
|
%doc %attr(644, root, man) %{_mandir}/man1/mysql-stress-test.pl.1*
|
||||||
%doc %attr(644, root, man) %{_mandir}/man1/mysql-test-run.pl.1*
|
%doc %attr(644, root, man) %{_mandir}/man1/mysql-test-run.pl.1*
|
||||||
|
|
||||||
%files Max
|
|
||||||
%defattr(-, root, root, 0755)
|
|
||||||
%attr(755, root, root) %{_sbindir}/mysqld-max
|
|
||||||
%attr(644, root, root) %{_libdir}/mysql/mysqld-max.sym
|
|
||||||
|
|
||||||
#%files embedded
|
#%files embedded
|
||||||
#%defattr(-, root, root, 0755)
|
#%defattr(-, root, root, 0755)
|
||||||
# %attr(644, root, root) %{_libdir}/mysql/libmysqld.a
|
# %attr(644, root, root) %{_libdir}/mysql/libmysqld.a
|
||||||
|
@ -774,7 +715,16 @@ fi
|
||||||
# The spec file changelog only includes changes made to the spec file
|
# The spec file changelog only includes changes made to the spec file
|
||||||
# itself - note that they must be ordered by date (important when
|
# itself - note that they must be ordered by date (important when
|
||||||
# merging BK trees)
|
# merging BK trees)
|
||||||
%changelog
|
%changelog
|
||||||
|
* Wed Mar 21 2007 Daniel Fischer <df@mysql.com>
|
||||||
|
|
||||||
|
- Add debug server.
|
||||||
|
|
||||||
|
* Mon Mar 19 2007 Daniel Fischer <df@mysql.com>
|
||||||
|
|
||||||
|
- Remove Max RPMs; the server RPMs contain a mysqld compiled with all
|
||||||
|
features that previously only were built into Max.
|
||||||
|
|
||||||
* Fri Mar 02 2007 Joerg Bruehe <joerg@mysql.com>
|
* Fri Mar 02 2007 Joerg Bruehe <joerg@mysql.com>
|
||||||
|
|
||||||
- Add several man pages for NDB which are now created.
|
- Add several man pages for NDB which are now created.
|
||||||
|
|
Loading…
Add table
Reference in a new issue