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.
This commit is contained in:
parent
9b25e1d124
commit
b5453aa7c3
|
@ -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
|
||||
|
|
Loading…
Reference in New Issue