[comp.unix.sysv386] Interactive Unix/386 and Tcsh

erast1@unix.cis.pitt.edu (Evan R Aussenberg) (11/17/90)

   Please email summaries if this subject has previously been
   talked about.

Has anyone been able to compile tcsh (current version)
under Interactive Unix v3.2 release 2.2?  Most of
the modules do compile, but somewhere towards the end the
compilation fails.

I'm sure some tweaks could be applied to the source, bearing in
mind that isc unix has features such as sockets that aren't usually
defined for SYSV.  At any rate, any help is appreciated.

On a similar note:  I compiled nethack (recent vers.) and
can't get it to use color... I more concerned about the fact
that it looks like nethack does call the right routines to set
the color, than I am about the game itself.  The program finds
the codes for reverse okay, but nothing comes up in color and
I have defined the appropriate values for the compilation.

Evan Ron Aussenberg
erast1@unix.cis.pitt.edu

ires@kaspar.UUCP (Bruce R. Larson) (11/17/90)

In article <61352@unix.cis.pitt.edu>, erast1@unix.cis.pitt.edu (Evan R Aussenberg) writes:
> Has anyone been able to compile tcsh (current version)
> under Interactive Unix v3.2 release 2.2?  Most of
> the modules do compile, but somewhere towards the end the
> compilation fails.
> 
I just compiled tcsh-5.20 with gcc (not traditional) and got it to work
with POSIX Job Control.

In the Makefile, add -D_POSIX_SOURCE to CFLAGS, and make sure that
LIBES includes -lcposix.
In config.h, make sure to define POSIX, POSIXJOBS and BSDJOBS.

The only real trouble that I had was in ed.init.c.  The shell would
come up with `xcase' set, and what's worse is that my parent shell
was inheriting the `xcase' condition after tcsh exited.

I changed IEXTEN to ~IEXTEN in a couple of spots and it's been working
OK ever since.

In ed.init.c around line 199 I changed
	nio.c_lflag |= (ISIG | ICANON | ECHO | ECHOE | ECHOK |
				ECHOCTL | IEXTEN);
to
	nio.c_lflag |= (ISIG | ICANON | ECHO | ECHOE | ECHOK |
				ECHOCTL | ~IEXTEN);

and around line 465 I changed
		nio.c_lflag |= (ISIG | ICANON | IEXTEN | ECHO | ECHOE |
				ECHOK | ECHOCTL);
to
	        nio.c_lflag |= (ISIG | ICANON | ~IEXTEN | ECHO | ECHOE |
				ECHOK | ECHOCTL);

Normally I would have sent you email instead of posting, but I thought
there would be some general interest in knowing that there is now
a shell available with emacs-style command line editing that takes
advantage of POSIX Job Control.


Bruce R. Larson
Integral Resources, Milton MA
Internet: ires.com!blarson@cs.umb.edu
Uucp:     ..!cs.umb.edu!ires.com!blarson
========================================