Screen failed to work properly under HEAD. This patch resolve the issue.

Submitted by:	ed
This commit is contained in:
Cy Schubert 2010-02-09 07:05:42 +00:00
parent 4780495de4
commit 0debb53811
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=249471
7 changed files with 59 additions and 80 deletions

View File

@ -7,7 +7,7 @@
PORTNAME= screen
PORTVERSION= 4.0.3
PORTREVISION= 6
PORTREVISION= 7
CATEGORIES= sysutils
MASTER_SITES= ftp://ftp.uni-erlangen.de/pub/utilities/screen/ \
http://komquats.com/distfiles/ \

View File

@ -1,5 +1,5 @@
--- configure.orig 2003-12-05 05:46:53.000000000 -0800
+++ configure 2010-01-26 22:18:47.000000000 -0800
--- configure.orig Fri Dec 5 15:46:53 2003
+++ configure Sat Mar 4 10:18:24 2006
@@ -4746,48 +4746,6 @@
sed 's/^/| /' conftest.$ac_ext >&5
@ -68,15 +68,6 @@
}
_ACEOF
rm -f conftest$ac_exeext
@@ -5011,7 +4968,7 @@
{ echo "$as_me:$LINENO: checking for SVR4 ptys..." >&5
echo "$as_me: checking for SVR4 ptys..." >&6;}
sysvr4ptys=
-if test -c /dev/ptmx ; then
+if test -c /nonexistent ; then
cat >conftest.$ac_ext <<_ACEOF
#line $LINENO "configure"
/* confdefs.h. */
@@ -5314,19 +5271,16 @@
fi
rm -f conftest*
@ -101,25 +92,30 @@
# Check whether --with-pty-mode or --without-pty-mode was given.
if test "${with_pty_mode+set}" = set; then
@@ -5581,6 +5535,10 @@
#ifdef __hpux
#define pututline _pututline
#endif
+#ifdef __FreeBSD_cc_version
@@ -5575,6 +5529,8 @@
#if defined(SVR4) && !defined(DGUX)
#include <utmpx.h>
#define utmp utmpx
+#define pututline pututxline
+#define getutent getutxent
+#endif
int
main ()
@@ -5633,6 +5591,10 @@
#ifdef __hpux
#define pututline _pututline
#else
#include <utmp.h>
#endif
+#ifdef __FreeBSD_cc_version
@@ -5627,6 +5583,8 @@
#if defined(SVR4) && !defined(DGUX)
#include <utmpx.h>
#define utmp utmpx
+#define pututline pututxline
+#define getutent getutxent
+#endif
int
main ()
#else
#include <utmp.h>
#endif
@@ -5683,6 +5641,8 @@
#if defined(SVR4) && !defined(DGUX)
#include <utmpx.h>
#define utmp utmpx
+#define pututline pututxline
+#define getutent getutxent
#else
#include <utmp.h>
#endif

View File

@ -1,5 +1,5 @@
--- os.h.orig 2002-01-08 07:42:33.000000000 -0800
+++ os.h 2010-01-26 21:20:44.000000000 -0800
--- os.h.orig Tue Jan 8 07:42:33 2002
+++ os.h Tue Sep 9 17:39:58 2003
@@ -161,7 +161,7 @@
# define setregid(rgid, egid) setresgid(rgid, egid, -1)
#endif
@ -9,13 +9,25 @@
# define USE_SETEUID
#endif
@@ -262,7 +262,9 @@
@@ -262,7 +262,11 @@
#if defined(UTMPOK) || defined(BUGGYGETLOGIN)
# if defined(SVR4) && !defined(DGUX) && !defined(__hpux) && !defined(linux)
# include <utmpx.h>
+#ifndef __FreeBSD_version
# define UTMPFILE UTMPX_FILE
+#endif
-# define UTMPFILE UTMPX_FILE
+# ifdef UTMPX_FILE
+# define UTMPFILE UTMPX_FILE
+# else
+# define UTMPFILE "/nonexistent"
+# endif
# define utmp utmpx
# define getutent getutxent
# define getutid getutxid
@@ -270,7 +274,7 @@
# define pututline pututxline
# define setutent setutxent
# define endutent endutxent
-# define ut_time ut_xtime
+# define ut_time ut_tv.tv_sec
# else /* SVR4 */
# include <utmp.h>
# endif /* SVR4 */

View File

@ -1,11 +1,11 @@
--- process.c.orig 2003-09-18 05:53:54.000000000 -0700
+++ process.c 2010-01-26 21:27:17.000000000 -0800
--- process.c
+++ process.c
@@ -37,7 +37,7 @@
#include "config.h"
/* for solaris 2.1, Unixware (SVR4.2) and possibly others: */
-#ifdef SVR4
+#if defined(SVR4) && !defined(__FreeBSD_cc_version)
+#if defined(SVR4) && !defined(__FreeBSD__)
# include <sys/stropts.h>
#endif

View File

@ -1,11 +1,11 @@
--- screen.c.orig 2003-09-08 07:26:41.000000000 -0700
+++ screen.c 2010-01-26 15:51:49.000000000 -0800
--- screen.c
+++ screen.c
@@ -50,7 +50,7 @@
#include "config.h"
-#ifdef SVR4
+#if defined(SVR4) && !defined(__FreeBSD_cc_version)
+#if defined(SVR4) && !defined(__FreeBSD__)
# include <sys/stropts.h>
#endif

View File

@ -1,11 +1,11 @@
--- tty.sh.orig 2003-09-08 07:24:25.000000000 -0700
+++ tty.sh 2010-01-26 15:56:56.000000000 -0800
--- tty.sh
+++ tty.sh
@@ -76,7 +76,7 @@
#endif
#include "config.h"
-#ifdef SVR4
+#if defined(SVR4) && !defined(__FreeBSD_cc_version)
+#if defined(SVR4) && !defined(__FreeBSD__)
#include <sys/stropts.h> /* for I_POP */
#endif

View File

@ -1,5 +1,5 @@
--- utmp.c.orig 2003-09-08 07:27:17.000000000 -0700
+++ utmp.c 2010-01-26 22:27:46.000000000 -0800
+++ utmp.c 2009-12-21 15:10:06.000000000 -0800
@@ -21,6 +21,9 @@
****************************************************************
*/
@ -17,44 +17,23 @@
+/* XXX FreeBSD-9 includes libutempter however if UTMP_HELPER is defined,
+ the build is broken due to utmpfd not being defined.
+*/
+#if defined(__FreeBSD_version) && __FreeBSD_version < 900004 || !defined(__FreeBSD_version)
+#if defined(__FreeBSD_version) && (__FreeBSD_version < 900004 || __FreeBSD_version >= 900007) || !defined(__FreeBSD_version)
# define UTMP_HELPER
#endif
+#endif
@@ -590,9 +598,11 @@
@@ -589,7 +597,7 @@
struct utmp *u;
{
u->ut_type = DEAD_PROCESS;
#if !defined(linux) || defined(EMPTY)
+#ifndef __FreeBSD__
-#if !defined(linux) || defined(EMPTY)
+#if (!defined(linux) || defined(EMPTY)) && !defined(__FreeBSD__)
u->ut_exit.e_termination = 0;
u->ut_exit.e_exit = 0;
#endif
+#endif
#if !defined(sun) || !defined(SVR4)
u->ut_user[0] = 0; /* for Digital UNIX, kilbi@rad.rwth-aachen.de */
#endif
@@ -618,7 +628,9 @@
#endif /* sgi */
strncpy(u->ut_line, line, sizeof(u->ut_line));
u->ut_pid = pid;
+#ifndef __FreeBSD__
(void)time((time_t *)&u->ut_time);
+#endif
}
static slot_t
@@ -630,6 +642,7 @@
#else /* GETUTENT */
+#if defined(__FreeBSD_version) && __FreeBSD_version < 900008
/*********************************************************************
*
@@ -726,9 +739,12 @@
@@ -726,9 +734,12 @@
char *line, *user;
int pid;
{
@ -68,11 +47,3 @@
}
static slot_t
@@ -759,6 +775,7 @@
return slot;
}
+#endif /* __FreeBSD_version */
#endif /* GETUTENT */