gnu: racket-vm-bc: Add workaround for ppc64le.
This is an attempt to avoid a problem with Racket BC on ppc64 reported in <https://issues.guix.gnu.org/57050#19> that was exposed by attempting to use Racket BC to bootstrap Chez Scheme. Thanks to Matthew Flatt for the workaround: <https://racket.discourse.group/t/950/30>. * gnu/packages/racket.scm (racket-vm-bc)[arguments]<#:configure-flags>: Increase the number of bytes that should be available on the stack for "safety" when checking for stack overflow. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
parent
a15d72f8e1
commit
64a27e1678
1 changed files with 14 additions and 1 deletions
|
@ -412,7 +412,20 @@ (define-public racket-vm-bc
|
|||
(substitute-keyword-arguments (package-arguments racket-vm-cgc)
|
||||
((#:configure-flags _ '())
|
||||
#~(cons "--enable-bconly"
|
||||
#$racket-vm-common-configure-flags))))
|
||||
#$(cond
|
||||
((target-ppc64le?)
|
||||
;; Attempt to avoid a problem bootstrapping Chez Scheme:
|
||||
;; see <https://issues.guix.gnu.org/57050#19>
|
||||
;; and <https://racket.discourse.group/t/950/30>.
|
||||
#~(map
|
||||
(lambda (flag)
|
||||
(if (string-prefix? "CPPFLAGS=" flag)
|
||||
(string-append flag
|
||||
" -DSTACK_SAFETY_MARGIN=2000000")
|
||||
flag))
|
||||
#$racket-vm-common-configure-flags))
|
||||
(else
|
||||
racket-vm-common-configure-flags))))))
|
||||
(synopsis "Racket BC [3M] implementation")
|
||||
(description "The Racket BC (``before Chez'' or ``bytecode'')
|
||||
implementation was the default before Racket 8.0. It uses a compiler written
|
||||
|
|
Loading…
Reference in a new issue