summaryrefslogtreecommitdiff
path: root/package/hiredis
diff options
context:
space:
mode:
authorFabrice Fontaine <fontaine.fabrice@gmail.com>2017-01-28 21:24:05 +0100
committerPeter Korsgaard <peter@korsgaard.com>2017-01-30 21:09:57 +0100
commitc487d0671d444a024707f8c5fa5d7571090b629f (patch)
tree455a95654de3ebafa6809745d1e1f941961842cd /package/hiredis
parente528af6428b31c200c8c723467f758254c4cb612 (diff)
hiredis: new package
Minimalistic C client for Redis >= 1.2 It is minimalistic because it just adds minimal support for the protocol, but at the same time it uses a high level printf-alike API in order to make it much higher level than otherwise suggested by its minimal code base and the lack of explicit bindings for every Redis command. https://github.com/redis/hiredis [Peter: use install -t / -D, fix arguments] Signed-off-by: Fabrice Fontaine <fabrice.fontaine@orange.com> Reviewed-by: Romain Naour <romain.naour@gmail.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Diffstat (limited to 'package/hiredis')
-rw-r--r--package/hiredis/Config.in12
-rw-r--r--package/hiredis/hiredis.hash2
-rw-r--r--package/hiredis/hiredis.mk48
3 files changed, 62 insertions, 0 deletions
diff --git a/package/hiredis/Config.in b/package/hiredis/Config.in
new file mode 100644
index 000000000..165635539
--- /dev/null
+++ b/package/hiredis/Config.in
@@ -0,0 +1,12 @@
+config BR2_PACKAGE_HIREDIS
+ bool "hiredis"
+ help
+ Minimalistic C client for Redis >= 1.2
+
+ It is minimalistic because it just adds minimal support for
+ the protocol, but at the same time it uses a high level
+ printf-alike API in order to make it much higher level than
+ otherwise suggested by its minimal code base and the lack of
+ explicit bindings for every Redis command.
+
+ https://github.com/redis/hiredis
diff --git a/package/hiredis/hiredis.hash b/package/hiredis/hiredis.hash
new file mode 100644
index 000000000..2c788a677
--- /dev/null
+++ b/package/hiredis/hiredis.hash
@@ -0,0 +1,2 @@
+# Locally computed:
+sha256 717e6fc8dc2819bef522deaca516de9e51b9dfa68fe393b7db5c3b6079196f78 hiredis-v0.13.3.tar.gz
diff --git a/package/hiredis/hiredis.mk b/package/hiredis/hiredis.mk
new file mode 100644
index 000000000..eb96711ab
--- /dev/null
+++ b/package/hiredis/hiredis.mk
@@ -0,0 +1,48 @@
+################################################################################
+#
+# hiredis
+#
+################################################################################
+
+HIREDIS_VERSION = v0.13.3
+HIREDIS_SITE = $(call github,redis,hiredis,$(HIREDIS_VERSION))
+HIREDIS_LICENSE = BSD-3c
+HIREDIS_LICENSE_FILES = COPYING
+HIREDIS_INSTALL_STAGING = YES
+
+HIREDIS_MAKE_OPTS = \
+ $(TARGET_CONFIGURE_OPTS) \
+ PREFIX=/usr
+
+HIREDIS_TARGETS = hiredis.pc
+ifeq ($(BR2_STATIC_LIBS),y)
+HIREDIS_TARGETS += static
+else ifeq ($(BR2_SHARED_LIBS),y)
+HIREDIS_TARGETS += dynamic
+else ifeq $(BR2_SHARED_STATIC_LIBS),y)
+HIREDIS_TARGETS += dynamic static
+endif
+
+define HIREDIS_BUILD_CMDS
+ $(TARGET_MAKE_ENV) $(MAKE) $(HIREDIS_MAKE_OPTS) -C $(@D) \
+ $(HIREDIS_TARGETS)
+endef
+
+HIREDIS_INCLUDE_DIR = $(STAGING_DIR)/usr/include/hiredis
+
+# Do not call make install as this target will build shared and static libraries
+define HIREDIS_INSTALL_STAGING_CMDS
+ mkdir -p $(HIREDIS_INCLUDE_DIR)
+ cp -dpfr $(@D)/hiredis.h $(@D)/async.h $(@D)/read.h $(@D)/sds.h \
+ $(@D)/adapters $(HIREDIS_INCLUDE_DIR)
+ $(INSTALL) -D -m 0644 $(@D)/hiredis.pc \
+ $(STAGING_DIR)/usr/lib/pkgconfig/hiredis.pc
+ $(INSTALL) -m 0644 -t $(STAGING_DIR)/usr/lib $(@D)/libhiredis*
+endef
+
+define HIREDIS_INSTALL_TARGET_CMDS
+ mkdir -p $(TARGET_DIR)/usr/lib
+ $(INSTALL) -m 0644 -t $(TARGET_DIR)/usr/lib $(@D)/libhiredis*
+endef
+
+$(eval $(generic-package))