Estou usando o yocto para construir minha distribuição Linux personalizada. Preciso adicionar hiredis
à minha distribuição. Hiredis é uma biblioteca cliente C minimalista para o banco de dados Redis e preciso dela para acessar o Redis por meio de um aplicativo C.
A receitahiredis_0.14.0.bb
No meu sistema de compilação yocto há a receita hiredis_0.14.0.bb
armazenada na pasta meta-openembedded/meta-oe/recipes-extended/hiredis
e na meta camada meta-openembedded
.
O conteúdo da receita é o seguinte:
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"
SRCREV = "685030652cd98c5414ce554ff5b356dfe8437870"
SRC_URI = "git://github.com/redis/hiredis;protocol=git \
file://0001-Makefile-remove-hardcoding-of-CC.patch"
S = "${WORKDIR}/git"
inherit autotools-brokensep pkgconfig
EXTRA_OEMAKE = "PREFIX=${prefix} LIBRARY_PATH=${baselib}"
# 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 INSTALL='cp -r'
}
O Git Fetcher baixa a versão 0.14.0
do Hiretedis
Se eu executar o comando:
> bitbake hiredis
o hiredis
código é obtido pelo GitHub e compilado corretamente. A versão no código baixado do GitHub é a 0.14.0, enquanto está SRC_URI
definida como:
SRC_URI = "git://github.com/redis/hiredis;protocol=git \
file://0001-Makefile-remove-hardcoding-of-CC.patch"
Este valor SRC_URI
significa que está usando o Git Fetcher e não há parâmetros especificados branch
ou rev
e isso significa que os valores desses parâmetros são master
.
A única referência à versão 0.14.0
está no nome da receita (hiredis_ 0.14.0
.bb) então escolhe-se a versão 0.14.0
porque o valor da PV
variável é 0.14.0
(o PV
valor é definido pelo nome da receita).
Minha pergunta
Por que a versão buscada da biblioteca Hiretedis é 0.14.0
e não a mais recente?