<pre style='margin:0'>
Herby Gillot (herbygillot) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/f7ec817d21a0c0d1507d6d0494659db88ce9fdbf">https://github.com/macports/macports-ports/commit/f7ec817d21a0c0d1507d6d0494659db88ce9fdbf</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'> new f7ec817d21a screen: update to 5.0.0
</span>f7ec817d21a is described below
<span style='display:block; white-space:pre;color:#808000;'>commit f7ec817d21a0c0d1507d6d0494659db88ce9fdbf
</span>Author: David Gilman <davidgilman1@gmail.com>
AuthorDate: Mon Sep 2 15:20:17 2024 -0400
<span style='display:block; white-space:pre;color:#404040;'> screen: update to 5.0.0
</span>---
sysutils/screen/Portfile | 20 ++----
sysutils/screen/files/patch-acconfig.h.diff | 35 ----------
sysutils/screen/files/patch-apple-screen.diff | 78 +++++++++++++---------
sysutils/screen/files/patch-apple-window.diff | 62 +++++++++--------
sysutils/screen/files/patch-tic.diff | 30 +++++++++
.../patch-xcode-12-implicit-function-fixes.diff | 36 ----------
6 files changed, 117 insertions(+), 144 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/sysutils/screen/Portfile b/sysutils/screen/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index dbe0f9acbcf..1e38d45ea3b 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/sysutils/screen/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/sysutils/screen/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -3,7 +3,7 @@
</span> PortSystem 1.0
name screen
<span style='display:block; white-space:pre;background:#ffe0e0;'>-version 4.9.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version 5.0.0
</span> revision 0
homepage https://www.gnu.org/software/screen/
description Screen manager with VT100/ANSI terminal emulation
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -29,9 +29,9 @@ master_sites gnu:${name} \
</span> distfiles-append 18:encoding
checksums ${distname}${extract.suffix} \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- rmd160 dd3f460992e823783b55d7fc7fd949a349fc4611 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- sha256 26cef3e3c42571c0d484ad6faf110c5c15091fbf872b06fa7aa4766c7405ac69 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- size 1040785 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ rmd160 d945137f67f56ff97e7fb7e46c29c25661df05cc \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 f04a39d00a0e5c7c86a55338808903082ad5df4d73df1a2fd3425976aed94971 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 895882 \
</span> 18 \
rmd160 bd143058417e1d4c040a2589fdfbf8f9203f0b4c \
sha256 4d4b674a61dab6bac9b4207307c5f020fa670fc3948c39e7ea93c7fb9dfb5174 \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -43,8 +43,7 @@ checksums ${distname}${extract.suffix} \
</span>
patchfiles patch-apple-screen.diff \
patch-apple-window.diff \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- patch-acconfig.h.diff \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- patch-xcode-12-implicit-function-fixes.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patch-tic.diff
</span> depends_lib port:ncurses
extract.only ${distname}${extract.suffix}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -52,21 +51,16 @@ post-extract {
</span> file copy ${distpath}/18 ${workpath}
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-use_autoreconf yes
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-autoreconf.args -i
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> configure.args --mandir=${prefix}/share/man \
--infodir=${prefix}/share/info \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- --enable-telnet \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- --enable-colors256 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- --enable-rxvt_osc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-utmp \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-telnet
</span> configure.cflags-append -DRUN_LOGIN
post-destroot {
xinstall -m 644 ${workpath}/18 ${destroot}${prefix}/share/${name}/utf8encodings
xinstall -m 644 ${worksrcpath}/etc/etcscreenrc ${destroot}${prefix}/etc/screenrc
xinstall -m 644 ${worksrcpath}/terminfo/screencap ${destroot}${prefix}/etc/termcap
<span style='display:block; white-space:pre;background:#ffe0e0;'>- system "tic ${worksrcpath}/terminfo/screeninfo.src"
</span> }
platform darwin {
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/sysutils/screen/files/patch-acconfig.h.diff b/sysutils/screen/files/patch-acconfig.h.diff
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 653b0261f0e..00000000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/sysutils/screen/files/patch-acconfig.h.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,35 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-MacOS X uses utmpx. Apple's patchset (patch-apple.diff) adds code
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-that calls /usr/bin/login to handle utmpx editing. Thus, we have no
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-need to use screen's utmp editing code. This patch disables
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-screen's utmp editing.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-This also fixes the "/var/run/utmp: No such file or directory"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-errors as a consequence of the above.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- acconfig.h 2021-05-08 19:39:20.099088823 -0400
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ acconfig.h 2021-05-08 20:11:16.299603971 -0400
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -191,14 +191,14 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * If screen is installed with permissions to update /etc/utmp (such
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * as if it is installed set-uid root), define UTMPOK.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#define UTMPOK
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#undef UTMPOK
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* Set LOGINDEFAULT to one (1)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * if you want entries added to /etc/utmp by default, else set it to
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * zero (0).
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * LOGINDEFAULT will be one (1) whenever LOGOUTOK is undefined!
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#define LOGINDEFAULT 1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#undef LOGINDEFAULT
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* Set LOGOUTOK to one (1)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * if you want the user to be able to log her/his windows out.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -214,7 +214,7 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * Set CAREFULUTMP to one (1) if you want that users have at least one
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * window per screen session logged in.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#define LOGOUTOK 1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#undef LOGOUTOK
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #undef CAREFULUTMP
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/sysutils/screen/files/patch-apple-screen.diff b/sysutils/screen/files/patch-apple-screen.diff
</span><span style='display:block; white-space:pre;color:#808080;'>index 4bf1366fd7a..95e3075e3c4 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/sysutils/screen/files/patch-apple-screen.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/sysutils/screen/files/patch-apple-screen.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -15,50 +15,62 @@ for MacPorts.
</span> This patch is maintained separately from the window.c
changes since vproc.h and _CS_DARWIN_USER_TEMP_DIR require
macOS 10.5 or later.
<span style='display:block; white-space:pre;background:#ffe0e0;'>---- screen.c 2021-05-08 19:39:20.092413588 -0400
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ screen.c 2021-05-08 19:48:03.152597182 -0400
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -118,6 +118,15 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #include "logfile.h" /* islogfile, logfflush, logfopen/logfclose */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- screen.c 2024-08-28 15:55:03.000000000 -0400
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ screen.c 2024-08-31 09:03:10.596073100 -0400
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -57,10 +57,19 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "list_generic.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "mark.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "utmp.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "winmsg.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> +#ifdef __APPLE__
<span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <err.h>
</span> +#include <TargetConditionals.h>
+#if !(TARGET_OS_IPHONE && !TARGET_OS_SIMULATOR)
+#include <vproc.h>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-+#include <vproc_priv.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#include <err.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include "vproc_priv.h"
</span> +#endif
+#endif
+
<span style='display:block; white-space:pre;background:#ffe0e0;'>- #ifdef DEBUG
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- FILE *dfp;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1206,6 +1215,16 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- Attacher();
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* NOTREACHED */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ extern char **environ;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int force_vt = 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int VBellWait;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int MsgWait;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -906,11 +915,20 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ exit(0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } else if (rflag || xflag) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (Attach(MSG_ATTACH)) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Attacher();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* NOTREACHED */
</span> +#ifdef __APPLE__
<span style='display:block; white-space:pre;background:#ffe0e0;'>-+ else if (!multi && real_uid == eff_uid) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ static char DarwinSockDir[PATH_MAX];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ if (confstr(_CS_DARWIN_USER_TEMP_DIR, DarwinSockDir, sizeof(DarwinSockDir))) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ strlcat(DarwinSockDir, ".screen", sizeof(DarwinSockDir));
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ SockDir = DarwinSockDir;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#endif /* __APPLE__ */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ } else if (!multi && real_uid == eff_uid) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ static char DarwinSockDir[PATH_MAX];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if (confstr(_CS_DARWIN_USER_TEMP_DIR, DarwinSockDir, sizeof(DarwinSockDir))) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ strlcat(DarwinSockDir, ".screen", sizeof(DarwinSockDir));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ SocketDir = DarwinSockDir;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif /* __APPLE__ */
</span> +
<span style='display:block; white-space:pre;background:#ffe0e0;'>- #ifdef MULTIUSER
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if (multiattach)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- Panic(0, "Can't create sessions of other users.");
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1314,6 +1333,11 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- freopen("/dev/null", "w", stderr);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- debug("-- screen.back debug started\n");
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (multiattach)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Panic(0, "Can't create sessions of other users.");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } else if (dflag && !mflag) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ SetTtyname(false, &st);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Attach(MSG_DETACH);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -984,10 +1002,15 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ n = dup(attach_fd);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ n = -1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> +#if defined(__APPLE__) && !(TARGET_OS_IPHONE && !TARGET_OS_SIMULATOR)
+ if (_vprocmgr_detach_from_console(0) != NULL)
+ errx(1, "can't detach from console");
+#endif
+
<span style='display:block; white-space:pre;background:#ffe0e0;'>- /* This guarantees that the session owner is listed, even when we
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * start detached. From now on we should not refer to 'LoginName'
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * any more, use users->u_name instead.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * This guarantees that the session owner is listed, even when we
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * start detached. From now on we should not refer to 'LoginName'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * any more, use users->u_name instead.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ */
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/sysutils/screen/files/patch-apple-window.diff b/sysutils/screen/files/patch-apple-window.diff
</span><span style='display:block; white-space:pre;color:#808080;'>index 3d9d9fb0bbb..3b68e13a0a2 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/sysutils/screen/files/patch-apple-window.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/sysutils/screen/files/patch-apple-window.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -11,22 +11,28 @@ This patch was then rebased against the latest upstream
</span> GNU Screen, which was version 4.6.2 and no longer required
many of Apple's changes. This was done by David Gilman
for MacPorts.
<span style='display:block; white-space:pre;background:#ffe0e0;'>---- window.c 2021-05-08 19:39:20.102441294 -0400
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ window.c 2021-05-08 19:40:40.447225064 -0400
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -33,6 +33,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- window.c 2024-08-28 15:55:03.000000000 -0400
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ window.c 2024-08-31 09:20:45.386555415 -0400
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -37,10 +37,13 @@
</span> #include <sys/stat.h>
#include <signal.h>
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <stdint.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <stdbool.h>
</span> #include <fcntl.h>
+#ifdef __APPLE__
+#include <unistd.h>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-+#endif __APPLE__
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #ifndef sun
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # include <sys/ioctl.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1682,6 +1685,40 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- return r;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif /* __APPLE__ */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <sys/ioctl.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <sys/wait.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "fileio.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "help.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1182,10 +1185,44 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (slave != -1)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ close(slave);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return pid;
</span> }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> +#ifdef __APPLE__
+#ifdef RUN_LOGIN
+/*
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -38,21 +44,21 @@ for MacPorts.
</span> +static int
+run_login(const char *path, char *const argv[], char *const envp[])
+{
<span style='display:block; white-space:pre;background:#ffe0e0;'>-+ const char *shargs[MAXARGS + 1 + 3];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ const char **fp, **tp;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ const char *shargs[MAXARGS + 1 + 3];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ const char **fp, **tp;
</span> +
<span style='display:block; white-space:pre;background:#ffe0e0;'>-+ if (access(path, X_OK) < 0)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ return -1;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ shargs[0] = "login";
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ shargs[1] = (*argv[0] == '-') ? "-pfq" : "-pflq";
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ shargs[2] = LoginName;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ shargs[3] = path;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ fp = (const char **)argv + 1;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ tp = shargs + 4;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ /* argv has already been check for length */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ while ((*tp++ = *fp++) != NULL) {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ /* shouldn't return unless there was an error */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ return (execve("/usr/bin/login", (char *const*)shargs, envp));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if (access(path, X_OK) < 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ return -1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ shargs[0] = "login";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ shargs[1] = (*argv[0] == '-') ? "-pfq" : "-pflq";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ shargs[2] = LoginName;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ shargs[3] = path;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ fp = (const char **)argv + 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ tp = shargs + 4;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ /* argv has already been check for length */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ while ((*tp++ = *fp++) != NULL) {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ /* shouldn't return unless there was an error */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ return (execve("/usr/bin/login", (char *const*)shargs, envp));
</span> +}
+
+/* replace the following occurrences of execve() with run_login() */
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -61,6 +67,8 @@ for MacPorts.
</span> +#endif /* RUN_LOGIN */
+#endif /* __APPLE__ */
+
<span style='display:block; white-space:pre;background:#ffe0e0;'>- void
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- FreePseudowin(w)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- struct win *w;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifndef HAVE_EXECVPE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void execvpe(char *prog, char **args, char **env)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ char *path = NULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ char buf[1024];
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/sysutils/screen/files/patch-tic.diff b/sysutils/screen/files/patch-tic.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..475c1e6f3b3
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/sysutils/screen/files/patch-tic.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,30 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Historically, MacPorts has (probably by mistake, or coincidence) shipped
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+all of screen's compiled termcaps in the ncurses package. This doesn't seem
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+to have broken anything because this is all obscure, obsolete crap anyway
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+and screen also defines TERM/TERMCAP environment variables in its screens.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Unless this needs to change, remove the call to tic in the Makefile install
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+target. If you need the files from screen, you need to call it as
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+tic -o${destroot}${prefix}/share/terminfo ${worksrcpath}/terminfo/screeninfo.src
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+as tic will otherwise write to /opt/local on the machine that *builds* screen and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+none of the files will make it into the MacPorts package!
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- Makefile.in 2024-08-28 15:55:03.000000000 -0400
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ Makefile.in 2024-08-31 14:01:14.106657320 -0400
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -88,14 +88,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ cp $(srcdir)/utf8encodings/?? $(DESTDIR)$(SCREENENCODINGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ###############################################################################
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ install: installdirs install_bin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ cd doc ; $(MAKE) install
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- -if [ -d $(DESTDIR)/usr/lib/terminfo ]; then \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- PATH="$$PATH:/usr/5bin" tic ${srcdir}/terminfo/screeninfo.src; \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- chmod 644 $(DESTDIR)/usr/lib/terminfo/s/screen*; \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Better do this by hand. E.g. under RCS...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # cat ${srcdir}/terminfo/screencap >> /etc/termcap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @echo "termcap entry (${srcdir}/terminfo/screencap) should be installed manually."
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @echo "You may also want to install $(srcdir)/etc/etcscreenrc in" $(ETCSCREENRC)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/sysutils/screen/files/patch-xcode-12-implicit-function-fixes.diff b/sysutils/screen/files/patch-xcode-12-implicit-function-fixes.diff
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 3208162c01f..00000000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/sysutils/screen/files/patch-xcode-12-implicit-function-fixes.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,36 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- pty.c.orig
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ pty.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -30,6 +30,9 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #include <sys/stat.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #include <fcntl.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #include <signal.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#ifdef __APPLE__
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#include <util.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #include "config.h"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #include "screen.h"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- screen.c.orig
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ screen.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -47,6 +47,9 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #include <string.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #include <unistd.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #include <fcntl.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#ifdef __APPLE__
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#include <err.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #if defined(__sun)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # include <limits.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- socket.c.orig
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ socket.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1419,7 +1419,9 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- char *p;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- int pid;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- int noshowwin;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#ifdef UTMPOK
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- struct win *wi;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ASSERT(display);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- pid = D_userpid;
</span></pre><pre style='margin:0'>
</pre>