Fix multilib problems, also minor bugs 128852, 129409.

This commit is contained in:
Tom Lane 2004-10-06 18:05:45 +00:00 committed by Michal Schorm
parent 2713f0a32c
commit 516ba6c198
3 changed files with 53 additions and 2 deletions

View File

@ -3,7 +3,7 @@
# mysqld This shell script takes care of starting and stopping
# the MySQL subsystem (mysqld).
#
# chkconfig: - 78 12
# chkconfig: - 64 36
# description: MySQL database server.
# processname: mysqld
# config: /etc/my.cnf
@ -76,6 +76,7 @@ stop(){
restart(){
stop
sleep 2
start
}

View File

@ -1,10 +1,11 @@
Name: mysql
Version: 3.23.58
Release: 11
Release: 12
Source0: http://www.mysql.com/Downloads/MySQL-3.23/mysql-%{version}.tar.gz
Source1: mysql.init
Source2: mysql.logrotate
Source3: my.cnf
Source4: scriptstub.c
# Working around perl dependency checking bug in rpm FTTB. Remove later.
Source999: filter-requires-mysql.sh
Patch0: mysql-3.23.51-manfixes.patch
@ -15,6 +16,7 @@ Patch4: mysql-3.23.58-setpermission.patch
Patch5: mysql-3.23.58-typo.patch
Patch6: mysql-3.23.58-symlink.patch
Patch7: mysql-3.23.58-dropdb.patch
Patch8: mysql-3.23.58-config.patch
URL: http://www.mysql.com
BuildRoot: %{_tmppath}/%{name}-%{version}-root
Summary: MySQL client programs and shared libraries.
@ -94,6 +96,7 @@ MySQL.
%patch5 -p1
%patch6 -p1
%patch7 -p1
%patch8 -p1
libtoolize --force
aclocal
@ -127,6 +130,8 @@ export CFLAGS CXXFLAGS
--with-berkeley-db \
--enable-thread-safe-client
gcc $CFLAGS $LDFLAGS -o scriptstub "-DLIBDIR=\"%{_libdir}/mysql\"" %{SOURCE4}
# Not enabling assembler
make %{?_smp_mflags}
@ -158,6 +163,11 @@ install -m 0644 %{SOURCE3} $RPM_BUILD_ROOT/etc/my.cnf
rm -f $RPM_BUILD_ROOT/%{_infodir}/dir*
mv $RPM_BUILD_ROOT/usr/sql-bench $RPM_BUILD_ROOT%{_datadir}/sql-bench
mv ${RPM_BUILD_ROOT}%{_bindir}/mysqlbug ${RPM_BUILD_ROOT}%{_libdir}/mysql/mysqlbug
install -m 0755 scriptstub ${RPM_BUILD_ROOT}%{_bindir}/mysqlbug
mv ${RPM_BUILD_ROOT}%{_bindir}/mysql_config ${RPM_BUILD_ROOT}%{_libdir}/mysql/mysql_config
install -m 0755 scriptstub ${RPM_BUILD_ROOT}%{_bindir}/mysql_config
# Doesn't contain anything
rm -f Docs/manual.ps
rm -fr $RPM_BUILD_ROOT/usr/mysql-test
@ -243,6 +253,8 @@ fi
%{_mandir}/man1/*
%dir %{_libdir}/mysql
%{_libdir}/mysql/libmysqlclient*.so.*
%{_libdir}/mysql/mysqlbug
%{_libdir}/mysql/mysql_config
%dir %{_datadir}/mysql
%{_datadir}/mysql/english
@ -295,6 +307,12 @@ fi
%{_datadir}/sql-bench
%changelog
* Wed Oct 06 2004 Tom Lane <tgl@redhat.com> 3.23.58-12
- fix multilib problem with mysqlbug and mysql_config
- adjust chkconfig priority per bug #128852
- remove bogus quoting per bug #129409 (MySQL 4.0 has done likewise)
- add sleep to mysql.init restart(); may or may not fix bug #133993
* Tue Oct 05 2004 Tom Lane <tgl@redhat.com> 3.23.58-11
- fix low-priority security issues CAN-2004-0388, CAN-2004-0381, CAN-2004-0457
(bugs #119442, 125991, 130347, 130348)

32
scriptstub.c Normal file
View File

@ -0,0 +1,32 @@
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
/* Translate call of myself into call of same-named script in LIBDIR */
/* The macro LIBDIR must be defined as a double-quoted string */
int main (int argc, char **argv)
{
char *basename;
char *fullname;
char **newargs;
int i;
basename = strrchr(argv[0], '/');
if (basename)
basename++;
else
basename = argv[0];
fullname = malloc(strlen(LIBDIR) + strlen(basename) + 2);
sprintf(fullname, "%s/%s", LIBDIR, basename);
newargs = malloc((argc+1) * sizeof(char *));
newargs[0] = fullname;
for (i = 1; i < argc; i++)
newargs[i] = argv[i];
newargs[argc] = NULL;
execvp(fullname, newargs);
return 1;
}