remove "shm" flavour from misc/screen, the same patched version of screen

is now available in misc/screen-shm instead.  ok jca@
This commit is contained in:
sthen 2019-09-05 11:50:47 +00:00
parent 4df69ffd97
commit c69fdfd1e3
10 changed files with 9 additions and 229 deletions

View File

@ -1,4 +1,4 @@
# $OpenBSD: Makefile,v 1.190 2019/08/14 18:43:48 kmos Exp $
# $OpenBSD: Makefile,v 1.191 2019/09/05 11:50:47 sthen Exp $
SUBDIR =
SUBDIR += WordGenerator
@ -94,7 +94,7 @@
SUBDIR += rocrail
SUBDIR += rpm
SUBDIR += screen
SUBDIR += screen,shm
SUBDIR += screen-shm,shm
SUBDIR += sent
SUBDIR += shared-desktop-ontologies
SUBDIR += shared-mime-info

View File

@ -1,18 +1,19 @@
# $OpenBSD: Makefile,v 1.18 2019/07/17 14:46:33 danj Exp $
# $OpenBSD: Makefile,v 1.19 2019/09/05 11:50:48 sthen Exp $
COMMENT= access software for a blind person using a braille terminal
DISTNAME= brltty-3.6
REVISION= 3
REVISION= 4
CATEGORIES= misc
HOMEPAGE= http://mielke.cc/brltty
MASTER_SITES= ${HOMEPAGE}/releases/
# GPL
PERMIT_PACKAGE= Yes
WANTLIB= c curses pthread sndio
RUN_DEPENDS= screen-*-shm:misc/screen,shm
RUN_DEPENDS= screen-*-shm:misc/screen-shm
USE_GMAKE= Yes
CONFIGURE_STYLE=gnu
CONFIGURE_ARGS= --with-install-root=${WRKINST} \

View File

@ -1,11 +1,10 @@
# $OpenBSD: Makefile,v 1.70 2019/08/15 21:01:49 naddy Exp $
# Please adjust www/faq/faq15.html if updating.
# $OpenBSD: Makefile,v 1.71 2019/09/05 11:50:48 sthen Exp $
COMMENT= multi-screen window manager
VERSION= 4.0.3
DISTNAME= screen-${VERSION}
REVISION= 7
REVISION= 8
CATEGORIES= misc
MASTER_SITES= ${MASTER_SITE_GNU:=screen/}
@ -21,7 +20,7 @@ CONFIGURE_STYLE= autoconf no-autoheader
CONFIGURE_ARGS= --with-sys-screenrc="${SYSCONFDIR}/screenrc"
USE_GROFF = Yes
FLAVORS= static shm
FLAVORS= static
FLAVOR?=
.if ${FLAVOR} == "static"
@ -29,9 +28,6 @@ CONFIGURE_ENV= LDFLAGS="${STATIC}"
.else
WANTLIB= c curses util
.endif
.if ${FLAVOR} == "shm"
PATCH_LIST= patch-* shmpatch-*
.endif
ALL_TARGET= screen screen.info

View File

@ -1,17 +0,0 @@
$OpenBSD: shmpatch-Makefile_in,v 1.1 2003/11/22 00:56:58 espie Exp $
--- Makefile.in.orig 2003-09-18 18:13:02.000000000 +0200
+++ Makefile.in 2003-11-17 23:37:54.000000000 +0100
@@ -46,7 +46,12 @@ AWK = @AWK@
# -DDUMPSHADOW
# With shadow-pw screen would never dump core. Use this option if
# you still want to have a core. Use only for debugging.
-OPTIONS=
+# -DIPC_EXPORT_IMAGE
+# Allows an other program to get the screen contetn through shared mem
+# and ipc. This is used e.g. for braille and speech software.
+
+OPTIONS=-DIPC_EXPORT_IMAGE
+#OPTIONS=
#OPTIONS= -DDEBUG
SHELL=/bin/sh

View File

@ -1,15 +0,0 @@
$OpenBSD: shmpatch-extern_h,v 1.1 2003/11/22 00:56:58 espie Exp $
--- extern.h.orig 2003-08-22 14:27:57.000000000 +0200
+++ extern.h 2003-11-17 23:37:54.000000000 +0100
@@ -139,6 +139,11 @@ extern int winexec __P((char **));
extern void FreePseudowin __P((struct win *));
#endif
extern void nwin_compose __P((struct NewWindow *, struct NewWindow *, struct NewWindow *));
+
+#ifdef IPC_EXPORT_IMAGE
+extern void CopyWinImage __P((struct win *, char *));
+#endif
+
extern int DoStartLog __P((struct win *, char *, int));
extern int ReleaseAutoWritelock __P((struct display *, struct win *));
extern int ObtainAutoWritelock __P((struct display *, struct win *));

View File

@ -1,26 +0,0 @@
$OpenBSD: shmpatch-sched_c,v 1.1 2003/11/22 00:56:58 espie Exp $
--- sched.c.orig 2003-09-08 16:26:36.000000000 +0200
+++ sched.c 2003-11-17 23:37:54.000000000 +0100
@@ -110,6 +110,10 @@ calctimo()
return min;
}
+#ifdef IPC_EXPORT_IMAGE
+ extern struct window *windows;
+#endif
+
void
sched()
{
@@ -121,6 +125,11 @@ sched()
for (;;)
{
+#ifdef IPC_EXPORT_IMAGE
+ /* export image from last used window which is on top of the list */
+ CopyWinImage( windows, shm );
+#endif
+
if (calctimeout)
timeoutev = calctimo();
if (timeoutev)

View File

@ -1,81 +0,0 @@
$OpenBSD: shmpatch-screen_c,v 1.1 2003/11/22 00:56:58 espie Exp $
--- screen.c.orig 2003-09-08 16:26:41.000000000 +0200
+++ screen.c 2003-11-17 23:37:54.000000000 +0100
@@ -71,6 +71,14 @@
#if (defined(AUX) || defined(_AUX_SOURCE)) && defined(POSIX)
# include <compat.h>
#endif
+
+#ifdef IPC_EXPORT_IMAGE
+# include <sys/ipc.h>
+# include <sys/shm.h>
+#endif
+
+
+
#if defined(USE_LOCALE) || defined(ENCODINGS)
# include <locale.h>
#endif
@@ -78,6 +86,11 @@
# include <langinfo.h>
#endif
+#ifdef IPC_EXPORT_IMAGE
+# include <sys/ipc.h>
+# include <sys/shm.h>
+#endif
+
#include "screen.h"
#ifdef HAVE_BRAILLE
# include "braille.h"
@@ -234,6 +247,12 @@ struct win *console_window;
+
+#ifdef IPC_EXPORT_IMAGE
+char *shm; /* pointer to shared memory segment */
+#endif
+
+
/*
* Do this last
*/
@@ -461,6 +480,37 @@ char **av;
zmodem_recvcmd = SaveStr("!!! rz -vv -b -E");
#endif
+#ifdef IPC_EXPORT_IMAGE
+ {
+ key_t key = 0xBACD072F; /* random static IPC key */
+ int shmid;
+
+ /* Allocation of shared mem for 18000 bytes (screen text and attributes
+ * + few coord.). We supose no screen will be wider than 132x66.
+ * 0x1C0 = [rwx------].
+ */
+ shmid = shmget( key, 18000, IPC_CREAT | 0x1C0 );
+ if( shmid < 0 )
+ {
+ Panic( errno, "shmget" );
+ /* NOTRECHED */
+ }
+ shm = shmat( shmid, 0, 0);
+ if ( shm == (void*)-1 )
+ {
+ Panic( errno, "shmat" );
+ /* NOTRECHED */
+ }
+ /* minimal initialisation just to have valid data */
+ shm[0] = 80; /* scrdim x */
+ shm[1] = 1; /* scrdim y */
+ shm[2] = 0; /* csrpos x */
+ shm[3] = 0; /* csrpos y */
+ strcpy( shm+4, "screen is initializing..." );
+ memset( shm+4+strlen(shm+4), ' ', 80);
+ }
+#endif
+
#ifdef COPY_PASTE
CompileKeys((char *)0, 0, mark_key_tab);
#endif

View File

@ -1,14 +0,0 @@
$OpenBSD: shmpatch-screen_h,v 1.1 2003/11/22 00:56:58 espie Exp $
--- screen.h.orig 2003-08-22 14:28:43.000000000 +0200
+++ screen.h 2003-11-17 23:37:54.000000000 +0100
@@ -288,6 +288,10 @@ struct baud_values
int sym; /* symbol defined in ttydev.h */
};
+#ifdef IPC_EXPORT_IMAGE
+char *shm; /* pointer to shared memory segment */
+#endif
+
/*
* windowlist orders
*/

View File

@ -1,63 +0,0 @@
$OpenBSD: shmpatch-window_c,v 1.1 2003/11/22 00:56:58 espie Exp $
--- window.c.orig 2003-09-08 16:27:21.000000000 +0200
+++ window.c 2003-11-17 23:37:54.000000000 +0100
@@ -1993,6 +1993,59 @@ char *data;
}
}
+
+#ifdef IPC_EXPORT_IMAGE
+
+void
+CopyWinImage( p, dest )
+struct win *p;
+char *dest;
+{
+ register char *s, *d = dest, *m;
+ register int x, y;
+ struct display *display = p->w_pdisplay;
+ int st = (display) ? D_status : 0;
+
+ if( p && p->w_mlines )
+ {
+ *d++ = p->w_width; /* scrdim x */
+ *d++ = p->w_height; /* scrdim y */
+ *d++ = (st) ? D_status_len : p->w_x; /* csrpos x */
+ *d++ = (st) ? STATLINE : p->w_y; /* csrpos y */
+ /* copy window image to buffer */
+ for( y = 0; y < p->w_height; y++ )
+ {
+ s = p->w_mlines[y].image;
+ x = p->w_width;
+ if( st && y == STATLINE )
+ for( m = D_status_lastmsg; *m && x; *d++ = *m++, s++, x-- );
+ for( ; x; *d++ = *s++, x-- );
+ }
+ /* copy attributes from window image to buffer */
+ for( y = 0; y < p->w_height; y++ )
+ {
+ s = p->w_mlines[y].attr;
+ x = p->w_width;
+ if( st && y == STATLINE )
+ for( ; x; *d++ = 0, s++, x-- );
+ for( ; x; *d++ = *s++, x-- );
+ }
+ }
+ else
+ {
+ /* no window pointer */
+ *d++ = 80; /* scrdim x */
+ *d++ = 1; /* scrdim y */
+ *d++ = 0; /* csrpos x */
+ *d++ = 0; /* csrpos y */
+ strcpy( d, "*** screen: no window pointer ***" );
+ memset( d+strlen(d), ' ', 80);
+ }
+}
+
+#endif /* IPC_EXPORT_IMAGE */
+
+
#ifdef ZMODEM
static int

View File

@ -9,4 +9,3 @@ regions between windows.
Flavors:
static - Build with statically linked binaries.
shm - export screen as shared memory, useful for brltty.