OpenPKG CVS Repository
http://cvs.openpkg.org/
____________________________________________________________________________
Server: cvs.openpkg.org Name: Christoph Schug
Root: /v/openpkg/cvs Email: [EMAIL PROTECTED]
Module: openpkg-src Date: 11-Oct-2006 20:29:03
Branch: HEAD Handle: 2006101119290200
Modified files:
openpkg-src/mysql51 my.cnf mysql51.spec rc.mysql
Log:
First cut of rework of MySQL 5.1 packaging which was really broken
o create options for all optional plugins, keep naming consistent with
MySQL. This breaks backward compatibility of our package but since it
was broken it shouldn't hurt anyway. Enforce build of all mandatory
plugins just in case they become optional in the future which would
break backward compat of the package
o fixed SSL, use external OpenSSL instead of internal yaSSL
o use of 'set-variable' in my.cnf is deprecated, so dump it
o dropped support for Berkeley DB since it will be phased out with the
next MySQL 5.1 release anyway
o plain update logs aren't supported any longer
o some minor cosmetics
Summary:
Revision Changes Path
1.2 +25 -29 openpkg-src/mysql51/my.cnf
1.4 +65 -47 openpkg-src/mysql51/mysql51.spec
1.3 +0 -13 openpkg-src/mysql51/rc.mysql
____________________________________________________________________________
patch -p0 <<'@@ .'
Index: openpkg-src/mysql51/my.cnf
============================================================================
$ cvs diff -u -r1.1 -r1.2 my.cnf
--- openpkg-src/mysql51/my.cnf 11 Mar 2006 12:59:12 -0000 1.1
+++ openpkg-src/mysql51/my.cnf 11 Oct 2006 18:29:02 -0000 1.2
@@ -23,7 +23,6 @@
# log file destinations (must be in sync with settings in rc.conf)
log = @l_prefix@/var/mysql/common.log
-log-update = @l_prefix@/var/mysql/update.log
# binary log (use instead of log-update, server-id must be unique for
# replication)
#log-bin = @l_prefix@/var/mysql/binary.log
@@ -34,45 +33,42 @@
#
# most important tuning parameters for mysqld
-set-variable = key_buffer_size=64M
-set-variable = table_cache=256
+key_buffer_size=64M
+table_cache=256
# less important tuning parameters (change if special problems occur)
-set-variable = join_buffer_size=1M
-set-variable = max_connections=1000
-set-variable = max_connect_errors=10
-set-variable = max_delayed_threads=20
-set-variable = max_heap_table_size=16777216
-set-variable = max_sort_length=1024
-set-variable = max_user_connections=1000
-set-variable = record_buffer=131072
-set-variable = sort_buffer=4M
-set-variable = key_buffer=1M
-set-variable = tmp_table_size=32M
+join_buffer_size=1M
+max_connections=1000
+max_connect_errors=10
+max_delayed_threads=20
+max_heap_table_size=16777216
+max_sort_length=1024
+max_user_connections=1000
+record_buffer=131072
+sort_buffer=4M
+key_buffer=1M
+tmp_table_size=32M
# permanent query caching
-set-variable = query_cache_type=1
+query_cache_type=1
# maximum caching size of an individual query
-set-variable = query_cache_limit=1M
+query_cache_limit=1M
# maximum query cache size
-set-variable = query_cache_size=32M
+query_cache_size=32M
# minimum chars for full-text search (FTS) index
#ft_min_word_len=3
-# Berkeley DB
-set-variable = [EMAIL PROTECTED]@
-set-variable = [EMAIL PROTECTED]@
-set-variable = [EMAIL PROTECTED]@
-
+<with_innobase>
# Innobase DB
-#set-variable = innodb_buffer_pool_size=70M
-#set-variable = innodb_additional_mem_pool_size=2M
-#set-variable = innodb_log_files_in_group=3
-#set-variable = innodb_log_file_size=20M
-#set-variable = innodb_log_buffer_size=8M
-#set-variable = innodb_lock_wait_timeout=50
+innodb_buffer_pool_size=70M
+innodb_additional_mem_pool_size=2M
+innodb_log_files_in_group=3
+innodb_log_file_size=20M
+innodb_log_buffer_size=8M
+innodb_lock_wait_timeout=50
+</with_innobase>
#
# Miscellaneous
#
@@ -83,7 +79,7 @@
[mysqld_safe]
datadir = @l_prefix@/var/mysql
socket = @l_prefix@/var/mysql/mysql.sock
-set-variable = [EMAIL PROTECTED]@/var/mysql/mysqld.pid
+pid_file = @l_prefix@/var/mysql/mysqld.pid
user = @l_rusr@
basedir = @l_prefix@
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/mysql51/mysql51.spec
============================================================================
$ cvs diff -u -r1.3 -r1.4 mysql51.spec
--- openpkg-src/mysql51/mysql51.spec 25 Aug 2006 19:17:37 -0000 1.3
+++ openpkg-src/mysql51/mysql51.spec 11 Oct 2006 18:29:02 -0000 1.4
@@ -39,15 +39,24 @@
Group: Database
License: GPL
Version: %{V_opkg}
-Release: 20060825
+Release: 20061011
# package options
-%option with_server yes
-%option with_bdb yes
-%option with_innodb no
-%option with_ssl no
-%option with_ndb no
-%option with_embedded no
+%option with_server yes
+%option with_archive no
+%option with_blackhole no
+%option with_federated no
+%option with_innobase yes
+%option with_ndbcluster no
+%option with_partition no
+%option with_ssl no
+%option with_embedded no
+
+# fixing implicit inter-plugin dependencies and correlations
+%if "%{with_ndbcluster}" == "yes"
+%undefine with_partition
+%define with_partition yes
+%endif
# list of sources
Source0:
http://sunsite.informatik.rwth-aachen.de/mysql/Downloads/MySQL-%{V_major}/mysql-%{V_mysql}.tar.gz
@@ -73,11 +82,12 @@
%description
MySQL is a multi-user Relational Database Management System (RDBMS),
- which is controlled through Structured Query Language (SQL) operating in
- full multi-threading mode. The main goals of MySQL are speed, robustness
- and ease of use. MySQL was originally developed because of the need for
- a SQL server that could handle very big databases with magnitude higher
- speed than what any database vendor could offer.
+ which is controlled through Structured Query Language (SQL)
+ operating in full multi-threading mode. The main goals of MySQL are
+ speed, robustness and ease of use. MySQL was originally developed
+ because of the need for a SQL server that could handle very big
+ databases with magnitude higher speed than what any database vendor
+ could offer.
%track
prog mysql51 = {
@@ -108,7 +118,7 @@
CFLAGS="%{l_cflags -O}" \
CXXFLAGS="%{l_cxxflags -O}" \
CPPFLAGS="%{l_cppflags ncurses}" \
- LDFLAGS="-L`pwd`/bdb/build_unix -L`pwd`/libmysql %{l_ldflags}" \
+ LDFLAGS="-L`pwd`/libmysql %{l_ldflags}" \
./configure \
--prefix=%{l_prefix} \
--sysconfdir=%{l_prefix}/etc/mysql \
@@ -120,29 +130,52 @@
--with-comment="%{l_openpkg_release}" \
%if "%{with_server}" != "yes"
--without-server \
+%else
+ --with-server \
+ --with-plugin-csv \
+ --with-plugin-heap \
+ --with-plugin-myisam \
+ --with-plugin-myisammrg \
+%if "%{with_archive}" == "yes"
+ --with-plugin-archive \
+%else
+ --without-plugin-archive \
+%endif
+%if "%{with_blackhole}" == "yes"
+ --with-plugin-blackhole \
+%else
+ --without-plugin-blackhole \
%endif
-%if "%{with_bdb}" == "yes"
- --with-berkeley-db \
+%if "%{with_federated}" == "yes"
+ --with-plugin-federated \
+%else
+ --without-plugin-federated \
%endif
-%if "%{with_innodb}" == "no"
- --without-innodb \
+%if "%{with_innobase}" == "yes"
+ --with-plugin-innobase \
+%else
+ --without-plugin-innobase \
%endif
+%if "%{with_ndbcluster}" == "yes"
+ --with-plugin-ndbcluster \
+%else
+ --without-plugin-ndbcluster \
+%endif
+%if "%{with_partition}" == "yes"
+ --with-plugin-partition \
+%else
+ --without-plugin-partition \
+%endif
+%endif
+ --with-zlib-dir=%{l_prefix} \
%if "%{with_ssl}" == "yes"
- --with-openssl \
- --with-openssl-includes=%{l_prefix}/include \
- --with-openssl-libs=%{l_prefix}/lib \
-%endif
-%if "%{with_ndb}" == "yes"
- --with-ndbcluster \
- --with-ndb-shm \
+ --with-ssl=%{l_prefix} \
%endif
%if "%{with_embedded}" == "yes"
--with-embedded-server \
%endif
--without-readline \
--without-libedit \
- --with-vio \
- --with-named-z-libs=no \
--with-low-memory \
--disable-shared \
$opt
@@ -178,28 +211,14 @@
strip $RPM_BUILD_ROOT%{l_prefix}/bin/* 2>/dev/null || true
strip $RPM_BUILD_ROOT%{l_prefix}/libexec/mysql/* 2>/dev/null || true
- # determine default parameters
-%if "%{with_bdb}" == "yes"
- l_mysql_bdb_cache_size=8M
- l_mysql_bdb_log_buffer_size=32k
- l_mysql_bdb_max_lock=10000
-%else
- l_mysql_bdb_cache_size=0
- l_mysql_bdb_log_buffer_size=0
- l_mysql_bdb_max_lock=0
-%endif
-%if "%{with_bdb}" == "yes" || "%{with_innodb}" == "yes"
- l_mysqld=mysqld
-%else
- l_mysqld=mysqld-max
-%endif
-
# install global configuration
%{l_shtool} mkdir -f -p -m 755 $RPM_BUILD_ROOT%{l_prefix}/etc/mysql
- %{l_shtool} install -c -m 644 %{l_value -s -a} \
- -e "s;@l_mysql_bdb_cache_size@;${l_mysql_bdb_cache_size};g" \
- -e
"s;@l_mysql_bdb_log_buffer_size@;${l_mysql_bdb_log_buffer_size};g" \
- -e "s;@l_mysql_bdb_max_lock@;${l_mysql_bdb_max_lock};g" \
+ %{l_shtool} install%{l_nil} -c -m 644 %{l_value -s -a} \
+%if "%{with_innobase}" == "yes"
+ -e '/<\/\{0,1\}with_innobase>/d' \
+%else
+ -e '/<with_innobase>/,/<\/with_innobase>/d' \
+%endif
%{SOURCE my.cnf} \
$RPM_BUILD_ROOT%{l_prefix}/etc/mysql/
%{l_shtool} install -c -m 600 \
@@ -209,7 +228,6 @@
# install run-command script
%{l_shtool} mkdir -f -p -m 755 $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d
%{l_shtool} install -c -m 755 %{l_value -s -a} \
- -e "s;@l_mysqld@;${l_mysqld};g" \
%{SOURCE rc.mysql} $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d/
# make sure the database directory exists
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/mysql51/rc.mysql
============================================================================
$ cvs diff -u -r1.2 -r1.3 rc.mysql
--- openpkg-src/mysql51/rc.mysql 25 Aug 2006 19:17:40 -0000 1.2
+++ openpkg-src/mysql51/rc.mysql 11 Oct 2006 18:29:02 -0000 1.3
@@ -12,11 +12,6 @@
mysql_common_numfiles="10"
mysql_common_minsize="1M"
mysql_common_complevel="9"
- mysql_update_prolog="true"
- mysql_update_epilog="true"
- mysql_update_numfiles="10"
- mysql_update_minsize="1M"
- mysql_update_complevel="9"
mysql_err_prolog="true"
mysql_err_epilog="true"
mysql_err_numfiles="10"
@@ -27,7 +22,6 @@
[EMAIL PROTECTED]@/var/mysql/mysqld.pid
[EMAIL PROTECTED]@/var/mysql/mysqld.err
[EMAIL PROTECTED]@/var/mysql/common.log
- [EMAIL PROTECTED]@/var/mysql/update.log
%status -u @l_rusr@ -o
mysql_usable="unknown"
@@ -47,7 +41,6 @@
rcService mysql active yes && exit 0
cd @l_prefix@
@l_prefix@/bin/mysqld_safe >/dev/null 2>&1 \
- [EMAIL PROTECTED]@ \
--pid-file="$mysql_pid_file" \
--log-error="$mysql_err_log" &
@@ -77,12 +70,6 @@
-E "${mysql_common_epilog}; echo 1 >$hintfile" \
${mysql_common_log}
shtool rotate -f \
- -n ${mysql_update_numfiles} -s ${mysql_update_minsize} -d \
- -z ${mysql_update_complevel} -m 660 -o @l_rusr@ -g @l_rgrp@ \
- -P "${mysql_update_prolog}" \
- -E "${mysql_update_epilog}; echo 1 >$hintfile" \
- ${mysql_update_log}
- shtool rotate -f \
-n ${mysql_err_numfiles} -s ${mysql_err_minsize} -d \
-z ${mysql_err_complevel} -m 660 -o @l_rusr@ -g @l_rgrp@ \
-P "${mysql_err_prolog}" \
@@ .
______________________________________________________________________
The OpenPKG Project www.openpkg.org
CVS Repository Commit List [email protected]