X-Git-Url: https://git.tld-linux.org/?p=packages%2Fmysql.git;a=blobdiff_plain;f=mysql.spec;h=521fa82fa0e3bb6d5431dc5906b008041d774525;hp=a5e5251c79801c0ce692df4671accf2941aa947a;hb=5d87e23e83778b780ea870de884296569fd5b127;hpb=45b2428a6aedc04e4e744b411c27d7cb1f8c0805 diff --git a/mysql.spec b/mysql.spec index a5e5251..521fa82 100644 --- a/mysql.spec +++ b/mysql.spec @@ -23,7 +23,8 @@ %bcond_with tests # FIXME: don't run correctly %bcond_with ndb # NDB is now a separate product, this here is broken, so disable it -%define percona_rel 62.0 +%define rel 3 +%define percona_rel 64.1 %include /usr/lib/rpm/macros.perl Summary: MySQL: a very fast and reliable SQL database engine Summary(de.UTF-8): MySQL: ist eine SQL-Datenbank @@ -34,14 +35,16 @@ Summary(ru.UTF-8): MySQL - быстрый SQL-сервер Summary(uk.UTF-8): MySQL - швидкий SQL-сервер Summary(zh_CN.UTF-8): MySQL数据库服务器 Name: mysql -Version: 5.6.14 -Release: 0.1 +Version: 5.6.16 +Release: %{percona_rel}.%{rel} License: GPL + MySQL FLOSS Exception Group: Applications/Databases -Source0: http://www.percona.com/redir/downloads/Percona-Server-5.6/LATEST/release-%{version}-%{percona_rel}/483/source/Percona-Server-%{version}-rel%{percona_rel}.tar.gz -# Source0-md5: 2e6b2ce44173784bb8990813e536cf3c -Source100: http://www.sphinxsearch.com/files/sphinx-2.1.2-release.tar.gz -# Source100-md5: 3e828fa58e2e6049f02aa6aef3009d48 +# Source0Download: http://dev.mysql.com/downloads/mysql/5.5.html#downloads +# Source0: http://vesta.informatik.rwth-aachen.de/mysql/Downloads/MySQL-5.5/%{name}-%{version}.tar.gz +Source0: http://www.percona.com/downloads/Percona-Server-5.6/LATEST/source/tarball/percona-server-%{version}-%{percona_rel}.tar.gz +# Source0-md5: ba75fbcc530dc74ebb978cf450c011b3 +Source100: http://www.sphinxsearch.com/files/sphinx-2.1.6-release.tar.gz +# Source100-md5: f416c743c0e0f4e337b4549928d8494f Source1: %{name}.init Source2: %{name}.sysconfig Source3: %{name}.logrotate @@ -58,6 +61,7 @@ Source14: my.cnf Patch1: %{name}-versioning.patch Patch2: %{name}hotcopy-5.0-5.5.patch Patch3: bug-67402.patch +Patch4: %{name}-no-default-secure-auth.patch # from fedora Patch6: %{name}-system-users.patch @@ -71,18 +75,26 @@ Patch19: %{name}-chain-certs.patch Patch20: %{name}-dubious-exports.patch Patch21: bison3.patch Patch22: bug-66589.patch +Patch23: bug-44278.patch +Patch24: %{name}-cmake.patch +Patch25: %{name}-readline.patch URL: http://www.mysql.com/products/community/ BuildRequires: bison >= 1.875 BuildRequires: cmake >= 2.6 -BuildRequires: groff +BuildRequires: readline-devel >= 6.2 +%if "%{pld_release}" == "ac" +BuildRequires: libstdc++4-devel >= 5:4.0 +%else BuildRequires: libstdc++-devel >= 5:4.0 -BuildRequires: libtool +%endif +BuildRequires: automake %{?with_tcpd:BuildRequires: libwrap-devel} BuildRequires: ncurses-devel >= 4.2 %{?with_ssl:BuildRequires: openssl-devel >= 0.9.7d} +BuildRequires: pam-devel %{?with_autodeps:BuildRequires: perl-DBI} BuildRequires: perl-devel >= 1:5.6.1 -BuildRequires: readline-devel >= 4.2 +BuildRequires: python-modules BuildRequires: rpm-perlprov >= 4.1-13 BuildRequires: rpmbuild(macros) >= 1.597 BuildRequires: sed >= 4.0 @@ -112,6 +124,7 @@ Obsoletes: mysql-server Conflicts: logrotate < 3.8.0 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) +%define _orgname percona-server %define _libexecdir %{_sbindir} %define _localstatedir /var/lib/mysql %define _mysqlhome /home/services/mysql @@ -295,6 +308,7 @@ Summary(uk.UTF-8): MySQL клієнт Group: Applications/Databases Requires: %{name}-charsets = %{version}-%{release} Requires: %{name}-libs = %{version}-%{release} +Requires: readline >= 6.2 Obsoletes: MySQL-client %description client @@ -478,7 +492,12 @@ This package contains the standard MySQL NDB CPC Daemon. Ten pakiet zawiera standardowego demona MySQL NDB CPC. %prep -%setup -q -n Percona-Server-%{version}-rel%{percona_rel} %{?with_sphinx:-a100} +%setup -q -n percona-server-%{version}-%{percona_rel} %{?with_sphinx:-a100} + +# we want to use old, mysql compatible client library name +find . -name CMakeLists.txt -exec sed -i -e 's#perconaserverclient#mysqlclient#g' "{}" ";" +sed -i -e 's#perconaserverclient#mysqlclient#g' libmysql/libmysql.{ver.in,map} scripts/mysql_config.* + %if %{with sphinx} # http://www.sphinxsearch.com/docs/manual-0.9.9.html#sphinxse-mysql51 mv sphinx-*/mysqlse storage/sphinx @@ -487,6 +506,7 @@ mv sphinx-*/mysqlse storage/sphinx %patch1 -p1 %patch2 -p1 %patch3 -p1 +%patch4 -p1 %patch6 -p1 @@ -498,6 +518,9 @@ mv sphinx-*/mysqlse storage/sphinx %patch20 -p1 %patch21 -p1 %patch22 -p1 +%patch23 -p1 +%patch24 -p1 +%patch25 -p1 # to get these files rebuild [ -f sql/sql_yacc.cc ] && rm sql/sql_yacc.cc @@ -513,11 +536,18 @@ cd build # (it defaults to first cluster but user may change it to whatever # cluster it wants) +%if "%{pld_release}" == "ac" +# add suffix, but allow ccache, etc in ~/.rpmmacros +%{expand:%%define __cc %(echo '%__cc' | sed -e 's,-gcc,-gcc4,')} +%{expand:%%define __cxx %(echo '%__cxx' | sed -e 's,-g++,-g++4,')} +%{expand:%%define __cpp %(echo '%__cpp' | sed -e 's,-gcc,-gcc4,')} +%endif + %cmake \ -DCMAKE_BUILD_TYPE=%{!?debug:RelWithDebInfo}%{?debug:Debug} \ -DCMAKE_C_FLAGS_RELEASE="%{rpmcflags} -DNDEBUG -fno-omit-frame-pointer -fno-strict-aliasing" \ -DCMAKE_CXX_FLAGS_RELEASE="%{rpmcxxflags} -DNDEBUG -fno-omit-frame-pointer -fno-strict-aliasing" \ - -DCOMPILATION_COMMENT="TLD Linux MySQL RPM" \ + -DCOMPILATION_COMMENT="PLD/Linux Distribution MySQL RPM" \ -DCURSES_INCLUDE_PATH=/usr/include/ncurses \ %{?with_systemtap:-DENABLE_DTRACE=ON} \ -DFEATURE_SET="community" \ @@ -526,18 +556,21 @@ cd build -DINSTALL_MYSQLTESTDIR_RPM="" \ -DINSTALL_PLUGINDIR=%{_libdir}/%{name}/plugin \ -DINSTALL_SQLBENCHDIR=%{_datadir} \ - -DINSTALL_SUPPORTFILESDIR=%{_datadir}/%{name}-support \ + -DINSTALL_SUPPORTFILESDIR=%{_datadir}/%{_orgname}-support \ -DMYSQL_UNIX_ADDR=/var/lib/%{name}/%{name}.sock \ %{?debug:-DWITH_DEBUG=ON} \ -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \ -DWITH_FAST_MUTEXES=ON \ - -DWITH_LIBEDIT=OFF \ -DWITH_LIBWRAP=%{?with_tcpd:ON}%{!?with_tcpd:OFF} \ -DWITH_PAM=ON \ -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \ -DWITH_PIC=ON \ - -DWITH_READLINE=OFF \ + -DWITH_EDITLINE=system \ +%if "%{pld_release}" == "ac" + -DWITH_SSL=%{?with_ssl:bundled}%{!?with_ssl:no} \ +%else -DWITH_SSL=%{?with_ssl:system}%{!?with_ssl:no} \ +%endif -DWITH_UNIT_TESTS=%{?with_tests:ON}%{!?with_tests:OFF} \ -DWITH_ZLIB=system \ .. @@ -574,7 +607,7 @@ touch $RPM_BUILD_ROOT/var/log/%{name}/{mysqld,query,slow}.log cp mysqld.conf mysqld.tmp awk 'BEGIN { RS="\n\n" } !/bdb/ { printf("%s\n\n", $0) }' < mysqld.tmp > mysqld.conf -cp -a mysqld.conf $RPM_BUILD_ROOT%{_datadir}/%{name}/mysqld.conf +cp -a mysqld.conf $RPM_BUILD_ROOT%{_datadir}/%{_orgname}/mysqld.conf cp -a %{SOURCE13} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/mysql-client.conf ln -s mysql-client.conf $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/my.cnf cp -a %{SOURCE14} $RPM_BUILD_ROOT/etc/skel/.my.cnf @@ -594,7 +627,7 @@ sed -i -e '/libs/s/$ldflags//' $RPM_BUILD_ROOT%{_bindir}/mysql_config sed -i -e '/libs/s/-lprobes_mysql//' $RPM_BUILD_ROOT%{_bindir}/mysql_config # remove known unpackaged files -%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/mysql-support +%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/%{_orgname}-support # rename not to be so generic name mv $RPM_BUILD_ROOT%{_bindir}/{,mysql_}resolve_stack_dump @@ -607,9 +640,9 @@ mv $RPM_BUILD_ROOT{%{_bindir},%{_sysconfdir}}/mysqlaccess.conf %{!?debug:%{__rm} $RPM_BUILD_ROOT%{_bindir}/mysql_resolve_stack_dump} %{!?debug:%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysql_resolve_stack_dump.1} # generate symbols file, so one can generate backtrace using it -# mysql_resolve_stack_dump -s %{_datadir}/%{name}/mysqld.sym -n mysqld.stack. +# mysql_resolve_stack_dump -s %{_datadir}/%{_orgname}/mysqld.sym -n mysqld.stack. # http://dev.mysql.com/doc/refman/5.0/en/using-stack-trace.html -%{?debug:nm -n $RPM_BUILD_ROOT%{_sbindir}/mysqld > $RPM_BUILD_ROOT%{_datadir}/%{name}/mysqld.sym} +%{?debug:nm -n $RPM_BUILD_ROOT%{_sbindir}/mysqld > $RPM_BUILD_ROOT%{_datadir}/%{_orgname}/mysqld.sym} # do not clobber users $PATH mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/mysql_plugin @@ -628,10 +661,10 @@ mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/mysqlcheck %{__rm} $RPM_BUILD_ROOT%{_bindir}/mysqld_safe %{__rm} $RPM_BUILD_ROOT%{_bindir}/mysqld_multi %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysqld_{multi,safe}* -#rm $RPM_BUILD_ROOT%{_datadir}/%{name}/mysql-log-rotate -#rm $RPM_BUILD_ROOT%{_datadir}/%{name}/mysql.server -#rm $RPM_BUILD_ROOT%{_datadir}/%{name}/binary-configure -%{__rm} $RPM_BUILD_ROOT%{_datadir}/%{name}/errmsg-utf8.txt +#rm $RPM_BUILD_ROOT%{_datadir}/%{_orgname}/mysql-log-rotate +#rm $RPM_BUILD_ROOT%{_datadir}/%{_orgname}/mysql.server +#rm $RPM_BUILD_ROOT%{_datadir}/%{_orgname}/binary-configure +%{__rm} $RPM_BUILD_ROOT%{_datadir}/%{_orgname}/errmsg-utf8.txt %{__rm} $RPM_BUILD_ROOT%{_bindir}/mysql_waitpid %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysql_waitpid.1* %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysql.server* @@ -746,7 +779,7 @@ for config in $(awk -F= '!/^#/ && /=/{print $1}' /etc/%{name}/clusters.conf); do fi if [ ! -f "$config_file" ]; then - echo >&2 "Lost myself! Please report this (with above errors, if any) to TLD Linux mailing lists." + echo >&2 "Lost myself! Please report this (with above errors, if any) to http://bugs.pld-linux.org/" exit 1 fi echo "Adding option old-passwords to config: $config_file" @@ -763,7 +796,7 @@ done %banner -e %{name}-4.1.x <<-EOF If you want to use new help tables in MySQL 4.1.x then You'll need to import the help data: - mysql -u mysql mysql < %{_datadir}/%{name}/fill_help_tables.sql + mysql -u mysql mysql < %{_datadir}/%{_orgname}/fill_help_tables.sql EOF #' @@ -785,7 +818,7 @@ for config in $(awk -F= '!/^#/ && /=/{print $1}' /etc/%{name}/clusters.conf); do fi if [ ! -f "$config_file" ]; then - echo >&2 "ERROR: Can't find real config file for $config! Please report this (with above errors, if any) to TLD Linux mailing lists." + echo >&2 "ERROR: Can't find real config file for $config! Please report this (with above errors, if any) to http://bugs.pld-linux.org/" continue fi configs="$configs $config_file" @@ -824,7 +857,7 @@ for config in $(awk -F= '!/^#/ && /=/{print $1}' /etc/%{name}/clusters.conf); do fi if [ ! -f "$config_file" ]; then - echo >&2 "ERROR: Can't find real config file for $config! Please report this (with above errors, if any) to TLD Linux mailing lists." + echo >&2 "ERROR: Can't find real config file for $config! Please report this (with above errors, if any) to http://bugs.pld-linux.org/" continue fi configs="$configs $config_file" @@ -903,7 +936,7 @@ done %if %{?debug:1}0 %attr(755,root,root) %{_bindir}/*resolve_stack_dump -%{_datadir}/%{name}/mysqld.sym +%{_datadir}/%{_orgname}/mysqld.sym %{_mandir}/man1/*resolve_stack_dump.1* %endif @@ -915,45 +948,45 @@ done %attr(640,mysql,mysql) %ghost /var/log/mysql/* # This is template for configuration file which is created after 'service mysql init' -%{_datadir}/%{name}/mysqld.conf -%{_datadir}/%{name}/mysql_security_commands.sql -%{_datadir}/%{name}/mysql_system_tables_data.sql -%{_datadir}/%{name}/mysql_system_tables.sql -%{_datadir}/%{name}/mysql_test_data_timezone.sql - -%{_datadir}/%{name}/english -%{_datadir}/%{name}/dictionary.txt -%{_datadir}/%{name}/fill_help_tables.sql -%{_datadir}/%{name}/innodb_memcached_config.sql -#%{_datadir}/%{name}/mysql_fix_privilege_tables.sql -%lang(bg) %{_datadir}/%{name}/bulgarian -%lang(cs) %{_datadir}/%{name}/czech -%lang(da) %{_datadir}/%{name}/danish -%lang(de) %{_datadir}/%{name}/german -%lang(el) %{_datadir}/%{name}/greek -%lang(es) %{_datadir}/%{name}/spanish -%lang(et) %{_datadir}/%{name}/estonian -%lang(fr) %{_datadir}/%{name}/french -%lang(hu) %{_datadir}/%{name}/hungarian -%lang(it) %{_datadir}/%{name}/italian -%lang(ja) %{_datadir}/%{name}/japanese -%lang(ko) %{_datadir}/%{name}/korean -%lang(nl) %{_datadir}/%{name}/dutch -%lang(nb) %{_datadir}/%{name}/norwegian -%lang(nn) %{_datadir}/%{name}/norwegian-ny -%lang(pl) %{_datadir}/%{name}/polish -%lang(pt) %{_datadir}/%{name}/portuguese -%lang(ro) %{_datadir}/%{name}/romanian -%lang(ru) %{_datadir}/%{name}/russian -%lang(sr) %{_datadir}/%{name}/serbian -%lang(sk) %{_datadir}/%{name}/slovak -%lang(sv) %{_datadir}/%{name}/swedish -%lang(uk) %{_datadir}/%{name}/ukrainian +%{_datadir}/%{_orgname}/mysqld.conf +%{_datadir}/%{_orgname}/mysql_security_commands.sql +%{_datadir}/%{_orgname}/mysql_system_tables_data.sql +%{_datadir}/%{_orgname}/mysql_system_tables.sql +%{_datadir}/%{_orgname}/mysql_test_data_timezone.sql + +%{_datadir}/%{_orgname}/english +%{_datadir}/%{_orgname}/dictionary.txt +%{_datadir}/%{_orgname}/fill_help_tables.sql +%{_datadir}/%{_orgname}/innodb_memcached_config.sql +#%{_datadir}/%{_orgname}/mysql_fix_privilege_tables.sql +%lang(bg) %{_datadir}/%{_orgname}/bulgarian +%lang(cs) %{_datadir}/%{_orgname}/czech +%lang(da) %{_datadir}/%{_orgname}/danish +%lang(de) %{_datadir}/%{_orgname}/german +%lang(el) %{_datadir}/%{_orgname}/greek +%lang(es) %{_datadir}/%{_orgname}/spanish +%lang(et) %{_datadir}/%{_orgname}/estonian +%lang(fr) %{_datadir}/%{_orgname}/french +%lang(hu) %{_datadir}/%{_orgname}/hungarian +%lang(it) %{_datadir}/%{_orgname}/italian +%lang(ja) %{_datadir}/%{_orgname}/japanese +%lang(ko) %{_datadir}/%{_orgname}/korean +%lang(nl) %{_datadir}/%{_orgname}/dutch +%lang(nb) %{_datadir}/%{_orgname}/norwegian +%lang(nn) %{_datadir}/%{_orgname}/norwegian-ny +%lang(pl) %{_datadir}/%{_orgname}/polish +%lang(pt) %{_datadir}/%{_orgname}/portuguese +%lang(ro) %{_datadir}/%{_orgname}/romanian +%lang(ru) %{_datadir}/%{_orgname}/russian +%lang(sr) %{_datadir}/%{_orgname}/serbian +%lang(sk) %{_datadir}/%{_orgname}/slovak +%lang(sv) %{_datadir}/%{_orgname}/swedish +%lang(uk) %{_datadir}/%{_orgname}/ukrainian %files charsets %defattr(644,root,root,755) -%dir %{_datadir}/mysql -%{_datadir}/%{name}/charsets +%dir %{_datadir}/%{_orgname} +%{_datadir}/%{_orgname}/charsets %files extras %defattr(644,root,root,755)