diff options
Diffstat (limited to 'gnu/packages/patches/shepherd-hurd.patch')
-rw-r--r-- | gnu/packages/patches/shepherd-hurd.patch | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/gnu/packages/patches/shepherd-hurd.patch b/gnu/packages/patches/shepherd-hurd.patch new file mode 100644 index 0000000000..5043e831f2 --- /dev/null +++ b/gnu/packages/patches/shepherd-hurd.patch @@ -0,0 +1,44 @@ +Fixes compilation on the Hurd. + +Taken from upstream: http://git.savannah.gnu.org/cgit/shepherd.git/commit/?id=232331369fe2a0495c7c777e11eecabee6257b3f + +From 232331369fe2a0495c7c777e11eecabee6257b3f Mon Sep 17 00:00:00 2001 +From: Jan Nieuwenhuizen <janneke@gnu.org> +Date: Sat, 7 Mar 2020 22:01:23 +0100 +Subject: [PATCH] system: Support compilation on the Hurd. +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +* modules/shepherd/system.scm.in (prctl): Wrap 'dynamic-func' call in +'false-if-exception'. + +Co-authored-by: Ludovic Courtès <ludo@gnu.org> +--- + modules/shepherd/system.scm.in | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/modules/shepherd/system.scm.in b/modules/shepherd/system.scm.in +index 769404a..0b2cc9d 100644 +--- a/modules/shepherd/system.scm.in ++++ b/modules/shepherd/system.scm.in +@@ -1,6 +1,7 @@ + ;; system.scm -- Low-level operating system interface. + ;; Copyright (C) 2013, 2014, 2016, 2018 Ludovic Courtès <ludo@gnu.org> + ;; Copyright (C) 2018 Carlo Zancanaro <carlo@zancanaro.id.au> ++;; Copyright (C) 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> + ;; + ;; This file is part of the GNU Shepherd. + ;; +@@ -145,7 +146,7 @@ ctrlaltdel(8) and see kernel/reboot.c in Linux." + (define PR_SET_CHILD_SUBREAPER @PR_SET_CHILD_SUBREAPER@) + + (define prctl +- (if (dynamic-func "prctl" (dynamic-link)) ++ (if (false-if-exception (dynamic-func "prctl" (dynamic-link))) + (let ((proc (syscall->procedure long "prctl" (list int int)))) + (lambda (process operation) + "Perform an operation on the given process" +-- +2.24.0 + |