X-Git-Url: https://git.tld-linux.org/?a=blobdiff_plain;f=mysql.spec;h=dffa21bae32f84b34f99fd4315a256b2939b5e7f;hb=f84d48d1e242f3af6b5af30a39252584c6744c68;hp=1e6435d30c535a4b92bf9fbb547100e3eb691c39;hpb=ab37849b10b79ddf138c98a8b258d0fc9d5be9cd;p=packages%2Fmysql.git diff --git a/mysql.spec b/mysql.spec index 1e6435d..dffa21b 100644 --- a/mysql.spec +++ b/mysql.spec @@ -1,4 +1,6 @@ # TODO: +# - -DWITH_AUTHENTICATION_KERBEROS=ON (BR: MIT krb5) +# - -DWITH_AUTHENTICATION_FIDO=ON (using system libfido?) # - 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) ? @@ -11,21 +13,20 @@ # (profiling disabled temporaily to workaround this) # # Conditional build: -%bcond_with autodeps # BR packages needed only for resolving deps %bcond_without innodb # InnoDB storage engine support %bcond_without big_tables # Support tables with more than 4G rows even on 32 bit platforms %bcond_without federated # Federated storage engine support %bcond_without raid # RAID support %bcond_without ssl # OpenSSL support -%bcond_without systemtap # systemtap/dtrace probes +%bcond_with 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 sphinx # Sphinx storage engine support +# mysql needs boost 1.77.0 and doesn't support newer/older boost versions +%bcond_with system_boost +%bcond_with tests # run test suite %bcond_with ndb # NDB is now a separate product, this here is broken, so disable it +%bcond_without ldap # LDAP auth support (requires MIT Kerberos) -%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 Summary(fr.UTF-8): MySQL: un serveur SQL rapide et fiable @@ -34,68 +35,77 @@ Summary(pt_BR.UTF-8): MySQL: Um servidor SQL rápido e confiável Summary(ru.UTF-8): MySQL - быстрый SQL-сервер Summary(uk.UTF-8): MySQL - швидкий SQL-сервер Summary(zh_CN.UTF-8): MySQL数据库服务器 -Name: mysql -Version: 5.6.16 -Release: %{percona_rel}.%{rel} -License: GPL + MySQL FLOSS Exception +%define majorver 8.2 +Name: mysql%{majorver} +Version: 8.2.0 +Release: 1 +License: GPL v2 + MySQL FOSS License 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/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 -Source4: %{name}d.conf -Source5: %{name}-clusters.conf -Source7: %{name}-ndb.init -Source8: %{name}-ndb.sysconfig -Source9: %{name}-ndb-mgm.init -Source10: %{name}-ndb-mgm.sysconfig -Source11: %{name}-ndb-cpc.init -Source12: %{name}-ndb-cpc.sysconfig -Source13: %{name}-client.conf +#Source0Download: https://dev.mysql.com/downloads/mysql/8.2.html#downloads +Source0: http://cdn.mysql.com/Downloads/MySQL-%{majorver}/mysql-%{version}.tar.gz +# Source0-md5: 9ddeecbdb046cd4a8a4340445206130d +Source100: http://www.sphinxsearch.com/files/sphinx-2.2.11-release.tar.gz +# Source100-md5: 5cac34f3d78a9d612ca4301abfcbd666 +%if %{without system_boost} +Source101: http://downloads.sourceforge.net/boost/boost_1_77_0.tar.bz2 +# Source101-md5: 09dc857466718f27237144c6f2432d86 +%endif +Source1: mysql.init +Source2: mysql.sysconfig +Source3: mysql.logrotate +Source4: mysqld.conf +Source5: mysql-clusters.conf +Source7: mysql-ndb.init +Source8: mysql-ndb.sysconfig +Source9: mysql-ndb-mgm.init +Source10: mysql-ndb-mgm.sysconfig +Source11: mysql-ndb-cpc.init +Source12: mysql-ndb-cpc.sysconfig +Source13: mysql-client.conf 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 - -Patch9: %{name}-build.patch -Patch11: %{name}-upgrade.patch -Patch12: %{name}-config.patch -Patch14: %{name}-bug-43594.patch -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 -Patch24: %{name}-cmake.patch -Patch25: %{name}-readline.patch +Patch0: mysql-opt.patch +Patch1: mysql-system-xxhash.patch + +Patch17: mysql-5.7-sphinx.patch +Patch18: mysql-sphinx.patch + +Patch24: mysql-cmake.patch +Patch25: mysql-readline.patch + +Patch26: mysqldumpslow-clusters.patch URL: http://www.mysql.com/products/community/ BuildRequires: bison >= 1.875 -BuildRequires: cmake >= 2.6 -BuildRequires: readline-devel >= 6.2 -BuildRequires: libstdc++-devel >= 5:4.0 -BuildRequires: automake +%{?with_system_boost:BuildRequires: boost-devel >= 1.77.0} +BuildRequires: cmake >= 2.8.2 +%{?with_ldap:BuildRequires: cyrus-sasl-devel} +# for configure and tests +%{?with_ldap:BuildRequires: cyrus-sasl-scram} +#%{?with_ldap:BuildRequires: krb5-devel} +BuildRequires: libaio-devel +BuildRequires: libevent-devel +BuildRequires: libhsclient-devel +BuildRequires: libstdc++-devel >= 5:7.1 %{?with_tcpd:BuildRequires: libwrap-devel} +BuildRequires: lz4-devel +BuildRequires: mecab-devel BuildRequires: ncurses-devel >= 4.2 -%{?with_ssl:BuildRequires: openssl-devel >= 0.9.7d} +%{?with_ssl:BuildRequires: openssl-devel >= 1.1.1} +%{?with_ldap:BuildRequires: openldap-devel} BuildRequires: pam-devel -%{?with_autodeps:BuildRequires: perl-DBI} BuildRequires: perl-devel >= 1:5.6.1 -BuildRequires: python-modules +BuildRequires: protobuf-devel >= 2.5 +BuildRequires: python3-modules +BuildRequires: readline-devel >= 6.2 +BuildRequires: rpcsvc-proto +BuildRequires: rpm-build >= 4.6 BuildRequires: rpm-perlprov >= 4.1-13 -BuildRequires: rpmbuild(macros) >= 1.597 +BuildRequires: rpmbuild(macros) >= 1.605 BuildRequires: sed >= 4.0 %{?with_systemtap:BuildRequires: systemtap-sdt-devel} -BuildRequires: zlib-devel +BuildRequires: xxHash-devel +BuildRequires: zlib-devel >= 1.2.12 +BuildRequires: zstd-devel +Requires(post): sed >= 4.0 Requires(post,preun): /sbin/chkconfig Requires(postun): /usr/sbin/groupdel Requires(postun): /usr/sbin/userdel @@ -103,27 +113,27 @@ Requires(pre): /bin/id Requires(pre): /usr/bin/getgid Requires(pre): /usr/sbin/groupadd Requires(pre): /usr/sbin/useradd -Requires(triggerpostun): sed >= 4.0 Requires: %{name}-charsets = %{version}-%{release} Requires: %{name}-libs = %{version}-%{release} Requires: /usr/bin/setsid Requires: rc-scripts >= 0.2.0 -Suggests: mysql-client +Suggests: %{name}-client %{?with_tcpd:Suggests: tcp_wrappers} Suggests: vim-syntax-mycnf Provides: MySQL-server Provides: group(mysql) Provides: msqlormysql Provides: user(mysql) -Obsoletes: MySQL -Obsoletes: mysql-server +Obsoletes: MySQL < 3.22.27 +Obsoletes: mysql-server < 4 Conflicts: logrotate < 3.8.0 -BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) +# "MySQL supports only 64-bit platforms." +BuildArch: %{x8664} %{arch64} +BuildRoot: %{tmpdir}/mysql-%{version}-root-%(id -u -n) -%define _orgname percona-server %define _libexecdir %{_sbindir} -%define _localstatedir /var/lib/mysql -%define _mysqlhome /home/services/mysql +%define _localstatedir /var/lib/%{name} +%define _mysqlhome /home/services/%{name} %description MySQL is a true multi-user, multi-threaded SQL (Structured Query @@ -230,6 +240,7 @@ MySQL - це SQL (Structured Query Language) сервер бази даних. M Summary: MySQL - character sets definitions Summary(pl.UTF-8): MySQL - definicje kodowań znaków Group: Applications/Databases +BuildArch: noarch %description charsets This package contains character sets definitions needed by both client @@ -239,32 +250,6 @@ and server. Ten pakiet zawiera definicje kodowań znaków potrzebne dla serwera i klienta. -%package -n mysqlhotcopy -Summary: mysqlhotcopy - A MySQL database backup program -Summary(pl.UTF-8): mysqlhotcopy - program do tworzenia kopii zapasowych baz MySQL -Group: Applications/Databases -Requires: perl-DBD-mysql - -%description -n mysqlhotcopy -mysqlhotcopy uses LOCK TABLES, FLUSH TABLES, and cp or scp to make a -database backup quickly. It is the fastest way to make a backup of the -database or single tables, but it can be run only on the same machine -where the database directories are located. mysqlhotcopy works only -for backing up MyISAM and ARCHIVE tables. - -See innobackup package to backup InnoDB tables. - -%description -n mysqlhotcopy -l pl.UTF-8 -mysqlhotcopy wykorzystuje LOCK TABLES, FLUSH TABLES oraz cp i scp do -szybkiego tworzenia kopii zapasowych baz danych. Jest to najszybszy -sposób wykonania kopii zapasowej bazy danych lub pojedynczych tabel, -ale może działać tylko na maszynie, na której znajdują się katalogi z -bazą danych. mysqlhotcopy działa tylko dla tabel typu MyISAM i -ARCHIVE. - -Narzędzie do tworzenia kopii tabel InnoDB znajduje się w pakiecie -innobackup. - %package extras Summary: MySQL additional utilities Summary(pl.UTF-8): Dodatkowe narzędzia do MySQL @@ -285,9 +270,7 @@ Summary: MySQL additional utilities written in Perl Summary(pl.UTF-8): Dodatkowe narzędzia do MySQL napisane w Perlu Group: Applications/Databases Requires: %{name}-extras = %{version}-%{release} -# this is just for the sake of smooth upgrade, not to break systems -Requires: mysqlhotcopy = %{version}-%{release} -Requires: perl(DBD::mysql) +Requires: perl-DBD-mysql %description extras-perl MySQL additional utilities written in Perl. @@ -305,7 +288,7 @@ Group: Applications/Databases Requires: %{name}-charsets = %{version}-%{release} Requires: %{name}-libs = %{version}-%{release} Requires: readline >= 6.2 -Obsoletes: MySQL-client +Obsoletes: MySQL-client < 3.22.27 %description client This package contains the standard MySQL clients. @@ -329,7 +312,8 @@ Este pacote contém os clientes padrão para o MySQL. Summary: Shared libraries for MySQL Summary(pl.UTF-8): Biblioteki współdzielone MySQL Group: Libraries -Obsoletes: libmysql10 +Requires: zlib >= 1.2.12 +Obsoletes: libmysql10 < 4 Obsoletes: mysql-doc < 4.1.12 %description libs @@ -346,10 +330,11 @@ Summary(ru.UTF-8): MySQL - хедеры и библиотеки разработ Summary(uk.UTF-8): MySQL - хедери та бібліотеки програміста Group: Development/Libraries Requires: %{name}-libs = %{version}-%{release} -%{?with_ssl:Requires: openssl-devel} -Requires: zlib-devel -Obsoletes: MySQL-devel -Obsoletes: libmysql10-devel +%{?with_ssl:Requires: openssl-devel >= 1.1.1} +Requires: zlib-devel >= 1.2.12 +Obsoletes: MySQL-devel < 3.22.27 +Obsoletes: libmysql10-devel < 4 +Obsoletes: webscalesql-devel %description devel This package contains the development header files and other files @@ -383,7 +368,7 @@ Summary(ru.UTF-8): MySQL - статические библиотеки Summary(uk.UTF-8): MySQL - статичні бібліотеки Group: Development/Libraries Requires: %{name}-devel = %{version}-%{release} -Obsoletes: MySQL-static +Obsoletes: MySQL-static < 3.22.27 %description static MySQL static libraries. @@ -408,8 +393,8 @@ Summary(uk.UTF-8): MySQL - бенчмарки Group: Applications/Databases Requires: %{name} = %{version}-%{release} Requires: %{name}-client -Requires: perl(DBD::mysql) -Obsoletes: MySQL-bench +Requires: perl-DBD-mysql +Obsoletes: MySQL-bench < 3.22.27 %description bench This package contains MySQL benchmark scripts and data. @@ -488,42 +473,32 @@ This package contains the standard MySQL NDB CPC Daemon. Ten pakiet zawiera standardowego demona MySQL NDB CPC. %prep -%setup -q -n percona-server-%{version}-%{percona_rel} %{?with_sphinx:-a100} +%setup -q %{?with_sphinx:-a100} %{!?with_system_boost:-a101} -n mysql-%{version} -# 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.* +#%patch0 -p1 +# FIXME +#%patch1 -p1 %if %{with sphinx} # http://www.sphinxsearch.com/docs/manual-0.9.9.html#sphinxse-mysql51 -mv sphinx-*/mysqlse storage/sphinx +%{__mv} sphinx-*/mysqlse storage/sphinx +%patch17 -p1 %patch18 -p1 %endif -%patch1 -p1 -%patch2 -p1 -%patch3 -p1 -%patch4 -p1 - -%patch6 -p1 - -%patch9 -p1 -%patch11 -p1 -%patch12 -p1 -%patch14 -p0 -%patch19 -p1 -%patch20 -p1 -%patch21 -p1 -%patch22 -p1 -%patch23 -p1 + %patch24 -p1 %patch25 -p1 +#%patch26 -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 +[ -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 +# ensure sytstem lib +# need to keep xxhash.[ch] +# FIXME +#%{__rm} -rv extra/lz4/lz4** %build install -d build @@ -532,33 +507,47 @@ cd build # (it defaults to first cluster but user may change it to whatever # cluster it wants) -%cmake \ +CPPFLAGS="%{rpmcppflags}" \ +%cmake .. \ + -DCMAKE_EXECUTABLE_SUFFIX=string:%{majorver} \ -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" \ + -DCMAKE_C_FLAGS_RELWITHDEBINFO="%{rpmcflags} -DNDEBUG -fno-omit-frame-pointer -fno-strict-aliasing" \ + -DCMAKE_CXX_FLAGS_RELWITHDEBINFO="%{rpmcxxflags} -DNDEBUG -fno-omit-frame-pointer -fno-strict-aliasing" \ -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_PRIV_LIBDIR=%{_libdir}/%{name}/private \ -DINSTALL_MYSQLTESTDIR_RPM="" \ - -DINSTALL_PLUGINDIR=%{_libdir}/%{name}/plugin \ + -DINSTALL_PLUGINDIR=%{_lib}/%{name}/plugin \ + -DINSTALL_SECURE_FILE_PRIVDIR=/var/lib/%{name}-files \ -DINSTALL_SQLBENCHDIR=%{_datadir} \ - -DINSTALL_SUPPORTFILESDIR=%{_datadir}/%{_orgname}-support \ - -DMYSQL_UNIX_ADDR=/var/lib/%{name}/%{name}.sock \ + -DINSTALL_SUPPORTFILESDIR=share/%{name}-support \ + -DINSTALL_MYSQLSHAREDIR=share/%{name} \ + -DROUTER_INSTALL_LIBDIR=%{_libdir}/%{name}router/private \ + -DROUTER_INSTALL_PLUGINDIR=%{_libdir}/%{name}router \ + -DMYSQL_UNIX_ADDR=/var/lib/%{name}/mysql.sock \ %{?debug:-DWITH_DEBUG=ON} \ -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \ - -DWITH_FAST_MUTEXES=ON \ + %{!?with_ldap:-DWITH_AUTHENTICATION_LDAP=OFF} \ -DWITH_LIBWRAP=%{?with_tcpd:ON}%{!?with_tcpd:OFF} \ - -DWITH_PAM=ON \ -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \ -DWITH_PIC=ON \ - -DWITH_EDITLINE=system \ + %{?with_ldap:-DWITH_LDAP=system} \ + -DWITH_KERBEROS=system \ + -DWITH_LIBEVENT=system \ + -DWITH_LZ4=system \ + -DWITH_PROTOBUF=system \ + -DWITH_SASL=system \ + -DWITH_UNIT_TESTS=%{?with_tests:ON}%{!?with_tests:OFF} \ -DWITH_SSL=%{?with_ssl:system}%{!?with_ssl:no} \ - -DWITH_UNIT_TESTS=%{?with_tests:ON}%{!?with_tests:OFF} \ + %{!?with_system_boost:-DWITH_BOOST="$(pwd)/$(ls -1d ../boost_*)"} \ -DWITH_ZLIB=system \ - .. + -DWITH_EDITLINE=system \ + -DWITH_MECAB=system \ + -DTMPDIR=/var/tmp %{__make} @@ -566,22 +555,25 @@ cd build %install 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} \ +install -d $RPM_BUILD_ROOT/etc/{logrotate.d,rc.d/init.d,sysconfig,%{name},skel} \ + $RPM_BUILD_ROOT/var/{log/{archive,}/%{name},lib/{%{name},%{name}-files}} \ $RPM_BUILD_ROOT%{_mysqlhome} \ $RPM_BUILD_ROOT%{_libdir} %{__make} -C build install \ DESTDIR=$RPM_BUILD_ROOT -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 +sed -e 's#{MYSQL_MAJOR}#%{majorver}#g' %{SOURCE1} > $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name} + +cp -a %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/%{name} +sed -e 's#{MYSQL_MAJOR}#%{majorver}#g' %{SOURCE3} > $RPM_BUILD_ROOT/etc/logrotate.d/%{name} # This is template for configuration file which is created after 'service mysql init' -cp -a %{SOURCE4} mysqld.conf -cp -a %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/clusters.conf +sed -e 's#{MYSQL_MAJOR}#%{majorver}#g' %{SOURCE4} > mysqld.conf +sed -e 's#{MYSQL_MAJOR}#%{majorver}#g' %{SOURCE5} > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/clusters.conf touch $RPM_BUILD_ROOT/var/log/%{name}/{mysqld,query,slow}.log +mv $RPM_BUILD_ROOT/etc/logrotate.d/{mysqlrouter,%{name}router} + # remove innodb directives from mysqld.conf if mysqld is configured without %if %{without innodb} cp mysqld.conf mysqld.tmp @@ -592,19 +584,19 @@ 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}/%{_orgname}/mysqld.conf +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 %if %{with ndb} -install -p %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/mysql-ndb -cp -a %{SOURCE8} $RPM_BUILD_ROOT/etc/sysconfig/mysql-ndb -install -p %{SOURCE9} $RPM_BUILD_ROOT/etc/rc.d/init.d/mysql-ndb-mgm -cp -a %{SOURCE10} $RPM_BUILD_ROOT/etc/sysconfig/mysql-ndb-mgm -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 +install -p %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}-ndb +cp -a %{SOURCE8} $RPM_BUILD_ROOT/etc/sysconfig/%{name}-ndb +install -p %{SOURCE9} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}-ndb-mgm +cp -a %{SOURCE10} $RPM_BUILD_ROOT/etc/sysconfig/%{name}-ndb-mgm +install -p %{SOURCE11} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}-ndb-cpc +cp -a %{SOURCE12} $RPM_BUILD_ROOT/etc/sysconfig/%{name}-ndb-cpc %endif sed -i -e 's,/usr//usr,%{_prefix},g' $RPM_BUILD_ROOT%{_bindir}/mysql_config @@ -612,83 +604,81 @@ 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}/%{_orgname}-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 -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} # generate symbols file, so one can generate backtrace using it -# mysql_resolve_stack_dump -s %{_datadir}/%{_orgname}/mysqld.sym -n mysqld.stack. +# mysql_resolve_stack_dump -s %{_datadir}/%{name}/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}/%{_orgname}/mysqld.sym} +%{?debug:nm -n $RPM_BUILD_ROOT%{_sbindir}/mysqld > $RPM_BUILD_ROOT%{_datadir}/%{name}/mysqld.sym} # do not clobber users $PATH -mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/mysql_plugin -mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/mysql_upgrade -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 +%{__mv} $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/mysql_upgrade +%{__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 +%{__mv} $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/mysqlcheck # delete - functionality in initscript / rpm # note: mysql_install_db (and thus resolveip) are needed by digikam %{__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}/%{_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%{_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%{_mandir}/man1/mysql.server* %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysqlman.1* %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/comp_err.1* # we don't package those (we have no -test or -testsuite pkg) and some of them just segfault -%{__rm} $RPM_BUILD_ROOT%{_bindir}/mysql_client_test -%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysql_client_test.1* -%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysql_client_test_embedded.1* -%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysql-stress-test.pl.1* -%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysql-test-run.pl.1* +%{__rm} $RPM_BUILD_ROOT%{_bindir}/{mysql_client_test,mysqlxtest} +%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/plugin/test_udf_services.so +%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/plugin/component_test_udf_services.so %{__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 +# test plugins +%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/plugin/libtest*.so +%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/plugin/rewrite_example.so +%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/plugin/test_security_context.so + +# fix names for parallel coinstallation +for f in $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/* ; do + fb=$(basename "$f") + mv "${f}" "${f}%{majorver}" + for m in $RPM_BUILD_ROOT%{_mandir}/man*; do + mnr=$(echo -n $m | tail -c 1) + if [ -f "${m}/${fb}.${mnr}" ]; then + mv "${m}/${fb}.${mnr}" "$m/${fb}%{majorver}.${mnr}" + fi + done +done %clean rm -rf $RPM_BUILD_ROOT %pre %groupadd -g 89 mysql -%useradd -u 89 -d %{_mysqlhome} -s /bin/sh -g mysql -c "MySQL Server" mysql +%useradd -u 89 -d %{_mysqlhome} -s /bin/false -g mysql -c "%{name} Server" mysql %post /sbin/ldconfig -/sbin/chkconfig --add mysql -%service mysql restart +/sbin/chkconfig --add %{name} +%service %{name} restart %preun if [ "$1" = "0" ]; then - %service -q mysql stop - /sbin/chkconfig --del mysql + %service -q %{name} stop + /sbin/chkconfig --del %{name} fi %postun @@ -699,351 +689,242 @@ if [ "$1" = "0" ]; then fi %post ndb -/sbin/chkconfig --add mysql-ndb -%service mysql-ndb restart "mysql NDB engine" +/sbin/chkconfig --add %{name}-ndb +%service %{name}-ndb restart "%{name} NDB engine" %preun ndb if [ "$1" = "0" ]; then - %service mysql-ndb stop - /sbin/chkconfig --del mysql-ndb + %service %{name}-ndb stop + /sbin/chkconfig --del %{name}-ndb fi %post ndb-mgm -/sbin/chkconfig --add mysql-ndb-mgm -%service mysql-ndb-mgm restart "mysql NDB management node" +/sbin/chkconfig --add %{name}-ndb-mgm +%service %{name}-ndb-mgm restart "%{name} NDB management node" %preun ndb-mgm if [ "$1" = "0" ]; then - %service mysql-ndb-mgm stop - /sbin/chkconfig --del mysql-ndb-mgm + %service %{name}-ndb-mgm stop + /sbin/chkconfig --del %{name}-ndb-mgm fi %post ndb-cpc -/sbin/chkconfig --add mysql-ndb-cpc -%service mysql-ndb-cpc restart "mysql NDB CPC" +/sbin/chkconfig --add %{name}-ndb-cpc +%service %{name}-ndb-cpc restart "%{name} NDB CPC" %preun ndb-cpc if [ "$1" = "0" ]; then - %service mysql-ndb-cpc stop - /sbin/chkconfig --del mysql-ndb-cpc + %service %{name}-ndb-cpc stop + /sbin/chkconfig --del %{name}-ndb-cpc fi -%post libs -p /sbin/ldconfig -%postun libs -p /sbin/ldconfig - -%triggerpostun -- mysql < 4.0.20-2.4 -# For clusters in /etc/%{name}/clusters.conf -if [ -f /etc/sysconfig/mysql ]; then - . /etc/sysconfig/mysql - if [ -n "$MYSQL_DB_CLUSTERS" ]; then - for i in "$MYSQL_DB_CLUSTERS"; do - echo "$i/mysqld.conf=$i" >> /etc/%{name}/clusters.conf - done - echo "# Do not use **obsolete** option MYSQL_DB_CLUSTERS" >> /etc/sysconfig/mysql - echo "# USE /etc/%{name}/clusters.conf instead" >> /etc/sysconfig/mysql - echo "Converted clusters from MYSQL_DB_CLUSTERS to /etc/%{name}/clusters.conf." - echo "You NEED to fix your /etc/sysconfig/mysql and verify /etc/%{name}/clusters.conf." - fi -fi - -%triggerpostun -- mysql < 4.1.1 -# For better compatibility with prevoius versions: -for config in $(awk -F= '!/^#/ && /=/{print $1}' /etc/%{name}/clusters.conf); do - if echo "$config" | grep -q '^/'; then - config_file="$config" - elif [ -f "/etc/%{name}/$config" ]; then - config_file=/etc/%{name}/$config - else - clusterdir=$(awk -F= "/^$config/{print \$2}" /etc/%{name}/clusters.conf) - if [ -z "$clusterdir" ]; then - echo >&2 "Can't find cluster dir for $config!" - echo >&2 "Please remove extra (leading) spaces from /etc/%{name}/clusters.conf" - exit 1 - fi - config_file="$clusterdir/mysqld.conf" - fi - - if [ ! -f "$config_file" ]; then - 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" - echo "If you want to use new, better passwords - remove it" - - # sed magic to add 'old-passwords' to [mysqld] section - sed -i -e '/./{H;$!d;};x;/\[mysqld\]/{ - a - a; Compatibility options: - aold-passwords - } - ' $config_file -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}/%{_orgname}/fill_help_tables.sql -EOF -#' - -%triggerpostun -- mysql < 5.1.0 -configs="" -for config in $(awk -F= '!/^#/ && /=/{print $1}' /etc/%{name}/clusters.conf); do - if echo "$config" | grep -q '^/'; then - config_file="$config" - elif [ -f "/etc/%{name}/$config" ]; then - config_file=/etc/%{name}/$config - else - clusterdir=$(awk -F= "/^$config/{print \$2}" /etc/%{name}/clusters.conf) - if [ -z "$clusterdir" ]; then - echo >&2 "Can't find cluster dir for $config!" - echo >&2 "Please remove extra (leading) spaces from /etc/%{name}/clusters.conf" - exit 1 - fi - config_file="$clusterdir/mysqld.conf" - 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/" - continue - fi - configs="$configs $config_file" -done - -( -echo 'You should run MySQL upgrade script *after* restarting MySQL server for all MySQL clusters.' -echo 'Thus, you should invoke:' -for config in $configs; do - sed -i -e ' - s/set-variable\s*=\s* // - # use # as comment in config - s/^;/#/ - ' $config - - datadir=$(awk -F= '!/^#/ && $1 ~ /datadir/{print $2}' $config | xargs) - echo "# mysql_upgrade --datadir=$datadir" -done -) | %banner -e %{name}-5.1 - -%triggerpostun -- mysql < 5.5.0 -configs="" -for config in $(awk -F= '!/^#/ && /=/{print $1}' /etc/%{name}/clusters.conf); do - if echo "$config" | grep -q '^/'; then - config_file="$config" - elif [ -f "/etc/%{name}/$config" ]; then - config_file=/etc/%{name}/$config - else - clusterdir=$(awk -F= "/^$config/{print \$2}" /etc/%{name}/clusters.conf) - if [ -z "$clusterdir" ]; then - echo >&2 "Can't find cluster dir for $config!" - echo >&2 "Please remove extra (leading) spaces from /etc/%{name}/clusters.conf" - exit 1 - fi - config_file="$clusterdir/mysqld.conf" - 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/" - continue - fi - configs="$configs $config_file" -done - -( -echo 'You should run MySQL upgrade script *after* restarting MySQL server for all MySQL clusters.' -echo 'Thus, you should invoke:' -for config in $configs; do - sed -i -e ' - s/^language *= *polish/lc-messages = pl_PL/i - s/set-variable\s*=\s* // - s/^skip-locking/skip-external-locking/ - # this is not valid for server. it is client option - s/^default-character-set/# client-config: &/ - # use # as comment in config - s/^;/#/ - ' $config - - socket=$(awk -F= '!/^#/ && $1 ~ /socket/{print $2}' $config | xargs) - echo "# mysql_upgrade ${socket:+--socket=$socket}" -done -) | %banner -e %{name}-5.5 +%post libs -p /sbin/ldconfig +%postun libs -p /sbin/ldconfig %files %defattr(644,root,root,755) -%doc build/support-files/*.cnf %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name} +%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name}router %attr(754,root,root) /etc/rc.d/init.d/%{name} %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name} %attr(640,root,mysql) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/clusters.conf -%attr(755,root,root) %{_sbindir}/innochecksum -%attr(755,root,root) %{_sbindir}/my_print_defaults -%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 -%attr(755,root,root) %{_sbindir}/mysqld +%attr(755,root,root) %{_bindir}/ibd2sdi%{majorver} +%attr(755,root,root) %{_bindir}/mysql_migrate_keyring%{majorver} +%attr(755,root,root) %{_bindir}/mysqlrouter%{majorver} +%attr(755,root,root) %{_bindir}/mysqlrouter_keyring%{majorver} +%attr(755,root,root) %{_bindir}/mysqlrouter_passwd%{majorver} +%attr(755,root,root) %{_bindir}/mysqlrouter_plugin_info%{majorver} +%attr(755,root,root) %{_sbindir}/innochecksum%{majorver} +%attr(755,root,root) %{_sbindir}/my_print_defaults%{majorver} +%attr(755,root,root) %{_sbindir}/myisamchk%{majorver} +%attr(755,root,root) %{_sbindir}/myisamlog%{majorver} +%attr(755,root,root) %{_sbindir}/myisampack%{majorver} +%attr(755,root,root) %{_sbindir}/mysql_upgrade%{majorver} +%attr(755,root,root) %{_sbindir}/mysqlcheck%{majorver} +%attr(755,root,root) %{_sbindir}/mysqld%{majorver} + %dir %{_libdir}/%{name} %dir %{_libdir}/%{name}/plugin %attr(755,root,root) %{_libdir}/%{name}/plugin/adt_null.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/authentication_fido_client.so +#%{?with_ldap:%attr(755,root,root) %{_libdir}/%{name}/plugin/authentication_ldap_sasl_client.so} +#%attr(755,root,root) %{_libdir}/%{name}/plugin/authentication_oci_client.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_audit_api_message_emit.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_keyring_file.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_log_filter_dragnet.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_log_sink_json.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_log_sink_syseventlog.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_mysqlbackup.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_mysqlx_global_reset.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_pfs_example.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_pfs_example_component_population.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_query_attributes.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_reference_cache.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_udf_*_func.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_validate_password.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/conflicting_variables.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/connection_control.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/ddl_rewriter.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/group_replication.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/ha_mock.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/keyring_file.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/keyring_udf.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/libpluginmecab.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/locking_service.so %attr(755,root,root) %{_libdir}/%{name}/plugin/mypluglib.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/mysql_clone.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/mysql_no_login.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/replication_observers_example_plugin.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/rewriter.so %attr(755,root,root) %{_libdir}/%{name}/plugin/semisync_master.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/semisync_replica.so %attr(755,root,root) %{_libdir}/%{name}/plugin/semisync_slave.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/semisync_source.so %attr(755,root,root) %{_libdir}/%{name}/plugin/validate_password.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/version_token.so %if %{with sphinx} %attr(755,root,root) %{_libdir}/%{name}/plugin/ha_sphinx.so %endif -# for plugins -%attr(755,root,root) %{_libdir}/libmysqlservices.so -%{_mandir}/man1/innochecksum.1* -%{_mandir}/man1/my_print_defaults.1* -%{_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* -%{_mandir}/man8/mysqld.8* +%dir %{_libdir}/%{name}/private +%{_libdir}/%{name}/private/icudt*l +%dir %{_libdir}/%{name}router +%attr(755,root,root) %{_libdir}/%{name}router/connection_pool.so +%attr(755,root,root) %{_libdir}/%{name}router/destination_status.so +%attr(755,root,root) %{_libdir}/%{name}router/http_auth_backend.so +%attr(755,root,root) %{_libdir}/%{name}router/http_auth_realm.so +%attr(755,root,root) %{_libdir}/%{name}router/http_server.so +%attr(755,root,root) %{_libdir}/%{name}router/io.so +%attr(755,root,root) %{_libdir}/%{name}router/keepalive.so +%attr(755,root,root) %{_libdir}/%{name}router/metadata_cache.so +%attr(755,root,root) %{_libdir}/%{name}router/rest_api.so +%attr(755,root,root) %{_libdir}/%{name}router/rest_connection_pool.so +%attr(755,root,root) %{_libdir}/%{name}router/rest_metadata_cache.so +%attr(755,root,root) %{_libdir}/%{name}router/rest_router.so +%attr(755,root,root) %{_libdir}/%{name}router/rest_routing.so +%attr(755,root,root) %{_libdir}/%{name}router/router_openssl.so +%attr(755,root,root) %{_libdir}/%{name}router/router_protobuf.so +%attr(755,root,root) %{_libdir}/%{name}router/routing.so +%dir %{_libdir}/%{name}router/private +%attr(755,root,root) %{_libdir}/%{name}router/private/libmysqlharness*.so* +%attr(755,root,root) %{_libdir}/%{name}router/private/libmysqlrouter*.so* +%{_mandir}/man1/ibd2sdi%{majorver}.1* +%{_mandir}/man1/innochecksum%{majorver}.1* +%{_mandir}/man1/my_print_defaults%{majorver}.1* +%{_mandir}/man1/myisamchk%{majorver}.1* +%{_mandir}/man1/myisamlog%{majorver}.1* +%{_mandir}/man1/myisampack%{majorver}.1* +%{_mandir}/man1/mysql_upgrade%{majorver}.1* +%{_mandir}/man1/mysqlcheck%{majorver}.1* +%{_mandir}/man1/mysqlrouter%{majorver}.1* +%{_mandir}/man1/mysqlrouter_passwd%{majorver}.1* +%{_mandir}/man1/mysqlrouter_plugin_info%{majorver}.1* +%{_mandir}/man8/mysqld%{majorver}.8* %if %{?debug:1}0 %attr(755,root,root) %{_bindir}/*resolve_stack_dump -%{_datadir}/%{_orgname}/mysqld.sym +%{_datadir}/%{name}/mysqld.sym %{_mandir}/man1/*resolve_stack_dump.1* %endif %attr(700,mysql,mysql) %{_mysqlhome} # root:root is proper here for mysql.rpm while mysql:mysql is potential security hole -%attr(751,root,root) /var/lib/mysql -%attr(750,mysql,mysql) %dir /var/log/mysql -%attr(750,mysql,mysql) %dir /var/log/archive/mysql -%attr(640,mysql,mysql) %ghost /var/log/mysql/* +%attr(751,root,root) /var/lib/%{name} +%attr(750,mysql,mysql) %dir /var/lib/%{name}-files +%attr(750,mysql,mysql) %dir /var/log/%{name} +%attr(750,mysql,mysql) %dir /var/log/archive/%{name} +%attr(640,mysql,mysql) %ghost /var/log/%{name}/* # This is template for configuration file which is created after 'service mysql init' -%{_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 +%{_datadir}/%{name}/mysqld.conf + +%{_datadir}/%{name}/english +%{_datadir}/%{name}/dictionary.txt +%{_datadir}/%{name}/messages_to_clients.txt +%{_datadir}/%{name}/messages_to_error_log.txt +%{_datadir}/%{name}/install_rewriter.sql +%{_datadir}/%{name}/uninstall_rewriter.sql +# Don't mark these with %%lang. These are used depending +# on database client settings. +%{_datadir}/%{name}/bulgarian +%{_datadir}/%{name}/czech +%{_datadir}/%{name}/danish +%{_datadir}/%{name}/german +%{_datadir}/%{name}/greek +%{_datadir}/%{name}/spanish +%{_datadir}/%{name}/estonian +%{_datadir}/%{name}/french +%{_datadir}/%{name}/hungarian +%{_datadir}/%{name}/italian +%{_datadir}/%{name}/japanese +%{_datadir}/%{name}/korean +%{_datadir}/%{name}/dutch +%{_datadir}/%{name}/norwegian +%{_datadir}/%{name}/norwegian-ny +%{_datadir}/%{name}/polish +%{_datadir}/%{name}/portuguese +%{_datadir}/%{name}/romanian +%{_datadir}/%{name}/russian +%{_datadir}/%{name}/serbian +%{_datadir}/%{name}/slovak +%{_datadir}/%{name}/swedish +%{_datadir}/%{name}/ukrainian %files charsets %defattr(644,root,root,755) -%dir %{_datadir}/%{_orgname} -%{_datadir}/%{_orgname}/charsets +%dir %{_datadir}/%{name} +%{_datadir}/%{name}/charsets %files extras %defattr(644,root,root,755) -%attr(755,root,root) %{_bindir}/msql2mysql -%attr(755,root,root) %{_bindir}/myisam_ftdump -%attr(755,root,root) %{_bindir}/mysql_install_db -%attr(755,root,root) %{_bindir}/mysql_secure_installation -%attr(755,root,root) %{_bindir}/mysql_tzinfo_to_sql -%attr(755,root,root) %{_bindir}/perror -%attr(755,root,root) %{_bindir}/replace -%attr(755,root,root) %{_bindir}/resolveip -%{_mandir}/man1/msql2mysql.1* -%{_mandir}/man1/myisam_ftdump.1* -%{_mandir}/man1/mysql_install_db.1* -%{_mandir}/man1/mysql_secure_installation.1* -%{_mandir}/man1/mysql_tzinfo_to_sql.1* -%{_mandir}/man1/perror.1* -%{_mandir}/man1/replace.1* -%{_mandir}/man1/resolveip.1* - -%files -n mysqlhotcopy -%defattr(644,root,root,755) -%attr(755,root,root) %{_bindir}/mysqlhotcopy -%{_mandir}/man1/mysqlhotcopy.1* +%attr(755,root,root) %{_bindir}/myisam_ftdump%{majorver} +%attr(755,root,root) %{_bindir}/mysql_secure_installation%{majorver} +%attr(755,root,root) %{_bindir}/mysql_ssl_rsa_setup%{majorver} +%attr(755,root,root) %{_bindir}/mysql_tzinfo_to_sql%{majorver} +%attr(755,root,root) %{_bindir}/perror%{majorver} +%{_mandir}/man1/myisam_ftdump%{majorver}.1* +%{_mandir}/man1/mysql_ssl_rsa_setup%{majorver}.1* +%{_mandir}/man1/mysql_secure_installation%{majorver}.1* +%{_mandir}/man1/mysql_tzinfo_to_sql%{majorver}.1* +%{_mandir}/man1/perror%{majorver}.1* %files extras-perl %defattr(644,root,root,755) -%attr(755,root,root) %{_bindir}/mysql_convert_table_format -%attr(755,root,root) %{_bindir}/mysql_find_rows -%attr(755,root,root) %{_bindir}/mysql_fix_extensions -%attr(755,root,root) %{_bindir}/mysql_setpermission -%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* -%{_mandir}/man1/mysql_setpermission.1* -%{_mandir}/man1/mysql_zap.1* -%{_mandir}/man1/mysqlaccess.1* -%{_mandir}/man1/mysqldumpslow.1* +%attr(755,root,root) %{_bindir}/mysqldumpslow%{majorver} +%{_mandir}/man1/mysqldumpslow%{majorver}.1* %files client %defattr(644,root,root,755) -%attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/skel/.my.cnf -%attr(755,root,root) %{_bindir}/mysql -%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 -%{_mandir}/man1/mysql.1* -%{_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* +%attr(600,root,root) %config(noreplace,missingok) %verify(not md5 mtime size) /etc/skel/.my.cnf +%attr(755,root,root) %{_bindir}/mysql%{majorver} +%attr(755,root,root) %{_bindir}/mysqladmin%{majorver} +%attr(755,root,root) %{_bindir}/mysqlbinlog%{majorver} +%attr(755,root,root) %{_bindir}/mysql_config_editor%{majorver} +%attr(755,root,root) %{_bindir}/mysqldump%{majorver} +%attr(755,root,root) %{_bindir}/mysqlimport%{majorver} +%attr(755,root,root) %{_bindir}/mysqlpump%{majorver} +%attr(755,root,root) %{_bindir}/mysqlshow%{majorver} +%{_mandir}/man1/mysql%{majorver}.1* +%{_mandir}/man1/mysqladmin%{majorver}.1* +%{_mandir}/man1/mysqlbinlog%{majorver}.1* +%{_mandir}/man1/mysql_config_editor%{majorver}.1* +%{_mandir}/man1/mysqldump%{majorver}.1* +%{_mandir}/man1/mysqlimport%{majorver}.1* +%{_mandir}/man1/mysqlpump%{majorver}.1* +%{_mandir}/man1/mysqlshow%{majorver}.1* %files libs %defattr(644,root,root,755) -%attr(751,root,root) %dir %{_sysconfdir}/mysql +%attr(751,root,root) %dir %{_sysconfdir}/%{name} %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.*.*.* -%attr(755,root,root) %ghost %{_libdir}/libmysqlclient_r.so.18 +%attr(755,root,root) %ghost %{_libdir}/libmysqlclient.so.22 %if %{with ndb} %attr(755,root,root) %{_libdir}/libndbclient.so.*.*.* %attr(755,root,root) %ghost %{_libdir}/libndbclient.so.3 @@ -1051,36 +932,72 @@ done %files devel %defattr(644,root,root,755) -%attr(755,root,root) %{_bindir}/mysql_config +%attr(755,root,root) %{_bindir}/mysql_config%{majorver} %attr(755,root,root) %{_libdir}/libmysqlclient.so -%attr(755,root,root) %{_libdir}/libmysqlclient_r.so %if %{with ndb} %attr(755,root,root) %{_libdir}/libndbclient.so %endif -# static-only so far -%{_libdir}/libmysqld.a +%{_pkgconfigdir}/mysqlclient.pc +%{_libdir}/libmysqlservices.a %{_includedir}/mysql %{_aclocaldir}/mysql.m4 -%{_mandir}/man1/mysql_config.1* +%{_mandir}/man1/mysql_config%{majorver}.1* %files static %defattr(644,root,root,755) %{_libdir}/libmysqlclient.a -%{_libdir}/libmysqlclient_r.a %if %{with ndb} %{_libdir}/libndbclient.a %endif +# rename to test or split? %files bench %defattr(644,root,root,755) -%attr(755,root,root) %{_bindir}/mysqlslap -%attr(755,root,root) %{_bindir}/mysqltest -%dir %{_datadir}/sql-bench -%{_datadir}/sql-bench/[CDRl]* -%attr(755,root,root) %{_datadir}/sql-bench/[bcgirst]* -%{_mandir}/man1/mysqlslap.1* -%{_mandir}/man1/mysqltest.1* -%{_mandir}/man1/mysqltest_embedded.1* +%attr(755,root,root) %{_bindir}/comp_err%{majorver} +%attr(755,root,root) %{_bindir}/mysql_keyring_encryption_test%{majorver} +%attr(755,root,root) %{_bindir}/mysqlslap%{majorver} +%attr(755,root,root) %{_bindir}/mysqltest%{majorver} +%attr(755,root,root) %{_bindir}/mysqltest_safe_process%{majorver} +%attr(755,root,root) %{_bindir}/zlib_decompress%{majorver} +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_example_component1.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_example_component2.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_example_component3.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_log_sink_test.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_audit_api_message.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_backup_lock_service.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_component_deinit.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_host_application_signal.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_mysql_current_thread_reader.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_mysql_runtime_error.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_mysql_system_variable_set.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_pfs_notification.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_pfs_resource_group.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_sensitive_system_variables.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_status_var_service.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_status_var_service_int.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_status_var_service_reg_only.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_status_var_service_str.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_status_var_service_unreg_only.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_string_service.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_string_service_charset.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_string_service_long.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_sys_var_service.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_sys_var_service_int.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_sys_var_service_same.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_sys_var_service_str.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_system_variable_source.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_table_access.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/component_test_udf_registration.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/pfs_example_plugin_employee.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/test_services_host_application_signal.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/test_services_plugin_registry.so +%attr(755,root,root) %{_libdir}/%{name}/plugin/udf_example.so +#%dir %{_datadir}/sql-bench +#%{_datadir}/sql-bench/[CDRl]* +#%attr(755,root,root) %{_datadir}/sql-bench/[bcgirst]* +%{_mandir}/man1/lz4_decompress.1* +%{_mandir}/man1/mysqlslap%{majorver}.1* +%{_mandir}/man1/zlib_decompress%{majorver}.1* #%files doc #%defattr(644,root,root,755) @@ -1089,59 +1006,59 @@ done %if %{with ndb} %files ndb %defattr(644,root,root,755) -%attr(755,root,root) %{_sbindir}/ndbd -%attr(754,root,root) /etc/rc.d/init.d/mysql-ndb +%attr(755,root,root) %{_sbindir}/ndbd%{majorver} +%attr(754,root,root) /etc/rc.d/init.d/%{name}-ndb %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/mysql-ndb -%{_mandir}/man1/ndbd_redo_log_reader.1* -%{_mandir}/man8/ndbd.8* +%{_mandir}/man1/ndbd_redo_log_reader%{majorver}.1* +%{_mandir}/man8/ndbd%{majorver}.8* %files ndb-client %defattr(644,root,root,755) -%attr(755,root,root) %{_bindir}/ndb_config -%attr(755,root,root) %{_bindir}/ndb_delete_all -%attr(755,root,root) %{_bindir}/ndb_desc -%attr(755,root,root) %{_bindir}/ndb_drop_index -%attr(755,root,root) %{_bindir}/ndb_drop_table -%attr(755,root,root) %{_bindir}/ndb_error_reporter -%attr(755,root,root) %{_bindir}/ndb_mgm -%attr(755,root,root) %{_bindir}/ndb_print_backup_file -%attr(755,root,root) %{_bindir}/ndb_print_schema_file -%attr(755,root,root) %{_bindir}/ndb_print_sys_file -%attr(755,root,root) %{_bindir}/ndb_restore -%attr(755,root,root) %{_bindir}/ndb_select_all -%attr(755,root,root) %{_bindir}/ndb_select_count -%attr(755,root,root) %{_bindir}/ndb_show_tables -%attr(755,root,root) %{_bindir}/ndb_size.pl -%attr(755,root,root) %{_bindir}/ndb_test_platform -%attr(755,root,root) %{_bindir}/ndb_waiter -%{_mandir}/man1/ndb_config.1* -%{_mandir}/man1/ndb_delete_all.1* -%{_mandir}/man1/ndb_desc.1* -%{_mandir}/man1/ndb_drop_index.1* -%{_mandir}/man1/ndb_drop_table.1* -%{_mandir}/man1/ndb_error_reporter.1* -%{_mandir}/man1/ndb_mgm.1* -%{_mandir}/man1/ndb_print_backup_file.1* -%{_mandir}/man1/ndb_print_schema_file.1* -%{_mandir}/man1/ndb_print_sys_file.1* -%{_mandir}/man1/ndb_restore.1* -%{_mandir}/man1/ndb_select_all.1* -%{_mandir}/man1/ndb_select_count.1* -%{_mandir}/man1/ndb_show_tables.1* -%{_mandir}/man1/ndb_size.pl.1* -%{_mandir}/man1/ndb_waiter.1* +%attr(755,root,root) %{_bindir}/ndb_config%{majorver} +%attr(755,root,root) %{_bindir}/ndb_delete_all%{majorver} +%attr(755,root,root) %{_bindir}/ndb_desc%{majorver} +%attr(755,root,root) %{_bindir}/ndb_drop_index%{majorver} +%attr(755,root,root) %{_bindir}/ndb_drop_table%{majorver} +%attr(755,root,root) %{_bindir}/ndb_error_reporter%{majorver} +%attr(755,root,root) %{_bindir}/ndb_mgm%{majorver} +%attr(755,root,root) %{_bindir}/ndb_print_backup_file%{majorver} +%attr(755,root,root) %{_bindir}/ndb_print_schema_file%{majorver} +%attr(755,root,root) %{_bindir}/ndb_print_sys_file%{majorver} +%attr(755,root,root) %{_bindir}/ndb_restore%{majorver} +%attr(755,root,root) %{_bindir}/ndb_select_all%{majorver} +%attr(755,root,root) %{_bindir}/ndb_select_count%{majorver} +%attr(755,root,root) %{_bindir}/ndb_show_tables%{majorver} +%attr(755,root,root) %{_bindir}/ndb_size.pl%{majorver} +%attr(755,root,root) %{_bindir}/ndb_test_platform%{majorver} +%attr(755,root,root) %{_bindir}/ndb_waiter%{majorver} +%{_mandir}/man1/ndb_config%{majorver}.1* +%{_mandir}/man1/ndb_delete_all%{majorver}.1* +%{_mandir}/man1/ndb_desc%{majorver}.1* +%{_mandir}/man1/ndb_drop_index%{majorver}.1* +%{_mandir}/man1/ndb_drop_table%{majorver}.1* +%{_mandir}/man1/ndb_error_reporter%{majorver}.1* +%{_mandir}/man1/ndb_mgm%{majorver}.1* +%{_mandir}/man1/ndb_print_backup_file%{majorver}.1* +%{_mandir}/man1/ndb_print_schema_file%{majorver}.1* +%{_mandir}/man1/ndb_print_sys_file%{majorver}.1* +%{_mandir}/man1/ndb_restore%{majorver}.1* +%{_mandir}/man1/ndb_select_all%{majorver}.1* +%{_mandir}/man1/ndb_select_count%{majorver}.1* +%{_mandir}/man1/ndb_show_tables%{majorver}.1* +%{_mandir}/man1/ndb_size.pl%{majorver}.1* +%{_mandir}/man1/ndb_waiter%{majorver}.1* %files ndb-mgm %defattr(644,root,root,755) -%attr(755,root,root) %{_sbindir}/ndb_mgmd -%attr(754,root,root) /etc/rc.d/init.d/mysql-ndb-mgm +%attr(755,root,root) %{_sbindir}/ndb_mgmd%{majorver} +%attr(754,root,root) /etc/rc.d/init.d/%{name}-ndb-mgm %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/mysql-ndb-mgm -%{_mandir}/man8/ndb_mgmd.8* +%{_mandir}/man8/ndb_mgmd%{majorver}.8* %files ndb-cpc %defattr(644,root,root,755) -%attr(755,root,root) %{_sbindir}/ndb_cpcd -%attr(754,root,root) /etc/rc.d/init.d/mysql-ndb-cpc +%attr(755,root,root) %{_sbindir}/ndb_cpcd%{majorver} +%attr(754,root,root) /etc/rc.d/init.d/%{name}-ndb-cpc %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/mysql-ndb-cpc -%{_mandir}/man1/ndb_cpcd.1* +%{_mandir}/man1/ndb_cpcd%{majorver}.1* %endif