From e3b7060e0d867c3f1a666be128ed30c8003529ac Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Wed, 6 Mar 2024 07:42:11 -0800 Subject: libpcre2: upgrade 10.42 -> 10.43 License-Update: copyright years (From OE-Core rev: 6a0cb6e129d5602808f34fd2a9460fc05d9520d6) Signed-off-by: Alexander Kanavin Signed-off-by: Richard Purdie --- .../recipes-core/glib-2.0/glib-2.0/fix-regex.patch | 54 +++++++++++++++++++++ meta/recipes-core/glib-2.0/glib-2.0_2.78.4.bb | 1 + meta/recipes-support/libpcre/libpcre2_10.42.bb | 55 ---------------------- meta/recipes-support/libpcre/libpcre2_10.43.bb | 55 ++++++++++++++++++++++ 4 files changed, 110 insertions(+), 55 deletions(-) create mode 100644 meta/recipes-core/glib-2.0/glib-2.0/fix-regex.patch delete mode 100644 meta/recipes-support/libpcre/libpcre2_10.42.bb create mode 100644 meta/recipes-support/libpcre/libpcre2_10.43.bb (limited to 'meta') diff --git a/meta/recipes-core/glib-2.0/glib-2.0/fix-regex.patch b/meta/recipes-core/glib-2.0/glib-2.0/fix-regex.patch new file mode 100644 index 0000000000..bdfbd55899 --- /dev/null +++ b/meta/recipes-core/glib-2.0/glib-2.0/fix-regex.patch @@ -0,0 +1,54 @@ +From cce3ae98a2c1966719daabff5a4ec6cf94a846f6 Mon Sep 17 00:00:00 2001 +From: Philip Withnall +Date: Mon, 26 Feb 2024 16:55:44 +0000 +Subject: [PATCH] tests: Remove variable-length lookbehind tests for GRegex +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +PCRE2 10.43 has now introduced support for variable-length lookbehind, +so these tests now fail if GLib is built against PCRE2 10.43 or higher. + +See +https://github.com/PCRE2Project/pcre2/blob/e8db6fa7137f4c6f66cb87e0a3c9467252ec1ef7/ChangeLog#L94. + +Rather than making the tests conditional on the version of PCRE2 in use, +just remove them. They are mostly testing the PCRE2 code rather than +any code in GLib, so don’t have much value. + +This should fix CI runs on msys2-mingw32, which updated to PCRE2 10.43 2 +days ago. + +Signed-off-by: Philip Withnall + +Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/commit/cce3ae98a2c1966719daabff5a4ec6cf94a846f6] +Signed-off-by: Alexander Kanavin +--- + glib/tests/regex.c | 10 ---------- + 1 file changed, 10 deletions(-) + +diff --git a/glib/tests/regex.c b/glib/tests/regex.c +index 1082526292..d7a698ec67 100644 +--- a/glib/tests/regex.c ++++ b/glib/tests/regex.c +@@ -1885,16 +1885,6 @@ test_lookbehind (void) + g_match_info_free (match); + g_regex_unref (regex); + +- regex = g_regex_new ("(?\d+(\.\d+)+)$" - -SRC_URI[sha256sum] = "8d36cd8cb6ea2a4c2bb358ff6411b0c788633a2a45dabbf1aeb4b701d1b5e840" - -CVE_PRODUCT = "pcre2" - -S = "${WORKDIR}/pcre2-${PV}" - -PROVIDES += "pcre2" -DEPENDS += "bzip2 zlib" - -BINCONFIG = "${bindir}/pcre2-config" - -inherit autotools binconfig-disabled github-releases - -EXTRA_OECONF = "\ - --enable-newline-is-lf \ - --with-link-size=2 \ - --with-match-limit=10000000 \ - --enable-pcre2-16 \ - --enable-pcre2-32 \ -" -CFLAGS += "-D_REENTRANT" -CXXFLAGS:append:powerpc = " -lstdc++" - -PACKAGES =+ "libpcre2-16 libpcre2-32 pcre2grep pcre2grep-doc pcre2test pcre2test-doc" - -SUMMARY:pcre2grep = "grep utility that uses perl 5 compatible regexes" -SUMMARY:pcre2grep-doc = "grep utility that uses perl 5 compatible regexes - docs" -SUMMARY:pcre2test = "program for testing Perl-comatible regular expressions" -SUMMARY:pcre2test-doc = "program for testing Perl-comatible regular expressions - docs" - -FILES:libpcre2-16 = "${libdir}/libpcre2-16.so.*" -FILES:libpcre2-32 = "${libdir}/libpcre2-32.so.*" -FILES:pcre2grep = "${bindir}/pcre2grep" -FILES:pcre2grep-doc = "${mandir}/man1/pcre2grep.1" -FILES:pcre2test = "${bindir}/pcre2test" -FILES:pcre2test-doc = "${mandir}/man1/pcre2test.1" - -BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-support/libpcre/libpcre2_10.43.bb b/meta/recipes-support/libpcre/libpcre2_10.43.bb new file mode 100644 index 0000000000..fd0bd79212 --- /dev/null +++ b/meta/recipes-support/libpcre/libpcre2_10.43.bb @@ -0,0 +1,55 @@ +DESCRIPTION = "There are two major versions of the PCRE library. The \ +newest version is PCRE2, which is a re-working of the original PCRE \ +library to provide an entirely new API. The original, very widely \ +deployed PCRE library's API and feature are stable, future releases \ + will be for bugfixes only. All new future features will be to PCRE2, \ +not the original PCRE 8.x series." +SUMMARY = "Perl Compatible Regular Expressions version 2" +HOMEPAGE = "http://www.pcre.org" +SECTION = "devel" +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://LICENCE;md5=321a5eb46acae6b6c1ff2c7a866d836a" + +SRC_URI = "${GITHUB_BASE_URI}/download/pcre2-${PV}/pcre2-${PV}.tar.bz2" + +GITHUB_BASE_URI = "https://github.com/PhilipHazel/pcre2/releases" +UPSTREAM_CHECK_REGEX = "releases/tag/pcre2-(?P\d+(\.\d+)+)$" + +SRC_URI[sha256sum] = "e2a53984ff0b07dfdb5ae4486bbb9b21cca8e7df2434096cc9bf1b728c350bcb" + +CVE_PRODUCT = "pcre2" + +S = "${WORKDIR}/pcre2-${PV}" + +PROVIDES += "pcre2" +DEPENDS += "bzip2 zlib" + +BINCONFIG = "${bindir}/pcre2-config" + +inherit autotools binconfig-disabled github-releases + +EXTRA_OECONF = "\ + --enable-newline-is-lf \ + --with-link-size=2 \ + --with-match-limit=10000000 \ + --enable-pcre2-16 \ + --enable-pcre2-32 \ +" +CFLAGS += "-D_REENTRANT" +CXXFLAGS:append:powerpc = " -lstdc++" + +PACKAGES =+ "libpcre2-16 libpcre2-32 pcre2grep pcre2grep-doc pcre2test pcre2test-doc" + +SUMMARY:pcre2grep = "grep utility that uses perl 5 compatible regexes" +SUMMARY:pcre2grep-doc = "grep utility that uses perl 5 compatible regexes - docs" +SUMMARY:pcre2test = "program for testing Perl-comatible regular expressions" +SUMMARY:pcre2test-doc = "program for testing Perl-comatible regular expressions - docs" + +FILES:libpcre2-16 = "${libdir}/libpcre2-16.so.*" +FILES:libpcre2-32 = "${libdir}/libpcre2-32.so.*" +FILES:pcre2grep = "${bindir}/pcre2grep" +FILES:pcre2grep-doc = "${mandir}/man1/pcre2grep.1" +FILES:pcre2test = "${bindir}/pcre2test" +FILES:pcre2test-doc = "${mandir}/man1/pcre2test.1" + +BBCLASSEXTEND = "native nativesdk" -- cgit v1.2.3-54-g00ecf