mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-05-07 05:10:20 +00:00
f23c00b163
Add ptest support for jsoncpp to enable automated testing of the JSON C++ library functionality. Note: - Tested on: WRLinux master-wr (based on meta-openembedded master) - jsoncpp version: 1.9.7 - Unable to test on pure upstream due to poky/meta-oe branch mismatch Test Result: root@qemux86-64:~# ptest-runner jsoncpp START: ptest-runner 2026-04-15T14:04 BEGIN: /usr/lib64/jsoncpp/ptest PASS: jsoncpp_readerwriter PASS: jsoncpp_readerwriter_json_checker PASS: jsoncpp_test DURATION: 122 END: /usr/lib64/jsoncpp/ptest 2026-04-15T14:06 STOP: ptest-runner TOTAL: 1 FAIL: 0 Signed-off-by: Zeming LIU <zeming.liu@windriver.com> Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
47 lines
1.9 KiB
BlitzBasic
47 lines
1.9 KiB
BlitzBasic
SUMMARY = "JSON C++ lib used to read and write json file."
|
|
DESCRIPTION = "Jsoncpp is an implementation of a JSON (http://json.org) reader \
|
|
and writer in C++. JSON (JavaScript Object Notation) is a \
|
|
lightweight data-interchange format. It is easy for humans to \
|
|
read and write. It is easy for machines to parse and generate."
|
|
|
|
HOMEPAGE = "https://github.com/open-source-parsers/jsoncpp"
|
|
|
|
SECTION = "libs"
|
|
|
|
LICENSE = "MIT"
|
|
LIC_FILES_CHKSUM = "file://LICENSE;md5=5d73c165a0f9e86a1342f32d19ec5926"
|
|
|
|
PE = "1"
|
|
|
|
SRCREV = "3455302847cf1e4671f1d8f5fa953fd46a7b1404"
|
|
SRC_URI = "git://github.com/open-source-parsers/jsoncpp;branch=master;protocol=https;tag=${PV} \
|
|
file://run-ptest \
|
|
"
|
|
|
|
inherit cmake ptest
|
|
|
|
EXTRA_OECMAKE += "-DBUILD_SHARED_LIBS=ON -DBUILD_OBJECT_LIBS=OFF \
|
|
${@bb.utils.contains('PTEST_ENABLED', '1', '-DJSONCPP_WITH_TESTS=ON -DJSONCPP_WITH_POST_BUILD_UNITTEST=OFF', '-DJSONCPP_WITH_TESTS=OFF', d)} \
|
|
"
|
|
|
|
DEPENDS += "${@bb.utils.contains('PTEST_ENABLED', '1', 'rsync-native', '', d)}"
|
|
RDEPENDS:${PN}-ptest += "cmake python3-core"
|
|
|
|
do_install_ptest () {
|
|
cp -r ${B}/bin ${D}${PTEST_PATH}
|
|
cp -r ${S}/test ${D}${PTEST_PATH}
|
|
|
|
rsync -a ${B}/src ${D}${PTEST_PATH} \
|
|
--exclude CMakeFiles \
|
|
--exclude cmake_install.cmake \
|
|
--exclude Makefile \
|
|
--exclude generated
|
|
sed -i -e 's#${B}#${PTEST_PATH}#g' `find ${D}${PTEST_PATH} -name CTestTestfile.cmake`
|
|
sed -i -e 's#${S}#${PTEST_PATH}#g' `find ${D}${PTEST_PATH} -name CTestTestfile.cmake`
|
|
sed -i -e 's#${RECIPE_SYSROOT_NATIVE}##g' `find ${D}${PTEST_PATH} -name CTestTestfile.cmake`
|
|
sed -i -e 's#${PYTHON}#/usr/bin/python3#g' `find ${D}${PTEST_PATH} -name CTestTestfile.cmake`
|
|
sed -i -e 's#${WORKDIR}##g' `find ${D}${PTEST_PATH} -name CTestTestfile.cmake`
|
|
}
|
|
|
|
BBCLASSEXTEND = "native nativesdk"
|