aboutsummaryrefslogtreecommitdiff
path: root/databases/mariadb101-server/Makefile
diff options
context:
space:
mode:
authorBernard Spil <brnrd@FreeBSD.org>2016-02-13 19:02:11 +0000
committerBernard Spil <brnrd@FreeBSD.org>2016-02-13 19:02:11 +0000
commiteaba6fd276e88a4d7d31206b165709689b057dc3 (patch)
treeec99111658fa37fc7b9707a154f5335176cd717c /databases/mariadb101-server/Makefile
parent7f59cc28ce8f2a13941fc97a4a155f49bbce6d02 (diff)
downloadports-eaba6fd276e88a4d7d31206b165709689b057dc3.tar.gz
ports-eaba6fd276e88a4d7d31206b165709689b057dc3.zip
[NEW PORTS] databases/mariadb101-{server,client}: 10.1.11
MariaDB is one of the most popular database servers in the world. It's made by the original developers of MySQL and guaranteed to stay open source. Notable users include Wikipedia, Facebook and Google. MariaDB turns data into structured information in a wide array of applications, ranging from banking to websites. It is an enhanced, drop-in replacement for MySQL. MariaDB is used because it is fast, scalable and robust, with a rich ecosystem of storage engines, plugins and many other tools make it very versatile for a wide variety of use cases. MariaDB is developed as open source software and as a relational database it provides an SQL interface for accessing data. This latest versions of MariaDB also include GIS and JSON features. WWW: http://mariadb.org/ Reviewed by: koobs (mentor), feld (mentor) Approved by: koobs (mentor), feld (mentor) Differential Revision: D3953
Notes
Notes: svn path=/head/; revision=408822
Diffstat (limited to 'databases/mariadb101-server/Makefile')
-rw-r--r--databases/mariadb101-server/Makefile163
1 files changed, 163 insertions, 0 deletions
diff --git a/databases/mariadb101-server/Makefile b/databases/mariadb101-server/Makefile
new file mode 100644
index 000000000000..98af9553609e
--- /dev/null
+++ b/databases/mariadb101-server/Makefile
@@ -0,0 +1,163 @@
+# $FreeBSD$
+
+PORTNAME?= mariadb
+PORTVERSION= 10.1.11
+CATEGORIES= databases ipv6
+MASTER_SITES= http://ftp.osuosl.org/pub/${SITESDIR}/ \
+ http://mirrors.supportex.net/${SITESDIR}/ \
+ http://mirror2.hs-esslingen.de/pub/Mirrors/${SITESDIR}/ \
+ http://gd.tuwien.ac.at/db/${SITESDIR}/ \
+ http://mirrors.fe.up.pt/pub/${SITESDIR}/ \
+ http://mirror.de.gsnw.de:56431/${SITESDIR}/ \
+ http://mirror.layerjet.com/${SITESDIR}/ \
+ http://mirror.switch.ch/mirror/${SITESDIR}/
+PKGNAMESUFFIX?= 101-server
+
+MAINTAINER= brnrd@FreeBSD.org
+COMMENT?= Multithreaded SQL database (server)
+
+LICENSE= GPLv2
+
+SUB_FILES= pkg-message
+PKGMESSAGE= ${WRKDIR}/pkg-message
+
+SLAVEDIRS= databases/mariadb101-client
+USES= bison:build cmake cpe execinfo shebangfix
+USE_LDCONFIG= ${PREFIX}/lib/mysql
+SHEBANG_FILES= scripts/*.sh
+SITESDIR= mariadb/mariadb-${PORTVERSION}/source
+
+OPTIONS_DEFINE= FASTMTX
+OPTIONS_SINGLE= GSSAPI
+OPTIONS_SINGLE_GSSAPI= GSSAPI_BASE GSSAPI_HEIMDAL GSSAPI_MIT
+OPTIONS_DEFAULT= GSSAPI_BASE
+
+FASTMTX_DESC= Replace mutexes with spinlocks
+
+.if !defined(CLIENT_ONLY)
+# MySQL-Server options
+OPTIONS_DEFINE+= MAXKEY
+OPTIONS_DEFAULT+= MAXKEY SPHINX SPIDER
+OPTIONS_GROUP= ENGINES
+OPTIONS_GROUP_ENGINES= INNOBASE MROONGA OQGRAPH SPHINX SPIDER TOKUDB
+
+ENGINES_DESC= Optional MariaDB storage engines
+INNOBASE_DESC= Build InnoDB engine next to XtraDB
+MAXKEY_DESC= Change max key length from 1000 to 4000
+MROONGA_DESC= Mroonga Full Text Search engine
+OQGRAPH_DESC= Open Query Graph Computation engine (Requires GCC)
+SPHINX_DESC= SphinxSE engine
+SPIDER_DESC= Partitioning and XA-transactions engine
+TOKUDB_DESC= Fractal tree index tree data structure engine
+.endif
+
+GSSAPI_BASE_USES= gssapi
+GSSAPI_HEIMDAL_USES= gssapi:heimdal
+GSSAPI_MIT_USES= gssapi:mit
+
+CMAKE_ARGS+= -DINSTALL_DOCDIR="share/doc/mysql" \
+ -DINSTALL_DOCREADMEDIR="share/doc/mysql" \
+ -DINSTALL_INCLUDEDIR="include/mysql" \
+ -DINSTALL_INFODIR="info" \
+ -DINSTALL_LIBDIR="lib/mysql" \
+ -DINSTALL_MANDIR="man" \
+ -DINSTALL_MYSQLDATADIR="/var/db/mysql" \
+ -DINSTALL_MYSQLSHAREDIR="share/mysql" \
+ -DINSTALL_MYSQLTESTDIR= \
+ -DINSTALL_PLUGINDIR="lib/mysql/plugin" \
+ -DINSTALL_SBINDIR="libexec" \
+ -DINSTALL_SCRIPTDIR="bin" \
+ -DINSTALL_SHAREDIR="share" \
+ -DINSTALL_SQLBENCHDIR= \
+ -DINSTALL_SUPPORTFILESDIR="share/mysql" \
+ -DWITH_UNIT_TESTS=0 \
+ -DWITH_LIBWRAP=1 \
+ -DWITH_SSL=${OPENSSLBASE} \
+ -DKRB5_CONFIG=${KRB5CONFIG} \
+ -DEXECINFO_ROOT=${LOCALBASE} \
+ -DCOMPILATION_COMMENT="FreeBSD Ports"
+
+DATADIR= ${PREFIX}/share/mysql
+
+.ifdef USE_MYSQL
+.error You have `USE_MYSQL' variable defined either in environment or in make(1) arguments. This leads to a circular dependency. Please undefine and try again.
+.endif
+
+CONFLICTS_INSTALL= mariadb5*-${PKGNAMESUFFIX:C/^[0-9]*-//}-* \
+ mariadb10[02-9]-${PKGNAMESUFFIX:C/^[0-9]*-//}-* \
+ mysql[0-9]*-${PKGNAMESUFFIX:C/^[0-9]*-//}-* \
+ percona[0-9]*-${PKGNAMESUFFIX:C/^[0-9]*-//}-*
+
+USE_OPENSSL= yes
+FASTMTX_CMAKE_ON= -DWITH_FAST_MUTEXES=1
+
+.if defined(CLIENT_ONLY)
+# MySQL-Client part
+USES+= readline
+.else
+# MySQL-Server part
+USE_MYSQL= yes
+WANT_MYSQL_VER= 101m
+OPTIONS_SUB= yes
+USE_LDCONFIG+= ${PREFIX}/lib/mysql/plugin
+USE_RC_SUBR= mysql-server
+USERS= mysql
+GROUPS= mysql
+CMAKE_ARGS+= -DWITH_EMBEDDED_SERVER="ON" \
+ -DCMAKE_SKIP_BUILD_RPATH:BOOL=YES \
+ -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1
+
+.for ENGINE in ${OPTIONS_GROUP_ENGINES}
+${ENGINE}_CMAKE_OFF= -DWITHOUT_${ENGINE}=1
+.endfor
+
+MAXKEY_EXTRA_PATCHES+= ${FILESDIR}/extra-patch-include_my__compare.h
+OQGRAPH_LIB_DEPENDS= libboost_system.so:${PORTSDIR}/devel/boost-libs \
+ libJudy.so:${PORTSDIR}/devel/judy
+# Currently OQGraph does not build using clang.
+# See See https://mariadb.atlassian.net/browse/MDEV-8051.
+OQGRAPH_USE= gcc=yes
+TOKUDB_LIB_DEPENDS= libsnappy.so:${PORTSDIR}/archivers/snappy
+
+post-install:
+# Remove programs to avoid conflict with mariadb101-client
+# These are "client" components, so there should be a switch that
+# prevents them from being installed but it's unknown right now
+ ${RM} ${STAGEDIR}${PREFIX}/bin/msql2mysql \
+ ${STAGEDIR}${PREFIX}/bin/mysql_config \
+ ${STAGEDIR}${PREFIX}/bin/mysql_find_rows \
+ ${STAGEDIR}${PREFIX}/bin/mysqlaccess
+ ${RM} -r ${STAGEDIR}/${PREFIX}/share/mysql/policy \
+ ${STAGEDIR}/${PREFIX}/share/pkgconfig
+# See https://mariadb.atlassian.net/browse/MDEV-9529
+ ${RM} ${STAGEDIR}/${PREFIX}/bin/maria_add_gis_sp.sql
+.endif # defined(CLIENT_ONLY)
+
+.include <bsd.port.options.mk>
+
+.if defined(WITH_OPENSSL_PORT) && ${PORT_OPTIONS:MGSSAPI_BASE}
+IGNORE= GSSAPI_BASE is not compatible with OpenSSL from ports. Use other GSSAPI options or OpenSSL from base system
+.endif
+
+.include <bsd.port.pre.mk>
+
+.if ${OPSYS} == DragonFly
+CMAKE_ARGS+= -DWITHOUT_TOKUDB
+.endif
+
+.if ${OPSYS} == FreeBSD && ${OSVERSION} >= 1000012
+CMAKE_ARGS+= -DWITH_JEMALLOC="system"
+.else
+CMAKE_ARGS+= -DWITH_JEMALLOC="no"
+.endif
+
+post-patch:
+ @${REINPLACE_CMD} 's/*.1/${MAN1}/' ${WRKSRC}/man/CMakeLists.txt
+ @${REINPLACE_CMD} 's|%%PREFIX%%|${PREFIX}|g' ${WRKSRC}/mysys/my_default.c
+ @${REINPLACE_CMD} 's|%%LOCALBASE%%|${LOCALBASE}|g' ${WRKSRC}/scripts/mysql_config.sh
+.if ${OPSYS} == DragonFly
+ ${CP} ${WRKSRC}/cmake/os/FreeBSD.cmake \
+ ${WRKSRC}/cmake/os/DragonFly.cmake
+.endif
+
+.include <bsd.port.post.mk>