- AC_REQUIRE([AC_CANONICAL_HOST])
- AC_CHECK_HEADERS_ONCE([unistd.h])
- AC_CACHE_CHECK([whether dup supports bad arguments], [gl_cv_func_dup_works],
- [AC_RUN_IFELSE(
- [AC_LANG_PROGRAM([[
-#if HAVE_UNISTD_H
-# include <unistd.h>
-#else
-# include <io.h>
-#endif
-#include <errno.h>
-]],
- [[if (dup (-1) != -1)
- return 1;
- if (errno != EBADF)
- return 2;
- return 0;
- ]])],
- [gl_cv_func_dup_works=yes],
- [gl_cv_func_dup_works=no],
- [case "$host_os" in
- mingw*) gl_cv_func_dup_works="guessing no" ;;
- *) gl_cv_func_dup_works="guessing yes" ;;
- esac
- ])
- ])
- case "$gl_cv_func_dup_works" in
- *no) REPLACE_DUP=1 ;;
- esac