Compare commits

..

4 Commits

Author SHA1 Message Date
retropikzel 13c26c25e5 Fixing Chicken and Gambit 2025-07-17 18:38:17 +03:00
retropikzel 9343f86afd Chicken and Gambit fixes 2025-07-17 18:23:07 +03:00
retropikzel cb2092c134 Support for Chicken 6 2025-07-17 15:52:09 +03:00
retropikzel 605efdf2f8 Support for Chicken 6 2025-07-17 15:47:13 +03:00
2 changed files with 21 additions and 2 deletions

View File

@ -49,9 +49,15 @@ test-r7rs:
mkdir -p ${R7RSTMP}
mkdir -p ${R7RSTMP}/libs
mkdir -p ${R7RSTMP}/libs/foo
echo "(import (scheme base) (foo bar)) (baz)" > ${R7RSTMP}/main.scm
mkdir -p ${R7RSTMP}/libs/hello
echo "(import (scheme base) (foo bar) (hello world) (srfi 9001)) (baz) (hello-word) (over-9000)" > ${R7RSTMP}/main.scm
echo "(define baz (lambda () (display \"Test successfull\") (newline)))" > ${R7RSTMP}/libs/foo/bar.scm
echo "(define-library (foo bar) (import (scheme base) (scheme write)) (export baz) (include \"bar.scm\"))" > ${R7RSTMP}/libs/foo/bar.sld
echo "(define-library (foo bar) (import (scheme base) (scheme write) (hello world)) (export baz) (include \"bar.scm\"))" > ${R7RSTMP}/libs/foo/bar.sld
echo "(define hello-world (lambda () (+ 1 1)))" > ${R7RSTMP}/libs/hello/world.scm
echo "(define-library (hello world) (import (scheme base) (scheme write)) (export hello-world) (include \"world.scm\"))" > ${R7RSTMP}/libs/hello/world.sld
mkdir -p ${R7RSTMP}/libs/srfi
echo "(define over-9000 (lambda () (+ 1 1)))" > ${R7RSTMP}/libs/srfi/9001.scm
echo "(define-library (srfi 9001) (import (scheme base) (scheme write)) (export over-9000) (include \"9001.scm\"))" > ${R7RSTMP}/libs/srfi/9001.sld
cd ${R7RSTMP} && COMPILE_R7RS=${SCHEME} compile-r7rs -I ./libs -o main main.scm
-cd ${R7RSTMP} && timeout 60 ./main > compile-r7rs-test-result.txt 2>&1
@grep "Test successfull" ${R7RSTMP}/compile-r7rs-test-result.txt || (echo "Test failed, output: " && cat ${R7RSTMP}/compile-r7rs-test-result.txt && exit 1)

View File

@ -105,6 +105,15 @@
,input-file)))))
(cyclone
(type . compiler)
#;(library-command . ,(lambda (library-file prepend-directories append-directories r6rs?)
(apply string-append
`("cyclone"
" "
,(util-getenv "COMPILE_R7RS_CYCLONE")
" "
,@(map (lambda (item) (string-append "-I " item " ")) prepend-directories)
,@(map (lambda (item) (string-append "-A " item " ")) append-directories)
,library-file))))
(command . ,(lambda (input-file output-file prepend-directories append-directories library-files r6rs?)
(apply string-append
`("cyclone"
@ -138,6 +147,10 @@
(type . compiler)
(library-command . ,(lambda (library-file prepend-directories append-directories r6rs?)
(apply string-append `("gsc -obj "
,@(map (lambda (item)
(string-append item "/ "))
(append prepend-directories
append-directories))
,(search-library-file (append append-directories
prepend-directories)
library-file)))))