Check corner cases on F2I, F2L, D2I and D2L. We don't need -ieee anymore.
[cacao.git] / configure.in
index f573989efde3ba0d4bdb4cd6a7941456d897e4c0..e7e3cf926abfe9bd5d26bc7a59a27d2cbcc942f5 100644 (file)
@@ -15,9 +15,8 @@ ASMPART="asmpart.S"
 case "$host_cpu" in
 alpha* )
        SYSDEP_DIR="alpha"
-       CFLAGS="-ieee -O2 -g3"
-       COMPILER_OBJECTS="compiler.$(OBJEXT)"
-       AC_DEFINE(OLD_COMPILER)
+       CFLAGS="-mieee -O0 -g3 -D__ALPHA__"
+       COMPILER_OBJECTS=""
        AC_DEFINE(TRACE_ARGS_NUM, 6)
        AC_DEFINE(USE_CODEMMAP)
        ;;
@@ -25,7 +24,7 @@ alpha* )
 mips* )
        SYSDEP_DIR="mips"
        ASMPART="asmpart.s"
-        CFLAGS="-64 -g -DMAP_ANONYMOUS=0 -woff 1048,1110,1164,1515"
+        CFLAGS="-64 -O2 -OPT:Olimit=0 -g -DMAP_ANONYMOUS=0 -woff 1110,1164,1515 -D__MIPS__"
        LIBS="-lelfutil"
        COMPILER_OBJECTS=""
        AC_DEFINE(TRACE_ARGS_NUM, 8)
@@ -35,13 +34,28 @@ i386* | i486* | i586* | i686* )
        SYSDEP_DIR="i386"
        CFLAGS="-O0 -g3 -D__I386__"
        COMPILER_OBJECTS="i386/libdisass.a"
+       AC_DEFINE(TRACE_ARGS_NUM, 8)
+       AC_DEFINE(USE_CODEMMAP)
+       ;;
+
+x86_64* )
+       SYSDEP_DIR="x86_64"
+       CFLAGS="-O0 -g3 -D__X86_64__"
+       COMPILER_OBJECTS="x86_64/libdisass.a"
        AC_DEFINE(TRACE_ARGS_NUM, 6)
        AC_DEFINE(USE_CODEMMAP)
        ;;
 
-sparc* | powerpc* | ppc* | * )
-       AC_MSG_ERROR($host-cpu systems are not supported at this time) ;;
+powerpc* | ppc* )
+       SYSDEP_DIR="powerpc"
+       CFLAGS="-O2 -g -DMAP_ANONYMOUS=0 -no-cpp-precomp"
+       COMPILER_OBJECTS="powerpc/libdisass.a"
+       AC_DEFINE(TRACE_ARGS_NUM, 8)
+       ;;
 
+sparc* | * )
+       AC_MSG_ERROR($host_cpu systems are not supported at this time)
+        ;;
 esac
 
 AC_SUBST(COMPILER_OBJECTS)
@@ -61,7 +75,10 @@ AC_CHECK_LIB(m, sin)
 dnl Checks for header files.
 AC_HEADER_DIRENT
 AC_HEADER_STDC
-AC_CHECK_HEADERS(fcntl.h sys/time.h unistd.h)
+AC_CHECK_HEADERS([fcntl.h])
+AC_CHECK_HEADERS([sys/time.h])
+AC_CHECK_HEADERS([unistd.h])
+AC_CHECK_HEADERS([sys/ioctl.h])
 
 dnl Checks for typedefs, structures, and compiler characteristics.
 AC_C_CONST
@@ -114,7 +131,6 @@ dnl Features
 
 dnl check arguments
 AC_ARG_ENABLE(threads, [  --enable-threads        enable threads support])
-AC_ARG_WITH(gc, [  --with-gc[=ARG]         use garbage collector [gc2,gc1,boehm]])
 
 dnl threads
 AC_MSG_CHECKING(whether to include threads support)
@@ -133,44 +149,22 @@ else
        AC_SUBST(THREAD_OBJ)
 fi
 
-dnl garbage collector version
-AC_MSG_CHECKING(which garbage collector to use)
-case "$with_gc" in
-boehm )
-       AC_MSG_RESULT(Boehm garbage collector)
-       GC_OBJ="mm/libboehm.a libgc.a"
-       if test ! -e libgc.a; then
-               AC_MSG_ERROR([libgc.a not found, see README.boehm])
-       fi
-       AC_DEFINE(USE_BOEHM)
-       BOEHM_LIB=libboehm.a
-       ;;
-gc1 )
-       AC_MSG_RESULT(old garbage collector)
-       GC_OBJ="mm/libmm_old.a"
-       ;;
-gc2 | "" )
-       AC_MSG_RESULT(new garbage collector)
-       GC_OBJ="mm/libmm_new.a"
-       ;;
-* )
-       AC_MSG_ERROR(Invalid GC)
-       ;;
-esac
-AC_SUBST(GC_OBJ)
-AC_SUBST(BOEHM_LIB)
+dnl now configure boehm gc
+AC_CONFIG_SUBDIRS(mm/boehm-gc)
 
 AC_OUTPUT(Makefile \
-         toolbox/Makefile \
           mm/Makefile \
+         toolbox/Makefile \
          threads/Makefile \
          jit/Makefile \
           alpha/Makefile \
           mips/Makefile \
           i386/Makefile \
+          x86_64/Makefile \
+          powerpc/Makefile \
           nat/Makefile \
           doc/Makefile \
-          comp/Makefile \
          narray/Makefile \
          tst/Makefile \
+         tst/kaffe/Makefile \
          jvmtst/Makefile )