diff mbox series

[v2] json-c: upgrade 0.18 -> 0.19

Message ID 20260701090208.3598070-1-Moritz.Haase@bmw.de
State New
Headers show
Series [v2] json-c: upgrade 0.18 -> 0.19 | expand

Commit Message

Moritz Haase July 1, 2026, 9:02 a.m. UTC
Release notes are available at [0].

Newly added tests (see [1]) require the 'json_parse' app at (test) runtime.
Thus, apps are now being built and the 'json_parse' app is deployed in the
'ptest' package. We do not package the apps separately as upstream doesn't
consider them to be ready for that (see [2]). This approach is based on the
discussion in [3].

[0]: https://github.com/json-c/json-c/blob/json-c-0.19/ChangeLog
[1]: https://github.com/json-c/json-c/blob/d9d8cab82291637671f6c90cf06e578750a08718/tests/test_json_parse_cli.test#L18
[2]: https://github.com/json-c/json-c/blob/d9d8cab82291637671f6c90cf06e578750a08718/apps/CMakeLists.txt#L122-L124
[3]: https://lists.openembedded.org/g/openembedded-core/topic/120026557#

Signed-off-by: Moritz Haase <Moritz.Haase@bmw.de>
CC: alex.kanavin@gmail.com
CC: mathieu.dubois-briand@bootlin.com
---
changes in v2:
- Build and deploy apps required to fix ptest failure, as discussed in [3].

---
 .../json-c/{json-c_0.18.bb => json-c_0.19.bb} | 19 ++++++++++++-------
 1 file changed, 12 insertions(+), 7 deletions(-)
 rename meta/recipes-devtools/json-c/{json-c_0.18.bb => json-c_0.19.bb} (70%)
diff mbox series

Patch

diff --git a/meta/recipes-devtools/json-c/json-c_0.18.bb b/meta/recipes-devtools/json-c/json-c_0.19.bb
similarity index 70%
rename from meta/recipes-devtools/json-c/json-c_0.18.bb
rename to meta/recipes-devtools/json-c/json-c_0.19.bb
index c112aacf4bceb0c41dbe2e1643d2d7e0944bf250..d530a37f1713e4c1aa3d2b35bf677d79b6a09d02 100644
--- a/meta/recipes-devtools/json-c/json-c_0.18.bb
+++ b/meta/recipes-devtools/json-c/json-c_0.19.bb
@@ -9,25 +9,30 @@  LIC_FILES_CHKSUM = "file://COPYING;md5=de54b60fbbc35123ba193fea8ee216f2"
 SRC_URI = "https://s3.amazonaws.com/json-c_releases/releases/${BP}.tar.gz \
            file://run-ptest \
            "
-SRC_URI[sha256sum] = "876ab046479166b869afc6896d288183bbc0e5843f141200c677b3e8dfb11724"
+SRC_URI[sha256sum] = "37ad0249902e301bd9052bf712e511fcc6acff4ecaad4b5900aad9ce564e26de"
 
 # NVD uses full tag name including date
-CVE_VERSION = "0.18-20240915"
+CVE_VERSION = "0.19-20260627"
 
 UPSTREAM_CHECK_URI = "https://github.com/${BPN}/${BPN}/tags"
 UPSTREAM_CHECK_REGEX = "json-c-(?P<pver>\d+(\.\d+)+)-\d+"
 
 RPROVIDES:${PN} = "libjson"
 
-# Apps aren't needed/packaged and their CMakeLists.txt is incompatible with CMake 4+.
-EXTRA_OECMAKE = "-DDISABLE_WERROR=ON \
-                 -DBUILD_APPS=OFF \
-"
+EXTRA_OECMAKE = "-DDISABLE_WERROR=ON"
 
 inherit cmake ptest
 
+# xxd is required by the 'json_parse_cli' test.
+RDEPENDS:${PN}-ptest += "xxd"
+
 do_install_ptest() {
-    install -d ${D}/${PTEST_PATH}/tests
+    install -d ${D}/${PTEST_PATH}/{apps,tests}
+
+    # The 'json_parse_cli' test executes the 'json_parse' app via '../apps/json_parse', so we
+    # package it accordingly.
+    install ${B}/apps/json_parse ${D}/${PTEST_PATH}/apps
+
     install ${B}/tests/test* ${D}/${PTEST_PATH}/tests
     install ${S}/tests/*.test ${D}/${PTEST_PATH}/tests
     install ${S}/tests/*.expected ${D}/${PTEST_PATH}/tests