diff --git a/src/acconfig.h b/src/acconfig.h
index 4dc9b322aa1602e0048bdabc2e3de7f15c8573eb..352573a9db7fc032da549461d60682392b5b45a4 100644
--- a/src/acconfig.h
+++ b/src/acconfig.h
@@ -1,5 +1,5 @@
 /*
- * $Id: acconfig.h,v 1.51 1999/11/23 07:06:59 hubbe Exp $
+ * $Id: acconfig.h,v 1.52 1999/12/05 16:34:07 mirar Exp $
  */
 #ifndef MACHINE_H
 #define MACHINE_H
@@ -87,6 +87,12 @@
 /* define this if igonoring SIGFPE helps with core dumps */
 #undef IGNORE_SIGFPE
 
+/* define if you want to use double precision floats instead of single */
+#undef WITH_DOUBLE_PRECISION_SVALUE
+
+/* define if you want to use long double precision floats */
+#undef WITH_LONG_DOUBLE_PRECISION_SVALUE
+
 /* If using the C implementation of alloca, define if you know the
  * direction of stack growth for your system; otherwise it will be
  * automatically deduced at run-time.
diff --git a/src/configure.in b/src/configure.in
index 88ef7e967b497df4ddd8a936990021e144f6c9a1..691aef5cb2d13367dcd8c9214f646939e1ef89e6 100644
--- a/src/configure.in
+++ b/src/configure.in
@@ -1,4 +1,4 @@
-AC_REVISION("$Id: configure.in,v 1.335 1999/11/29 22:27:54 grubba Exp $")
+AC_REVISION("$Id: configure.in,v 1.336 1999/12/05 16:34:06 mirar Exp $")
 AC_INIT(interpret.c)
 AC_CONFIG_HEADER(machine.h)
 
@@ -417,6 +417,10 @@ AC_ARG_WITH(dynamic_modules,   [  --without-dynamic-modules        link modules
 AC_ARG_WITH(static_linking,    [  --with-static-linking            link statically, if possible],[with_static_linking=yes],[])
 AC_ARG_WITH(include-path,[  --with-include-path    A list of paths to search for include files.])
 AC_ARG_WITH(lib-path,    [  --with-lib-path        A list of paths to search for libraries.])
+
+AC_ARG_WITH(double-precision,  [  --with-double-precision          use double precision floats ], [ AC_DEFINE(WITH_DOUBLE_PRECISION_SVALUE) ] )
+AC_ARG_WITH(long-double-precision,  [  --with-long-double-precision          use long double precision floats ], [ AC_DEFINE(WITH_LONG_DOUBLE_PRECISION_SVALUE) ] )
+
 AC_ARG_WITH(gdbm,        [  --without-gdbm         no GNU database manager support ])
 AC_ARG_WITH(gmp,         [  --without-gmp          no Support bignums])
 AC_ARG_WITH(debug,       [  --without-debug        disable run debugging],[],[with_debug=])
diff --git a/src/global.h b/src/global.h
index 54a30297380b05fc2dfeedf2ae407e82c4a737ff..c7e77753617ed33ce51094e098b165eaaf8de156 100644
--- a/src/global.h
+++ b/src/global.h
@@ -5,7 +5,7 @@
 \*/
 
 /*
- * $Id: global.h,v 1.39 1999/11/23 07:07:03 hubbe Exp $
+ * $Id: global.h,v 1.40 1999/12/05 16:34:09 mirar Exp $
  */
 #ifndef GLOBAL_H
 #define GLOBAL_H
@@ -193,7 +193,16 @@ char *alloca ();
 #define TYPE_T unsigned INT8
 #define TYPE_FIELD unsigned INT16
 
+#ifndef WITH_DOUBLE_PRECISION_SVALUE
 #define FLOAT_TYPE float
+#else
+#ifdef WITH_LONG_DOUBLE_PRECISION_SVALUE
+#define FLOAT_TYPE long double
+#else
+#define FLOAT_TYPE double
+#endif /* long double */
+#endif /* double */
+
 #define INT_TYPE INT32
 
 #define B1_T char