diff options
author | Philip McGrath <philip@philipmcgrath.com> | 2022-02-27 16:29:17 -0500 |
---|---|---|
committer | Liliana Marie Prikler <liliana.prikler@gmail.com> | 2022-03-04 23:44:33 +0100 |
commit | b639b36de2addf1aa40e9b260f048288face3ce3 (patch) | |
tree | 35a9d845ec282500bca252db1537ee9c1bbb832f /gnu/packages/chez.scm | |
parent | f79049caae7d8676d95db0b40c0f186572e504fd (diff) | |
download | guix-b639b36de2addf1aa40e9b260f048288face3ce3.tar.gz guix-b639b36de2addf1aa40e9b260f048288face3ce3.zip |
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>
Diffstat (limited to 'gnu/packages/chez.scm')
-rw-r--r-- | gnu/packages/chez.scm | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/gnu/packages/chez.scm b/gnu/packages/chez.scm index da267d3616..5d5108a2b1 100644 --- a/gnu/packages/chez.scm +++ b/gnu/packages/chez.scm @@ -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 |