screen built on a machine with pty.ko (legacy SYSVR4 pty support) loaded will fail to run on machines without pty.ko loaded. It will try to open /dev/ptmx and fail, crashing screen. This commit fixes this by removing the test for /dev/ptmx (legacy SYSVR4 pty support). Reported by: Jonathan Chen <jonc@chen.org.nz>
76 lines
1.9 KiB
Plaintext
76 lines
1.9 KiB
Plaintext
--- configure.ac.orig 2023-08-15 17:29:26.000000000 -0700
|
|
+++ configure.ac 2024-01-02 18:30:11.205776000 -0800
|
|
@@ -669,7 +669,7 @@
|
|
tgetent((char *)0, (char *)0);
|
|
],,
|
|
olibs="$LIBS"
|
|
-LIBS="-lcurses $olibs"
|
|
+LIBS="-lcurses $olibs"; CC="$CC -I/usr/local/include"
|
|
AC_CHECKING(libcurses)
|
|
AC_TRY_LINK([
|
|
#include <curses.h>
|
|
@@ -756,19 +756,6 @@
|
|
fi
|
|
fi
|
|
|
|
-if test "$cross_compiling" = no ; then
|
|
-AC_CHECKING(for SVR4 ptys)
|
|
-sysvr4ptys=
|
|
-if test -c /dev/ptmx ; then
|
|
-AC_TRY_LINK([
|
|
- #include <stdlib.h>
|
|
-], [
|
|
- ptsname(0);grantpt(0);unlockpt(0);
|
|
-],[AC_DEFINE(HAVE_SVR4_PTYS)
|
|
-sysvr4ptys=1])
|
|
-fi
|
|
-fi
|
|
-
|
|
AC_CHECK_FUNCS(getpt)
|
|
|
|
dnl check for openpty()
|
|
@@ -900,11 +887,11 @@
|
|
dnl
|
|
dnl **** utmp handling ****
|
|
dnl
|
|
-AC_CHECKING(getutent)
|
|
+AC_CHECKING(getutxent)
|
|
AC_TRY_LINK([
|
|
#include <time.h> /* to get time_t on SCO */
|
|
#include <sys/types.h>
|
|
-#if defined(SVR4) && !defined(DGUX)
|
|
+#if defined(SVR4) && !defined(DGUX) || defined(__FreeBSD__)
|
|
#include <utmpx.h>
|
|
#define utmp utmpx
|
|
#else
|
|
@@ -917,11 +904,11 @@
|
|
[int x = DEAD_PROCESS; pututline((struct utmp *)0); getutent();], AC_DEFINE(GETUTENT),
|
|
olibs="$LIBS"
|
|
LIBS="$LIBS -lgen"
|
|
-AC_CHECKING(getutent with -lgen)
|
|
+AC_CHECKING(getutxent with -lgen)
|
|
AC_TRY_LINK([
|
|
#include <time.h>
|
|
#include <sys/types.h>
|
|
-#if defined(SVR4) && !defined(DGUX)
|
|
+#if defined(SVR4) && !defined(DGUX) || defined(__FreeBSD__)
|
|
#include <utmpx.h>
|
|
#define utmp utmpx
|
|
#else
|
|
@@ -931,13 +918,13 @@
|
|
#define pututline _pututline
|
|
#endif
|
|
],
|
|
-[int x = DEAD_PROCESS; pututline((struct utmp *)0); getutent();], AC_DEFINE(GETUTENT), LIBS="$olibs")
|
|
+[int x = DEAD_PROCESS; pututxline((struct utmp *)0); getutxent();], AC_DEFINE(GETUTENT), LIBS="$olibs")
|
|
)
|
|
AC_CHECKING(ut_host)
|
|
AC_TRY_COMPILE([
|
|
#include <time.h>
|
|
#include <sys/types.h>
|
|
-#if defined(SVR4) && !defined(DGUX)
|
|
+#if defined(SVR4) && !defined(DGUX) || defined(__FreeBSD__)
|
|
#include <utmpx.h>
|
|
#define utmp utmpx
|
|
#else
|