summaryrefslogtreecommitdiff
path: root/packaging
diff options
context:
space:
mode:
authorBalasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>2013-11-25 14:49:29 +0100
committerBalasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>2013-11-25 14:49:29 +0100
commit0870107b7e7811fa316f18f6cbc6db9b31a575dc (patch)
tree998097ffb02215e32f392fe5c4348947ecf904d4 /packaging
parentf6dfd7d7bba49ff4811bc5d7d916bbdb265bbfd1 (diff)
downloadmariadb-git-0870107b7e7811fa316f18f6cbc6db9b31a575dc.tar.gz
Backport 5.5.35 EL6 uln repo rpms
Diffstat (limited to 'packaging')
-rw-r--r--packaging/rpm-oel/CMakeLists.txt36
-rw-r--r--packaging/rpm-oel/filter-provides.sh6
-rw-r--r--packaging/rpm-oel/filter-requires.sh6
-rw-r--r--packaging/rpm-oel/my.cnf31
-rw-r--r--packaging/rpm-oel/my_config.h30
-rw-r--r--packaging/rpm-oel/mysql-embedded-check.c26
-rw-r--r--packaging/rpm-oel/mysql-systemd-start52
-rw-r--r--packaging/rpm-oel/mysql.conf1
-rw-r--r--packaging/rpm-oel/mysql.init209
-rw-r--r--packaging/rpm-oel/mysql.spec.in1556
-rw-r--r--packaging/rpm-oel/mysql_config.sh28
-rw-r--r--packaging/rpm-oel/mysqld.service48
12 files changed, 2029 insertions, 0 deletions
diff --git a/packaging/rpm-oel/CMakeLists.txt b/packaging/rpm-oel/CMakeLists.txt
new file mode 100644
index 00000000000..fb1a1c1600c
--- /dev/null
+++ b/packaging/rpm-oel/CMakeLists.txt
@@ -0,0 +1,36 @@
+# Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+
+
+IF(UNIX)
+ SET(prefix ${CMAKE_INSTALL_PREFIX})
+
+ SET(SPECFILENAME "mysql.spec")
+ IF("${VERSION}" MATCHES "-ndb-")
+ STRING(REGEX REPLACE "^.*-ndb-" "" NDBVERSION "${VERSION}")
+ SET(SPECFILENAME "mysql-cluster-${NDBVERSION}.spec")
+ ENDIF()
+
+ # Left in current directory, to be taken during build
+ CONFIGURE_FILE(mysql.spec.in ${CMAKE_CURRENT_BINARY_DIR}/${SPECFILENAME} @ONLY)
+
+ FOREACH(fedfile my.cnf my_config.h mysql_config.sh
+ mysqld.service mysql-systemd-start mysql.conf
+ filter-requires.sh filter-provides.sh
+ mysql-embedded-check.c mysql.init)
+ CONFIGURE_FILE(${fedfile} ${CMAKE_CURRENT_BINARY_DIR}/${fedfile} COPYONLY)
+ ENDFOREACH()
+ENDIF()
+
diff --git a/packaging/rpm-oel/filter-provides.sh b/packaging/rpm-oel/filter-provides.sh
new file mode 100644
index 00000000000..bc166bd82d0
--- /dev/null
+++ b/packaging/rpm-oel/filter-provides.sh
@@ -0,0 +1,6 @@
+#! /bin/bash
+#
+
+/usr/lib/rpm/perl.prov $* |
+sed -e '/perl(hostnames)/d' -e '/perl(lib::mtr.*/d' -e '/perl(lib::v1.*/d' -e '/perl(mtr_.*/d' -e '/perl(My::.*/d'
+
diff --git a/packaging/rpm-oel/filter-requires.sh b/packaging/rpm-oel/filter-requires.sh
new file mode 100644
index 00000000000..521eb0ca7d9
--- /dev/null
+++ b/packaging/rpm-oel/filter-requires.sh
@@ -0,0 +1,6 @@
+#! /bin/bash
+#
+
+/usr/lib/rpm/perl.req $* |
+sed -e '/perl(hostnames)/d' -e '/perl(lib::mtr.*/d' -e '/perl(lib::v1.*/d' -e '/perl(mtr_.*/d' -e '/perl(My::.*/d'
+
diff --git a/packaging/rpm-oel/my.cnf b/packaging/rpm-oel/my.cnf
new file mode 100644
index 00000000000..28e6aa806b1
--- /dev/null
+++ b/packaging/rpm-oel/my.cnf
@@ -0,0 +1,31 @@
+# For advice on how to change settings please see
+# http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html
+
+[mysqld]
+#
+# Remove leading # and set to the amount of RAM for the most important data
+# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
+# innodb_buffer_pool_size = 128M
+#
+# Remove leading # to turn on a very important data integrity option: logging
+# changes to the binary log between backups.
+# log_bin
+#
+# Remove leading # to set options mainly useful for reporting servers.
+# The server defaults are faster for transactions and fast SELECTs.
+# Adjust sizes as needed, experiment to find the optimal values.
+# join_buffer_size = 128M
+# sort_buffer_size = 2M
+# read_rnd_buffer_size = 2M
+datadir=/var/lib/mysql
+socket=/var/lib/mysql/mysql.sock
+
+# Disabling symbolic-links is recommended to prevent assorted security risks
+symbolic-links=0
+
+# Recommended in standard MySQL setup
+sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
+
+[mysqld_safe]
+log-error=/var/log/mysqld.log
+pid-file=/var/run/mysqld/mysqld.pid
diff --git a/packaging/rpm-oel/my_config.h b/packaging/rpm-oel/my_config.h
new file mode 100644
index 00000000000..75dc5e1d754
--- /dev/null
+++ b/packaging/rpm-oel/my_config.h
@@ -0,0 +1,30 @@
+/*
+ * Fedora supports multi arch: having 32 and 64 versions of MySQL
+ * installed at the same time. my_config.h will differ due arch
+ * dependent defs creating a file conflict. We move arch specific
+ * headers to arch specific file names and include the correct arch
+ * specific file by installing this generic file.
+ *
+ */
+
+#if defined(__i386__)
+#include "my_config_i386.h"
+#elif defined(__ia64__)
+#include "my_config_ia64.h"
+#elif defined(__powerpc__)
+#include "my_config_ppc.h"
+#elif defined(__powerpc64__)
+#include "my_config_ppc64.h"
+#elif defined(__s390x__)
+#include "my_config_s390x.h"
+#elif defined(__s390__)
+#include "my_config_s390.h"
+#elif defined(__sparc__) && defined(__arch64__)
+#include "my_config_sparc64.h"
+#elif defined(__sparc__)
+#include "my_config_sparc.h"
+#elif defined(__x86_64__)
+#include "my_config_x86_64.h"
+#else
+#error "This MySQL devel package does not work your architecture?"
+#endif
diff --git a/packaging/rpm-oel/mysql-embedded-check.c b/packaging/rpm-oel/mysql-embedded-check.c
new file mode 100644
index 00000000000..8bf8ca53dad
--- /dev/null
+++ b/packaging/rpm-oel/mysql-embedded-check.c
@@ -0,0 +1,26 @@
+/* simple test program to see if we can link the embedded server library */
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <stdarg.h>
+
+#include "mysql.h"
+
+MYSQL *mysql;
+
+static char *server_options[] = \
+ { "mysql_test", "--defaults-file=my.cnf", NULL };
+int num_elements = (sizeof(server_options) / sizeof(char *)) - 1;
+
+static char *server_groups[] = { "libmysqld_server",
+ "libmysqld_client", NULL };
+
+int main(int argc, char **argv)
+{
+ mysql_library_init(num_elements, server_options, server_groups);
+ mysql = mysql_init(NULL);
+ mysql_close(mysql);
+ mysql_library_end();
+
+ return 0;
+}
diff --git a/packaging/rpm-oel/mysql-systemd-start b/packaging/rpm-oel/mysql-systemd-start
new file mode 100644
index 00000000000..9cb2a25c990
--- /dev/null
+++ b/packaging/rpm-oel/mysql-systemd-start
@@ -0,0 +1,52 @@
+#! /bin/bash
+#
+# Scripts to run by MySQL systemd service
+#
+# Needed argument: pre | post
+#
+# pre mode : try to run mysql_install_db and fix perms and SELinux contexts
+# post mode : ping server until answer is received
+#
+
+install_db () {
+ # Note: something different than datadir=/var/lib/mysql requires SELinux policy changes (in enforcing mode)
+ datadir=$(/usr/bin/my_print_defaults server mysqld | grep '^--datadir=' | sed -n 's/--datadir=//p')
+
+ # Restore log, dir, perms and SELinux contexts
+ [ -d "$datadir" ] || install -d -m 0755 -omysql -gmysql "$datadir" || exit 1
+ log=/var/log/mysqld.log
+ [ -e $log ] || touch $log
+ chmod 0640 $log
+ chown mysql:mysql $log || exit 1
+ if [ -x /usr/sbin/restorecon ]; then
+ /usr/sbin/restorecon "$datadir"
+ /usr/sbin/restorecon $log
+ fi
+
+ # If special mysql dir is in place, skip db install
+ [ -d "$datadir/mysql" ] && exit 0
+
+ # Create initial db
+ /usr/bin/mysql_install_db --rpm --datadir="$datadir" --user=mysql
+ exit 0
+}
+
+pinger () {
+ # Wait for ping to answer to signal startup completed,
+ # might take a while in case of e.g. crash recovery
+ # MySQL systemd service will timeout script if no answer
+ while /bin/true ; do
+ sleep 1
+ mysqladmin ping >/dev/null 2>&1 && break
+ done
+ exit 0
+}
+
+# main
+case $1 in
+ "pre") install_db ;;
+ "post") pinger ;;
+esac
+
+exit 0
+
diff --git a/packaging/rpm-oel/mysql.conf b/packaging/rpm-oel/mysql.conf
new file mode 100644
index 00000000000..74cd5f836e7
--- /dev/null
+++ b/packaging/rpm-oel/mysql.conf
@@ -0,0 +1 @@
+d /var/run/mysqld 0755 mysql mysql -
diff --git a/packaging/rpm-oel/mysql.init b/packaging/rpm-oel/mysql.init
new file mode 100644
index 00000000000..d6f8f023850
--- /dev/null
+++ b/packaging/rpm-oel/mysql.init
@@ -0,0 +1,209 @@
+#!/bin/sh
+#
+# mysqld This shell script takes care of starting and stopping
+# the MySQL subsystem (mysqld).
+#
+# chkconfig: - 64 36
+# description: MySQL database server.
+# processname: mysqld
+# config: /etc/my.cnf
+# pidfile: /var/run/mysqld/mysqld.pid
+
+# Source function library.
+. /etc/rc.d/init.d/functions
+
+# Source networking configuration.
+. /etc/sysconfig/network
+
+
+exec="/usr/bin/mysqld_safe"
+prog="mysqld"
+
+# Set timeouts here so they can be overridden from /etc/sysconfig/mysqld
+STARTTIMEOUT=120
+STOPTIMEOUT=60
+
+[ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog
+
+lockfile=/var/lock/subsys/$prog
+
+
+# extract value of a MySQL option from config files
+# Usage: get_mysql_option SECTION VARNAME DEFAULT
+# result is returned in $result
+# We use my_print_defaults which prints all options from multiple files,
+# with the more specific ones later; hence take the last match.
+get_mysql_option(){
+ result=`/usr/bin/my_print_defaults "$1" | sed -n "s/^--$2=//p" | tail -n 1`
+ if [ -z "$result" ]; then
+ # not found, use default
+ result="$3"
+ fi
+}
+
+get_mysql_option mysqld datadir "/var/lib/mysql"
+datadir="$result"
+get_mysql_option mysqld socket "$datadir/mysql.sock"
+socketfile="$result"
+get_mysql_option mysqld_safe log-error "/var/log/mysqld.log"
+errlogfile="$result"
+get_mysql_option mysqld_safe pid-file "/var/run/mysqld/mysqld.pid"
+mypidfile="$result"
+
+
+start(){
+ [ -x $exec ] || exit 5
+ # check to see if it's already running
+ RESPONSE=`/usr/bin/mysqladmin --socket="$socketfile" --user=UNKNOWN_MYSQL_USER ping 2>&1`
+ if [ $? = 0 ]; then
+ # already running, do nothing
+ action $"Starting $prog: " /bin/true
+ ret=0
+ elif echo "$RESPONSE" | grep -q "Access denied for user"
+ then
+ # already running, do nothing
+ action $"Starting $prog: " /bin/true
+ ret=0
+ else
+ # prepare for start
+ touch "$errlogfile"
+ chown mysql:mysql "$errlogfile"
+ chmod 0640 "$errlogfile"
+ [ -x /sbin/restorecon ] && /sbin/restorecon "$errlogfile"
+ if [ ! -d "$datadir/mysql" ] ; then
+ # First, make sure $datadir is there with correct permissions
+ if [ ! -e "$datadir" -a ! -h "$datadir" ]
+ then
+ mkdir -p "$datadir" || exit 1
+ fi
+ chown mysql:mysql "$datadir"
+ chmod 0755 "$datadir"
+ [ -x /sbin/restorecon ] && /sbin/restorecon "$datadir"
+ # Now create the database
+ action $"Initializing MySQL database: " /usr/bin/mysql_install_db --rpm --datadir="$datadir" --user=mysql
+ ret=$?
+ chown -R mysql:mysql "$datadir"
+ if [ $ret -ne 0 ] ; then
+ return $ret
+ fi
+ fi
+ chown mysql:mysql "$datadir"
+ chmod 0755 "$datadir"
+ # Pass all the options determined above, to ensure consistent behavior.
+ # In many cases mysqld_safe would arrive at the same conclusions anyway
+ # but we need to be sure. (An exception is that we don't force the
+ # log-error setting, since this script doesn't really depend on that,
+ # and some users might prefer to configure logging to syslog.)
+ # Note: set --basedir to prevent probes that might trigger SELinux
+ # alarms, per bug #547485
+ $exec --datadir="$datadir" --socket="$socketfile" \
+ --pid-file="$mypidfile" \
+ --basedir=/usr --user=mysql >/dev/null 2>&1 &
+ safe_pid=$!
+ # Spin for a maximum of N seconds waiting for the server to come up;
+ # exit the loop immediately if mysqld_safe process disappears.
+ # Rather than assuming we know a valid username, accept an "access
+ # denied" response as meaning the server is functioning.
+ ret=0
+ TIMEOUT="$STARTTIMEOUT"
+ while [ $TIMEOUT -gt 0 ]; do
+ RESPONSE=`/usr/bin/mysqladmin --socket="$socketfile" --user=UNKNOWN_MYSQL_USER ping 2>&1` && break
+ echo "$RESPONSE" | grep -q "Access denied for user" && break
+ if ! /bin/kill -0 $safe_pid 2>/dev/null; then
+ echo "MySQL Daemon failed to start."
+ ret=1
+ break
+ fi
+ sleep 1
+ let TIMEOUT=${TIMEOUT}-1
+ done
+ if [ $TIMEOUT -eq 0 ]; then
+ echo "Timeout error occurred trying to start MySQL Daemon."
+ ret=1
+ fi
+ if [ $ret -eq 0 ]; then
+ action $"Starting $prog: " /bin/true
+ touch $lockfile
+ else
+ action $"Starting $prog: " /bin/false
+ fi
+ fi
+ return $ret
+}
+
+stop(){
+ if [ ! -f "$mypidfile" ]; then
+ # not running; per LSB standards this is "ok"
+ action $"Stopping $prog: " /bin/true
+ return 0
+ fi
+ MYSQLPID=`cat "$mypidfile"`
+ if [ -n "$MYSQLPID" ]; then
+ /bin/kill "$MYSQLPID" >/dev/null 2>&1
+ ret=$?
+ if [ $ret -eq 0 ]; then
+ TIMEOUT="$STOPTIMEOUT"
+ while [ $TIMEOUT -gt 0 ]; do
+ /bin/kill -0 "$MYSQLPID" >/dev/null 2>&1 || break
+ sleep 1
+ let TIMEOUT=${TIMEOUT}-1
+ done
+ if [ $TIMEOUT -eq 0 ]; then
+ echo "Timeout error occurred trying to stop MySQL Daemon."
+ ret=1
+ action $"Stopping $prog: " /bin/false
+ else
+ rm -f $lockfile
+ rm -f "$socketfile"
+ action $"Stopping $prog: " /bin/true
+ fi
+ else
+ action $"Stopping $prog: " /bin/false
+ fi
+ else
+ # failed to read pidfile, probably insufficient permissions
+ action $"Stopping $prog: " /bin/false
+ ret=4
+ fi
+ return $ret
+}
+
+restart(){
+ stop
+ start
+}
+
+condrestart(){
+ [ -e $lockfile ] && restart || :
+}
+
+
+# See how we were called.
+case "$1" in
+ start)
+ start
+ ;;
+ stop)
+ stop
+ ;;
+ status)
+ status -p "$mypidfile" $prog
+ ;;
+ restart)
+ restart
+ ;;
+ condrestart|try-restart)
+ condrestart
+ ;;
+ reload)
+ exit 3
+ ;;
+ force-reload)
+ restart
+ ;;
+ *)
+ echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"
+ exit 2
+esac
+
+exit $?
diff --git a/packaging/rpm-oel/mysql.spec.in b/packaging/rpm-oel/mysql.spec.in
new file mode 100644
index 00000000000..47a11053b28
--- /dev/null
+++ b/packaging/rpm-oel/mysql.spec.in
@@ -0,0 +1,1556 @@
+# Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; see the file COPYING. If not, write to the
+# Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston
+# MA 02110-1301 USA.
+
+
+# NOTE: "vendor" is used in upgrade/downgrade check, so you can't
+# change these, has to be exactly as is.
+
+%global mysql_vendor Oracle and/or its affiliates
+%global mysqldatadir /var/lib/mysql
+
+# By default, a build will include the bundeled "yaSSL" library for SSL.
+%{?with_ssl: %global ssl_option -DWITH_SSL=%{with_ssl}}
+
+# Regression tests may take a long time, override the default to skip them
+%{!?runselftest:%global runselftest 0}
+
+%{!?with_systemd: %global systemd 0}
+%{!?with_debuginfo: %global nodebuginfo 1}
+%{!?product_suffix: %global product_suffix community}
+%{!?feature_set: %global feature_set community}
+%{!?compilation_comment_release: %global compilation_comment_release MySQL Community Server - (GPL)}
+%{!?compilation_comment_debug: %global compilation_comment_debug MySQL Community Server - Debug (GPL)}
+%{!?src_base: %global src_base mysql}
+
+%global libmysqld_so_major 0
+%global libmysqld_so_long 0.0.1
+
+# Version for compat libs
+%global compatver 5.1.72
+
+%global src_dir %{src_base}-%{version}
+
+# No debuginfo for now, ships /usr/sbin/mysqld-debug and libmysqlcliet-debug.a
+%if 0%{?nodebuginfo}
+%global _enable_debug_package 0
+%global debug_package %{nil}
+%global __os_install_post /usr/lib/rpm/brp-compress %{nil}
+%endif
+
+# multiarch
+%global multiarchs ppc %{power64} %{ix86} x86_64 %{sparc}
+
+%if 0%{?commercial}
+%global license_files_server %{src_dir}/LICENSE.mysql
+%global license_type Commercial
+%else
+%global license_files_server %{src_dir}/COPYING %{src_dir}/README
+%global license_type GPLv2
+%endif
+
+
+Name: mysql-%{product_suffix}
+Summary: A very fast and reliable SQL database server
+Group: Applications/Databases
+Version: @VERSION@
+Release: 1%{?dist}
+License: Copyright (c) 2000, @MYSQL_COPYRIGHT_YEAR@, %{mysql_vendor}. All rights reserved. Under %{?license_type} license as shown in the Description field.
+Source0: https://cdn.mysql.com/Downloads/MySQL-@MYSQL_BASE_VERSION@/%{src_dir}.tar.gz
+URL: http://www.mysql.com/
+Packager: MySQL Release Engineering <mysql-build@oss.oracle.com>
+Vendor: %{mysql_vendor}
+Source1: mysql-systemd-start
+Source2: mysqld.service
+Source3: mysql.conf
+Source4: my_config.h
+Source5: mysql_config.sh
+Source6: mysql-embedded-check.c
+Source7: https://cdn.mysql.com/Downloads/MySQL-5.5/mysql-%{compatver}.tar.gz
+Source90: filter-provides.sh
+Source91: filter-requires.sh
+BuildRequires: cmake
+BuildRequires: perl
+BuildRequires: time
+BuildRequires: libaio-devel
+BuildRequires: ncurses-devel
+BuildRequires: openssl-devel
+BuildRequires: zlib-devel
+%if 0%{?systemd}
+BuildRequires: systemd-units
+%endif
+BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
+
+# https://fedoraproject.org/wiki/EPEL:Packaging#Generic_Filtering_on_EPEL6
+%global __perl_provides %{SOURCE90}
+%global __perl_requires %{SOURCE91}
+
+%description
+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_vendor}
+
+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_vendor} 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 server
+Summary: A very fast and reliable SQL database server
+Group: Applications/Databases
+Requires: coreutils
+Requires: grep
+Requires: procps
+Requires: shadow-utils
+Requires: net-tools
+%if 0%{?commercial}
+Obsoletes: mysql-community-server < %{version}-%{release}
+Requires: mysql-enterprise-client%{?_isa} = %{version}-%{release}
+Requires: mysql-enterprise-common%{?_isa} = %{version}-%{release}
+%else
+Requires: mysql-community-client%{?_isa} = %{version}-%{release}
+Requires: mysql-community-common%{?_isa} = %{version}-%{release}
+%endif
+Obsoletes: mysql-server < %{version}-%{release}
+Provides: mysql-server = %{version}-%{release}
+Provides: mysql-server%{?_isa} = %{version}-%{release}
+%if 0%{?systemd}
+Requires(post): systemd
+Requires(preun): systemd
+Requires(postun): systemd
+%else
+Requires(post): /sbin/chkconfig
+Requires(preun): /sbin/chkconfig
+Requires(preun): /sbin/service
+%endif
+
+%description server
+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_vendor}
+
+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_vendor} 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.
+
+This package includes the MySQL server binary as well as related utilities
+to run and administer a MySQL server.
+
+%package client
+Summary: MySQL database client applications and tools
+Group: Applications/Databases
+%if 0%{?commercial}
+Obsoletes: mysql-community-client < %{version}-%{release}
+Requires: mysql-enterprise-libs%{?_isa} = %{version}-%{release}
+%else
+Requires: mysql-community-libs%{?_isa} = %{version}-%{release}
+%endif
+Obsoletes: mysql < %{version}-%{release}
+Provides: mysql = %{version}-%{release}
+Provides: mysql%{?_isa} = %{version}-%{release}
+
+%description client
+This package contains the standard MySQL clients and administration
+tools.
+
+%package common
+Summary: MySQL database common files for server and client libs
+Group: Applications/Databases
+%if 0%{?commercial}
+Obsoletes: mysql-community-common < %{version}-%{release}
+%endif
+Provides: mysql-common = %{version}-%{release}
+Provides: mysql-common%{?_isa} = %{version}-%{release}
+
+%description common
+This packages contains common files needed by MySQL client library,
+MySQL database server, and MySQL embedded server.
+
+
+%package test
+Summary: Test suite for the MySQL database server
+Group: Applications/Databases
+%if 0%{?commercial}
+Obsoletes: mysql-community-test < %{version}-%{release}
+Requires: mysql-enterprise-server%{?_isa} = %{version}-%{release}
+%else
+Requires: mysql-community-server%{?_isa} = %{version}-%{release}
+%endif
+Obsoletes: mysql-test < %{version}-%{release}
+Provides: mysql-test = %{version}-%{release}
+Provides: mysql-test%{?_isa} = %{version}-%{release}
+
+
+%description test
+This package contains the MySQL regression test suite for MySQL
+database server.
+
+
+%package devel
+Summary: Development header files and libraries for MySQL database client applications
+Group: Applications/Databases
+%if 0%{?commercial}
+Obsoletes: mysql-community-devel < %{version}-%{release}
+Requires: mysql-enterprise-libs%{?_isa} = %{version}-%{release}
+%else
+Requires: mysql-community-libs%{?_isa} = %{version}-%{release}
+%endif
+Obsoletes: mysql-devel < %{version}-%{release}
+Provides: mysql-devel = %{version}-%{release}
+Provides: mysql-devel%{?_isa} = %{version}-%{release}
+
+%description devel
+This package contains the development header files and libraries necessary
+to develop MySQL client applications.
+
+%package libs
+Summary: Shared libraries for MySQL database client applications
+Group: Applications/Databases
+%if 0%{?commercial}
+Obsoletes: mysql-community-libs < %{version}-%{release}
+Requires: mysql-enterprise-common%{?_isa} = %{version}-%{release}
+%else
+Requires: mysql-community-common%{?_isa} = %{version}-%{release}
+%endif
+Obsoletes: mysql-libs < %{version}-%{release}
+Provides: mysql-libs = %{version}-%{release}
+Provides: mysql-libs%{?_isa} = %{version}-%{release}
+
+%description libs
+This package contains the shared libraries for MySQL client
+applications.
+
+%package libs-compat
+Summary: Shared compat libraries for MySQL 5.1 database client applications
+Group: Applications/Databases
+Obsoletes: mysql-libs-compat < %{version}-%{release}
+Provides: mysql-libs-compat = %{version}-%{release}
+Provides: mysql-libs-compat%{?_isa} = %{version}-%{release}
+
+%description libs-compat
+This package contains the shared compat libraries for MySQL 5.1 client
+applications.
+
+%package embedded
+Summary: MySQL embedded library
+Group: Applications/Databases
+%if 0%{?commercial}
+Obsoletes: mysql-community-embedded < %{version}-%{release}
+Requires: mysql-enterprise-common%{?_isa} = %{version}-%{release}
+%else
+Requires: mysql-community-common%{?_isa} = %{version}-%{release}
+%endif
+Obsoletes: mysql-embedded < %{version}-%{release}
+Provides: mysql-embedded = %{version}-%{release}
+Provides: mysql-emdedded%{?_isa} = %{version}-%{release}
+
+%description embedded
+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.
+
+For a description of MySQL see the base MySQL RPM or http://www.mysql.com/
+
+%package embedded-devel
+Summary: Development header files and libraries for MySQL as an embeddable library
+Group: Applications/Databases
+%if 0%{?commercial}
+Obsoletes: mysql-community-embedded-devel < %{version}-%{release}
+Requires: mysql-enterprise-devel%{?_isa} = %{version}-%{release}
+Requires: mysql-enterprise-embedded%{?_isa} = %{version}-%{release}
+%else
+Requires: mysql-community-devel%{?_isa} = %{version}-%{release}
+Requires: mysql-community-embedded%{?_isa} = %{version}-%{release}
+%endif
+Obsoletes: mysql-embedded-devel < %{version}-%{release}
+Provides: mysql-embedded-devel = %{version}-%{release}
+Provides: mysql-embedded-devel%{?_isa} = %{version}-%{release}
+
+%description embedded-devel
+This package contains files needed for developing applicatison using
+the embedded version of the MySQL server.
+
+%prep
+%setup -q -T -a 0 -a 7 -c -n %{src_dir}
+cd %{src_dir}
+
+%build
+# Fail quickly and obviously if user tries to build as root
+%if 0%{?runselftest}
+if [ "x$(id -u)" = "x0" ] ; then
+ echo "The MySQL regression tests may fail if run as root."
+ echo "If you really need to build the RPM as root, use"
+ echo "--define='runselftest 0' to skip the regression tests."
+ exit 1
+fi
+%endif
+
+# Build compat libs
+(
+export CFLAGS="%{optflags} -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fno-strict-aliasing -fwrapv"
+export CXXFLAGS="$CFLAGS -felide-constructors -fno-rtti -fno-exceptions"
+pushd mysql-%{compatver}
+%configure \
+ --with-readline \
+ --with-ssl=%{_prefix} \
+ --without-debug \
+ --enable-shared \
+ --with-embedded-server \
+ --localstatedir=/var/lib/mysql \
+ --with-unix-socket-path=/var/lib/mysql/mysql.sock \
+ --with-mysqld-user="mysql" \
+ --with-extra-charsets=all \
+ --with-big-tables \
+ --with-pic \
+ --with-plugin-innobase \
+ --with-plugin-innodb_plugin \
+ --with-plugin-partition \
+ --enable-local-infile \
+ --enable-largefile \
+ --enable-thread-safe-client \
+ --disable-dependency-tracking
+make %{?_smp_mflags}
+popd
+)
+
+export CFLAGS="%{optflags}"
+export CXXFLAGS="%{optflags}"
+
+# Build debug versions of mysqld and libmysqld.a
+mkdir debug
+(
+ cd debug
+ # Attempt to remove any optimisation flags from the debug build
+ CFLAGS=$(echo "${CFLAGS}" | sed -e 's/-O2 / /' -e 's/-Wp,-D_FORTIFY_SOURCE=2/ /')
+ CXXFLAGS=$(echo "${CFLAGS}" | sed -e 's/-O2 / /' -e 's/-Wp,-D_FORTIFY_SOURCE=2/ /')
+ cmake ../%{src_dir} \
+ -DBUILD_CONFIG=mysql_release \
+ -DINSTALL_LAYOUT=RPM \
+ -DCMAKE_BUILD_TYPE=Debug \
+ -DWITH_INNODB_MEMCACHED=1 \
+ -DINSTALL_LIBDIR="%{_lib}/mysql" \
+ -DINSTALL_PLUGINDIR="%{_lib}/mysql/plugin" \
+ -DMYSQL_UNIX_ADDR="%{mysqldatadir}/mysql.sock" \
+ -DFEATURE_SET="%{feature_set}" \
+ %{?ssl_option} \
+ -DCOMPILATION_COMMENT="%{compilation_comment_debug}" \
+ -DMYSQL_SERVER_SUFFIX="%{?server_suffix}"
+ echo BEGIN_DEBUG_CONFIG ; egrep '^#define' include/config.h ; echo END_DEBUG_CONFIG
+ make %{?_smp_mflags} VERBOSE=1
+)
+
+# Build full release
+mkdir release
+(
+ cd release
+ cmake ../%{src_dir} \
+ -DBUILD_CONFIG=mysql_release \
+ -DINSTALL_LAYOUT=RPM \
+ -DCMAKE_BUILD_TYPE=RelWithDebInfo \
+ -DWITH_INNODB_MEMCACHED=1 \
+ -DINSTALL_LIBDIR="%{_lib}/mysql" \
+ -DINSTALL_PLUGINDIR="%{_lib}/mysql/plugin" \
+ -DMYSQL_UNIX_ADDR="%{mysqldatadir}/mysql.sock" \
+ -DFEATURE_SET="%{feature_set}" \
+ %{?ssl_option} \
+ -DCOMPILATION_COMMENT="%{compilation_comment_release}" \
+ -DMYSQL_SERVER_SUFFIX="%{?server_suffix}"
+ echo BEGIN_NORMAL_CONFIG ; egrep '^#define' include/config.h ; echo END_NORMAL_CONFIG
+ make %{?_smp_mflags} VERBOSE=1
+
+# Need to build libmysqld.so for distros
+mkdir libmysqld/work
+pushd libmysqld/work
+
+ar -x ../libmysqld.a
+[ -e ../../extra/yassl/libyassl.a ] && ar -x ../../extra/yassl/libyassl.a
+rm -f sql_binlog.cc.o rpl_utility.cc.o
+%{__cc} $CFLAGS $LDFLAGS -DEMBEDDED_LIBRARY -shared -Wl,-soname,libmysqld.so.%{libmysqld_so_major} \
+ -o libmysqld.so.%{libmysqld_so_long} *.o \
+ -lpthread -laio -lcrypt -lssl -lcrypto -lz -lrt -lstdc++ -ldl -lm -lc
+
+# Compile check
+cp %{SOURCE6} .
+ln -s libmysqld.so.%{libmysqld_so_long} libmysqld.so.%{libmysqld_so_major}
+%{__cc} -I../../../%{src_dir}/include -I../../include $CFLAGS \
+ mysql-embedded-check.c libmysqld.so.%{libmysqld_so_major}
+LD_LIBRARY_PATH=. ldd ./a.out
+)
+
+%install
+# Install compat libs
+for dir in libmysql libmysql_r ; do
+ pushd mysql-%{compatver}/$dir
+ make DESTDIR=%{buildroot} install
+ popd
+done
+rm -f %{buildroot}%{_libdir}/mysql/libmysqlclient{,_r}.{a,la,so}
+
+MBD=$RPM_BUILD_DIR/%{src_dir}
+
+# Ensure that needed directories exists
+install -d -m 0755 %{buildroot}%{_datadir}/mysql/SELinux/RHEL4
+install -d -m 0755 %{buildroot}/var/lib/mysql
+install -d -m 0755 %{buildroot}/var/run/mysqld
+
+# Install all binaries
+cd $MBD/release
+make DESTDIR=%{buildroot} install
+
+# Install logrotate and autostart
+install -D -m 0644 $MBD/release/support-files/mysql-log-rotate %{buildroot}%{_sysconfdir}/logrotate.d/mysql
+install -D -m 0644 $MBD/release/packaging/rpm-oel/my.cnf %{buildroot}%{_sysconfdir}/my.cnf
+%if 0%{?systemd}
+install -D -m 0755 %{SOURCE1} %{buildroot}%{_bindir}/mysql-systemd-start
+install -D -m 0644 %{SOURCE2} %{buildroot}%{_unitdir}/mysqld.service
+%else
+install -D -m 0755 $MBD/release/packaging/rpm-oel/mysql.init %{buildroot}%{_sysconfdir}/init.d/mysqld
+%endif
+install -D -m 0644 %{SOURCE3} %{buildroot}%{_prefix}/lib/tmpfiles.d/mysql.conf
+
+install -m 0755 $MBD/release/libmysqld/work/libmysqld.so.%{libmysqld_so_long} \
+ %{buildroot}%{_libdir}/mysql/libmysqld.so.%{libmysqld_so_long}
+ln -s libmysqld.so.%{libmysqld_so_long} %{buildroot}%{_libdir}/mysql/libmysqld.so.%{libmysqld_so_major}
+ln -s libmysqld.so.%{libmysqld_so_long} %{buildroot}%{_libdir}/mysql/libmysqld.so
+
+
+# Make library links
+install -d -m 0755 %{buildroot}%{_sysconfdir}/ld.so.conf.d
+echo "%{_libdir}/mysql" > %{buildroot}%{_sysconfdir}/ld.so.conf.d/mysql-%{_arch}.conf
+
+# multiarch support
+%ifarch %{multiarchs}
+mv %{buildroot}/%{_includedir}/mysql/my_config.h \
+ %{buildroot}/%{_includedir}/mysql/my_config_%{_arch}.h
+install -p -m 0644 %{SOURCE4} %{buildroot}/%{_includedir}/mysql/my_config.h
+mv %{buildroot}/%{_bindir}/mysql_config %{buildroot}/%{_bindir}/mysql_config-%{__isa_bits}
+install -p -m 0755 %{SOURCE5} %{buildroot}/%{_bindir}/mysql_config
+%endif
+
+# Install SELinux files in datadir
+install -m 0644 $MBD/%{src_dir}/support-files/RHEL4-SElinux/mysql.{fc,te} \
+ %{buildroot}%{_datadir}/mysql/SELinux/RHEL4
+
+# Remove files pages we explicitly do not want to package
+rm -rf %{buildroot}%{_datadir}/mysql/solaris
+rm -rf %{buildroot}%{_infodir}/mysql.info*
+rm -rf %{buildroot}%{_datadir}/mysql/binary-configure
+rm -rf %{buildroot}%{_datadir}/mysql/mysql.server
+rm -rf %{buildroot}%{_datadir}/mysql/mysqld_multi.server
+rm -f %{buildroot}%{_datadir}/mysql/{ndb-config-2-node,config*}.ini
+rm -f %{buildroot}%{_datadir}/mysql/my-*.cnf
+%if 0%{?systemd}
+rm -rf %{buildroot}%{_sysconfdir}/init.d/mysqld
+%endif
+rm -rf %{buildroot}%{_bindir}/mysql_embedded
+rm -rf %{buildroot}%{_bindir}/mysql_setpermission
+rm -rf %{buildroot}%{_mandir}/man1/mysql_setpermission.1*
+
+%check
+%if 0%{?runselftest}
+pushd release
+make test VERBOSE=1
+export MTR_BUILD_THREAD=auto
+pushd mysql-test
+./mtr \
+ --mem --parallel=auto --force --retry=0 \
+ --mysqld=--binlog-format=mixed \
+ --suite-timeout=720 --testcase-timeout=30
+rm -rf var/*
+%endif
+
+%pre server
+/usr/sbin/groupadd -g 27 -o -r mysql >/dev/null 2>&1 || :
+/usr/sbin/useradd -M -N -g mysql -o -r -d /var/lib/mysql -s /bin/bash \
+ -c "MySQL Server" -u 27 mysql >/dev/null 2>&1 || :
+
+%post server
+datadir=$(/usr/bin/my_print_defaults server mysqld | grep '^--datadir=' | sed -n 's/--datadir=//p')
+/bin/chmod 0755 "$datadir"
+/bin/touch /var/log/mysqld.log
+%if 0%{?systemd}
+%systemd_post mysqld.service
+/sbin/service mysqld enable >/dev/null 2>&1 || :
+%else
+/sbin/chkconfig --add mysqld
+%endif
+
+%preun server
+%if 0%{?systemd}
+%systemd_preun mysqld.service
+%else
+if [ "$1" = 0 ]; then
+ /sbin/service mysqld stop >/dev/null 2>&1 || :
+ /sbin/chkconfig --del mysqld
+fi
+%endif
+
+%postun server
+%if 0%{?systemd}
+%systemd_postun_with_restart mysqld.service
+%else
+if [ $1 -ge 1 ]; then
+ /sbin/service mysqld condrestart >/dev/null 2>&1 || :
+fi
+%endif
+
+%post libs -p /sbin/ldconfig
+
+%postun libs -p /sbin/ldconfig
+
+%post libs-compat -p /sbin/ldconfig
+
+%postun libs-compat -p /sbin/ldconfig
+
+%post embedded -p /sbin/ldconfig
+
+%postun embedded -p /sbin/ldconfig
+
+%files server
+%defattr(-, root, root, -)
+%doc %{?license_files_server} %{src_dir}/Docs/ChangeLog
+%doc %{src_dir}/Docs/INFO_SRC*
+%doc release/Docs/INFO_BIN*
+%attr(644, root, root) %{_mandir}/man1/innochecksum.1*
+%attr(644, root, root) %{_mandir}/man1/my_print_defaults.1*
+%attr(644, root, root) %{_mandir}/man1/myisam_ftdump.1*
+%attr(644, root, root) %{_mandir}/man1/myisamchk.1*
+%attr(644, root, root) %{_mandir}/man1/myisamlog.1*
+%attr(644, root, root) %{_mandir}/man1/myisampack.1*
+%attr(644, root, root) %{_mandir}/man1/mysql_convert_table_format.1*
+%attr(644, root, root) %{_mandir}/man1/mysql_fix_extensions.1*
+%attr(644, root, root) %{_mandir}/man8/mysqld.8*
+%attr(644, root, root) %{_mandir}/man1/mysqld_multi.1*
+%attr(644, root, root) %{_mandir}/man1/mysqld_safe.1*
+%attr(644, root, root) %{_mandir}/man1/mysqldumpslow.1*
+%attr(644, root, root) %{_mandir}/man1/mysql_install_db.1*
+%attr(644, root, root) %{_mandir}/man1/mysql_plugin.1*
+%attr(644, root, root) %{_mandir}/man1/mysql_secure_installation.1*
+%attr(644, root, root) %{_mandir}/man1/mysql_upgrade.1*
+%attr(644, root, root) %{_mandir}/man1/mysqlhotcopy.1*
+%attr(644, root, root) %{_mandir}/man1/mysqlman.1*
+%attr(644, root, root) %{_mandir}/man1/mysql.server.1*
+%attr(644, root, root) %{_mandir}/man1/mysqltest.1*
+%attr(644, root, root) %{_mandir}/man1/mysql_tzinfo_to_sql.1*
+%attr(644, root, root) %{_mandir}/man1/mysql_zap.1*
+%attr(644, root, root) %{_mandir}/man1/mysqlbug.1*
+%attr(644, root, root) %{_mandir}/man1/perror.1*
+%attr(644, root, root) %{_mandir}/man1/replace.1*
+%attr(644, root, root) %{_mandir}/man1/resolve_stack_dump.1*
+%attr(644, root, root) %{_mandir}/man1/resolveip.1*
+
+%config(noreplace) %{_sysconfdir}/my.cnf
+
+%attr(755, root, root) %{_bindir}/innochecksum
+%attr(755, root, root) %{_bindir}/my_print_defaults
+%attr(755, root, root) %{_bindir}/myisam_ftdump
+%attr(755, root, root) %{_bindir}/myisamchk
+%attr(755, root, root) %{_bindir}/myisamlog
+%attr(755, root, root) %{_bindir}/myisampack
+%attr(755, root, root) %{_bindir}/mysql_convert_table_format
+%attr(755, root, root) %{_bindir}/mysql_fix_extensions
+%attr(755, root, root) %{_bindir}/mysql_install_db
+%attr(755, root, root) %{_bindir}/mysql_plugin
+%attr(755, root, root) %{_bindir}/mysql_secure_installation
+%attr(755, root, root) %{_bindir}/mysql_tzinfo_to_sql
+%attr(755, root, root) %{_bindir}/mysql_upgrade
+%attr(755, root, root) %{_bindir}/mysql_zap
+%attr(755, root, root) %{_bindir}/mysqlbug
+%attr(755, root, root) %{_bindir}/mysqld_multi
+%attr(755, root, root) %{_bindir}/mysqld_safe
+%attr(755, root, root) %{_bindir}/mysqldumpslow
+%attr(755, root, root) %{_bindir}/mysqlhotcopy
+%attr(755, root, root) %{_bindir}/mysqltest
+%attr(755, root, root) %{_bindir}/perror
+%attr(755, root, root) %{_bindir}/replace
+%attr(755, root, root) %{_bindir}/resolve_stack_dump
+%attr(755, root, root) %{_bindir}/resolveip
+%if 0%{?systemd}
+%attr(755, root, root) %{_bindir}/mysql-systemd-start
+%endif
+%attr(755, root, root) %{_sbindir}/mysqld
+%attr(755, root, root) %{_sbindir}/mysqld-debug
+
+%{_libdir}/mysql/plugin
+
+%attr(644, root, root) %{_datadir}/mysql/fill_help_tables.sql
+%attr(644, root, root) %{_datadir}/mysql/mysql_system_tables.sql
+%attr(644, root, root) %{_datadir}/mysql/mysql_system_tables_data.sql
+%attr(644, root, root) %{_datadir}/mysql/mysql_test_data_timezone.sql
+%attr(644, root, root) %{_datadir}/mysql/mysql-log-rotate
+%attr(644, root, root) %{_datadir}/mysql/SELinux/RHEL4/mysql.fc
+%attr(644, root, root) %{_datadir}/mysql/SELinux/RHEL4/mysql.te
+%attr(644, root, root) %{_datadir}/mysql/magic
+%attr(644, root, root) %{_prefix}/lib/tmpfiles.d/mysql.conf
+%if 0%{?systemd}
+%attr(644, root, root) %{_unitdir}/mysql.service
+%else
+%attr(755, root, root) %{_sysconfdir}/init.d/mysqld
+%endif
+%attr(644, root, root) %config(noreplace,missingok) %{_sysconfdir}/logrotate.d/mysql
+%dir %attr(755, mysql, mysql) /var/lib/mysql
+%dir %attr(755, mysql, mysql) /var/run/mysqld
+
+%files common
+%defattr(-, root, root, -)
+%{_datadir}/mysql/charsets/
+%{_datadir}/mysql/errmsg-utf8.txt
+%{_datadir}/mysql/czech/
+%{_datadir}/mysql/danish/
+%{_datadir}/mysql/dutch/
+%{_datadir}/mysql/english/
+%{_datadir}/mysql/estonian/
+%{_datadir}/mysql/french/
+%{_datadir}/mysql/german/
+%{_datadir}/mysql/greek/
+%{_datadir}/mysql/hungarian/
+%{_datadir}/mysql/italian/
+%{_datadir}/mysql/japanese/
+%{_datadir}/mysql/korean/
+%{_datadir}/mysql/norwegian-ny/
+%{_datadir}/mysql/norwegian/
+%{_datadir}/mysql/polish/
+%{_datadir}/mysql/portuguese/
+%{_datadir}/mysql/romanian/
+%{_datadir}/mysql/russian/
+%{_datadir}/mysql/serbian/
+%{_datadir}/mysql/slovak/
+%{_datadir}/mysql/spanish/
+%{_datadir}/mysql/swedish/
+%{_datadir}/mysql/ukrainian/
+
+%files client
+%defattr(-, root, root, -)
+%attr(755, root, root) %{_bindir}/msql2mysql
+%attr(755, root, root) %{_bindir}/mysql
+%attr(755, root, root) %{_bindir}/mysql_find_rows
+%attr(755, root, root) %{_bindir}/mysql_waitpid
+%attr(755, root, root) %{_bindir}/mysqlaccess
+# XXX: This should be moved to %{_sysconfdir}
+%attr(644, root, root) %{_bindir}/mysqlaccess.conf
+%attr(755, root, root) %{_bindir}/mysqladmin
+%attr(755, root, root) %{_bindir}/mysqlbinlog
+%attr(755, root, root) %{_bindir}/mysqlcheck
+%attr(755, root, root) %{_bindir}/mysqldump
+%attr(755, root, root) %{_bindir}/mysqlimport
+%attr(755, root, root) %{_bindir}/mysqlshow
+%attr(755, root, root) %{_bindir}/mysqlslap
+%attr(755, root, root) %{_bindir}/mysql_config
+%attr(755, root, root) %{_bindir}/mysql_config-%{__isa_bits}
+
+%attr(644, root, root) %{_mandir}/man1/msql2mysql.1*
+%attr(644, root, root) %{_mandir}/man1/mysql.1*
+%attr(644, root, root) %{_mandir}/man1/mysql_find_rows.1*
+%attr(644, root, root) %{_mandir}/man1/mysql_waitpid.1*
+%attr(644, root, root) %{_mandir}/man1/mysqlaccess.1*
+%attr(644, root, root) %{_mandir}/man1/mysqladmin.1*
+%attr(644, root, root) %{_mandir}/man1/mysqlbinlog.1*
+%attr(644, root, root) %{_mandir}/man1/mysqlcheck.1*
+%attr(644, root, root) %{_mandir}/man1/mysqldump.1*
+%attr(644, root, root) %{_mandir}/man1/mysqlimport.1*
+%attr(644, root, root) %{_mandir}/man1/mysqlshow.1*
+%attr(644, root, root) %{_mandir}/man1/mysqlslap.1*
+
+%files devel
+%defattr(-, root, root, -)
+%attr(644, root, root) %{_mandir}/man1/comp_err.1*
+%attr(644, root, root) %{_mandir}/man1/mysql_config.1*
+%attr(755, root, root) %{_bindir}/mysql_config
+%attr(755, root, root) %{_bindir}/mysql_config-%{__isa_bits}
+%{_includedir}/mysql
+%{_datadir}/aclocal/mysql.m4
+%{_libdir}/mysql/libmysqlclient.a
+%{_libdir}/mysql/libmysqlclient_r.a
+%{_libdir}/mysql/libmysqlservices.a
+%{_libdir}/mysql/libmysqlclient_r.so
+%{_libdir}/mysql/libmysqlclient.so
+
+%files libs
+%defattr(-, root, root, -)
+%dir %attr(755, root, root) %{_libdir}/mysql
+%attr(644, root, root) %{_sysconfdir}/ld.so.conf.d/mysql-%{_arch}.conf
+%{_libdir}/mysql/libmysqlclient.so.18*
+%{_libdir}/mysql/libmysqlclient_r.so.18*
+
+%files libs-compat
+%defattr(-, root, root, -)
+%dir %attr(755, root, root) %{_libdir}/mysql
+%attr(644, root, root) %{_sysconfdir}/ld.so.conf.d/mysql-%{_arch}.conf
+%{_libdir}/mysql/libmysqlclient.so.16
+%{_libdir}/mysql/libmysqlclient.so.16.0.0
+%{_libdir}/mysql/libmysqlclient_r.so.16
+%{_libdir}/mysql/libmysqlclient_r.so.16.0.0
+
+%files test
+%defattr(-, root, root, -)
+%attr(-, root, root) %{_datadir}/mysql-test
+%attr(755, root, root) %{_bindir}/mysql_client_test
+%attr(755, root, root) %{_bindir}/mysql_client_test_embedded
+%attr(755, root, root) %{_bindir}/mysqltest_embedded
+%attr(644, root, root) %{_mandir}/man1/mysql_client_test.1*
+%attr(644, root, root) %{_mandir}/man1/mysql-stress-test.pl.1*
+%attr(644, root, root) %{_mandir}/man1/mysql-test-run.pl.1*
+%attr(644, root, root) %{_mandir}/man1/mysql_client_test_embedded.1*
+%attr(644, root, root) %{_mandir}/man1/mysqltest_embedded.1*
+
+%files embedded
+%defattr(-, root, root, -)
+%dir %attr(755, root, root) %{_libdir}/mysql
+%attr(644, root, root) %{_sysconfdir}/ld.so.conf.d/mysql-%{_arch}.conf
+%attr(644, root, root) %{_libdir}/mysql/libmysqld.so.*
+
+%files embedded-devel
+%defattr(-, root, root, -)
+%attr(644, root, root) %{_libdir}/mysql/libmysqld.a
+%attr(644, root, root) %{_libdir}/mysql/libmysqld-debug.a
+%attr(755, root, root) %{_libdir}/mysql/libmysqld.so
+
+%changelog
+* Fri Oct 25 2013 Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com> - 5.6.15-1
+- Fixed uln advanced rpm libyassl.a error
+- Updated to 5.6.15
+
+* Wed Oct 16 2013 Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com> - 5.6.14-3
+- Fixed mysql_install_db usage
+- Improved handling of plugin directory
+
+* Fri Sep 27 2013 Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com> - 5.6.14-2
+- Refresh mysql-install patch and service renaming
+
+* Mon Sep 16 2013 Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com> - 5.6.14-1
+- Updated to 5.6.14
+
+* Wed Sep 04 2013 Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com> - 5.6.13-5
+- Support upgrade from 5.5 ULN packages to 5.6
+
+* Tue Aug 27 2013 Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com> - 5.6.13-4
+- Enhanced perl filtering
+- Added openssl-devel to buildreq
+
+* Wed Aug 21 2013 Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com> - 5.6.13-3
+- Removed mysql_embedded binary to resolve multilib conflict issue
+
+* Fri Aug 16 2013 Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com> - 5.6.13-2
+- Fixed Provides and Obsoletes issues in server, test packages
+
+* Wed Aug 14 2013 Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com> - 5.6.13-1
+- Updated to 5.6.13
+
+* Mon Aug 05 2013 Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com> - 5.6.12-9
+- Added files list to embedded packages
+
+* Thu Aug 01 2013 Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com> - 5.6.12-8
+- Updated libmysqld.a with libmysqld.so in embedded package
+
+* Mon Jul 29 2013 Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com> - 5.6.12-7
+- Updated test package dependency from client to server
+
+* Wed Jul 24 2013 Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com> - 5.6.12-6
+- Added libs-compat dependency under libs package to resolve server
+ installation conflicts issue.
+
+* Wed Jul 17 2013 Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com> - 5.6.12-5
+- Removed libmysqlclient.so.16 from libs package
+
+* Fri Jul 05 2013 Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com> - 5.6.12-4
+- Adjusted to work on OEL6
+
+* Wed Jun 26 2013 Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com> - 5.6.12-3
+- Move libs to mysql/
+- Basic multi arch support
+- Fix changelog dates
+
+* Thu Jun 20 2013 Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com> - 5.6.12-2
+- Major cleanup
+
+* Tue Jun 04 2013 Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com> - 5.6.12-1
+- Updated to 5.6.12
+
+* Mon Nov 05 2012 Joerg Bruehe <joerg.bruehe@oracle.com>
+
+- Allow to override the default to use the bundled yaSSL by an option like
+ --define="with_ssl /path/to/ssl"
+
+* Wed Oct 10 2012 Bjorn Munch <bjorn.munch@oracle.com>
+
+- Replace old my-*.cnf config file examples with template my-default.cnf
+
+* Fri Oct 05 2012 Joerg Bruehe <joerg.bruehe@oracle.com>
+
+- Let the installation use the new option "--random-passwords" of "mysql_install_db".
+ (Bug# 12794345 Ensure root password)
+- Fix an inconsistency: "new install" vs "upgrade" are told from the (non)existence
+ of "$mysql_datadir/mysql" (holding table "mysql.user" and other system stuff).
+
+* Tue Jul 24 2012 Joerg Bruehe <joerg.bruehe@oracle.com>
+
+- Add a macro "runselftest":
+ if set to 1 (default), the test suite will be run during the RPM build;
+ this can be oveeridden via the command line by adding
+ --define "runselftest 0"
+ Failures of the test suite will NOT make the RPM build fail!
+
+* Mon Jul 16 2012 Joerg Bruehe <joerg.bruehe@oracle.com>
+
+- Add the man page for the "mysql_config_editor".
+
+* Mon Jun 11 2012 Joerg Bruehe <joerg.bruehe@oracle.com>
+
+- Make sure newly added "SPECIFIC-ULN/" directory does not disturb packaging.
+
+* Wed Feb 29 2012 Brajmohan Saxena <brajmohan.saxena@oracle.com>
+
+- Removal all traces of the readline library from mysql (BUG 13738013)
+
+* Wed Sep 28 2011 Joerg Bruehe <joerg.bruehe@oracle.com>
+
+- Fix duplicate mentioning of "mysql_plugin" and its manual page,
+ it is better to keep alphabetic order in the files list (merging!).
+
+* Wed Sep 14 2011 Joerg Bruehe <joerg.bruehe@oracle.com>
+
+- Let the RPM capabilities ("obsoletes" etc) ensure that an upgrade may replace
+ the RPMs of any configuration (of the current or the preceding release series)
+ by the new ones. This is done by not using the implicitly generated capabilities
+ (which include the configuration name) and relying on more generic ones which
+ just list the function ("server", "client", ...).
+ The implicit generation cannot be prevented, so all these capabilities must be
+ explicitly listed in "Obsoletes:"
+
+* Tue Sep 13 2011 Jonathan Perkin <jonathan.perkin@oracle.com>
+
+- Add support for Oracle Linux 6 and Red Hat Enterprise Linux 6. Due to
+ changes in RPM behaviour ($RPM_BUILD_ROOT is removed prior to install)
+ this necessitated a move of the libmygcc.a installation to the install
+ phase, which is probably where it belonged in the first place.
+
+* Tue Sep 13 2011 Joerg Bruehe <joerg.bruehe@oracle.com>
+
+- "make_win_bin_dist" and its manual are dropped, cmake does it different.
+
+* Thu Sep 08 2011 Daniel Fischer <daniel.fischer@oracle.com>
+
+- Add mysql_plugin man page.
+
+* Tue Aug 30 2011 Tor Didriksen <tor.didriksen@oracle.com>
+
+- Set CXX=g++ by default to add a dependency on libgcc/libstdc++.
+ Also, remove the use of the -fno-exceptions and -fno-rtti flags.
+ TODO: update distro_buildreq/distro_requires
+
+* Tue Aug 30 2011 Joerg Bruehe <joerg.bruehe@oracle.com>
+
+- Add the manual page for "mysql_plugin" to the server package.
+
+* Fri Aug 19 2011 Joerg Bruehe <joerg.bruehe@oracle.com>
+
+- Null-upmerge the fix of bug#37165: This spec file is not affected.
+- Replace "/var/lib/mysql" by the spec file variable "%{mysqldatadir}".
+
+* Fri Aug 12 2011 Daniel Fischer <daniel.fischer@oracle.com>
+
+- Source plugin library files list from cmake-generated file.
+
+* Mon Jul 25 2011 Chuck Bell <chuck.bell@oracle.com>
+
+- Added the mysql_plugin client - enables or disables plugins.
+
+* Thu Jul 21 2011 Sunanda Menon <sunanda.menon@oracle.com>
+
+- Fix bug#12561297: Added the MySQL embedded binary
+
+* Thu Jul 07 2011 Joerg Bruehe <joerg.bruehe@oracle.com>
+
+- Fix bug#45415: "rpm upgrade recreates test database"
+ Let the creation of the "test" database happen only during a new installation,
+ not in an RPM upgrade.
+ This affects both the "mkdir" and the call of "mysql_install_db".
+
+* Wed Feb 09 2011 Joerg Bruehe <joerg.bruehe@oracle.com>
+
+- Fix bug#56581: If an installation deviates from the default file locations
+ ("datadir" and "pid-file"), the mechanism to detect a running server (on upgrade)
+ should still work, and use these locations.
+ The problem was that the fix for bug#27072 did not check for local settings.
+
+* Mon Jan 31 2011 Joerg Bruehe <joerg.bruehe@oracle.com>
+
+- Install the new "manifest" files: "INFO_SRC" and "INFO_BIN".
+
+* Tue Nov 23 2010 Jonathan Perkin <jonathan.perkin@oracle.com>
+
+- EXCEPTIONS-CLIENT has been deleted, remove it from here too
+- Support MYSQL_BUILD_MAKE_JFLAG environment variable for passing
+ a '-j' argument to make.
+
+* Mon Nov 1 2010 Georgi Kodinov <georgi.godinov@oracle.com>
+
+- Added test authentication (WL#1054) plugin binaries
+
+* Wed Oct 6 2010 Georgi Kodinov <georgi.godinov@oracle.com>
+
+- Added example external authentication (WL#1054) plugin binaries
+
+* Wed Aug 11 2010 Joerg Bruehe <joerg.bruehe@oracle.com>
+
+- With a recent spec file cleanup, names have changed: A "-community" part was dropped.
+ Reflect that in the "Obsoletes" specifications.
+- Add a "triggerpostun" to handle the uninstall of the "-community" server RPM.
+- This fixes bug#55015 "MySQL server is not restarted properly after RPM upgrade".
+
+* Tue Jun 15 2010 Joerg Bruehe <joerg.bruehe@sun.com>
+
+- Change the behaviour on installation and upgrade:
+ On installation, do not autostart the server.
+ *Iff* the server was stopped before the upgrade is started, this is taken as a
+ sign the administrator is handling that manually, and so the new server will
+ not be started automatically at the end of the upgrade.
+ The start/stop scripts will still be installed, so the server will be started
+ on the next machine boot.
+ This is the 5.5 version of fixing bug#27072 (RPM autostarting the server).
+
+* Tue Jun 1 2010 Jonathan Perkin <jonathan.perkin@oracle.com>
+
+- Implement SELinux checks from distribution-specific spec file.
+
+* Wed May 12 2010 Jonathan Perkin <jonathan.perkin@oracle.com>
+
+- Large number of changes to build using CMake
+- Introduce distribution-specific RPMs
+- Drop debuginfo, build all binaries with debug/symbols
+- Remove __os_install_post, use native macro
+- Remove _unpackaged_files_terminate_build, make it an error to have
+ unpackaged files
+- Remove cluster RPMs
+
+* Wed Mar 24 2010 Joerg Bruehe <joerg.bruehe@sun.com>
+
+- Add "--with-perfschema" to the configure options.
+
+* Mon Mar 22 2010 Joerg Bruehe <joerg.bruehe@sun.com>
+
+- User "usr/lib*" to allow for both "usr/lib" and "usr/lib64",
+ mask "rmdir" return code 1.
+- Remove "ha_example.*" files from the list, they aren't built.
+
+* Wed Mar 17 2010 Joerg Bruehe <joerg.bruehe@sun.com>
+
+- Fix a wrong path name in handling the debug plugins.
+
+* Wed Mar 10 2010 Joerg Bruehe <joerg.bruehe@sun.com>
+
+- Take the result of the debug plugin build and put it into the optimized tree,
+ so that it becomes part of the final installation;
+ include the files in the packlist. Part of the fixes for bug#49022.
+
+* Mon Mar 01 2010 Joerg Bruehe <joerg.bruehe@sun.com>
+
+- Set "Oracle and/or its affiliates" as the vendor and copyright owner,
+ accept upgrading from packages showing MySQL or Sun as vendor.
+
+* Fri Feb 12 2010 Joerg Bruehe <joerg.bruehe@sun.com>
+
+- Formatting changes:
+ Have a consistent structure of separator lines and of indentation
+ (8 leading blanks => tab).
+- Introduce the variable "src_dir".
+- Give the environment variables "MYSQL_BUILD_CC(CXX)" precedence
+ over "CC" ("CXX").
+- Drop the old "with_static" argument analysis, this is not supported
+ in 5.1 since ages.
+- Introduce variables to control the handlers individually, as well
+ as other options.
+- Use the new "--with-plugin" notation for the table handlers.
+- Drop handling "/etc/rc.d/init.d/mysql", the switch to "/etc/init.d/mysql"
+ was done back in 2002 already.
+- Make "--with-zlib-dir=bundled" the default, add an option to disable it.
+- Add missing manual pages to the file list.
+- Improve the runtime check for "libgcc.a", protect it against being tried
+ with the Intel compiler "icc".
+
+* Mon Jan 11 2010 Joerg Bruehe <joerg.bruehe@sun.com>
+
+- Change RPM file naming:
+ - Suffix like "-m2", "-rc" becomes part of version as "_m2", "_rc".
+ - Release counts from 1, not 0.
+
+* Wed Dec 23 2009 Joerg Bruehe <joerg.bruehe@sun.com>
+
+- The "semisync" plugin file name has lost its introductory "lib",
+ adapt the file lists for the subpackages.
+ This is a part missing from the fix for bug#48351.
+- Remove the "fix_privilege_tables" manual, it does not exist in 5.5
+ (and likely, the whole script will go, too).
+
+* Mon Nov 16 2009 Joerg Bruehe <joerg.bruehe@sun.com>
+
+- Fix some problems with the directives around "tcmalloc" (experimental),
+ remove erroneous traces of the InnoDB plugin (that is 5.1 only).
+
+* Tue Oct 06 2009 Magnus Blaudd <mvensson@mysql.com>
+
+- Removed mysql_fix_privilege_tables
+
+* Fri Oct 02 2009 Alexander Nozdrin <alexander.nozdrin@sun.com>
+
+- "mysqlmanager" got removed from version 5.4, all references deleted.
+
+* Fri Aug 28 2009 Joerg Bruehe <joerg.bruehe@sun.com>
+
+- Merge up from 5.1 to 5.4: Remove handling for the InnoDB plugin.
+
+* Thu Aug 27 2009 Joerg Bruehe <joerg.bruehe@sun.com>
+
+- This version does not contain the "Instance manager", "mysqlmanager":
+ Remove it from the spec file so that packaging succeeds.
+
+* Mon Aug 24 2009 Jonathan Perkin <jperkin@sun.com>
+
+- Add conditionals for bundled zlib and innodb plugin
+
+* Fri Aug 21 2009 Jonathan Perkin <jperkin@sun.com>
+
+- Install plugin libraries in appropriate packages.
+- Disable libdaemon_example and ftexample plugins.
+
+* Thu Aug 20 2009 Jonathan Perkin <jperkin@sun.com>
+
+- Update variable used for mysql-test suite location to match source.
+
+* Fri Nov 07 2008 Joerg Bruehe <joerg@mysql.com>
+
+- Correct yesterday's fix, so that it also works for the last flag,
+ and fix a wrong quoting: un-quoted quote marks must not be escaped.
+
+* Thu Nov 06 2008 Kent Boortz <kent.boortz@sun.com>
+
+- Removed "mysql_upgrade_shell"
+- Removed some copy/paste between debug and normal build
+
+* Thu Nov 06 2008 Joerg Bruehe <joerg@mysql.com>
+
+- Modify CFLAGS and CXXFLAGS such that a debug build is not optimized.
+ This should cover both gcc and icc flags. Fixes bug#40546.
+
+* Fri Aug 29 2008 Kent Boortz <kent@mysql.com>
+
+- Removed the "Federated" storage engine option, and enabled in all
+
+* Tue Aug 26 2008 Joerg Bruehe <joerg@mysql.com>
+
+- Get rid of the "warning: Installed (but unpackaged) file(s) found:"
+ Some generated files aren't needed in RPMs:
+ - the "sql-bench/" subdirectory
+ Some files were missing:
+ - /usr/share/aclocal/mysql.m4 ("devel" subpackage)
+ - Manual "mysqlbug" ("server" subpackage)
+ - Program "innochecksum" and its manual ("server" subpackage)
+ - Manual "mysql_find_rows" ("client" subpackage)
+ - Script "mysql_upgrade_shell" ("client" subpackage)
+ - Program "ndb_cpcd" and its manual ("ndb-extra" subpackage)
+ - Manuals "ndb_mgm" + "ndb_restore" ("ndb-tools" subpackage)
+
+* Mon Mar 31 2008 Kent Boortz <kent@mysql.com>
+
+- Made the "Federated" storage engine an option
+- Made the "Cluster" storage engine and sub packages an option
+
+* Wed Mar 19 2008 Joerg Bruehe <joerg@mysql.com>
+
+- Add the man pages for "ndbd" and "ndb_mgmd".
+
+* Mon Feb 18 2008 Timothy Smith <tim@mysql.com>
+
+- Require a manual upgrade if the alread-installed mysql-server is
+ from another vendor, or is of a different major version.
+
+* Wed May 02 2007 Joerg Bruehe <joerg@mysql.com>
+
+- "ndb_size.tmpl" is not needed any more,
+ "man1/mysql_install_db.1" lacked the trailing '*'.
+
+* Sat Apr 07 2007 Kent Boortz <kent@mysql.com>
+
+- Removed man page for "mysql_create_system_tables"
+
+* Wed Mar 21 2007 Daniel Fischer <df@mysql.com>
+
+- Add debug server.
+
+* Mon Mar 19 2007 Daniel Fischer <df@mysql.com>
+
+- Remove Max RPMs; the server RPMs contain a mysqld compiled with all
+ features that previously only were built into Max.
+
+* Fri Mar 02 2007 Joerg Bruehe <joerg@mysql.com>
+
+- Add several man pages for NDB which are now created.
+
+* Fri Jan 05 2007 Kent Boortz <kent@mysql.com>
+
+- Put back "libmygcc.a", found no real reason it was removed.
+
+- Add CFLAGS to gcc call with --print-libgcc-file, to make sure the
+ correct "libgcc.a" path is returned for the 32/64 bit architecture.
+
+* Mon Dec 18 2006 Joerg Bruehe <joerg@mysql.com>
+
+- Fix the move of "mysqlmanager" to section 8: Directory name was wrong.
+
+* Thu Dec 14 2006 Joerg Bruehe <joerg@mysql.com>
+
+- Include the new man pages for "my_print_defaults" and "mysql_tzinfo_to_sql"
+ in the server RPM.
+- The "mysqlmanager" man page got moved from section 1 to 8.
+
+* Thu Nov 30 2006 Joerg Bruehe <joerg@mysql.com>
+
+- Call "make install" using "benchdir_root=%{_datadir}",
+ because that is affecting the regression test suite as well.
+
+* Thu Nov 16 2006 Joerg Bruehe <joerg@mysql.com>
+
+- Explicitly note that the "MySQL-shared" RPMs (as built by MySQL AB)
+ replace "mysql-shared" (as distributed by SuSE) to allow easy upgrading
+ (bug#22081).
+
+* Mon Nov 13 2006 Joerg Bruehe <joerg@mysql.com>
+
+- Add "--with-partition" t 2006 Joerg Bruehe <joerg@mysql.com>
+
+- Use the Perl script to run the tests, because it will automatically check
+ whether the server is configured with SSL.
+
+* Tue Jun 27 2006 Joerg Bruehe <joerg@mysql.com>
+
+- move "mysqldumpslow" from the client RPM to the server RPM (bug#20216)
+
+- Revert all previous attempts to call "mysql_upgrade" during RPM upgrade,
+ there are some more aspects which need to be solved before this is possible.
+ For now, just ensure the binary "mysql_upgrade" is delivered and installysql.com>
+
+- To run "mysql_upgrade", we need a running server;
+ start it in isolation and skip password checks.
+
+* Sat May 20 2006 Kent Boortz <kent@mysql.com>
+
+- Always compile for PIC, position independent code.
+
+* Wed May 10 2006 Kent Boortz <kent@mysql.com>
+
+- Use character set "all" when compiling with Cluster, to make Cluster
+ nodes independent on the character set directory, and the problem
+ that two RPM sub packages both wants to install this directory.
+
+* Mon May 01 2006 Kent Boortz <kent@mysql.com>
+
+- Use "./libtool --mode=execute" instead of searching for the
+ executable in current directory and ".libs".
+
+* Fri Apr 28 2006 Kent Boortz <kent@mysql.com>
+
+- Install and run "mysql_upgrade"
+
+* Wed Apr 12 2006 Jim Winstead <jimw@mysql.com>
+
+- Remove sql-bench, and MySQL-bench RPM (will be built as an independent
+ project from the mysql-bench repository)
+
+* Tue Apr 11 2006 Jim Winstead <jimw@mysql.com>
+
+- Remove old mysqltestmanager and related programs
+* Sat Apr 01 2006 Kent Boortz <kent@mysql.com>
+
+- Set $LDFLAGS from $MYSQL_BUILD_LDFLAGS
+
+* Tue Mar 07 2006 Kent Boortz <kent@mysql.com>
+
+- Changed product name from "Community Edition" to "Community Server"
+
+* Mon Mar 06 2006 Kent Boortz <kent@mysql.com>
+
+- Fast mutexes is now disabled by default, but should be
+ used in Linux builds.
+
+* Mon Feb 20 2006 Kent Boortz <kent@mysql.com>
+
+- Reintroduced a max build
+- Limited testing of 'debug' and 'max' servers
+- Berkeley DB only in 'max'
+
+* Mon Feb 13 2006 Joerg Bruehe <joerg@mysql.com>
+
+- Use "-i" on "make test-force";
+ this is essential for later evaluation of this log file.
+
+* Thu Feb 09 2006 Kent Boortz <kent@mysql.com>
+
+- Pass '-static' to libtool, link static with our own libraries, dynamic
+ with system libraries. Link with the bundled zlib.
+
+* Wed Feb 08 2006 Kristian Nielsen <knielsen@mysql.com>
+
+- Modified RPM spec to match new 5.1 debug+max combined community packaging.
+
+* Sun Dec 18 2005 Kent Boortz <kent@mysql.com>
+
+- Added "client/mysqlslap"
+
+* Mon Dec 12 2005 Rodrigo Novo <rodrigo@mysql.com>
+
+- Added zlib to the list of (static) libraries installed
+- Added check against libtool wierdness (WRT: sql/mysqld || sql/.libs/mysqld)
+- Compile MySQL with bundled zlib
+- Fixed %packager name to "MySQL Production Engineering Team"
+
+* Mon Dec 05 2005 Joerg Bruehe <joerg@mysql.com>
+
+- Avoid using the "bundled" zlib on "shared" builds:
+ As it is not installed (on the build system), this gives dependency
+ problems with "libtool" causing the build to fail.
+ (Change was done on Nov 11, but left uncommented.)
+
+* Tue Nov 22 2005 Joerg Bruehe <joerg@mysql.com>
+
+- Extend the file existence check for "init.d/mysql" on un-install
+ to also guard the call to "insserv"/"chkconfig".
+
+* Thu Oct 27 2005 Lenz Grimmer <lenz@grimmer.com>
+
+- added more man pages
+
+* Wed Oct 19 2005 Kent Boortz <kent@mysql.com>
+
+- Made yaSSL support an option (off by default)
+
+* Wed Oct 19 2005 Kent Boortz <kent@mysql.com>
+
+- Enabled yaSSL support
+
+* Sat Oct 15 2005 Kent Boortz <kent@mysql.com>
+
+- Give mode arguments the same way in all places
+lenz@mysql.com>
+
+- fixed the removing of the RPM_BUILD_ROOT in the %clean section (the
+ $RBR variable did not get expanded, thus leaving old build roots behind)
+
+* Thu Aug 04 2005 Lenz Grimmer <lenz@mysql.com>
+
+- Fixed the creation of the mysql user group account in the postinstall
+ section (BUG 12348)
+- Fixed enabling the Archive storage engine in the Max binary
+
+* Tue Aug 02 2005 Lenz Grimmer <lenz@mysql.com>
+
+- Fixed the Requires: tag for the server RPM (BUG 12233)
+
+* Fri Jul 15 2005 Lenz Grimmer <lenz@mysql.com>
+
+- create a "mysql" user group and assign the mysql user account to that group
+ in the server postinstall section. (BUG 10984)
+
+* Tue Jun 14 2005 Lenz Grimmer <lenz@mysql.com>
+
+- Do not build statically on i386 by default, only when adding either "--with
+ static" or "--define '_with_static 1'" to the RPM build options. Static
+ linking really only makes sense when linking against the specially patched
+ glibc 2.2.5.
+
+* Mon Jun 06 2005 Lenz Grimmer <lenz@mysql.com>
+
+- added mysql_client_test to the "bench" subpackage (BUG 10676)
+- added the libndbclient static and shared libraries (BUG 10676)
+
+* Wed Jun 01 2005 Lenz Grimmer <lenz@mysql.com>
+
+- use "mysqldatadir" variable instead of hard-coding the path multiple times
+- use the "mysqld_user" variable on all occasions a user name is referenced
+- removed (incomplete) Brazilian translations
+- removed redundant release tags from the subpackage descriptions
+
+* Wed May 25 2005 Joerg Bruehe <joerg@mysql.com>
+
+- Added a "make clean" between separate calls to "BuildMySQL".
+
+* Thu May 12 2005 Guilhem Bichot <guilhem@mysql.com>
+
+- Removed the mysql_tableinfo script made obsolete by the information schema
+
+* Wed Apr 20 2005 Lenz Grimmer <lenz@mysql.com>
+
+- Enabled the "blackhole" storage engine for the Max RPM
+
+* Wed Apr 13 2005 Lenz Grimmer <lenz@mysql.com>
+
+- removed the MySQL manual files (html/ps/texi) - they have been removed
+ from the MySQL sources and are now available seperately.
+
+* Mon Apr 4 2005 Petr Chardin <petr@mysql.com>
+
+- old mysqlmanager, mysq* Mon Feb 7 2005 Tomas Ulin <tomas@mysql.com>
+
+- enabled the "Ndbcluster" storage engine for the max binary
+- added extra make install in ndb subdir after Max build to get ndb binaries
+- added packages for ndbcluster storage engine
+
+* Fri Jan 14 2005 Lenz Grimmer <lenz@mysql.com>
+
+- replaced obsoleted "BuildPrereq" with "BuildRequires" instead
+
+* Thu Jan 13 2005 Lenz Grimmer <lenz@mysql.com>
+
+- enabled the "Federated" storage engine for the max binary
+
+* Tue Jan 04 2005 Petr Chardin <petr@mysql.com>
+
+- ISAM and merge storage engines were purged. As well as appropriate
+ tools and manpages (isamchk and isamlog)
+
+* Fri Dec 31 2004 Lenz Grimmer <lenz@mysql.com>
+
+- enabled the "Archive" storage engine for the max binary
+- enabled the "CSV" storage engine for the max binary
+- enabled the "Example" storage engine for the max binary
+
+* Thu Aug 26 2004 Lenz Grimmer <lenz@mysql.com>
+
+- MySQL-Max now requires MySQL-server instead of MySQL (BUG 3860)
+
+* Fri Aug 20 2004 Lenz Grimmer <lenz@mysql.com>
+
+- do not link statically on IA64/AMD64 as these systems do not have
+ a patched glibc installed
+
+* Tue Aug 10 2004 Lenz Grimmer <lenz@mysql.com>
+
+- Added libmygcc.a to the devel subpackage (required to link applications
+ against the the embedded server libmysqld.a) (BUG 4921)
+
+* Mon Aug 09 2004 Lenz Grimmer <lenz@mysql.com>
+
+- Added EXCEPTIONS-CLIENT to the "devel" package
+
+* Thu Jul 29 2004 Lenz Grimmer <lenz@mysql.com>
+
+- disabled OpenSSL in the Max binaries again (the RPM packages were the
+ only exception to this anyway) (BUG 1043)
+
+* Wed Jun 30 2004 Lenz Grimmer <lenz@mysql.com>
+
+- fixed server postinstall (mysql_install_db was called with the wrong
+ parameter)
+
+* Thu Jun 24 2004 Lenz Grimmer <lenz@mysql.com>
+
+- added mysql_tzinfo_to_sql to the server subpackage
+- run "make clean" instead of "make distclean"
+
+* Mon Apr 05 2004 Lenz Grimmer <lenz@mysql.com>
+
+- added ncurses-devel to the build prerequisites (BUG 3377)
+
+* Thu Feb 12 2004 Lenz Grimmer <lenz@mysql.com>
+
+- when using gcc, _always_ use CXX=gcc
+- replaced Copyright with License field (Copyright is obsolete)
+
+* Tue Feb 03 2004 Lenz Grimmer <lenz@mysql.com>
+
+- added myisam_ftdump to the Server package
+
+* Tue Jan 13 2004 Lenz Grimmer <lenz@mysql.com>
+
+- link the mysql client against libreadline instead of libedit (BUG 2289)
+
+* Mon Dec 22 2003 Lenz Grimmer <lenz@mysql.com>
+
+- marked /etc/logrotate.d/mysql as a config file (BUG 2156)
+
+* Sat Dec 13 2003 Lenz Grimmer <lenz@mysql.com>
+
+- fixed file permissions (BUG 1672)
+
+* Thu Dec 11 2003 Lenz Grimmer <lenz@mysql.com>
+
+- made testing for gcc3 a bit more robust
+
+* Fri Dec 05 2003 Lenz Grimmer <lenz@mysql.com>
+
+- added missing file mysql_create_system_tables to the server subpackage
+
+* Fri Nov 21 2003 Lenz Grimmer <lenz@mysql.com>
+
+- removed dependency on MySQL-client from the MySQL-devel subpackage
+ as it is not really required. (BUG 1610)
+
+* Fri Aug 29 2003 Lenz Grimmer <lenz@mysql.com>
+
+- Fixed BUG 1162 (removed macro names from the changelog)
+- Really fixed BUG 998 (disable the checking for installed but
+ unpackaged files)
+
+* Tue Aug 05 2003 Lenz Grimmer <lenz@mysql.com>
+
+- Fixed BUG 959 (libmysqld not being compiled properly)
+- Fixed BUG 998 (RPM build errors): added missing files to the
+ distribution (mysql_fix_extensions, mysql_tableinfo, mysqldumpslow,
+ mysql_fix_privilege_tables.1), removed "-n" from install section.
+
+* Wed Jul 09 2003 Lenz Grimmer <lenz@mysql.com>
+
+- removed the GIF Icon (file was not included in the sources anyway)
+- removed unused variable shared_lib_version
+- do not run automake before building the standard binary
+ (should not be necessary)
+- add server suffix '-standard' to standard binary (to be in line
+ with the binary tarball distributions)
+- Use more RPM macros (_exec_prefix, _sbindir, _libdir, _sysconfdir,
+ _datadir, _includedir) throughout the spec file.
+- allow overriding CC and CXX (required when building with other compilers)
+
+* Fri May 16 2003 Lenz Grimmer <lenz@mysql.com>
+
+- re-enabled RAID again
+
+* Wed Apr 30 2003 Lenz Grimmer <lenz@mysql.com>
+
+- disabled MyISAM RAID (--with-raid)- it throws an assertion which
+ needs to be investigated first.
+
+* Mon Mar 10 2003 Lenz Grimmer <lenz@mysql.com>
+
+- added missing file mysql_secure_installation to server subpackage
+ (BUG 141)
+
+* Tue Feb 11 2003 Lenz Grimmer <lenz@mysql.com>
+
+- re-added missing pre- and post(un)install scripts to server subpackage
+- added config file /etc/my.cnf to the file list (just for completeness)
+- make sure to create the datadir with 755 permissions
+
+* Mon Jan 27 2003 Lenz Grimmer <lenz@mysql.com>
+
+- removed unusedql.com>
+
+- Reworked the build steps a little bit: the Max binary is supposed
+ to include OpenSSL, which cannot be linked statically, thus trying
+ to statically link against a special glibc is futile anyway
+- because of this, it is not required to make yet another build run
+ just to compile the shared libs (saves a lot of time)
+- updated package description of the Max subpackage
+- clean up the BuildRoot directory afterwards
+
+* Mon Jul 15 2002 Lenz Grimmer <lenz@mysql.com>
+
+- Updated Packager information
+- Fixed the build options: the regular package is supposed to
+ include InnoDB and linked statically, while the Max package
+ should include BDB and SSL support
+
+* 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
+- do not 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
+
+* Fri Apr 13 2001 Monty
+
+- Added mysqld-max to the distribution
+
+* Tue Jan 2 2001 Monty
+
+- Added mysql-test to the bench package
+
+* Fri Aug 18 2000 Tim Smith <tim@mysql.com>
+
+- Added separate libmysql_r directory; now both a threaded
+ and non-threaded library is shipped.
+
+* Tue Sep 28 1999 David Axmark <davida@mysql.com>
+
+- Added the support-files/my-example.cnf to the docs directory.
+
+- Removed devel dependency on base since it is about client
+ development.
+
+* Wed Sep 8 1999 David Axmark <davida@mysql.com>
+
+- Cleaned up some for 3.23.
+
+* Thu Jul 1 1999 David Axmark <davida@mysql.com>
+
+- Added support for shared libraries in a separate sub
+ package. Original fix by David Fox (dsfox@cogsci.ucsd.edu)
+
+- The --enable-assembler switch is now automatically disables on
+ platforms there assembler code is unavailable. This should allow
+ building this RPM on non i386 systems.
+
+* Mon Feb 22 1999 David Axmark <david@detron.se>
+
+- Removed unportable cc switches from the spec file. The defaults can
+ now be overridden with environment variables. This feature is used
+ to compile the official RPM with optimal (but compiler version
+ specific) switches.
+
+- Removed the repetitive description parts for the sub rpms. Maybe add
+ again if RPM gets a multiline macro capability.
+
+- Added support for a pt_BR translation. Translation contributed by
+ Jorge Godoy <jorge@bestway.com.br>.
+
+* Wed Nov 4 1998 David Axmark <david@detron.se>
+
+- A lot of changes in all the rpm and install scripts. This may even
+ be a working RPM :-)
+
+* Sun Aug 16 1998 David Axmark <david@detron.se>
+
+- A developers changelog for MySQL is available in the source RPM. And
+ there is a history of major user visible changed in the Reference
+ Manual. Only RPM specific changes will be documented here.
diff --git a/packaging/rpm-oel/mysql_config.sh b/packaging/rpm-oel/mysql_config.sh
new file mode 100644
index 00000000000..abe46e0ed74
--- /dev/null
+++ b/packaging/rpm-oel/mysql_config.sh
@@ -0,0 +1,28 @@
+#! /bin/bash
+#
+# Wrapper script for mysql_config to support multilib
+#
+# Only works on OEL6/RHEL6 and similar
+#
+# This command respects setarch
+
+bits=$(rpm --eval %__isa_bits)
+
+case $bits in
+ 32|64) status=known ;;
+ *) status=unknown ;;
+esac
+
+if [ "$status" = "unknown" ] ; then
+ echo "$0: error: command 'rpm --eval %__isa_bits' returned unknown value: $bits"
+ exit 1
+fi
+
+
+if [ -x /usr/bin/mysql_config-$bits ] ; then
+ /usr/bin/mysql_config-$bits "$@"
+else
+ echo "$0: error: needed binary: /usr/bin/mysql_config-$bits is missing. Please check your MySQL installation."
+ exit 1
+fi
+
diff --git a/packaging/rpm-oel/mysqld.service b/packaging/rpm-oel/mysqld.service
new file mode 100644
index 00000000000..78ef3bffe60
--- /dev/null
+++ b/packaging/rpm-oel/mysqld.service
@@ -0,0 +1,48 @@
+#
+# Simple MySQL systemd service file
+#
+# systemd supports lots of fancy features, look here (and linked docs) for a full list:
+# http://www.freedesktop.org/software/systemd/man/systemd.exec.html
+#
+# Note: this file ( /usr/lib/systemd/system/mysql.service )
+# will be overwritten on package upgrade, please copy the file to
+#
+# /etc/systemd/system/mysql.service
+#
+# to make needed changes.
+#
+# systemd-delta can be used to check differences between the two mysql.service files.
+#
+
+[Unit]
+Description=MySQL Community Server
+After=network.target
+After=syslog.target
+
+[Install]
+WantedBy=multi-user.target
+Alias=mysql.service
+
+[Service]
+User=mysql
+Group=mysql
+
+# Execute pre and post scripts as root
+PermissionsStartOnly=true
+
+# Needed to create system tables etc.
+ExecStartPre=/usr/bin/mysql-systemd-start pre
+
+# Start main service
+ExecStart=/usr/bin/mysqld_safe
+
+# Don't signal startup success before a ping works
+ExecStartPost=/usr/bin/mysql-systemd-start post
+
+# Give up if ping don't get an answer
+TimeoutSec=600
+
+Restart=always
+PrivateTmp=false
+
+