]> TLD Linux GIT Repositories - packages/mysql.git/blobdiff - mysql.spec
- updated to 5.6.29-76.2
[packages/mysql.git] / mysql.spec
index 4dd93f1d35d328acfb7ac97281c5d95b66370ada..5fc80051d4b4deec42d4b2d41894f102312a8ab0 100644 (file)
@@ -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     31.0
+%define                rel     1
+%define                percona_rel     76.2
 %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,16 +35,14 @@ Summary(ru.UTF-8):  MySQL - быстрый SQL-сервер
 Summary(uk.UTF-8):     MySQL - швидкий SQL-сервер
 Summary(zh_CN.UTF-8):  MySQL数据库服务器
 Name:          mysql
-Version:       5.5.32
-Release:       3
+Version:       5.6.29
+Release:       %{percona_rel}.%{rel}
 License:       GPL + MySQL FLOSS Exception
 Group:         Applications/Databases
-# 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/redir/downloads/Percona-Server-5.5/LATEST/source/Percona-Server-%{version}-rel%{percona_rel}.tar.gz
-# Source0-md5: aafbc2a94353d68b5cbfbeddb7eb2e08
-Source100:     http://www.sphinxsearch.com/files/sphinx-2.0.8-release.tar.gz
-# Source100-md5:       bcaf0af0ba403a43b9ef3af6f9599cb4
+Source0:       http://www.percona.com/downloads/Percona-Server-5.6/LATEST/source/tarball/percona-server-%{version}-%{percona_rel}.tar.gz
+# Source0-md5: 8a0e3327e5b850852af6b9ca614d6bd7
+Source100:     http://www.sphinxsearch.com/files/sphinx-2.2.10-release.tar.gz
+# Source100-md5:       dda52b24d8348fc09e26d8a649a231d2
 Source1:       %{name}.init
 Source2:       %{name}.sysconfig
 Source3:       %{name}.logrotate
@@ -57,11 +56,10 @@ Source11:   %{name}-ndb-cpc.init
 Source12:      %{name}-ndb-cpc.sysconfig
 Source13:      %{name}-client.conf
 Source14:      my.cnf
-# from fedora
-Source15:      lib%{name}.version
-Patch0:                %{name}-link.patch
+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
 
@@ -73,23 +71,21 @@ Patch18:    %{name}-sphinx.patch
 Patch19:       %{name}-chain-certs.patch
 # from fedora
 Patch20:       %{name}-dubious-exports.patch
-Patch21:       bison3.patch
+Patch21:       bug-66589.patch
+Patch22:       bug-44278.patch
 URL:           http://www.mysql.com/products/community/
 BuildRequires: bison >= 1.875
 BuildRequires: cmake >= 2.6
-BuildRequires: groff
-%if "%{pld_release}" == "ac"
-BuildRequires: libstdc++4-devel >= 5:4.0
-%else
+BuildRequires: readline-devel >= 6.2
 BuildRequires: libstdc++-devel >= 5:4.0
-%endif
-BuildRequires: libtool
+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
@@ -119,6 +115,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
@@ -302,6 +299,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
@@ -485,15 +483,21 @@ 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
 %patch18 -p1
 %endif
-%patch0 -p1
+%patch1 -p1
 %patch2 -p1
 %patch3 -p1
+%patch4 -p1
 
 %patch6 -p1
 
@@ -504,11 +508,15 @@ mv sphinx-*/mysqlse storage/sphinx
 %patch19 -p1
 %patch20 -p1
 %patch21 -p1
+%patch22 -p1
 
 # to get these files rebuild
 [ -f sql/sql_yacc.cc ] && rm sql/sql_yacc.cc
 [ -f sql/sql_yacc.h ] && rm sql/sql_yacc.h
 
+# map has more sane versioning that default "global everything" in ver.in
+cp -p libmysql/libmysql.map libmysql/libmysql.ver.in
+
 %build
 install -d build
 cd build
@@ -516,24 +524,13 @@ 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
-
-# upstream has fallen down badly on symbol versioning, do it ourselves
-install -d libmysql
-cp -a %{SOURCE15} libmysql/libmysql.version
-
 %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="PLD/Linux Distribution MySQL RPM" \
+       -DCOMPILATION_COMMENT="TLD Linux MySQL RPM" \
        -DCURSES_INCLUDE_PATH=/usr/include/ncurses \
-       %{!?with_systemtap:-DENABLE_DTRACE=OFF} \
+       %{?with_systemtap:-DENABLE_DTRACE=ON} \
        -DFEATURE_SET="community" \
        -DINSTALL_LAYOUT=RPM \
        -DINSTALL_LIBDIR=%{_lib} \
@@ -545,17 +542,14 @@ cp -a %{SOURCE15} libmysql/libmysql.version
        %{?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 \
-%if "%{pld_release}" == "ac"
-       -DWITH_SSL=%{?with_ssl:bundled}%{!?with_ssl:no} \
-%else
+       -DWITH_READLINE=system \
        -DWITH_SSL=%{?with_ssl:system}%{!?with_ssl:no} \
-%endif
+       -DWITHOUT_TOKUDB=1 \
+       -DWITHOUT_TOKUDB_STORAGE_ENGINE=1 \
        -DWITH_UNIT_TESTS=%{?with_tests:ON}%{!?with_tests:OFF} \
        -DWITH_ZLIB=system \
        ..
@@ -607,16 +601,12 @@ install -p %{SOURCE11} $RPM_BUILD_ROOT/etc/rc.d/init.d/mysql-ndb-cpc
 cp -a %{SOURCE12} $RPM_BUILD_ROOT/etc/sysconfig/mysql-ndb-cpc
 %endif
 
-# symlinks point to the .so file, fix it
-ln -sf libmysqlclient.so.18 $RPM_BUILD_ROOT%{_libdir}/libmysqlclient_r.so.18
-ln -sf libmysqlclient.so.18.0.0 $RPM_BUILD_ROOT%{_libdir}/libmysqlclient_r.so.18.0.0
-
 sed -i -e 's,/usr//usr,%{_prefix},g' $RPM_BUILD_ROOT%{_bindir}/mysql_config
 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}/%{name}-support
 
 # rename not to be so generic name
 mv $RPM_BUILD_ROOT%{_bindir}/{,mysql_}resolve_stack_dump
@@ -640,7 +630,6 @@ mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/innochecksum
 mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/myisamchk
 mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/myisamlog
 mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/myisampack
-#mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/mysql_fix_privilege_tables
 mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/my_print_defaults
 sed -i -e 's#/usr/bin/my_print_defaults#%{_sbindir}/my_print_defaults#g' $RPM_BUILD_ROOT%{_bindir}/mysql_install_db
 mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/mysqlcheck
@@ -650,9 +639,6 @@ 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%{_bindir}/mysql_waitpid
 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysql_waitpid.1*
@@ -667,6 +653,8 @@ mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/mysqlcheck
 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysql-stress-test.pl.1*
 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysql-test-run.pl.1*
 %{__rm} -r $RPM_BUILD_ROOT%{_datadir}/mysql-test
+# libmysqld examples
+%{__rm} $RPM_BUILD_ROOT%{_bindir}/mysql{_client_test_embedded,_embedded,test_embedded}
 
 # not needed
 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/plugin/libdaemon_example.*
@@ -766,7 +754,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 http://bugs.pld-linux.org/"
+                       echo >&2 "Lost myself! Please report this (with above errors, if any) to TLD Linux mailing lists."
                        exit 1
        fi
        echo "Adding option old-passwords to config: $config_file"
@@ -805,7 +793,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 http://bugs.pld-linux.org/"
+               echo >&2 "ERROR: Can't find real config file for $config! Please report this (with above errors, if any) to TLD Linux mailing lists."
                continue
        fi
        configs="$configs $config_file"
@@ -844,7 +832,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 http://bugs.pld-linux.org/"
+               echo >&2 "ERROR: Can't find real config file for $config! Please report this (with above errors, if any) to TLD Linux mailing lists."
                continue
        fi
        configs="$configs $config_file"
@@ -871,7 +859,7 @@ done
 
 %files
 %defattr(644,root,root,755)
-%doc build/support-files/*.cnf build/support-files/*.ini
+%doc build/support-files/*.cnf
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name}
 %attr(754,root,root) /etc/rc.d/init.d/%{name}
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name}
@@ -881,7 +869,6 @@ done
 %attr(755,root,root) %{_sbindir}/myisamchk
 %attr(755,root,root) %{_sbindir}/myisamlog
 %attr(755,root,root) %{_sbindir}/myisampack
-#%attr(755,root,root) %{_sbindir}/mysql_fix_privilege_tables
 %attr(755,root,root) %{_sbindir}/mysql_plugin
 %attr(755,root,root) %{_sbindir}/mysql_upgrade
 %attr(755,root,root) %{_sbindir}/mysqlcheck
@@ -889,21 +876,21 @@ done
 %dir %{_libdir}/%{name}
 %dir %{_libdir}/%{name}/plugin
 %attr(755,root,root) %{_libdir}/%{name}/plugin/adt_null.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/audit_log.so
 %attr(755,root,root) %{_libdir}/%{name}/plugin/auth.so
 %attr(755,root,root) %{_libdir}/%{name}/plugin/auth_pam.so
 %attr(755,root,root) %{_libdir}/%{name}/plugin/auth_pam_compat.so
 %attr(755,root,root) %{_libdir}/%{name}/plugin/auth_socket.so
 %attr(755,root,root) %{_libdir}/%{name}/plugin/auth_test_plugin.so
 %attr(755,root,root) %{_libdir}/%{name}/plugin/dialog.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/ha_archive.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/ha_blackhole.so
-%attr(755,root,root) %{_libdir}/%{name}/plugin/ha_federated.so
 %attr(755,root,root) %{_libdir}/%{name}/plugin/mypluglib.so
 %attr(755,root,root) %{_libdir}/%{name}/plugin/qa_auth_client.so
 %attr(755,root,root) %{_libdir}/%{name}/plugin/qa_auth_interface.so
 %attr(755,root,root) %{_libdir}/%{name}/plugin/qa_auth_server.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/scalability_metrics.so
 %attr(755,root,root) %{_libdir}/%{name}/plugin/semisync_master.so
 %attr(755,root,root) %{_libdir}/%{name}/plugin/semisync_slave.so
+%attr(755,root,root) %{_libdir}/%{name}/plugin/validate_password.so
 %if %{with sphinx}
 %attr(755,root,root) %{_libdir}/%{name}/plugin/ha_sphinx.so
 %endif
@@ -914,7 +901,6 @@ done
 %{_mandir}/man1/myisamchk.1*
 %{_mandir}/man1/myisamlog.1*
 %{_mandir}/man1/myisampack.1*
-#%{_mandir}/man1/mysql_fix_privilege_tables.1*
 %{_mandir}/man1/mysql_plugin.1*
 %{_mandir}/man1/mysql_upgrade.1*
 %{_mandir}/man1/mysqlcheck.1*
@@ -935,13 +921,16 @@ done
 
 # This is template for configuration file which is created after 'service mysql init'
 %{_datadir}/%{name}/mysqld.conf
-%{_datadir}/%{name}/mysql_system_tables.sql
+%{_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}/mysql_fix_privilege_tables.sql
+%{_datadir}/%{name}/innodb_memcached_config.sql
+%lang(bg) %{_datadir}/%{name}/bulgarian
 %lang(cs) %{_datadir}/%{name}/czech
 %lang(da) %{_datadir}/%{name}/danish
 %lang(de) %{_datadir}/%{name}/german
@@ -967,7 +956,7 @@ done
 
 %files charsets
 %defattr(644,root,root,755)
-%dir %{_datadir}/mysql
+%dir %{_datadir}/%{name}
 %{_datadir}/%{name}/charsets
 
 %files extras
@@ -1019,6 +1008,7 @@ done
 %attr(755,root,root) %{_bindir}/mysqladmin
 %attr(755,root,root) %{_bindir}/mysqlbinlog
 %attr(755,root,root) %{_bindir}/mysqlbug
+%attr(755,root,root) %{_bindir}/mysql_config_editor
 %attr(755,root,root) %{_bindir}/mysqldump
 %attr(755,root,root) %{_bindir}/mysqlimport
 %attr(755,root,root) %{_bindir}/mysqlshow
@@ -1026,6 +1016,7 @@ done
 %{_mandir}/man1/mysqladmin.1*
 %{_mandir}/man1/mysqlbinlog.1*
 %{_mandir}/man1/mysqlbug.1*
+%{_mandir}/man1/mysql_config_editor.1*
 %{_mandir}/man1/mysqldump.1*
 %{_mandir}/man1/mysqlimport.1*
 %{_mandir}/man1/mysqlshow.1*
@@ -1052,6 +1043,8 @@ done
 %if %{with ndb}
 %attr(755,root,root) %{_libdir}/libndbclient.so
 %endif
+# static-only so far
+%{_libdir}/libmysqld.a
 %{_includedir}/mysql
 %{_aclocaldir}/mysql.m4
 %{_mandir}/man1/mysql_config.1*
@@ -1075,10 +1068,6 @@ done
 %{_mandir}/man1/mysqltest.1*
 %{_mandir}/man1/mysqltest_embedded.1*
 
-#%files doc
-#%defattr(644,root,root,755)
-#%doc Docs/manual.html Docs/manual_toc.html
-
 %if %{with ndb}
 %files ndb
 %defattr(644,root,root,755)