summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--system/pcre/APKBUILD11
-rw-r--r--system/pcre/stack-frame-size-detection.patch15
2 files changed, 22 insertions, 4 deletions
diff --git a/system/pcre/APKBUILD b/system/pcre/APKBUILD
index 0c0f36a10..96a6e6123 100644
--- a/system/pcre/APKBUILD
+++ b/system/pcre/APKBUILD
@@ -2,16 +2,18 @@
# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname=pcre
pkgver=8.43
-pkgrel=0
+pkgrel=1
pkgdesc="Perl-compatible regular expression library"
url="http://pcre.sourceforge.net"
arch="all"
license="BSD-3-Clause"
-depends=
+depends=""
makedepends=""
subpackages="$pkgname-dev $pkgname-doc $pkgname-tools
libpcrecpp libpcre16 libpcre32"
-source="ftp://ftp.csx.cam.ac.uk/pub/software/programming/$pkgname/$pkgname-$pkgver.tar.bz2"
+source="ftp://ftp.csx.cam.ac.uk/pub/software/programming/$pkgname/$pkgname-$pkgver.tar.bz2
+ stack-frame-size-detection.patch
+ "
# secfixes:
# 8.40-r2:
@@ -74,4 +76,5 @@ tools() {
mv "$pkgdir"/usr/bin "$subpkgdir"/usr/
}
-sha512sums="3b4ac2c7ccd77c9575d07a33c3456f40b50731029e62d01fb8f2f5871d7118e12bc9e6bc7a8079769c765e38da5ecf98c4b261b10ff0a2f14f0881b434f67af7 pcre-8.43.tar.bz2"
+sha512sums="3b4ac2c7ccd77c9575d07a33c3456f40b50731029e62d01fb8f2f5871d7118e12bc9e6bc7a8079769c765e38da5ecf98c4b261b10ff0a2f14f0881b434f67af7 pcre-8.43.tar.bz2
+a088304318f7a04f90263efbab20b423e67fb6e3d829e7bc080fd44c29e98bc29cab992b73ed1b992af89cdf4606667af20572558a3a96549b7bd9479d0e6d88 stack-frame-size-detection.patch"
diff --git a/system/pcre/stack-frame-size-detection.patch b/system/pcre/stack-frame-size-detection.patch
new file mode 100644
index 000000000..54179a7d6
--- /dev/null
+++ b/system/pcre/stack-frame-size-detection.patch
@@ -0,0 +1,15 @@
+--- pcre-8.43/pcre_exec.c.old 2018-02-20 15:21:37.000000000 +0000
++++ pcre-8.43/pcre_exec.c 2019-07-06 19:36:59.078411271 +0000
+@@ -509,6 +509,12 @@
+ (e.g. stopped by repeated call or recursion limit)
+ */
+
++#ifdef __GNUC__
++static int
++match(REGISTER PCRE_PUCHAR eptr, REGISTER const pcre_uchar *ecode,
++ PCRE_PUCHAR mstart, int offset_top, match_data *md, eptrblock *eptrb,
++ unsigned int rdepth) __attribute__((noinline,noclone));
++#endif
+ static int
+ match(REGISTER PCRE_PUCHAR eptr, REGISTER const pcre_uchar *ecode,
+ PCRE_PUCHAR mstart, int offset_top, match_data *md, eptrblock *eptrb,