[comp.mail.mush] MUSH has header trouble, won't make on 3b1

kevin@kosman.UUCP (Kevin O'Gorman) (06/04/91)

Well, other people don't seem to have this problem, but here's more
detail.  Maybe somebody can tell me where my system deviates from
normal.

When I try to make mush (7.2.3) on my 3b1 (3.51 development set; same
troubles with gcc, but more diagnostics), I have two main causes of
grief.

First, in mush.h line 201, the macro savetty() is redefined.  The original
definition, included on account of defining CURSES, is in curses.h:

#define	savetty() (ioctl (_tty_ch, TCGETA, &_tty), _stty = _tty)

but mush seems to want it to be:

#define savetty()  \
	(void) gtty(0, &_tty), vtime = _tty.c_cc[VTIME], vmin = _tty.c_cc[VMIN]

I'm not sure what the consequences are of this change, but it makes me worry.

----------

More troublesome is line 241 of mush.h, where we have

	SGTTY _tty;

but the typedef for SGTTY only appears if CURSES is #undef-ed.  It does
not appear anywhere in my /usr/include.  However, _tty has already been
declared in line 67 of my curses.h:

	extern TERMIO	_tty, _stty;

and indeed this symbol appears as a global in libcurses.a[curses.o].
So we ought not to be defining it here, right?

---------

The confusion about SGTTY and _tty makes it impossible to compile anything
correctly.  Why me?  How does this happen on my system and not on others?
Anybody with a clue?
-- 
Kevin O'Gorman ( kevin@kosman.UUCP, kevin%kosman.uucp@nrc.com )
voice: 805-984-8042 Vital Computer Systems, 5115 Beachcomber, Oxnard, CA  93035
Non-Disclaimer: my boss is me, and he stands behind everything I say.