diff --git a/databases/redis/Makefile b/databases/redis/Makefile index 07abbf78a3d5..65da3e1e9113 100644 --- a/databases/redis/Makefile +++ b/databases/redis/Makefile @@ -1,83 +1,85 @@ PORTNAME= redis DISTVERSION= 8.4.0 +PORTREVISION= 1 CATEGORIES= databases MASTER_SITES= https://download.redis.io/releases/ MAINTAINER= bofh@freebsd.org COMMENT= Persistent key-value database with built-in net interface WWW= https://redis.io/ LICENSE= AGPLv3 RSALv2 SSPLv1 LICENSE_COMB= dual LICENSE_NAME_RSALv2= Redis Source Available License v2 LICENSE_NAME_SSPLv1= Server Side Public License v1 LICENSE_FILE= ${WRKSRC}/LICENSE.txt LICENSE_PERMS_RSALv2= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept LICENSE_PERMS_SSPLv1= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept -USES= compiler:c11 cpe gmake tcl:test +USES= compiler:c11 cpe gmake localbase:ldflags pkgconfig tcl:test CPE_VENDOR= redislabs USE_RC_SUBR= redis sentinel MAKE_ENV= OPTIMIZATION= \ V=yo +BINARY_ALIAS= gmd5sum=md5sum #PIE_UNSAFE= ld: error: relocation R_X86_64_32 cannot be used against local \ # symbol; recompile with -fPIC CONFLICTS_INSTALL= redis-devel redis[0-9]* PORTSCOUT= limit:^[0-9\.]*$$ SUB_FILES= pkg-message SUB_LIST= PORTNAME=${PORTNAME} \ REDIS_DBDIR=${REDIS_DBDIR} \ REDIS_LOGDIR=${REDIS_LOGDIR} \ REDIS_RUNDIR=${REDIS_RUNDIR} \ REDIS_USER=${USERS} USERS= redis GROUPS= redis PLIST_SUB= REDIS_DBDIR=${REDIS_DBDIR} \ REDIS_GROUP=${GROUPS} \ REDIS_LOGDIR=${REDIS_LOGDIR} \ REDIS_RUNDIR=${REDIS_RUNDIR} \ REDIS_USER=${USERS} OPTIONS_DEFINE= JEMALLOC TLS OPTIONS_DEFAULT= TLS OPTIONS_SUB= yes JEMALLOC_DESC= Use jemalloc TLS_DESC= Use TLS (openssl req.) JEMALLOC_MAKE_ENV= USE_JEMALLOC=yes TLS_USES= ssl TLS_MAKE_ENV= BUILD_TLS=yes BIN_FILES= redis-benchmark redis-check-aof redis-check-rdb redis-cli \ redis-sentinel redis-server REDIS_DBDIR?= /var/db/redis REDIS_RUNDIR?= /var/run/redis REDIS_LOGDIR?= /var/log/redis post-patch-JEMALLOC-on: @${REINPLACE_CMD} '78s!Linux!FreeBSD!g' ${WRKSRC}/src/Makefile 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/ ${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} do-test: @cd ${WRKSRC} && ${TCLSH} tests/test_helper.tcl .include diff --git a/databases/redis/files/patch-deps_xxhash_Makefile b/databases/redis/files/patch-deps_xxhash_Makefile new file mode 100644 index 000000000000..f7dc31588e8f --- /dev/null +++ b/databases/redis/files/patch-deps_xxhash_Makefile @@ -0,0 +1,16 @@ +--- deps/xxhash/Makefile.orig 2025-12-02 07:19:06 UTC ++++ deps/xxhash/Makefile +@@ -186,11 +186,12 @@ clean: + $(RM) xxhsum.wasm xxhsum.js xxhsum.html + $(RM) xxh32sum$(EXT) xxh64sum$(EXT) xxh128sum$(EXT) xxh3sum$(EXT) + $(RM) fuzzer ++ifneq ($(wildcard tests/*),) + $(MAKE) -C tests clean + $(MAKE) -C tests/bench clean + $(MAKE) -C tests/collisions clean + @echo cleaning completed +- ++endif + + # ================================================= + # tests diff --git a/databases/redis/files/patch-tests_modules_Makefile b/databases/redis/files/patch-tests_modules_Makefile new file mode 100644 index 000000000000..b91426ed4d1b --- /dev/null +++ b/databases/redis/files/patch-tests_modules_Makefile @@ -0,0 +1,14 @@ +--- tests/modules/Makefile.orig 2025-12-02 10:24:24 UTC ++++ tests/modules/Makefile +@@ -34,6 +34,11 @@ endif + endif + endif + ++ifeq ($(uname_S),FreeBSD) ++ LD = cc ++ CC = cc ++endif ++ + # OS X 11.x doesn't have /usr/lib/libSystem.dylib and needs an explicit setting. + ifeq ($(uname_S),Darwin) + ifeq ("$(wildcard /usr/lib/libSystem.dylib)","")