diff options
author | dos-reis <gdr@axiomatics.org> | 2011-04-10 21:47:13 +0000 |
---|---|---|
committer | dos-reis <gdr@axiomatics.org> | 2011-04-10 21:47:13 +0000 |
commit | 4d4f8f3638dfe65d82f2343ce19fc367aa42337c (patch) | |
tree | 196533b9ef9ac71b2427fc92f97547dc8c2a554c /config | |
parent | 41a15b30f26b7a2ca2077f7996a3cf552bf5630a (diff) | |
download | open-axiom-4d4f8f3638dfe65d82f2343ce19fc367aa42337c.tar.gz |
* config/open-axiom.m4 (OPENAXIOM_HOST_LISP_CPU_PRECISION):
Special-case for detecting binary personality.
* configure.ac: ECL now provides (at last!) way to gather
information about binary personality.
Diffstat (limited to 'config')
-rw-r--r-- | config/open-axiom.m4 | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/config/open-axiom.m4 b/config/open-axiom.m4 index 00a222a2..ca3f7853 100644 --- a/config/open-axiom.m4 +++ b/config/open-axiom.m4 @@ -51,13 +51,6 @@ if test x"$oa_include_gcl" != xyes; then ;; esac ;; - # ECL does not provide useful information for detecting CPU precision - *ecl*) - case $target in - *darwin*) - AC_MSG_ERROR([We do not know how to extend this Lisp system with native libraries. Please consider SBCL or better]) - esac - ;; esac fi ]) @@ -443,8 +436,18 @@ dnl set the global variable openaxiom_host_lisp_precision. AC_DEFUN([OPENAXIOM_HOST_LISP_CPU_PRECISION], [ if test x"$oa_include_gcl" != xyes; then AC_MSG_CHECKING([CPU precision as seen by $AXIOM_LISP]) - case `echo '*features*' | $AXIOM_LISP` in - *X86-64*|*X86_64*|*WORD-SIZE=64*|*64-BIT-HOST*) + # Almost all Lisp systems we support put the relevant information + # on the *FEATURES* list. Except ECL. + case $axiom_lisp_flavor in + ecl) + features_expr='(progn (require :cmp) (eval (find-symbol "*COMPILER-FEATURES*" :c)))' + ;; + *) + features_expr='*features*' + ;; + esac + case `echo $features_expr | $AXIOM_LISP` in + *X86-64*|*X86_64*|*WORD-SIZE=64*|*64-BIT*) # PORTME: the pattern above covers only the supported free Lisps, i.e. # GCL, SBCL, CLisp, ECL and Clozure CL. openaxiom_host_lisp_precision=64 |