]> git.pld-linux.org Git - packages/mysql.git/blobdiff - mysql.spec
- release 2 (by relup.sh)
[packages/mysql.git] / mysql.spec
index 3c3b3402ae24248e0882e58d4aa0dd04df993cb0..565a3ad25301fb03fda6d15d5931ff903fbf6dcd 100644 (file)
@@ -1,8 +1,4 @@
 # TODO:
-# - unpackaged files:
-#   /usr/bin/mysqlaccess.conf
-#   /usr/lib/mysql/plugin/daemon_example.ini
-# - make response_time_distribution.patch compatible with i386 alpha sparc ppc arches
 # - mysqldump ... (invalid usage) prints to stdout not stderr (idiotic if you want to create dump and get usage in .sql)
 # - http://bugs.mysql.com/bug.php?id=16470
 # - innodb are dynamic (= as plugins) ?
 %bcond_without federated       # Federated storage engine support
 %bcond_without raid            # RAID support
 %bcond_without ssl             # OpenSSL support
+%bcond_without systemtap       # systemtap/dtrace probes
 %bcond_without tcpd            # libwrap (tcp_wrappers) support
 %bcond_without sphinx          # Sphinx storage engine support
 %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     29.1
+%define                rel     2
+%define                percona_rel     63.0
 %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
@@ -37,16 +35,16 @@ Summary(ru.UTF-8):  MySQL - быстрый SQL-сервер
 Summary(uk.UTF-8):     MySQL - швидкий SQL-сервер
 Summary(zh_CN.UTF-8):  MySQL数据库服务器
 Name:          mysql
-Version:       5.5.28
-Release:       1
+Version:       5.6.15
+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/Percona-Server-5.5.28-29.1/source/Percona-Server-%{version}-rel29.1.tar.gz
-# Source0-md5: 8ac1798de3a14f0b912910ea63edb22d
-Source100:     http://sphinxsearch.com/files/sphinx-2.0.3-release.tar.gz
-# Source100-md5:       a1293aecd5034aa797811610beb7ba89
+Source0:       http://www.percona.com/downloads/Percona-Server-5.6/LATEST/source/Percona-Server-%{version}-rel%{percona_rel}.tar.gz
+# Source0-md5: 30298acd471405feb3b23389c130e76d
+Source100:     http://www.sphinxsearch.com/files/sphinx-2.1.4-release.tar.gz
+# Source100-md5:       3d453b507834ec746237e2016d34f928
 Source1:       %{name}.init
 Source2:       %{name}.sysconfig
 Source3:       %{name}.logrotate
@@ -60,15 +58,13 @@ Source11:   %{name}-ndb-cpc.init
 Source12:      %{name}-ndb-cpc.sysconfig
 Source13:      %{name}-client.conf
 Source14:      my.cnf
-# from fedora
-Source15:      lib%{name}.version
-
+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
-Patch5:                %{name}-versioning.patch
 Patch6:                %{name}-system-users.patch
 
-Patch8:                %{name}-client-config.patch
 Patch9:                %{name}-build.patch
 Patch11:       %{name}-upgrade.patch
 Patch12:       %{name}-config.patch
@@ -77,25 +73,30 @@ Patch18:    %{name}-sphinx.patch
 Patch19:       %{name}-chain-certs.patch
 # from fedora
 Patch20:       %{name}-dubious-exports.patch
+Patch21:       bison3.patch
+Patch22:       bug-66589.patch
+Patch23:       bug-44278.patch
 URL:           http://www.mysql.com/products/community/
-BuildRequires: bison
+BuildRequires: bison >= 1.875
 BuildRequires: cmake >= 2.6
-BuildRequires: groff
+BuildRequires: libedit-devel
 %if "%{pld_release}" == "ac"
 BuildRequires: libstdc++4-devel >= 5:4.0
 %else
 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
+%{?with_systemtap:BuildRequires:       systemtap-sdt-devel}
 BuildRequires: zlib-devel
 Requires(post,preun):  /sbin/chkconfig
 Requires(postun):      /usr/sbin/groupdel
@@ -493,24 +494,30 @@ Ten pakiet zawiera standardowego demona MySQL NDB CPC.
 mv sphinx-*/mysqlse storage/sphinx
 %patch18 -p1
 %endif
-
+%patch1 -p1
+%patch2 -p1
 %patch3 -p1
+%patch4 -p1
 
-%patch5 -p1
 %patch6 -p1
 
-%patch8 -p1
 %patch9 -p1
 %patch11 -p1
 %patch12 -p1
 %patch14 -p0
 %patch19 -p1
 %patch20 -p1
+%patch21 -p1
+%patch22 -p1
+%patch23 -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
@@ -525,39 +532,36 @@ cd build
 %{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} \
-       -DFEATURE_SET="community" \
        -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" \
-       -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
-       -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
+       -DCOMPILATION_COMMENT="PLD/Linux Distribution MySQL RPM" \
+       -DCURSES_INCLUDE_PATH=/usr/include/ncurses \
+       %{?with_systemtap:-DENABLE_DTRACE=ON} \
+       -DFEATURE_SET="community" \
+       -DINSTALL_LAYOUT=RPM \
+       -DINSTALL_LIBDIR=%{_lib} \
+       -DINSTALL_MYSQLTESTDIR_RPM="" \
+       -DINSTALL_PLUGINDIR=%{_libdir}/%{name}/plugin \
+       -DINSTALL_SQLBENCHDIR=%{_datadir} \
+       -DINSTALL_SUPPORTFILESDIR=%{_datadir}/%{name}-support \
+       -DMYSQL_UNIX_ADDR=/var/lib/%{name}/%{name}.sock \
        %{?debug:-DWITH_DEBUG=ON} \
+       -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
        -DWITH_FAST_MUTEXES=ON \
+       -DWITH_LIBWRAP=%{?with_tcpd:ON}%{!?with_tcpd:OFF} \
+       -DWITH_PAM=ON \
+       -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
        -DWITH_PIC=ON \
-       -DWITH_LIBEDIT=OFF \
-       -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_ZLIB=system \
-       -DCOMPILATION_COMMENT="PLD/Linux Distribution MySQL RPM" \
-       -DWITH_LIBWRAP=%{?with_tcpd:ON}%{!?with_tcpd:OFF} \
        -DWITH_UNIT_TESTS=%{?with_tests:ON}%{!?with_tests:OFF} \
-       -DCURSES_INCLUDE_PATH=/usr/include/ncurses \
-       -DMYSQL_UNIX_ADDR=/var/lib/%{name}/%{name}.sock \
-       -DINSTALL_LAYOUT=RPM \
-       -DINSTALL_MYSQLTESTDIR_RPM="" \
-       -DINSTALL_SQLBENCHDIR=%{_datadir} \
-       -DINSTALL_SUPPORTFILESDIR=%{_datadir}/%{name}-support \
-       -DINSTALL_PLUGINDIR=%{_libdir}/%{name}/plugin \
-       -DINSTALL_LIBDIR=%{_lib} \
+       -DWITH_ZLIB=system \
        ..
 
 %{__make}
@@ -568,14 +572,12 @@ cp -a %{SOURCE15} libmysql/libmysql.version
 rm -rf $RPM_BUILD_ROOT
 install -d $RPM_BUILD_ROOT/etc/{logrotate.d,rc.d/init.d,sysconfig,mysql,skel} \
           $RPM_BUILD_ROOT/var/{log/{archive,}/mysql,lib/mysql} \
-          $RPM_BUILD_ROOT{%{_infodir},%{_mysqlhome}} \
+          $RPM_BUILD_ROOT%{_mysqlhome} \
           $RPM_BUILD_ROOT%{_libdir}
 
 %{__make} -C build install \
        DESTDIR=$RPM_BUILD_ROOT
 
-cp -a Docs/mysql.info $RPM_BUILD_ROOT%{_infodir}
-
 install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/mysql
 cp -a %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/mysql
 cp -a %{SOURCE3} $RPM_BUILD_ROOT/etc/logrotate.d/mysql
@@ -596,6 +598,7 @@ awk 'BEGIN { RS="\n\n" } !/bdb/ { printf("%s\n\n", $0) }' < mysqld.tmp > mysqld.
 
 cp -a mysqld.conf $RPM_BUILD_ROOT%{_datadir}/%{name}/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
 
 # NDB
@@ -608,12 +611,9 @@ 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
@@ -622,6 +622,9 @@ sed -i -e '/libs/s/$ldflags//' $RPM_BUILD_ROOT%{_bindir}/mysql_config
 mv $RPM_BUILD_ROOT%{_bindir}/{,mysql_}resolve_stack_dump
 mv $RPM_BUILD_ROOT%{_mandir}/man1/{,mysql_}resolve_stack_dump.1
 
+# move to _sysconfdir
+mv $RPM_BUILD_ROOT{%{_bindir},%{_sysconfdir}}/mysqlaccess.conf
+
 # not useful without -debug build
 %{!?debug:%{__rm} $RPM_BUILD_ROOT%{_bindir}/mysql_resolve_stack_dump}
 %{!?debug:%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysql_resolve_stack_dump.1}
@@ -664,9 +667,15 @@ 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.*
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/plugin/daemon_example.ini
+
+# not an .info file
+%{__rm} $RPM_BUILD_ROOT%{_infodir}/mysql.info
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -676,7 +685,6 @@ rm -rf $RPM_BUILD_ROOT
 %useradd -u 89 -d %{_mysqlhome} -s /bin/sh -g mysql -c "MySQL Server" mysql
 
 %post
-[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
 /sbin/ldconfig
 /sbin/chkconfig --add mysql
 %service mysql restart
@@ -688,9 +696,7 @@ if [ "$1" = "0" ]; then
 fi
 
 %postun
-[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
 /sbin/ldconfig
-
 if [ "$1" = "0" ]; then
        %userremove mysql
        %groupremove mysql
@@ -867,7 +873,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}
@@ -891,15 +897,16 @@ done
 %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/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/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
@@ -929,16 +936,19 @@ done
 %attr(750,mysql,mysql) %dir /var/log/archive/mysql
 %attr(640,mysql,mysql) %ghost /var/log/mysql/*
 
-%{_infodir}/mysql.info*
 # 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}/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
@@ -1000,6 +1010,7 @@ done
 %attr(755,root,root) %{_bindir}/mysql_zap
 %attr(755,root,root) %{_bindir}/mysqlaccess
 %attr(755,root,root) %{_bindir}/mysqldumpslow
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mysqlaccess.conf
 %{_mandir}/man1/mysql_convert_table_format.1*
 %{_mandir}/man1/mysql_find_rows.1*
 %{_mandir}/man1/mysql_fix_extensions.1*
@@ -1015,6 +1026,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
@@ -1022,6 +1034,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*
@@ -1030,6 +1043,7 @@ done
 %defattr(644,root,root,755)
 %attr(751,root,root) %dir %{_sysconfdir}/mysql
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/mysql-client.conf
+%{_sysconfdir}/%{name}/my.cnf
 %attr(755,root,root) %{_libdir}/libmysqlclient.so.*.*.*
 %attr(755,root,root) %ghost %{_libdir}/libmysqlclient.so.18
 %attr(755,root,root) %{_libdir}/libmysqlclient_r.so.*.*.*
@@ -1047,6 +1061,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*
This page took 0.143779 seconds and 4 git commands to generate.