mirror of
git://git.openembedded.org/meta-openembedded
synced 2026-01-01 13:58:06 +00:00
cjson: Add ptest
cjson use pure CMake test framework named CTest.
CMake generate CTestTestfile.cmake containing fully defined path.
This path need to be altered on install step to match the ptest directory.
The json_patch_tests doesn't works because of file access and is skip.
Signed-off-by: David Pierret <david.pierret@smile.fr>
Reviewed-by: Yoann Congal <yoann.congal@smile.fr>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
(cherry picked from commit 4079e92284)
Signed-off-by: Armin Kuster <akuster808@gmail.com>
This commit is contained in:
parent
3e1b5753c7
commit
486fa9a037
|
|
@ -36,6 +36,7 @@ PTESTS_FAST_META_OE = "\
|
|||
uthash \
|
||||
xmlsec1 \
|
||||
zeromq \
|
||||
cjson \
|
||||
"
|
||||
PTESTS_FAST_META_OE:append:x86 = " mcelog"
|
||||
PTESTS_FAST_META_OE:append:x86-64 = " mcelog"
|
||||
|
|
|
|||
8
meta-oe/recipes-devtools/cjson/cjson/run-ptest
Normal file
8
meta-oe/recipes-devtools/cjson/cjson/run-ptest
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
#!/bin/sh
|
||||
|
||||
# exclude json_patch_tests
|
||||
if ctest -E 'json_patch_tests' ; then
|
||||
echo "PASS: cjson"
|
||||
else
|
||||
echo "FAIL: cjson"
|
||||
fi
|
||||
|
|
@ -4,12 +4,32 @@ SECTION = "libs"
|
|||
LICENSE = "MIT"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE;md5=218947f77e8cb8e2fa02918dc41c50d0"
|
||||
|
||||
SRC_URI = "git://github.com/DaveGamble/cJSON.git;branch=master;protocol=https"
|
||||
SRC_URI = "git://github.com/DaveGamble/cJSON.git;branch=master;protocol=https \
|
||||
file://run-ptest \
|
||||
"
|
||||
SRCREV = "d348621ca93571343a56862df7de4ff3bc9b5667"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
inherit cmake pkgconfig
|
||||
inherit cmake pkgconfig ptest
|
||||
|
||||
RDEPENDS:${PN}-ptest += "cmake"
|
||||
|
||||
do_install_ptest() {
|
||||
# create directories
|
||||
install -d ${D}${PTEST_PATH} ${D}${PTEST_PATH}/tests ${D}${PTEST_PATH}/fuzzing
|
||||
install -d ${D}${PTEST_PATH}/tests/inputs ${D}${PTEST_PATH}/tests/json-patch-tests
|
||||
# CTestTestfiles.cmake contain fully defined path generated by cmake.
|
||||
# Change the fully defined path to ptest path on the target
|
||||
sed s#${B}#${PTEST_PATH}# ${B}/CTestTestfile.cmake > ${D}${PTEST_PATH}/CTestTestfile.cmake
|
||||
sed s#${B}#${PTEST_PATH}# ${B}/tests/CTestTestfile.cmake > ${D}${PTEST_PATH}/tests/CTestTestfile.cmake
|
||||
sed s#${B}#${PTEST_PATH}# ${B}/fuzzing/CTestTestfile.cmake > ${D}${PTEST_PATH}/fuzzing/CTestTestfile.cmake
|
||||
# install test artifacts
|
||||
install ${B}/cJSON_test ${D}${PTEST_PATH}
|
||||
install ${B}/tests/cjson_add ${B}/tests/*_tests ${B}/tests/parse_* ${B}/tests/print_* ${B}/tests/readme_examples ${D}${PTEST_PATH}/tests/
|
||||
install ${B}/tests/inputs/* ${D}${PTEST_PATH}/tests/inputs
|
||||
install ${B}/fuzzing/fuzz_main ${D}${PTEST_PATH}/fuzzing
|
||||
}
|
||||
|
||||
EXTRA_OECMAKE += "\
|
||||
-DENABLE_CJSON_UTILS=On \
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user