summaryrefslogtreecommitdiff
path: root/support-files/mysql.spec.sh
diff options
context:
space:
mode:
authorunknown <lenz@mysql.com>2002-05-03 12:31:25 +0200
committerunknown <lenz@mysql.com>2002-05-03 12:31:25 +0200
commit2bafafb2cd6912b683f5f8d175fff27a8755c05d (patch)
treef018e0ba3a16dbef55c7195250c190640678514d /support-files/mysql.spec.sh
parentb508a538b3dd905e7e6696cb855b9ff07b151d48 (diff)
downloadmariadb-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.sh207
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