[Buildroot] [PATCH] redis: use BR2_TOOLCHAIN_HAS_LIBATOMIC
Gustavo Zacarias
gustavo at zacarias.com.ar
Mon Mar 28 14:11:01 UTC 2016
It uses __atomic_fetch_add_4 so libatomic must be pulled in if
necessary. Fixes:
http://autobuild.buildroot.net/results/dfd/dfdfd77463b0ddd7016202372afcad7fb6fc9ce4/
Signed-off-by: Gustavo Zacarias <gustavo at zacarias.com.ar>
---
package/redis/Config.in | 2 ++
package/redis/redis.mk | 10 +++++++++-
2 files changed, 11 insertions(+), 1 deletion(-)
diff --git a/package/redis/Config.in b/package/redis/Config.in
index 3b7b743..5d7edd8 100644
--- a/package/redis/Config.in
+++ b/package/redis/Config.in
@@ -1,6 +1,7 @@
config BR2_PACKAGE_REDIS
bool "redis"
depends on BR2_USE_MMU # fork()
+ depends on BR2_TOOLCHAIN_HAS_ATOMIC
depends on BR2_TOOLCHAIN_HAS_THREADS
help
Redis is an open source, advanced key-value store. It is
@@ -11,4 +12,5 @@ config BR2_PACKAGE_REDIS
comment "redis needs a toolchain w/ threads"
depends on BR2_USE_MMU
+ depends on BR2_TOOLCHAIN_HAS_ATOMIC
depends on !BR2_TOOLCHAIN_HAS_THREADS
diff --git a/package/redis/redis.mk b/package/redis/redis.mk
index 6a3dd01..b285ab5 100644
--- a/package/redis/redis.mk
+++ b/package/redis/redis.mk
@@ -13,10 +13,18 @@ define REDIS_USERS
redis -1 redis -1 * /var/lib/redis /bin/false - Redis Server
endef
+# Uses __atomic_fetch_add_4
+ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y)
+REDIS_LIBATOMIC = -latomic
+endif
+
# Redis doesn't support DESTDIR (yet, see
# https://github.com/antirez/redis/pull/609). We set PREFIX
# instead.
-REDIS_BUILDOPTS = $(TARGET_CONFIGURE_OPTS) \
+REDIS_BUILDOPTS = \
+ CC="$(TARGET_CC)" \
+ CFLAGS="$(TARGET_CFLAGS)" \
+ LDFLAGS="$(TARGET_LDFLAGS) $(REDIS_LIBATOMIC)" \
PREFIX=$(TARGET_DIR)/usr MALLOC=libc \
define REDIS_BUILD_CMDS
--
2.7.3
More information about the buildroot
mailing list