[oe] [meta-oe][PATCH] hiredis: Add recipe

Andrea Galbusera gizero at gmail.com
Tue Jun 13 05:00:44 UTC 2017


On Mon, Jun 12, 2017 at 8:36 PM, Marian Pritsak <maryan.pricak at gmail.com>
wrote:

> Hiredis is a C client library for Redis database.
> Hiredis does not use autotools, but plane Makefile instead,
> so few changes had to be made, including removing hard coded
> compiler, setting INSTALL to 'cp -r' to to avoid host user
> comtamination QA issue, and setting PREFIX to ${prefix} instead of
> default /usr/local.
>
> Signed-off-by: Marian Pritsak <maryan.pricak at gmail.com>
> ---
>  .../0001-Makefile-remove-hardcoding-of-CC.patch    | 32
> ++++++++++++++++++++++
>  meta-oe/recipes-extended/hiredis/hiredis_0.13.1.bb | 21 ++++++++++++++
>  2 files changed, 53 insertions(+)
>  create mode 100644 meta-oe/recipes-extended/hiredis/files/0001-Makefile-
> remove-hardcoding-of-CC.patch
>  create mode 100644 meta-oe/recipes-extended/hiredis/hiredis_0.13.1.bb
>
> diff --git a/meta-oe/recipes-extended/hiredis/files/0001-Makefile-remove-hardcoding-of-CC.patch
> b/meta-oe/recipes-extended/hiredis/files/0001-Makefile-
> remove-hardcoding-of-CC.patch
> new file mode 100644
> index 0000000..fef2bc7
> --- /dev/null
> +++ b/meta-oe/recipes-extended/hiredis/files/0001-Makefile-
> remove-hardcoding-of-CC.patch
> @@ -0,0 +1,32 @@
> +From d13b918a3ff8b0ebfd1e7b18b198b4b45841d720 Mon Sep 17 00:00:00 2001
> +From: Andrea Galbusera <gizero at gmail.com>
> +Date: Fri, 31 Jul 2015 16:42:08 +0200
> +Subject: [PATCH] Makefile: remove hardcoding of CC
> +
> +* upgrade previous patch to avoid wiping CFLAGS. This fixes build on arm
> +platforms which previously caused and issue due to -fPIC being lost
> +
> +Signed-off-by: Andrea Galbusera <gizero at gmail.com>
> +---
> + Makefile | 5 -----
> + 1 file changed, 5 deletions(-)
> +
> +diff --git a/Makefile b/Makefile
> +index 8b0f0c2..66a4317 100644
> +--- a/Makefile
> ++++ b/Makefile
> +@@ -34,11 +34,6 @@ define REDIS_TEST_CONFIG
> + endef
> + 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')
> +-OPTIMIZATION?=-O3
> +-WARNINGS=-Wall -W -Wstrict-prototypes -Wwrite-strings
> +-DEBUG?= -g -ggdb
> + REAL_CFLAGS=$(OPTIMIZATION) -fPIC $(CFLAGS) $(WARNINGS) $(DEBUG) $(ARCH)
> + REAL_LDFLAGS=$(LDFLAGS) $(ARCH)
> +
> +--
> +1.9.1
> +
> diff --git a/meta-oe/recipes-extended/hiredis/hiredis_0.13.1.bb
> b/meta-oe/recipes-extended/hiredis/hiredis_0.13.1.bb
> new file mode 100644
> index 0000000..96b86f9
> --- /dev/null
> +++ b/meta-oe/recipes-extended/hiredis/hiredis_0.13.1.bb
> @@ -0,0 +1,21 @@
> +DESCRIPTION = "Minimalistic C client library for Redis"
> +HOMEPAGE = "http://github.com/redis/hiredis"
> +LICENSE = "BSD-3-Clause"
> +SECTION = "libs"
> +DEPENDS = "redis"
> +
> +LIC_FILES_CHKSUM = "file://COPYING;md5=d84d659a35c666d23233e54503aaea51"
> +SRC_URI = "git://github.com/redis/hiredis;protocol=git;rev=
> f58dd249d6ed47a7e835463c3b04722972281dbb \
> +           file://0001-Makefile-remove-hardcoding-of-CC.patch"
> +
> +S = "${WORKDIR}/git"
> +
> +inherit autotools-brokensep pkgconfig
> +
> +# By default INSTALL variable in Makefile is equal to 'cp -a', which
> preserves
> +# ownership and causes host-user-contamination QA issue.
> +# And PREFIX defaults to /usr/local.
> +do_install_prepend() {
> +  export PREFIX=${prefix}
> +  export INSTALL='cp -r'
> +}
> --
> 2.7.4
>
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>

A recipe for hiredis is already available from at least two other meta
layers as per [1], one of which does provide the same version as yours.
Don't know what the policy is here, but to me it seems worth a try talking
to those layers' maintainers and see if they agree to move the recipe to
meta-oe (at least meta-intel-iot-middleware is already listing meta-oe as a
dependency): it would help reducing the maintenance effort in the future.

[1]
https://layers.openembedded.org/layerindex/branch/master/recipes/?q=hiredis



More information about the Openembedded-devel mailing list