summaryrefslogtreecommitdiff
path: root/misc/window/files/patch-ww.h
diff options
context:
space:
mode:
authorStefan Eßer <se@FreeBSD.org>2020-09-22 17:40:50 +0000
committerStefan Eßer <se@FreeBSD.org>2020-09-22 17:40:50 +0000
commite3c468f04035ce339c44e23742399159a65be905 (patch)
tree86d567f3b04d32c210a71e6eb1f8c59d1d0dc32d /misc/window/files/patch-ww.h
parentcad/calculix : update to version 2.17.1 (diff)
Fix build with -fno-common
Diffstat (limited to 'misc/window/files/patch-ww.h')
-rw-r--r--misc/window/files/patch-ww.h130
1 files changed, 130 insertions, 0 deletions
diff --git a/misc/window/files/patch-ww.h b/misc/window/files/patch-ww.h
new file mode 100644
index 000000000000..d5121d446398
--- /dev/null
+++ b/misc/window/files/patch-ww.h
@@ -0,0 +1,130 @@
+--- ww.h.orig 2008-07-12 06:05:22 UTC
++++ ww.h
+@@ -207,44 +207,44 @@ struct ww_update {
+ #define WWU_TOUCHED 0x01 /* touched */
+
+ /* the window structures */
+-struct ww wwhead;
+-struct ww *wwindex[NWW + 1]; /* last location is for wwnobody */
+-struct ww wwnobody;
++extern struct ww wwhead;
++extern struct ww *wwindex[NWW + 1]; /* last location is for wwnobody */
++extern struct ww wwnobody;
+
+ /* tty things */
+-struct ww_tty wwoldtty; /* the old (saved) terminal settings */
+-struct ww_tty wwnewtty; /* the new (current) terminal settings */
+-struct ww_tty wwwintty; /* the terminal settings for windows */
+-char *wwterm; /* the terminal name */
+-char wwtermcap[1024]; /* place for the termcap */
++extern struct ww_tty wwoldtty; /* the old (saved) terminal settings */
++extern struct ww_tty wwnewtty; /* the new (current) terminal settings */
++extern struct ww_tty wwwintty; /* the terminal settings for windows */
++extern char *wwterm; /* the terminal name */
++extern char wwtermcap[1024]; /* place for the termcap */
+
+ /* generally useful variables */
+-int wwnrow, wwncol; /* the screen size */
+-char wwavailmodes; /* actually supported modes */
+-char wwcursormodes; /* the modes for the fake cursor */
+-char wwwrap; /* terminal has auto wrap around */
+-int wwdtablesize; /* result of getdtablesize() call */
+-char **wwsmap; /* the screen map */
+-union ww_char **wwos; /* the old (current) screen */
+-union ww_char **wwns; /* the new (desired) screen */
+-union ww_char **wwcs; /* the checkpointed screen */
+-char *wwtouched; /* wwns changed flags */
+-struct ww_update *wwupd; /* for display update */
+-int wwospeed; /* output baud rate, copied from wwoldtty */
+-int wwbaud; /* wwospeed converted into actual number */
+-int wwcursorrow, wwcursorcol; /* where we want the cursor to be */
+-int wwerrno; /* error number */
++extern int wwnrow, wwncol; /* the screen size */
++extern char wwavailmodes; /* actually supported modes */
++extern char wwcursormodes; /* the modes for the fake cursor */
++extern char wwwrap; /* terminal has auto wrap around */
++extern int wwdtablesize; /* result of getdtablesize() call */
++extern char **wwsmap; /* the screen map */
++extern union ww_char **wwos; /* the old (current) screen */
++extern union ww_char **wwns; /* the new (desired) screen */
++extern union ww_char **wwcs; /* the checkpointed screen */
++extern char *wwtouched; /* wwns changed flags */
++extern struct ww_update *wwupd; /* for display update */
++extern int wwospeed; /* output baud rate, copied from wwoldtty */
++extern int wwbaud; /* wwospeed converted into actual number */
++extern int wwcursorrow, wwcursorcol; /* where we want the cursor to be */
++extern int wwerrno; /* error number */
+
+ /* statistics */
+-int wwnflush, wwnwr, wwnwre, wwnwrz, wwnwrc;
+-int wwnwwr, wwnwwra, wwnwwrc;
+-int wwntokdef, wwntokuse, wwntokbad, wwntoksave, wwntokc;
+-int wwnupdate, wwnupdline, wwnupdmiss;
+-int wwnupdscan, wwnupdclreol, wwnupdclreos, wwnupdclreosmiss, wwnupdclreosline;
+-int wwnread, wwnreade, wwnreadz;
+-int wwnreadc, wwnreadack, wwnreadnack, wwnreadstat, wwnreadec;
+-int wwnwread, wwnwreade, wwnwreadz, wwnwreadd, wwnwreadc, wwnwreadp;
+-int wwnselect, wwnselecte, wwnselectz;
++extern int wwnflush, wwnwr, wwnwre, wwnwrz, wwnwrc;
++extern int wwnwwr, wwnwwra, wwnwwrc;
++extern int wwntokdef, wwntokuse, wwntokbad, wwntoksave, wwntokc;
++extern int wwnupdate, wwnupdline, wwnupdmiss;
++extern int wwnupdscan, wwnupdclreol, wwnupdclreos, wwnupdclreosmiss, wwnupdclreosline;
++extern int wwnread, wwnreade, wwnreadz;
++extern int wwnreadc, wwnreadack, wwnreadnack, wwnreadstat, wwnreadec;
++extern int wwnwread, wwnwreade, wwnwreadz, wwnwreadd, wwnwreadc, wwnwreadp;
++extern int wwnselect, wwnselecte, wwnselectz;
+
+ /* quicky macros */
+ #define wwsetcursor(r,c) (wwcursorrow = (r), wwcursorcol = (c))
+@@ -256,27 +256,27 @@ int wwnselect, wwnselecte, wwnselectz;
+
+ /* things for handling input */
+ void wwrint(); /* interrupt handler */
+-struct ww *wwcurwin; /* window to copy input into */
+-char *wwib; /* input (keyboard) buffer */
+-char *wwibe; /* wwib + sizeof buffer */
+-char *wwibp; /* current read position in buffer */
+-char *wwibq; /* current write position in buffer */
++extern struct ww *wwcurwin; /* window to copy input into */
++extern char *wwib; /* input (keyboard) buffer */
++extern char *wwibe; /* wwib + sizeof buffer */
++extern char *wwibp; /* current read position in buffer */
++extern char *wwibq; /* current write position in buffer */
+ #define wwmaskc(c) ((c) & 0xff)
+ #define wwgetc() (wwibp < wwibq ? wwmaskc(*wwibp++) : -1)
+ #define wwpeekc() (wwibp < wwibq ? wwmaskc(*wwibp) : -1)
+ #define wwungetc(c) (wwibp > wwib ? *--wwibp = (c) : -1)
+
+ /* things for short circuiting wwiomux() */
+-char wwintr; /* interrupting */
+-char wwsetjmp; /* want a longjmp() from wwrint() and wwchild() */
+-jmp_buf wwjmpbuf; /* jmpbuf for above */
++extern char wwintr; /* interrupting */
++extern char wwsetjmp; /* want a longjmp() from wwrint() and wwchild() */
++extern jmp_buf wwjmpbuf; /* jmpbuf for above */
+ #define wwinterrupt() wwintr
+ #define wwsetintr() do { wwintr = 1; if (wwsetjmp) longjmp(wwjmpbuf, 1); } \
+ while (0)
+ #define wwclrintr() (wwintr = 0)
+
+ /* checkpointing */
+-int wwdocheckpoint;
++extern int wwdocheckpoint;
+
+ /* the window virtual terminal */
+ #define WWT_TERM "window-v2"
+@@ -294,11 +294,11 @@ int wwdocheckpoint;
+ #define WWT_IMEI "im=\\E@:ei=\\EO:ic=:mi:" /* XXX, ic for emacs bug */
+ #define WWT_IC "ic=\\EP:"
+ #define WWT_DC "dc=\\EN:"
+-char wwwintermcap[1024]; /* terminal-specific but window-independent
++extern char wwwintermcap[1024]; /* terminal-specific but window-independent
+ part of the window termcap */
+ #ifdef TERMINFO
+ /* where to put the temporary terminfo directory */
+-char wwterminfopath[1024];
++extern char wwterminfopath[1024];
+ #endif
+
+ /* our functions */