Skip to content

Commit 9b7b674

Browse files
committed
hiredis: add ptest
Use internal test from hiredis project as ptest. If ptest is in DISTRO_FEATURES tests are enabled default but can be handled individually through PACKAGECONFIG. Test config 'testssl' requires 'ssl' option but is not enabled default as the redis recipe does not build it with ssl support. Tested on qemux86_64 and qemuarm64. Signed-off-by: Peter Bergin <[email protected]> Signed-off-by: Peter Bergin <[email protected]>
1 parent 2fa35c6 commit 9b7b674

File tree

3 files changed

+27
-3
lines changed

3 files changed

+27
-3
lines changed

meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -982,6 +982,7 @@ RDEPENDS:packagegroup-meta-oe-ptest-packages = "\
982982
poco-ptest \
983983
cmocka-ptest \
984984
minicoredumper-ptest \
985+
hiredis-ptest \
985986
"
986987
RDEPENDS:packagegroup-meta-oe-ptest-packages:append:x86 = " mcelog-ptest"
987988
RDEPENDS:packagegroup-meta-oe-ptest-packages:append:x86-64 = " mcelog-ptest"
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
#!/bin/sh
2+
3+
TEST_SSL=0 TEST_ASYNC=0 ./test.sh

meta-oe/recipes-extended/hiredis/hiredis_1.1.0.bb

Lines changed: 23 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,16 +4,36 @@ SECTION = "libs"
44
LICENSE = "BSD-3-Clause"
55
LIC_FILES_CHKSUM = "file://COPYING;md5=d84d659a35c666d23233e54503aaea51"
66

7-
SRC_URI = "git://github.com/redis/hiredis;protocol=https;branch=master"
7+
SRC_URI = " \
8+
git://github.com/redis/hiredis;protocol=https;branch=master \
9+
file://run-ptest \
10+
"
811
SRCREV = "c14775b4e48334e0262c9f168887578f4a368b5d"
912

1013
S = "${WORKDIR}/git"
1114

12-
inherit cmake
15+
inherit cmake ptest
1316

14-
PACKAGECONFIG ??= "ssl"
17+
# 'testssl' is not enabled by default as redis recipe does not build with ssl support
18+
# option 'testssl' requires 'ssl'
19+
PACKAGECONFIG ??= "ssl ${@bb.utils.contains('DISTRO_FEATURES', 'ptest', 'test testasync', '', d)}"
1520
PACKAGECONFIG[ssl] = "-DENABLE_SSL=ON, -DENABLE_SSL=OFF, openssl"
21+
PACKAGECONFIG[test] = "-DDISABLE_TESTS=OFF, -DDISABLE_TESTS=ON"
22+
PACKAGECONFIG[testssl] = "-DENABLE_SSL_TESTS=ON, -DENABLE_SSL_TESTS=OFF, openssl"
23+
PACKAGECONFIG[testasync] = "-DENABLE_ASYNC_TESTS=ON, -DENABLE_ASYNC_TESTS=OFF, libevent"
24+
25+
do_install_ptest() {
26+
install ${S}/test.sh ${D}${PTEST_PATH}/
27+
install ${B}/hiredis-test ${D}${PTEST_PATH}/
28+
if ${@bb.utils.contains('PACKAGECONFIG','testssl','true','false',d)}; then
29+
sed -i 's/TEST_SSL=0/TEST_SSL=1/g' ${D}${PTEST_PATH}/run-ptest
30+
fi
31+
if ${@bb.utils.contains('PACKAGECONFIG','testasync','true','false',d)}; then
32+
sed -i 's/TEST_ASYNC=0/TEST_ASYNC=1/g' ${D}${PTEST_PATH}/run-ptest
33+
fi
34+
}
1635

1736
FILES:${PN}-dev += "${datadir}/hiredis_ssl ${prefix}/build"
1837

1938
RDEPENDS:${PN} = "redis"
39+
RDEPENDS:${PN}-ptest = "${@bb.utils.contains('PACKAGECONFIG', 'testssl', 'openssl-bin', '', d)}"

0 commit comments

Comments
 (0)