Changeset View
Changeset View
Standalone View
Standalone View
databases/percona56-server/Makefile
# Created by: Alex Dupre <ale@FreeBSD.org> | # Created by: Alex Dupre <ale@FreeBSD.org> | ||||
# $FreeBSD$ | # $FreeBSD$ | ||||
PORTNAME?= percona | PORTNAME?= percona | ||||
DISTVERSION= 5.6.27-75.0 | DISTVERSION= 5.6.29-76.2 | ||||
PORTREVISION?= 0 | PORTREVISION?= 0 | ||||
CATEGORIES= databases ipv6 | CATEGORIES= databases ipv6 | ||||
MASTER_SITES= http://www.percona.com/downloads/Percona-Server-5.6/Percona-Server-${DISTVERSION}/source/tarball/ | MASTER_SITES= http://www.percona.com/downloads/Percona-Server-5.6/Percona-Server-${DISTVERSION}/source/tarball/ | ||||
PKGNAMESUFFIX?= 56-server | PKGNAMESUFFIX?= 56-server | ||||
DISTNAME= percona-server-${DISTVERSION} | DISTNAME= percona-server-${DISTVERSION} | ||||
MAINTAINER= flo@FreeBSD.org | MAINTAINER= flo@FreeBSD.org | ||||
COMMENT?= Multithreaded SQL database (server) | COMMENT?= Multithreaded SQL database (server) | ||||
SLAVEDIRS= databases/percona56-client | SLAVEDIRS= databases/percona56-client | ||||
USES= bison cmake perl5 shebangfix | USES= bison cmake perl5 shebangfix | ||||
OPTIONS_DEFINE= OPENSSL FASTMTX INNODBMEMCACHED | OPTIONS_DEFINE= OPENSSL FASTMTX INNODBMEMCACHED TOKUDB | ||||
OPTIONS_DEFAULT= OPENSSL INNODBMEMCACHED | OPTIONS_DEFAULT= OPENSSL INNODBMEMCACHED | ||||
OPTIONS_SUB= yes | OPTIONS_SUB= yes | ||||
FASTMTX_DESC= Replace mutexes with spinlocks | FASTMTX_DESC= Replace mutexes with spinlocks | ||||
INNODBMEMCACHED_DESC= InnoDB Memcached plugin | INNODBMEMCACHED_DESC= InnoDB Memcached plugin | ||||
TOKUDB_DESC= TokuDB Engine (experimental) | |||||
TOKUDB_EXTRA_PATCHES=${PATCHDIR}/extrapatch-tokudb | |||||
mat: This should be named "extrapatch-tokudb" to be more consistent with the rest of the tree. | |||||
INNODBMEMCACHED_CMAKE_ON=-DWITH_INNODB_MEMCACHED=1 | INNODBMEMCACHED_CMAKE_ON=-DWITH_INNODB_MEMCACHED=1 | ||||
DATADIR= ${PREFIX}/share/mysql | DATADIR= ${PREFIX}/share/mysql | ||||
CMAKE_ARGS+= -DINSTALL_DOCDIR="share/doc/mysql" \ | CMAKE_ARGS+= -DINSTALL_DOCDIR="share/doc/mysql" \ | ||||
-DINSTALL_DOCREADMEDIR="share/doc/mysql" \ | -DINSTALL_DOCREADMEDIR="share/doc/mysql" \ | ||||
-DINSTALL_INCLUDEDIR="include/mysql" \ | -DINSTALL_INCLUDEDIR="include/mysql" \ | ||||
Not Done Inline ActionsThinking about it, this is a "server" only option, maybe you should add: OPTIONS_EXCLUDE=TOKUDB To databases/percona56-client/Makefile, so that it's not available as an option there. mat: Thinking about it, this is a "server" only option, maybe you should add… | |||||
-DINSTALL_INFODIR="info" \ | -DINSTALL_INFODIR="info" \ | ||||
-DINSTALL_LIBDIR="lib/mysql" \ | -DINSTALL_LIBDIR="lib/mysql" \ | ||||
-DINSTALL_MANDIR="man" \ | -DINSTALL_MANDIR="man" \ | ||||
-DINSTALL_MYSQLDATADIR="/var/db/mysql" \ | -DINSTALL_MYSQLDATADIR="/var/db/mysql" \ | ||||
-DINSTALL_MYSQLSHAREDIR="share/mysql" \ | -DINSTALL_MYSQLSHAREDIR="share/mysql" \ | ||||
-DINSTALL_MYSQLTESTDIR="share/mysql/tests" \ | -DINSTALL_MYSQLTESTDIR="share/mysql/tests" \ | ||||
-DINSTALL_PLUGINDIR="lib/mysql/plugin" \ | -DINSTALL_PLUGINDIR="lib/mysql/plugin" \ | ||||
-DINSTALL_SBINDIR="libexec" \ | -DINSTALL_SBINDIR="libexec" \ | ||||
-DINSTALL_SCRIPTDIR="bin" \ | -DINSTALL_SCRIPTDIR="bin" \ | ||||
-DINSTALL_SHAREDIR="share" \ | -DINSTALL_SHAREDIR="share" \ | ||||
-DINSTALL_SQLBENCHDIR="share/mysql" \ | -DINSTALL_SQLBENCHDIR="share/mysql" \ | ||||
-DINSTALL_SUPPORTFILESDIR="share/mysql" \ | -DINSTALL_SUPPORTFILESDIR="share/mysql" \ | ||||
-DWITH_EDITLINE=system \ | -DWITH_EDITLINE=system \ | ||||
-DWITH_LIBWRAP=1 \ | -DWITH_LIBWRAP=1 \ | ||||
-DHAVE_PAM=0 | -DHAVE_PAM=0 | ||||
SHEBANG_FILES= scripts/*.pl* scripts/*.sh | SHEBANG_FILES= scripts/*.pl* scripts/*.sh | ||||
.ifdef USE_MYSQL | .ifdef USE_MYSQL | ||||
.error You have `USE_MYSQL' variable defined either in environment or in make(1) arguments. Please undefine and try again. | .error You have `USE_MYSQL' variable defined either in environment or in make(1) arguments. Please undefine and try again. | ||||
.endif | .endif | ||||
.include <bsd.port.options.mk> | .include <bsd.port.options.mk> | ||||
Not Done Inline ActionsThat's not needed any more. (Sorry, should have said earlier.) mat: That's not needed any more. (Sorry, should have said earlier.) | |||||
.if ${PORT_OPTIONS:MOPENSSL} | .if ${PORT_OPTIONS:MOPENSSL} | ||||
CMAKE_ARGS+= -DWITH_SSL=bundled | CMAKE_ARGS+= -DWITH_SSL=bundled | ||||
.endif | .endif | ||||
.if ${PORT_OPTIONS:MFASTMTX} | .if ${PORT_OPTIONS:MFASTMTX} | ||||
CMAKE_ARGS+= -DWITH_FAST_MUTEXES=1 | CMAKE_ARGS+= -DWITH_FAST_MUTEXES=1 | ||||
.endif | .endif | ||||
# MySQL-Server part | # MySQL-Server part | ||||
.if !defined(CLIENT_ONLY) | .if !defined(CLIENT_ONLY) | ||||
.if ${PORT_OPTIONS:MTOKUDB} | |||||
CMAKE_ARGS+= -DUSE_CTAGS=0 | |||||
.if ${ARCH} != "amd64" | |||||
BROKEN= TokuDB engine does not compile on ${ARCH} | |||||
.endif | |||||
matUnsubmitted Not Done Inline ActionsI think these should be set using helpers and sooner in the Makefile, for example: TOKUDB_CMAKE_ON= -DUSE_CTAGS=0 TOKUDB_VARS= ONLY_FOR_ARCH=amd64 ONLY_FOR_ARCH_REASON= TokuDB engine does not compile on ${ARCH} The ONLY_FOR_ARCH_REASON can be set regardless as it's a no-op if ONLY_FOR_ARCH is not defined. (while there, you could convert the two options blocs just before to helpers too.) mat: I think these should be set using helpers and sooner in the Makefile, for example… | |||||
.endif | |||||
USE_MYSQL= yes | USE_MYSQL= yes | ||||
WANT_MYSQL_VER= 56p | WANT_MYSQL_VER= 56p | ||||
CONFLICTS_INSTALL= mysql*-server-* \ | CONFLICTS_INSTALL= mysql*-server-* \ | ||||
mariadb*-server-* \ | mariadb*-server-* \ | ||||
percona5[0-57-9]-server-* | percona5[0-57-9]-server-* | ||||
USE_RC_SUBR= mysql-server | USE_RC_SUBR= mysql-server | ||||
Show All 32 Lines |
This should be named "extrapatch-tokudb" to be more consistent with the rest of the tree.