]> code.ossystems Code Review - openembedded-core.git/commitdiff
diffutils: update 3.7 -> 3.8
authorAlexander Kanavin <alex.kanavin@gmail.com>
Sun, 22 Aug 2021 12:50:18 +0000 (14:50 +0200)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Mon, 23 Aug 2021 07:25:49 +0000 (08:25 +0100)
Drop patch as issue fixed upstream.

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-extended/diffutils/diffutils/0001-c-stack-stop-using-SIGSTKSZ.patch [deleted file]
meta/recipes-extended/diffutils/diffutils_3.8.bb [moved from meta/recipes-extended/diffutils/diffutils_3.7.bb with 81% similarity]

diff --git a/meta/recipes-extended/diffutils/diffutils/0001-c-stack-stop-using-SIGSTKSZ.patch b/meta/recipes-extended/diffutils/diffutils/0001-c-stack-stop-using-SIGSTKSZ.patch
deleted file mode 100644 (file)
index 50e627f..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-From 87b3a8f9ceb2cf0a5c8b72e460465fb9ff2d62d9 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Fri, 30 Apr 2021 17:40:36 -0700
-Subject: [PATCH] c-stack: stop using SIGSTKSZ
-
-This patch is required with glibc 2.34+
-based on gnulib [1]
-
-[1] https://git.savannah.gnu.org/cgit/gnulib.git/commit/?id=f9e2b20a12a230efa30f1d479563ae07d276a94b
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- lib/c-stack.c | 22 +++++++++++++---------
- 1 file changed, 13 insertions(+), 9 deletions(-)
-
-diff --git a/lib/c-stack.c b/lib/c-stack.c
-index 9bbe6fe..e0874c9 100644
---- a/lib/c-stack.c
-+++ b/lib/c-stack.c
-@@ -51,13 +51,14 @@
- typedef struct sigaltstack stack_t;
- #endif
- #ifndef SIGSTKSZ
--# define SIGSTKSZ 16384
--#elif HAVE_LIBSIGSEGV && SIGSTKSZ < 16384
-+#define get_sigstksz()  (16384)
-+#elif HAVE_LIBSIGSEGV
- /* libsigsegv 2.6 through 2.8 have a bug where some architectures use
-    more than the Linux default of an 8k alternate stack when deciding
-    if a fault was caused by stack overflow.  */
--# undef SIGSTKSZ
--# define SIGSTKSZ 16384
-+#define get_sigstksz() ((SIGSTKSZ) < 16384 ? 16384 : (SIGSTKSZ))
-+#else
-+#define get_sigstksz() ((SIGSTKSZ))
- #endif
- #include <stdlib.h>
-@@ -136,7 +137,8 @@ die (int signo)
- /* Storage for the alternate signal stack.  */
- static union
- {
--  char buffer[SIGSTKSZ];
-+  /* allocate buffer with size from get_sigstksz() */
-+  char *buffer;
-   /* These other members are for proper alignment.  There's no
-      standard way to guarantee stack alignment, but this seems enough
-@@ -208,10 +210,11 @@ c_stack_action (void (*action) (int))
-   program_error_message = _("program error");
-   stack_overflow_message = _("stack overflow");
-+  alternate_signal_stack.buffer = malloc(get_sigstksz());
-   /* Always install the overflow handler.  */
-   if (stackoverflow_install_handler (overflow_handler,
-                                      alternate_signal_stack.buffer,
--                                     sizeof alternate_signal_stack.buffer))
-+                                     get_sigstksz()))
-     {
-       errno = ENOTSUP;
-       return -1;
-@@ -284,14 +287,15 @@ c_stack_action (void (*action) (int))
-   stack_t st;
-   struct sigaction act;
-   st.ss_flags = 0;
-+  alternate_signal_stack.buffer = malloc(get_sigstksz());
- # if SIGALTSTACK_SS_REVERSED
-   /* Irix mistakenly treats ss_sp as the upper bound, rather than
-      lower bound, of the alternate stack.  */
--  st.ss_sp = alternate_signal_stack.buffer + SIGSTKSZ - sizeof (void *);
--  st.ss_size = sizeof alternate_signal_stack.buffer - sizeof (void *);
-+  st.ss_sp = alternate_signal_stack.buffer + get_sigstksz() - sizeof (void *);
-+  st.ss_size = get_sigstksz() - sizeof (void *);
- # else
-   st.ss_sp = alternate_signal_stack.buffer;
--  st.ss_size = sizeof alternate_signal_stack.buffer;
-+  st.ss_size = get_sigstksz();
- # endif
-   r = sigaltstack (&st, NULL);
-   if (r != 0)
--- 
-2.31.1
-
similarity index 81%
rename from meta/recipes-extended/diffutils/diffutils_3.7.bb
rename to meta/recipes-extended/diffutils/diffutils_3.8.bb
index 7b4ae160f997ee563b4a05d8201ad29cea6371cc..a6522967d4778861668cf2575187fb5cb3925b58 100644 (file)
@@ -6,14 +6,15 @@ require diffutils.inc
 SRC_URI = "${GNU_MIRROR}/diffutils/diffutils-${PV}.tar.xz \
            file://run-ptest \
            file://0001-Skip-strip-trailing-cr-test-case.patch \
-           file://0001-c-stack-stop-using-SIGSTKSZ.patch \
-"
+           "
 
-SRC_URI[md5sum] = "4824adc0e95dbbf11dfbdfaad6a1e461"
-SRC_URI[sha256sum] = "b3a7a6221c3dc916085f0d205abf6b8e1ba443d4dd965118da364a1dc1cb3a26"
+SRC_URI[sha256sum] = "a6bdd7d1b31266d11c4f4de6c1b748d4607ab0231af5188fc2533d0ae2438fec"
 
 EXTRA_OECONF += "ac_cv_path_PR_PROGRAM=${bindir}/pr --without-libsigsegv-prefix"
 
+# latest gnulib is no longer able to handle this - I dare not try to fix that maze of abstractions and generators
+CFLAGS:mingw32 = " -DSA_RESTART=0"
+
 # Fix "Argument list too long" error when len(TMPDIR) = 410
 acpaths = "-I ./m4"