mirror of
https://github.com/ashinn/chibi-scheme.git
synced 2025-05-19 13:49:17 +02:00
Fix installation for Chicken 5
To get the repository path in Chicken 5, we not only have to require the chicken.platform module, we also need to take the car of the result since it now returns a list.
This commit is contained in:
parent
13d4bbf1d1
commit
7f3d322407
1 changed files with 11 additions and 3 deletions
|
@ -1287,6 +1287,16 @@
|
||||||
(string->number (process->string '(csi -p "(##sys#fudge 42)")))
|
(string->number (process->string '(csi -p "(##sys#fudge 42)")))
|
||||||
8))
|
8))
|
||||||
|
|
||||||
|
(define (get-chicken-repo-path)
|
||||||
|
(let ((release (string-trim (process->string '(csi -release))
|
||||||
|
char-whitespace?)))
|
||||||
|
(string-trim
|
||||||
|
(if (string-prefix? "4." release)
|
||||||
|
(process->string '(csi -p "(repository-path)"))
|
||||||
|
(process->string
|
||||||
|
'(csi -R chicken.platform -p "(car (repository-path))")))
|
||||||
|
char-whitespace?)))
|
||||||
|
|
||||||
(define (get-install-dirs impl cfg)
|
(define (get-install-dirs impl cfg)
|
||||||
(define (guile-eval expr)
|
(define (guile-eval expr)
|
||||||
(guard (exn (else #f))
|
(guard (exn (else #f))
|
||||||
|
@ -1304,9 +1314,7 @@
|
||||||
(cons share-dir (delete share-dir dirs))
|
(cons share-dir (delete share-dir dirs))
|
||||||
dirs)))
|
dirs)))
|
||||||
((chicken)
|
((chicken)
|
||||||
(let ((dir (string-trim
|
(let ((dir (get-chicken-repo-path)))
|
||||||
(process->string '(csi -p "(repository-path)"))
|
|
||||||
char-whitespace?)))
|
|
||||||
(list
|
(list
|
||||||
(if (file-exists? dir) ; repository-path should always exist
|
(if (file-exists? dir) ; repository-path should always exist
|
||||||
dir
|
dir
|
||||||
|
|
Loading…
Add table
Reference in a new issue