home *** CD-ROM | disk | FTP | other *** search
/ GEMini Atari / GEMini_Atari_CD-ROM_Walnut_Creek_December_1993.iso / zip / cli / tcsh.zoo / readme < prev    next >
Text File  |  1991-12-15  |  6KB  |  144 lines

  1. This is tcsh version tcsh 6.00.  Tcsh is a version of the Berkeley
  2. C-Shell, with the addition of: a command line editor, command and file
  3. name completion, listing, etc. and a bunch of small additions to the
  4. shell itself.
  5.  
  6. Tcsh runs on BSD 4.2 and 4.3 Unix, Mach, Sun Unix (tested on 3.0, 3.2,
  7. 3.4, 4.0, 4.1), Pyramid OS/X (in the bsd universe), Encore UMAX 4.2, 
  8. Apple A/UX 2.0, AT&T 3b machines under SysV.2 and V.3, HP/UX
  9. 6.2 on series 300 and 800 machines and all HP machines under HP/UX
  10. 6.5 and 7.0, and will probably work with a bit of tinkering on anything 
  11. else either BSD or SysV-ish.  Note that the above list is incomplete,
  12. and the place to look is the config directory to find a configuration 
  13. file appropriate for your machine. 
  14.  
  15. Feel free to use it.  These changes to csh may only be included in a
  16. commercial product if the inclusion or exclusion does not change the
  17. purchase price, level of support, etc.  Please respect the individual
  18. authors by giving credit where credit is due (in other words, don't
  19. claim that you wrote portions that you haven't, and don't delete the
  20. names of the authors from the source code or documentation).  
  21.  
  22. To install tcsh:
  23.  
  24. 1)  Look at the Makefile and make sure that you are using the right
  25.     compilation flags.
  26.  
  27.     NOTES:
  28.     On a vax using the good ol' BSD compiler 'typedef void sigret_t;' 
  29.     fails in sh.os.h replace with '#define sigret_t void'. No I will not 
  30.     change sh.sig.h. (Both ultrix and 4.3BSD)
  31.  
  32. 2)  Copy the appropriate for your machine and OS config file from the
  33.     config subdirectory into config.h. If you are trying to compile
  34.     tcsh on a machine for which there is no config file yet, you will
  35.     need to create a config file using as a template one of the
  36.     supplied ones.  If you get tcsh working on a new machine, I'd
  37.     appreciate a copy of the config file plus additional information
  38.     about the architecture/OS.  If you are creating a new config file,
  39.     look very hard at BSDJOBS, BSDSIGS, and BSDTIMES if you are running
  40.     a non-BSD machine.  For vanila SysV, these would all be #undef-ed,
  41.     but others may vary (such as A/UX or HPUX).  On a pyramid, compile
  42.     in the UCB universe even if you are running under the ATT universe
  43.     usually; it will work anyway, and you get job control for free.
  44.  
  45. 3)  Look at config_f.h, and enable or disable any features you want.
  46.     It is configured the way I like it, but you may disagree.
  47.     If you do not have NLS, then locale.h will not be found. Undefine it
  48.     and things should work ok. On the other hand, if you have NLS you
  49.     might as well use it...
  50.  
  51. 4)  Look at sh.c to make sure that you have the right #ifdefs to set
  52.     the environment variable "HOSTTYPE" correctly.  If you need to make
  53.     changes, PLEASE SEND THEM BACK TO ME.
  54.  
  55. 5)  You may want to adjust the DESTDIR and DESTMAN entries in the
  56.     Makefile.  These are the directories that tcsh, and the tcsh.1 man
  57.     entry will be placed in when you do a "make install".  If you decide
  58.     to install tcsh somewhere other than in /usr/local/bin/tcsh, you should
  59.     #define _PATH_TCSH "/your/installation/directory/tcsh" in pathnames.h.
  60.  
  61. 6)  make
  62.  
  63. 7)  Read the documentation while you are waiting.  The file tcsh.man
  64.     is in standard [nt]roff -man format.
  65.  
  66. 8)  Test tcsh to see that it has compiled correctly.  The history
  67.     command should give a time stamp on every entry.  Typing normal
  68.     characters should echo each exactly once.  Control-A should put the
  69.     cursor at the beginning of the input line, but after the prompt.
  70.     Typing characters after that should insert them into the line.
  71.     If you have job control make sure that stopping and restarting
  72.     jobs works. Make sure you can ^C in the middle of the input line.
  73.     Also make sure that pipelines work correctly and there
  74.     are no races. Try 'echo | cat | cat | cat | cat | more' a couple
  75.     of times. Also make sure that the ioctl() modes are preserved.
  76.     Get into vi, enter and exit input mode and suspend it, background
  77.     it and foreground it again. After all that, lastly make sure that
  78.     the tty process group manipulation is happening correctly. Try
  79.     ftp to some host. If your passwd appears on the screen, you have
  80.     lost /dev/tty. Otherwise everything is fine. 
  81.  
  82. 9)  Enjoy.
  83.  
  84. 10) PLEASE send any bug reports (and fixes), code for new features,
  85.     comments, questions, etc. (even flames) to:
  86.  
  87.          -- Christos Zoulas
  88.         christos@ee.cornell.edu
  89.  
  90.     SNail:  389 Engineering/Theory Center
  91.         Cornell University,
  92.         Ithaca, NY 14853.
  93.     Phone:    (607) 255-0302
  94.     Fax:    (607) 255-9072
  95.  
  96.  
  97. Various:
  98.  
  99. On sysv versions < 3.0 (not hpux) the public domain directory 
  100. manipulation library has to be installed.
  101. If the network is not installed, then there is a gethostname()
  102. routine is tc.os.c.
  103.  
  104. Note: 
  105.  
  106. On the rs6000, tcsh might not compile cause <sys/time.h>
  107. does not define struct tm; ask your support people for an upgrade,
  108. or apply the following patch:
  109. [You can apply the patch locally, if you don't have root privs. by:
  110.  mkdir sys; cp /usr/include/sys/time.h sys; cd sys; chmod u+w time.h
  111.  apply the patch]
  112. [a version of patch is available from prep.ai.mit.edu in /pub/gnu]
  113.  
  114. This is fixed in the third update of 3.01.  To find out what level of
  115. software the kernel is on a RS/6000, run 'lslpp -h bos.obj'.  The
  116. bottom line of output should be of the form '.... 03.01.XXXX.YYYY'.
  117. The XXXX value is the level of update, eg 0001, 0002, 0003.
  118.  
  119.  
  120. *** /usr/include/sys/time.h    Sat May 19 19:48:53 1990
  121. --- time.h    Wed Oct 31 18:01:08 1990
  122. ***************
  123. *** 1,4 ****
  124. ! /* @(#)time.h    1.24  com/inc/sys,3.1,9021 2/16/90 10:02:16 */
  125.   #ifndef _H_SYS_TIME
  126.   #define _H_SYS_TIME
  127.   
  128. --- 1,4 ----
  129. ! /* @(#)time.h    1.25  com/inc/sys,3.1,9030ct 7/12/90 15:11:35 */
  130.   #ifndef _H_SYS_TIME
  131.   #define _H_SYS_TIME
  132.   
  133. ***************
  134. *** 245,249 ****
  135. --- 245,252 ----
  136.   #define    DST_EET            5    /* Eastern European dst */
  137.   #define    DST_CAN            6    /* Canada */
  138.   
  139. + #ifdef    _BSD_INCLUDES
  140. + #include <time.h>
  141. + #endif    /* _BSD_INCLUDES */
  142.   
  143.   #endif /* _H_SYS_TIME */
  144.