Files
bsdports/data/mariadb/Makefile
2025-08-27 17:10:19 +02:00

166 lines
5.6 KiB
Makefile

# $FreeBSD: head/databases/mariadb102-server/Makefile 470246 2018-05-17 18:57:17Z brnrd $
PORTNAME?= mariadb
PORTVERSION= 10.6.21
CATEGORIES= databases
#MASTER_SITES+= http://mirrors.supportex.net/${SITESDIR}/
#MASTER_SITES+= http://mirror2.hs-esslingen.de/pub/Mirrors/${SITESDIR}/
#MASTER_SITES+= http://gd.tuwien.ac.at/db/${SITESDIR}/
#MASTER_SITES+= http://mirrors.fe.up.pt/pub/${SITESDIR}/
#MASTER_SITES+= http://mirror.de.gsnw.de:56431/${SITESDIR}/
#MASTER_SITES+= http://mirror.layerjet.com/${SITESDIR}/
#MASTER_SITES+= http://mirror.switch.ch/mirror/${SITESDIR}/
#MASTER_SITES+= http://ftp.osuosl.org/pub/${SITESDIR}/
SITESDIR= mariadb/mariadb-${PORTVERSION}/source
MAINTAINER= brnrd@FreeBSD.org
COMMENT= Multithreaded SQL database (server)
LIB_DEPENDS+= libiconv.so:text/libiconv
LIB_DEPENDS+= libxml2.so:text/libxml2
#LIB_DEPENDS+= libodbc.so:data/unixODBC
#LIB_DEPENDS+= libsnappy.so:arch/libsnappy
#LIB_DEPENDS+= liblzo2.so:arch/liblzo2
#LIB_DEPENDS+= liblz4.so:arch/liblz4
USES= bison:build cmake compiler:c++11-lib shebangfix
#USE_LDCONFIG= ${PREFIX}/lib/mysql
SHEBANG_FILES= scripts/*.sh
DOCSDIR= ${PREFIX}/share/doc/mysql
CXXFLAGS+= -fcommon
CFLAGS+= -fcommon
# MySQL-Server options
#OPTIONS_DEFAULT+= CONNECT_EXTRA INNOBASE SPHINX SPIDER
#OPTIONS_GROUP= COMPRESSION ENGINES GROONGA
#OPTIONS_DEFINE= CONNECT_EXTRA
#OPTIONS_GROUP_COMPRESSION= LZ4 LZO SNAPPY ZSTD
#OPTIONS_GROUP_ENGINES= INNOBASE MROONGA OQGRAPH ROCKSDB SPHINX SPIDER TOKUDB XTRADB
#OPTIONS_GROUP_GROONGA= ZMQ MSGPACK
#OPTIONS_EXCLUDE_i386= TOKUDB
#CONNECT_EXTRA_DESC= Enable ODBC and XML in CONNECT engine
#COMPRESSION_DESC= Optional page compression
#ENGINES_DESC= Optional MariaDB storage engines
#GROONGA_DESC= Optional Mroonga features
#INNOBASE_DESC= InnoDB default engine
#MROONGA_DESC= Mroonga Full Text Search engine
#MSGPACK_DESC= MsgPack support
#OQGRAPH_DESC= Open Query Graph Computation engine
#ROCKSDB_DESC= RocksDB LSM engine (Alpha)
#SPHINX_DESC= SphinxSE engine
#SPIDER_DESC= Partitioning and XA-transactions engine
#TOKUDB_DESC= Fractal tree index tree data structure engine
#XTRADB_DESC= Build XtraDB engine next to InnoDB
#ZMQ_DESC= ZeroMQ support
#ZSTD_DESC+= Zstandard compression support (RocksDB only)
OPENSSLBASE= /usr
NCURSESLIB= /usr/lib
CMAKE_ARGS= -DCMAKE_PREFIX_PATH="${PREFIX}"
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_LIBDIR="lib/mysql"
CMAKE_ARGS+= -DINSTALL_MANDIR="man"
CMAKE_ARGS+= -DINSTALL_MYSQLDATADIR="/var/db/mysql"
CMAKE_ARGS+= -DINSTALL_MYSQLSHAREDIR="share/mysql"
CMAKE_ARGS+= -DINSTALL_MYSQLTESTDIR=
CMAKE_ARGS+= -DINSTALL_PLUGINDIR="lib/mysql/plugin"
CMAKE_ARGS+= -DINSTALL_SBINDIR="libexec"
CMAKE_ARGS+= -DINSTALL_SCRIPTDIR="bin"
CMAKE_ARGS+= -DINSTALL_SHAREDIR="share"
CMAKE_ARGS+= -DINSTALL_SQLBENCHDIR=""
CMAKE_ARGS+= -DINSTALL_SUPPORTFILESDIR="share/mysql"
CMAKE_ARGS+= -DDEFAULT_SYSCONFDIR="${PREFIX}/etc"
CMAKE_ARGS+= -DWITH_JEMALLOC="system"
CMAKE_ARGS+= -DWITH_LIBWRAP=0
CMAKE_ARGS+= -DWITH_SSL="${OPENSSLBASE}"
CMAKE_ARGS+= -DWITH_UNIT_TESTS=0
CMAKE_ARGS+= -DWITHOUT_DOCS=1
CMAKE_ARGS+= -DCURSES_CURSES_LIBRARY="/usr/lib/libcurses.so"
CMAKE_ARGS+= -DCURSES_FORM_LIBRARY="/usr/lib/libform.so"
CMAKE_ARGS+= -DCURSES_CURSES_LIBRARY="/usr/lib/libncurses.so"
CMAKE_ARGS+= -DICONV_LIBRARIES="${LOCALBASE}/lib/libiconv.so"
CMAKE_ARGS+= -DCURSES_NCURSES_LIBRARY="${NCURSESLIB}/libncurses.so"
CMAKE_ARGS+= -DOPENSSL_ROOT_DIR="${OPENSSLBASE}"
CMAKE_ARGS+= -DOPENSSL_CRYPTO_LIBRARY="${OPENSSLBASE}/lib/libcrypto.so"
CMAKE_ARGS+= -DOPENSSL_SSL_LIBRARY="${OPENSSLBASE}/lib/libssl.so"
CMAKE_ARGS+= -DREMOTEIO_PLUGIN_TYPE="NO"
CMAKE_ARGS+= -DCOMPILATION_COMMENT="FreeBSD Ports"
CMAKE_ARGS+= -DCMAKE_PREFIX_PATH=${PREFIX}
CMAKE_ARGS+= -DPLUGIN_AUTH_TEST_PLUGIN=NO
#CMAKE_ARGS+= -DCMAKE_SKIP_BUILD_RPATH=ON -DWITH_EMBEDDED_SERVER=ON
CMAKE_ARGS+= -DWITH_FAST_MUTEXES=1
#CMAKE_ARGS+= -DWITH_EMBEDDED_SERVER="ON"
CMAKE_ARGS+= -DPLUGIN_AUTH_GSSAPI_CLIENT=NO
CMAKE_ARGS+= -DCMAKE_SKIP_BUILD_RPATH:BOOL=YES
CMAKE_ARGS+= -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1
#CMAKE_ARGS+= -DWITHOUT_INNOBASE=1 -DPLUGIN_INNOBASE=NO
CMAKE_ARGS+= -DWITHOUT_MROONGA=1 -DPLUGIN_MROONGA=NO
CMAKE_ARGS+= -DWITHOUT_OQGRAPH=1 -DPLUGIN_OQGRAPH=NO
CMAKE_ARGS+= -DWITHOUT_ROCKSDB=1 -DPLUGIN_ROCKSDB=NO
CMAKE_ARGS+= -DWITHOUT_SPHINX=1 -DPLUGIN_SPHINX=NO
CMAKE_ARGS+= -DWITHOUT_SPIDER=1 -DPLUGIN_SPIDER=NO
CMAKE_ARGS+= -DWITHOUT_TOKUDB=1 -DPLUGIN_TOKUDB=NO
#CMAKE_ARGS+= -DWITHOUT_XTRADB=1 -DPLUGIN_XTRADB=NO
CMAKE_ARGS+= -DWITH_WSREP=NO
CMAKE_ARGS+= -DGRN_WITH_LZ4=OFF
CMAKE_ARGS+= -DWITH_INNODB_LZ4=OFF
CMAKE_ARGS+= -DWITH_INNODB_LZO=OFF
CMAKE_ARGS+= -DWITH_INNODB_SNAPPY=OFF
CMAKE_ARGS+= -DWITH_ROCKSDB_LZ4=OFF
CMAKE_ARGS+= -DWITH_ROCKSDB_ZSTD=OFF
CMAKE_ARGS+= -DPLUGIN_AUTH_GSSAPI=NO -DPLUGIN_AUTH_GSSAPI_CLIENT=NO
LDFLAGS+= -L${LOCALBASE}/lib -liconv
CFLAGS+= -I${LOCALBASE}/include -fPIE
CXXLAGS+= -I${LOCALBASE}/include -fPIE
MY_OWNER= mysql
MY_OWNER_ID= 88
MY_GROUP= mysql
MY_GROUP_ID= 88
MY_VAR_DIR= /var
MY_DB_DIR= ${MY_VAR_DIR}/db/mysql
SUB_LIST+= MY_OWNER=${MY_OWNER}
SUB_LIST+= MY_GROUP=${MY_GROUP}
SUB_LIST+= MY_OWNER_ID=${MY_OWNER_ID}
SUB_LIST+= MY_GROUP_ID=${MY_GROUP_ID}
SUB_LIST+= MY_DB_DIR=${MY_DB_DIR}
USE_RC_SUBR+= mysql
SUB_FILES= pkg-install pkg-deinstall pkg-message
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
post-install:
${RM} -rf ${STAGEDIR}/${PREFIX}/share/mysql/policy
cd ${STAGEDIR}${PREFIX}/lib && ${LN} -sf mysql/lib* .
.include <bsd.port.mk>
#EOF