aboutsummaryrefslogtreecommitdiff
path: root/configure.ac
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2010-02-08 01:08:42 +0000
committerdos-reis <gdr@axiomatics.org>2010-02-08 01:08:42 +0000
commit3f8f61e055c818711c6a6136b89b6e9fedda8c3c (patch)
treeb6892bc44f1604fe03e29cdf7a28109a63adb370 /configure.ac
parent49820464da35e02649ec0d4107ac3ea4491e1620 (diff)
downloadopen-axiom-3f8f61e055c818711c6a6136b89b6e9fedda8c3c.tar.gz
Add support for CLozure CL.
* lisp/core.lisp.in: Add support for Clozure CL. (main): Remove as unused. * driver/utils.h (openaxiom_runtime): Add openaxiom_clozure_runtime. * boot/translator.boot (loadNativeModule): Handle Clozure CL. * boot/ast.boot (nativeType): Handle Clozure's FFI types. (nativeReturnType): Likewise. (coerceToNativeType): Likewise. (genCLOZUREnativeTranslation): New. (genImportDeclaration): Use it. * interp/vmlisp.lisp (SINTP): Remove duplicate definition. (SMINTP): Likewise. (ZERO?): Likewise. (GCMSG): Reorganize definition. (BPINAME): Likewise.
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac17
1 files changed, 17 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac
index 7deb6f37..33f9fa90 100644
--- a/configure.ac
+++ b/configure.ac
@@ -261,6 +261,9 @@ case $axiom_include_gcl,$axiom_lisp in
*"Armed Bear Common Lisp"*)
axiom_lisp_flavor=abcl
;;
+ *"Clozure Common Lisp"*)
+ axiom_lisp_flavor=clozure
+ ;;
esac
AC_MSG_RESULT([$axiom_lisp_flavor])
esac
@@ -325,6 +328,10 @@ case $axiom_lisp_flavor in
axiom_quiet_flags='--quiet'
axiom_eval_flags='-norc -x'
;;
+ clozure)
+ axiom_quiet_flags='--quiet --no-init'
+ axiom_eval_flags='--eval'
+ ;;
*) AC_MSG_ERROR([We do not know how to build OpenAxiom this $axiom_lisp]) ;;
esac
AC_SUBST(axiom_quiet_flags)
@@ -685,6 +692,16 @@ case $axiom_lisp_flavor in
double_type=':double'
string_type=':cstring'
;;
+ clozure)
+ void_type=':void'
+ # FIXME: this is not really what we want, but good enough for now.
+ char_type=':unsigned-byte'
+ int_type=':signed-fullword'
+ float_type=':single-float'
+ double_type=':double-float'
+ # Clozure CL wants you to deal with your own mess
+ string_type=':address'
+ ;;
*)
AC_MSG_ERROR([We do not know how to translate native types for this Lisp])
;;