pkgsrc/databases/redis/Makefile
adam 54db4b1ecc redis: updated to 6.0.9
Redis 6.0.9
===========

Upgrade urgency: SECURITY if you use an affected platform (see below).
                 Otherwise the upgrade urgency is MODERATE.

This release fixes a potential heap overflow when using a heap allocator other
than jemalloc or glibc's malloc. See:
https://github.com/redis/redis/pull/7963

Other fixes in this release:

New:
* Memory reporting of clients argv
* Add redis-cli control on raw format line delimiter
* Add redis-cli support for rediss:// -u prefix
* Get rss size support for NetBSD and DragonFlyBSD

Behavior changes:
* WATCH no longer ignores keys which have expired for MULTI/EXEC
* Correct OBJECT ENCODING response for stream type
* Allow blocked XREAD on a cluster replica
* TLS: Do not require CA config if not used

Bug fixes:
* INFO report real peak memory (before eviction)
* Allow requirepass config to clear the password
* Fix config rewrite file handling to make it really atomic
* Fix excessive categories being displayed from ACLs
* Add fsync in replica when full RDB payload was received
* Don't write replies to socket when output buffer limit reached
* Fix redis-check-rdb support for modules aux data
* Other smaller bug fixes

Modules API:
* Add APIs for version and compatibility checks
* Add RM_GetClientCertificate
* Add RM_GetDetachedThreadSafeContext
* Add RM_GetCommandKeys
* Add Swapdb Module Event
* RM_GetContextFlags provides indication of being in a fork child
* RM_GetContextFlags document missing flags: MULTI_DIRTY, IS_CHILD
* Expose real client on connection events
* Minor improvements to module blocked on keys
2020-10-27 10:22:34 +00:00

78 lines
2.1 KiB
Makefile

# $NetBSD: Makefile,v 1.62 2020/10/27 10:22:34 adam Exp $
DISTNAME= redis-6.0.9
CATEGORIES= databases
MASTER_SITES= http://download.redis.io/releases/
MAINTAINER= pkgsrc-users@NetBSD.org
HOMEPAGE= https://redis.io/
COMMENT= Persistent key-value database with built-in net interface
LICENSE= modified-bsd
TEST_DEPENDS+= tcl>=8.5:../../lang/tcl
USE_LANGUAGES= c99
USE_TOOLS+= gmake pkg-config
.include "../../mk/bsd.prefs.mk"
.include "options.mk"
RCD_SCRIPTS+= redis
RCD_SCRIPT_SRC.redis= ${FILESDIR}/redis.sh
DOCDIR= share/doc/redis
DOCFILES+= 00-RELEASENOTES BUGS COPYING README.md
EGDIR= ${PREFIX}/share/examples/${PKGBASE}
INSTALLATION_DIRS+= bin ${DOCDIR} ${EGDIR} ${EGDIR}/utils ${EGDIR}/tests
CONF_FILES= ${EGDIR}/redis.conf.example ${PKG_SYSCONFDIR}/redis.conf
CONF_FILES_MODE= 0640
BUILD_DEFS+= VARBASE REDIS_USER REDIS_GROUP REDIS_DATADIR
BUILD_DEFS+= REDIS_LOGDIR REDIS_PIDDIR PKG_SYSCONFDIR
REDIS_USER?= redis
REDIS_GROUP?= redis
REDIS_DATADIR?= ${VARBASE}/db/redis
REDIS_LOGDIR?= ${VARBASE}/log/redis
REDIS_PIDDIR?= ${VARBASE}/run
OWN_DIRS_PERMS+= ${REDIS_DATADIR} ${REDIS_USER} ${REDIS_GROUP} 0770
OWN_DIRS_PERMS+= ${REDIS_LOGDIR} ${REDIS_USER} ${REDIS_GROUP} 0770
PKG_GROUPS+= ${REDIS_GROUP}
PKG_USERS+= ${REDIS_USER}:${REDIS_GROUP}
PKG_GECOS.${REDIS_USER}= Redis daemon user
PKG_HOME.${REDIS_USER}= ${REDIS_DBDIR}
FILES_SUBST+= REDIS_USER=${REDIS_USER}
FILES_SUBST+= REDIS_GROUP=${REDIS_GROUP}
FILES_SUBST+= REDIS_DATADIR=${REDIS_DATADIR}
SUBST_CLASSES+= fix-paths
SUBST_STAGE.fix-paths= pre-configure
SUBST_MESSAGE.fix-paths= Fixing paths.
SUBST_FILES.fix-paths= redis.conf
SUBST_VARS.fix-paths= REDIS_DATADIR REDIS_LOGDIR REDIS_PIDDIR
CHECK_PORTABILITY_SKIP+= deps/jemalloc/configure
post-extract:
${CHMOD} -R g-w ${WRKSRC}
.if ${MACHINE_ARCH} == "i386"
# Need 8 byte atomics.
CFLAGS+= -march=i586
.endif
post-install:
${INSTALL_DATA} ${WRKSRC}/redis.conf ${DESTDIR}${EGDIR}/redis.conf.example
.for file in ${DOCFILES}
${INSTALL_DATA} ${WRKSRC}/${file} ${DESTDIR}${PREFIX}/${DOCDIR}/${file}
.endfor
do-test:
cd ${WRKSRC} && ${SH} runtest
.include "../../mk/pthread.buildlink3.mk"
.include "../../mk/bsd.pkg.mk"