--- gforth/configure.in 2008/01/04 21:48:53 1.204 +++ gforth/configure.in 2008/01/21 13:21:57 1.211 @@ -32,16 +32,6 @@ AC_CONFIG_HEADERS(engine/config.h) #suppress the "-g -O2" default test "$CFLAGS" || CFLAGS=-O2 -AC_ARG_ENABLE(force-reg, - AC_HELP_STRING([--enable-force-reg], - [ Use explicit register declarations if they appear in - the machine.h file. This can cause a good speedup, - but also incorrect code with some gcc versions on - some processors (default disabled).]), - ,enable_force_reg=no) -test "$enable_force_reg" = "no"|| - AC_DEFINE(FORCE_REG,,[Define if you want to use explicit register declarations for better performance or for more convenient CODE words (does not work with all GCC versions on all machines)]) - AC_ARG_ENABLE(force-cdiv, AC_HELP_STRING([--enable-force-cdiv], [ Use the native C division - symmetric - instead of @@ -198,9 +188,13 @@ case "$host_cpu" in CFLAGS="$CFLAGS -mthumb -mthumb-interwork" fi if test -z $arm_cacheflush; then + if test $host_os = linux; then + arm_cacheflush=arch/arm/cacheflush-linux + else no_dynamic_default=1 arm_cacheflush=arch/arm/cacheflush0 AC_MSG_WARN([No I-cache flush code known, disabling dynamic native code generation]) + fi fi AC_LIBSOURCES([../arch/arm/cacheflush0, ../arch/arm/cacheflush1, ../arch/arm/cacheflush2]) AC_LIBOBJ(../$arm_cacheflush) @@ -475,10 +469,7 @@ case `expr 2 '*' "$ac_cv_sizeof_char_p"` $ac_cv_sizeof_intptr_t) ac_cv_int_type_double_cell="intptr_t" ;; - $ac_cv_sizeof_intptr_t) - ac_cv_int_type_double_cell="intptr_t" - ;; - $ac_cv_sizeof_intptr_t) + $ac_cv_sizeof_int128_t) ac_cv_int_type_double_cell="int128_t" ;; esac @@ -513,7 +504,19 @@ if test "$ac_cv_int_type_double_cell" != then AC_DEFINE_UNQUOTED(DOUBLE_CELL_TYPE,$ac_cv_int_type_double_cell,[an integer type that is twice as long as a pointer]) AC_DEFINE_UNQUOTED(DOUBLE_UCELL_TYPE,$ac_cv_int_type_double_ucell,[an unsigned integer type that is twice as long as a pointer]) + OPTS=-ll +else + if test "$ac_cv_sizeof_char_p" == 8; then + OPTS="-ll -no-ll" + else + OPTS=-noll + fi +fi + +if grep -q FORCE_REG arch/$machine/machine.h; then + OPTS=`for i in $OPTS; do echo -n "$i-reg "; done`$OPTS fi +AC_SUBST(OPTS) AC_TYPE_OFF_T AC_CHECK_SIZEOF(off_t) @@ -601,7 +604,7 @@ AC_MSG_RESULT($M4) # Find installed Gforth AC_MSG_CHECKING([for gforth]) GFORTH="`which gforth 2>/dev/null`" -if test ! -z "$GFORTH"; then GFORTH="$GFORTH -m4M" ; fi +if test ! -z "$GFORTH"; then GFORTH="$GFORTH -m4M --die-on-signal -i `gforth --debug -e bye 2>&1 |grep "Opened image file: "|sed 's/Opened image file: //'`" ; fi AC_SUBST(GFORTH) AC_DEFINE_UNQUOTED(GFORTH,"$GFORTH",[How to invoke gforth]) AC_MSG_RESULT($GFORTH) @@ -657,13 +660,13 @@ AC_CHECK_PROG([MASSAGE_EXE],[chcon],[chc dnl Now a little support for DOS/DJGCC AC_SUBST(GFORTH_EXE) -GFORTH_EXE="" +GFORTH_EXE="true" AC_SUBST(GFORTHFAST_EXE) -GFORTHFAST_EXE="" +GFORTHFAST_EXE="true" AC_SUBST(GFORTHITC_EXE) -GFORTHITC_EXE="" +GFORTHITC_EXE="true" AC_SUBST(GFORTHDITC_EXE) -GFORTHDITC_EXE="" +GFORTHDITC_EXE="true" AC_SUBST(FORTHSIZES)