This is release 0.9 of rc.

Read COPYRIGHT for copying information. All files are

Copyright 1991, Byron Rakitzis.

------ Compiling rc:

To compile rc, you need an ANSI compiler like gcc. Some compilers which
grok prototypes can also compile rc. In particular, I have successfully
compiled rc using "cc" on the sgi running IRIX-3.3.1 (version 3.2 has
an older compiler---rc won't compile under that OS). I avoid using
standard header files as much as possible.  In most cases, this is a
benefit, but you should pay attention to stddef.h and to rc.h to make
sure the values there are suitable for your system.

Note: if you have an IBM PC-RT, you *can* compile rc with IBM's
compiler but you have to tweak the sources a little. I decided not to
support the RT because /usr/include does not have a stdarg.h, but
desperate RT users can contact me for porting info.

If you are on a pure system V machine, you may have define certain
macros to omit certain pieces of code. In particular, defining the
NOLIMITS macro will #ifdef out the Berkeley limits code.
Also, the NOJOB macro if defined will omit certain calls to signal()
used to make rc work on Berkeley systems that assume csh. (note that rc
does *not* support csh-style job control in either case)
Similarly, the NONMPIPES macro omits support for <{} redirection on
systems which do not support named pipes.

Finally, on older systems without "<dirent.h>", the macro
"NODIRENT" must be defined. This substitutes "<dirent.h>" for
"<sys/dir.h>" and uses struct direct instead of struct dirent.

------ Bugs:

Send bug reports to byron@archone.tamu.edu. If a core dump is
generated, sending me a backtrace will help me out a great deal. You
can get a backtrace like this:

	; gdb rc core
	(gdb) where
	<<<BACKTRACE INFO>>>
	(gdb)

Also, always report the machine, compiler and os used to make rc.  It's
possible I may have access to a machine of that type, in which case it
becomes much easier for me to track the bug down.

------ Feeping Creaturism:

See the file FEEPERS for a list of changes and compatability breaks
from the "real" rc. Most of these changes were necessary to get rc to
work in a reasonable fashion on a real UNIX system; a few were changes
motivated by concern about some inadequacies in the original design.

------ Credits:

This shell was written by me, Byron Rakitzis, but kudos go to Paul
Haahr for letting me know what a shell should do and for contributing
certain bits and pieces to rc (notably the limits code, most of which.c
and the backquote redirection code), and to Hugh Redelmeier for running
rc through his fussy ANSI compiler and thereby provoking interesting
discussions about portability.

Of course, without Tom Duff's design of the original rc, I could not
have written this shell (though I probably would have written *a*
shell). Almost of all of the features, with minor exceptions, have been
implemented as described in the Unix v10 manuals. Hats off to td for
designing a C-like, minimal but very useful shell.
