2 dnl Copyright (C) 2010 Free Software Foundation, Inc.
3 dnl This file is free software; the Free Software Foundation
4 dnl gives unlimited permission to copy and/or distribute it,
5 dnl with or without modifications, as long as this notice is preserved.
9 # Define automake variable PTY_LIB to the library needed (if any).
10 AC_DEFUN([gl_PTY_LIB],
12 # Check for the library required for forkpty.
15 AC_SEARCH_LIBS([forkpty], [util],
16 [if test "$ac_cv_search_forkpty" != "none required"; then
17 PTY_LIB="$ac_cv_search_forkpty"
23 AC_DEFUN([gl_FUNC_FORKPTY],
25 AC_REQUIRE([gl_PTY_LIB])
26 AC_REQUIRE([gl_PTY_H])
28 dnl We assume that forkpty exists (possibly in libc, possibly in libutil)
29 dnl if and only if it is declared.
30 AC_CHECK_DECLS([forkpty],,, [[
41 if test $ac_cv_have_decl_forkpty = yes; then
42 dnl The system has forkpty.
43 dnl Prefer glibc's const-safe prototype, if available.
44 AC_CACHE_CHECK([for const-safe forkpty signature],
45 [gl_cv_func_forkpty_const],
58 int forkpty (int *, char *, struct termios const *,
59 struct winsize const *);
62 [gl_cv_func_forkpty_const=yes], [gl_cv_func_forkpty_const=no])
64 if test $gl_cv_func_forkpty_const != yes; then
69 dnl The system does not have forkpty.
75 AC_DEFUN([gl_FUNC_OPENPTY],
77 AC_REQUIRE([gl_PTY_LIB])
78 AC_REQUIRE([gl_PTY_H])
80 dnl Persuade Solaris <stdlib.h> to declare posix_openpt().
81 AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS])
83 dnl We assume that openpty exists (possibly in libc, possibly in libutil)
84 dnl if and only if it is declared.
85 AC_CHECK_DECLS([openpty],,, [[
96 if test $ac_cv_have_decl_openpty = yes; then
97 dnl The system has openpty.
98 dnl Prefer glibc's const-safe prototype, if available.
99 AC_CACHE_CHECK([for const-safe openpty signature],
100 [gl_cv_func_openpty_const],
110 # include <libutil.h>
113 int openpty (int *, int *, char *, struct termios const *,
114 struct winsize const *);
117 [gl_cv_func_openpty_const=yes], [gl_cv_func_openpty_const=no])
119 if test $gl_cv_func_openpty_const != yes; then
122 AC_DEFINE([HAVE_OPENPTY], [1],
123 [Define to 1 if the system has the 'openpty' function.])
126 dnl The system does not have openpty.
129 AC_CHECK_FUNCS([_getpty posix_openpt])
133 AC_DEFUN([gl_FUNC_LOGIN_TTY],
135 AC_REQUIRE([gl_PTY_LIB])
137 AC_CHECK_FUNCS_ONCE([login_tty])
138 if test $ac_cv_func_login_tty = no; then
139 AC_LIBOBJ([login_tty])