diff --git a/meta-oe/conf/include/ptest-packagelists-meta-oe.inc b/meta-oe/conf/include/ptest-packagelists-meta-oe.inc index 212b90c868..bab9d4372c 100644 --- a/meta-oe/conf/include/ptest-packagelists-meta-oe.inc +++ b/meta-oe/conf/include/ptest-packagelists-meta-oe.inc @@ -50,6 +50,7 @@ PTESTS_SLOW_META_OE = "\ libusb-compat \ rsyslog \ mariadb \ + re2 \ " PTESTS_SLOW_META_OE:append:x86 = " kernel-selftest" PTESTS_SLOW_META_OE:append:x86-64 = " kernel-selftest" diff --git a/meta-oe/recipes-support/re2/re2/run-ptest b/meta-oe/recipes-support/re2/re2/run-ptest new file mode 100644 index 0000000000..8bd5fd1efb --- /dev/null +++ b/meta-oe/recipes-support/re2/re2/run-ptest @@ -0,0 +1,3 @@ +#!/bin/sh + +ctest --force-new-ctest-process | sed -u 's/\*\*\*/ /g' | awk '/Test +#/{gsub(/Passed/,"PASS"); gsub(/Failed/,"FAIL"); gsub(/Skipped/,"SKIP"); print $6": "$4; fflush();}' diff --git a/meta-oe/recipes-support/re2/re2_2023.03.01.bb b/meta-oe/recipes-support/re2/re2_2023.03.01.bb index 78bf695a4a..fe210d5107 100644 --- a/meta-oe/recipes-support/re2/re2_2023.03.01.bb +++ b/meta-oe/recipes-support/re2/re2_2023.03.01.bb @@ -6,17 +6,27 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=3b5c31eb512bdf3cb11ffd5713963760" # tag 2023-03-01 SRCREV = "241e2e430836e80f93d704d1f06cd3e7fe3100f5" -SRC_URI = "git://github.com/google/re2.git;branch=main;protocol=https" +SRC_URI = "git://github.com/google/re2.git;branch=main;protocol=https \ + ${@bb.utils.contains('PTEST_ENABLED', '1', 'file://run-ptest', '', d)} \ + " S = "${WORKDIR}/git" -inherit cmake +inherit cmake ptest +RDEPENDS:${PN}-ptest += "cmake sed" EXTRA_OECMAKE += " \ -DBUILD_SHARED_LIBS=ON \ - -DRE2_BUILD_TESTING=OFF \ + ${@bb.utils.contains('PTEST_ENABLED', '1', '-DRE2_BUILD_TESTING=ON', '-DRE2_BUILD_TESTING=OFF', d)} \ " +do_install_ptest () { + cp -r ${B}/*_test ${D}${PTEST_PATH} + cp -r ${B}/CTestTestfile.cmake ${D}${PTEST_PATH} + 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` +} + # ignore .so in /usr/lib64 FILES:${PN} = "${libdir}" INSANE_SKIP:${PN} += "dev-so"