# TODO:
+# - unpackaged files:
+# /usr/lib/mysql/plugin/auth_pam.so
+# /usr/lib/mysql/plugin/auth_pam_compat.so
+# /usr/lib/mysql/plugin/daemon_example.ini
+# /usr/lib/mysql/plugin/dialog.so
+# /usr/bin/mysqlaccess.conf
# - 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)
-# - unpackaged:
-# /usr/bin/mysqlaccess.conf
# - http://bugs.mysql.com/bug.php?id=16470
# - innodb are dynamic (= as plugins) ?
# - missing have_archive, have_merge
Summary(uk.UTF-8): MySQL - швидкий SQL-сервер
Summary(zh_CN.UTF-8): MySQL数据库服务器
Name: mysql
-Version: 5.5.17
-Release: 2
+%define percona_rel 26.0
+Version: 5.5.24
+Release: 0.1
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-md5: dcb6a06e68c5e8f30f57b15300730c9c
-Source100: http://www.sphinxsearch.com/files/sphinx-2.0.1-beta.tar.gz
-# Source100-md5: 95c217d81d0b7a4ff73d5297318c3481
+# 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.24-26.0/source/Percona-Server-5.5.24-rel26.0.tar.gz
+# Source0-md5: 76f835e98ad3c71fcaa33794ee187630
+Source100: http://sphinxsearch.com/files/sphinx-2.0.3-release.tar.gz
+# Source100-md5: a1293aecd5034aa797811610beb7ba89
Source1: %{name}.init
Source2: %{name}.sysconfig
Source3: %{name}.logrotate
Patch19: %{name}-chain-certs.patch
# from fedora
Patch20: %{name}-dubious-exports.patch
-# http://sphinxsearch.com/bugs/view.php?id=676
-Patch21: sphinx-mysql.patch
-# <percona patches, updated with percona.sh>
-Patch100: microsec_process.patch
-Patch101: optimizer_fix.patch
-Patch102: mysql_dump_ignore_ct.patch
-Patch103: control_online_alter_index.patch
-Patch104: show_temp.patch
-Patch105: innodb_show_status.patch
-Patch106: innodb_io_patches.patch
-Patch107: innodb_opt_lru_count.patch
-Patch108: innodb_extra_rseg.patch
-Patch109: innodb_overwrite_relay_log_info.patch
-Patch110: innodb_thread_concurrency_timer_based.patch
-Patch111: innodb_dict_size_limit.patch
-Patch112: innodb_split_buf_pool_mutex.patch
-Patch113: innodb_expand_import.patch
-Patch114: innodb_show_sys_tables.patch
-Patch115: innodb_stats.patch
-Patch116: innodb_recovery_patches.patch
-Patch117: innodb_admin_command_base.patch
-Patch118: innodb_show_lock_name.patch
-Patch119: innodb_extend_slow.patch
-Patch120: innodb_lru_dump_restore.patch
-Patch121: innodb_separate_doublewrite.patch
-Patch122: innodb_pass_corrupt_table.patch
-Patch123: innodb_fast_checksum.patch
-Patch124: innodb_files_extend.patch
-Patch125: innodb_fix_misc.patch
-Patch126: innodb_deadlock_count.patch
-Patch127: innodb_adaptive_hash_index_partitions.patch
-Patch128: innodb_buffer_pool_pages_i_s.patch
-Patch129: innodb_buffer_pool_shm.patch
-Patch130: innodb_show_status_extend.patch
-Patch131: innodb_kill_idle_transaction.patch
-Patch132: innodb_fake_changes.patch
-Patch133: slow_extended.patch
-Patch134: percona_support.patch
-Patch135: query_cache_enhance.patch
-Patch136: log_connection_error.patch
-Patch137: mysql_syslog.patch
-Patch138: error_pad.patch
-Patch139: response_time_distribution.patch
-Patch140: remove_fcntl_excessive_calls.patch
-Patch141: sql_no_fcache.patch
-Patch142: show_slave_status_nolock.patch
-Patch143: log_warnings_suppress.patch
-Patch144: userstat.patch
-Patch145: bug580324.patch
-Patch146: mysql_remove_eol_carret.patch
-Patch147: processlist_row_stats.patch
-Patch148: innodb_expand_fast_index_creation.patch
-Patch149: innodb_bug60788.patch
-Patch150: start-stop-messages.patch
-Patch151: file-contents.patch
-Patch152: slave_timeout_fix.patch
-Patch153: utf8_general50_ci.patch
-Patch154: bug813587.patch
-Patch155: valgrind_zlib_suppression.patch
-Patch156: memory_dynamic_rows.patch
-Patch157: xtradb_bug317074.patch
-Patch158: subunit.patch
-Patch159: bug860910.patch
-Patch160: bug45702.patch
-# </percona>
URL: http://www.mysql.com/products/community/
BuildRequires: bison
BuildRequires: cmake >= 2.6
Provides: user(mysql)
Obsoletes: MySQL
Obsoletes: mysql-server
-Conflicts: logrotate < 3.7-4
+Conflicts: logrotate < 3.8.0
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%define _libexecdir %{_sbindir}
Ten pakiet zawiera standardowego demona MySQL NDB CPC.
%prep
-%setup -q %{?with_sphinx:-a100}
+%setup -q -n Percona-Server-%{version}-rel%{percona_rel} %{?with_sphinx:-a100}
%if %{with sphinx}
# http://www.sphinxsearch.com/docs/manual-0.9.9.html#sphinxse-mysql51
mv sphinx-*/mysqlse storage/sphinx
%patch18 -p1
%endif
#%patch2 -p1 # NEEDS CHECK, which exact program needs -lc++
-%patch3 -p1
+# obsolete, no more docs?
+#%patch3 -p1
%patch5 -p1
%patch6 -p1
-%patch7 -p1
+# make sure mysqldump still works with 4.0
+#%patch7 -p1
%patch8 -p1
%patch9 -p1
%patch11 -p1
%patch14 -p0
%patch19 -p1
%patch20 -p1
-cd storage/sphinx
-%patch21 -p1
-cd ../..
-# <percona %patches>
-%patch100 -p1
-%patch101 -p1
-%patch102 -p1
-%patch103 -p1
-%patch104 -p1
-%patch105 -p1
-%patch106 -p1
-%patch107 -p1
-%patch108 -p1
-%patch109 -p1
-%patch110 -p1
-%patch111 -p1
-%patch112 -p1
-%patch113 -p1
-%patch114 -p1
-%patch115 -p1
-%patch116 -p1
-%patch117 -p1
-%patch118 -p1
-%patch119 -p1
-%patch120 -p1
-%patch121 -p1
-%patch122 -p1
-%patch123 -p1
-%patch124 -p1
-%patch125 -p1
-%patch126 -p1
-%patch127 -p1
-%patch128 -p1
-%patch129 -p1
-%patch130 -p1
-%patch131 -p1
-%patch132 -p1
-%patch133 -p1
-%patch134 -p1
-%patch135 -p1
-%patch136 -p1
-%patch137 -p1
-%patch138 -p1
-%patch139 -p1
-%patch140 -p1
-%patch141 -p1
-%patch142 -p1
-%patch143 -p1
-%patch144 -p1
-%patch145 -p1
-%patch146 -p1
-%patch147 -p1
-%patch148 -p1
-%patch149 -p1
-%patch150 -p1
-%patch151 -p1
-%patch152 -p1
-%patch153 -p1
-%patch154 -p1
-%patch155 -p1
-%patch156 -p1
-%patch157 -p1
-%patch158 -p1
-%patch159 -p1
-%patch160 -p1
-# </percona>
# to get these files rebuild
-rm sql/sql_yacc.cc
-rm sql/sql_yacc.h
+[ -f sql/sql_yacc.cc ] && rm sql/sql_yacc.cc
+[ -f sql/sql_yacc.h ] && rm sql/sql_yacc.h
%build
install -d build
-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 \
%{?debug:-DWITH_DEBUG=ON} \
-DWITH_FAST_MUTEXES=ON \
-DWITH_PIC=ON \
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{%{_infodir},%{_mysqlhome}} \
+ $RPM_BUILD_ROOT%{_libdir}
%{__make} -C build install \
DESTDIR=$RPM_BUILD_ROOT
cp -a %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/clusters.conf
touch $RPM_BUILD_ROOT/var/log/%{name}/{mysqld,query,slow}.log
+%if "%{_lib}" != "lib"
+# percona broke something with lib64 handling
+mv $RPM_BUILD_ROOT%{_prefix}/lib/* $RPM_BUILD_ROOT%{_libdir}
+%endif
+
# remove innodb directives from mysqld.conf if mysqld is configured without
%if %{without innodb}
cp mysqld.conf mysqld.tmp