freebsd-ports/databases/redis/Makefile
Sergey A. Osokin 92c2b72a49 Upgrade from 3.2.10 to 3.2.11.
<ChangeLog>

Upgrade urgency HIGH: Potentially critical bugs fixed.

AOF flush on SHUTDOWN did not cared to really write the AOF buffers
(not in the kernel but in the Redis process memory) to disk before exiting.
Calling SHUTDOWN during traffic resulted into not every operation to be
persisted on disk.

</ChangeLog>
2017-11-17 02:10:54 +00:00

105 lines
2.6 KiB
Makefile

# Created by: Sergey Skvortsov <skv@protey.ru>
# $FreeBSD$
PORTNAME= redis
DISTVERSION= 3.2.11
CATEGORIES= databases
MASTER_SITES= http://download.redis.io/releases/
MAINTAINER= osa@FreeBSD.org
COMMENT= Persistent key-value database with built-in net interface
LICENSE= BSD3CLAUSE
OPTIONS_DEFINE= TESTS TRIB
OPTIONS_RADIO= EXTLUA
OPTIONS_RADIO_EXTLUA= LUA LUAJIT
OPTIONS_SUB= yes
LUA_DESC= Use lang/lua instead of builtin lua
LUAJIT_DESC= Use lang/luajit instead of builtin lua
TESTS_DESC= Install lang/tcl for redis unit tests
TRIB_DESC= Install redis-trib.rb (lang/ruby req.)
.include <bsd.port.options.mk>
.if ${PORT_OPTIONS:MTRIB}
CATEGORIES+= ruby
USE_RUBY= yes
RUN_DEPENDS= rubygem-redis>=2.2:databases/rubygem-redis
.endif
.if ${PORT_OPTIONS:MLUA}
USES+= lua:51
EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-src-Makefile.lua
.endif
.if ${PORT_OPTIONS:MLUAJIT}
LIB_DEPENDS+= libluajit-5.1.so:lang/luajit
EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-src-Makefile.luajit
.endif
.if ${PORT_OPTIONS:MLUA} || ${PORT_OPTIONS:MLUAJIT}
CFLAGS+= -fPIC
LDFLAGS+= -Wl,-E
.endif
.if ${PORT_OPTIONS:MTESTS}
USES+= tcl:build
.endif
LDFLAGS+= -lpthread -lm -lexecinfo
CONFLICTS?= redis-devel-3.*
USES+= gmake
MAKE_ENV= "V=yo"
USE_RC_SUBR= redis sentinel
BIN_FILES= redis-benchmark redis-check-aof redis-check-rdb \
redis-cli redis-sentinel redis-server
PKGMESSAGE= ${WRKDIR}/pkg-message
USERS= redis
GROUPS= redis
REDIS_DBDIR?= /var/db/redis
REDIS_RUNDIR?= /var/run/redis
REDIS_LOGDIR?= /var/log/redis
SUB_FILES= pkg-message
SUB_LIST+= PORTNAME=${PORTNAME} \
REDIS_USER=${USERS} \
REDIS_DBDIR=${REDIS_DBDIR} \
REDIS_LOGDIR=${REDIS_LOGDIR} \
REDIS_RUNDIR=${REDIS_RUNDIR}
PLIST_SUB+= REDIS_USER=${USERS} \
REDIS_GROUP=${GROUPS} \
REDIS_LOGDIR=${REDIS_LOGDIR} \
REDIS_DBDIR=${REDIS_DBDIR} \
REDIS_RUNDIR=${REDIS_RUNDIR}
.if ${PORT_OPTIONS:MLUAJIT} || ${PORT_OPTIONS:MLUA}
post-patch:
@cd ${WRKSRC}/deps/lua/src && ${CP} fpconv.* lua_* strbuf.* ${WRKSRC}/src/
.endif
post-build:
${SED} ${SUB_LIST:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} \
${WRKSRC}/redis.conf > ${WRKDIR}/redis.conf
do-install:
${INSTALL_PROGRAM} ${BIN_FILES:C!^!${WRKSRC}/src/!} ${STAGEDIR}${PREFIX}/bin/
.if ${PORT_OPTIONS:MTRIB}
${INSTALL_SCRIPT} ${WRKSRC}/src/redis-trib.rb ${STAGEDIR}${PREFIX}/bin/
.endif
${INSTALL_DATA} ${WRKDIR}/redis.conf ${STAGEDIR}${PREFIX}/etc/redis.conf.sample
${INSTALL_DATA} ${WRKSRC}/sentinel.conf ${STAGEDIR}${PREFIX}/etc/sentinel.conf.sample
${MKDIR} ${STAGEDIR}${REDIS_LOGDIR} \
${STAGEDIR}${REDIS_DBDIR} \
${STAGEDIR}${REDIS_RUNDIR}
regression-test: build
@cd ${WRKSRC} && ${TCLSH} tests/test_helper.tcl
.include <bsd.port.mk>