diff --git a/databases/valkey/Makefile b/databases/valkey/Makefile index d955669fb236..26809f3997ad 100644 --- a/databases/valkey/Makefile +++ b/databases/valkey/Makefile @@ -1,69 +1,72 @@ PORTNAME= valkey -DISTVERSION= 8.1.4 +DISTVERSION= 9.0.0 CATEGORIES= databases MAINTAINER= bofh@freebsd.org COMMENT= High-performance data structure server that primarily serves key/value workloads WWW= https://valkey.io/ LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/COPYING USES= gmake pkgconfig tcl:test USE_GITHUB= yes GH_ACCOUNT= valkey-io USE_RC_SUBR= valkey valkeysentinel MAKE_ENV= OPTIMIZATION= \ V=1 LDFLAGS+= -lpthread -lm -lexecinfo SUB_FILES= pkg-message SUB_LIST+= PORTNAME=${PORTNAME} \ VALKEY_DBDIR=${VALKEY_DBDIR} \ VALKEY_LOGDIR=${VALKEY_LOGDIR} \ VALKEY_RUNDIR=${VALKEY_RUNDIR} \ VALKEY_USER=${USERS} USERS= valkey GROUPS= valkey PLIST_SUB+= VALKEY_DBDIR=${VALKEY_DBDIR} \ VALKEY_GROUP=${GROUPS} \ VALKEY_LOGDIR=${VALKEY_LOGDIR} \ VALKEY_RUNDIR=${VALKEY_RUNDIR} \ VALKEY_USER=${USERS} OPTIONS_DEFINE= JEMALLOC TLS OPTIONS_DEFAULT= TLS OPTIONS_SUB= yes JEMALLOC_DESC= Use jemalloc TLS_DESC= Use TLS JEMALLOC_MAKE_ENV= MALLOC=jemalloc TLS_USES= ssl TLS_MAKE_ENV= BUILD_TLS=yes VALKEY_DBDIR?= /var/db/valkey VALKEY_RUNDIR?= /var/run/valkey VALKEY_LOGDIR?= /var/log/valkey post-build: ${SED} ${SUB_LIST:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} \ ${WRKSRC}/valkey.conf > ${WRKDIR}/valkey.conf ${SED} ${SUB_LIST:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} \ ${WRKSRC}/sentinel.conf > ${WRKDIR}/valkey-sentinel.conf post-install: ${INSTALL_DATA} ${WRKDIR}/valkey.conf ${STAGEDIR}${PREFIX}/etc/valkey.conf.sample ${INSTALL_DATA} ${WRKDIR}/valkey-sentinel.conf ${STAGEDIR}${PREFIX}/etc/valkey-sentinel.conf.sample ${MKDIR} ${STAGEDIR}${VALKEY_LOGDIR} \ ${STAGEDIR}${VALKEY_DBDIR} \ ${STAGEDIR}${VALKEY_RUNDIR} + ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/valkey-benchmark + ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/valkey-cli + ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/valkey-server do-test: @cd ${WRKSRC} && ${TCLSH} tests/test_helper.tcl .include diff --git a/databases/valkey/distinfo b/databases/valkey/distinfo index 5ac94ab4a03b..90cbda2b68ff 100644 --- a/databases/valkey/distinfo +++ b/databases/valkey/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1759574183 -SHA256 (valkey-io-valkey-8.1.4_GH0.tar.gz) = 32350b017fee5e1a85f7e2d8580d581a0825ceae5cb3395075012c0970694dee -SIZE (valkey-io-valkey-8.1.4_GH0.tar.gz) = 3816705 +TIMESTAMP = 1761991615 +SHA256 (valkey-io-valkey-9.0.0_GH0.tar.gz) = 088f47e167eb640ea31af48c81c5d62ee56321f25a4b05d4e54a0ef34232724b +SIZE (valkey-io-valkey-9.0.0_GH0.tar.gz) = 4113905 diff --git a/databases/valkey/files/patch-deps-hiredis-Makefile b/databases/valkey/files/patch-deps-hiredis-Makefile deleted file mode 100644 index a2789076673c..000000000000 --- a/databases/valkey/files/patch-deps-hiredis-Makefile +++ /dev/null @@ -1,41 +0,0 @@ ---- deps/hiredis/Makefile.orig 2023-07-30 05:48:29 UTC -+++ deps/hiredis/Makefile -@@ -15,7 +15,7 @@ HIREDIS_PATCH=$(shell grep HIREDIS_PATCH hiredis.h | a - HIREDIS_SONAME=$(shell grep HIREDIS_SONAME hiredis.h | awk '{print $$3}') - - # Installation related variables and target --PREFIX?=/usr/local -+PREFIX?=${PREFIX} - INCLUDE_PATH?=include/hiredis - LIBRARY_PATH?=lib - PKGCONF_PATH?=pkgconfig -@@ -38,10 +38,8 @@ export REDIS_TEST_CONFIG - # Fallback to gcc when $CC is not in $PATH. - CC:=$(shell sh -c 'type $${CC%% *} >/dev/null 2>/dev/null && echo $(CC) || echo gcc') - CXX:=$(shell sh -c 'type $${CXX%% *} >/dev/null 2>/dev/null && echo $(CXX) || echo g++') --OPTIMIZATION?=-O3 - WARNINGS=-Wall -Wextra -Werror -Wstrict-prototypes -Wwrite-strings -Wno-missing-field-initializers --DEBUG_FLAGS?= -g -ggdb --REAL_CFLAGS=$(OPTIMIZATION) -fPIC $(CPPFLAGS) $(CFLAGS) $(WARNINGS) $(DEBUG_FLAGS) $(PLATFORM_FLAGS) -+REAL_CFLAGS=$(OPTIMIZATION) -fPIC $(CFLAGS) $(WARNINGS) $(DEBUG_FLAGS) $(PLATFORM_FLAGS) - REAL_LDFLAGS=$(LDFLAGS) - - DYLIBSUFFIX=so -@@ -122,7 +120,16 @@ ifeq ($(uname_S),FreeBSD) - else - REAL_CFLAGS+=-pedantic - endif -- -+ifeq ($(uname_S),FreeBSD) -+ CFLAGS?=$(CFLAGS) -+ CCLINK?=pthread -+ LDFLAGS?=-L. -Wl,-rpath,. -+ DYLIBNAME?=libhiredis.so -+ DYLIB_MAKE_CMD?=$(CC) -o ${DYLIBNAME} ${OBJ} -+ STLIBNAME?=libhiredis.a -+ STLIB_MAKE_CMD?=ar rcs ${STLIBNAME} ${OBJ} -+ SSL_LDFLAGS+=${OPENSSL_LDFLAGS} -+endif - ifeq ($(uname_S),SunOS) - IS_SUN_CC=$(shell sh -c '$(CC) -V 2>&1 |egrep -i -c "sun|studio"') - ifeq ($(IS_SUN_CC),1) diff --git a/databases/valkey/files/patch-deps-hiredis-net.c b/databases/valkey/files/patch-deps-hiredis-net.c deleted file mode 100644 index 434ebf0e81a4..000000000000 --- a/databases/valkey/files/patch-deps-hiredis-net.c +++ /dev/null @@ -1,39 +0,0 @@ ---- deps/hiredis/net.c.orig 2024-04-01 02:56:24 UTC -+++ deps/hiredis/net.c -@@ -185,14 +185,34 @@ int redisKeepAlive(redisContext *c, int interval) { - __redisSetError(c,REDIS_ERR_OTHER,strerror(errno)); - return REDIS_ERR; - } --#else --#if defined(__GLIBC__) && !defined(__FreeBSD_kernel__) -+#elif defined(__GLIBC__) - if (setsockopt(fd, IPPROTO_TCP, TCP_KEEPIDLE, &val, sizeof(val)) < 0) { - __redisSetError(c,REDIS_ERR_OTHER,strerror(errno)); - return REDIS_ERR; - } - - val = interval/3; -+ if (val == 0) val = 1; -+ if (setsockopt(fd, IPPROTO_TCP, TCP_KEEPINTVL, &val, sizeof(val)) < 0) { -+ __redisSetError(c,REDIS_ERR_OTHER,strerror(errno)); -+ return REDIS_ERR; -+ } -+ -+ val = 3; -+ if (setsockopt(fd, IPPROTO_TCP, TCP_KEEPCNT, &val, sizeof(val)) < 0) { -+ __redisSetError(c,REDIS_ERR_OTHER,strerror(errno)); -+ return REDIS_ERR; -+ } -+#else -+#if !defined(__sun) && defined(TCP_KEEPIDLE) && defined(TCP_KEEPINTL) && \ -+ defined(TCP_KEEPCNT) -+ val = interval; -+ if (setsockopt(fd, IPPROTO_TCP, TCP_KEEPIDLE, &val, sizeof(val)) < 0) { -+ __redisSetError(c,REDIS_ERR_OTHER,strerror(errno)); -+ return REDIS_ERR; -+ } -+ -+ val = internal/3; - if (val == 0) val = 1; - if (setsockopt(fd, IPPROTO_TCP, TCP_KEEPINTVL, &val, sizeof(val)) < 0) { - __redisSetError(c,REDIS_ERR_OTHER,strerror(errno)); diff --git a/databases/valkey/files/patch-deps-Makefile b/databases/valkey/files/patch-deps_Makefile similarity index 89% rename from databases/valkey/files/patch-deps-Makefile rename to databases/valkey/files/patch-deps_Makefile index 003ae439c2c5..f8fe98e667d5 100644 --- a/databases/valkey/files/patch-deps-Makefile +++ b/databases/valkey/files/patch-deps_Makefile @@ -1,21 +1,22 @@ ---- deps/Makefile.orig 2024-04-01 02:56:24 UTC +--- deps/Makefile.orig 2025-10-21 16:05:42 UTC +++ deps/Makefile -@@ -84,7 +84,7 @@ else +@@ -90,7 +90,7 @@ else ifeq ($(LUA_DEBUG),yes) LUA_CFLAGS+= -O0 -g -DLUA_USE_APICHECK else - LUA_CFLAGS+= -O2 + LUA_CFLAGS+= endif ifeq ($(LUA_COVERAGE),yes) LUA_CFLAGS += -fprofile-arcs -ftest-coverage -@@ -112,7 +112,7 @@ jemalloc: .make-prerequisites +@@ -118,8 +118,8 @@ jemalloc: .make-prerequisites jemalloc: .make-prerequisites @printf '%b %b\n' $(MAKECOLOR)MAKE$(ENDCOLOR) $(BINCOLOR)$@$(ENDCOLOR) - cd jemalloc && ./configure --disable-cxx --with-version=5.3.0-0-g0 --with-lg-quantum=3 --disable-cache-oblivious --with-jemalloc-prefix=je_ CFLAGS="$(JEMALLOC_CFLAGS)" LDFLAGS="$(JEMALLOC_LDFLAGS)" $(JEMALLOC_CONFIGURE_OPTS) - cd jemalloc && $(MAKE) lib/libjemalloc.a + cd jemalloc && ./configure --disable-cxx --with-version=5.3.0-0-g0 --with-lg-quantum=3 --disable-cache-oblivious --with-jemalloc-prefix=je_ CFLAGS="$(JEMALLOC_CFLAGS)" CXXFLAGS="$(JEMALLOC_CFLAGS)" LDFLAGS="$(JEMALLOC_LDFLAGS)" $(JEMALLOC_CONFIGURE_OPTS) + cd jemalloc && $(MAKE) CFLAGS="$(JEMALLOC_CFLAGS)" CXXFLAGS="$(JEMALLOC_CFLAGS)" LDFLAGS="$(JEMALLOC_LDFLAGS)" lib/libjemalloc.a .PHONY: jemalloc + diff --git a/databases/valkey/files/patch-src-Makefile b/databases/valkey/files/patch-src_Makefile similarity index 87% rename from databases/valkey/files/patch-src-Makefile rename to databases/valkey/files/patch-src_Makefile index 483fe6891dbb..076a6dac403a 100644 --- a/databases/valkey/files/patch-src-Makefile +++ b/databases/valkey/files/patch-src_Makefile @@ -1,54 +1,54 @@ ---- src/Makefile.orig 2024-08-01 15:59:43 UTC +--- src/Makefile.orig 2025-10-21 16:05:42 UTC +++ src/Makefile @@ -61,8 +61,8 @@ endif STD+=-std=c99 endif -PREFIX?=/usr/local -INSTALL_BIN=$(PREFIX)/bin +PREFIX:=$(PREFIX) +INSTALL_BIN=$(DESTDIR)$(PREFIX)/bin INSTALL=install PKG_CONFIG?=pkg-config -@@ -145,7 +145,6 @@ FINAL_LIBS=-lm - endif +@@ -138,7 +138,6 @@ FINAL_LIBS=-lm + FINAL_CFLAGS=$(STD) $(WARN) $(OPT) $(DEBUG) $(CFLAGS) $(SERVER_CFLAGS) FINAL_LDFLAGS=$(LDFLAGS) $(OPT) $(SERVER_LDFLAGS) $(DEBUG) FINAL_LIBS=-lm -DEBUG=-g -ggdb # Linux ARM32 needs -latomic at linking time ifneq (,$(findstring armv,$(uname_M))) -@@ -189,6 +188,11 @@ else +@@ -182,6 +181,11 @@ else OPENSSL_PREFIX?=/usr/local/opt/openssl endif else +ifeq ($(uname_S),FreeBSD) + # FreeBSD + FINAL_CFLAGS?= $(CFLAGS) $(REDIS_CFLAGS) -I${PREFIX}/include + FINAL_LDFLAGS= $(LDFLAGS) -pthread +else ifeq ($(uname_S),AIX) # AIX FINAL_LDFLAGS+= -Wl,-bexpall -@@ -248,6 +252,7 @@ endif +@@ -241,6 +245,7 @@ endif endif endif endif +endif ifdef OPENSSL_PREFIX OPENSSL_CFLAGS=-I$(OPENSSL_PREFIX)/include -@@ -624,12 +629,6 @@ install: all +@@ -642,12 +647,6 @@ install: all @ln -sf $(SERVER_NAME) $(INSTALL_BIN)/$(ENGINE_CHECK_RDB_NAME) @ln -sf $(SERVER_NAME) $(INSTALL_BIN)/$(ENGINE_CHECK_AOF_NAME) @ln -sf $(SERVER_NAME) $(INSTALL_BIN)/$(ENGINE_SENTINEL_NAME) - $(call MAYBE_INSTALL_REDIS_SYMLINK,$(SERVER_NAME),$(INSTALL_BIN)) - $(call MAYBE_INSTALL_REDIS_SYMLINK,$(ENGINE_CLI_NAME),$(INSTALL_BIN)) - $(call MAYBE_INSTALL_REDIS_SYMLINK,$(ENGINE_BENCHMARK_NAME),$(INSTALL_BIN)) - $(call MAYBE_INSTALL_REDIS_SYMLINK,$(ENGINE_CHECK_RDB_NAME),$(INSTALL_BIN)) - $(call MAYBE_INSTALL_REDIS_SYMLINK,$(ENGINE_CHECK_AOF_NAME),$(INSTALL_BIN)) - $(call MAYBE_INSTALL_REDIS_SYMLINK,$(ENGINE_SENTINEL_NAME),$(INSTALL_BIN)) uninstall: @rm -f $(INSTALL_BIN)/{$(SERVER_NAME),$(ENGINE_BENCHMARK_NAME),$(ENGINE_CLI_NAME),$(ENGINE_CHECK_RDB_NAME),$(ENGINE_CHECK_AOF_NAME),$(ENGINE_SENTINEL_NAME)} diff --git a/databases/valkey/files/patch-valkey.conf b/databases/valkey/files/patch-valkey.conf index 513df990df09..6b8a6a96d93d 100644 --- a/databases/valkey/files/patch-valkey.conf +++ b/databases/valkey/files/patch-valkey.conf @@ -1,38 +1,38 @@ ---- valkey.conf.orig 2025-03-31 19:55:59 UTC +--- valkey.conf.orig 2025-10-21 16:05:42 UTC +++ valkey.conf -@@ -353,7 +353,7 @@ tcp-keepalive 300 +@@ -377,7 +377,7 @@ tcp-keepalive 300 # By default the server does not run as a daemon. Use 'yes' if you need it. # Note that the server will write a pid file in /var/run/valkey.pid when daemonized. # When the server is supervised by upstart or systemd, this parameter has no impact. -daemonize no +daemonize yes # If you run the server from upstart or systemd, the server can interact with your # supervision tree. Options: -@@ -385,7 +385,7 @@ daemonize no +@@ -409,7 +409,7 @@ daemonize no # # Note that on modern Linux systems "/run/valkey.pid" is more conforming # and should be used instead. -pidfile /var/run/valkey_6379.pid +pidfile %%VALKEY_RUNDIR%%/valkey.pid # Specify the server verbosity level. # This can be one of: -@@ -416,7 +416,7 @@ loglevel notice +@@ -440,7 +440,7 @@ loglevel notice # Specify the log file name. Also the empty string can be used to force # the server to log on the standard output. Note that if you use standard # output for logging but daemonize, logs will be sent to /dev/null -logfile "" +logfile %%VALKEY_LOGDIR%%/valkey.log # To enable logging to the system logger, just set 'syslog-enabled' to yes, # and optionally update the other syslog parameters to suit your needs. -@@ -606,7 +606,7 @@ rdb-del-sync-files no +@@ -631,7 +631,7 @@ rdb-del-sync-files no # Note that modifying 'dir' during runtime may have unexpected behavior, # for example when a child process is running, related file operations may # have unexpected effects. -dir ./ +dir %%VALKEY_DBDIR%%/ ################################# REPLICATION #################################