diff options
author | unknown <lenz@mysql.com> | 2002-05-03 12:31:25 +0200 |
---|---|---|
committer | unknown <lenz@mysql.com> | 2002-05-03 12:31:25 +0200 |
commit | 2bafafb2cd6912b683f5f8d175fff27a8755c05d (patch) | |
tree | f018e0ba3a16dbef55c7195250c190640678514d /support-files/mysql.spec.sh | |
parent | b508a538b3dd905e7e6696cb855b9ff07b151d48 (diff) | |
download | mariadb-git-2bafafb2cd6912b683f5f8d175fff27a8755c05d.tar.gz |
Reworked the RPM spec file and added several fixes to make the
build scripts work again.
BUILD/compile-pentium-max:
Added "--with-embedded-server" to have the libmysqld files included
in the source distribution when using "make dist"
Build-tools/Do-linux-build:
Only use the "--with-other-libc" parameter, if another libc actually
exists, since this will also force static linking, which does not work
together with OpenSSL
Makefile.am:
Removed hard-coded file name for TAR, let configure do this instead
(many systems actually ship GNU tar installed as "tar" instead of
"gtar")
configure.in:
Added check for GNU tar named "gtar", fall back to "tar" if "gtar"
was not found (and hope, that it's a GNU tar as well - this should
probably be checked more properly)
include/Makefile.am:
Added "my_semaphore.h" to pkginclude_HEADERS since it was missing
from the distribution
strings/Makefile.am:
Added "longlong2str.c" since it was missing from the distribution
support-files/mysql.server.sh:
Added LSB-compatible header info to make init script more portable
support-files/mysql.spec.sh:
- Use more RPM macros (e.g. infodir, mandir) to make the spec
file more portable
- reorganized the installation of documentation files: let RPM
take care of this
- reorganized the file list: actually install man pages along
with the binaries of the respective subpackage
- don't include libmysqld.a in the devel subpackage as well, if we
have a special "embedded" subpackage
- reworked the package descriptions
Diffstat (limited to 'support-files/mysql.spec.sh')
-rw-r--r-- | support-files/mysql.spec.sh | 207 |
1 files changed, 105 insertions, 102 deletions
diff --git a/support-files/mysql.spec.sh b/support-files/mysql.spec.sh index a6152fbde91..372c70327b9 100644 --- a/support-files/mysql.spec.sh +++ b/support-files/mysql.spec.sh @@ -6,7 +6,7 @@ %define see_base For a description of MySQL see the base MySQL RPM or http://www.mysql.com Name: MySQL -Summary: MySQL: a very fast and reliable SQL database engine +Summary: MySQL: a very fast and reliable SQL database server Group: Applications/Databases Summary(pt_BR): MySQL: Um servidor SQL rápido e confiável. Group(pt_BR): Aplicações/Banco_de_Dados @@ -18,54 +18,32 @@ Icon: mysql.gif URL: http://www.mysql.com/ Packager: David Axmark <david@mysql.com> Vendor: MySQL AB +Requires: fileutils sh-utils Provides: msqlormysql MySQL-server mysql Obsoletes: mysql # Think about what you use here since the first step is to # run a rm -rf -BuildRoot: /var/tmp/mysql +BuildRoot: %{_tmppath}/%{name}-%{version}-build # From the manual %description -MySQL is a true multi-user, multi-threaded SQL (Structured Query -Language) database server. MySQL is a client/server implementation -that consists of a server daemon (mysqld) and many different client -programs/libraries. - -The main goals of MySQL are speed, robustness and ease of use. MySQL -was originally developed because we needed a SQL server that could -handle very big databases with magnitude higher speed than what any -database vendor could offer to us. And since we did not need all the -features that made their server slow we made our own. We have now been -using MySQL since 1996 in a environment with more than 40 databases, -10,000 tables, of which more than 500 have more than 7 million -rows. This is about 200G of data. - -The base upon which MySQL is built is a set of routines that have been -used in a highly demanding production environment for many -years. While MySQL is still in development, it already offers a rich -and highly useful function set. - -See the documentation for more information. - -%description -l pt_BR -O MySQL é um servidor de banco de dados SQL realmente multiusuário e\ -multi-tarefa. A linguagem SQL é a mais popular linguagem para banco de\ -dados no mundo. O MySQL é uma implementação cliente/servidor que\ -consiste de um servidor chamado mysqld e diversos\ -programas/bibliotecas clientes. Os principais objetivos do MySQL são:\ -velocidade, robustez e facilidade de uso. O MySQL foi originalmente\ -desenvolvido porque nós na Tcx precisávamos de um servidor SQL que\ -pudesse lidar com grandes bases de dados e com uma velocidade muito\ -maior do que a que qualquer vendedor podia nos oferecer. Estamos\ -usando\ -o MySQL desde 1996 em um ambiente com mais de 40 bases de dados com 10.000\ -tabelas, das quais mais de 500 têm mais de 7 milhões de linhas. Isto é o\ -equivalente a aproximadamente 50G de dados críticos. A base da construção do\ -MySQL é uma série de rotinas que foram usadas em um ambiente de produção com\ -alta demanda por muitos anos. Mesmo o MySQL estando ainda em desenvolvimento,\ -ele já oferece um conjunto de funções muito ricas e úteis. Veja a documentação\ -para maiores informações. +The MySQL(TM) software delivers a very fast, multi-threaded, multi-user, +and robust SQL (Structured Query Language) database server. MySQL Server +is intended for mission-critical, heavy-load production systems as well +as for embedding into mass-deployed software. MySQL is a trademark of +MySQL AB. + +The MySQL software has Dual Licensing, which means you can use the MySQL +software free of charge under the GNU General Public License +(http://www.gnu.org/licenses/). You can also purchase commercial MySQL +licenses from MySQL AB if you do not wish to be bound by the terms of +the GPL. See the chapter "Licensing and Support" in the manual for +further info. + +The MySQL web site (http://www.mysql.com/) provides the latest +news and information about the MySQL software. Also please see the +documentation and the manual for more information. %package client Release: %{release} @@ -86,7 +64,7 @@ Este pacote contém os clientes padrão para o MySQL. %package bench Release: %{release} -Requires: MySQL-client MySQL-DBI-perl-bin perl +Requires: %{name}-client MySQL-DBI-perl-bin perl Summary: MySQL - Benchmarks and test system Group: Applications/Databases Summary(pt_BR): MySQL - Medições de desempenho @@ -104,7 +82,7 @@ Este pacote contém medições de desempenho de scripts e dados do MySQL. %package devel Release: %{release} -Requires: MySQL-client +Requires: %{name}-client Summary: MySQL - Development header files and libraries Group: Applications/Databases Summary(pt_BR): MySQL - Medições de desempenho @@ -139,21 +117,29 @@ Provides: mysql-Max Obsoletes: mysql-Max %description Max -Optional MySQL server binary that supports features -like transactional tables. To active this binary, just install this -package after the MySQL package. +Optional MySQL server binary that supports additional features like +transactional tables. To activate this binary, just install this +package in addition to the MySQL package. %package embedded Release: %{release} -Requires: devel +Requires: %{name}-devel Summary: MySQL - embedded library Group: Applications/Databases Summary(pt_BR): MySQL - Medições de desempenho Group(pt_BR): Aplicações/Banco_de_Dados -Obsoletes: embedded +Obsoletes: mysql-embedded %description embedded -This package contains the MySQL server as library. +This package contains the MySQL server as an embedded library. + +The embedded MySQL server library makes it possible to run a +full-featured MySQL server inside the client application. +The main benefits are increased speed and more simple management +for embedded applications. + +The API is identical for the embedded MySQL version and the +client/server version. %{see_base} @@ -188,9 +174,9 @@ sh -c "PATH=\"${MYSQL_BUILD_PATH:-/bin:/usr/bin}\" \ --sysconfdir=/etc \ --datadir=/usr/share \ --localstatedir=/var/lib/mysql \ - --infodir=/usr/info \ + --infodir=%{_infodir} \ --includedir=/usr/include \ - --mandir=/usr/man \ + --mandir=%{_mandir} \ --with-embedded-server \ --enable-thread-safe-client \ --with-comment=\"Official MySQL RPM\"; @@ -217,12 +203,9 @@ fi RBR=$RPM_BUILD_ROOT MBD=$RPM_BUILD_DIR/mysql-%{mysql_version} -if test -z "$RBR" -o "$RBR" = "/" -then - echo "RPM_BUILD_ROOT has stupid value" - exit 1 -fi -rm -rf $RBR + +# Clean up the BuildRoot first +[ "$RBR" != "/" ] && [ -d $RBR ] && rm -rf $RBR; mkdir -p $RBR # @@ -248,7 +231,7 @@ mv Docs/manual.ps Docs/manual.ps.save make distclean mv Docs/manual.ps.save Docs/manual.ps -#now build and save shared libraries +# now build and save shared libraries BuildMySQL "--enable-shared --enable-thread-safe-client --without-server " (cd libmysql/.libs; tar cf $RBR/shared-libs.tar *.so*) (cd libmysql_r/.libs; tar rf $RBR/shared-libs.tar *.so*) @@ -271,13 +254,14 @@ nm --numeric-sort sql/mysqld > sql/mysqld.sym %install -n mysql-%{mysql_version} RBR=$RPM_BUILD_ROOT MBD=$RPM_BUILD_DIR/mysql-%{mysql_version} + # Ensure that needed directories exists install -d $RBR/etc/{logrotate.d,rc.d/init.d} install -d $RBR/var/lib/mysql/mysql install -d $RBR/usr/share/sql-bench install -d $RBR/usr/share/mysql-test -install -d $RBR/usr/{sbin,share,man,include} -install -d $RBR/usr/doc/MySQL-%{mysql_version} +install -d $RBR%{_mandir} +install -d $RBR/usr/{sbin,share,include} install -d $RBR/usr/lib # Make install make install DESTDIR=$RBR benchdir_root=/usr/share/ @@ -296,18 +280,6 @@ install -m644 $MBD/sql/mysqld.sym $RBR/usr/lib/mysql/mysqld.sym install -m644 $MBD/support-files/mysql-log-rotate $RBR/etc/logrotate.d/mysql install -m755 $MBD/support-files/mysql.server $RBR/etc/rc.d/init.d/mysql -# Install docs -install -m644 $RPM_BUILD_DIR/mysql-%{mysql_version}/Docs/mysql.info \ - $RBR/usr/info/mysql.info -for file in README COPYING COPYING.LIB Docs/manual_toc.html Docs/manual.html \ - Docs/manual.txt Docs/manual.texi Docs/manual.ps \ - support-files/my-huge.cnf support-files/my-large.cnf \ - support-files/my-medium.cnf support-files/my-small.cnf -do - b=`basename $file` - install -m644 $MBD/$file $RBR/usr/doc/MySQL-%{mysql_version}/$b -done - %pre if test -x /etc/rc.d/init.d/mysql then @@ -375,32 +347,43 @@ fi # database files. %files -%attr(-, root, root) %doc /usr/doc/MySQL-%{mysql_version}/ +%doc %attr(644, root, root) COPYING COPYING.LIB README +%doc %attr(644, root, root) Docs/manual.{html,ps,texi,txt} Docs/manual_toc.html +%doc %attr(644, root, root) support-files/my-*.cnf + +%doc %attr(644, root, root) %{_infodir}/mysql.info* + +%doc %attr(644, root, man) %{_mandir}/man1/isamchk.1* +%doc %attr(644, root, man) %{_mandir}/man1/isamlog.1* +%doc %attr(644, root, man) %{_mandir}/man1/mysql_zap.1* +%doc %attr(644, root, man) %{_mandir}/man1/mysqld.1* +%doc %attr(644, root, man) %{_mandir}/man1/mysqld_multi.1* +%doc %attr(644, root, man) %{_mandir}/man1/mysqld_safe.1* +%doc %attr(644, root, man) %{_mandir}/man1/perror.1* +%doc %attr(644, root, man) %{_mandir}/man1/replace.1* %attr(755, root, root) /usr/bin/isamchk %attr(755, root, root) /usr/bin/isamlog -%attr(755, root, root) /usr/bin/pack_isam +%attr(755, root, root) /usr/bin/my_print_defaults %attr(755, root, root) /usr/bin/myisamchk %attr(755, root, root) /usr/bin/myisamlog %attr(755, root, root) /usr/bin/myisampack -%attr(755, root, root) /usr/bin/mysql_fix_privilege_tables %attr(755, root, root) /usr/bin/mysql_convert_table_format +%attr(755, root, root) /usr/bin/mysql_explain_log +%attr(755, root, root) /usr/bin/mysql_fix_privilege_tables %attr(755, root, root) /usr/bin/mysql_install_db %attr(755, root, root) /usr/bin/mysql_setpermission %attr(755, root, root) /usr/bin/mysql_zap %attr(755, root, root) /usr/bin/mysqlbug -%attr(755, root, root) /usr/bin/mysqltest +%attr(755, root, root) /usr/bin/mysqld_multi +%attr(755, root, root) /usr/bin/mysqld_safe %attr(755, root, root) /usr/bin/mysqlhotcopy -%attr(755, root, root) /usr/bin/mysql_explain_log +%attr(755, root, root) /usr/bin/mysqltest +%attr(755, root, root) /usr/bin/pack_isam %attr(755, root, root) /usr/bin/perror %attr(755, root, root) /usr/bin/replace -%attr(755, root, root) /usr/bin/resolveip -%attr(755, root, root) /usr/bin/mysqld_safe %attr(755, root, root) /usr/bin/resolve_stack_dump -%attr(755, root, root) /usr/bin/mysqld_multi -%attr(755, root, root) /usr/bin/my_print_defaults - -%attr(644, root, root) /usr/info/mysql.info* +%attr(755, root, root) /usr/bin/resolveip %attr(755, root, root) /usr/sbin/mysqld %attr(644, root, root) /usr/lib/mysql/mysqld.sym @@ -413,28 +396,20 @@ fi %files client %attr(755, root, root) /usr/bin/msql2mysql %attr(755, root, root) /usr/bin/mysql +%attr(755, root, root) /usr/bin/mysql_find_rows %attr(755, root, root) /usr/bin/mysqlaccess %attr(755, root, root) /usr/bin/mysqladmin +%attr(755, root, root) /usr/bin/mysqlbinlog %attr(755, root, root) /usr/bin/mysqlcheck -%attr(755, root, root) /usr/bin/mysql_find_rows %attr(755, root, root) /usr/bin/mysqldump %attr(755, root, root) /usr/bin/mysqlimport %attr(755, root, root) /usr/bin/mysqlshow -%attr(755, root, root) /usr/bin/mysqlbinlog -%attr(644, root, man) %doc /usr/man/man1/mysql.1* -%attr(644, root, man) %doc /usr/man/man1/isamchk.1* -%attr(644, root, man) %doc /usr/man/man1/isamlog.1* -%attr(644, root, man) %doc /usr/man/man1/mysql_zap.1* -%attr(644, root, man) %doc /usr/man/man1/mysqlaccess.1* -%attr(644, root, man) %doc /usr/man/man1/mysqladmin.1* -%attr(644, root, man) %doc /usr/man/man1/mysqld.1* -%attr(644, root, man) %doc /usr/man/man1/mysqld_multi.1* -%attr(644, root, man) %doc /usr/man/man1/mysqldump.1* -%attr(644, root, man) %doc /usr/man/man1/mysqlshow.1* -%attr(644, root, man) %doc /usr/man/man1/perror.1* -%attr(644, root, man) %doc /usr/man/man1/replace.1* -%attr(644, root, man) %doc /usr/man/man1/mysqld_safe.1* +%doc %attr(644, root, man) %{_mandir}/man1/mysql.1* +%doc %attr(644, root, man) %{_mandir}/man1/mysqlaccess.1* +%doc %attr(644, root, man) %{_mandir}/man1/mysqladmin.1* +%doc %attr(644, root, man) %{_mandir}/man1/mysqldump.1* +%doc %attr(644, root, man) %{_mandir}/man1/mysqlshow.1* %post shared /sbin/ldconfig @@ -443,14 +418,30 @@ fi /sbin/ldconfig %files devel +%defattr(644 root, root) %attr(755, root, root) /usr/bin/comp_err -%attr(755, root, root) /usr/include/mysql/ -%attr(755, root, root) /usr/lib/mysql/*.a %attr(755, root, root) /usr/bin/mysql_config +%dir %attr(755, root, root) /usr/include/mysql +%dir %attr(755, root, root) /usr/lib/mysql +/usr/include/mysql/* +/usr/lib/mysql/libdbug.a +/usr/lib/mysql/libheap.a +/usr/lib/mysql/libmerge.a +/usr/lib/mysql/libmyisam.a +/usr/lib/mysql/libmyisammrg.a +/usr/lib/mysql/libmysqlclient.a +/usr/lib/mysql/libmysqlclient.la +/usr/lib/mysql/libmysqlclient_r.a +/usr/lib/mysql/libmysqlclient_r.la +/usr/lib/mysql/libmystrings.a +/usr/lib/mysql/libmysys.a +/usr/lib/mysql/libnisam.a +/usr/lib/mysql/libvio.a %files shared +%defattr(755 root, root) # Shared libraries (omit for architectures that don't support them) -%attr(755, root, root) /usr/lib/*.so* +/usr/lib/*.so* %files bench %attr(-, root, root) /usr/share/sql-bench @@ -464,10 +455,22 @@ fi %attr(644, root, root) /usr/lib/mysql/mysqld-max.sym %files embedded -%attr(755, root, root) /usr/lib/mysql/libmysqld.a +%attr(644, root, root) /usr/lib/mysql/libmysqld.a %changelog +* Fri May 03 2002 Lenz Grimmer <lenz@mysql.com> + +- Use more RPM macros (e.g. infodir, mandir) to make the spec + file more portable +- reorganized the installation of documentation files: let RPM + take care of this +- reorganized the file list: actually install man pages along + with the binaries of the respective subpackage +- don't include libmysqld.a in the devel subpackage as well, if we + have a special "embedded" subpackage +- reworked the package descriptions + * Mon Oct 8 2001 Monty - Added embedded server as a separate RPM |