Chicken 6 for default

This commit is contained in:
retropikzel 2025-07-15 17:09:38 +03:00
parent b23498a087
commit 3edd58d75a
2 changed files with 36 additions and 11 deletions

View File

@ -240,13 +240,10 @@ and input file to .sps file and other way around is undefined behaviour.
### Chicken ### Chicken
<a name="#usage-chicken"></a> <a name="#usage-chicken"></a>
To run executable at place set LD\_LIBRARY\_PATH=. (executable directory) By default Chicken 6 is assumed, for Chicken 5 use environment variable to
before running it. For example: add R7RS libraries:
LD\_LIBRARY\_PATH=. ./test COMPILE_R7RS_CHIKEN="-X r7r -R r7rs"
If you are using Chicken you should propably read the next section too, you
will most propably run into it soon.
### mit-scheme ### mit-scheme
<a name="#usage-mit-scheme"></a> <a name="#usage-mit-scheme"></a>

View File

@ -51,25 +51,53 @@
(out (string-append (if (string-starts-with? library-file "srfi") (out (string-append (if (string-starts-with? library-file "srfi")
(string-replace (string-cut-from-end library-file 4) #\/ #\-) (string-replace (string-cut-from-end library-file 4) #\/ #\-)
(string-replace (string-cut-from-end library-file 4) #\/ #\.)) (string-replace (string-cut-from-end library-file 4) #\/ #\.))
".so"))) ".o"))
(apply string-append `("csc -R r7rs -X r7rs -s -J" (static-out (string-append (if (string-starts-with? library-file "srfi")
(string-replace (string-cut-from-end library-file 4) #\/ #\-)
(string-replace (string-cut-from-end library-file 4) #\/ #\.))
".a")))
(apply string-append `("csc -static -c -J"
" "
,(util-getenv "COMPILE_R7RS_CHICKEN")
" " " "
"-o" "-o"
" " " "
,out ,out
" " " "
,(util-getenv "COMPILE_R7RS_CHICKEN") ,(search-library-file (append prepend-directories append-directories) library-file)
" " " "
,(search-library-file (append prepend-directories append-directories) library-file)))))) "-unit"
" "
,unit
" "
"&&"
" "
"ar"
" "
"rcs"
" "
,static-out
" "
,out)))))
(command . ,(lambda (input-file output-file prepend-directories append-directories library-files r6rs?) (command . ,(lambda (input-file output-file prepend-directories append-directories library-files r6rs?)
(apply string-append `("csc -R r7rs -X r7rs" (apply string-append `("csc"
" " " "
,(util-getenv "COMPILE_R7RS_CHICKEN") ,(util-getenv "COMPILE_R7RS_CHICKEN")
" " " "
"-static"
" "
,@(map (lambda (item) ,@(map (lambda (item)
(string-append "-I " item " ")) (string-append "-I " item " "))
(append append-directories prepend-directories)) (append append-directories prepend-directories))
" " " "
,@(map (lambda (library-file)
(string-append "-uses "
(if (string-starts-with? library-file "srfi")
(string-replace (string-cut-from-end library-file 4) #\/ #\-)
(string-replace (string-cut-from-end library-file 4) #\/ #\.))
" "))
library-files)
"-output-file" "-output-file"
" " " "
,output-file ,output-file