Name Date Size #Lines LOC

..22-Aug-2023-

config/H22-Aug-2023-10590

nls/H22-Aug-2023-8,4118,042

FAQH A D22-Aug-202312.5 KiB305222

FREEBSD-XlistH A D22-Aug-2023107 109

FREEBSD-upgradeH A D22-Aug-2023312 148

FixesH A D22-Aug-202393.9 KiB2,1532,113

ImakefileH A D22-Aug-202313.7 KiB633530

MAKEDIFFSH A D22-Aug-2023988 4233

MAKESHARH A D22-Aug-20232.1 KiB122110

Makefile.inH A D22-Aug-202322.8 KiB780316

Makefile.stdH A D22-Aug-202319.8 KiB633264

Makefile.vmsH A D22-Aug-202318.6 KiB595255

NewThingsH A D22-Aug-20236.4 KiB170151

PortedH A D22-Aug-202323.7 KiB1,074978

READMEH A D22-Aug-20238.6 KiB208155

README.imakeH A D22-Aug-2023462 107

WishListH A D22-Aug-202310.9 KiB310231

Y2KH A D22-Aug-2023555 119

complete.tcshH A D22-Aug-202353.7 KiB1,2821,173

config.guessH A D22-Aug-202342.4 KiB1,4391,246

config.h.inH A D22-Aug-20237.4 KiB276188

config.rpathH A D22-Aug-202314.5 KiB572480

config.subH A D22-Aug-202334.7 KiB1,7891,651

config_f.hH A D22-Aug-20235.9 KiB21863

configureH A D22-Aug-2023224 KiB8,1666,870

csh-mode.elH A D22-Aug-202329.2 KiB936669

dotlock.cH A D22-Aug-20234.5 KiB181103

dotlock.hH A D22-Aug-20231.6 KiB365

ed.chared.cH A D22-Aug-202374.9 KiB3,8992,987

ed.decls.hH A D22-Aug-20239.7 KiB283214

ed.defns.cH A D22-Aug-202351.1 KiB1,9921,779

ed.hH A D22-Aug-20239.2 KiB256171

ed.init.cH A D22-Aug-202319.7 KiB709509

ed.inputl.cH A D22-Aug-202323 KiB953773

ed.refresh.cH A D22-Aug-202333.7 KiB1,361955

ed.screen.cH A D22-Aug-202339.6 KiB1,6541,309

ed.term.cH A D22-Aug-202326.8 KiB1,1421,021

ed.term.hH A D22-Aug-202311.8 KiB531424

ed.xmap.cH A D22-Aug-202317.3 KiB763544

eight-bit.meH A D22-Aug-20234.4 KiB144125

gethost.cH A D22-Aug-20239.2 KiB408311

glob.3H A D22-Aug-202311.1 KiB483481

glob.cH A D22-Aug-202319.2 KiB779591

glob.hH A D22-Aug-20234.1 KiB9441

host.defsH A D22-Aug-202330.6 KiB1,2851,062

imake.configH A D22-Aug-20232.1 KiB6655

install-shH A D22-Aug-202313.3 KiB521344

ma.setp.cH A D22-Aug-202313.8 KiB595446

mi.termios.cH A D22-Aug-202311 KiB394258

mi.varargs.hH A D22-Aug-2023396 168

mi.wait.hH A D22-Aug-20231.4 KiB4521

patchlevel.hH A D22-Aug-2023307 158

pathnames.hH A D22-Aug-20235.2 KiB170107

sh.cH A D22-Aug-202361.9 KiB2,5451,672

sh.char.cH A D22-Aug-202341.7 KiB1,172578

sh.char.hH A D22-Aug-202312.1 KiB314251

sh.decls.hH A D22-Aug-202314.8 KiB449332

sh.dir.cH A D22-Aug-202332.5 KiB1,4201,060

sh.dir.hH A D22-Aug-20232.4 KiB5819

sh.dol.cH A D22-Aug-202323.7 KiB1,124900

sh.err.cH A D22-Aug-202319.7 KiB657520

sh.exec.cH A D22-Aug-202328.4 KiB1,205922

sh.exp.cH A D22-Aug-202321.8 KiB1,058836

sh.file.cH A D22-Aug-202318.3 KiB770588

sh.func.cH A D22-Aug-202358.2 KiB2,7522,241

sh.glob.cH A D22-Aug-202321.1 KiB1,020787

sh.hH A D22-Aug-202337.3 KiB1,289894

sh.hist.cH A D22-Aug-202337.8 KiB1,3641,077

sh.init.cH A D22-Aug-202327.6 KiB1,074845

sh.lex.cH A D22-Aug-202337.3 KiB1,8501,533

sh.misc.cH A D22-Aug-202312.1 KiB695542

sh.parse.cH A D22-Aug-202313.3 KiB694540

sh.print.cH A D22-Aug-20236.5 KiB316227

sh.proc.cH A D22-Aug-202350.2 KiB2,0621,581

sh.proc.hH A D22-Aug-20235.2 KiB13074

sh.sem.cH A D22-Aug-202325.5 KiB1,000731

sh.set.cH A D22-Aug-202328.7 KiB1,3611,143

sh.time.cH A D22-Aug-202318.8 KiB746587

sh.types.hH A D22-Aug-20238.2 KiB398220

snames.hH A D22-Aug-20232.8 KiB9083

src.descH A D22-Aug-20232.9 KiB7367

svnH A D22-Aug-2023743 3321

tc.alloc.cH A D22-Aug-202317.2 KiB661422

tc.bind.cH A D22-Aug-202312.2 KiB543460

tc.const.cH A D22-Aug-202324.3 KiB526468

tc.decls.hH A D22-Aug-202310.6 KiB346239

tc.disc.cH A D22-Aug-20235.2 KiB197138

tc.func.cH A D22-Aug-202349.2 KiB2,1231,623

tc.hH A D22-Aug-20232.7 KiB8135

tc.nls.cH A D22-Aug-20234.4 KiB164117

tc.nls.hH A D22-Aug-20232.3 KiB6021

tc.os.cH A D22-Aug-202336.9 KiB1,6041,233

tc.os.hH A D22-Aug-202315.7 KiB621442

tc.printf.cH A D22-Aug-202310.2 KiB481394

tc.prompt.cH A D22-Aug-202316.6 KiB673550

tc.sched.cH A D22-Aug-20236.9 KiB259184

tc.sig.cH A D22-Aug-20233.7 KiB152104

tc.sig.hH A D22-Aug-20235.6 KiB174105

tc.str.cH A D22-Aug-202314.8 KiB714576

tc.vers.cH A D22-Aug-20234.4 KiB176131

tc.wait.hH A D22-Aug-20234.7 KiB156104

tc.who.cH A D22-Aug-202318.3 KiB720585

tcsh.manH A D22-Aug-2023202.3 KiB5,5195,426

tcsh.man.newH A D22-Aug-2023200.3 KiB9,8679,860

tcsh.man2htmlH A D22-Aug-202321.7 KiB851692

termcap.vmsH A D22-Aug-20231.6 KiB5251

tw.color.cH A D22-Aug-202312.6 KiB493368

tw.comp.cH A D22-Aug-202314.5 KiB648477

tw.decls.hH A D22-Aug-20234.9 KiB13275

tw.hH A D22-Aug-20233.3 KiB11161

tw.help.cH A D22-Aug-20236 KiB210126

tw.init.cH A D22-Aug-202322.3 KiB1,031688

tw.parse.cH A D22-Aug-202357.1 KiB2,3801,767

tw.spell.cH A D22-Aug-20235.2 KiB16398

vms.termcap.cH A D22-Aug-20238.2 KiB355262

README

1This is tcsh version 6.20.00.  Tcsh is a version of the Berkeley
2C-Shell, with the addition of: a command line editor, command and file
3name completion, listing, etc. and a bunch of small additions to the
4shell itself.
5
6Tcsh has been ported to most unix variants, and can be tinkered to work
7in unix systems that it has not ported yet. See the Ported file for
8a more complete list of ported systems and in the config directory for
9a configuration file that matches your system.
10Tcsh also runs under VMS/POSIX and OS/2+emx; the OS/2 port is not
11complete yet.
12
13Feel free to use it.  These changes to csh may only be included in a
14commercial product if the inclusion or exclusion does not change the
15purchase price, level of support, etc.  Please respect the individual
16authors by giving credit where credit is due (in other words, don't
17claim that you wrote portions that you haven't, and don't delete the
18names of the authors from the source code or documentation).
19
20To install tcsh:
21
220)  Try running "./configure".  If that doesn't work, goto step 1.
23    Run "./configure --help" to see possible options.  After running
24    configure, goto step 3.
25
261)  Otherwise copy Makefile.std to Makefile. Look at the Makefile and
27    make sure that you are using the right compilation flags.
28
292)  Copy the appropriate for your machine and OS config file from the
30    config subdirectory into config.h.  Consult the file "Ported" for
31    settings known to work on various machines.  If you are trying to
32    compile tcsh on a machine for which there is no config file yet,
33    you will need to create a config file using as a template one of
34    the supplied ones.  If you get tcsh working on a new machine, I'd
35    appreciate a copy of the config file plus additional information
36    about the architecture/OS.  If you are creating a new config file,
37    look very hard at BSDJOBS and BSDTIMES if you are running
38    a non-BSD machine.  For vanila SysV, these would all be #undef-ed,
39    but others may vary (such as A/UX or HPUX).  On a pyramid, compile
40    in the UCB universe even if you are running under the ATT universe
41    usually; it will work anyway, and you get job control for free.
42
433)  Look at config_f.h, and enable or disable any features you want.
44    It is configured the way I like it, but you may disagree.
45
464)  Look at host.defs to make sure that you have the right defines to set
47    the environment variables "HOSTTYPE", "MACHTYPE", "OSTYPE" and
48    "VENDOR" correctly.  If you need to make changes, PLEASE SEND THEM
49    BACK TO ME.
50
515)  You may want to adjust the DESTBIN and DESTMAN entries in
52    the Makefile.  These are the directories that tcsh, and the tcsh.1
53    man entry will be placed in when you do a "make install" and "make
54    install.man" respectively.  If you decide to install tcsh somewhere
55    other than in /usr/local/bin/tcsh, you should #define _PATH_TCSHELL
56    "/your/installation/directory/tcsh" in pathnames.h.
57
586)  make
59
607)  Read the documentation while you are waiting.  The file tcsh.man
61    is in standard [nt]roff -man format. If you like, you can run the
62    tcsh.man2html script (requires Perl) to generate an HTML version of
63    the manpage which you can read with Mosaic, lynx or other HTML browser.
64
658)  Test tcsh by typing ./tcsh to see that it has compiled correctly.
66    The history command should give a time stamp on every entry.
67    Typing normal characters should echo each exactly once.  Control-A
68    should put the cursor at the beginning of the input line, but after
69    the prompt.  Typing characters after that should insert them into
70    the line.  If you have job control make sure that stopping and
71    restarting jobs works. Make sure you can ^C in the middle of the
72    input line.  Also make sure that pipelines work correctly and there
73    are no races. Try 'echo | cat | cat | cat | cat | more' a couple of
74    times. If you have job control, try this command in the background
75    and bring it in the foreground when it stops for tty output.  Also
76    make sure that the ioctl() modes are preserved.  Get into vi, enter
77    and exit input mode and suspend it, background it and foreground it
78    again. After all that, lastly make sure that the tty process group
79    manipulation is happening correctly. Try ftp to some host. If your
80    passwd appears on the screen, you have lost /dev/tty. Otherwise
81    everything is fine.
82
839)  Once satisfied that tcsh is working correctly, complete the installation
84    by typing "make install" to install the binary, and "make install.man" to
85    install the documentation. Don't forget to look at complete.tcsh for
86    useful completions...
87
8810) Enjoy.
89
9011) PLEASE file any bug reports (and fixes), code for new features at:
91
92	http://bugs.gw.com/
93
94    Comments, questions, etc. (even flames) are welcome via email to:
95
96	The tcsh bugs mailing list
97	[email protected]
98
99Various:
100
101***************************************************************************
102
103On sysv versions < 3.0 (not hpux) Doug Gwyn's public domain directory
104manipulation library has to be installed. This library is available
105for anonymous ftp from prep.ai.mit.edu:/pub/gnu/dirent.tar.Z
106If the network is not installed, then there is a gethostname()
107routine is tc.os.c
108
109***************************************************************************
110
111On BSDreno, in ttyname() closedir() is called twice and so the same
112pointer gets free'd twice. tcsh's malloc is picky and it prints an
113error message to that effect. If you don't like the message:
114
1151. Apply the following patch:
116
117*** /usr/src/lib/libc/gen/ttyname.c.orig	Fri Jun  1 17:17:15 1990
118--- /usr/src/lib/libc/gen/ttyname.c	Tue Oct 29 16:33:12 1991
119***************
120*** 51,57 ****
121  		if (stat(buf, &sb2) < 0 || sb1.st_dev != sb2.st_dev ||
122  		    sb1.st_ino != sb2.st_ino)
123  			continue;
124- 		closedir(dp);
125  		rval = buf;
126  		break;
127  	}
128--- 51,56 ----
129
130Or: Comment the error printing out in tc.alloc.c
131Or: Compile -DSYSMALLOC
132
133
134***************************************************************************
135
136From: Scott Krotz <[email protected]>
137
138Tcsh has been ported to minix by  Scott Krotz ([email protected]).
139Unfortunately the minix sed is broken, so you'll have to find a way to
140make tc.const.h, sh.err.h, ed.defns.h which are automatically generated.
141The easiest way to create them is to make a copy from unix, copying
142minix to config.h, and then 'make sh.err.h tc.const.h ed.defns.h'
143
144The OS/dependent files are in mi.termios.h, mi.wait.h, mi.varargs.h
145
146You will get some warnings, but dont worry about them, just ignore
147them.  After tcsh has compiled and the gcc binary is converted to a
148minix binary, remember to chmem it to give it more memory - it will
149need it!  How much you need depends on how many aliases you have, etc..
150Add at least 50000 to it.
151
152One last thing.  You might have to make some links for include files so
153that they are in the directories that tcsh is expecting while compiling.
154I forget if I had to do this or not, but it should be fairly easy to sort
155out.  If it cant find any include files this is probably the reason.
156
157If you have any problems, please tell me.  I can be contacted through
158e-mail at:
159
160[email protected]
161
162I also read comp.os.minix on a regular basis, so a note there will get
163my attention also.
164
165Have fun!
166
167ps.  The termios functions are provided by Magnus Doell and Bruce Evans.
168     Thanks, guys!
169
170
171From: Bob Byrnes <[email protected]>
172
173This is for minix 1.5 (straight out of the box from P-H) plus the i386
174patches from Bruce Evans.
175
176I cross-compiled on a Sun using gcc 2.1 with a target of i386-bsd
177(using the minix include files instead of the bsd versions), and then
178linked the resulting object files with similarly compiled crtso.o and
179libc.a on vax (little endian) using a hacked version of ld which I put
180together to generate minix executables instead of bsd a.out format.
181What a kludge ...
182
183I compiled with -O2 -Wall ...  So far I haven't noticed any problems
184with the optimizer.
185
186In case anyone is contemplating compiling tcsh with bcc (Bruce Evan's
187i386 compiler that comes with the minix386 upgrade package), don't bother.
188It is some serious bugs that kill tcsh when compiled for 16-bit characters.
189I can provide more details of bugs that I noticed for brave souls who want
190to try, but it would be hard (and why bother if you can get gcc?).
191
192I can make the binary available to anyone who wants it (for example people
193who can't get access to a cross-compiling environment, and who don't yet
194have gcc running under minix).
195
196
197***************************************************************************
198
199If your compiler cannot handle long symbol names, add
200
201#include "snames.h"
202
203to your config.h file
204
205	     -- Christos Zoulas
206		[email protected]
207
208

README.imake

1
2If you have imake running on your machine, you may skip steps 1 and 2
3described in the README file and try instead the process described here.
4Note that imake is not supported for all the platforms yet, so this
5might not work on your machine. If that is the case please let us know.
6If you can send a patch that fixes the problem we would appreciate it.
7
81. edit imake.config and modify the configurable parameters to your liking.
92. 'xmkmf; make depend; make'
10