summaryrefslogtreecommitdiff
path: root/support-files
diff options
context:
space:
mode:
Diffstat (limited to 'support-files')
-rw-r--r--support-files/compiler_warnings.supp5
-rw-r--r--support-files/mysql.server.sh10
-rw-r--r--support-files/mysql.spec.sh186
3 files changed, 79 insertions, 122 deletions
diff --git a/support-files/compiler_warnings.supp b/support-files/compiler_warnings.supp
index a147255f9a4..d6c4bcee52a 100644
--- a/support-files/compiler_warnings.supp
+++ b/support-files/compiler_warnings.supp
@@ -1,3 +1,8 @@
+#
+# This file contains compiler warnings that can
+# be ignored for various reasons.
+#
+
integer.cpp: .*control reaches end of non-void function.*: 1288-1427
DictTabInfo.cpp : .*invalid access to non-static.*
DictTabInfo.cpp : .*macro was used incorrectly.*
diff --git a/support-files/mysql.server.sh b/support-files/mysql.server.sh
index 9258fcf10c2..65b56443eea 100644
--- a/support-files/mysql.server.sh
+++ b/support-files/mysql.server.sh
@@ -46,6 +46,13 @@
basedir=
datadir=
+# Default value, in seconds, afterwhich the script should timeout waiting
+# for server start.
+# Value here is overriden by value in my.cnf.
+# 0 means don't wait at all
+# Negative numbers mean to wait indefinitely
+service_startup_timeout=900
+
# The following variables are only set for letting mysql.server find things.
# Set some defaults
@@ -126,6 +133,7 @@ parse_server_arguments() {
;;
--user=*) user=`echo "$arg" | sed -e 's/^[^=]*=//'` ;;
--pid-file=*) server_pid_file=`echo "$arg" | sed -e 's/^[^=]*=//'` ;;
+ --service-startup-timeout=*) service_startup_timeout=`echo "$arg" | sed -e 's/^[^=]*=//'` ;;
--use-mysqld_safe) use_mysqld_safe=1;;
--use-manager) use_mysqld_safe=0;;
esac
@@ -143,7 +151,7 @@ parse_manager_arguments() {
wait_for_pid () {
i=0
- while test $i -lt 900 ; do
+ while test $i -ne $service_startup_timeout ; do
sleep 1
case "$1" in
'created')
diff --git a/support-files/mysql.spec.sh b/support-files/mysql.spec.sh
index d2ae4a52081..accf0f1d201 100644
--- a/support-files/mysql.spec.sh
+++ b/support-files/mysql.spec.sh
@@ -14,7 +14,7 @@
# Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston
# 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)
# to enable static linking (off by default)
@@ -32,10 +32,10 @@
%define release 0.glibc23
%endif
%define license GPL
-%define mysqld_user mysql
-%define mysqld_group mysql
-%define server_suffix -standard
-%define mysqldatadir /var/lib/mysql
+%define mysqld_user mysql
+%define mysqld_group mysql
+%define server_suffix -community
+%define mysqldatadir /var/lib/mysql
# We don't package all files installed into the build root by intention -
# See BUG#998 for details.
@@ -99,7 +99,7 @@ Summary: MySQL: a very fast and reliable SQL database server
Group: Applications/Databases
Requires: coreutils grep procps /usr/sbin/useradd /usr/sbin/groupadd /sbin/chkconfig
Provides: msqlormysql mysql-server mysql MySQL
-Obsoletes: MySQL mysql mysql-server
+Obsoletes: MySQL mysql mysql-server mysql-Max
%description server
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.
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
Summary: MySQL - Client
@@ -141,8 +141,6 @@ Group: Applications/Databases
This package contains the ndbcluster storage engine.
It is necessary to have this package installed on all
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}
@@ -211,29 +209,6 @@ Obsoletes: mysql-shared
This package contains the shared libraries (*.so*) which certain
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
#Requires: %{name}-devel
#Summary: MySQL - embedded library
@@ -323,9 +298,6 @@ mkdir -p $RBR%{_libdir}/mysql
PATH=${MYSQL_BUILD_PATH:-/bin:/usr/bin}
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
# including exceptions into the code
if [ -z "$CXX" -a -z "$CC" ]
@@ -334,81 +306,44 @@ then
export CXX="gcc"
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
-
-( cd mysql-test
- MTR_BUILD_THREAD=auto
- export MTR_BUILD_THREAD
- perl ./mysql-test-run.pl --force --report-features
- perl ./mysql-test-run.pl --force --ps-protocol
- true )
-
-# 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
# patched static glibc installed) - ia64 and x86_64 run glibc-2.3 (unpatched)
# so don't link statically there
#
-BuildMySQL "--disable-shared \
+for servertype in '--with-debug=full' ' '
+do
+ BuildMySQL "\
%if %{STATIC_BUILD}
+ --disable-shared \
--with-mysqld-ldflags='-all-static' \
--with-client-ldflags='-all-static' \
$USE_OTHER_LIBC_DIR \
%else
+ --enable-shared \
--with-zlib-dir=bundled \
%endif
--with-extra-charsets=complex \
- --with-comment=\"MySQL Community Edition - Standard (GPL)\" \
+ --with-comment=\"MySQL Community Edition (GPL)\" \
--with-server-suffix='%{server_suffix}' \
--with-archive-storage-engine \
--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
@@ -418,12 +353,8 @@ then
cp -fp config.log "$MYSQL_CONFLOG_DEST"
fi
-( cd mysql-test
- MTR_BUILD_THREAD=auto
- export MTR_BUILD_THREAD
- perl ./mysql-test-run.pl --force --report-features
- perl ./mysql-test-run.pl --force --ps-protocol
- true )
+echo "# standard"
+make test-bt
%install
RBR=$RPM_BUILD_ROOT
@@ -438,22 +369,33 @@ install -d $RBR%{_libdir}
install -d $RBR%{_mandir}
install -d $RBR%{_sbindir}
-
# Install all binaries stripped
make install-strip DESTDIR=$RBR benchdir_root=%{_datadir}
-# 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)
+# Install the ndb binaries
+(cd ndb; make install DESTDIR=$RBR)
-# install saved mysqld-max
-install -s -m 755 $MBD/sql/mysqld-max $RBR%{_sbindir}/mysqld-max
+# Install the saved debug server
+install -s -m 755 $MBD/sql/mysqld-debug $RBR%{_sbindir}/mysqld-debug
-# install saved perror binary with NDB support (BUG#13740)
-install -s -m 755 $MBD/extra/perror.ndb $RBR%{_bindir}/perror
+# 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)
+
+# 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
# 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-debug.sym $RBR%{_libdir}/mysql/mysqld-debug.sym
# Install logrotate and autostart
install -m 644 $MBD/support-files/mysql-log-rotate $RBR%{_sysconfdir}/logrotate.d/mysql
@@ -551,12 +493,6 @@ mysql_clusterdir=/var/lib/mysql-cluster
# Create cluster directory if needed
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
if test $1 = 0
then
@@ -626,7 +562,6 @@ fi
%attr(755, root, root) %{_bindir}/myisamlog
%attr(755, root, root) %{_bindir}/myisampack
%attr(755, root, root) %{_bindir}/mysql_convert_table_format
-%attr(755, root, root) %{_bindir}/mysql_create_system_tables
%attr(755, root, root) %{_bindir}/mysql_explain_log
%attr(755, root, root) %{_bindir}/mysql_fix_extensions
%attr(755, root, root) %{_bindir}/mysql_fix_privilege_tables
@@ -649,6 +584,7 @@ fi
%attr(755, root, root) %{_bindir}/safe_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}/rcmysql
%attr(644, root, root) %{_libdir}/mysql/mysqld.sym
@@ -777,11 +713,6 @@ fi
%doc %attr(644, root, man) %{_mandir}/man1/mysql-stress-test.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
#%defattr(-, root, root, 0755)
# %attr(644, root, root) %{_libdir}/mysql/libmysqld.a
@@ -789,7 +720,20 @@ fi
# The spec file changelog only includes changes made to the spec file
# itself - note that they must be ordered by date (important when
# merging BK trees)
-%changelog
+%changelog
+* Sat Apr 07 2007 Kent Boortz <kent@mysql.com>
+
+- Removed man page for "mysql_create_system_tables"
+
+* 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>
- Add several man pages for NDB which are now created.