diff mbox series

[meta-oe,v2] lcms: add ptest support

Message ID 20260528014218.171858-1-Shilong.Jiao@windriver.com
State New
Headers show
Series [meta-oe,v2] lcms: add ptest support | expand

Commit Message

Shilong.Jiao@windriver.com May 28, 2026, 1:42 a.m. UTC
From: Shilong Jiao <Shilong.Jiao@windriver.com>

Test results:
root@qemux86-64:~# ptest-runner lcms
START: ptest-runner
2026-05-28T01:12
BEGIN: /usr/lib/lcms/ptest
PASS: Base types ...Ok.
PASS: quick floor ...Ok.
PASS: Fixed point 15.16 representation ...Ok.
PASS: D50 roundtrip ...Ok.
PASS: 1D interpolation in 2pt tables ...Ok.
PASS: 1D interpolation in 4pt tables ...Ok.
PASS: 1D interpolation in 18pt tables ...Ok.
PASS: 1D interpolation in descending 3pt tables ...Ok.
PASS: 1D interpolation in descending 18pt tables ...Ok.
PASS: 3D interpolation Trilinear (float)  ...Ok.
PASS: 3D interpolation Trilinear (16)  ...Ok.
PASS: Reverse interpolation 4 -> 3 ......Ok.
PASS: 3D interpolation with granularity ...Ok.
PASS: 4D interpolation with granularity ...Ok.
PASS: 6D interpolation with granularity ...Ok.
PASS: 8D interpolation with granularity ...Ok.
PASS: Lab to XYZ and back (float only)  ...Ok.
PASS: Lab V2 encoding ...Ok.
PASS: Blackbody radiator ...Ok.
PASS: Linear gamma curves (float) ....Ok.
PASS: Curve 2.2 (float) ...|Err|<0.001953 .Ok.
PASS: Curve 1.8 (table) ...|Err|<0.053287 .Ok.
PASS: Curve 3.0 (table) ...|Err|<0.049726 .Ok.
PASS: Curve 2.2 (word table) ...|Err|<0.972654 .Ok.
PASS: Parametric curves ...Ok.
PASS: Join curves descending ...Ok.
PASS: Join curves sRGB (Float) ...Ok.
PASS: Join curves sigmoidal ...Ok.
PASS: 1 Stage LUT  ...Ok.
PASS: 2 Stage LUT (16 bits) ...Ok.
PASS: 3 Stage LUT (16 bits) ...Ok.
PASS: 4 Stage LUT (16 bits) ...Ok.
PASS: 5 Stage LUT (16 bits)  ...Ok.
PASS: 6 Stage LUT (16 bits)  ...Ok.
PASS: XYZ to XYZ LUT (float only)  ...Ok.
PASS: Named Color LUT ...Ok.
PASS: Floating point formatters ...Ok.
PASS: ChangeBuffersFormat ...Ok.
PASS: Multilocalized Unicode (II) ...Ok.
PASS: Create named color profile ...Ok.
PASS: Header version ...Ok.
PASS: Error reporting on bad profiles ...Ok.
PASS: Curves only transforms .........Ok.
PASS: Encoded Lab->Lab transforms ...Ok.
PASS: Matrix-shaper transform (float) ...Ok.
PASS: Matrix-shaper transform (8 bits) ...Ok.
PASS: Known values across matrix-shaper ...Ok.
PASS: Gray Lab input profile ...Ok.
PASS: Gray Lab output profile ...Ok.
PASS: Matrix-shaper proofing transform (16 bits) ...Ok.
PASS: CMYK roundtrip on perceptual transform ...Ok.
PASS: Black ink only preservation ...Ok.
PASS: Deciding curve types ...Ok.
PASS: TAC detection ...Ok.
PASS: CGATS parser on junk ...Ok.
PASS: PostScript generator ...Ok.
PASS: MD5 digest ...Ok.
PASS: floating point tags on XYZ ...Ok.
PASS: Parametric curve on Rec709 ...Ok.
PASS: Floating Point segmented curve with short sampled segment ...Ok.
PASS: Check MetaTag ...Ok.
PASS: Set free a tag ...Ok.
PASS: Planar 8 optimization ...Ok.
PASS: Swap endian feature ...Ok.
PASS: Forged MPE profile ...Ok.
PASS: Empty MLUC ...Ok.
PASS: OkLab color space ...Ok.
PASS: centering of Lab16 ...Ok.
PASS: Unbounded mode w/ integer output ...Ok.
PASS: Bad CGATS file ...Ok.
PASS: Gamut check on floats ...Ok.
PASS: Context memory handling ...Ok.
PASS: Alarm codes context ...Ok.
PASS: 1D interpolation plugin ...Ok.
PASS: Parametric curve plugin ...Ok.
PASS: Tag type plugin ...Ok.
PASS: Optimization plugin ...Ok.
PASS: Full transform plugin ...Ok.
PASS: Double from float ...Ok.
DURATION: 11
END: /usr/lib/lcms/ptest
2026-05-28T01:13
STOP: ptest-runner
TOTAL: 1 FAIL: 0

Signed-off-by: Shilong Jiao <Shilong.Jiao@windriver.com>
---
 .../conf/include/ptest-packagelists-meta-oe.inc   |  1 +
 meta-oe/recipes-support/lcms/lcms/run-ptest       |  4 ++++
 meta-oe/recipes-support/lcms/lcms_2.18.bb         | 15 ++++++++++++++-
 3 files changed, 19 insertions(+), 1 deletion(-)
 create mode 100755 meta-oe/recipes-support/lcms/lcms/run-ptest
diff mbox series

Patch

diff --git a/meta-oe/conf/include/ptest-packagelists-meta-oe.inc b/meta-oe/conf/include/ptest-packagelists-meta-oe.inc
index a9cbaf6982..8432ebfbf2 100644
--- a/meta-oe/conf/include/ptest-packagelists-meta-oe.inc
+++ b/meta-oe/conf/include/ptest-packagelists-meta-oe.inc
@@ -26,6 +26,7 @@  PTESTS_FAST_META_OE = "\
     imagemagick \
     jemalloc \
     jq \
+    lcms \
     leveldb \
     libcereal \
     libdbi-perl \
diff --git a/meta-oe/recipes-support/lcms/lcms/run-ptest b/meta-oe/recipes-support/lcms/lcms/run-ptest
new file mode 100755
index 0000000000..20d954c193
--- /dev/null
+++ b/meta-oe/recipes-support/lcms/lcms/run-ptest
@@ -0,0 +1,4 @@ 
+#!/bin/sh
+
+cd $(dirname $0)
+./testcms 2>&1 | awk '/^Checking/{test=substr($0,10); sub(/ \.\.\.$/,"",test); getline; print (/FAIL!/ ? "FAIL: " : "PASS: ") test}'
diff --git a/meta-oe/recipes-support/lcms/lcms_2.18.bb b/meta-oe/recipes-support/lcms/lcms_2.18.bb
index 1ff3b3908f..72cca1843f 100644
--- a/meta-oe/recipes-support/lcms/lcms_2.18.bb
+++ b/meta-oe/recipes-support/lcms/lcms_2.18.bb
@@ -6,6 +6,7 @@  LIC_FILES_CHKSUM = "file://LICENSE;md5=e9ce323c4b71c943a785db90142b228a"
 SRC_URI = "${SOURCEFORGE_MIRROR}/lcms/lcms2-${PV}.tar.gz \
            file://CVE-2026-41254_1.patch \
            file://CVE-2026-41254_2.patch \
+           file://run-ptest \
            "
 SRC_URI[sha256sum] = "ee67be3566f459362c1ee094fde2c159d33fa0390aa4ed5f5af676f9e5004347"
 
@@ -15,6 +16,18 @@  BBCLASSEXTEND = "native nativesdk"
 
 S = "${UNPACKDIR}/lcms2-${PV}"
 
-inherit autotools sourceforge-releases
+inherit autotools sourceforge-releases ptest
+
+do_compile_ptest() {
+    oe_runmake -C ${B}/testbed testcms
+}
+
+do_install_ptest() {
+    install -d ${D}${PTEST_PATH}
+    install -m 0755 ${B}/testbed/testcms ${D}${PTEST_PATH}/
+    install -m 0644 ${S}/testbed/*.icc ${D}${PTEST_PATH}/
+}
+
+RDEPENDS:${PN}-ptest += "bash"
 
 CVE_PRODUCT += "littlecms:little_cms_color_engine"