pkgsrc/databases/mysql55-client/Makefile.common
adam 008bf58894 Changes 5.5.18:
Functionality Added or Changed
* Upgrading from an Advanced GPL RPM package to an Advanced RPM package did not
  work. Now on Linux it is possible to use rpm -U to replace any installed
  MySQL product by any other of the same release family. It is not necessary to
  remove the old produce with rpm -e first.

Bugs Fixed
* Incompatible Change: Replication.
* During the table-opening process, memory was allocated and later freed that
  was needed view loading, even for statements that did not use views. These
  unnecessary allocation and free operations are no longer done.
* mysql_plugin mishandled the --plugin-ini, --mysqld, and --my-print-defaults
  options under some circumstances.
* mysql_plugin returned the wrong error code from failed server bootstrap
  execution.
* Several improvements were made to the libedit library bundled with MySQL
  distributions, and that is available for all platforms that MySQL supports
  except Windows.
* ARCHIVE tables with NULL columns could cause server crashes or become corrupt
  under concurrent load.
* OPTIMIZE TABLE could corrupt MyISAM tables if myisam_use_mmap was enabled.
* A query that selected a GROUP_CONCAT() function result could return different
  values depending on whether an ORDER BY of the function result was present.
* For FEDERATED tables, loss of connection to the remote table during some
  insert operations could cause a server crash.
2011-11-21 16:55:59 +00:00

112 lines
3.3 KiB
Text

# $NetBSD: Makefile.common,v 1.11 2011/11/21 16:55:59 adam Exp $
#
# used by databases/mysql55-client/Makefile
# used by databases/mysql55-server/Makefile
DISTNAME= mysql-5.5.18
CATEGORIES= databases
MASTER_SITES= ${MASTER_SITE_MYSQL:=MySQL-5.5/}
MAINTAINER?= pkgsrc-users@NetBSD.org
HOMEPAGE= http://www.mysql.com/
LICENSE= gnu-gpl-v2
PKG_DESTDIR_SUPPORT= user-destdir
DISTINFO_FILE?= ${.CURDIR}/../../databases/mysql55-client/distinfo
PATCHDIR?= ${.CURDIR}/../../databases/mysql55-client/patches
USE_CMAKE= yes
USE_GNU_READLINE= yes
USE_LANGUAGES= c c++
USE_TOOLS+= bash gmake perl:run
.include "../../mk/bsd.prefs.mk"
.include "options.mk"
# MYSQL_USER username of the database administrator
# MYSQL_GROUP group of the database administrator
# MYSQL_DATADIR home directory (location of the databases)
# MYSQL_CHARSET default character set
# MYSQL_EXTRA_CHARSET additional character set to be compiled in
MYSQL_USER?= mysql
MYSQL_GROUP?= mysql
MYSQL_DATADIR?= ${VARBASE}/mysql
MYSQL_CHARSET?= latin1
MYSQL_COLLATION?= latin1_swedish_ci
MYSQL_EXTRA_CHARSET?= all
PKG_USERS_VARS+= MYSQL_USER
PKG_GROUPS_VARS+= MYSQL_GROUP
CONFIG_SHELL= ${TOOLS_PATH.bash}
.if ${OPSYS} == "IRIX"
CFLAGS+= -DIRIX5 -DNEEDS_BSTRING_H
.endif
BUILD_DEFS+= VARBASE
# paths
CMAKE_ARGS+= -DINSTALL_DOCDIR="share/doc/mysql"
CMAKE_ARGS+= -DINSTALL_DOCREADMEDIR="share/doc/mysql"
CMAKE_ARGS+= -DINSTALL_INCLUDEDIR="include/mysql"
CMAKE_ARGS+= -DINSTALL_INFODIR="info"
CMAKE_ARGS+= -DINSTALL_MYSQLSHAREDIR="share/mysql"
CMAKE_ARGS+= -DINSTALL_MYSQLTESTDIR="share/mysql/test"
CMAKE_ARGS+= -DINSTALL_PLUGINDIR="lib/mysql/plugin"
CMAKE_ARGS+= -DINSTALL_SBINDIR="sbin"
CMAKE_ARGS+= -DINSTALL_SCRIPTDIR="bin"
CMAKE_ARGS+= -DINSTALL_SQLBENCHDIR="share/mysql/sql-bench"
CMAKE_ARGS+= -DINSTALL_SUPPORTFILESDIR="share/mysql"
CMAKE_ARGS+= -DMYSQL_DATADIR=${MYSQL_DATADIR}
# always use our own readline, not MySQL bundled one
CMAKE_ARGS+= -DWITH_LIBEDIT=OFF
CMAKE_ARGS+= -DWITH_READLINE=OFF
CMAKE_ARGS+= -DDEFAULT_CHARSET=${MYSQL_CHARSET:Q}
CMAKE_ARGS+= -DDEFAULT_COLLATION=${MYSQL_COLLATION:Q}
CMAKE_ARGS+= -DWITH_EXTRA_CHARSETS=${MYSQL_EXTRA_CHARSET:Q}
BROKEN_READLINE_DETECTION= yes # At least on RHEL 5.6
# MySQL 5 depends on builtin functions enabled with i486 and later with GCC.
.if ${OPSYS} == "NetBSD" && !empty(MACHINE_ARCH:Mi386)
GNU_ARCH.i386= i486
CFLAGS+= -march=i486
.endif
CPPFLAGS+= -Dunix
CFLAGS+= -DUSE_OLD_FUNCTIONS # 3.23.x compat
.if ${OPSYS} != "Interix"
CFLAGS+= -fPIC -DPIC
CXXFLAGS+= -fPIC -DPIC
.endif
# force HAVE_CURSES_H on Solaris since the configure script is broken
# and does not properly detect this, breaking the build later on.
.if ${OPSYS} == "SunOS"
CFLAGS+= -DHAVE_CURSES_H
CXXFLAGS+= -DHAVE_CURSES_H
.endif
.include "../../mk/pthread.buildlink3.mk"
.if defined(PTHREAD_TYPE) && (${PTHREAD_TYPE} == "pth")
CFLAGS+= -DSIGNALS_DONT_BREAK_READ
CXXFLAGS+= -DSIGNALS_DONT_BREAK_READ
.endif
LDFLAGS+= ${COMPILER_RPATH_FLAG}${PREFIX}/lib/mysql
SUBST_CLASSES+= scr
SUBST_STAGE.scr= pre-configure
SUBST_FILES.scr= scripts/mysql_install_db.sh scripts/mysqld_safe.sh \
scripts/mysql_secure_installation.sh \
support-files/mysql.server.sh
SUBST_SED.scr= -e "s,chown,${CHOWN},g"
SUBST_SED.scr+= -e "s,/bin/sh,${RCD_SCRIPTS_SHELL},g"
SUBST_MESSAGE.scr= Fixing scripts.
.include "../../devel/zlib/buildlink3.mk"