From 9899e33747c5af3bc3d3e1c91f3e9d77c9715d29de5b55524a9c6fbf355613da Mon Sep 17 00:00:00 2001 From: Marcus Meissner Date: Mon, 6 Nov 2017 12:38:13 +0000 Subject: [PATCH] Accepting request 538186 from home:kstreitova:branches:Base:System - add pcre-8.41-stack_frame_size_detection.patch to fix pcre stack frame size detection because modern compilers broke it by cloning and inlining pcre match() function [bsc#1058722] OBS-URL: https://build.opensuse.org/request/show/538186 OBS-URL: https://build.opensuse.org/package/show/Base:System/pcre?expand=0&rev=83 --- pcre-8.41-stack_frame_size_detection.patch | 18 ++++++++++++++++++ pcre.changes | 7 +++++++ pcre.spec | 3 +++ 3 files changed, 28 insertions(+) create mode 100644 pcre-8.41-stack_frame_size_detection.patch diff --git a/pcre-8.41-stack_frame_size_detection.patch b/pcre-8.41-stack_frame_size_detection.patch new file mode 100644 index 0000000..73ec836 --- /dev/null +++ b/pcre-8.41-stack_frame_size_detection.patch @@ -0,0 +1,18 @@ +Index: pcre-8.39/pcre_exec.c +=================================================================== +--- pcre-8.39.orig/pcre_exec.c ++++ pcre-8.39/pcre_exec.c +@@ -509,6 +509,12 @@ Returns: MATCH_MATCH if matched + (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, + diff --git a/pcre.changes b/pcre.changes index 13ef4de..2bf5799 100644 --- a/pcre.changes +++ b/pcre.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Wed Nov 1 17:46:54 UTC 2017 - kstreitova@suse.com + +- add pcre-8.41-stack_frame_size_detection.patch to fix pcre stack + frame size detection because modern compilers broke it by cloning + and inlining pcre match() function [bsc#1058722] + ------------------------------------------------------------------- Tue Sep 12 13:10:30 UTC 2017 - matz@suse.com diff --git a/pcre.spec b/pcre.spec index 45126ff..36ec7c5 100644 --- a/pcre.spec +++ b/pcre.spec @@ -32,6 +32,8 @@ Source4: baselibs.conf Patch0: pcre-8.32-visibility.patch #PATCH-FIX-OPENSUSE tchvatal@suse.cz upstream thinks it is good idea to use rpath, taken from RH Patch1: pcre-8.21-multilib.patch +#PATCH-FIX-OPENSUSE kstreitova@suse.com fix pcre stack frame size detection https://bugs.exim.org/show_bug.cgi?id=2173 +Patch2: pcre-8.41-stack_frame_size_detection.patch BuildRequires: autoconf BuildRequires: automake BuildRequires: gcc-c++ @@ -141,6 +143,7 @@ as Perl 5. %setup -q %patch0 -p1 %patch1 -p1 +%patch2 -p1 %build # Available JIT archs see sljit/sljitConfig.h