mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-06-10 16:40:03 +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:
committed by
Armin Kuster
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"
|
||||
|
||||
@@ -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 \
|
||||
|
||||
Reference in New Issue
Block a user