diff --git a/acconfig.h b/acconfig.h
index 2f954a81019cdd3503670effe651dcf81fcf028c..8e358385ec134eb9f33392ceecdd1331d2cf33bc 100644
--- a/acconfig.h
+++ b/acconfig.h
@@ -36,6 +36,9 @@
 /* Define if C compiler supports long long types */
 #undef HAVE_LONG_LONG
 
+/* Define if fcntl.h defines O_BINARY */
+#undef HAVE_O_BINARY
+
 /* Define if C Symbols have a leading underscore added by the compiler */
 #undef LEADING_UNDERSCORE
 
diff --git a/aclocal.m4 b/aclocal.m4
index 8ac66dff1c541c68b70e10ebcafbfc2cb83a156c..af28baab8b5e11c79bda43d775d9a9fd7944eb8a 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -1,4 +1,4 @@
-dnl $Id: aclocal.m4,v 1.25 1998/08/14 15:24:10 simonm Exp $
+dnl $Id: aclocal.m4,v 1.26 1998/08/16 16:25:21 sof Exp $
 dnl 
 dnl Extra autoconf macros for the Glasgow fptools
 dnl
@@ -396,3 +396,25 @@ if test "$fptools_cv_have_long_long" = yes; then
 AC_DEFINE(HAVE_LONG_LONG)
 fi
 ])
+
+dnl *** Can we open files in binary mode? ***
+dnl 
+AC_DEFUN(FPTOOLS_O_BINARY,
+[
+AC_REQUIRE([AC_PROG_CC])
+AC_MSG_CHECKING(whether we can open files in binary mode)
+AC_CACHE_VAL(fptools_cv_have_o_binary,
+[
+AC_LANG_SAVE
+AC_LANG_C
+AC_TRY_COMPILE(,[#include <fcntl.h>
+x = O_BINARY;],
+fptools_cv_have_o_binary=yes,
+fptools_cv_have_o_binary=no)
+AC_LANG_RESTORE
+])
+AC_MSG_RESULT($fptools_cv_have_o_binary)
+if test "$fptools_cv_have_o_binary" = yes; then
+AC_DEFINE(HAVE_O_BINARY)
+fi
+])
diff --git a/mk/config.h.in b/mk/config.h.in
index 5a440e7bf726a1d4514eb42acfe6a0b8f9e77cb4..f993d5461cef755a5dbf5ae4b0149b51b2d6f275 100644
--- a/mk/config.h.in
+++ b/mk/config.h.in
@@ -84,6 +84,9 @@
 /* Define if C compiler supports long long types */
 #undef HAVE_LONG_LONG
 
+/* Define if fcntl.h defines O_BINARY */
+#undef HAVE_O_BINARY
+
 /* Define if C Symbols have a leading underscore added by the compiler */
 #undef LEADING_UNDERSCORE