[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
02/03: gnu: erlang: Patch occurrences of /bin/sh in the source.
From: |
Christopher Baines |
Subject: |
02/03: gnu: erlang: Patch occurrences of /bin/sh in the source. |
Date: |
Tue, 12 Jun 2018 02:48:23 -0400 (EDT) |
cbaines pushed a commit to branch master
in repository guix.
commit b5453aa7c314bec95e0c25b904f3517d338577ed
Author: Christopher Baines <address@hidden>
Date: Fri Jun 1 14:29:24 2018 +0100
gnu: erlang: Patch occurrences of /bin/sh in the source.
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 | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/gnu/packages/erlang.scm b/gnu/packages/erlang.scm
index 55e0e62..1c18efe 100644
--- a/gnu/packages/erlang.scm
+++ b/gnu/packages/erlang.scm
@@ -128,6 +128,29 @@
(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")))
+
+ #t))
(add-after 'patch-source-shebangs 'patch-source-env
(lambda _
(let ((escripts