diff options
author | Fabrice Fontaine <fontaine.fabrice@gmail.com> | 2017-01-28 21:24:05 +0100 |
---|---|---|
committer | Peter Korsgaard <peter@korsgaard.com> | 2017-01-30 21:09:57 +0100 |
commit | c487d0671d444a024707f8c5fa5d7571090b629f (patch) | |
tree | 455a95654de3ebafa6809745d1e1f941961842cd | |
parent | e528af6428b31c200c8c723467f758254c4cb612 (diff) | |
download | buildroot-c487d0671d444a024707f8c5fa5d7571090b629f.tar.gz buildroot-c487d0671d444a024707f8c5fa5d7571090b629f.zip |
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>
-rw-r--r-- | package/Config.in | 1 | ||||
-rw-r--r-- | package/hiredis/Config.in | 12 | ||||
-rw-r--r-- | package/hiredis/hiredis.hash | 2 | ||||
-rw-r--r-- | package/hiredis/hiredis.mk | 48 |
4 files changed, 63 insertions, 0 deletions
diff --git a/package/Config.in b/package/Config.in index 067ff3cc96..d1c517aa5c 100644 --- a/package/Config.in +++ b/package/Config.in @@ -945,6 +945,7 @@ menu "Database" source "package/berkeleydb/Config.in" source "package/cppdb/Config.in" source "package/gdbm/Config.in" + source "package/hiredis/Config.in" source "package/kompexsqlite/Config.in" source "package/leveldb/Config.in" source "package/libpqxx/Config.in" diff --git a/package/hiredis/Config.in b/package/hiredis/Config.in new file mode 100644 index 0000000000..1656355395 --- /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 0000000000..2c788a677f --- /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 0000000000..eb96711ab7 --- /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)) |