me
/
guix
Archived
1
0
Fork 0

gnu: chez-mit: Support chez-scheme-for-racket.

Racket's variant of Chez Scheme defines 'string->uninterned-symbol',
which conflicts with the definition from '(chez mit)'. See discussion at
<https://github.com/racket/racket/issues/4151>.

* gnu/packages/chez.scm (chez-mit)[origin]<snippet>: Add workaround for
chez-scheme-for-racket.

Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
master
Philip McGrath 2022-02-27 16:29:17 -05:00 committed by Liliana Marie Prikler
parent f79049caae
commit b639b36de2
No known key found for this signature in database
GPG Key ID: 442A84B8C70E2F87
1 changed files with 23 additions and 1 deletions

View File

@ -949,7 +949,29 @@ strings.")
(commit (string-append "v" version))))
(sha256
(base32 "0c7i3b6i90xk96nmxn1pc9272a4yal4v40dm1a4ybdi87x53zkk0"))
(file-name (git-file-name name version))))
(file-name (git-file-name name version))
(snippet
;; Workaround for chez-scheme-for-racket.
;; See: https://github.com/racket/racket/issues/4151
#~(begin
(use-modules (guix build utils))
(substitute* "mit/core.sls"
(("[(]import ")
"(import (only (chezscheme) import)\n")
(("[(]define string->uninterned-symbol gensym[)]")
(format #f "~s"
'(begin
(import (only (chezscheme)
meta-cond
library-exports))
(meta-cond
((memq 'string->uninterned-symbol
(library-exports '(chezscheme)))
(import (only (chezscheme)
string->uninterned-symbol)))
(else
(define string->uninterned-symbol
gensym)))))))))))
(build-system gnu-build-system)
(inputs
(list chez-srfi)) ; for tests