Diff for /gforth/configure.in between versions 1.152 and 1.181

version 1.152, 2005/08/21 22:09:13 version 1.181, 2007/04/01 21:30:26
Line 1 Line 1
 dnl Process this file with autoconf to produce a configure script.  dnl Process this file with autoconf to produce a configure script.
   
 #Copyright (C) 1995,1996,1997,1998,2000,2003,2004 Free Software Foundation, Inc.  #Copyright (C) 1995,1996,1997,1998,2000,2003,2004,2005,2006 Free Software Foundation, Inc.
   
 #This file is part of Gforth.  #This file is part of Gforth.
   
Line 21  dnl Process this file with autoconf to p Line 21  dnl Process this file with autoconf to p
   
 dnl We use some automake macros here,  dnl We use some automake macros here,
 dnl but don't use automake for creating Makefile.in  dnl but don't use automake for creating Makefile.in
 AC_INIT([gforth],[0.6.2-20030910],[https://savannah.gnu.org/bugs/?func=addbug&group=gforth])  AC_INIT([gforth],[0.6.9-20070401],[https://savannah.gnu.org/bugs/?func=addbug&group=gforth])
 AC_PREREQ(2.54)  AC_PREREQ(2.54)
 #snapshots have numbers major.minor.release-YYYYMMDD  #snapshots have numbers major.minor.release-YYYYMMDD
 #note that lexicographic ordering must be heeded.  #note that lexicographic ordering must be heeded.
 #I.e., 0.4.1-YYYYMMDD must not exist before 0.4.1!  #I.e., 0.4.1-YYYYMMDD must not exist before 0.4.1!
 UPDATED="September 10, 2003"  UPDATED="April 09, 2006"
 AC_SUBST(UPDATED)  AC_SUBST(UPDATED)
 AC_CONFIG_HEADERS(engine/config.h)  AC_CONFIG_HEADERS(engine/config.h)
   
Line 53  AC_ARG_ENABLE(force-ll, Line 53  AC_ARG_ENABLE(force-ll,
 test "$enable_force_ll" = "no"||  test "$enable_force_ll" = "no"||
   AC_DEFINE(FORCE_LL,,[Define if you want to use explicit long long declarations for better performance (does not work with all GCC versions on all machines)])    AC_DEFINE(FORCE_LL,,[Define if you want to use explicit long long declarations for better performance (does not work with all GCC versions on all machines)])
   
 AC_ARG_ENABLE(gcc-pr15242-workaround,  
               AC_HELP_STRING([--disable-gcc-pr15242-workaround],[Disables  
                              dynamic code generation on some versions of gcc  
                              (slowdown~2 on Athlon) and causes slower building  
                              of gforth (but gforth speedups) on others.  
                              (default enabled)]),  
                 ,enable_gcc_pr15242_workaround=yes)  
 test "$enable_gcc_pr15242_workaround" = "no"||  
 AC_DEFINE(GCC_PR15242_WORKAROUND,,[Define if you want to get dynamic code  
 generation on gccs affected by PR15242])  
   
 AC_ARG_ENABLE(force-cdiv,  AC_ARG_ENABLE(force-cdiv,
         AC_HELP_STRING([--enable-force-cdiv],          AC_HELP_STRING([--enable-force-cdiv],
                        [  Use the native C division - symmetric - instead of                         [  Use the native C division - symmetric - instead of
Line 97  dnl   --without-peephole disables peepho Line 86  dnl   --without-peephole disables peepho
 dnl                     but slower images.],  dnl                     but slower images.],
 dnl PEEPHOLE="$withval")  dnl PEEPHOLE="$withval")
   
   AC_ARG_ENABLE(ec,
           AC_HELP_STRING([--enable-ec],
                           [  Build gforth for systems without OS.]),
           ,enable_ec=no)
   if test "$enable_ec" = "yes"; then
     echo "defining standalone system"
     AC_DEFINE(STANDALONE,,[Define if you want a Gforth without OS])
     EC_MODE="true"
     EC="-ec"
     engine2=""
     engine_fast2=""
     no_dynamic="-DNO_DYNAMIC"
     image_i="image.i"
     signals_o=""
   else
     echo "defining hosted system"
     EC_MODE="false"
     EC=""
     engine2="engine2.o"
     engine_fast2="engine-fast2.o"
     no_dynamic=""
     image_i=""
     signals_o="signals.o"
   fi
   
 #variables mentioned in INSTALL  #variables mentioned in INSTALL
 AC_ARG_VAR(CC, [The C compiler (must support GNU C 2.x); gcc-2.95 recommended.])  AC_ARG_VAR(CC, [The C compiler (must support GNU C 2.x); gcc-2.95 recommended.])
 AC_ARG_VAR(FORTHSIZES, [Gforth command line options for the default stack and dictionary sizes (see INSTALL).])  AC_ARG_VAR(FORTHSIZES, [Gforth command line options for the default stack and dictionary sizes (see INSTALL).])
 AC_ARG_VAR(STACK_CACHE_DEFAULT_FAST, [number of registers in the default stack cache state for gforth-fast and gforth-native (default 1).])  AC_ARG_VAR(STACK_CACHE_DEFAULT_FAST, [number of registers in the default stack cache state for gforth-fast and gforth-native (default 1).])
   AC_ARG_VAR(GCC_PR15242_WORKAROUND, [Force the enabling (1) or disabling (0) of a workaround for a gcc-3.x performance bug (default unset: use workaround for gcc-3.x)])
   
 AC_ARG_VAR(ac_cv_sizeof_char_p, [sizeof(char *)])  AC_ARG_VAR(ac_cv_sizeof_char_p, [sizeof(char *)])
 AC_ARG_VAR(ac_cv_sizeof_char, [sizeof(char)])  AC_ARG_VAR(ac_cv_sizeof_char, [sizeof(char)])
 AC_ARG_VAR(ac_cv_sizeof_short, [sizeof(short)])  AC_ARG_VAR(ac_cv_sizeof_short, [sizeof(short)])
Line 112  AC_ARG_VAR(ac_cv_sizeof_int128_t, [sizeo Line 128  AC_ARG_VAR(ac_cv_sizeof_int128_t, [sizeo
 AC_ARG_VAR(ac_cv_sizeof_uint128_t, [sizeof(uint128_t)])  AC_ARG_VAR(ac_cv_sizeof_uint128_t, [sizeof(uint128_t)])
 AC_ARG_VAR(ac_cv_c_bigendian, [Is the target big-endian ("yes" or "no")?])  AC_ARG_VAR(ac_cv_c_bigendian, [Is the target big-endian ("yes" or "no")?])
 AC_ARG_VAR(no_dynamic_default, [run gforth with --dynamic (0) or --no-dynamic (1) by default])  AC_ARG_VAR(no_dynamic_default, [run gforth with --dynamic (0) or --no-dynamic (1) by default])
 AC_ARG_VAR(skip_code, [assembly code for skipping 16 bytes of code])  AC_ARG_VAR(skipcode, [assembly code for skipping 16 bytes of code])
   AC_ARG_VAR(asmcomment, [assembler comment start string])
   AC_ARG_VAR(arm_cacheflush, [file containing ARM cacheflush function (without .c)])
   
 #set up feature test macros, so the tests get them right:  #set up feature test macros, so the tests get them right:
 # turn on all POSIX, SUSv3, and GNU features if available  # turn on all POSIX, SUSv3, and GNU features if available
Line 139  test "$GCC" = "yes" || AC_MSG_ERROR(Gfor Line 157  test "$GCC" = "yes" || AC_MSG_ERROR(Gfor
   
 AC_SUBST(CC)  AC_SUBST(CC)
 AC_SUBST(DEBUGFLAG)  AC_SUBST(DEBUGFLAG)
   AC_SUBST(EC)
   AC_SUBST(EC_MODE)
   AC_SUBST(engine2)
   AC_SUBST(engine_fast2)
   AC_SUBST(no_dynamic)
   AC_SUBST(image_i)
   AC_SUBST(signals_o)
   
   #this is used to disable some (not generally essential) part of the
   #Makefile that some makes don't grok.  It would be better to test for
   #this specific Makefile feature than the make version.
 AC_MSG_CHECKING(make type)  AC_MSG_CHECKING(make type)
 make_type=`make -v 2>&1|grep 'ake version'|sed 's/ version .*//'`  make_type=`make -n -v 2>&1|grep 'ake'|sed 's/ake .*/ake/'`
   
 GNUMAKE='#'  GNUMAKE='#'
 test "$make_type" = "GNU Make" && GNUMAKE=''  test "$make_type" = "GNU Make" && GNUMAKE=''
   
 AC_MSG_RESULT($make_type)  AC_MSG_RESULT($make_type)
   
 AC_SUBST(GNUMAKE)  AC_SUBST(GNUMAKE)
   
 AC_MSG_CHECKING([whether the linker accepts -export-dynamic])  AC_MSG_CHECKING([whether the linker accepts -export-dynamic])
Line 166  case "$host_cpu" in Line 191  case "$host_cpu" in
         arm*)          arm*)
                 machine=arm                  machine=arm
                 CFLAGS="$CFLAGS -fomit-frame-pointer"                  CFLAGS="$CFLAGS -fomit-frame-pointer"
                 if test -z $no_dynamic_default; then                  if test -z $arm_cacheflush; then
                     no_dynamic_default=1                      no_dynamic_default=1
                       arm_cacheflush=arch/arm/cacheflush0
                     AC_MSG_WARN([No I-cache flush code known, disabling dynamic native code generation])                      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)
                   #longer skipcodes lead to problems on ARM, and it uses
                   #only 4-byte alignment anyway
                   test "$skipcode" || skipcode="nop"
                 ;;                  ;;
         hppa*)          hppa*)
                 machine=hppa                  machine=hppa
Line 245  case "$host_cpu" in Line 276  case "$host_cpu" in
                 $srcdir/mkinstalldirs arch/power                  $srcdir/mkinstalldirs arch/power
                 AC_CHECK_FUNC(_sync_cache_range,[true],[AC_LIBOBJ(../arch/power/_sync_cache_range)])                  AC_CHECK_FUNC(_sync_cache_range,[true],[AC_LIBOBJ(../arch/power/_sync_cache_range)])
                 #long long is broken on (at least) gcc-2.95.* for PPC                  #long long is broken on (at least) gcc-2.95.* for PPC
                 test x$ac_cv_sizeof_long_long = x && ac_cv_sizeof_long_long=0                  test x$ac_cv_sizeof_long_long = x && 
                   ($CC -v 2>&1 |grep -q 'gcc version 2.95') &&
                   ac_cv_sizeof_long_long=0
                 ;;                  ;;
         *)          *)
                 AC_MSG_WARN([Using a generic machine description])                  AC_MSG_WARN([Using a generic machine description])
Line 264  test x$STACK_CACHE_DEFAULT_FAST = x && S Line 297  test x$STACK_CACHE_DEFAULT_FAST = x && S
 AC_DEFINE_UNQUOTED(STACK_CACHE_DEFAULT_FAST, $STACK_CACHE_DEFAULT_FAST,  AC_DEFINE_UNQUOTED(STACK_CACHE_DEFAULT_FAST, $STACK_CACHE_DEFAULT_FAST,
                    [number of registers in the default stack cache state for gforth-fast and gforth-native])                     [number of registers in the default stack cache state for gforth-fast and gforth-native])
   
   test x$GCC_PR15242_WORKAROUND = x ||
   AC_DEFINE_UNQUOTED(GCC_PR15242_WORKAROUND, $GCC_PR15242_WORKAROUND,
                      [force (1) or forbid (0) use of a workaround for a gcc performance bug])
   
   dnl AC_DEFINE(GCC_PR15242_WORKAROUND,,[Define if you want to get dynamic code
   dnl generation on gccs affected by PR15242])
   
   
 if test "${enable_force_ll+set}" = set; then  if test "${enable_force_ll+set}" = set; then
    ac_includes_default="$ac_includes_default     ac_includes_default="$ac_includes_default
 #include \"arch/generic/128bit.h\""  #include \"arch/generic/128bit.h\""
Line 320  esac Line 361  esac
 AC_MSG_RESULT($ac_cv_int_type_cell)  AC_MSG_RESULT($ac_cv_int_type_cell)
 AC_DEFINE_UNQUOTED(CELL_TYPE,$ac_cv_int_type_cell,[an integer type that is as long as a pointer])  AC_DEFINE_UNQUOTED(CELL_TYPE,$ac_cv_int_type_cell,[an integer type that is as long as a pointer])
   
   AC_MSG_CHECKING([for a C type for wydes])
   ac_cv_wyde_type_cell=none
   case 2 in
     $ac_cv_sizeof_int)
       ac_cv_wyde_type_cell=int
       ;;
     $ac_cv_sizeof_short)
       ac_cv_wyde_type_cell=short
       ;;
     $ac_cv_sizeof_char)
       ac_cv_wyde_type_cell=char
       ;;
     $ac_cv_sizeof_long)
       ac_cv_wyde_type_cell=long
       ;;
     $ac_cv_sizeof_long_long)
       ac_cv_wyde_type_cell="long long"
       ;;
     $ac_cv_sizeof_intptr_t)
       ac_cv_wyde_type_cell="intptr_t"
       ;;
     $ac_cv_sizeof_int128_t)
       ac_cv_wyde_type_cell="int128_t"
       ;;
   esac
   AC_MSG_RESULT($ac_cv_wyde_type_cell)
   AC_DEFINE_UNQUOTED(WYDE_TYPE,$ac_cv_wyde_type_cell,[an integer type that is 2 bytes long])
   
   AC_MSG_CHECKING([for a C type for tetrabytes])
   ac_cv_tetrabyte_type_cell=none
   case 4 in
     $ac_cv_sizeof_int)
       ac_cv_tetrabyte_type_cell=int
       ;;
     $ac_cv_sizeof_short)
       ac_cv_tetrabyte_type_cell=short
       ;;
     $ac_cv_sizeof_char)
       ac_cv_tetrabyte_type_cell=char
       ;;
     $ac_cv_sizeof_long)
       ac_cv_tetrabyte_type_cell=long
       ;;
     $ac_cv_sizeof_long_long)
       ac_cv_tetrabyte_type_cell="long long"
       ;;
     $ac_cv_sizeof_intptr_t)
       ac_cv_tetrabyte_type_cell="intptr_t"
       ;;
     $ac_cv_sizeof_int128_t)
       ac_cv_tetrabyte_type_cell="int128_t"
       ;;
   esac
   AC_MSG_RESULT($ac_cv_tetrabyte_type_cell)
   AC_DEFINE_UNQUOTED(TETRABYTE_TYPE,$ac_cv_tetrabyte_type_cell,[an integer type that is 4 bytes long])
   
 AC_MSG_CHECKING([for a C type for double-cells])  AC_MSG_CHECKING([for a C type for double-cells])
 ac_cv_int_type_double_cell=none  ac_cv_int_type_double_cell=none
 case `expr 2 '*' "$ac_cv_sizeof_char_p"` in  case `expr 2 '*' "$ac_cv_sizeof_char_p"` in
Line 436  AC_SUBST(disasm_fs) Line 533  AC_SUBST(disasm_fs)
 AC_PATH_PROG(INSTALL_INFO,install-info,[echo '>>>>Please make info dir entry:'],$PATH:/sbin:/usr/sbin:/usr/local/sbin)  AC_PATH_PROG(INSTALL_INFO,install-info,[echo '>>>>Please make info dir entry:'],$PATH:/sbin:/usr/sbin:/usr/local/sbin)
   
 case "$host_os" in  case "$host_os" in
         *win32|cygwin)          *win32*)
                   # !!!FIXME!!! problems with cygwin and ';' as path separator
                 DIRSEP="\\\\"                  DIRSEP="\\\\"
                 PATHSEP=";"                  PATHSEP=";"
                 #we want the builtins of command.com/cmd.exe and its                  #we want the builtins of command.com/cmd.exe and its
Line 467  AC_DEFINE_UNQUOTED(PATHSEP,'$PATHSEP',[a Line 565  AC_DEFINE_UNQUOTED(PATHSEP,'$PATHSEP',[a
 AC_SUBST(DEFAULTSYSTEMPREFIX)  AC_SUBST(DEFAULTSYSTEMPREFIX)
 AC_DEFINE_UNQUOTED(DEFAULTSYSTEMPREFIX,"$DEFAULTSYSTEMPREFIX",[default for environment variable GFORTHSYSTEMPREFIX])  AC_DEFINE_UNQUOTED(DEFAULTSYSTEMPREFIX,"$DEFAULTSYSTEMPREFIX",[default for environment variable GFORTHSYSTEMPREFIX])
   
   #work around SELinux brain damage (from Andrew Haley <12t8f3jakb74g2c@news.supernews.com>)
   #This magic incantation  seems to be completely undocumented.
   AC_CHECK_PROG([MASSAGE_EXE],[chcon],[chcon -t unconfined_execmem_exec_t],[true])
   
 dnl Now a little support for DOS/DJGCC  dnl Now a little support for DOS/DJGCC
 AC_SUBST(GFORTH_EXE)  AC_SUBST(GFORTH_EXE)
 GFORTH_EXE=""  GFORTH_EXE=""
Line 513  else Line 615  else
 fi  fi
   
 #check how to do asm(".skip 16")  #check how to do asm(".skip 16")
 echo "CFLAGS=$CFLAGS"  #echo "CFLAGS=$CFLAGS"
 echo "ac_link=$ac_link"  #echo "ac_link=$ac_link"
 AC_MSG_CHECKING([if and how we can waste code space])  AC_MSG_CHECKING([if and how we can waste code space])
 if test -z "$skipcode"; then  if test -z "$skipcode"; then
     skipcode=no      skipcode=no
Line 559  else Line 661  else
     AC_DEFINE_UNQUOTED(SKIP16,asm("$skipcode"),statement for skipping 16 bytes)      AC_DEFINE_UNQUOTED(SKIP16,asm("$skipcode"),statement for skipping 16 bytes)
 fi  fi
   
   AC_MSG_CHECKING([if and how we can do comments in asm statements])
   #the point here is to get asm statements that look different to
   #gcc's "optimizer"
   if test -z "$asmcomment"; then
       asmcomment=no
       CFLAGS_1="$CFLAGS"
       CFLAGS="$CFLAGS $ENGINE_FLAGS"
       for i in '"# "' '"! "' '"; "'; do
           AC_TRY_COMPILE(,[asm($i"fluffystunk");],asmcomment=$i; break,)
       done
       CFLAGS=$CFLAGS_1
   fi
   AC_MSG_RESULT($asmcomment)
   if test "$asmcomment" != no
   then 
       AC_DEFINE_UNQUOTED(ASMCOMMENT,$asmcomment,[assembler comment start string])
   fi
   
 test "$no_dynamic_default" || no_dynamic_default=0  test "$no_dynamic_default" || no_dynamic_default=0
 AC_DEFINE_UNQUOTED(NO_DYNAMIC_DEFAULT,$no_dynamic_default,default value for no_dynamic)  AC_DEFINE_UNQUOTED(NO_DYNAMIC_DEFAULT,$no_dynamic_default,default value for no_dynamic)
   
 dnl Checks for programs.  dnl Checks for programs.
 AC_PROG_LN_S  AC_PROG_LN_S
 AC_PROG_INSTALL  AC_PROG_INSTALL
   AC_CHECK_PROGS(TEXI2DVI,texi2dvi4a2ps texi2dvi)
   
 dnl Checks for library functions  dnl Checks for library functions
 dnl This check is just for making later checks link with libm.  dnl This check is just for making later checks link with libm.
Line 616  AC_CHECK_FUNCS(mmap sysconf getpagesize) Line 737  AC_CHECK_FUNCS(mmap sysconf getpagesize)
 AM_PATH_LISPDIR  AM_PATH_LISPDIR
   
 kernel_fi=kernl${wordsize}${bytesex}.fi  kernel_fi=kernl${wordsize}${bytesex}.fi
   include_fi=kernl${wordsize}${bytesex}${EC}.fi
 AC_SUBST(kernel_fi)  AC_SUBST(kernel_fi)
   AC_SUBST(include_fi)
   
 #this breaks bindists  #this breaks bindists
 #dnl replace srource directory by absolute value  #dnl replace srource directory by absolute value
Line 630  Makedist Line 753  Makedist
 gforthmi  gforthmi
 vmgen  vmgen
 machpc.fs  machpc.fs
   envos.fs
 engine/Makefile  engine/Makefile
 doc/version.texi ])  doc/version.texi
   build-ec ])
 AC_CONFIG_COMMANDS([stamp-h],[[echo timestamp > stamp-h  AC_CONFIG_COMMANDS([stamp-h],[[echo timestamp > stamp-h
 chmod +x gforthmi  chmod +x gforthmi
 chmod +x vmgen  chmod +x vmgen
   chmod +x build-ec
 test -d kernel||mkdir kernel]],[[]])  test -d kernel||mkdir kernel]],[[]])
 AC_OUTPUT  AC_OUTPUT
   

Removed from v.1.152  
changed lines
  Added in v.1.181


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>