strtoumax: fix typo in previous commit.
[gnulib.git] / m4 / pty_h.m4
index 3b6d910..32b1c75 100644 (file)
@@ -1,19 +1,17 @@
-# pty_h.m4 serial 2
-dnl Copyright (C) 2009, 2010 Free Software Foundation, Inc.
+# pty_h.m4 serial 10
+dnl Copyright (C) 2009-2013 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
 
-# gl_PTY
-# ------
-# Make sure that pty.h provides forkpty, or sets up a replacement header.
-# Also define automake variable PTY_LIB to the library needed (if any).
-AC_DEFUN_ONCE([gl_PTY],
+# gl_PTY_H
+# --------
+# Set up the GNU-like <pty.h> replacement header.
+AC_DEFUN_ONCE([gl_PTY_H],
 [
   AC_REQUIRE([gl_PTY_H_DEFAULTS])
 
-  PTY_LIB=''
-  # First make sure that pty.h provides forkpty, or setup the replacement.
+  # Make sure that pty.h provides forkpty, or setup the replacement.
   AC_CHECK_HEADERS_ONCE([pty.h])
   if test $ac_cv_header_pty_h != yes; then
     HAVE_PTY_H=0
@@ -24,17 +22,6 @@ AC_DEFUN_ONCE([gl_PTY],
     if test $ac_cv_header_libutil_h = yes; then
       HAVE_LIBUTIL_H=1
     fi
-    AC_CHECK_DECLS([forkpty],,, [[
-#if HAVE_UTIL_H
-# include <util.h>
-#endif
-#if HAVE_LIBUTIL_H
-# include <libutil.h>
-#endif
-]])
-    if test $ac_cv_have_decl_forkpty = no; then
-      AC_MSG_WARN([[Cannot find forkpty, build will likely fail]])
-    fi
   else # Have <pty.h>, assume forkpty is declared there.
     HAVE_PTY_H=1
   fi
@@ -42,18 +29,11 @@ AC_DEFUN_ONCE([gl_PTY],
   dnl <pty.h> is always overridden, because of GNULIB_POSIXCHECK.
   gl_CHECK_NEXT_HEADERS([pty.h])
 
-  # Second check for the library required for forkpty.
-  save_LIBS="$LIBS"
-  AC_SEARCH_LIBS([forkpty], [util],
-    [if test "$ac_cv_search_forkpty" != "none required"; then
-       PTY_LIB="$ac_cv_search_forkpty"
-     fi])
-  LIBS="$save_LIBS"
-  AC_SUBST([PTY_LIB])
-
   dnl Check for declarations of anything we want to poison if the
   dnl corresponding gnulib module is not in use.
   gl_WARN_ON_USE_PREPARE([[
+/* <sys/types.h> is a prerequisite of <libutil.h> on FreeBSD 8.0.  */
+#include <sys/types.h>
 #if HAVE_PTY_H
 # include <pty.h>
 #endif
@@ -70,12 +50,20 @@ AC_DEFUN([gl_PTY_MODULE_INDICATOR],
 [
   dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
   AC_REQUIRE([gl_PTY_H_DEFAULTS])
-  GNULIB_[]m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./-],[ABCDEFGHIJKLMNOPQRSTUVWXYZ___])=1
+  gl_MODULE_INDICATOR_SET_VARIABLE([$1])
+  dnl Define it also as a C macro, for the benefit of the unit tests.
+  gl_MODULE_INDICATOR_FOR_TESTS([$1])
 ])
 
 AC_DEFUN([gl_PTY_H_DEFAULTS],
 [
+  GNULIB_FORKPTY=0;     AC_SUBST([GNULIB_FORKPTY])
+  GNULIB_OPENPTY=0;     AC_SUBST([GNULIB_OPENPTY])
   dnl Assume proper GNU behavior unless another module says otherwise.
   HAVE_UTIL_H=0;        AC_SUBST([HAVE_UTIL_H])
   HAVE_LIBUTIL_H=0;     AC_SUBST([HAVE_LIBUTIL_H])
+  HAVE_FORKPTY=1;       AC_SUBST([HAVE_FORKPTY])
+  HAVE_OPENPTY=1;       AC_SUBST([HAVE_OPENPTY])
+  REPLACE_FORKPTY=0;    AC_SUBST([REPLACE_FORKPTY])
+  REPLACE_OPENPTY=0;    AC_SUBST([REPLACE_OPENPTY])
 ])