kumquat-buildroot/package/redis/redis.mk
Fabrice Fontaine dee6974d72 package/redis: disable -Werror
Disable -Werror to avoid the following build failure raised since bump
to version 7.2.1 in commit d49f53f8aa and
8e138ba44f:

In function 'hi_sdsll2str',
    inlined from 'hi_sdsfromlonglong' at sds.c:500:15:
sds.c:457:12: error: writing 1 byte into a region of size 0 [-Werror=stringop-overflow=]
  457 |         *s = *p;
      |         ~~~^~~~

Fixes: d49f53f8aa
 - http://autobuild.buildroot.org/results/fdc9f940b348430cb4da8efecc5cc047b21df281
 - http://autobuild.buildroot.org/results/e5747674d52b065203a0442f7cab13e8be5f426b

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-03-01 19:55:16 +01:00

71 lines
2.0 KiB
Makefile

################################################################################
#
# redis
#
################################################################################
REDIS_VERSION = 7.2.4
REDIS_SITE = http://download.redis.io/releases
REDIS_LICENSE = BSD-3-Clause (core); MIT and BSD family licenses (Bundled components)
REDIS_LICENSE_FILES = COPYING
REDIS_CPE_ID_VENDOR = redislabs
REDIS_SELINUX_MODULES = redis
define REDIS_USERS
redis -1 redis -1 * /var/lib/redis /bin/false - Redis Server
endef
# Uses __atomic_fetch_add_4. Adding -latomic to LDFLAGS does not work,
# because LDFLAGS is used before the list of object files. We need to
# add -latomic to FINAL_LIBS to provide -latomic at the correct place
# in the linking command.
ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y)
define REDIS_FIX_MAKEFILE
$(SED) 's/FINAL_LIBS=-lm/FINAL_LIBS=-lm -latomic/' $(@D)/src/Makefile
endef
REDIS_POST_PATCH_HOOKS = REDIS_FIX_MAKEFILE
endif
# Redis doesn't support DESTDIR (yet, see
# https://github.com/antirez/redis/pull/609). We set PREFIX
# instead.
REDIS_BUILDOPTS = $(TARGET_CONFIGURE_OPTS) \
PREFIX=$(TARGET_DIR)/usr MALLOC=libc WARNINGS=
ifeq ($(BR2_PACKAGE_SYSTEMD),y)
REDIS_DEPENDENCIES += systemd
REDIS_BUILDOPTS += USE_SYSTEMD=yes
else
REDIS_BUILDOPTS += USE_SYSTEMD=no
endif
ifeq ($(BR2_PACKAGE_LIBOPENSSL),y)
REDIS_DEPENDENCIES += libopenssl
REDIS_BUILDOPTS += BUILD_TLS=yes
else
REDIS_BUILDOPTS += BUILD_TLS=no
endif
define REDIS_BUILD_CMDS
$(TARGET_MAKE_ENV) $(MAKE) $(REDIS_BUILDOPTS) -C $(@D)
endef
define REDIS_INSTALL_TARGET_CMDS
$(TARGET_MAKE_ENV) $(MAKE) $(REDIS_BUILDOPTS) -C $(@D) \
LDCONFIG=true install
$(INSTALL) -D -m 0644 $(@D)/redis.conf \
$(TARGET_DIR)/etc/redis.conf
endef
define REDIS_INSTALL_INIT_SYSV
$(INSTALL) -m 0755 -D package/redis/S50redis \
$(TARGET_DIR)/etc/init.d/S50redis
endef
define REDIS_INSTALL_INIT_SYSTEMD
$(INSTALL) -D -m 0644 package/redis/redis.service \
$(TARGET_DIR)/usr/lib/systemd/system/redis.service
endef
$(eval $(generic-package))