Add support for Gambit
This commit is contained in:
parent
160f068ac9
commit
00a3337c53
|
|
@ -4,6 +4,9 @@ FROM docker.io/schemers/${IMAGE}
|
|||
ARG SCHEME=chibi
|
||||
ENV COMPILE_R7RS=${SCHEME}
|
||||
RUN apt-get update && apt-get install -y make
|
||||
COPY configure .
|
||||
COPY Makefile .
|
||||
COPY compile-r7rs .
|
||||
RUN install compile-r7rs /usr/local/bin/compile-r7rs
|
||||
RUN ./configure
|
||||
RUN make
|
||||
RUN make install
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
set -eu
|
||||
if [ "${COMPILE_R7RS:-}" = "" ]; then
|
||||
echo "COMPILE_R7RS not set, possible values:"
|
||||
echo "capyscheme chezscheme chibi chicken cyclone foment gauche guile ikarus ironscheme kawa larceny loko meevax mosh racket sagittarius skint stklos tr7 ypsilon"
|
||||
echo "capyscheme chezscheme chibi chicken cyclone foment gauche gambit guile ikarus ironscheme kawa larceny loko meevax mosh racket sagittarius skint stklos tr7 ypsilon"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
|
@ -21,6 +21,7 @@ case ${1:-} in
|
|||
chicken) prepend_dirs="" ;;
|
||||
chezscheme|ikarus|loko|mosh|tr7) prepend_dirs="$prepend_dirs:$2" ;;
|
||||
capyscheme|guile|sagittarius) prepend_dirs="$prepend_dirs -L $2" ;;
|
||||
gambit) prepend_dirs="$prepend_dirs $2/" ;;
|
||||
kawa) prepend_dirs="$prepend_dirs:$2/*.sld";;
|
||||
racket) prepend_dirs="$prepend_dirs -S $2" ;;
|
||||
ypsilon) prepend_dirs="$prepend_dirs --sitelib=$2" ;;
|
||||
|
|
@ -30,11 +31,12 @@ case ${1:-} in
|
|||
-A) case $COMPILE_R7RS in
|
||||
chicken) append_dirs="" ;;
|
||||
chezscheme|ikarus|loko|mosh|tr7) append_dirs="$append_dirs:$2" ;;
|
||||
gambit) append_dirs="$append_dirs $2/" ;;
|
||||
guile) append_dirs="$append_dirs -L $2" ;;
|
||||
ironscheme) append_dirs="$append_dirs -I $2" ;;
|
||||
kawa) append_dirs="$append_dirs:$2/*.sld";;
|
||||
racket) append_dirs="$append_dirs -S $2" ;;
|
||||
ypsilon) prepend_dirs="$prepend_dirs --sitelib=$2" ;;
|
||||
ypsilon) append_dirs="$append_dirs --sitelib=$2" ;;
|
||||
*) append_dirs="$append_dirs -A $2" ;;
|
||||
esac
|
||||
shift; shift ;;
|
||||
|
|
@ -79,6 +81,7 @@ case $rnrs in
|
|||
cyclone) cyclone -o "$output_file" $prepend_dirs $append_dirs "$input_file";;
|
||||
foment) echo "$prefix foment $prepend_dirs $append_dirs -A /usr/local/share/snow" >> "$output_file";;
|
||||
gauche) echo "$prefix gosh -r7 $prepend_dirs $append_dirs" >> "$output_file";;
|
||||
gambit) echo "$prefix gsi -:r7rs $prepend_dirs $append_dirs" >> "$output_file";;
|
||||
guile) printf "$prefix guile --r7rs $prepend_dirs $append_dirs\n!#\n" >> "$output_file";;
|
||||
kawa) printf "\n#|\nexec kawa -J--enable-native-access=ALL-UNNAMED -J--add-exports=java.base/jdk.internal.foreign.layout=ALL-UNNAMED -J--add-exports=java.base/jdk.internal.foreign.abi=ALL-UNNAMED -J--add-exports=java.base/jdk.internal.foreign=ALL-UNNAMED --r7rs --full-tailcalls -Dkawa.import.path=$prepend_dirs:$append_dirs:/usr/local/share/kawa/lib/*.sld -f \$0\n|#" >> "$output_file";;
|
||||
larceny) printf "\n#|\nexec larceny -r7rs -utf8 -quiet -nobanner $prepend_dirs $append_dirs -program \$0 --\n|#\n" >> "$output_file";;
|
||||
|
|
|
|||
Loading…
Reference in New Issue