#
# Conditional build:
-# _without_bdb - without Berkeley DB support
+%bcond_with bdb # Berkeley DB backend
#
%include /usr/lib/rpm/macros.perl
Summary: MySQL: a very fast and reliable SQL database engine
Summary(zh_CN): MySQLÊý¾Ý¿â·þÎñÆ÷
Name: mysql
Group: Applications/Databases
-Version: 4.0.14
-Release: 6
-License: GPL/LGPL
-Source0: http://sunsite.icm.edu.pl/mysql/Downloads/MySQL-4.0/mysql-%{version}.tar.gz
-# Source0-md5: 9764f09c89692345d3b7800ab014f822
+Version: 4.0.21
+Release: 1.1
+License: GPL + MySQL FLOSS Exception
+Source0: http://mysql.linux.cz/Downloads/MySQL-4.0/mysql-%{version}.tar.gz
+# Source0-md5: 0a3dae16519afa5e59d8b9e252181243
Source1: %{name}.init
Source2: %{name}.sysconfig
Source3: %{name}.logrotate
Patch3: %{name}-_r-link.patch
Patch4: %{name}-info.patch
Patch5: %{name}-dump_quote_db_names.patch
-Patch6: %{name}-manfixes.patch
-Patch7: %{name}-sql-cxx-pic.patch
-Patch8: %{name}-buffer.patch
-Patch9: %{name}-fix_privilege_tables.patch
+Patch6: %{name}-sql-cxx-pic.patch
+Patch7: %{name}-fix_privilege_tables.patch
Icon: mysql.gif
URL: http://www.mysql.com/
BuildRequires: /bin/ps
BuildRequires: autoconf
BuildRequires: automake
-%{!?_without_bdb:BuildRequires: db3-devel}
+%{?with_bdb:BuildRequires: db3-devel}
BuildRequires: libstdc++-devel
BuildRequires: libtool
BuildRequires: libwrap-devel
BuildRequires: ncurses-devel >= 4.2
-BuildRequires: openssl-devel
+BuildRequires: openssl-devel >= 0.9.6m
BuildRequires: perl-DBI
-BuildRequires: perl-devel >= 5.6.1
+BuildRequires: perl-devel >= 1:5.6.1
BuildRequires: readline-devel >= 4.2
BuildRequires: rpm-perlprov
BuildRequires: texinfo
Requires(postun): /usr/sbin/groupdel
Requires(post,preun): /sbin/chkconfig
Requires: %{name}-libs = %{version}
+Requires: /usr/bin/setsid
Provides: MySQL-server
Provides: msqlormysql
-BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
Obsoletes: MySQL
Obsoletes: mysql-server
+BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%define _libexecdir %{_sbindir}
%define _localstatedir /var/lib/mysql
%define _noautoreqdep 'perl(DBD::mysql)'
# workaround for buggy gcc 3.3.1
-%define specflags_alpha "-mno-explicit-relocs"
+%define specflags_alpha -mno-explicit-relocs
%description
MySQL is a true multi-user, multi-threaded SQL (Structured Query
Group: Development/Libraries
Requires: %{name}-libs = %{version}
Requires: openssl-devel
+Requires: zlib-devel
Obsoletes: MySQL-devel
Obsoletes: libmysql10-devel
ÒÏÚÒÏÂËÉ ÐÒÏÇÒÁÍ-Ë̦¤ÎÔ¦×.
%package static
-Summary: MySQL staic libraris
+Summary: MySQL static libraries
Summary(pl): Biblioteki statyczne MySQL
Summary(ru): MySQL - ÓÔÁÔÉÞÅÓËÉÅ ÂÉÂÌÉÏÔÅËÉ
Summary(uk): MySQL - ÓÔÁÔÉÞΦ ¦Â̦ÏÔÅËÉ
%description bench -l uk
ãÅÊ ÐÁËÅÔ Í¦ÓÔÉÔØ ÓËÒÉÐÔÉ ÔÁ ÄÁΦ ÄÌÑ ÏæÎËÉ ÐÒÏÄÕËÔÉ×ÎÏÓÔ¦ MySQL.
+%package doc
+Summary: MySQL manual
+Summary(pl): Podrêcznik u¿ytkownika MySQL
+Group: Applications/Databases
+
+%description doc
+This package contains manual in HTML format.
+
+%description doc -l pl
+Podrêcznik MySQL-a w formacie HTML.
+
%prep
%setup -q
%patch0 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
-%patch6 -p1
%ifarch alpha
# this is strange: mysqld functions for UDF modules are not explicitly defined,
# so -rdynamic is used; in such case gcc3+ld on alpha doesn't like C++ vtables
# in objects compiled without -fPIC
-%patch7 -p1
+%patch6 -p1
%endif
-%patch8 -p1
-%patch9 -p1
+%patch7 -p1
%build
-rm -f missing
%{__libtoolize}
%{__aclocal}
%{__automake}
KILL='/bin/kill' \
CHECK_PID='/bin/kill -0 $$PID' \
-C \
- --with-pthread \
- --with-raid \
- --with-unix-socket-path=/var/lib/mysql/mysql.sock \
- --with-mysqld-user=mysql \
- --with-libwrap \
+ --enable-assembler \
+ --enable-shared \
+ --enable-static \
+ --enable-thread-safe-client \
+ %{?with_bdb:--with-berkeley-db} \
+ --with-comment="PLD Linux Distribution MySQL RPM" \
--with%{!?debug:out}-debug \
- %{!?_without_bdb:--with-berkeley-db} \
--with-embedded-server \
- --with-vio \
- --with-openssl \
--with-extra-charsets=all \
- --enable-shared \
- --enable-static \
+ --with-libwrap \
+ --with-low-memory \
+ --with-mysqld-user=mysql \
--with-named-curses-libs="-lncurses" \
- --enable-assembler \
+ --with-openssl \
+ --with-pthread \
+ --with-raid \
+ --with-unix-socket-path=/var/lib/mysql/mysql.sock \
+ --with-vio \
--without-readline \
- --without-docs \
- --with-low-memory \
- --with-comment="PLD Linux Distribution MySQL RPM" \
- --enable-thread-safe-client
+ --without-docs
# --with-mysqlfs
echo -e "all:\ninstall:\nclean:\nlink_sources:\n" > libmysqld/examples/Makefile
$RPM_BUILD_ROOT/var/{log/{archiv,}/mysql,lib/mysql/{db,innodb/{data,log}}} \
$RPM_BUILD_ROOT{%{_infodir},%{_mysqlhome}}
-%if %{?_without_bdb:0}%{!?_without_bdb:1}
+%if %{with bdb}
install -d $RPM_BUILD_ROOT/var/lib/mysql/bdb/{log,tmp}
%endif
mv -f $RPM_BUILD_ROOT%{_libdir}/mysql/lib* $RPM_BUILD_ROOT%{_libdir}
%{__perl} -pi -e 's,%{_libdir}/mysql,%{_libdir},;' $RPM_BUILD_ROOT%{_libdir}/libmysqlclient.la
+rm -rf $RPM_BUILD_ROOT%{_prefix}/mysql-test
+
%clean
rm -rf $RPM_BUILD_ROOT
%pre
-if [ -n "`getgid mysql`" ]; then
- if [ "`getgid mysql`" != "89" ]; then
+if [ -n "`/usr/bin/getgid mysql`" ]; then
+ if [ "`/usr/bin/getgid mysql`" != "89" ]; then
echo "Error: group mysql doesn't have gid=89. Correct this before installing mysql." 1>&2
exit 1
fi
else
- /usr/sbin/groupadd -g 89 -r -f mysql
+ /usr/sbin/groupadd -g 89 mysql
fi
-if [ -n "`id -u mysql 2>/dev/null`" ]; then
- if [ "`id -u mysql`" != "89" ]; then
+if [ -n "`/bin/id -u mysql 2>/dev/null`" ]; then
+ if [ "`/bin/id -u mysql`" != "89" ]; then
echo "Error: user mysql doesn't have uid=89. Correct this before installing mysql." 1>&2
exit 1
fi
else
- /usr/sbin/useradd -M -o -r -u 89 \
+ /usr/sbin/useradd -u 89 \
-d %{_mysqlhome} -s /bin/sh -g mysql \
-c "MySQL Server" mysql 1>&2
fi
%files extras
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/msql2mysql
-%attr(755,root,root) %{_bindir}/mysql_config
%attr(755,root,root) %{_bindir}/mysql_fix_privilege_tables
%attr(755,root,root) %{_bindir}/perror
%attr(755,root,root) %{_bindir}/my_print_defaults
%attr(755,root,root) %{_bindir}/replace
%attr(755,root,root) %{_bindir}/resolveip
+%{_mandir}/man1/mysql_fix_privilege_tables.1*
%{_mandir}/man1/perror.1*
%{_mandir}/man1/replace.1*
%files libs
%defattr(644,root,root,755)
+%doc EXCEPTIONS-CLIENT
%attr(755,root,root) %{_libdir}/lib*.so.*.*
%files devel
%defattr(644,root,root,755)
-%{_libdir}/lib*.la
+%attr(755,root,root) %{_bindir}/mysql_config
%attr(755,root,root) %{_libdir}/lib*.so
-%{_libdir}/lib*[^tr].a
+%{_libdir}/lib*.la
+%{_libdir}/lib*[!tr].a
%{_includedir}/mysql
%files static
%dir %{_datadir}/sql-bench
%{_datadir}/sql-bench/[CDRl]*
%attr(755,root,root) %{_datadir}/sql-bench/[bcgrst]*
+
+%files doc
+%defattr(644,root,root,755)
+%doc Docs/manual.html Docs/manual_toc.html