diff --git a/.cvsignore b/.cvsignore index 822df92..94ef3b2 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -mysql-5.0.15.tar.gz +mysql-5.0.16.tar.gz diff --git a/my_config.h b/my_config.h new file mode 100644 index 0000000..6dd04f9 --- /dev/null +++ b/my_config.h @@ -0,0 +1,30 @@ +/* + * Kluge to support multilib installation of both 32- and 64-bit RPMS: + * we need to arrange that header files that appear in both RPMs are + * identical. Hence, this file is architecture-independent and calls + * in an arch-dependent file that will appear in just one RPM. + * + * Note: this may well fail if user tries to use gcc's -I- option. + * But that option is deprecated anyway. + */ +#ifdef __i386__ +#include "my_config_i386.h" +#endif +#ifdef __x86_64__ +#include "my_config_x86_64.h" +#endif +#ifdef __ia64__ +#include "my_config_ia64.h" +#endif +#ifdef __ppc__ +#include "my_config_ppc.h" +#endif +#ifdef __ppc64__ +#include "my_config_ppc64.h" +#endif +#ifdef __s390__ +#include "my_config_s390.h" +#endif +#ifdef __s390x__ +#include "my_config_s390x.h" +#endif diff --git a/mysql-testing.patch b/mysql-testing.patch index d32d363..5453b64 100644 --- a/mysql-testing.patch +++ b/mysql-testing.patch @@ -14,57 +14,37 @@ with a C-code version. Besides this patch, mysql-libtool.patch would need to be changed to use either one. -diff -Naur mysql-5.0.15.orig/Makefile.am mysql-5.0.15/Makefile.am ---- mysql-5.0.15.orig/Makefile.am 2005-10-16 21:27:31.000000000 -0400 -+++ mysql-5.0.15/Makefile.am 2005-11-02 22:56:50.000000000 -0500 -@@ -97,16 +97,9 @@ - support-files/build-tags - .PHONY: init-db bin-dist - --# Test installation. Ports are configurable from the environment. -+# Test installation. Ports are determined by code in mysql-test-run.sh - --MYSQL_TEST_MANAGER_PORT = 9305 --MYSQL_TEST_MASTER_PORT = 9306 --MYSQL_TEST_SLAVE_PORT = 9308 --MYSQL_TEST_NDB_PORT = 9350 --MYSQL_TEST_RUN_ARGS = --manager-port=$(MYSQL_TEST_MANAGER_PORT) \ -- --master_port=$(MYSQL_TEST_MASTER_PORT) \ -- --slave_port=$(MYSQL_TEST_SLAVE_PORT) \ -- --ndbcluster_port=$(MYSQL_TEST_NDB_PORT) -+MYSQL_TEST_RUN_ARGS = --with-openssl +diff -Naur mysql-5.0.16.orig/Makefile.am mysql-5.0.16/Makefile.am +--- mysql-5.0.16.orig/Makefile.am 2005-11-14 19:12:31.000000000 -0500 ++++ mysql-5.0.16/Makefile.am 2005-12-09 18:29:31.000000000 -0500 +@@ -107,8 +107,8 @@ test: cd mysql-test ; \ -diff -Naur mysql-5.0.15.orig/mysql-test/mysql-test-run.sh mysql-5.0.15/mysql-test/mysql-test-run.sh ---- mysql-5.0.15.orig/mysql-test/mysql-test-run.sh 2005-10-16 21:27:55.000000000 -0400 -+++ mysql-5.0.15/mysql-test/mysql-test-run.sh 2005-11-02 22:55:14.000000000 -0500 -@@ -208,11 +208,24 @@ +- ./mysql-test-run && \ +- ./mysql-test-run --ps-protocol ++ ./mysql-test-run --with-openssl && \ ++ ./mysql-test-run --ps-protocol --with-openssl - MASTER_RUNNING=0 - MASTER1_RUNNING=0 --MASTER_MYPORT=9306 - SLAVE_RUNNING=0 --SLAVE_MYPORT=9308 # leave room for 2 masters for cluster tests --MYSQL_MANAGER_PORT=9305 # needs to be out of the way of slaves --NDBCLUSTER_PORT=9350 + test-force: + cd mysql-test; \ +diff -Naur mysql-5.0.16.orig/mysql-test/mysql-test-run.sh mysql-5.0.16/mysql-test/mysql-test-run.sh +--- mysql-5.0.16.orig/mysql-test/mysql-test-run.sh 2005-11-14 19:12:46.000000000 -0500 ++++ mysql-5.0.16/mysql-test/mysql-test-run.sh 2005-12-09 18:34:09.000000000 -0500 +@@ -222,6 +222,16 @@ + # an environment variable can be used to control all ports. A small + # number is to be used, 0 - 16 or similar. + # +# hack to allow 32- and 64-bit tests to run concurrently on same build machine +case `uname -m` in + ppc64 | s390x | x86_64) -+ MASTER_MYPORT=9406 -+ MASTER_MYPORT1=9407 -+ SLAVE_MYPORT=9408 # leave room for 2 masters for cluster tests -+ MYSQL_MANAGER_PORT=9405 # needs to be out of the way of slaves -+ NDBCLUSTER_PORT=9450 ++ MTR_BUILD_THREAD=7 + ;; + *) -+ MASTER_MYPORT=9306 -+ MASTER_MYPORT1=9307 -+ SLAVE_MYPORT=9308 # leave room for 2 masters for cluster tests -+ MYSQL_MANAGER_PORT=9305 # needs to be out of the way of slaves -+ NDBCLUSTER_PORT=9350 ++ MTR_BUILD_THREAD=11 + ;; +esac - MYSQL_MANAGER_PW_FILE=$MYSQL_TEST_DIR/var/tmp/manager.pwd - MYSQL_MANAGER_LOG=$MYSQL_TEST_DIR/var/log/manager.log - MYSQL_MANAGER_USER=root ++ + if [ -n "$MTR_BUILD_THREAD" ] ; then + MASTER_MYPORT=`expr $MTR_BUILD_THREAD '*' 5 + 10000` + MYSQL_MANAGER_PORT=`expr $MASTER_MYPORT + 2` diff --git a/mysql.spec b/mysql.spec index 326c087..144e9a3 100644 --- a/mysql.spec +++ b/mysql.spec @@ -1,11 +1,20 @@ Name: mysql -Version: 5.0.15 -Release: 3.1 +Version: 5.0.16 +Release: 1 +Summary: MySQL client programs and shared libraries. +License: GPL +Group: Applications/Databases +URL: http://www.mysql.com + +# Regression tests take a long time, you can skip 'em with this +%{!?runselftest:%define runselftest 1} + Source0: http://dev.mysql.com/get/Downloads/MySQL-5.0/mysql-%{version}.tar.gz Source1: mysql.init Source2: mysql.logrotate Source3: my.cnf Source4: scriptstub.c +Source5: my_config.h # Working around perl dependency checking bug in rpm FTTB. Remove later. Source999: filter-requires-mysql.sh Patch1: mysql-libdir.patch @@ -14,11 +23,8 @@ Patch3: mysql-libtool.patch Patch4: mysql-testing.patch Patch5: mysql-no-atomic.patch Patch6: mysql-rpl_ddl.patch -URL: http://www.mysql.com + BuildRoot: %{_tmppath}/%{name}-%{version}-root -Summary: MySQL client programs and shared libraries. -License: GPL -Group: Applications/Databases Prereq: /sbin/ldconfig, /sbin/install-info, grep, fileutils, chkconfig BuildRequires: gperf, perl, readline-devel, openssl-devel BuildRequires: gcc-c++, ncurses-devel, zlib-devel @@ -35,7 +41,7 @@ BuildRequires: time %description MySQL is a multi-user, multi-threaded SQL database server. MySQL is a client/server implementation consisting of a server daemon (mysqld) -and many different client programs and libraries. This package +and many different client programs and libraries. The base package contains the MySQL client programs, the client shared libraries, and generic MySQL files. @@ -51,11 +57,10 @@ Requires: perl-DBI, perl-DBD-MySQL Conflicts: MySQL-server %description server -MySQL is a true multi-user, multi-threaded SQL database server. MySQL -is a client/server implementation that consists of a server daemon -(mysqld) and many different client programs and libraries. This -package contains the MySQL server and some accompanying files and -directories. +MySQL is a multi-user, multi-threaded SQL database server. MySQL is a +client/server implementation consisting of a server daemon (mysqld) +and many different client programs and libraries. This package contains +the MySQL server and some accompanying files and directories. %package devel @@ -67,9 +72,9 @@ Requires: openssl-devel Conflicts: MySQL-devel %description devel -MySQL is a true multi-user, multi-threaded SQL database server. This +MySQL is a multi-user, multi-threaded SQL database server. This package contains the libraries and header files that are needed for -developing MySQL applications. +developing MySQL client applications. %package bench @@ -80,7 +85,7 @@ Requires: %{name} = %{version}-%{release} Conflicts: MySQL-bench %description bench -MySQL is a true multi-user, multi-threaded SQL database server. This +MySQL is a multi-user, multi-threaded SQL database server. This package contains benchmark scripts and data for use when benchmarking MySQL. @@ -136,13 +141,17 @@ gcc $CFLAGS $LDFLAGS -o scriptstub "-DLIBDIR=\"%{_libdir}/mysql\"" %{SOURCE4} make %{?_smp_mflags} make check -make test + +%if %runselftest + make test +%endif %install rm -rf $RPM_BUILD_ROOT %makeinstall -install -m 644 include/my_config.h $RPM_BUILD_ROOT/usr/include/mysql/ +install -m 644 include/my_config.h $RPM_BUILD_ROOT/usr/include/mysql/my_config_`uname -m`.h +install -m 644 %{SOURCE5} $RPM_BUILD_ROOT/usr/include/mysql/ mkdir -p $RPM_BUILD_ROOT/var/log touch $RPM_BUILD_ROOT/var/log/mysqld.log @@ -232,7 +241,7 @@ fi %files %defattr(-,root,root) -%doc README COPYING +%doc README COPYING EXCEPTIONS-CLIENT %{_bindir}/msql2mysql %{_bindir}/mysql @@ -325,13 +334,26 @@ fi /usr/libexec/* -%{_mandir}/man1/mysql_zap.1* -%{_mandir}/man1/mysqld.1* +%{_mandir}/man1/msql2mysql.1.gz +%{_mandir}/man1/myisamchk.1.gz +%{_mandir}/man1/myisamlog.1.gz +%{_mandir}/man1/myisampack.1.gz +%{_mandir}/man1/mysql.server.1.gz +%{_mandir}/man1/mysql_config.1.gz %{_mandir}/man1/mysql_fix_privilege_tables.1* +%{_mandir}/man1/mysql_zap.1* +%{_mandir}/man1/mysqlbinlog.1.gz +%{_mandir}/man1/mysqlcheck.1.gz +%{_mandir}/man1/mysqld.1* %{_mandir}/man1/mysqld_multi.1* %{_mandir}/man1/mysqld_safe.1* +%{_mandir}/man1/mysqlhotcopy.1.gz +%{_mandir}/man1/mysqlimport.1.gz +%{_mandir}/man1/mysqlman.1.gz +%{_mandir}/man1/mysqlmanager.1.gz %{_mandir}/man1/perror.1* %{_mandir}/man1/replace.1* +%{_mandir}/man1/safe_mysqld.1* %dir %{_datadir}/mysql %{_datadir}/mysql/errmsg.txt @@ -355,6 +377,12 @@ fi %{_datadir}/sql-bench %changelog +* Fri Dec 9 2005 Tom Lane 5.0.16-1 +- Update to MySQL 5.0.16 +- Add EXCEPTIONS-CLIENT license info to the shipped documentation +- Make my_config.h architecture-independent for multilib installs; + put the original my_config.h into my_config_$ARCH.h + * Fri Dec 09 2005 Jesse Keating - rebuilt diff --git a/sources b/sources index 5a979c7..b2c1de1 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -b19e03de0ec348552b4bfac2e215f335 mysql-5.0.15.tar.gz +ecf2ae1d782a8d129af940c15a44f477 mysql-5.0.16.tar.gz