Subject: [bug#64711] [PATCH 09/43] gnu: m4: Skip gnulib stack-overflow tests for the Hurd.

From: Janneke Nieuwenhuizen <[email-masked]>
Date: Tue, 18 Jul 2023 16:40:02 +0200

* gnu/packages/m4.scm (m4)[arguments]: When building for the Hurd, add stage
'skip-stack-overflow-tests'.
---
 gnu/packages/m4.scm | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/m4.scm b/gnu/packages/m4.scm
index fbc075a2cb..39b50b6800 100644
--- a/gnu/packages/m4.scm
+++ b/gnu/packages/m4.scm
@@ -2,6 +2,7 @@
 ;;; Copyright © 2012, 2013, 2015 Ludovic Courtès <[email-masked]>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <[email-masked]>
 ;;; Copyright © 2022 Marius Bakke <[email-masked]>
+;;; Copyright © 2023 Janneke Nieuwenhuizen <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -23,7 +24,8 @@ (define-module (gnu packages m4)
   #:use-module (gnu packages)
   #:use-module (guix packages)
   #:use-module (guix download)
-  #:use-module (guix build-system gnu))
+  #:use-module (guix build-system gnu)
+  #:use-module (guix utils))
 
 (define-public m4
   (package
@@ -54,6 +56,14 @@ (define-public m4
             (substitute* "tests/test-execute.sh"
               (("4 5 6")
                "4 6"))))
+        ,@(if (target-hurd?)
+              '((add-after 'unpack 'skip-stack-overflow-tests
+                  (lambda _
+                    (substitute* '("tests/test-sigsegv-catch-stackoverflow1.c"
+                                   "tests/test-sigsegv-catch-stackoverflow2.c")
+                      (("(^| )main *\\(.*" all)
+                       (string-append all "{\n  exit (77);//"))))))
+              '())
         (add-after 'unpack 'configure-shell
           (lambda* (#:key native-inputs inputs #:allow-other-keys)
             (let ((/bin/sh (search-input-file (or native-inputs inputs)
-- 
2.40.1