diff mbox series

[meta-oe,3/4] uriparser: add ptest support

Message ID 20251222194143.1725064-3-skandigraun@gmail.com
State New
Headers show
Series [meta-oe,1/4] nodejs: remove extra CVE_PRODUCT | expand

Commit Message

Gyorgy Sarvari Dec. 22, 2025, 7:41 p.m. UTC
It takes about a second to execute.

The test suite is covered by a different license (lgpl 2.1+) than the 
main recipe (3-clause bsd).

Sample output:

root@qemux86-64:~# ptest-runner
START: ptest-runner
2025-12-22T19:34
BEGIN: /usr/lib/uriparser/ptest
[==========] Running 407 tests from 35 test suites.
[----------] Global test environment set-up.
[----------] 14 tests from CopyUriSuite
PASS:  CopyUriSuite.ErrorSourceUriNull
PASS:  CopyUriSuite.ErrorDestUriNull
[...many lines...]
PASS:  SetUserInfo.UriWithoutHostNonNullRejected
[----------] 2 tests from VersionSuite
PASS:  VersionSuite.EnsureVersionDefinesInSync
PASS:  VersionSuite.EnsureRuntimeVersionAsExpected
[----------] Global test environment tear-down
[==========] 407 tests from 35 test suites ran.
[  PASSED  ] 407 tests.
DURATION: 1
END: /usr/lib/uriparser/ptest
2025-12-22T19:34
STOP: ptest-runner
TOTAL: 1 FAIL: 0

Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
---
 .../include/ptest-packagelists-meta-oe.inc    |  1 +
 .../uriparser/uriparser/run-ptest             |  2 ++
 .../uriparser/uriparser_1.0.0.bb              | 24 +++++++++++++++----
 3 files changed, 22 insertions(+), 5 deletions(-)
 create mode 100644 meta-oe/recipes-support/uriparser/uriparser/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 d092c3c327..4381f6c2b2 100644
--- a/meta-oe/conf/include/ptest-packagelists-meta-oe.inc
+++ b/meta-oe/conf/include/ptest-packagelists-meta-oe.inc
@@ -58,6 +58,7 @@  PTESTS_FAST_META_OE = "\
     zeromq \
     cjson \
     libplist \
+    uriparser \
 "
 PTESTS_FAST_META_OE:append:x86 = " mcelog"
 PTESTS_FAST_META_OE:append:x86-64 = " mcelog"
diff --git a/meta-oe/recipes-support/uriparser/uriparser/run-ptest b/meta-oe/recipes-support/uriparser/uriparser/run-ptest
new file mode 100644
index 0000000000..6d735b663a
--- /dev/null
+++ b/meta-oe/recipes-support/uriparser/uriparser/run-ptest
@@ -0,0 +1,2 @@ 
+#!/bin/sh
+./testrunner --gtest_print_time=0 | sed -E  '/^\[ RUN/d ; s/\[       OK \]/PASS: / ; s/\[ DISABLED \]/SKIP: / ; s/\[ FAILED \]/FAIL: /'
diff --git a/meta-oe/recipes-support/uriparser/uriparser_1.0.0.bb b/meta-oe/recipes-support/uriparser/uriparser_1.0.0.bb
index b5a0a9f42d..b9c5100803 100644
--- a/meta-oe/recipes-support/uriparser/uriparser_1.0.0.bb
+++ b/meta-oe/recipes-support/uriparser/uriparser_1.0.0.bb
@@ -1,16 +1,30 @@ 
 SUMMARY = "RFC 3986 compliant URI parsing library"
 HOMEPAGE = "https://uriparser.github.io"
 
-LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://src/COPYING;md5=fcc5a53146c2401f4b4f6a3bdf3f0168"
+LICENSE = "BSD-3-Clause & LGPL-2.1-or-later"
+LICENSE:${PN} = "BSD-3-Clause"
+LICENSE:${PN}-ptest = "LGPL-2.1-or-later"
 
-SRC_URI = "https://github.com/${BPN}/${BPN}/releases/download/${BP}/${BP}.tar.gz"
+LIC_FILES_CHKSUM = "file://src/COPYING;md5=fcc5a53146c2401f4b4f6a3bdf3f0168 \
+                    file://test/COPYING;md5=b9e6430863a3ea22cf4b0a8518279ed3"
+
+SRC_URI = "https://github.com/${BPN}/${BPN}/releases/download/${BP}/${BP}.tar.gz \
+           file://run-ptest"
 SRC_URI[sha256sum] = "291f25264a5c025005b1bc39de3c029e6a6ca0a8d6cfa5e61cb5b03702c0884d"
 
-inherit cmake github-releases
+inherit cmake github-releases ptest
 
 UPSTREAM_CHECK_REGEX = "releases/tag/${BPN}-(?P<pver>\d+(\.\d+)+)"
 
-EXTRA_OECMAKE += "-DURIPARSER_BUILD_DOCS:BOOL=OFF -DURIPARSER_BUILD_TESTS:BOOL=OFF"
+PACKAGECONFIG = "${@bb.utils.contains('PTEST_ENABLED', '1', 'test', '', d)} "
+PACKAGECONFIG[test] = "-DURIPARSER_BUILD_TESTS:BOOL=ON, -DURIPARSER_BUILD_TESTS:BOOL=OFF, googletest"
+
+EXTRA_OECMAKE += " \
+    -DURIPARSER_BUILD_DOCS:BOOL=OFF \
+"
+
+do_install_ptest(){
+    install ${B}/testrunner ${D}${PTEST_PATH}
+}
 
 BBCLASSEXTEND += "native"