GNU bug report logs - #31678
[PATCH 0/2] Elixir and Erlang improvements

Previous Next

Package: guix-patches;

Reported by: Christopher Baines <mail <at> cbaines.net>

Date: Fri, 1 Jun 2018 13:47:01 UTC

Severity: normal

Tags: patch

Done: Christopher Baines <mail <at> cbaines.net>

Bug is archived. No further changes may be made.

Full log


Message #14 received at 31678 <at> debbugs.gnu.org (full text, mbox):

From: iyzsong <at> member.fsf.org (宋文武)
To: Christopher Baines <mail <at> cbaines.net>
Cc: 31678 <at> debbugs.gnu.org
Subject: Re: [bug#31678] [PATCH 1/2] gnu: erlang: Patch occurrences of /bin/sh
 in the source.
Date: Sun, 10 Jun 2018 12:41:20 +0800
Christopher Baines <mail <at> cbaines.net> writes:

> Previously, the elixir package would often fail to build, as running :os:cmd
> would fail, as /bin/sh doesn't exist when building the elixir package. These
> changes fix that issue.
>
> * gnu/packages/erlang.scm (erlang)[arguments]: Add new patch-/bin/sh phase to
> replace hardcoded references to /bin/sh with a file in the store.
> ---
>  gnu/packages/erlang.scm | 21 +++++++++++++++++++++
>  1 file changed, 21 insertions(+)
>
> diff --git a/gnu/packages/erlang.scm b/gnu/packages/erlang.scm
> index 0e2b7b5bc..1fce57388 100644
> --- a/gnu/packages/erlang.scm
> +++ b/gnu/packages/erlang.scm
> @@ -127,6 +127,27 @@
>                    (date->string source-date-epoch
>                                  "{H,Mi,S} = {~H,~M,~S},")))
>                 #t)))
> +         (add-after 'unpack 'patch-/bin/sh
> +           (lambda _
> +             (substitute* "erts/etc/unix/run_erl.c"
> +               (("sh = \"/bin/sh\";")
> +                (string-append "sh = \""
> +                               (which "sh")
> +                               "\";")))
> +
> +             (substitute* "erts/emulator/sys/unix/sys_drivers.c"
> +               (("SHELL \"/bin/sh\"")
> +                (string-append "SHELL \""
> +                               (which "sh")
> +                               "\"")))
> +             (substitute* "erts/emulator/sys/unix/erl_child_setup.c"
> +               (("SHELL \"/bin/sh\"")
> +                (string-append "SHELL \""
> +                               (which "sh")
> +                               "\"")))
> +
> +             (substitute* "lib/kernel/src/os.erl"
> +               (("/bin/sh") (which "sh")))))

It should return ‘#t’, otherwise look good to me!




This bug report was last modified 7 years and 38 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.