aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMark Peek <mp@FreeBSD.org>2002-07-24 16:23:10 +0000
committerMark Peek <mp@FreeBSD.org>2002-07-24 16:23:10 +0000
commit2930157267fc56387bb43acf5bb441a84ff6e765 (patch)
tree22260a5dd95c2612c939ecc9dc8166877f07d1d1
parentad35f55d4538cb8e6cd9e8eb7185a28e6f477160 (diff)
downloadsrc-2930157267fc56387bb43acf5bb441a84ff6e765.tar.gz
src-2930157267fc56387bb43acf5bb441a84ff6e765.zip
Import of tcsh-6.12.00
Notes
Notes: svn path=/vendor/tcsh/dist/; revision=100616
-rw-r--r--contrib/tcsh/Fixes69
-rw-r--r--contrib/tcsh/Imakefile6
-rw-r--r--contrib/tcsh/Makefile.in16
-rw-r--r--contrib/tcsh/Makefile.std16
-rw-r--r--contrib/tcsh/Makefile.vms6
-rw-r--r--contrib/tcsh/Ported25
-rw-r--r--contrib/tcsh/README2
-rw-r--r--contrib/tcsh/complete.tcsh86
-rwxr-xr-xcontrib/tcsh/config.guess978
-rwxr-xr-xcontrib/tcsh/config.sub464
-rw-r--r--contrib/tcsh/config/bsd4.41
-rw-r--r--contrib/tcsh/config_f.h13
-rwxr-xr-xcontrib/tcsh/configure129
-rw-r--r--contrib/tcsh/configure.in16
-rw-r--r--contrib/tcsh/ed.chared.c10
-rw-r--r--contrib/tcsh/ed.decls.h8
-rw-r--r--contrib/tcsh/ed.defns.c10
-rw-r--r--contrib/tcsh/ed.h42
-rw-r--r--contrib/tcsh/ed.init.c15
-rw-r--r--contrib/tcsh/ed.inputl.c26
-rw-r--r--contrib/tcsh/ed.refresh.c10
-rw-r--r--contrib/tcsh/ed.screen.c10
-rw-r--r--contrib/tcsh/ed.term.c11
-rw-r--r--contrib/tcsh/ed.term.h46
-rw-r--r--contrib/tcsh/ed.xmap.c10
-rw-r--r--contrib/tcsh/gethost.c10
-rw-r--r--contrib/tcsh/glob.36
-rw-r--r--contrib/tcsh/glob.c6
-rw-r--r--contrib/tcsh/glob.h10
-rw-r--r--contrib/tcsh/host.defs24
-rw-r--r--contrib/tcsh/nls/finnish/set14
-rw-r--r--contrib/tcsh/nls/finnish/set2022
-rw-r--r--contrib/tcsh/nls/pl/set1bin4383 -> 4384 bytes
-rw-r--r--contrib/tcsh/nls/pl/set132
-rw-r--r--contrib/tcsh/nls/pl/set172
-rw-r--r--contrib/tcsh/nls/pl/set1912
-rw-r--r--contrib/tcsh/nls/pl/set252
-rw-r--r--contrib/tcsh/nls/pl/set2020
-rw-r--r--contrib/tcsh/nls/pl/set214
-rw-r--r--contrib/tcsh/nls/pl/set2220
-rw-r--r--contrib/tcsh/nls/pl/set232
-rw-r--r--contrib/tcsh/nls/pl/set264
-rw-r--r--contrib/tcsh/nls/pl/set3bin4928 -> 4928 bytes
-rw-r--r--contrib/tcsh/nls/pl/set304
-rw-r--r--contrib/tcsh/nls/pl/set42
-rw-r--r--contrib/tcsh/nls/pl/set736
-rw-r--r--contrib/tcsh/nls/pl/set94
-rw-r--r--contrib/tcsh/nls/russian/set1102
-rw-r--r--contrib/tcsh/nls/russian/set106
-rw-r--r--contrib/tcsh/nls/russian/set1316
-rw-r--r--contrib/tcsh/nls/russian/set1710
-rw-r--r--contrib/tcsh/nls/russian/set184
-rw-r--r--contrib/tcsh/nls/russian/set194
-rw-r--r--contrib/tcsh/nls/russian/set220
-rw-r--r--contrib/tcsh/nls/russian/set2072
-rw-r--r--contrib/tcsh/nls/russian/set2218
-rw-r--r--contrib/tcsh/nls/russian/set2322
-rw-r--r--contrib/tcsh/nls/russian/set2616
-rw-r--r--contrib/tcsh/nls/russian/set274
-rw-r--r--contrib/tcsh/nls/russian/set39
-rw-r--r--contrib/tcsh/nls/russian/set3013
-rw-r--r--contrib/tcsh/nls/russian/set314
-rw-r--r--contrib/tcsh/nls/russian/set446
-rw-r--r--contrib/tcsh/nls/russian/set64
-rw-r--r--contrib/tcsh/nls/russian/set720
-rw-r--r--contrib/tcsh/nls/russian/set98
-rw-r--r--contrib/tcsh/nls/ukrainian/set1174
-rw-r--r--contrib/tcsh/nls/ukrainian/set1012
-rw-r--r--contrib/tcsh/nls/ukrainian/set1110
-rw-r--r--contrib/tcsh/nls/ukrainian/set124
-rw-r--r--contrib/tcsh/nls/ukrainian/set1316
-rw-r--r--contrib/tcsh/nls/ukrainian/set148
-rw-r--r--contrib/tcsh/nls/ukrainian/set1510
-rw-r--r--contrib/tcsh/nls/ukrainian/set162
-rw-r--r--contrib/tcsh/nls/ukrainian/set1722
-rw-r--r--contrib/tcsh/nls/ukrainian/set184
-rw-r--r--contrib/tcsh/nls/ukrainian/set198
-rw-r--r--contrib/tcsh/nls/ukrainian/set254
-rw-r--r--contrib/tcsh/nls/ukrainian/set2012
-rw-r--r--contrib/tcsh/nls/ukrainian/set212
-rw-r--r--contrib/tcsh/nls/ukrainian/set2220
-rw-r--r--contrib/tcsh/nls/ukrainian/set2312
-rw-r--r--contrib/tcsh/nls/ukrainian/set242
-rw-r--r--contrib/tcsh/nls/ukrainian/set256
-rw-r--r--contrib/tcsh/nls/ukrainian/set2618
-rw-r--r--contrib/tcsh/nls/ukrainian/set2712
-rw-r--r--contrib/tcsh/nls/ukrainian/set294
-rw-r--r--contrib/tcsh/nls/ukrainian/set32
-rw-r--r--contrib/tcsh/nls/ukrainian/set308
-rw-r--r--contrib/tcsh/nls/ukrainian/set3110
-rw-r--r--contrib/tcsh/nls/ukrainian/set42
-rw-r--r--contrib/tcsh/nls/ukrainian/set54
-rw-r--r--contrib/tcsh/nls/ukrainian/set68
-rw-r--r--contrib/tcsh/nls/ukrainian/set710
-rw-r--r--contrib/tcsh/nls/ukrainian/set86
-rw-r--r--contrib/tcsh/nls/ukrainian/set94
-rw-r--r--contrib/tcsh/patchlevel.h8
-rw-r--r--contrib/tcsh/pathnames.h8
-rw-r--r--contrib/tcsh/sh.c117
-rw-r--r--contrib/tcsh/sh.char.c39
-rw-r--r--contrib/tcsh/sh.char.h9
-rw-r--r--contrib/tcsh/sh.decls.h16
-rw-r--r--contrib/tcsh/sh.dir.c34
-rw-r--r--contrib/tcsh/sh.dir.h8
-rw-r--r--contrib/tcsh/sh.dol.c18
-rw-r--r--contrib/tcsh/sh.err.c10
-rw-r--r--contrib/tcsh/sh.exec.c51
-rw-r--r--contrib/tcsh/sh.exp.c14
-rw-r--r--contrib/tcsh/sh.file.c95
-rw-r--r--contrib/tcsh/sh.func.c72
-rw-r--r--contrib/tcsh/sh.glob.c25
-rw-r--r--contrib/tcsh/sh.h43
-rw-r--r--contrib/tcsh/sh.hist.c14
-rw-r--r--contrib/tcsh/sh.init.c10
-rw-r--r--contrib/tcsh/sh.lex.c35
-rw-r--r--contrib/tcsh/sh.misc.c10
-rw-r--r--contrib/tcsh/sh.parse.c10
-rw-r--r--contrib/tcsh/sh.print.c10
-rw-r--r--contrib/tcsh/sh.proc.c10
-rw-r--r--contrib/tcsh/sh.proc.h8
-rw-r--r--contrib/tcsh/sh.sem.c33
-rw-r--r--contrib/tcsh/sh.set.c32
-rw-r--r--contrib/tcsh/sh.time.c12
-rw-r--r--contrib/tcsh/sh.types.h8
-rw-r--r--contrib/tcsh/tc.alloc.c10
-rw-r--r--contrib/tcsh/tc.bind.c10
-rw-r--r--contrib/tcsh/tc.const.c16
-rw-r--r--contrib/tcsh/tc.decls.h8
-rw-r--r--contrib/tcsh/tc.disc.c12
-rw-r--r--contrib/tcsh/tc.func.c44
-rw-r--r--contrib/tcsh/tc.h8
-rw-r--r--contrib/tcsh/tc.os.c10
-rw-r--r--contrib/tcsh/tc.os.h11
-rw-r--r--contrib/tcsh/tc.printf.c74
-rw-r--r--contrib/tcsh/tc.prompt.c36
-rw-r--r--contrib/tcsh/tc.sched.c13
-rw-r--r--contrib/tcsh/tc.sig.c10
-rw-r--r--contrib/tcsh/tc.sig.h20
-rw-r--r--contrib/tcsh/tc.str.c10
-rw-r--r--contrib/tcsh/tc.vers.c19
-rw-r--r--contrib/tcsh/tc.wait.h12
-rw-r--r--contrib/tcsh/tc.who.c14
-rw-r--r--contrib/tcsh/tcsh.man72
-rw-r--r--contrib/tcsh/tw.color.c20
-rw-r--r--contrib/tcsh/tw.comp.c15
-rw-r--r--contrib/tcsh/tw.decls.h8
-rw-r--r--contrib/tcsh/tw.h8
-rw-r--r--contrib/tcsh/tw.help.c10
-rw-r--r--contrib/tcsh/tw.init.c12
-rw-r--r--contrib/tcsh/tw.parse.c16
-rw-r--r--contrib/tcsh/tw.spell.c10
151 files changed, 2531 insertions, 1871 deletions
diff --git a/contrib/tcsh/Fixes b/contrib/tcsh/Fixes
index f48808e57199..21cdebf3d016 100644
--- a/contrib/tcsh/Fixes
+++ b/contrib/tcsh/Fixes
@@ -1,9 +1,76 @@
+ 57. misc cleanups.
+ 56. V6.11.05 - 20020712
+ 55. We should have socklen_t in the INET6 case, but we leave int otherwise.
+ 54. Fixed for Darwin/Rhapsody (Mark Peek)
+ 53. provide new config.sub and config.guess from ftp://ftp.gnu.org/gnu/config/
+ (Nelson Beebe)
+ 52. V6.11.04 - 20020709
+ 51. Dissallow setting of environment variables that do not contain
+ alphanumeric names (Ton Voon)
+ 50. Don't expand path components that don't resolve to path names (Jonathan
+ Chen)
+ 49. Make $ignoreeof agree with the man page (Matias Moreno Meringer)
+ 48. Fix argument passing in tc.prompt.c expdollar (Nelson Beebe)
+ 47. Completion fixes from FreeBSD (Mark Peek)
+ 46. FreeBSD's sbsize limit (Mark Peek)
+ 45. Fix repeat 3 repeat 2 echo foo
+ 44. Fix I/O redirection in scripts (Ian D Allen)
+ 43. Fix ` \\\n ` evaluation (Jean-Luc Leger)
+ 42. add --version (Nelson Beebe)
+ 41. portability fixes for sed (Nelson Beebe)
+ 40. undef sv_handler for AIX's benefit. (Nelson Beebe)
+ 39. Add a test for ss_family that disables IPV6 (linux/ppc, osf/1 have
+ problems) (Nelson Beebe)
+ 38. Disable ipv6 for Apple (Nelson Beebe)
+ 37. Fix darwin configure entry (Nelson Beebe)
+ 36. V6.11.03 - 20020701
+ 35. Add Ian D. Allen's bug list.
+ 34. If we are invoked as csh, default to bsd echo (Matej Vela)
+ 33. Don't close file descriptors too early because setuid scripts fail.
+ (Jill Pryse-Davies)
+ 32. Completion updates (Tom Warzeka)
+ 31. Fix compilation issue on SunOS4 with _POSIX_VDISABLE (Tom Warzeka)
+ 30. ukrainian update (Olexander Kunytsa)
+ 29. DSPMBYTE=utf8 patch (Jean-Luc Leger)
+ 28. fix ipv4 only compilation, remove extra sigsetmask() call (Takayuki Nakao)
+ 27. window change can cause free to be re-entered causing abort (Mark Peek)
+ 26. vp->vec vetting, suggested by Ian Dall.
+ 25. V6.11.02 - 20020516
+ 24. Fix prompt bugs in $var and %c0n (TAKAI Kousuke)
+ 23. Add Cray SV2 config (Rafal Maszkowski)
+ 22. Add pdf manual page (Warren Ferguson)
+ 21. Fix REMOTEHOST lossage in with AF_LOCAL sockets (Tom Mander)
+ 20. Fix win32 break because of TIOCSTI (Amol)
+ 19. Fix TIOCSTI for hpux 11 (Igor Schein)
+ 18. Avoid collapsing paths that refer to non-existent components
+ (Martin Kraemer)
+ 17. Make -shell invocations always treated as a login shell.
+ 16. V6.11.01 - 20020308
+ 15. Fixes to polish nls locale (PaweЁ Niewiadomski)
+ 14. russian locale fixes (Alexey Dokuchaev)
+ 13. document door support (Shaen)
+ 12. tcsh euc handling extensions (Alexey Zelkin)
+ 11. Make sure that jobcmd does not clobber the current job (Rob McMahon)
+ 10. Make sure that the output of verbose and echo do not end up in the
+ command output (Victor I. Pasko)
+ 9. Add %j in prompt [needs more work; is not right the first time
+ after proclist changes] (Hr. Peter Kruse)
+ 8. `` commands with embedded newlines would ignore commands following
+ the new line (Victor I. Pasko)
+ 7. Re-initialize nls if NLSPATH is changed (Naoki Wakamatsu)
+ 6. Fix 64 bit compilation with linux and resource limits.
+ 5. Avoid double globbing when ls-F needs to fork (Joe Townsend)
+ 4. put back csh filec compatible support.
+ 3. add support for quads in xprintf in the presence of gcc.
+ 2. unlimit should set rlim.rlim_max to rlim.rlim_cur if max < cur.
+ 1. Make ~user work again when the home directory is '/'.
+
40. V6.11.00 - 20010902
39. Completion fixes (Tom Warzeka)
38. make c_insert not static so that it can be used from win32 (amol)
37. Fix rmstar not to corrupt memory when we say no. (Mark Peek)
36. V6.10.02 - 20010806
- 35. polish nls locale (PaweЁ New)
+ 35. polish nls locale (PaweЁ Niewiadomski))
34. Fix a tcsetattr race running background jobs as the last line on an xterm
window (Andrew Brown)
33. jobcmd alias (Greg Parker)
diff --git a/contrib/tcsh/Imakefile b/contrib/tcsh/Imakefile
index 4d3295264d7d..d8daca5db67e 100644
--- a/contrib/tcsh/Imakefile
+++ b/contrib/tcsh/Imakefile
@@ -1,7 +1,7 @@
XCOMM
-XCOMM $Id: Imakefile,v 1.79 2001/09/02 21:16:24 christos Exp $
+XCOMM $Id: Imakefile,v 1.81 2002/07/23 16:18:31 christos Exp $
XCOMM
-XCOMM Imakefile for tcsh 6.11
+XCOMM Imakefile for tcsh 6.12
XCOMM Marc Horowitz, MIT SIPB
XCOMM
@@ -480,7 +480,7 @@ LDLIBS = MyLibs
#endif
SUF = o
-VERSION = 6.11
+VERSION = 6.12
SHSRCS= sh.c sh.dir.c sh.dol.c sh.err.c sh.exec.c sh.char.c \
sh.exp.c sh.file.c sh.func.c sh.glob.c sh.hist.c sh.init.c \
diff --git a/contrib/tcsh/Makefile.in b/contrib/tcsh/Makefile.in
index d07d000d9ef2..56abb0b2f3dc 100644
--- a/contrib/tcsh/Makefile.in
+++ b/contrib/tcsh/Makefile.in
@@ -1,4 +1,4 @@
-# $Id: Makefile.in,v 3.16 2001/09/02 21:16:25 christos Exp $
+# $Id: Makefile.in,v 3.19 2002/07/23 16:13:21 christos Exp $
# Makefile.in 4.3 6/11/83
#
# C Shell with process control; VM/UNIX VAX Makefile
@@ -8,7 +8,7 @@
# things; Paul Placeway, CIS Dept., Ohio State University
#
SHELL=/bin/sh
-VERSION=6.11
+VERSION=6.12
BUILD=tcsh
VPATH=@srcdir@
srcdir=@srcdir@
@@ -295,11 +295,11 @@ PSSRCS= sh.decls.h glob.c glob.h mi.termios.c mi.wait.h mi.varargs.h ma.setp.c \
vms.termcap.c
SHSRCS= ${ASSRCS} ${PSSRCS}
SHOBJS= sh.${SUF} sh.dir.${SUF} sh.dol.${SUF} sh.err.${SUF} sh.exec.${SUF} \
- sh.char.${SUF} sh.exp.${SUF} sh.func.${SUF} sh.glob.${SUF} \
- sh.hist.${SUF} sh.init.${SUF} sh.lex.${SUF} sh.misc.${SUF} \
- sh.parse.${SUF} sh.print.${SUF} sh.proc.${SUF} sh.sem.${SUF} \
- sh.set.${SUF} sh.time.${SUF} glob.${SUF} mi.termios.${SUF} \
- ma.setp.${SUF} vms.termcap.${SUF}
+ sh.char.${SUF} sh.exp.${SUF} sh.file.${SUF} sh.func.${SUF} \
+ sh.glob.${SUF} sh.hist.${SUF} sh.init.${SUF} sh.lex.${SUF} \
+ sh.misc.${SUF} sh.parse.${SUF} sh.print.${SUF} sh.proc.${SUF} \
+ sh.sem.${SUF} sh.set.${SUF} sh.time.${SUF} glob.${SUF} \
+ mi.termios.${SUF} ma.setp.${SUF} vms.termcap.${SUF}
TWSRCS= tw.decls.h tw.h tw.help.c tw.init.c tw.parse.c tw.spell.c \
tw.comp.c tw.color.c
@@ -431,7 +431,7 @@ tc.const.h: tc.const.c sh.char.h config.h config_f.h sh.types.h sh.err.h
@echo '#define _h_tc_const' >> $@
${CPP} $(CPPFLAGS) ${DFLAGS} ${EXTRAFLAGS} -D_h_tc_const\
$(srcdir)/tc.const.c | grep 'Char STR' | \
- sed -e 's/Char \([a-zA-Z0-9_]*\)\[\].*/extern Char \1[];/' | \
+ sed -e 's/Char \([a-zA-Z0-9_]*\) *\[ *\].*/extern Char \1[];/' | \
sort >> $@
@echo '#endif /* _h_tc_const */' >> $@
diff --git a/contrib/tcsh/Makefile.std b/contrib/tcsh/Makefile.std
index b6212d286a6b..c114383accf1 100644
--- a/contrib/tcsh/Makefile.std
+++ b/contrib/tcsh/Makefile.std
@@ -1,4 +1,4 @@
-# $Id: Makefile.std,v 1.92 2001/09/02 21:16:25 christos Exp $
+# $Id: Makefile.std,v 1.95 2002/07/23 16:13:21 christos Exp $
# Makefile.std 4.3 6/11/83
#
# C Shell with process control; VM/UNIX VAX Makefile
@@ -8,7 +8,7 @@
# things; Paul Placeway, CIS Dept., Ohio State University
#
SHELL=/bin/sh
-VERSION=6.11
+VERSION=6.12
BUILD=tcsh
srcdir=.
@@ -291,11 +291,11 @@ PSSRCS= sh.decls.h glob.c glob.h mi.termios.c mi.wait.h mi.varargs.h ma.setp.c \
vms.termcap.c
SHSRCS= ${ASSRCS} ${PSSRCS}
SHOBJS= sh.${SUF} sh.dir.${SUF} sh.dol.${SUF} sh.err.${SUF} sh.exec.${SUF} \
- sh.char.${SUF} sh.exp.${SUF} sh.func.${SUF} sh.glob.${SUF} \
- sh.hist.${SUF} sh.init.${SUF} sh.lex.${SUF} sh.misc.${SUF} \
- sh.parse.${SUF} sh.print.${SUF} sh.proc.${SUF} sh.sem.${SUF} \
- sh.set.${SUF} sh.time.${SUF} glob.${SUF} mi.termios.${SUF} \
- ma.setp.${SUF} vms.termcap.${SUF}
+ sh.char.${SUF} sh.exp.${SUF} sh.file.${SUF} sh.func.${SUF} \
+ sh.glob.${SUF} sh.hist.${SUF} sh.init.${SUF} sh.lex.${SUF} \
+ sh.misc.${SUF} sh.parse.${SUF} sh.print.${SUF} sh.proc.${SUF} \
+ sh.sem.${SUF} sh.set.${SUF} sh.time.${SUF} glob.${SUF} \
+ mi.termios.${SUF} ma.setp.${SUF} vms.termcap.${SUF}
TWSRCS= tw.decls.h tw.h tw.help.c tw.init.c tw.parse.c tw.spell.c \
tw.comp.c tw.color.c
@@ -423,7 +423,7 @@ tc.const.h: tc.const.c sh.char.h config.h config_f.h sh.types.h sh.err.h
@echo '#define _h_tc_const' >> $@
${CPP} $(INCLUDES) ${DFLAGS} ${EXTRAFLAGS} -D_h_tc_const\
$(srcdir)/tc.const.c | grep 'Char STR' | \
- sed -e 's/Char \([a-zA-Z0-9_]*\)\[\].*/extern Char \1[];/' | \
+ sed -e 's/Char \([a-zA-Z0-9_]*\) *\[ *\].*/extern Char \1[];/' | \
sort >> $@
@echo '#endif /* _h_tc_const */' >> $@
diff --git a/contrib/tcsh/Makefile.vms b/contrib/tcsh/Makefile.vms
index 05ce5504ef89..07c8d4a7c818 100644
--- a/contrib/tcsh/Makefile.vms
+++ b/contrib/tcsh/Makefile.vms
@@ -1,4 +1,4 @@
-# $Id: Makefile.vms,v 1.35 2001/09/02 21:16:25 christos Exp $
+# $Id: Makefile.vms,v 1.37 2002/07/23 16:13:21 christos Exp $
# Makefile.vms 4.3 6/11/83
#
# C Shell with process control; VM/UNIX VAX Makefile
@@ -8,7 +8,7 @@
# things; Paul Placeway, CIS Dept., Ohio State University
#
SHELL=/bin/sh
-VERSION=6.11
+VERSION=6.12
BUILD=tcsh
################################################################
@@ -401,7 +401,7 @@ tc.const.h: tc.const.c sh.char.h config.h config_f.h sh.types.h sh.err.h
@echo '\#define _h_tc_const' >> $@
${CC} -E $(INCLUDES) ${DFLAGS} -D_h_tc_const tc.const.c | \
grep 'Char STR' | \
- sed -e 's/Char \([a-zA-Z0-9_]*\)\[\].*/extern Char \1[];/' | \
+ sed -e 's/Char \([a-zA-Z0-9_]*\) *\[ *\].*/extern Char \1[];/' | \
sort >> $@
@echo '\#endif /* _h_tc_const */' >> $@
diff --git a/contrib/tcsh/Ported b/contrib/tcsh/Ported
index 2d8c12cd0b73..43d29bcac914 100644
--- a/contrib/tcsh/Ported
+++ b/contrib/tcsh/Ported
@@ -165,7 +165,7 @@ NOTES : Does Ultrix 4.x still need YPBUGS?
NOTES : Ultrix4.2 may need NAMEI_BUG
VERSION : 6.09.00
-VENDOR : apple
+VENDOR : Apple
MODELS : macII
COMPILER: cc
CFLAGS : normal (-ZP)
@@ -353,6 +353,17 @@ ENVIRON : n/a
NOTES : none
VERSION : 6.08
+VENDOR : Cray Research
+MODELS : SV1, probably also SV2
+COMPILER: cc
+CFLAGS : normal
+LIBES : -ltermlib
+OS : Unicos 10.0.1.0
+CONFIG : cray
+ENVIRON : n/a
+NOTES : none
+VERSION : 6.11
+
VENDOR : pyramid
MODELS : MIS4/2T
COMPILER: cc
@@ -388,9 +399,19 @@ CFLAGS : -O3 -pipe -g -arch ppc -arch i386 -UNeXT
OS : Rhapsody 5
CONFIG : rhapsody
ENVIRON : n/a
-NOTES : CFLAGS="-O3 -pipe -g -arch ppc -arch i386 -UNeXT" configure && make
+NOTES : CFLAGS="-O3 -pipe -g -UNeXT" configure && make
VERSION : 6.08.00
+VENDOR : Apple
+MODELS : any
+COMPILER: cc
+CFLAGS : -O3 -pipe -g -arch ppc -arch i386
+OS : Darwin
+CONFIG : darwin
+ENVIRON : n/a
+NOTES : CFLAGS="-O3 -pipe -g -arch ppc -arch i386 -UNeXT" configure && make
+VERSION : 6.11.05
+
VENDOR : Heurikon
MODELS : HK68
COMPILER: gcc (Green Hills C-68000)
diff --git a/contrib/tcsh/README b/contrib/tcsh/README
index 4c86b635f232..57198b96077e 100644
--- a/contrib/tcsh/README
+++ b/contrib/tcsh/README
@@ -1,4 +1,4 @@
-This is tcsh version 6.11. Tcsh is a version of the Berkeley
+This is tcsh version 6.12. Tcsh is a version of the Berkeley
C-Shell, with the addition of: a command line editor, command and file
name completion, listing, etc. and a bunch of small additions to the
shell itself.
diff --git a/contrib/tcsh/complete.tcsh b/contrib/tcsh/complete.tcsh
index c1b6c9d07e01..2e0df5d3df28 100644
--- a/contrib/tcsh/complete.tcsh
+++ b/contrib/tcsh/complete.tcsh
@@ -1,5 +1,5 @@
#
-# $Id: complete.tcsh,v 1.37 2001/09/02 21:06:02 christos Exp $
+# $Id: complete.tcsh,v 1.40 2002/07/07 15:37:20 christos Exp $
# example file using the new completion code
#
@@ -21,16 +21,20 @@ endif
if ($?_complete) then
set noglob
- set hosts
+ if ( ! $?hosts ) set hosts
foreach f ($HOME/.hosts /usr/local/etc/csh.hosts $HOME/.rhosts /etc/hosts.equiv)
if ( -r $f ) then
- set hosts = ($hosts `grep -v "+" $f | tr -s " " " " | cut -f 1`)
+ set hosts = ($hosts `grep -v "+" $f | grep -E -v "^#" | tr -s " " " " | cut -f 1`)
endif
end
if ( -r $HOME/.netrc ) then
set f=`awk '/machine/ { print $2 }' < $HOME/.netrc` >& /dev/null
set hosts=($hosts $f)
endif
+ if ( -r $HOME/.ssh/known_hosts ) then
+ set f=`cat $HOME/.ssh/known_hosts | cut -f 1 -d \ ` >& /dev/null
+ set hosts=($hosts $f)
+ endif
unset f
if ( ! $?hosts ) then
set hosts=(hyperion.ee.cornell.edu phaeton.ee.cornell.edu \
@@ -416,7 +420,7 @@ if ($?_complete) then
endif
# from George Cox
- complete acroread 'p/*/f:*.pdf/'
+ complete acroread 'p/*/f:*.{pdf,PDF}/'
complete apachectl 'c/*/(start stop restart fullstatus status graceful \
configtest help)/'
complete appletviewer 'p/*/f:*.class/'
@@ -652,30 +656,36 @@ if ($?_complete) then
endif
unset _maildir
- if (-r /usr/share/man) then
- set _man_dir = /usr/share/man
- else
- set _man_dir = /usr/man
+ if (! $?MANPATH) then
+ if (-r /usr/share/man) then
+ setenv MANPATH /usr/share/man:
+ else
+ setenv MANPATH /usr/man:
+ endif
endif
+
+ # use of $MANPATH from Dan Nicolaescu <dann@ics.uci.edu>
+ # use of 'find' adapted from Lubomir Host <host8@kepler.fmph.uniba.sk>
complete man \
- n@0@\`if\ \(-r\ $_man_dir/man0\)\ \\ls\ -1\ $_man_dir/man0\ \|\ sed\ s%\\\.0.\\\*\\\$%%\`@ \
- n@1@\`if\ \(-r\ $_man_dir/man1\)\ \\ls\ -1\ $_man_dir/man1\ \|\ sed\ s%\\\.1.\\\*\\\$%%\`@ \
- n@2@\`if\ \(-r\ $_man_dir/man2\)\ \\ls\ -1\ $_man_dir/man2\ \|\ sed\ s%\\\.2.\\\*\\\$%%\`@ \
- n@3@\`if\ \(-r\ $_man_dir/man3\)\ \\ls\ -1\ $_man_dir/man3\ \|\ sed\ s%\\\.3.\\\*\\\$%%\`@ \
- n@4@\`if\ \(-r\ $_man_dir/man4\)\ \\ls\ -1\ $_man_dir/man4\ \|\ sed\ s%\\\.4.\\\*\\\$%%\`@ \
- n@5@\`if\ \(-r\ $_man_dir/man5\)\ \\ls\ -1\ $_man_dir/man5\ \|\ sed\ s%\\\.5.\\\*\\\$%%\`@ \
- n@6@\`if\ \(-r\ $_man_dir/man6\)\ \\ls\ -1\ $_man_dir/man6\ \|\ sed\ s%\\\.6.\\\*\\\$%%\`@ \
- n@7@\`if\ \(-r\ $_man_dir/man7\)\ \\ls\ -1\ $_man_dir/man7\ \|\ sed\ s%\\\.7.\\\*\\\$%%\`@ \
- n@8@\`if\ \(-r\ $_man_dir/man8\)\ \\ls\ -1\ $_man_dir/man8\ \|\ sed\ s%\\\.8.\\\*\\\$%%\`@ \
- n@9@\`if\ \(-r\ $_man_dir/man9\)\ \\ls\ -1\ $_man_dir/man9\ \|\ sed\ s%\\\.9.\\\*\\\$%%\`@ \
- n@new@\`if\ \(-r\ $_man_dir/mann\)\ \\ls\ -1\ $_man_dir/mann\ \|\ sed\ s%\\\.n.\\\*\\\$%%\`@ \
- n@old@\`if\ \(-r\ $_man_dir/mano\)\ \\ls\ -1\ $_man_dir/mano\ \|\ sed\ s%\\\.o.\\\*\\\$%%\`@ \
- n@local@\`if\ \(-r\ $_man_dir/manl\)\ \\ls\ -1\ $_man_dir/manl\ \|\ sed\ s%\\\.l.\\\*\\\$%%\`@ \
- n@public@\`if\ \(-r\ $_man_dir/manp\)\ \\ls\ -1\ $_man_dir/manp\ \|\ sed\ s%\\\.p.\\\*\\\$%%\`@ \
- c@-@"(- f k M P s t)"@ n@-f@c@ n@-k@x:'<keyword>'@ n@-[MP]@d@ \
- n@-s@\`\\ls\ -1\ $_man_dir\ \|\ sed\ -n\ s%man%%p\`@ \
- N@-[MP]@'`\ls -1 $:-1/man? | sed s%\\..\*\$%%`'@ n@*@c@
- unset _man_dir
+ 'n@1@`set q = "$MANPATH:as%:%/man1 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.1.\*\$%%`@'\
+ 'n@2@`set q = "$MANPATH:as%:%/man2 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.2.\*\$%%`@'\
+ 'n@3@`set q = "$MANPATH:as%:%/man3 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.3.\*\$%%`@'\
+ 'n@4@`set q = "$MANPATH:as%:%/man4 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.4.\*\$%%`@'\
+ 'n@5@`set q = "$MANPATH:as%:%/man5 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.5.\*\$%%`@'\
+ 'n@6@`set q = "$MANPATH:as%:%/man6 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.6.\*\$%%`@'\
+ 'n@7@`set q = "$MANPATH:as%:%/man7 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.7.\*\$%%`@'\
+ 'n@8@`set q = "$MANPATH:as%:%/man8 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.8.\*\$%%`@'\
+ 'n@9@`set q = "$MANPATH:as%:%/man9 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.9.\*\$%%`@'\
+ 'n@0@`set q = "$MANPATH:as%:%/man0 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.0.\*\$%%`@'\
+ 'n@n@`set q = "$MANPATH:as%:%/mann %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.n.\*\$%%`@'\
+ 'n@o@`set q = "$MANPATH:as%:%/mano %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.o.\*\$%%`@'\
+ 'n@l@`set q = "$MANPATH:as%:%/manl %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.l.\*\$%%`@'\
+ 'n@p@`set q = "$MANPATH:as%:%/manp %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.p.\*\$%%`@'\
+ c@-@"(- f k M P s S t)"@ n@-f@c@ n@-k@x:'<keyword>'@ n@-[MP]@d@ \
+ 'N@-[MP]@`\ls -1 $:-1/man? |& sed -n s%\\..\\+\$%%p`@' \
+ 'n@-[sS]@`\ls -1 $MANPATH:as%:% % |& sed -n s%^man%%p | sort -u`@'\
+ 'n@*@`find $MANPATH:as%:% % \( -type f -o -type l \) -printf "%f " |& sed -e "s%find: .*: No such file or directory%%" -e "s%\([^\.]\+\)\.\([^ ]*\) %\1 %g"`@'
+ #n@*@c@ # old way -- commands only
complete ps c/-t/x:'<tty>'/ c/-/"(a c C e g k l S t u v w x)"/ \
n/-k/x:'<kernel>'/ N/-k/x:'<core_file>'/ n/*/x:'<PID>'/
@@ -686,15 +696,27 @@ if ($?_complete) then
complete uudecode c/-/"(f)"/ n/-f/f:*.{uu,UU}/ p/1/f:*.{uu,UU}/ n/*/n/
complete xhost c/[+-]/\$hosts/ n/*/\$hosts/
+ complete xpdf c/-/"(z g remote raise quit cmap rgb papercolor \
+ eucjp t1lib freetype ps paperw paperh level1 \
+ upw fullscreen cmd q v h help)"/ \
+ n/-z/x:'<zoom (-5 .. +5) or "page" or "width">'/ \
+ n/-g/x:'<geometry>'/ n/-remote/x:'<name>'/ \
+ n/-rgb/x:'<number>'/ n/-papercolor/x:'<color>'/ \
+ n/-{t1lib,freetype}/x:'<font_type>'/ \
+ n/-ps/x:'<PS_file>'/ n/-paperw/x:'<width>'/ \
+ n/-paperh/x:'<height>'/ n/-upw/x:'<password>'/ \
+ n/-/f:*.{pdf,PDF}/ \
+ N/-{z,g,remote,rgb,papercolor,t1lib,freetype,ps,paperw,paperh,upw}/f:*.{pdf,PDF}/ \
+ N/-/x:'<page>'/ p/1/f:*.{pdf,PDF}/ p/2/x:'<page>'/
# these conform to the latest GNU versions available at press time ...
# updates by John Gotts <jgotts@engin.umich.edu>
if (-X emacs) then
# TW note: if your version of GNU Emacs supports the "--version" option,
# uncomment this line and comment the next to automatically
- # detect the version, else replace "20.7" with your version.
- #set _emacs_ver=`emacs --version | head -1 | sed 's%GNU Emacs %%' | cut -d . -f1-2`
- set _emacs_ver=20.7
+ # detect the version, else replace "21.2" with your version.
+ #set _emacs_ver=`emacs --version | sed -e 's%GNU Emacs %%' -e q | cut -d . -f1-2`
+ set _emacs_ver=21.2
set _emacs_dir=`which emacs | sed s%/bin/emacs%%`
complete emacs c/--/"(batch terminal display no-windows no-init-file \
user debug-init unibyte multibyte version help \
@@ -707,6 +729,7 @@ if ($?_complete) then
unset _emacs_ver _emacs_dir
endif
+ # if your "zcat" is the GNU version, change "gzcat" below to just "zcat"
complete gzcat c/--/"(force help license quiet version)"/ \
c/-/"(f h L q V -)"/ n/*/f:*.{gz,Z,z,zip}/
complete gzip c/--/"(stdout to-stdout decompress uncompress \
@@ -777,6 +800,11 @@ if ($?_complete) then
p/1/x:'<fixed_string>'/ N/-*e/f/ \
n/-*e/x:'<fixed_string>'/ n/-*f/f/ n/*/f/
+ complete sed c/--/"(quiet silent version help expression file)"/ \
+ c/-/"(n V e f -)"/ n/{-e,--expression}/x:'<script>'/ \
+ n/{-f,--file}/f:*.sed/ N/-{e,f,-{file,expression}}/f/ \
+ n/-/x:'<script>'/ N/-/f/ p/1/x:'<script>'/ p/2/f/
+
complete users c/--/"(help version)"/ p/1/x:'<accounting_file>'/
complete who c/--/"(heading idle count mesg message writable help \
version)"/ c/-/"(H i m q s T w u -)"/ \
diff --git a/contrib/tcsh/config.guess b/contrib/tcsh/config.guess
index e1b587170801..ffcb6435df7f 100755
--- a/contrib/tcsh/config.guess
+++ b/contrib/tcsh/config.guess
@@ -1,8 +1,10 @@
#! /bin/sh
# Attempt to guess a canonical system name.
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999
-# Free Software Foundation, Inc.
-#
+# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
+# 2000, 2001, 2002 Free Software Foundation, Inc.
+
+timestamp='2002-07-09'
+
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
@@ -22,52 +24,205 @@
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
-# Written by Per Bothner <bothner@cygnus.com>.
-# The master version of this file is at the FSF in /home/gd/gnu/lib.
-# Please send patches to <autoconf-patches@gnu.org>.
+# Originally written by Per Bothner <per@bothner.com>.
+# Please send patches to <config-patches@gnu.org>. Submit a context
+# diff and a properly formatted ChangeLog entry.
#
# This script attempts to guess a canonical system name similar to
# config.sub. If it succeeds, it prints the system name on stdout, and
# exits with 0. Otherwise, it exits with 1.
#
# The plan is that this can be called by configure scripts if you
-# don't specify an explicit system type (host/target name).
-#
-# Only a few systems have been added to this list; please add others
-# (but try to keep the structure clean).
-#
+# don't specify an explicit build system type.
-# Use $HOST_CC if defined. $CC may point to a cross-compiler
-if test x"$CC_FOR_BUILD" = x; then
- if test x"$HOST_CC" != x; then
- CC_FOR_BUILD="$HOST_CC"
- else
- if test x"$CC" != x; then
- CC_FOR_BUILD="$CC"
- else
- CC_FOR_BUILD=cc
- fi
- fi
+me=`echo "$0" | sed -e 's,.*/,,'`
+
+usage="\
+Usage: $0 [OPTION]
+
+Output the configuration name of the system \`$me' is run on.
+
+Operation modes:
+ -h, --help print this help, then exit
+ -t, --time-stamp print date of last modification, then exit
+ -v, --version print version number, then exit
+
+Report bugs and patches to <config-patches@gnu.org>."
+
+version="\
+GNU config.guess ($timestamp)
+
+Originally written by Per Bothner.
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
+Free Software Foundation, Inc.
+
+This is free software; see the source for copying conditions. There is NO
+warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
+
+help="
+Try \`$me --help' for more information."
+
+# Parse command line
+while test $# -gt 0 ; do
+ case $1 in
+ --time-stamp | --time* | -t )
+ echo "$timestamp" ; exit 0 ;;
+ --version | -v )
+ echo "$version" ; exit 0 ;;
+ --help | --h* | -h )
+ echo "$usage"; exit 0 ;;
+ -- ) # Stop option processing
+ shift; break ;;
+ - ) # Use stdin as input.
+ break ;;
+ -* )
+ echo "$me: invalid option $1$help" >&2
+ exit 1 ;;
+ * )
+ break ;;
+ esac
+done
+
+if test $# != 0; then
+ echo "$me: too many arguments$help" >&2
+ exit 1
fi
+trap 'exit 1' 1 2 15
+
+# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
+# compiler to aid in system detection is discouraged as it requires
+# temporary files to be created and, as you can see below, it is a
+# headache to deal with in a portable fashion.
+
+# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
+# use `HOST_CC' if defined, but it is deprecated.
+
+# This shell variable is my proudest work .. or something. --bje
+
+set_cc_for_build='tmpdir=${TMPDIR-/tmp}/config-guess-$$ ;
+(old=`umask` && umask 077 && mkdir $tmpdir && umask $old && unset old)
+ || (echo "$me: cannot create $tmpdir" >&2 && exit 1) ;
+dummy=$tmpdir/dummy ;
+files="$dummy.c $dummy.o $dummy.rel $dummy" ;
+trap '"'"'rm -f $files; rmdir $tmpdir; exit 1'"'"' 1 2 15 ;
+case $CC_FOR_BUILD,$HOST_CC,$CC in
+ ,,) echo "int x;" > $dummy.c ;
+ for c in cc gcc c89 c99 ; do
+ if ($c $dummy.c -c -o $dummy.o) >/dev/null 2>&1 ; then
+ CC_FOR_BUILD="$c"; break ;
+ fi ;
+ done ;
+ rm -f $files ;
+ if test x"$CC_FOR_BUILD" = x ; then
+ CC_FOR_BUILD=no_compiler_found ;
+ fi
+ ;;
+ ,,*) CC_FOR_BUILD=$CC ;;
+ ,*,*) CC_FOR_BUILD=$HOST_CC ;;
+esac ;
+unset files'
# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
-# (ghazi@noc.rutgers.edu 8/24/94.)
+# (ghazi@noc.rutgers.edu 1994-08-24)
if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
PATH=$PATH:/.attbin ; export PATH
fi
UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
-UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
+UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
-dummy=dummy-$$
-trap 'rm -f $dummy.c $dummy.o $dummy; exit 1' 1 2 15
-
# Note: order is significant - the case branches are not exclusive.
case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
+ *:NetBSD:*:*)
+ # NetBSD (nbsd) targets should (where applicable) match one or
+ # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
+ # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
+ # switched to ELF, *-*-netbsd* would select the old
+ # object file format. This provides both forward
+ # compatibility and a consistent mechanism for selecting the
+ # object file format.
+ #
+ # Note: NetBSD doesn't particularly care about the vendor
+ # portion of the name. We always set it to "unknown".
+ sysctl="sysctl -n hw.machine_arch"
+ UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
+ /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
+ case "${UNAME_MACHINE_ARCH}" in
+ armeb) machine=armeb-unknown ;;
+ arm*) machine=arm-unknown ;;
+ sh3el) machine=shl-unknown ;;
+ sh3eb) machine=sh-unknown ;;
+ *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
+ esac
+ # The Operating System including object format, if it has switched
+ # to ELF recently, or will in the future.
+ case "${UNAME_MACHINE_ARCH}" in
+ arm*|i386|m68k|ns32k|sh3*|sparc|vax)
+ eval $set_cc_for_build
+ if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
+ | grep __ELF__ >/dev/null
+ then
+ # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
+ # Return netbsd for either. FIX?
+ os=netbsd
+ else
+ os=netbsdelf
+ fi
+ ;;
+ *)
+ os=netbsd
+ ;;
+ esac
+ # The OS release
+ release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
+ # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
+ # contains redundant information, the shorter form:
+ # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
+ echo "${machine}-${os}${release}"
+ exit 0 ;;
+ amiga:OpenBSD:*:*)
+ echo m68k-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ arc:OpenBSD:*:*)
+ echo mipsel-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ hp300:OpenBSD:*:*)
+ echo m68k-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ mac68k:OpenBSD:*:*)
+ echo m68k-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ macppc:OpenBSD:*:*)
+ echo powerpc-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ mvme68k:OpenBSD:*:*)
+ echo m68k-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ mvme88k:OpenBSD:*:*)
+ echo m88k-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ mvmeppc:OpenBSD:*:*)
+ echo powerpc-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ pmax:OpenBSD:*:*)
+ echo mipsel-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ sgi:OpenBSD:*:*)
+ echo mipseb-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ sun3:OpenBSD:*:*)
+ echo m68k-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ wgrisc:OpenBSD:*:*)
+ echo mipsel-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ *:OpenBSD:*:*)
+ echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
alpha:OSF1:*:*)
if test $UNAME_RELEASE = "V4.0"; then
UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
@@ -77,44 +232,58 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
# A Xn.n version is an unreleased experimental baselevel.
# 1.2 uses "1.2" for uname -r.
cat <<EOF >$dummy.s
+ .data
+\$Lformat:
+ .byte 37,100,45,37,120,10,0 # "%d-%x\n"
+
+ .text
.globl main
+ .align 4
.ent main
main:
- .frame \$30,0,\$26,0
- .prologue 0
- .long 0x47e03d80 # implver $0
- lda \$2,259
- .long 0x47e20c21 # amask $2,$1
- srl \$1,8,\$2
- sll \$2,2,\$2
- sll \$0,3,\$0
- addl \$1,\$0,\$0
- addl \$2,\$0,\$0
- ret \$31,(\$26),1
+ .frame \$30,16,\$26,0
+ ldgp \$29,0(\$27)
+ .prologue 1
+ .long 0x47e03d80 # implver \$0
+ lda \$2,-1
+ .long 0x47e20c21 # amask \$2,\$1
+ lda \$16,\$Lformat
+ mov \$0,\$17
+ not \$1,\$18
+ jsr \$26,printf
+ ldgp \$29,0(\$26)
+ mov 0,\$16
+ jsr \$26,exit
.end main
EOF
+ eval $set_cc_for_build
$CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
if test "$?" = 0 ; then
- ./$dummy
- case "$?" in
- 7)
+ case `$dummy` in
+ 0-0)
UNAME_MACHINE="alpha"
;;
- 15)
+ 1-0)
UNAME_MACHINE="alphaev5"
;;
- 14)
+ 1-1)
UNAME_MACHINE="alphaev56"
;;
- 10)
+ 1-101)
UNAME_MACHINE="alphapca56"
;;
- 16)
+ 2-303)
UNAME_MACHINE="alphaev6"
;;
+ 2-307)
+ UNAME_MACHINE="alphaev67"
+ ;;
+ 2-1307)
+ UNAME_MACHINE="alphaev68"
+ ;;
esac
fi
- rm -f $dummy.s $dummy
+ rm -f $dummy.s $dummy && rmdir $tmpdir
echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
exit 0 ;;
Alpha\ *:Windows_NT*:*)
@@ -127,34 +296,13 @@ EOF
echo alpha-dec-winnt3.5
exit 0 ;;
Amiga*:UNIX_System_V:4.0:*)
- echo m68k-cbm-sysv4
+ echo m68k-unknown-sysv4
exit 0;;
- amiga:NetBSD:*:*)
- echo m68k-cbm-netbsd${UNAME_RELEASE}
- exit 0 ;;
- amiga:OpenBSD:*:*)
- echo m68k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
*:[Aa]miga[Oo][Ss]:*:*)
echo ${UNAME_MACHINE}-unknown-amigaos
exit 0 ;;
- arc64:OpenBSD:*:*)
- echo mips64el-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- arc:OpenBSD:*:*)
- echo mipsel-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- hkmips:OpenBSD:*:*)
- echo mips-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- pmax:OpenBSD:*:*)
- echo mipsel-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- sgi:OpenBSD:*:*)
- echo mips-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- wgrisc:OpenBSD:*:*)
- echo mipsel-unknown-openbsd${UNAME_RELEASE}
+ *:[Mm]orph[Oo][Ss]:*:*)
+ echo ${UNAME_MACHINE}-unknown-morphos
exit 0 ;;
*:OS/390:*:*)
echo i370-ibm-openedition
@@ -162,10 +310,7 @@ EOF
arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
echo arm-acorn-riscix${UNAME_RELEASE}
exit 0;;
- arm32:NetBSD:*:*)
- echo arm-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
- exit 0 ;;
- SR2?01:HI-UX/MPP:*:*)
+ SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
echo hppa1.1-hitachi-hiuxmpp
exit 0;;
Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
@@ -179,6 +324,10 @@ EOF
NILE*:*:*:dcosx)
echo pyramid-pyramid-svr4
exit 0 ;;
+ DRS?6000:UNIX_SV:4.2*:7*)
+ case `/usr/bin/uname -p` in
+ sparc) echo sparc-icl-nx7 && exit 0 ;;
+ esac ;;
sun4H:SunOS:5.*:*)
echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
exit 0 ;;
@@ -207,7 +356,7 @@ EOF
echo m68k-sun-sunos${UNAME_RELEASE}
exit 0 ;;
sun*:*:4.2BSD:*)
- UNAME_RELEASE=`(head -1 /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
+ UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
case "`/bin/arch`" in
sun3)
@@ -221,15 +370,9 @@ EOF
aushp:SunOS:*:*)
echo sparc-auspex-sunos${UNAME_RELEASE}
exit 0 ;;
- atari*:NetBSD:*:*)
- echo m68k-atari-netbsd${UNAME_RELEASE}
- exit 0 ;;
- atari*:OpenBSD:*:*)
- echo m68k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
# The situation for MiNT is a little confusing. The machine name
# can be virtually everything (everything which is not
- # "atarist" or "atariste" at least should have a processor
+ # "atarist" or "atariste" at least should have a processor
# > m68000). The system name ranges from "MiNT" over "FreeMiNT"
# to the lowercase version "mint" (or "freemint"). Finally
# the system name "TOS" denotes a system which is actually not
@@ -253,30 +396,9 @@ EOF
*:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
echo m68k-unknown-mint${UNAME_RELEASE}
exit 0 ;;
- sun3*:NetBSD:*:*)
- echo m68k-sun-netbsd${UNAME_RELEASE}
- exit 0 ;;
- sun3*:OpenBSD:*:*)
- echo m68k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- mac68k:NetBSD:*:*)
- echo m68k-apple-netbsd${UNAME_RELEASE}
- exit 0 ;;
- mac68k:OpenBSD:*:*)
- echo m68k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- mvme68k:OpenBSD:*:*)
- echo m68k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- mvme88k:OpenBSD:*:*)
- echo m88k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
powerpc:machten:*:*)
echo powerpc-apple-machten${UNAME_RELEASE}
exit 0 ;;
- macppc:NetBSD:*:*)
- echo powerpc-apple-netbsd${UNAME_RELEASE}
- exit 0 ;;
RISC*:Mach:*:*)
echo mips-dec-mach_bsd4.3
exit 0 ;;
@@ -290,8 +412,10 @@ EOF
echo clipper-intergraph-clix${UNAME_RELEASE}
exit 0 ;;
mips:*:*:UMIPS | mips:*:*:RISCos)
+ eval $set_cc_for_build
sed 's/^ //' << EOF >$dummy.c
#ifdef __cplusplus
+#include <stdio.h> /* for printf() prototype */
int main (int argc, char *argv[]) {
#else
int main (argc, argv) int argc; char *argv[]; {
@@ -311,11 +435,17 @@ EOF
}
EOF
$CC_FOR_BUILD $dummy.c -o $dummy \
- && ./$dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
- && rm $dummy.c $dummy && exit 0
- rm -f $dummy.c $dummy
+ && $dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
+ && rm -f $dummy.c $dummy && rmdir $tmpdir && exit 0
+ rm -f $dummy.c $dummy && rmdir $tmpdir
echo mips-mips-riscos${UNAME_RELEASE}
exit 0 ;;
+ Motorola:PowerMAX_OS:*:*)
+ echo powerpc-motorola-powermax
+ exit 0 ;;
+ Night_Hawk:*:*:PowerMAX_OS)
+ echo powerpc-harris-powermax
+ exit 0 ;;
Night_Hawk:Power_UNIX:*:*)
echo powerpc-harris-powerunix
exit 0 ;;
@@ -331,7 +461,7 @@ EOF
AViiON:dgux:*:*)
# DG/UX returns AViiON for all architectures
UNAME_PROCESSOR=`/usr/bin/uname -p`
- if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110]
+ if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
then
if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
[ ${TARGET_BINARY_INTERFACE}x = x ]
@@ -363,11 +493,20 @@ EOF
????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
exit 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX '
- i?86:AIX:*:*)
+ i*86:AIX:*:*)
echo i386-ibm-aix
exit 0 ;;
+ ia64:AIX:*:*)
+ if [ -x /usr/bin/oslevel ] ; then
+ IBM_REV=`/usr/bin/oslevel`
+ else
+ IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
+ fi
+ echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
+ exit 0 ;;
*:AIX:2:3)
if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
+ eval $set_cc_for_build
sed 's/^ //' << EOF >$dummy.c
#include <sys/systemcfg.h>
@@ -379,8 +518,8 @@ EOF
exit(0);
}
EOF
- $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm $dummy.c $dummy && exit 0
- rm -f $dummy.c $dummy
+ $CC_FOR_BUILD $dummy.c -o $dummy && $dummy && rm -f $dummy.c $dummy && rmdir $tmpdir && exit 0
+ rm -f $dummy.c $dummy && rmdir $tmpdir
echo rs6000-ibm-aix3.2.5
elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
echo rs6000-ibm-aix3.2.4
@@ -388,9 +527,9 @@ EOF
echo rs6000-ibm-aix3.2
fi
exit 0 ;;
- *:AIX:*:4)
- IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | head -1 | awk '{ print $1 }'`
- if /usr/sbin/lsattr -EHl ${IBM_CPU_ID} | grep POWER >/dev/null 2>&1; then
+ *:AIX:*:[45])
+ IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
+ if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
IBM_ARCH=rs6000
else
IBM_ARCH=powerpc
@@ -398,7 +537,7 @@ EOF
if [ -x /usr/bin/oslevel ] ; then
IBM_REV=`/usr/bin/oslevel`
else
- IBM_REV=4.${UNAME_RELEASE}
+ IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
fi
echo ${IBM_ARCH}-ibm-aix${IBM_REV}
exit 0 ;;
@@ -408,7 +547,7 @@ EOF
ibmrt:4.4BSD:*|romp-ibm:BSD:*)
echo romp-ibm-bsd4.4
exit 0 ;;
- ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC NetBSD and
+ ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
exit 0 ;; # report: romp-ibm BSD 4.3
*:BOSX:*:*)
@@ -424,11 +563,30 @@ EOF
echo m68k-hp-bsd4.4
exit 0 ;;
9000/[34678]??:HP-UX:*:*)
+ HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
case "${UNAME_MACHINE}" in
9000/31? ) HP_ARCH=m68000 ;;
9000/[34]?? ) HP_ARCH=m68k ;;
9000/[678][0-9][0-9])
- sed 's/^ //' << EOF >$dummy.c
+ if [ -x /usr/bin/getconf ]; then
+ sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
+ sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
+ case "${sc_cpu_version}" in
+ 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
+ 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
+ 532) # CPU_PA_RISC2_0
+ case "${sc_kernel_bits}" in
+ 32) HP_ARCH="hppa2.0n" ;;
+ 64) HP_ARCH="hppa2.0w" ;;
+ '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20
+ esac ;;
+ esac
+ fi
+ if [ "${HP_ARCH}" = "" ]; then
+ eval $set_cc_for_build
+ sed 's/^ //' << EOF >$dummy.c
+
+ #define _HPUX_SOURCE
#include <stdlib.h>
#include <unistd.h>
@@ -459,13 +617,19 @@ EOF
exit (0);
}
EOF
- (CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null ) && HP_ARCH=`./$dummy`
- rm -f $dummy.c $dummy
+ (CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null) && HP_ARCH=`$dummy`
+ if test -z "$HP_ARCH"; then HP_ARCH=hppa; fi
+ rm -f $dummy.c $dummy && rmdir $tmpdir
+ fi ;;
esac
- HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
echo ${HP_ARCH}-hp-hpux${HPUX_REV}
exit 0 ;;
+ ia64:HP-UX:*:*)
+ HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
+ echo ia64-hp-hpux${HPUX_REV}
+ exit 0 ;;
3050*:HI-UX:*:*)
+ eval $set_cc_for_build
sed 's/^ //' << EOF >$dummy.c
#include <unistd.h>
int
@@ -491,8 +655,8 @@ EOF
exit (0);
}
EOF
- $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm $dummy.c $dummy && exit 0
- rm -f $dummy.c $dummy
+ $CC_FOR_BUILD $dummy.c -o $dummy && $dummy && rm -f $dummy.c $dummy && rmdir $tmpdir && exit 0
+ rm -f $dummy.c $dummy && rmdir $tmpdir
echo unknown-hitachi-hiuxwe2
exit 0 ;;
9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
@@ -501,7 +665,7 @@ EOF
9000/8??:4.3bsd:*:*)
echo hppa1.0-hp-bsd
exit 0 ;;
- *9??*:MPE/iX:*:*)
+ *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
echo hppa1.0-hp-mpeix
exit 0 ;;
hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
@@ -510,7 +674,7 @@ EOF
hp8??:OSF1:*:*)
echo hppa1.0-hp-osf
exit 0 ;;
- i?86:OSF1:*:*)
+ i*86:OSF1:*:*)
if [ -x /usr/sbin/sysversion ] ; then
echo ${UNAME_MACHINE}-unknown-osf1mk
else
@@ -520,9 +684,6 @@ EOF
parisc*:Lites*:*:*)
echo hppa1.1-hp-lites
exit 0 ;;
- hppa*:OpenBSD:*:*)
- echo hppa-unknown-openbsd
- exit 0 ;;
C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
echo c1-convex-bsd
exit 0 ;;
@@ -541,41 +702,34 @@ EOF
C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
echo c4-convex-bsd
exit 0 ;;
- CRAY*X-MP:*:*:*)
- echo xmp-cray-unicos
- exit 0 ;;
CRAY*Y-MP:*:*:*)
- echo ymp-cray-unicos${UNAME_RELEASE}
+ echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
exit 0 ;;
CRAY*[A-Z]90:*:*:*)
echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
- -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/
+ -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
+ -e 's/\.[^.]*$/.X/'
exit 0 ;;
CRAY*TS:*:*:*)
- echo t90-cray-unicos${UNAME_RELEASE}
+ echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+ exit 0 ;;
+ CRAY*T3D:*:*:*)
+ echo alpha-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
exit 0 ;;
CRAY*T3E:*:*:*)
- echo alpha-cray-unicosmk${UNAME_RELEASE}
+ echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
exit 0 ;;
- CRAY-2:*:*:*)
- echo cray2-cray-unicos
- exit 0 ;;
- F300:UNIX_System_V:*:*)
+ CRAY*SV1:*:*:*)
+ echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+ exit 0 ;;
+ F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
+ FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
- echo "f300-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+ echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
exit 0 ;;
- F301:UNIX_System_V:*:*)
- echo f301-fujitsu-uxpv`echo $UNAME_RELEASE | sed 's/ .*//'`
- exit 0 ;;
- hp3[0-9][05]:NetBSD:*:*)
- echo m68k-hp-netbsd${UNAME_RELEASE}
- exit 0 ;;
- hp300:OpenBSD:*:*)
- echo m68k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- i?86:BSD/386:*:* | i?86:BSD/OS:*:*)
+ i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
exit 0 ;;
sparc*:BSD/OS:*:*)
@@ -585,19 +739,19 @@ EOF
echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
exit 0 ;;
*:FreeBSD:*:*)
- if test -x /usr/bin/objformat; then
- if test "elf" = "`/usr/bin/objformat`"; then
- echo ${UNAME_MACHINE}-unknown-freebsdelf`echo ${UNAME_RELEASE}|sed -e 's/[-_].*//'`
- exit 0
- fi
- fi
- echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
- exit 0 ;;
- *:NetBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*//'`
- exit 0 ;;
- *:OpenBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-openbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
+ # Determine whether the default compiler uses glibc.
+ eval $set_cc_for_build
+ sed 's/^ //' << EOF >$dummy.c
+ #include <features.h>
+ #if __GLIBC__ >= 2
+ LIBC=gnu
+ #else
+ LIBC=
+ #endif
+EOF
+ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
+ rm -f $dummy.c && rmdir $tmpdir
+ echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`${LIBC:+-$LIBC}
exit 0 ;;
i*:CYGWIN*:*)
echo ${UNAME_MACHINE}-pc-cygwin
@@ -605,6 +759,12 @@ EOF
i*:MINGW*:*)
echo ${UNAME_MACHINE}-pc-mingw32
exit 0 ;;
+ i*:PW*:*)
+ echo ${UNAME_MACHINE}-pc-pw32
+ exit 0 ;;
+ x86:Interix*:3*)
+ echo i386-pc-interix3
+ exit 0 ;;
i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
# How do we know it's Interix rather than the generic POSIX subsystem?
# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
@@ -623,201 +783,142 @@ EOF
*:GNU:*:*)
echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
exit 0 ;;
- *:Linux:*:*)
-
+ i*86:Minix:*:*)
+ echo ${UNAME_MACHINE}-pc-minix
+ exit 0 ;;
+ arm*:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
+ exit 0 ;;
+ ia64:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
+ exit 0 ;;
+ m68*:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
+ exit 0 ;;
+ mips:Linux:*:*)
+ eval $set_cc_for_build
+ sed 's/^ //' << EOF >$dummy.c
+ #undef CPU
+ #undef mips
+ #undef mipsel
+ #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
+ CPU=mipsel
+ #else
+ #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
+ CPU=mips
+ #else
+ CPU=
+ #endif
+ #endif
+EOF
+ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
+ rm -f $dummy.c && rmdir $tmpdir
+ test x"${CPU}" != x && echo "${CPU}-pc-linux-gnu" && exit 0
+ ;;
+ ppc:Linux:*:*)
+ echo powerpc-unknown-linux-gnu
+ exit 0 ;;
+ ppc64:Linux:*:*)
+ echo powerpc64-unknown-linux-gnu
+ exit 0 ;;
+ alpha:Linux:*:*)
+ case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
+ EV5) UNAME_MACHINE=alphaev5 ;;
+ EV56) UNAME_MACHINE=alphaev56 ;;
+ PCA56) UNAME_MACHINE=alphapca56 ;;
+ PCA57) UNAME_MACHINE=alphapca56 ;;
+ EV6) UNAME_MACHINE=alphaev6 ;;
+ EV67) UNAME_MACHINE=alphaev67 ;;
+ EV68*) UNAME_MACHINE=alphaev68 ;;
+ esac
+ objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
+ if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
+ echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
+ exit 0 ;;
+ parisc:Linux:*:* | hppa:Linux:*:*)
+ # Look for CPU level
+ case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
+ PA7*) echo hppa1.1-unknown-linux-gnu ;;
+ PA8*) echo hppa2.0-unknown-linux-gnu ;;
+ *) echo hppa-unknown-linux-gnu ;;
+ esac
+ exit 0 ;;
+ parisc64:Linux:*:* | hppa64:Linux:*:*)
+ echo hppa64-unknown-linux-gnu
+ exit 0 ;;
+ s390:Linux:*:* | s390x:Linux:*:*)
+ echo ${UNAME_MACHINE}-ibm-linux
+ exit 0 ;;
+ sh*:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
+ exit 0 ;;
+ sparc:Linux:*:* | sparc64:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
+ exit 0 ;;
+ x86_64:Linux:*:*)
+ echo x86_64-unknown-linux-gnu
+ exit 0 ;;
+ i*86:Linux:*:*)
# The BFD linker knows what the default object file format is, so
# first see if it will tell us. cd to the root directory to prevent
# problems with other programs or directories called `ld' in the path.
- ld_help_string=`cd /; ld --help 2>&1`
- ld_supported_emulations=`echo $ld_help_string \
- | sed -ne '/supported emulations:/!d
+ # Set LC_ALL=C to ensure ld outputs messages in English.
+ ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
+ | sed -ne '/supported targets:/!d
s/[ ][ ]*/ /g
- s/.*supported emulations: *//
+ s/.*supported targets: *//
s/ .*//
p'`
- case "$ld_supported_emulations" in
- *ia64)
- echo "${UNAME_MACHINE}-unknown-linux"
- exit 0
+ case "$ld_supported_targets" in
+ elf32-i386)
+ TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
;;
- i?86linux)
+ a.out-i386-linux)
echo "${UNAME_MACHINE}-pc-linux-gnuaout"
- exit 0
- ;;
- i?86coff)
+ exit 0 ;;
+ coff-i386)
echo "${UNAME_MACHINE}-pc-linux-gnucoff"
- exit 0
- ;;
- sparclinux)
- echo "${UNAME_MACHINE}-unknown-linux-gnuaout"
- exit 0
- ;;
- armlinux)
- echo "${UNAME_MACHINE}-unknown-linux-gnuaout"
- exit 0
- ;;
- elf32arm*)
- echo "${UNAME_MACHINE}-unknown-linux-gnu"
- exit 0
- ;;
- armelf_linux*)
- echo "${UNAME_MACHINE}-unknown-linux-gnu"
- exit 0
- ;;
- m68klinux)
- echo "${UNAME_MACHINE}-unknown-linux-gnuaout"
- exit 0
- ;;
- elf32ppc)
- # Determine Lib Version
- cat >$dummy.c <<EOF
-#include <features.h>
-#if defined(__GLIBC__)
-extern char __libc_version[];
-extern char __libc_release[];
-#endif
-main(argc, argv)
- int argc;
- char *argv[];
-{
-#if defined(__GLIBC__)
- printf("%s %s\n", __libc_version, __libc_release);
-#else
- printf("unkown\n");
-#endif
- return 0;
-}
-EOF
- LIBC=""
- $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null
- if test "$?" = 0 ; then
- ./$dummy | grep 1\.99 > /dev/null
- if test "$?" = 0 ; then
- LIBC="libc1"
- fi
- fi
- rm -f $dummy.c $dummy
- echo powerpc-unknown-linux-gnu${LIBC}
- exit 0
- ;;
+ exit 0 ;;
+ "")
+ # Either a pre-BFD a.out linker (linux-gnuoldld) or
+ # one that does not give us useful --help.
+ echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
+ exit 0 ;;
esac
-
- if test "${UNAME_MACHINE}" = "alpha" ; then
- sed 's/^ //' <<EOF >$dummy.s
- .globl main
- .ent main
- main:
- .frame \$30,0,\$26,0
- .prologue 0
- .long 0x47e03d80 # implver $0
- lda \$2,259
- .long 0x47e20c21 # amask $2,$1
- srl \$1,8,\$2
- sll \$2,2,\$2
- sll \$0,3,\$0
- addl \$1,\$0,\$0
- addl \$2,\$0,\$0
- ret \$31,(\$26),1
- .end main
-EOF
- LIBC=""
- $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
- if test "$?" = 0 ; then
- ./$dummy
- case "$?" in
- 7)
- UNAME_MACHINE="alpha"
- ;;
- 15)
- UNAME_MACHINE="alphaev5"
- ;;
- 14)
- UNAME_MACHINE="alphaev56"
- ;;
- 10)
- UNAME_MACHINE="alphapca56"
- ;;
- 16)
- UNAME_MACHINE="alphaev6"
- ;;
- esac
-
- objdump --private-headers $dummy | \
- grep ld.so.1 > /dev/null
- if test "$?" = 0 ; then
- LIBC="libc1"
- fi
- fi
- rm -f $dummy.s $dummy
- echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} ; exit 0
- elif test "${UNAME_MACHINE}" = "mips" ; then
- cat >$dummy.c <<EOF
-#ifdef __cplusplus
- int main (int argc, char *argv[]) {
-#else
- int main (argc, argv) int argc; char *argv[]; {
-#endif
-#ifdef __MIPSEB__
- printf ("%s-unknown-linux-gnu\n", argv[1]);
-#endif
-#ifdef __MIPSEL__
- printf ("%sel-unknown-linux-gnu\n", argv[1]);
-#endif
- return 0;
-}
-EOF
- $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm $dummy.c $dummy && exit 0
- rm -f $dummy.c $dummy
- else
- # Either a pre-BFD a.out linker (linux-gnuoldld)
- # or one that does not give us useful --help.
- # GCC wants to distinguish between linux-gnuoldld and linux-gnuaout.
- # If ld does not provide *any* "supported emulations:"
- # that means it is gnuoldld.
- echo "$ld_help_string" | grep >/dev/null 2>&1 "supported emulations:"
- test $? != 0 && echo "${UNAME_MACHINE}-pc-linux-gnuoldld" && exit 0
-
- case "${UNAME_MACHINE}" in
- i?86)
- VENDOR=pc;
- ;;
- *)
- VENDOR=unknown;
- ;;
- esac
- # Determine whether the default compiler is a.out or elf
- cat >$dummy.c <<EOF
-#include <features.h>
-#ifdef __cplusplus
- int main (int argc, char *argv[]) {
-#else
- int main (argc, argv) int argc; char *argv[]; {
-#endif
-#ifdef __ELF__
-# ifdef __GLIBC__
-# if __GLIBC__ >= 2
- printf ("%s-${VENDOR}-linux-gnu\n", argv[1]);
-# else
- printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]);
-# endif
-# else
- printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]);
-# endif
-#else
- printf ("%s-${VENDOR}-linux-gnuaout\n", argv[1]);
-#endif
- return 0;
-}
+ # Determine whether the default compiler is a.out or elf
+ eval $set_cc_for_build
+ sed 's/^ //' << EOF >$dummy.c
+ #include <features.h>
+ #ifdef __ELF__
+ # ifdef __GLIBC__
+ # if __GLIBC__ >= 2
+ LIBC=gnu
+ # else
+ LIBC=gnulibc1
+ # endif
+ # else
+ LIBC=gnulibc1
+ # endif
+ #else
+ #ifdef __INTEL_COMPILER
+ LIBC=gnu
+ #else
+ LIBC=gnuaout
+ #endif
+ #endif
EOF
- $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm $dummy.c $dummy && exit 0
- rm -f $dummy.c $dummy
- fi ;;
-# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. earlier versions
-# are messed up and put the nodename in both sysname and nodename.
- i?86:DYNIX/ptx:4*:*)
+ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
+ rm -f $dummy.c && rmdir $tmpdir
+ test x"${LIBC}" != x && echo "${UNAME_MACHINE}-pc-linux-${LIBC}" && exit 0
+ test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0
+ ;;
+ i*86:DYNIX/ptx:4*:*)
+ # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
+ # earlier versions are messed up and put the nodename in both
+ # sysname and nodename.
echo i386-sequent-sysv4
exit 0 ;;
- i?86:UNIX_SV:4.2MP:2.*)
+ i*86:UNIX_SV:4.2MP:2.*)
# Unixware is an offshoot of SVR4, but it has its own version
# number series starting with 2...
# I am not positive that other SVR4 systems won't match this,
@@ -825,7 +926,7 @@ EOF
# Use sysv4.2uw... so that sysv4* matches it.
echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
exit 0 ;;
- i?86:*:4.*:* | i?86:SYSTEM_V:4.*:*)
+ i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
@@ -833,34 +934,37 @@ EOF
echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
fi
exit 0 ;;
- i?86:*:5:7*)
- # Fixed at (any) Pentium or better
- UNAME_MACHINE=i586
- if [ ${UNAME_SYSTEM} = "UnixWare" ] ; then
- echo ${UNAME_MACHINE}-sco-sysv${UNAME_RELEASE}uw${UNAME_VERSION}
- else
- echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE}
- fi
+ i*86:*:5:[78]*)
+ case `/bin/uname -X | grep "^Machine"` in
+ *486*) UNAME_MACHINE=i486 ;;
+ *Pentium) UNAME_MACHINE=i586 ;;
+ *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
+ esac
+ echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
exit 0 ;;
- i?86:*:3.2:*)
+ i*86:*:3.2:*)
if test -f /usr/options/cb.name; then
UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
elif /bin/uname -X 2>/dev/null >/dev/null ; then
- UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')`
- (/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486
- (/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \
+ UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
+ (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
+ (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
&& UNAME_MACHINE=i586
- (/bin/uname -X|egrep '^Machine.*Pent ?II' >/dev/null) \
+ (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
&& UNAME_MACHINE=i686
- (/bin/uname -X|egrep '^Machine.*Pentium Pro' >/dev/null) \
+ (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
&& UNAME_MACHINE=i686
echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
else
echo ${UNAME_MACHINE}-pc-sysv32
fi
exit 0 ;;
+ i*86:*DOS:*:*)
+ echo ${UNAME_MACHINE}-pc-msdosdjgpp
+ exit 0 ;;
pc:*:*:*)
+ # Left here for compatibility:
# uname -m prints for DJGPP always 'pc', but it prints nothing about
# the processor, so we play safe by assuming i386.
echo i386-pc-msdosdjgpp
@@ -884,7 +988,7 @@ EOF
exit 0 ;;
M68*:*:R3V[567]*:*)
test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
- 3[34]??:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 4850:*:4.0:3.0)
+ 3[34]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0)
OS_REL=''
test -r /etc/.relid \
&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
@@ -895,21 +999,24 @@ EOF
3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
&& echo i486-ncr-sysv4 && exit 0 ;;
- m68*:LynxOS:2.*:*)
+ m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
echo m68k-unknown-lynxos${UNAME_RELEASE}
exit 0 ;;
mc68030:UNIX_System_V:4.*:*)
echo m68k-atari-sysv4
exit 0 ;;
- i?86:LynxOS:2.*:* | i?86:LynxOS:3.[01]*:*)
+ i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
echo i386-unknown-lynxos${UNAME_RELEASE}
exit 0 ;;
TSUNAMI:LynxOS:2.*:*)
echo sparc-unknown-lynxos${UNAME_RELEASE}
exit 0 ;;
- rs6000:LynxOS:2.*:* | PowerPC:LynxOS:2.*:*)
+ rs6000:LynxOS:2.*:*)
echo rs6000-unknown-lynxos${UNAME_RELEASE}
exit 0 ;;
+ PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
+ echo powerpc-unknown-lynxos${UNAME_RELEASE}
+ exit 0 ;;
SM[BE]S:UNIX_SV:*:*)
echo mips-dde-sysv${UNAME_RELEASE}
exit 0 ;;
@@ -927,8 +1034,8 @@ EOF
echo ns32k-sni-sysv
fi
exit 0 ;;
- PENTIUM:CPunix:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
- # says <Richard.M.Bartel@ccMail.Census.GOV>
+ PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
+ # says <Richard.M.Bartel@ccMail.Census.GOV>
echo i586-unisys-sysv4
exit 0 ;;
*:UNIX_System_V:4*:FTX*)
@@ -940,10 +1047,14 @@ EOF
# From seanf@swdc.stratus.com.
echo i860-stratus-sysv4
exit 0 ;;
+ *:VOS:*:*)
+ # From Paul.Green@stratus.com.
+ echo hppa1.1-stratus-vos
+ exit 0 ;;
mc68*:A/UX:*:*)
echo m68k-apple-aux${UNAME_RELEASE}
exit 0 ;;
- news*:NEWS-OS:*:6*)
+ news*:NEWS-OS:6*:*)
echo mips-sony-newsos6
exit 0 ;;
R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
@@ -974,14 +1085,78 @@ EOF
*:Rhapsody:*:*)
echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
exit 0 ;;
+ *:Darwin:*:*)
+ echo `uname -p`-apple-darwin${UNAME_RELEASE}
+ exit 0 ;;
+ *:procnto*:*:* | *:QNX:[0123456789]*:*)
+ UNAME_PROCESSOR=`uname -p`
+ if test "$UNAME_PROCESSOR" = "x86"; then
+ UNAME_PROCESSOR=i386
+ UNAME_MACHINE=pc
+ fi
+ echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
+ exit 0 ;;
*:QNX:*:4*)
- echo i386-qnx-qnx${UNAME_VERSION}
+ echo i386-pc-qnx
+ exit 0 ;;
+ NSR-[GKLNPTVW]:NONSTOP_KERNEL:*:*)
+ echo nsr-tandem-nsk${UNAME_RELEASE}
+ exit 0 ;;
+ *:NonStop-UX:*:*)
+ echo mips-compaq-nonstopux
+ exit 0 ;;
+ BS2000:POSIX*:*:*)
+ echo bs2000-siemens-sysv
+ exit 0 ;;
+ DS/*:UNIX_System_V:*:*)
+ echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
+ exit 0 ;;
+ *:Plan9:*:*)
+ # "uname -m" is not consistent, so use $cputype instead. 386
+ # is converted to i386 for consistency with other x86
+ # operating systems.
+ if test "$cputype" = "386"; then
+ UNAME_MACHINE=i386
+ else
+ UNAME_MACHINE="$cputype"
+ fi
+ echo ${UNAME_MACHINE}-unknown-plan9
+ exit 0 ;;
+ i*86:OS/2:*:*)
+ # If we were able to find `uname', then EMX Unix compatibility
+ # is probably installed.
+ echo ${UNAME_MACHINE}-pc-os2-emx
+ exit 0 ;;
+ *:TOPS-10:*:*)
+ echo pdp10-unknown-tops10
+ exit 0 ;;
+ *:TENEX:*:*)
+ echo pdp10-unknown-tenex
+ exit 0 ;;
+ KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
+ echo pdp10-dec-tops20
+ exit 0 ;;
+ XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
+ echo pdp10-xkl-tops20
+ exit 0 ;;
+ *:TOPS-20:*:*)
+ echo pdp10-unknown-tops20
+ exit 0 ;;
+ *:ITS:*:*)
+ echo pdp10-unknown-its
+ exit 0 ;;
+ i*86:XTS-300:*:STOP)
+ echo ${UNAME_MACHINE}-unknown-stop
+ exit 0 ;;
+ i*86:atheos:*:*)
+ echo ${UNAME_MACHINE}-unknown-atheos
exit 0 ;;
esac
#echo '(No uname command or uname output not recognized.)' 1>&2
#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
+eval $set_cc_for_build
cat >$dummy.c <<EOF
#ifdef _SEQUENT_
# include <sys/types.h>
@@ -1068,11 +1243,24 @@ main ()
#endif
#if defined (vax)
-#if !defined (ultrix)
- printf ("vax-dec-bsd\n"); exit (0);
-#else
- printf ("vax-dec-ultrix\n"); exit (0);
-#endif
+# if !defined (ultrix)
+# include <sys/param.h>
+# if defined (BSD)
+# if BSD == 43
+ printf ("vax-dec-bsd4.3\n"); exit (0);
+# else
+# if BSD == 199006
+ printf ("vax-dec-bsd4.3reno\n"); exit (0);
+# else
+ printf ("vax-dec-bsd\n"); exit (0);
+# endif
+# endif
+# else
+ printf ("vax-dec-bsd\n"); exit (0);
+# endif
+# else
+ printf ("vax-dec-ultrix\n"); exit (0);
+# endif
#endif
#if defined (alliant) && defined (i860)
@@ -1083,8 +1271,8 @@ main ()
}
EOF
-$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy && rm $dummy.c $dummy && exit 0
-rm -f $dummy.c $dummy
+$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && $dummy && rm -f $dummy.c $dummy && rmdir $tmpdir && exit 0
+rm -f $dummy.c $dummy && rmdir $tmpdir
# Apollos put the system type in the environment.
@@ -1116,6 +1304,48 @@ then
esac
fi
-#echo '(Unable to guess system type)' 1>&2
+cat >&2 <<EOF
+$0: unable to guess system type
+
+This script, last modified $timestamp, has failed to recognize
+the operating system you are using. It is advised that you
+download the most up to date version of the config scripts from
+
+ ftp://ftp.gnu.org/pub/gnu/config/
+
+If the version you run ($0) is already up to date, please
+send the following data and any information you think might be
+pertinent to <config-patches@gnu.org> in order to provide the needed
+information to handle your system.
+
+config.guess timestamp = $timestamp
+
+uname -m = `(uname -m) 2>/dev/null || echo unknown`
+uname -r = `(uname -r) 2>/dev/null || echo unknown`
+uname -s = `(uname -s) 2>/dev/null || echo unknown`
+uname -v = `(uname -v) 2>/dev/null || echo unknown`
+
+/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
+/bin/uname -X = `(/bin/uname -X) 2>/dev/null`
+
+hostinfo = `(hostinfo) 2>/dev/null`
+/bin/universe = `(/bin/universe) 2>/dev/null`
+/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null`
+/bin/arch = `(/bin/arch) 2>/dev/null`
+/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null`
+/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
+
+UNAME_MACHINE = ${UNAME_MACHINE}
+UNAME_RELEASE = ${UNAME_RELEASE}
+UNAME_SYSTEM = ${UNAME_SYSTEM}
+UNAME_VERSION = ${UNAME_VERSION}
+EOF
exit 1
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "timestamp='"
+# time-stamp-format: "%:y-%02m-%02d"
+# time-stamp-end: "'"
+# End:
diff --git a/contrib/tcsh/config.sub b/contrib/tcsh/config.sub
index 28426bb8fa0a..9ff085efaf7f 100755
--- a/contrib/tcsh/config.sub
+++ b/contrib/tcsh/config.sub
@@ -1,6 +1,10 @@
#! /bin/sh
-# Configuration validation subroutine script, version 1.1.
-# Copyright (C) 1991, 92-97, 1998, 1999 Free Software Foundation, Inc.
+# Configuration validation subroutine script.
+# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
+# 2000, 2001, 2002 Free Software Foundation, Inc.
+
+timestamp='2002-07-03'
+
# This file is (in principle) common to ALL GNU software.
# The presence of a machine in this file suggests that SOME GNU software
# can handle that machine. It does not imply ALL GNU software can.
@@ -25,6 +29,9 @@
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
+# Please send patches to <config-patches@gnu.org>. Submit a context
+# diff and a properly formatted ChangeLog entry.
+#
# Configuration subroutine to validate and canonicalize a configuration type.
# Supply the specified configuration type as an argument.
# If it is invalid, we print an error message on stderr and exit with code 1.
@@ -45,30 +52,73 @@
# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
# It is wrong to echo any other type of specification.
-if [ x$1 = x ]
-then
- echo Configuration name missing. 1>&2
- echo "Usage: $0 CPU-MFR-OPSYS" 1>&2
- echo "or $0 ALIAS" 1>&2
- echo where ALIAS is a recognized configuration type. 1>&2
- exit 1
-fi
+me=`echo "$0" | sed -e 's,.*/,,'`
-# First pass through any local machine types.
-case $1 in
- *local*)
- echo $1
- exit 0
- ;;
- *)
- ;;
+usage="\
+Usage: $0 [OPTION] CPU-MFR-OPSYS
+ $0 [OPTION] ALIAS
+
+Canonicalize a configuration name.
+
+Operation modes:
+ -h, --help print this help, then exit
+ -t, --time-stamp print date of last modification, then exit
+ -v, --version print version number, then exit
+
+Report bugs and patches to <config-patches@gnu.org>."
+
+version="\
+GNU config.sub ($timestamp)
+
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
+Free Software Foundation, Inc.
+
+This is free software; see the source for copying conditions. There is NO
+warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
+
+help="
+Try \`$me --help' for more information."
+
+# Parse command line
+while test $# -gt 0 ; do
+ case $1 in
+ --time-stamp | --time* | -t )
+ echo "$timestamp" ; exit 0 ;;
+ --version | -v )
+ echo "$version" ; exit 0 ;;
+ --help | --h* | -h )
+ echo "$usage"; exit 0 ;;
+ -- ) # Stop option processing
+ shift; break ;;
+ - ) # Use stdin as input.
+ break ;;
+ -* )
+ echo "$me: invalid option $1$help"
+ exit 1 ;;
+
+ *local*)
+ # First pass through any local machine types.
+ echo $1
+ exit 0;;
+
+ * )
+ break ;;
+ esac
+done
+
+case $# in
+ 0) echo "$me: missing argument$help" >&2
+ exit 1;;
+ 1) ;;
+ *) echo "$me: too many arguments$help" >&2
+ exit 1;;
esac
# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
# Here we must recognize all the valid KERNEL-OS combinations.
maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
case $maybe_os in
- linux-gnu*)
+ nto-qnx* | linux-gnu* | freebsd*-gnu* | storm-chaos* | os2-emx* | windows32-* | rtmk-nova*)
os=-$maybe_os
basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
;;
@@ -94,7 +144,7 @@ case $os in
-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
- -apple)
+ -apple | -axis)
os=
basic_machine=$1
;;
@@ -108,6 +158,14 @@ case $os in
os=-vxworks
basic_machine=$1
;;
+ -chorusos*)
+ os=-chorusos
+ basic_machine=$1
+ ;;
+ -chorusrdb)
+ os=-chorusrdb
+ basic_machine=$1
+ ;;
-hiux*)
os=-hiuxwe2
;;
@@ -166,27 +224,58 @@ esac
case $basic_machine in
# Recognize the basic CPU types without company name.
# Some are omitted here because they have special meanings below.
- tahoe | i860 | ia64 | m32r | m68k | m68000 | m88k | ns32k | arc | arm \
- | arme[lb] | pyramid | mn10200 | mn10300 | tron | a29k \
- | 580 | i960 | h8300 \
- | hppa | hppa1.0 | hppa1.1 | hppa2.0 | hppa2.0w | hppa2.0n \
- | alpha | alphaev[4-7] | alphaev56 | alphapca5[67] \
- | we32k | ns16k | clipper | i370 | sh | powerpc | powerpcle \
- | 1750a | dsp16xx | pdp11 | mips16 | mips64 | mipsel | mips64el \
- | mips64orion | mips64orionel | mipstx39 | mipstx39el \
- | mips64vr4300 | mips64vr4300el | mips64vr4100 | mips64vr4100el \
- | mips64vr5000 | miprs64vr5000el | mcore \
- | sparc | sparclet | sparclite | sparc64 | sparcv9 | v850 | c4x \
- | thumb | d10v | fr30)
+ 1750a | 580 \
+ | a29k \
+ | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
+ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
+ | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
+ | c4x | clipper \
+ | d10v | d30v | dlx | dsp16xx \
+ | fr30 | frv \
+ | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
+ | i370 | i860 | i960 | ia64 \
+ | ip2k \
+ | m32r | m68000 | m68k | m88k | mcore \
+ | mips | mipsbe | mipseb | mipsel | mipsle \
+ | mips16 \
+ | mips64 | mips64el \
+ | mips64orion | mips64orionel \
+ | mips64vr4100 | mips64vr4100el \
+ | mips64vr4300 | mips64vr4300el \
+ | mips64vr5000 | mips64vr5000el \
+ | mipsisa32 | mipsisa32el \
+ | mipsisa64 | mipsisa64el \
+ | mipsisa64sb1 | mipsisa64sb1el \
+ | mipstx39 | mipstx39el \
+ | mn10200 | mn10300 \
+ | ns16k | ns32k \
+ | openrisc | or32 \
+ | pdp10 | pdp11 | pj | pjl \
+ | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
+ | pyramid \
+ | sh | sh[1234] | sh3e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
+ | sh64 | sh64le \
+ | sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv9 | sparcv9b \
+ | strongarm \
+ | tahoe | thumb | tic80 | tron \
+ | v850 | v850e \
+ | we32k \
+ | x86 | xscale | xstormy16 | xtensa \
+ | z8k)
+ basic_machine=$basic_machine-unknown
+ ;;
+ m6811 | m68hc11 | m6812 | m68hc12)
+ # Motorola 68HC11/12.
basic_machine=$basic_machine-unknown
+ os=-none
;;
- m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | z8k | v70 | h8500 | w65 | pj | pjl)
+ m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
;;
# We use `pc' rather than `unknown'
# because (1) that's what they normally are, and
# (2) the word "unknown" tends to confuse beginning users.
- i[34567]86)
+ i*86 | x86_64)
basic_machine=$basic_machine-pc
;;
# Object if more than one company name word.
@@ -195,24 +284,54 @@ case $basic_machine in
exit 1
;;
# Recognize the basic CPU types with company name.
- # FIXME: clean up the formatting here.
- vax-* | tahoe-* | i[34567]86-* | i860-* | ia64-* | m32r-* | m68k-* | m68000-* \
- | m88k-* | sparc-* | ns32k-* | fx80-* | arc-* | arm-* | c[123]* \
- | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \
- | power-* | none-* | 580-* | cray2-* | h8300-* | h8500-* | i960-* \
- | xmp-* | ymp-* \
- | hppa-* | hppa1.0-* | hppa1.1-* | hppa2.0-* | hppa2.0w-* | hppa2.0n-* \
- | alpha-* | alphaev[4-7]-* | alphaev56-* | alphapca5[67]-* \
- | we32k-* | cydra-* | ns16k-* | pn-* | np1-* | xps100-* \
- | clipper-* | orion-* \
- | sparclite-* | pdp11-* | sh-* | powerpc-* | powerpcle-* \
- | sparc64-* | sparcv9-* | sparc86x-* | mips16-* | mips64-* | mipsel-* \
- | mips64el-* | mips64orion-* | mips64orionel-* \
- | mips64vr4100-* | mips64vr4100el-* | mips64vr4300-* | mips64vr4300el-* \
- | mipstx39-* | mipstx39el-* | mcore-* \
- | f301-* | armv*-* | t3e-* \
- | m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \
- | thumb-* | v850-* | d30v-* | tic30-* | c30-* | fr30-* )
+ 580-* \
+ | a29k-* \
+ | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
+ | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
+ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
+ | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
+ | avr-* \
+ | bs2000-* \
+ | c[123]* | c30-* | [cjt]90-* | c54x-* \
+ | clipper-* | cydra-* \
+ | d10v-* | d30v-* | dlx-* \
+ | elxsi-* \
+ | f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
+ | h8300-* | h8500-* \
+ | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
+ | i*86-* | i860-* | i960-* | ia64-* \
+ | ip2k-* \
+ | m32r-* \
+ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
+ | m88110-* | m88k-* | mcore-* \
+ | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
+ | mips16-* \
+ | mips64-* | mips64el-* \
+ | mips64orion-* | mips64orionel-* \
+ | mips64vr4100-* | mips64vr4100el-* \
+ | mips64vr4300-* | mips64vr4300el-* \
+ | mips64vr5000-* | mips64vr5000el-* \
+ | mipsisa32-* | mipsisa32el-* \
+ | mipsisa64-* | mipsisa64el-* \
+ | mipsisa64sb1-* | mipsisa64sb1el-* \
+ | mipstx39 | mipstx39el \
+ | none-* | np1-* | ns16k-* | ns32k-* \
+ | orion-* \
+ | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
+ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
+ | pyramid-* \
+ | romp-* | rs6000-* \
+ | sh-* | sh[1234]-* | sh3e-* | sh[34]eb-* | shbe-* \
+ | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
+ | sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \
+ | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
+ | tahoe-* | thumb-* | tic30-* | tic54x-* | tic80-* | tron-* \
+ | v850-* | v850e-* | vax-* \
+ | we32k-* \
+ | x86-* | x86_64-* | xps100-* | xscale-* | xstormy16-* \
+ | xtensa-* \
+ | ymp-* \
+ | z8k-*)
;;
# Recognize the various machine names and aliases which stand
# for a CPU type and a company and sometimes even an OS.
@@ -249,14 +368,14 @@ case $basic_machine in
os=-sysv
;;
amiga | amiga-*)
- basic_machine=m68k-cbm
+ basic_machine=m68k-unknown
;;
amigaos | amigados)
- basic_machine=m68k-cbm
+ basic_machine=m68k-unknown
os=-amigaos
;;
amigaunix | amix)
- basic_machine=m68k-cbm
+ basic_machine=m68k-unknown
os=-sysv4
;;
apollo68)
@@ -275,6 +394,10 @@ case $basic_machine in
basic_machine=ns32k-sequent
os=-dynix
;;
+ c90)
+ basic_machine=c90-cray
+ os=-unicos
+ ;;
convex-c1)
basic_machine=c1-convex
os=-bsd
@@ -295,27 +418,30 @@ case $basic_machine in
basic_machine=c38-convex
os=-bsd
;;
- cray | ymp)
- basic_machine=ymp-cray
- os=-unicos
- ;;
- cray2)
- basic_machine=cray2-cray
- os=-unicos
- ;;
- [ctj]90-cray)
- basic_machine=c90-cray
+ cray | j90)
+ basic_machine=j90-cray
os=-unicos
;;
crds | unos)
basic_machine=m68k-crds
;;
+ cris | cris-* | etrax*)
+ basic_machine=cris-axis
+ ;;
da30 | da30-*)
basic_machine=m68k-da30
;;
decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
basic_machine=mips-dec
;;
+ decsystem10* | dec10*)
+ basic_machine=pdp10-dec
+ os=-tops10
+ ;;
+ decsystem20* | dec20*)
+ basic_machine=pdp10-dec
+ os=-tops20
+ ;;
delta | 3300 | motorola-3300 | motorola-delta \
| 3300-motorola | delta-motorola)
basic_machine=m68k-motorola
@@ -357,6 +483,10 @@ case $basic_machine in
basic_machine=tron-gmicro
os=-sysv
;;
+ go32)
+ basic_machine=i386-pc
+ os=-go32
+ ;;
h3050r* | hiux*)
basic_machine=hppa1.1-hitachi
os=-hiuxwe2
@@ -432,19 +562,19 @@ case $basic_machine in
basic_machine=i370-ibm
;;
# I'm not sure what "Sysv32" means. Should this be sysv3.2?
- i[34567]86v32)
+ i*86v32)
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
os=-sysv32
;;
- i[34567]86v4*)
+ i*86v4*)
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
os=-sysv4
;;
- i[34567]86v)
+ i*86v)
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
os=-sysv
;;
- i[34567]86sol2)
+ i*86sol2)
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
os=-solaris2
;;
@@ -456,17 +586,6 @@ case $basic_machine in
basic_machine=i386-unknown
os=-vsta
;;
- i386-go32 | go32)
- basic_machine=i386-unknown
- os=-go32
- ;;
- i386-mingw32 | mingw32)
- basic_machine=i386-unknown
- os=-mingw32
- ;;
- i386-qnx | qnx)
- basic_machine=i386-qnx
- ;;
iris | iris4d)
basic_machine=mips-sgi
case $os in
@@ -492,6 +611,10 @@ case $basic_machine in
basic_machine=ns32k-utek
os=-sysv
;;
+ mingw32)
+ basic_machine=i386-pc
+ os=-mingw32
+ ;;
miniframe)
basic_machine=m68000-convergent
;;
@@ -499,26 +622,26 @@ case $basic_machine in
basic_machine=m68k-atari
os=-mint
;;
- mipsel*-linux*)
- basic_machine=mipsel-unknown
- os=-linux-gnu
- ;;
- mips*-linux*)
- basic_machine=mips-unknown
- os=-linux-gnu
- ;;
mips3*-*)
basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
;;
mips3*)
basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
;;
+ mmix*)
+ basic_machine=mmix-knuth
+ os=-mmixware
+ ;;
monitor)
basic_machine=m68k-rom68k
os=-coff
;;
+ morphos)
+ basic_machine=powerpc-unknown
+ os=-morphos
+ ;;
msdos)
- basic_machine=i386-unknown
+ basic_machine=i386-pc
os=-msdos
;;
mvs)
@@ -582,13 +705,24 @@ case $basic_machine in
basic_machine=i960-intel
os=-mon960
;;
+ nonstopux)
+ basic_machine=mips-compaq
+ os=-nonstopux
+ ;;
np1)
basic_machine=np1-gould
;;
+ nsr-tandem)
+ basic_machine=nsr-tandem
+ ;;
op50n-* | op60c-*)
basic_machine=hppa1.1-oki
os=-proelf
;;
+ or32 | or32-*)
+ basic_machine=or32-unknown
+ os=-coff
+ ;;
OSE68000 | ose68000)
basic_machine=m68000-ericsson
os=-ose
@@ -614,28 +748,28 @@ case $basic_machine in
pc532 | pc532-*)
basic_machine=ns32k-pc532
;;
- pentium | p5 | k5 | k6 | nexen)
+ pentium | p5 | k5 | k6 | nexgen | viac3)
basic_machine=i586-pc
;;
- pentiumpro | p6 | 6x86)
+ pentiumpro | p6 | 6x86 | athlon)
basic_machine=i686-pc
;;
pentiumii | pentium2)
- basic_machine=i786-pc
+ basic_machine=i686-pc
;;
- pentium-* | p5-* | k5-* | k6-* | nexen-*)
+ pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
- pentiumpro-* | p6-* | 6x86-*)
+ pentiumpro-* | p6-* | 6x86-* | athlon-*)
basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
pentiumii-* | pentium2-*)
- basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
+ basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
pn)
basic_machine=pn-gould
;;
- power) basic_machine=rs6000-ibm
+ power) basic_machine=power-ibm
;;
ppc) basic_machine=powerpc-unknown
;;
@@ -647,9 +781,23 @@ case $basic_machine in
ppcle-* | powerpclittle-*)
basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
+ ppc64) basic_machine=powerpc64-unknown
+ ;;
+ ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ;;
+ ppc64le | powerpc64little | ppc64-le | powerpc64-little)
+ basic_machine=powerpc64le-unknown
+ ;;
+ ppc64le-* | powerpc64little-*)
+ basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ;;
ps2)
basic_machine=i386-ibm
;;
+ pw32)
+ basic_machine=i586-unknown
+ os=-pw32
+ ;;
rom68k)
basic_machine=m68k-rom68k
os=-coff
@@ -660,6 +808,12 @@ case $basic_machine in
rtpc | rtpc-*)
basic_machine=romp-ibm
;;
+ s390 | s390-*)
+ basic_machine=s390-ibm
+ ;;
+ s390x | s390x-*)
+ basic_machine=s390x-ibm
+ ;;
sa29200)
basic_machine=a29k-amd
os=-udi
@@ -671,7 +825,7 @@ case $basic_machine in
basic_machine=sh-hitachi
os=-hms
;;
- sparclite-wrs)
+ sparclite-wrs | simso-wrs)
basic_machine=sparclite-wrs
os=-vxworks
;;
@@ -729,20 +883,40 @@ case $basic_machine in
sun386 | sun386i | roadrunner)
basic_machine=i386-sun
;;
+ sv1)
+ basic_machine=sv1-cray
+ os=-unicos
+ ;;
symmetry)
basic_machine=i386-sequent
os=-dynix
;;
+ t3d)
+ basic_machine=alpha-cray
+ os=-unicos
+ ;;
t3e)
- basic_machine=t3e-cray
+ basic_machine=alphaev5-cray
os=-unicos
;;
+ t90)
+ basic_machine=t90-cray
+ os=-unicos
+ ;;
+ tic54x | c54x*)
+ basic_machine=tic54x-unknown
+ os=-coff
+ ;;
tx39)
basic_machine=mipstx39-unknown
;;
tx39el)
basic_machine=mipstx39el-unknown
;;
+ toad1)
+ basic_machine=pdp10-xkl
+ os=-tops20
+ ;;
tower | tower-32)
basic_machine=m68k-ncr
;;
@@ -789,13 +963,17 @@ case $basic_machine in
basic_machine=hppa1.1-winbond
os=-proelf
;;
- xmp)
- basic_machine=xmp-cray
- os=-unicos
+ windows32)
+ basic_machine=i386-pc
+ os=-windows32-msvcrt
;;
xps | xps100)
basic_machine=xps100-honeywell
;;
+ ymp)
+ basic_machine=ymp-cray
+ os=-unicos
+ ;;
z8k-*-coff)
basic_machine=z8k-unknown
os=-sim
@@ -816,13 +994,6 @@ case $basic_machine in
op60c)
basic_machine=hppa1.1-oki
;;
- mips)
- if [ x$os = x-linux-gnu ]; then
- basic_machine=mips-unknown
- else
- basic_machine=mips-mips
- fi
- ;;
romp)
basic_machine=romp-ibm
;;
@@ -832,13 +1003,23 @@ case $basic_machine in
vax)
basic_machine=vax-dec
;;
+ pdp10)
+ # there are many clones, so DEC is not a safe bet
+ basic_machine=pdp10-unknown
+ ;;
pdp11)
basic_machine=pdp11-dec
;;
we32k)
basic_machine=we32k-att
;;
- sparc | sparcv9)
+ sh3 | sh4 | sh3eb | sh4eb | sh[1234]le | sh3ele)
+ basic_machine=sh-unknown
+ ;;
+ sh64)
+ basic_machine=sh64-unknown
+ ;;
+ sparc | sparcv9 | sparcv9b)
basic_machine=sparc-sun
;;
cydra)
@@ -860,6 +1041,9 @@ case $basic_machine in
basic_machine=c4x-none
os=-coff
;;
+ *-unknown)
+ # Make sure to match an already-canonicalized machine name.
+ ;;
*)
echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
exit 1
@@ -916,14 +1100,31 @@ case $os in
| -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
| -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
+ | -chorusos* | -chorusrdb* \
| -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
| -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
- | -interix* | -uwin* | -rhapsody* | -opened* | -openstep* | -oskit*)
+ | -interix* | -uwin* | -rhapsody* | -darwin* | -opened* \
+ | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
+ | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
+ | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
+ | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* | -powermax*)
# Remember, each alternative MUST END IN *, to match a version number.
;;
+ -qnx*)
+ case $basic_machine in
+ x86-* | i*86-*)
+ ;;
+ *)
+ os=-nto$os
+ ;;
+ esac
+ ;;
+ -nto*)
+ os=-nto-qnx
+ ;;
-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
| -windows* | -osx | -abug | -netware* | -os9* | -beos* \
- | -macos* | -mpw* | -magic* | -mon960* | -lnews*)
+ | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
;;
-mac*)
os=`echo $os | sed -e 's|mac|macos|'`
@@ -940,6 +1141,9 @@ case $os in
-opened*)
os=-openedition
;;
+ -wince*)
+ os=-wince
+ ;;
-osfrose*)
os=-osfrose
;;
@@ -955,15 +1159,24 @@ case $os in
-acis*)
os=-aos
;;
+ -atheos*)
+ os=-atheos
+ ;;
-386bsd)
os=-bsd
;;
-ctix* | -uts*)
os=-sysv
;;
+ -nova*)
+ os=-rtmk-nova
+ ;;
-ns2 )
os=-nextstep2
;;
+ -nsk*)
+ os=-nsk
+ ;;
# Preserve the version number of sinix5.
-sinix5.*)
os=`echo $os | sed -e 's|sinix|sysv|'`
@@ -977,9 +1190,6 @@ case $os in
-oss*)
os=-sysv3
;;
- -qnx)
- os=-qnx4
- ;;
-svr4)
os=-sysv4
;;
@@ -1001,7 +1211,7 @@ case $os in
-xenix)
os=-xenix
;;
- -*mint | -*MiNT)
+ -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
os=-mint
;;
-none)
@@ -1035,6 +1245,10 @@ case $basic_machine in
arm*-semi)
os=-aout
;;
+ # This must come before the *-dec entry.
+ pdp10-*)
+ os=-tops20
+ ;;
pdp11-*)
os=-none
;;
@@ -1062,6 +1276,9 @@ case $basic_machine in
mips*-*)
os=-elf
;;
+ or32-*)
+ os=-coff
+ ;;
*-tti) # must be before sparc entry or we get the wrong os.
os=-sysv3
;;
@@ -1143,7 +1360,7 @@ case $basic_machine in
*-masscomp)
os=-rtu
;;
- f301-fujitsu)
+ f30[01]-fujitsu | f700-fujitsu)
os=-uxpv
;;
*-rom68k)
@@ -1209,7 +1426,7 @@ case $basic_machine in
-ptx*)
vendor=sequent
;;
- -vxsim* | -vxworks*)
+ -vxsim* | -vxworks* | -windiss*)
vendor=wrs
;;
-aux*)
@@ -1221,12 +1438,23 @@ case $basic_machine in
-mpw* | -macos*)
vendor=apple
;;
- -*mint | -*MiNT)
+ -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
vendor=atari
;;
+ -vos*)
+ vendor=stratus
+ ;;
esac
basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
;;
esac
echo $basic_machine$os
+exit 0
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "timestamp='"
+# time-stamp-format: "%:y-%02m-%02d"
+# time-stamp-end: "'"
+# End:
diff --git a/contrib/tcsh/config/bsd4.4 b/contrib/tcsh/config/bsd4.4
index 82f776c8b931..96e83ad9a017 100644
--- a/contrib/tcsh/config/bsd4.4
+++ b/contrib/tcsh/config/bsd4.4
@@ -129,6 +129,7 @@
/*
* _PATH_TCSHELL if you've change the installation location (vix)
*/
+#include <sys/param.h>
# ifdef _BSDI_VERSION >= 199701
# define _PATH_TCSHELL "/bin/tcsh"
# undef SYSMALLOC
diff --git a/contrib/tcsh/config_f.h b/contrib/tcsh/config_f.h
index 3a4d8d2b625e..daeccb6c70c0 100644
--- a/contrib/tcsh/config_f.h
+++ b/contrib/tcsh/config_f.h
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/config_f.h,v 3.23 2000/06/11 02:14:10 kim Exp $ */
+/* $Header: /src/pub/tcsh/config_f.h,v 3.25 2002/03/08 17:36:45 christos Exp $ */
/*
* config_f.h -- configure various defines for tcsh
*
@@ -19,11 +19,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -177,6 +173,11 @@
#undef COLORCAT
/*
+ * FILEC support for old style file completion
+ */
+#define FILEC
+
+/*
* RCSID This defines if we want rcs strings in the binary or not
*
*/
diff --git a/contrib/tcsh/configure b/contrib/tcsh/configure
index fb7c41db49fd..fdc17205ea5b 100755
--- a/contrib/tcsh/configure
+++ b/contrib/tcsh/configure
@@ -671,6 +671,11 @@ case "${host}" in
tcsh_config_file=bsd4.4
;;
+ ## Mac OS X Server
+ *-*-darwin* )
+ tcsh_config_file=bsd4.4
+ ;;
+
## Silicon Graphics machines
*-sgi-iri* )
tcsh_config_file=irix
@@ -792,7 +797,7 @@ echo "Tcsh will use configuration file \`$tcsh_config_file'."
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:796: checking for $ac_word" >&5
+echo "configure:801: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -822,7 +827,7 @@ if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:826: checking for $ac_word" >&5
+echo "configure:831: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -873,7 +878,7 @@ fi
# Extract the first word of "cl", so it can be a program name with args.
set dummy cl; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:877: checking for $ac_word" >&5
+echo "configure:882: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -905,7 +910,7 @@ fi
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:909: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+echo "configure:914: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
ac_ext=c
# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@@ -916,12 +921,12 @@ cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext << EOF
-#line 920 "configure"
+#line 925 "configure"
#include "confdefs.h"
main(){return(0);}
EOF
-if { (eval echo configure:925: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:930: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
ac_cv_prog_cc_works=yes
# If we can't run a trivial program, we are probably using a cross compiler.
if (./conftest; exit) 2>/dev/null; then
@@ -947,12 +952,12 @@ if test $ac_cv_prog_cc_works = no; then
{ echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:951: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:956: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
cross_compiling=$ac_cv_prog_cc_cross
echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:956: checking whether we are using GNU C" >&5
+echo "configure:961: checking whether we are using GNU C" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -961,7 +966,7 @@ else
yes;
#endif
EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:965: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:970: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
ac_cv_prog_gcc=yes
else
ac_cv_prog_gcc=no
@@ -980,7 +985,7 @@ ac_test_CFLAGS="${CFLAGS+set}"
ac_save_CFLAGS="$CFLAGS"
CFLAGS=
echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:984: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:989: checking whether ${CC-cc} accepts -g" >&5
if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1012,7 +1017,7 @@ else
fi
echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
-echo "configure:1016: checking how to run the C preprocessor" >&5
+echo "configure:1021: checking how to run the C preprocessor" >&5
# On Suns, sometimes $CPP names a directory.
if test -n "$CPP" && test -d "$CPP"; then
CPP=
@@ -1027,13 +1032,13 @@ else
# On the NeXT, cc -E runs the code through the compiler's parser,
# not just through cpp.
cat > conftest.$ac_ext <<EOF
-#line 1031 "configure"
+#line 1036 "configure"
#include "confdefs.h"
#include <assert.h>
Syntax Error
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1037: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:1042: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
:
@@ -1044,13 +1049,13 @@ else
rm -rf conftest*
CPP="${CC-cc} -E -traditional-cpp"
cat > conftest.$ac_ext <<EOF
-#line 1048 "configure"
+#line 1053 "configure"
#include "confdefs.h"
#include <assert.h>
Syntax Error
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1054: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:1059: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
:
@@ -1061,13 +1066,13 @@ else
rm -rf conftest*
CPP="${CC-cc} -nologo -E"
cat > conftest.$ac_ext <<EOF
-#line 1065 "configure"
+#line 1070 "configure"
#include "confdefs.h"
#include <assert.h>
Syntax Error
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1071: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:1076: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
:
@@ -1093,13 +1098,13 @@ echo "$ac_t""$CPP" 1>&6
if test $ac_cv_prog_gcc = yes; then
echo $ac_n "checking whether ${CC-cc} needs -traditional""... $ac_c" 1>&6
-echo "configure:1097: checking whether ${CC-cc} needs -traditional" >&5
+echo "configure:1102: checking whether ${CC-cc} needs -traditional" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc_traditional'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
ac_pattern="Autoconf.*'x'"
cat > conftest.$ac_ext <<EOF
-#line 1103 "configure"
+#line 1108 "configure"
#include "confdefs.h"
#include <sgtty.h>
Autoconf TIOCGETP
@@ -1117,7 +1122,7 @@ rm -f conftest*
if test $ac_cv_prog_gcc_traditional = no; then
cat > conftest.$ac_ext <<EOF
-#line 1121 "configure"
+#line 1126 "configure"
#include "confdefs.h"
#include <termio.h>
Autoconf TCGETA
@@ -1153,14 +1158,14 @@ esac
echo $ac_n "checking for library containing crypt""... $ac_c" 1>&6
-echo "configure:1157: checking for library containing crypt" >&5
+echo "configure:1162: checking for library containing crypt" >&5
if eval "test \"`echo '$''{'ac_cv_search_crypt'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
ac_func_search_save_LIBS="$LIBS"
ac_cv_search_crypt="no"
cat > conftest.$ac_ext <<EOF
-#line 1164 "configure"
+#line 1169 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -1171,7 +1176,7 @@ int main() {
crypt()
; return 0; }
EOF
-if { (eval echo configure:1175: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1180: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
ac_cv_search_crypt="none required"
else
@@ -1182,7 +1187,7 @@ rm -f conftest*
test "$ac_cv_search_crypt" = "no" && for i in crypt; do
LIBS="-l$i $ac_func_search_save_LIBS"
cat > conftest.$ac_ext <<EOF
-#line 1186 "configure"
+#line 1191 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -1193,7 +1198,7 @@ int main() {
crypt()
; return 0; }
EOF
-if { (eval echo configure:1197: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1202: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
ac_cv_search_crypt="-l$i"
break
@@ -1215,14 +1220,14 @@ else :
fi
echo $ac_n "checking for library containing tgetent""... $ac_c" 1>&6
-echo "configure:1219: checking for library containing tgetent" >&5
+echo "configure:1224: checking for library containing tgetent" >&5
if eval "test \"`echo '$''{'ac_cv_search_tgetent'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
ac_func_search_save_LIBS="$LIBS"
ac_cv_search_tgetent="no"
cat > conftest.$ac_ext <<EOF
-#line 1226 "configure"
+#line 1231 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -1233,7 +1238,7 @@ int main() {
tgetent()
; return 0; }
EOF
-if { (eval echo configure:1237: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1242: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
ac_cv_search_tgetent="none required"
else
@@ -1244,7 +1249,7 @@ rm -f conftest*
test "$ac_cv_search_tgetent" = "no" && for i in termlib curses termcap; do
LIBS="-l$i $ac_func_search_save_LIBS"
cat > conftest.$ac_ext <<EOF
-#line 1248 "configure"
+#line 1253 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -1255,7 +1260,7 @@ int main() {
tgetent()
; return 0; }
EOF
-if { (eval echo configure:1259: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1264: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
ac_cv_search_tgetent="-l$i"
break
@@ -1277,14 +1282,14 @@ else :
fi
echo $ac_n "checking for library containing gethostbyname""... $ac_c" 1>&6
-echo "configure:1281: checking for library containing gethostbyname" >&5
+echo "configure:1286: checking for library containing gethostbyname" >&5
if eval "test \"`echo '$''{'ac_cv_search_gethostbyname'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
ac_func_search_save_LIBS="$LIBS"
ac_cv_search_gethostbyname="no"
cat > conftest.$ac_ext <<EOF
-#line 1288 "configure"
+#line 1293 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -1295,7 +1300,7 @@ int main() {
gethostbyname()
; return 0; }
EOF
-if { (eval echo configure:1299: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1304: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
ac_cv_search_gethostbyname="none required"
else
@@ -1306,7 +1311,7 @@ rm -f conftest*
test "$ac_cv_search_gethostbyname" = "no" && for i in nsl; do
LIBS="-l$i $ac_func_search_save_LIBS"
cat > conftest.$ac_ext <<EOF
-#line 1310 "configure"
+#line 1315 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -1317,7 +1322,7 @@ int main() {
gethostbyname()
; return 0; }
EOF
-if { (eval echo configure:1321: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1326: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
ac_cv_search_gethostbyname="-l$i"
break
@@ -1339,14 +1344,14 @@ else :
fi
echo $ac_n "checking for library containing connect""... $ac_c" 1>&6
-echo "configure:1343: checking for library containing connect" >&5
+echo "configure:1348: checking for library containing connect" >&5
if eval "test \"`echo '$''{'ac_cv_search_connect'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
ac_func_search_save_LIBS="$LIBS"
ac_cv_search_connect="no"
cat > conftest.$ac_ext <<EOF
-#line 1350 "configure"
+#line 1355 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -1357,7 +1362,7 @@ int main() {
connect()
; return 0; }
EOF
-if { (eval echo configure:1361: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1366: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
ac_cv_search_connect="none required"
else
@@ -1368,7 +1373,7 @@ rm -f conftest*
test "$ac_cv_search_connect" = "no" && for i in socket; do
LIBS="-l$i $ac_func_search_save_LIBS"
cat > conftest.$ac_ext <<EOF
-#line 1372 "configure"
+#line 1377 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -1379,7 +1384,7 @@ int main() {
connect()
; return 0; }
EOF
-if { (eval echo configure:1383: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1388: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
ac_cv_search_connect="-l$i"
break
@@ -1401,6 +1406,38 @@ else :
fi
+echo $ac_n "checking ss_family in sockaddr_storage""... $ac_c" 1>&6
+echo "configure:1411: checking ss_family in sockaddr_storage" >&5
+if eval "test \"`echo '$''{'ac_cv_ss_family'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ cat > conftest.$ac_ext <<EOF
+#line 1416 "configure"
+#include "confdefs.h"
+#include <sys/types.h>
+#include <sys/socket.h>
+int main() {
+struct sockaddr_storage ss; ss.ss_family;
+; return 0; }
+EOF
+if { (eval echo configure:1424: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ rm -rf conftest*
+ ac_cv_ss_family=yes
+else
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ rm -rf conftest*
+ ac_cv_ss_family=no
+fi
+rm -f conftest*
+if test "$ac_cv_ss_family" = no; then
+ DFLAGS="$DFLAGS -DNO_SS_FAMILY"
+fi
+
+fi
+
+echo "$ac_t""$ac_cv_ss_family" 1>&6
+
# Check whether --with-hesiod or --without-hesiod was given.
@@ -1414,12 +1451,12 @@ fi
if test "$hesiod" != no; then
HESLIB="-lhesiod"
echo $ac_n "checking for res_send""... $ac_c" 1>&6
-echo "configure:1418: checking for res_send" >&5
+echo "configure:1455: checking for res_send" >&5
if eval "test \"`echo '$''{'ac_cv_func_res_send'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 1423 "configure"
+#line 1460 "configure"
#include "confdefs.h"
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char res_send(); below. */
@@ -1442,7 +1479,7 @@ res_send();
; return 0; }
EOF
-if { (eval echo configure:1446: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1483: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_func_res_send=yes"
else
@@ -1460,7 +1497,7 @@ if eval "test \"`echo '$ac_cv_func_'res_send`\" = yes"; then
else
echo "$ac_t""no" 1>&6
echo $ac_n "checking for res_send in -lresolv""... $ac_c" 1>&6
-echo "configure:1464: checking for res_send in -lresolv" >&5
+echo "configure:1501: checking for res_send in -lresolv" >&5
ac_lib_var=`echo resolv'_'res_send | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -1468,7 +1505,7 @@ else
ac_save_LIBS="$LIBS"
LIBS="-lresolv $LIBS"
cat > conftest.$ac_ext <<EOF
-#line 1472 "configure"
+#line 1509 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -1479,7 +1516,7 @@ int main() {
res_send()
; return 0; }
EOF
-if { (eval echo configure:1483: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1520: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
diff --git a/contrib/tcsh/configure.in b/contrib/tcsh/configure.in
index ae330e23d91d..6a6d417c5581 100644
--- a/contrib/tcsh/configure.in
+++ b/contrib/tcsh/configure.in
@@ -115,6 +115,11 @@ case "${host}" in
tcsh_config_file=bsd4.4
;;
+ ## Mac OS X Server
+ *-*-darwin* )
+ tcsh_config_file=bsd4.4
+ ;;
+
## Silicon Graphics machines
*-sgi-iri* )
tcsh_config_file=irix
@@ -301,7 +306,16 @@ dnl else
dnl ipv6_cv_$1=no
dnl ifelse([$3], , :, [$3])
dnl fi])
-dnl IPv6_CHECK_FUNC(getaddrinfo, DFLAGS="$DFLAGS -DINET6")
+dnl IPv6_CHECK_FUNC(getnameinfo, DFLAGS="$DFLAGS -DINET6")
+
+AC_CACHE_CHECK([ss_family in sockaddr_storage], ac_cv_ss_family,
+[AC_TRY_COMPILE([#include <sys/types.h>
+#include <sys/socket.h>], [struct sockaddr_storage ss; ss.ss_family;],
+ ac_cv_ss_family=yes, ac_cv_ss_family=no)]
+if test "$ac_cv_ss_family" = no; then
+ DFLAGS="$DFLAGS -DNO_SS_FAMILY"
+fi
+)
AC_SUBST(DFLAGS)
diff --git a/contrib/tcsh/ed.chared.c b/contrib/tcsh/ed.chared.c
index ad2387a16706..ced9c8beff26 100644
--- a/contrib/tcsh/ed.chared.c
+++ b/contrib/tcsh/ed.chared.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/ed.chared.c,v 3.70 2001/09/02 21:06:02 christos Exp $ */
+/* $Header: /src/pub/tcsh/ed.chared.c,v 3.71 2002/03/08 17:36:45 christos Exp $ */
/*
* ed.chared.c: Character editing functions.
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -76,7 +72,7 @@
#include "sh.h"
-RCSID("$Id: ed.chared.c,v 3.70 2001/09/02 21:06:02 christos Exp $")
+RCSID("$Id: ed.chared.c,v 3.71 2002/03/08 17:36:45 christos Exp $")
#include "ed.h"
#include "tw.h"
diff --git a/contrib/tcsh/ed.decls.h b/contrib/tcsh/ed.decls.h
index 1a9098804eeb..435b10695a27 100644
--- a/contrib/tcsh/ed.decls.h
+++ b/contrib/tcsh/ed.decls.h
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/ed.decls.h,v 3.30 2001/02/19 23:30:43 kim Exp $ */
+/* $Header: /src/pub/tcsh/ed.decls.h,v 3.31 2002/03/08 17:36:45 christos Exp $ */
/*
* ed.decls.h: Editor external definitions
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
diff --git a/contrib/tcsh/ed.defns.c b/contrib/tcsh/ed.defns.c
index be2a2d535bd4..f286c40ca8d9 100644
--- a/contrib/tcsh/ed.defns.c
+++ b/contrib/tcsh/ed.defns.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/ed.defns.c,v 3.38 2001/04/26 19:07:47 kim Exp $ */
+/* $Header: /src/pub/tcsh/ed.defns.c,v 3.39 2002/03/08 17:36:45 christos Exp $ */
/*
* ed.defns.c: Editor function definitions and initialization
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,7 +32,7 @@
*/
#include "sh.h"
-RCSID("$Id: ed.defns.c,v 3.38 2001/04/26 19:07:47 kim Exp $")
+RCSID("$Id: ed.defns.c,v 3.39 2002/03/08 17:36:45 christos Exp $")
#include "ed.h"
diff --git a/contrib/tcsh/ed.h b/contrib/tcsh/ed.h
index 98c1ad256ece..ddc80ba79fd0 100644
--- a/contrib/tcsh/ed.h
+++ b/contrib/tcsh/ed.h
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/ed.h,v 3.31 2001/02/19 23:30:44 kim Exp $ */
+/* $Header: /src/pub/tcsh/ed.h,v 3.33 2002/07/06 22:28:13 christos Exp $ */
/*
* ed.h: Editor declarations and globals
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -187,39 +183,6 @@ EXTERN Char T_HasMeta; /* true if we have a meta key */
#define min(x,y) (((x)<(y))?(x):(y))
#define max(x,y) (((x)>(y))?(x):(y))
-/*
- * Terminal dependend data structures
- */
-typedef struct {
-#ifdef WINNT_NATIVE
- int dummy;
-#else /* !WINNT_NATIVE */
-# if defined(POSIX) || defined(TERMIO)
-# ifdef POSIX
- struct termios d_t;
-# else
- struct termio d_t;
-# endif /* POSIX */
-# else /* SGTTY */
-# ifdef TIOCGETP
- struct sgttyb d_t;
-# endif /* TIOCGETP */
-# ifdef TIOCGETC
- struct tchars d_tc;
-# endif /* TIOCGETC */
-# ifdef TIOCGPAGE
- struct ttypagestat d_pc;
-# endif /* TIOCGPAGE */
-# ifdef TIOCLGET
- int d_lb;
-# endif /* TIOCLGET */
-# endif /* POSIX || TERMIO */
-# ifdef TIOCGLTC
- struct ltchars d_ltc;
-# endif /* TIOCGLTC */
-#endif /* WINNT_NATIVE */
-} ttydata_t;
-
#define MODE_INSERT 0
#define MODE_REPLACE 1
#define MODE_REPLACE_1 2
@@ -250,6 +213,7 @@ typedef struct {
} ttyperm_t[NN_IO][M_NN];
extern ttyperm_t ttylist;
+#include "ed.term.h"
#include "ed.decls.h"
#endif /* _h_ed */
diff --git a/contrib/tcsh/ed.init.c b/contrib/tcsh/ed.init.c
index 805e2ecab56d..b293c19d9122 100644
--- a/contrib/tcsh/ed.init.c
+++ b/contrib/tcsh/ed.init.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/ed.init.c,v 3.44 2001/02/19 23:30:44 kim Exp $ */
+/* $Header: /src/pub/tcsh/ed.init.c,v 3.48 2002/07/06 22:28:13 christos Exp $ */
/*
* ed.init.c: Editor initializations
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,10 +32,9 @@
*/
#include "sh.h"
-RCSID("$Id: ed.init.c,v 3.44 2001/02/19 23:30:44 kim Exp $")
+RCSID("$Id: ed.init.c,v 3.48 2002/07/06 22:28:13 christos Exp $")
#include "ed.h"
-#include "ed.term.h"
#include "tc.h"
#include "ed.defns.h"
@@ -145,7 +140,7 @@ int snum;
if (snum > 0)
sigset(snum, window_change);
#endif /* UNRELSIGS */
- check_window_size(0);
+ windowchg = 1;
#ifndef SIGVOID
return (snum);
#endif
@@ -197,7 +192,7 @@ ed_Setup(rst)
vdisable = (unsigned char) _POSIX_VDISABLE;
#endif /* POSIX && _PC_VDISABLE && !BSD4_4 && !WINNT_NATIVE */
- if ((imode = adrof(STRinputmode)) != NULL) {
+ if ((imode = adrof(STRinputmode)) != NULL && imode->vec != NULL) {
if (!Strcmp(*(imode->vec), STRinsert))
inputmode = MODE_INSERT;
else if (!Strcmp(*(imode->vec), STRoverwrite))
diff --git a/contrib/tcsh/ed.inputl.c b/contrib/tcsh/ed.inputl.c
index 7ba2ed6c9d5f..68da69dd23b2 100644
--- a/contrib/tcsh/ed.inputl.c
+++ b/contrib/tcsh/ed.inputl.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/ed.inputl.c,v 3.49 2000/11/11 23:03:34 christos Exp $ */
+/* $Header: /src/pub/tcsh/ed.inputl.c,v 3.51 2002/06/25 19:02:11 christos Exp $ */
/*
* ed.inputl.c: Input line handling.
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,7 +32,7 @@
*/
#include "sh.h"
-RCSID("$Id: ed.inputl.c,v 3.49 2000/11/11 23:03:34 christos Exp $")
+RCSID("$Id: ed.inputl.c,v 3.51 2002/06/25 19:02:11 christos Exp $")
#include "ed.h"
#include "ed.defns.h" /* for the function names */
@@ -110,7 +106,7 @@ Inputl()
if (GettingInput)
MacroLvl = -1; /* editor was interrupted during input */
- if (imode) {
+ if (imode && imode->vec != NULL) {
if (!Strcmp(*(imode->vec), STRinsert))
inputmode = MODE_INSERT;
else if (!Strcmp(*(imode->vec), STRoverwrite))
@@ -229,7 +225,7 @@ Inputl()
curlen = 0;
curchoice = -1;
matchval = 1;
- if (crct && (!Strcmp(*(crct->vec), STRcmd) ||
+ if (crct && crct->vec != NULL && (!Strcmp(*(crct->vec), STRcmd) ||
!Strcmp(*(crct->vec), STRall))) {
PastBottom();
copyn(Origin, InputBuf, INBUFSIZE);
@@ -284,7 +280,8 @@ Inputl()
}
flush();
}
- } else if (crct && !Strcmp(*(crct->vec), STRcomplete)) {
+ } else if (crct && crct->vec != NULL &&
+ !Strcmp(*(crct->vec), STRcomplete)) {
if (LastChar > InputBuf && LastChar[-1] == '\n') {
LastChar[-1] = '\0';
LastChar--;
@@ -397,12 +394,12 @@ Inputl()
expnum = (int) (Cursor - InputBuf);
switch (matchval = tenematch(InputBuf, Cursor-InputBuf, fn)){
case 1:
- if (non_unique_match && matchbeep &&
+ if (non_unique_match && matchbeep && matchbeep->vec != NULL &&
(Strcmp(*(matchbeep->vec), STRnotunique) == 0))
SoundBeep();
break;
case 0:
- if (matchbeep) {
+ if (matchbeep && matchbeep->vec != NULL) {
if (Strcmp(*(matchbeep->vec), STRnomatch) == 0 ||
Strcmp(*(matchbeep->vec), STRambiguous) == 0 ||
Strcmp(*(matchbeep->vec), STRnotunique) == 0)
@@ -417,7 +414,7 @@ Inputl()
SoundBeep();
break;
}
- if (matchbeep) {
+ if (matchbeep && matchbeep->vec != NULL) {
if ((Strcmp(*(matchbeep->vec), STRambiguous) == 0 ||
Strcmp(*(matchbeep->vec), STRnotunique) == 0))
SoundBeep();
@@ -430,7 +427,8 @@ Inputl()
* (PWP: this is the best feature addition to tcsh I have
* seen in many months.)
*/
- if (autol && (Strcmp(*(autol->vec), STRambiguous) != 0 ||
+ if (autol && autol->vec != NULL &&
+ (Strcmp(*(autol->vec), STRambiguous) != 0 ||
expnum == Cursor - InputBuf)) {
PastBottom();
fn = (retval == CC_COMPLETE_ALL) ? LIST_ALL : LIST;
diff --git a/contrib/tcsh/ed.refresh.c b/contrib/tcsh/ed.refresh.c
index a7414dff515c..ed05b8b214f0 100644
--- a/contrib/tcsh/ed.refresh.c
+++ b/contrib/tcsh/ed.refresh.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/ed.refresh.c,v 3.28 2000/11/11 23:03:34 christos Exp $ */
+/* $Header: /src/pub/tcsh/ed.refresh.c,v 3.29 2002/03/08 17:36:45 christos Exp $ */
/*
* ed.refresh.c: Lower level screen refreshing functions
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,7 +32,7 @@
*/
#include "sh.h"
-RCSID("$Id: ed.refresh.c,v 3.28 2000/11/11 23:03:34 christos Exp $")
+RCSID("$Id: ed.refresh.c,v 3.29 2002/03/08 17:36:45 christos Exp $")
#include "ed.h"
/* #define DEBUG_UPDATE */
diff --git a/contrib/tcsh/ed.screen.c b/contrib/tcsh/ed.screen.c
index 5e620aef9fa5..f0e38ae708d2 100644
--- a/contrib/tcsh/ed.screen.c
+++ b/contrib/tcsh/ed.screen.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/ed.screen.c,v 3.48 2000/11/11 23:03:34 christos Exp $ */
+/* $Header: /src/pub/tcsh/ed.screen.c,v 3.49 2002/03/08 17:36:45 christos Exp $ */
/*
* ed.screen.c: Editor/termcap-curses interface
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,7 +32,7 @@
*/
#include "sh.h"
-RCSID("$Id: ed.screen.c,v 3.48 2000/11/11 23:03:34 christos Exp $")
+RCSID("$Id: ed.screen.c,v 3.49 2002/03/08 17:36:45 christos Exp $")
#include "ed.h"
#include "tc.h"
diff --git a/contrib/tcsh/ed.term.c b/contrib/tcsh/ed.term.c
index 00f932da42a1..f205e05799ea 100644
--- a/contrib/tcsh/ed.term.c
+++ b/contrib/tcsh/ed.term.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/ed.term.c,v 1.26 2001/08/06 23:51:09 christos Exp $ */
+/* $Header: /src/pub/tcsh/ed.term.c,v 1.28 2002/07/06 22:28:13 christos Exp $ */
/*
* ed.term.c: Low level terminal interface
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -37,10 +33,9 @@
#include "sh.h"
#ifndef WINNT_NATIVE
-RCSID("$Id: ed.term.c,v 1.26 2001/08/06 23:51:09 christos Exp $")
+RCSID("$Id: ed.term.c,v 1.28 2002/07/06 22:28:13 christos Exp $")
#include "ed.h"
-#include "ed.term.h"
int didsetty = 0;
ttyperm_t ttylist = {
diff --git a/contrib/tcsh/ed.term.h b/contrib/tcsh/ed.term.h
index bcd000be96f2..f868213af6f1 100644
--- a/contrib/tcsh/ed.term.h
+++ b/contrib/tcsh/ed.term.h
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/ed.term.h,v 1.13 1996/09/24 16:57:20 christos Exp $ */
+/* $Header: /src/pub/tcsh/ed.term.h,v 1.16 2002/07/06 22:28:13 christos Exp $ */
/*
* ed.term.h: Local terminal header
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -454,9 +450,10 @@
/*
* fix for hpux10 inconsistency: it has VWERASE, but TIOCSLTC returns
* EINVAL if one tries to change it
+ * Also for RH6.2 on the alpha, defined TIOCGLTC, but does not have
+ * struct ltchars
*/
-#if defined(hpux) && defined(VSUSP) && defined(VDSUSP) && defined(VWERASE) && d
-efined(VLNEXT)
+#if (defined(hpux) && defined(VSUSP) && defined(VDSUSP) && defined(VWERASE) && defined(VLNEXT)) || defined(__linux__)
# undef TIOCGLTC /* not really needed */
# undef TIOCSLTC
#endif
@@ -489,4 +486,37 @@ efined(VLNEXT)
#define C_NCC 25
#define C_SH(A) (1 << (A))
+/*
+ * Terminal dependend data structures
+ */
+typedef struct {
+#ifdef WINNT_NATIVE
+ int dummy;
+#else /* !WINNT_NATIVE */
+# if defined(POSIX) || defined(TERMIO)
+# ifdef POSIX
+ struct termios d_t;
+# else
+ struct termio d_t;
+# endif /* POSIX */
+# else /* SGTTY */
+# ifdef TIOCGETP
+ struct sgttyb d_t;
+# endif /* TIOCGETP */
+# ifdef TIOCGETC
+ struct tchars d_tc;
+# endif /* TIOCGETC */
+# ifdef TIOCGPAGE
+ struct ttypagestat d_pc;
+# endif /* TIOCGPAGE */
+# ifdef TIOCLGET
+ int d_lb;
+# endif /* TIOCLGET */
+# endif /* POSIX || TERMIO */
+# ifdef TIOCGLTC
+ struct ltchars d_ltc;
+# endif /* TIOCGLTC */
+#endif /* WINNT_NATIVE */
+} ttydata_t;
+
#endif /* _h_ed_term */
diff --git a/contrib/tcsh/ed.xmap.c b/contrib/tcsh/ed.xmap.c
index c066ca763b42..47365d7d8d45 100644
--- a/contrib/tcsh/ed.xmap.c
+++ b/contrib/tcsh/ed.xmap.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/ed.xmap.c,v 3.24 2001/04/27 22:37:03 christos Exp $ */
+/* $Header: /src/pub/tcsh/ed.xmap.c,v 3.25 2002/03/08 17:36:45 christos Exp $ */
/*
* ed.xmap.c: This module contains the procedures for maintaining
* the extended-key map.
@@ -70,11 +70,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -92,7 +88,7 @@
*/
#include "sh.h"
-RCSID("$Id: ed.xmap.c,v 3.24 2001/04/27 22:37:03 christos Exp $")
+RCSID("$Id: ed.xmap.c,v 3.25 2002/03/08 17:36:45 christos Exp $")
#include "ed.h"
#include "ed.defns.h"
diff --git a/contrib/tcsh/gethost.c b/contrib/tcsh/gethost.c
index 236be59b7867..b57df166190b 100644
--- a/contrib/tcsh/gethost.c
+++ b/contrib/tcsh/gethost.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/gethost.c,v 1.7 1997/10/28 22:34:19 christos Exp $ */
+/* $Header: /src/pub/tcsh/gethost.c,v 1.8 2002/03/08 17:36:46 christos Exp $ */
/*
* gethost.c: Create version file from prototype
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,7 +32,7 @@
*/
#include "sh.h"
-RCSID("$Id: gethost.c,v 1.7 1997/10/28 22:34:19 christos Exp $")
+RCSID("$Id: gethost.c,v 1.8 2002/03/08 17:36:46 christos Exp $")
#ifdef SCO
# define perror __perror
diff --git a/contrib/tcsh/glob.3 b/contrib/tcsh/glob.3
index aecddddc74c2..f369fc6be739 100644
--- a/contrib/tcsh/glob.3
+++ b/contrib/tcsh/glob.3
@@ -13,11 +13,7 @@
.\" 2. Redistributions in binary form must reproduce the above copyright
.\" notice, this list of conditions and the following disclaimer in the
.\" documentation and/or other materials provided with the distribution.
-.\" 3. All advertising materials mentioning features or use of this software
-.\" must display the following acknowledgement:
-.\" This product includes software developed by the University of
-.\" California, Berkeley and its contributors.
-.\" 4. Neither the name of the University nor the names of its contributors
+.\" 3. Neither the name of the University nor the names of its contributors
.\" may be used to endorse or promote products derived from this software
.\" without specific prior written permission.
.\"
diff --git a/contrib/tcsh/glob.c b/contrib/tcsh/glob.c
index 23dc61bff771..e8e5e13e008a 100644
--- a/contrib/tcsh/glob.c
+++ b/contrib/tcsh/glob.c
@@ -13,11 +13,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
diff --git a/contrib/tcsh/glob.h b/contrib/tcsh/glob.h
index eb8753a466da..e8e4fc892528 100644
--- a/contrib/tcsh/glob.h
+++ b/contrib/tcsh/glob.h
@@ -15,11 +15,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -75,7 +71,7 @@ typedef struct {
#define GLOB_NOMATCH (-3) /* No match, and GLOB_NOCHECK was not set. */
#define GLOB_NOSYS (-4) /* Implementation does not support function. */
-#if !defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)
+/* #if !defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE) */
#define GLOB_ALTDIRFUNC 0x0040 /* Use alternately specified directory funcs. */
#define GLOB_BRACE 0x0080 /* Expand braces ala csh. */
#define GLOB_MAGCHAR 0x0100 /* Pattern had globbing characters. */
@@ -86,7 +82,7 @@ typedef struct {
#define GLOB_QUOTE 0x2000 /* XXX: source compatibility */
#define GLOB_ABEND GLOB_ABORTED /* source compatibility */
-#endif
+/* #endif */
int glob __P((const char *, int, int (*)(const char *, int), glob_t *));
void globfree __P((glob_t *));
diff --git a/contrib/tcsh/host.defs b/contrib/tcsh/host.defs
index d3737b8447e0..b68bd4c0cb77 100644
--- a/contrib/tcsh/host.defs
+++ b/contrib/tcsh/host.defs
@@ -1,5 +1,5 @@
newcode :
-/* $Header: /src/pub/tcsh/host.defs,v 1.31 2001/06/10 02:19:11 christos Exp $ */
+/* $Header: /src/pub/tcsh/host.defs,v 1.35 2002/07/23 16:13:21 christos Exp $ */
/*
* host.defs: Hosttype/Machtype etc.
*/
@@ -15,11 +15,7 @@ newcode :
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -37,7 +33,7 @@ newcode :
*/
#include "sh.h"
-RCSID("$Id: host.defs,v 1.31 2001/06/10 02:19:11 christos Exp $")
+RCSID("$Id: host.defs,v 1.35 2002/07/23 16:13:21 christos Exp $")
endcode :
@@ -468,7 +464,7 @@ enddef :
newdef : defined(__NetBSD__)
comment : NetBSD
-vendor : defined(arm32) : "acorn"
+vendor : defined(arm32) || defined(__arm__) : "acorn"
vendor : defined(alpha) : "digital"
vendor : defined(amiga) : "commodore"
vendor : defined(atari) : "atari"
@@ -484,7 +480,9 @@ vendor : defined(sun3) : "sun"
vendor : defined(vax) : "digital"
hosttype: : "NetBSD"
ostype : : "NetBSD"
-machtype: defined(arm32) : "arm32"
+machtype: defined(arm32) || defined(__APCS_32__) : "arm32"
+machtype: defined(arm26) || defined(__APCS_26__) : "arm26"
+machtype: defined(arm) || defined(__arm__) : "arm"
machtype: defined(sparc) : "sparc"
machtype: defined(mc68020) : "m68k"
machtype: defined(M_i386) : "i386"
@@ -727,12 +725,12 @@ machtype: defined(sparc) || defined(__sparc__) : "sparc"
enddef :
-newdef : defined(__APPLE__)
-comment : Rhapsody
+newdef : defined(__APPLE__) && defined(__MACH__)
+comment : OS X
vendor : : "apple"
hosttype: defined(__i386__) : "intel-pc"
-hosttype: defined(__ppc__) : "macintosh"
-ostype : : "rhapsody"
+hosttype: defined(__ppc__) : "powermac"
+ostype : : "darwin"
machtype: defined(__i386__) : "i386"
machtype: defined(__ppc__) : "powerpc"
enddef :
diff --git a/contrib/tcsh/nls/finnish/set1 b/contrib/tcsh/nls/finnish/set1
index 3c52d4507049..c5e61cf1953d 100644
--- a/contrib/tcsh/nls/finnish/set1
+++ b/contrib/tcsh/nls/finnish/set1
@@ -1,4 +1,4 @@
-$ $Id: set1,v 1.1 2000/01/14 22:57:31 christos Exp $
+$ $Id: set1,v 1.2 2001/09/03 02:13:26 kim Exp $
$ Error messages
$set 1
1 Kielioppivirhe
@@ -137,4 +137,4 @@ $set 1
134 KДyttЖ: unlimit [-fh] [rajoitteet (limits)]
135 Muuttujalle $%S ei voida asettaa arvoa
136 Viitattua tyЖtД ei ole
-137 Tuntematon colorls -muuttuja `%c%c'
+137 Tuntematon colorls-muuttuja `%c%c'
diff --git a/contrib/tcsh/nls/finnish/set20 b/contrib/tcsh/nls/finnish/set20
index 4fa3a93288b4..94314dba29fd 100644
--- a/contrib/tcsh/nls/finnish/set20
+++ b/contrib/tcsh/nls/finnish/set20
@@ -1,4 +1,4 @@
-$ $Id: set20,v 1.1 2000/01/14 22:57:32 christos Exp $
+$ $Id: set20,v 1.2 2001/09/03 02:14:04 kim Exp $
$ tc.bind.c
$set 20
1 Invalid key name `%S'\n
@@ -6,13 +6,13 @@ $set 20
3 Bad command name: %S\n
4 Bad key spec %S\n
5 Null string specification\n
-6 Standard key bindings\n
-7 Alternative key bindings\n
-8 Multi-character bindings\n
-9 Arrow key bindings\n
-10 %-15s-> is undefined\n
-11 BUG!!! %s isn't bound to anything.\n
-12 Usage: bindkey [options] [--] [KEY [COMMAND]]\n
+6 Standard nДppДinmДДrittelyt\n
+7 Vaihtoehtoiset nДppДinmДДrittelyt\n
+8 Monimerkkiset mДДrittelyt\n
+9 NuolinДppДinmДДrittelyt\n
+10 %-15s-> ei ole mДДritelty\n
+11 VIKA!!! %s ei ole mДДritelty mihinkДДn nДppДimeen.\n
+12 KДyttЖ: bindkey [valitsimet] [--] [NдPPдIN [KOMENTO]]\n
13 -a list or bind KEY in alternative key map\n
14 -b interpret KEY as a C-, M-, F- or X- key name\n
15 -s interpret COMMAND as a literal string to be output\n
@@ -25,8 +25,8 @@ $set 20
22 -k interpret KEY as a symbolic arrow-key name\n
23 -- force a break from option processing\n
24 -u (or any invalid option) this message\n
-25 Without KEY or COMMAND, prints all bindings\n
-26 Without COMMAND, prints the binding for KEY.\n
+25 Ilman NдPPдINTд tai KOMENTOA tulostetaan kaikki mДДrittelyt\n
+26 Ilman KOMENTOA tulostetaan NдPPдIMEN mДДrittely.\n
27 bad key specification -- null string\n
28 bad key specification -- empty string\n
29 Bad function-key specification. Null key not allowed\n
@@ -36,6 +36,6 @@ $set 20
33 Bad function-key specification.\n
34 Null key not allowed\n
35 bad key specification -- unknown name "%S"\n
-36 usage: bind [KEY | COMMAND KEY | "emacs" | "vi" | "-a"]\n
+36 KДyttЖ: bind [NдPPдIN | KOMENTO NдPPдIN | "emacs" | "vi" | "-a"]\n
37 Invalid function
38 %s\t\tis undefined\n
diff --git a/contrib/tcsh/nls/pl/set1 b/contrib/tcsh/nls/pl/set1
index f7384624cbf8..277a5966f1b8 100644
--- a/contrib/tcsh/nls/pl/set1
+++ b/contrib/tcsh/nls/pl/set1
Binary files differ
diff --git a/contrib/tcsh/nls/pl/set13 b/contrib/tcsh/nls/pl/set13
index eeb48738215e..c3143b4d906a 100644
--- a/contrib/tcsh/nls/pl/set13
+++ b/contrib/tcsh/nls/pl/set13
@@ -6,7 +6,7 @@ $set 13
3 maska odpluskwiania = 0x%08x\n
4 %d trafieЯ, %d chybieЯ, %d%%\n
5 %S: polecenie wbudowane w powЁokЙ.\n
-6 %S: nie znaleziono polecenia.\n
+6 %S: Nie znaleziono polecenia.\n
7 gdzie: / w poleceniu nie ma sensu\n
8 %S jest aliasem do
9 %S jest wbudowane w powЁokЙ\n
diff --git a/contrib/tcsh/nls/pl/set17 b/contrib/tcsh/nls/pl/set17
index 5a796eba6c27..65ffc3a83990 100644
--- a/contrib/tcsh/nls/pl/set17
+++ b/contrib/tcsh/nls/pl/set17
@@ -4,7 +4,7 @@ $set 17
1 PLUSKWA: czekam na zadanie pracuj╠ce w tle!\n
2 ZakoЯczono %d\n
3 PLUSKWA: proces wywoЁany drugi raz
-4 DziaЁa
+4 Running
5 SygnaЁ
6 ZwrСcono %-25d
7 ZakoЯczony
diff --git a/contrib/tcsh/nls/pl/set19 b/contrib/tcsh/nls/pl/set19
index 23166bced888..dff95c53c624 100644
--- a/contrib/tcsh/nls/pl/set19
+++ b/contrib/tcsh/nls/pl/set19
@@ -2,12 +2,12 @@ $ $Id: set19,v 1.3 1996/04/26 20:31:58 christos Exp $
$ tc.alloc.c
$set 19
1 n-bajtСw=%d: Brak pamiЙci\n
-2 free(%lx) wywoЁany przed jak╠kolwiek allokacj╠.
-3 free(%lx) ponad obszarem pamiЙci.
-4 free(%lx) poni©ej pocz╠tku u©ywanej pamiЙci.
-5 free(%lx) zЁy blok.
-6 free(%lx) zЁe sprawdzanie zasiЙgu.
-7 free(%lx) zЁy index bloku.
+2 free(%lx) wywoЁany przez jak╠kolwiek allokacj╠.
+3 free(%lx) above top of memory.
+4 free(%lx) below bottom of memory.
+5 free(%lx) bad block.
+6 free(%lx) bad range check.
+7 free(%lx) bad block index.
8 %s aktualnie allokowana pamiЙФ:\nwolna:\t
9 \nu©ywane:\t
10 \n\tAktualnie w u©yciu: %d, wolnych: %d\n
diff --git a/contrib/tcsh/nls/pl/set2 b/contrib/tcsh/nls/pl/set2
index 7c18bac4dabc..ae25b6904c45 100644
--- a/contrib/tcsh/nls/pl/set2
+++ b/contrib/tcsh/nls/pl/set2
@@ -10,59 +10,59 @@ $set 2
7 Abort
8 IOT trap
9 System Crash Imminent
-10 PowrСt z bЁЙdem
+10 Error exit
11 EMT trap
12 Floating exception
13 Zabity
-14 1 sygnaЁ u©ytkownika
-15 2 sygnaЁ u©ytkownika
+14 User signal 1
+15 User signal 2
16 Naruszenie ochrony pamiЙci
17 BЁ╠d szyny
18 Program range error
19 Operand range error
20 NieprawidЁowe wywoЁanie systemowe
-21 Przerwany potok
+21 Broken pipe
22 Alarm clock
23 ZakoЯczono
-24 Zmiana statusu potomka
+24 Child status change
25 ╕mierФ potomka
-26 BЁ╠d specyficzny dla Apollo
+26 Apollo-specific fault
27 Potomek zakoЯczyЁ dziaЁanie, lub zostaЁ wyЁ╠czony
28 Potomek zakoЯczyЁ dziaЁanie
29 Brak zasilania
-30 ZasСb stracony
+30 Resource Lost
31 Przerwanie (Ctrl-Break)
32 Input/output possible signal
33 Asynchroniczne We/Wy (select)
-34 Pilne zdarzenie na kanale I/O
+34 Urgent condition on I/O channel
35 Multitasking wake-up
36 Multitasking kill
37 Fortran asynchronous I/O completion
38 Recovery
-39 Nienaprawialny bЁ╠d pamiЙci
+39 Uncorrectable memory error
40 Limit czasu CPU przekroczony
41 System shutdown imminent
42 micro-tasking group-no wakeup flag set
43 Thread error - (use cord -T for detailed info)
-44 BЁ╠d rejestru parzysto╤ci dla CRAY Y-MP
-45 ╞╠danie informacji
+44 CRAY Y-MP register parity error
+45 Information request
46 Zawieszony (sygnaЁ)
47 Zatrzymany (sygnaЁ)
48 Zawieszony
49 Zatrzymany
-50 Kontynuowany
-51 Zawieszony (oczekuje wej╤cia z tty)
-52 Zatrzymany (oczekuje wej╤cia z tty)
-53 Zawieszony (wyj╤cie na tty)
-54 Zatrzymany (wyj╤cie na tty)
+50 Continued
+51 Suspended (tty input)
+52 Stopped (tty input)
+53 Suspended (tty output)
+54 Stopped (tty output)
55 Window status changed
56 Window size changed
57 Phone status changed
-58 Limit czasu CPU wyczerpany
-59 Limit systemu plikСw wyczerpany
+58 Cputime limit exceeded
+59 Filesize limit exceeded
60 Virtual time alarm
61 Profiling time alarm
-62 sygnaЁ DIL
+62 DIL signal
63 Pollable event occured
64 Process's lwps are blocked
65 Special LWP signal
@@ -87,14 +87,14 @@ $set 2
84 Secure attention key
85 Reschedule
86 Signaling SS$_DEBUG
-87 Zmieniono priorytet
+87 Priority changed
88 True deadlock detected
89 New input character
-90 Limit stosu wyczerpany
-91 Nieu©ywany sygnaЁ
+90 Stack limit exceeded
+91 Unused signal
92 LM overlay
-93 system zamro©ony
-94 system odmro©ony
+93 system freeze
+94 system defreeze
95 dead lock
96 exceeded memory size limit
97 exceeded data size limit
@@ -102,8 +102,8 @@ $set 2
99 exce error for no memory
100 check point start
101 check point start of kernel
-102 pocz╠tek restartu
-103 restart j╠dra
+102 restart start
+103 restart of kernel
104 exeeded XMU size limit
105 exeeded RLG0 limit
106 exeeded RLG1 limit
diff --git a/contrib/tcsh/nls/pl/set20 b/contrib/tcsh/nls/pl/set20
index 432c7728e819..1be271474fc6 100644
--- a/contrib/tcsh/nls/pl/set20
+++ b/contrib/tcsh/nls/pl/set20
@@ -1,18 +1,18 @@
$ $Id: set20,v 1.2 1995/03/19 18:07:15 christos Exp $
$ tc.bind.c
$set 20
-1 NieprawidЁowa nazwa klawisza `%S'\n
-2 NieprawidЁowa nazwa klawisza: %S\n
-3 NieprawidЁowa nazwa polecenia: %S\n
+1 Invalid key name `%S'\n
+2 Bad key name: %S\n
+3 Bad command name: %S\n
4 Bad key spec %S\n
5 Null string specification\n
-6 Standardowe przyporz╠dkowania klawiszy\n
-7 Alternatywne przyporz╠dkowania klawiszy\n
+6 Standard key bindings\n
+7 Alternative key bindings\n
8 Multi-character bindings\n
9 Arrow key bindings\n
10 %-15s-> is undefined\n
-11 Pluskwa!!! %s nie jest przyporz╠dkowany niczemu.\n
-12 U©ycie: bindkey [opcje] [--] [Klawisz [POLECENIE]]\n
+11 BUG!!! %s isn't bound to anything.\n
+12 Usage: bindkey [options] [--] [KEY [COMMAND]]\n
13 -a list or bind KEY in alternative key map\n
14 -b interpret KEY as a C-, M-, F- or X- key name\n
15 -s interpret COMMAND as a literal string to be output\n
@@ -36,6 +36,6 @@ $set 20
33 Bad function-key specification.\n
34 Null key not allowed\n
35 bad key specification -- unknown name "%S"\n
-36 u©ycie: bind [Klawisz | Klawisz polecenia | "emacs" | "vi" | "-a"]\n
-37 NieprawidЁowa funkcja
-38 %s\t\tjest niezdefiniowany\n
+36 usage: bind [KEY | COMMAND KEY | "emacs" | "vi" | "-a"]\n
+37 Invalid function
+38 %s\t\tis undefined\n
diff --git a/contrib/tcsh/nls/pl/set21 b/contrib/tcsh/nls/pl/set21
index 64e60e89572e..9484ba07ed6e 100644
--- a/contrib/tcsh/nls/pl/set21
+++ b/contrib/tcsh/nls/pl/set21
@@ -1,5 +1,5 @@
$ $Id: set21,v 1.2 1995/03/19 18:07:15 christos Exp $
$ tc.disc.c
$set 21
-1 Nie mogЁem pobraФ lokalnych znakСw.\n
-2 Nie mogЁem ustawiФ lokalnych znakСw.\n
+1 Couldn't get local chars.\n
+2 Couldn't set local chars.\n
diff --git a/contrib/tcsh/nls/pl/set22 b/contrib/tcsh/nls/pl/set22
index 173ef5562eed..6aa8a2905c05 100644
--- a/contrib/tcsh/nls/pl/set22
+++ b/contrib/tcsh/nls/pl/set22
@@ -1,17 +1,17 @@
$ $Id: set22,v 1.2 1995/03/19 18:07:15 christos Exp $
$ tc.func.c
$set 22
-1 %S: \t jest aliasem do
-2 \nNieprawidЁowe hasЁo dla %s\n
+1 %S: \t aliased to
+2 \nIncorrect passwd for %s\n
3 Faulty alias 'precmd' removed.\n
4 Faulty alias 'cwdcmd' removed.\n
5 Faulty alias 'beepcmd' removed.\n
6 Faulty alias 'periodic' removed.\n
-7 przetwarzam liniЙ poleceЯ\n
-8 Czy na pewno chcesz usun╠Ф wszystkie pliki? [n/t]
-9 pomijam kasowanie plikСw!\n
-10 lini╠ poleceЯ jest teraz:\n
-11 przetwarzam liniЙ poleceЯ\n
-12 w jednej z list\n
-13 lini╠ poleceЯ jest teraz:\n
-14 tT
+7 parsing command line\n
+8 Do you really want to delete all files? [n/y]
+9 skipping deletion of files!\n
+10 command line now is:\n
+11 parsing command line\n
+12 in one of the lists\n
+13 command line now is:\n
+14 yY
diff --git a/contrib/tcsh/nls/pl/set23 b/contrib/tcsh/nls/pl/set23
index 2cecc8ca2069..b350f59e7948 100644
--- a/contrib/tcsh/nls/pl/set23
+++ b/contrib/tcsh/nls/pl/set23
@@ -3,7 +3,7 @@ $ tc.os.c
$set 23
1 Bad cpu/site name
2 Site path too long
-3 nieznany
+3 unknown
4 site: %s\n
5 %d: Nie znaleziono komputera\n
6 setlocal: %s: %s\n
diff --git a/contrib/tcsh/nls/pl/set26 b/contrib/tcsh/nls/pl/set26
index 5c804ae9b332..aa854ad34bab 100644
--- a/contrib/tcsh/nls/pl/set26
+++ b/contrib/tcsh/nls/pl/set26
@@ -1,8 +1,8 @@
$ $Id: set26,v 1.2 1995/03/19 18:07:15 christos Exp $
$ tc.who.c
$set 26
-1 stat dla %s nie powiСdЁ siЙ. Wpisz "unset watch".\n
-2 Nie mo©na otworzyФ %s. Wpisz "unset watch".\n
+1 cannot stat %s. Please "unset watch".\n
+2 %s cannot be opened. Please "unset watch".\n
3 BUG! last element is not whotail!\n
4 backward:
5 BUG! first element is not whohead!\n
diff --git a/contrib/tcsh/nls/pl/set3 b/contrib/tcsh/nls/pl/set3
index b287ce2aeef2..6ab0639c2f42 100644
--- a/contrib/tcsh/nls/pl/set3
+++ b/contrib/tcsh/nls/pl/set3
Binary files differ
diff --git a/contrib/tcsh/nls/pl/set30 b/contrib/tcsh/nls/pl/set30
index 7e958fccd52c..2b7c32afc01c 100644
--- a/contrib/tcsh/nls/pl/set30
+++ b/contrib/tcsh/nls/pl/set30
@@ -7,10 +7,10 @@ $set 30
4 %s: Internal match error.\n
5 elementСw
6 wierszy
-7 Jest %d %s, pokazaФ je? [n/t]
+7 Jest %d %s, pokazaФ je? [n/y]
8 looking = %d\n
9 \ntcsh internal error: I don't know what I'm looking for!\n
10 nie jest katalogiem
11 nie zostaЁ znaleziony
12 jest nieczytelny
-13 tT
+13 yY
diff --git a/contrib/tcsh/nls/pl/set4 b/contrib/tcsh/nls/pl/set4
index 391ce7c964ad..a7d289cf83f2 100644
--- a/contrib/tcsh/nls/pl/set4
+++ b/contrib/tcsh/nls/pl/set4
@@ -41,5 +41,5 @@ $set 4
38 Can use physical tabs
39 Number of lines
40 Number of columns
-41 Posiada klawisz meta
+41 Has meta key
42 Newline ignored at right margin
diff --git a/contrib/tcsh/nls/pl/set7 b/contrib/tcsh/nls/pl/set7
index 2a0d195510a4..26e14132829a 100644
--- a/contrib/tcsh/nls/pl/set7
+++ b/contrib/tcsh/nls/pl/set7
@@ -1,27 +1,27 @@
$ $Id: set7,v 1.3 1996/04/26 20:32:04 christos Exp $
$ ed.screen.c
$set 7
-1 \n\tTcsh my╤li ©e twoj terminal posiada\n
-2 \tnastЙpuj╠c╠ charakterystykЙ:\n\n
-3 \tMa %d kolumn i %d linii\n
-4 \tKlawisze meta: %sposiada\n
+1 \n\tTcsh thinks your terminal has the\n
+2 \tfollowing characteristics:\n\n
+3 \tIt has %d columns and %d lines\n
+4 \tIt has %s meta key\n
5 a
-6 nie
-7 \tTabulatory: %spotrafi u©ywaФ\n
-8 nie
-9 \tAutomatyczne marginesy: %s\n
-10 tak
-11 nie
-12 \tMagiczne marginesy: %s\n
-13 (puste)
-14 tak
-15 nie
-16 ERROR: nie mo©na usuwaФ\r\n
+6 no
+7 \tIt can%s use tabs\n
+8 not
+9 \tIt %s automatic margins\n
+10 has
+11 does not have
+12 \tIt %s magic margins\n
+13 (empty)
+14 yes
+15 no
+16 ERROR: cannot delete\r\n
17 DeleteChars: num is riduculous: %d\r\n
-18 ERROR: nie mo©na wstawiaФ\r\n
+18 ERROR: cannot insert\r\n
19 StartInsert: num is riduculous: %d\r\n
-20 %s: Nie mo©na otworzyФ /etc/termcap.\n
-21 %s: Brak wpisu dla terminala typu "%s"\n
+20 %s: Cannot open /etc/termcap.\n
+21 %s: No entry for terminal type "%s"\n
22 %s: using dumb terminal settings.\n
23 %s: WARNING: Your terminal cannot move up.\n
24 Editing may be odd for long lines.\n
diff --git a/contrib/tcsh/nls/pl/set9 b/contrib/tcsh/nls/pl/set9
index d0aaf734a979..72511b4fca19 100644
--- a/contrib/tcsh/nls/pl/set9
+++ b/contrib/tcsh/nls/pl/set9
@@ -7,6 +7,6 @@ $set 9
4 Unbound extended key "%S"\n
5 Some extended keys too long for internal print buffer
6 Enumerate: BUG!! Null ptr passed\n!
-7 brak wej╤cia
-8 Co╤ musi byФ za: %c\n
+7 no input
+8 Something must follow: %c\n
9 Octal constant does not fit in a char.\n
diff --git a/contrib/tcsh/nls/russian/set1 b/contrib/tcsh/nls/russian/set1
index a962af24374c..416af779e9f5 100644
--- a/contrib/tcsh/nls/russian/set1
+++ b/contrib/tcsh/nls/russian/set1
@@ -1,4 +1,4 @@
-$ $Id: set1,v 1.1 2001/03/18 19:06:35 christos Exp $
+$ $Id: set1,v 1.3 2002/03/08 17:46:50 christos Exp $
$ Error messages
$set 1
1 Синтаксическая ошибка
@@ -15,14 +15,14 @@ $set 1
12 Отсутствует имя файла
13 Внутренняя ошибка glob
14 Команда не найдена
-15 Мало аргументов
-16 Много аргументов
+15 Слишком мало аргументов
+16 Слишком много аргументов
17 Слишком опасно переопределять это
18 Пустой if
19 Неверный then
20 Слова не в скобках
21 %s не найдено
-22 Неверный mask
+22 Неверное значение mask
23 Нет такого предела
24 Аргумент слишком велик
25 Неверный или неизвестный фактор увеличения
@@ -33,26 +33,26 @@ $set 1
30 Имя переменной должно начинаться с буквы
31 Слишком длинное имя переменной
32 В имени переменной должны содержаться алфавитно-цифровые символы
-33 Управление заданиями в этом шелле отсутсвует
-34 Синтах выражения
-35 Отсутсвует домашний каталог
+33 Управление заданиями отсутствует в этом шелле
+34 Синтаксис выражения
+35 Отсутствует домашний каталог
36 Не могу перейти в домашний каталог
37 Пропущена команда
-38 В присвоении отсутсвует выражение
+38 В присвоении отсутствует выражение
39 Неизвестный оператор
40 Неоднозначно
41 %s: Файл существует
-42 Argument for -c ends in backslash
+42 Аргумент для -c не должен оканчиваться на \
43 Прервано
-44 Subscript out of range
+44 Подпрограмма выходит за пределы
45 Переполнение строки
46 Нет такого задания
-47 Can't from terminal
-48 Not in while/foreach
+47 Не могу из терминала
+48 Не внутри while/foreach
49 Нет больше процессов
-50 No match
+50 Нет соответствий
51 Отсутствует %c
-52 Unmatched %c
+52 Нет соответствия для %c
53 Нет памяти
54 Не могу создать неименованный канал
55 %s: %s
@@ -61,43 +61,43 @@ $set 1
58 Аргументы должны являться идентификаторами заданий или процессов
59 Нет текущего задания
60 Нет предыдущего задания
-61 Задание соответствующее шаблону отсутствует
-62 Fork nesting > %d; maybe `...` loop
-63 No job control in subshells
-64 Sync fault: Process %d not found
-65 %sThere are suspended jobs
+61 Соответствующее шаблону задание отсутствует
+62 Вложенность fork > %d; возможно это цикл `...`
+63 Управление заданиями отсутствует в сабшеллах
+64 Ошибка синхронизации: Процесс %d не найден
+65 %sСуществуют отложенные задания
66 %sСуществуют остановленные задания
-67 No other directory
+67 Нет другого каталога
68 Стек каталогов пуст
69 Неверное имя каталога
70 Использование: %s [-%s]%s
-71 Отсутсвует операнд флага -h
-72 Not a login shell
+71 Отсутствует операнд для флага -h
+72 Не является login-шеллом
73 Деление на 0
-74 Mod by 0
-75 Bad scaling; did you mean "%s"?
-76 Can't suspend a login shell (yet)
+74 Остаток от деления на 0
+75 Плохой scaling; вы имеете в виду "%s"?
+76 Не могу отложить login-шелл (пока)
77 Неизвестный пользователь: %s
78 Переменная $home не установлена
79 Использование: history [-%s] [# число событий]
-80 $, ! или < запрещено к использованию с $# или $?
-81 Newline in variable name
-82 * запрещено к использованию с $# или $?
+80 $, ! или < запрещено использовать с $# или $?
+81 Перевод строки в имени переменной
+82 * запрещено использовать с $# или $?
83 $?<цифра> или $#<цифра> запрещено
84 Неверное имя переменной
-85 Newline in variable index
-86 Переполнения буфера расширения
-87 Синтах переменной
+85 Перевод строки в индексе переменной
+86 Переполнение буфера расширения
+87 Синтаксис переменной
88 Неверная форма !
-89 Отсутсвует предыдущая подстановка
+89 Отсутствует предыдущая подстановка
90 Плохая подстановка
-91 No previous left hand side
-92 Right hand side too long
+91 Отсутствует предыдущая левая сторона
+92 Правая сторона слишком длинная
93 Плохой модификатор !: %c
-94 Modifier failed
+94 Ошибка модификатора
95 Переполнение буфера подстановки
-96 Bad ! arg selector
-97 No prev search
+96 Плохой селектор для аргумента !
+97 Нет предыдущей строки поиска
98 %s: Событие не найдено
99 Слишком много )
100 Слишком много (
@@ -108,33 +108,33 @@ $set 1
105 Неоднозначное перенаправление ввода
106 Неверно указанные ()
107 Зацикливание псевдонимов
-108 No $watch variable set
-109 No scheduled events
+108 Переменная $watch не установлена
+109 Нет запланированных событий
110 Использование: sched -<номер элемента>.\nИспользование: sched [+]ЧЧ:ММ <команда>
111 Не так много событий для запуска по расписанию
112 Отсутствует команда для исполнения
113 Неверное время для события
-114 Relative time inconsistent with am/pm
-115 Out of termcap string space
+114 Относительное время не соответствует am/pm
+115 Переполнение строки termcap
116 Использование: settc %s [yes|no]
-117 Unknown capability `%s'
+117 Неизвестная capability `%s'
118 Неизвестный параметр termcap `%%%c'
119 Слишком много аргументов для `%s' (%d)
120 `%s' требует %d аргументов
-121 Использование: echotc [-v|-s] [<capability> [<args>]]
+121 Использование: echotc [-v|-s] [<capability> [<аргументы>]]
122 %s: %s. Неверная архитектура
123 !# зацикливание памяти команд
-124 Malformed file inquiry
-125 Selector overflow
+124 Неправильно сформированный файловый запрос
+125 Переполнение селектора
126 Неизвестная опция: `-%s'\nИспользование: %s [ -bcdefilmnqstvVxX -Dимя[=значение] ] [ аргумент ... ]
127 Неизвестная опция: `-%s'\nИспользование: %s [ -bcdefFilmnqstvVxX ] [ аргумент ... ]
128 Неизвестная опция: `-%s'\nИспользование: %s [ -bcdefilmnqstvVxX ] [ аргумент ... ]
-129 \nInvalid completion: "%s"
-130 \nInvalid %s: '%c'
-131 \nMissing separator '%c' after %s "%s"
-132 \nIncomplete %s: "%s"
-133 Нет операнда для флага -m
-134 Использование: unlimit [-fh] [limits]
+129 \nНеверное достраивание: "%s"
+130 \nНеверный %s: '%c'
+131 \nОтсутствует сепаратор '%c' после %s "%s"
+132 \n%s не полно: "%s"
+133 Отсутствует операнд для флага -m
+134 Использование: unlimit [-fh] [пределы]
135 $%S только для чтения
136 Нет такого задания
137 Неизвестное значение `%c%c' переменной colorls
diff --git a/contrib/tcsh/nls/russian/set10 b/contrib/tcsh/nls/russian/set10
index 8f4ac87683b5..4cf387ee63c9 100644
--- a/contrib/tcsh/nls/russian/set10
+++ b/contrib/tcsh/nls/russian/set10
@@ -1,8 +1,8 @@
-$ $Id: set10,v 1.1 2001/03/18 19:06:35 christos Exp $
+$ $Id: set10,v 1.2 2002/03/08 17:46:50 christos Exp $
$ ma.setp.c
$set 10
1 setpath: неверная команда '%s'.\n
2 setpath: недостаточно аргументов для команды '%s'.\n
-3 setpath: value missing in path '%s'\n
+3 setpath: отсутствует значение в пути '%s'\n
4 setpath: %s не найдено в %s\n
-5 setpath: %d not valid position in %s\n
+5 setpath: %d неверная позиция в %s\n
diff --git a/contrib/tcsh/nls/russian/set13 b/contrib/tcsh/nls/russian/set13
index 5eaebd01fe04..7bb54d120d72 100644
--- a/contrib/tcsh/nls/russian/set13
+++ b/contrib/tcsh/nls/russian/set13
@@ -1,13 +1,13 @@
-$ $Id: set13,v 1.1 2001/03/18 19:06:36 christos Exp $
+$ $Id: set13,v 1.2 2002/03/08 17:46:50 christos Exp $
$ sh.exec.c
$set 13
1 hash=%-4d dir=%-2d prog=%s\n
2 %d hash buckets of %d bits each\n
-3 debug mask = 0x%08x\n
-4 %d hits, %d misses, %d%%\n
-5 %S: shell built-in command.\n
-6 %S: Command not found.\n
-7 where: / in command makes no sense\n
-8 %S is aliased to
-9 %S is a shell built-in\n
+3 значение mask для отладки = 0x%08x\n
+4 %d совпадения(й), %d промаха(ов), %d%%\n
+5 %S: внутренняя команда.\n
+6 %S: Команда не найдена.\n
+7 where: / в команде не имеет смысла\n
+8 %S переопределено на
+9 %S является внутренней командой\n
10 hash miss:
diff --git a/contrib/tcsh/nls/russian/set17 b/contrib/tcsh/nls/russian/set17
index b5bd47a35a34..3e458ff8e821 100644
--- a/contrib/tcsh/nls/russian/set17
+++ b/contrib/tcsh/nls/russian/set17
@@ -1,16 +1,16 @@
-$ $Id: set17,v 1.1 2001/03/18 19:06:38 christos Exp $
+$ $Id: set17,v 1.2 2002/03/08 17:46:50 christos Exp $
$ sh.proc.c
$set 17
1 BUG: waiting for background job!\n
2 Выход %d\n
3 BUG: process flushed twice
-4 Running
+4 Выполняется
5 Сигнал
6 Exit %-25d
-7 Окончено
+7 Окончено
8 BUG: status=%-9o
9 \040(core dumped)
10 \040(wd:
11 wd now:
-12 %S: Already suspended\n
-13 %S: Already stopped\n
+12 %S: Уже отложено\n
+13 %S: Уже остановлено\n
diff --git a/contrib/tcsh/nls/russian/set18 b/contrib/tcsh/nls/russian/set18
index 5babefe0edb2..075aa75f0cb6 100644
--- a/contrib/tcsh/nls/russian/set18
+++ b/contrib/tcsh/nls/russian/set18
@@ -1,4 +1,4 @@
-$ $Id: set18,v 1.1 2001/03/18 19:06:38 christos Exp $
+$ $Id: set18,v 1.2 2002/03/08 17:46:50 christos Exp $
$ sh.set.c
$set 18
-1 Предупреждение: Длинный PATH обрезан\n
+1 Предупреждение: Чересчур длинный PATH обрезан\n
diff --git a/contrib/tcsh/nls/russian/set19 b/contrib/tcsh/nls/russian/set19
index 4082647c1ca9..676d8108865a 100644
--- a/contrib/tcsh/nls/russian/set19
+++ b/contrib/tcsh/nls/russian/set19
@@ -1,4 +1,4 @@
-$ $Id: set19,v 1.1 2001/03/18 19:06:38 christos Exp $
+$ $Id: set19,v 1.2 2002/03/08 17:46:50 christos Exp $
$ tc.alloc.c
$set 19
1 nbytes=%d: Нет памяти\n
@@ -10,6 +10,6 @@ $set 19
7 free(%lx) bad block index.
8 %s current memory allocation:\nfree:\t
9 \nused:\t
-10 \n\tTotal in use: %d, total free: %d\n
+10 \n\tВсего используется: %d, всего свободно: %d\n
11 \tAllocated memory from 0x%lx to 0x%lx. Real top at 0x%lx\n
12 Allocated memory from 0x%lx to 0x%lx (%ld).\n
diff --git a/contrib/tcsh/nls/russian/set2 b/contrib/tcsh/nls/russian/set2
index d11f834213d4..0fa8fba80539 100644
--- a/contrib/tcsh/nls/russian/set2
+++ b/contrib/tcsh/nls/russian/set2
@@ -1,8 +1,8 @@
-$ $Id: set2,v 1.1 2001/03/18 19:06:39 christos Exp $
+$ $Id: set2,v 1.2 2002/03/08 17:46:50 christos Exp $
$ Signal names
$set 2
1 Нулевой сигнал
-2 Hangup
+2 Разрыв связи
3 Прерывание
4 Выход
5 Неверная инструкция
@@ -23,29 +23,29 @@ $set 2
20 Неверный системный вызов
21 Broken pipe
22 Alarm clock
-23 Прерван
-24 Child status change
-25 Death of child
+23 Прервано
+24 Изменение состояния потомка
+25 Смерть потомка
26 Apollo-specific fault
27 Потомок остановился или завершился
28 Потомок завершился
-29 Power failure
+29 Сбой питания
30 Resource Lost
31 Break (Ctrl-Break)
32 Input/output possible signal
-33 Asynchronous I/O (select)
+33 Асинхронный ввод/вывод (select)
34 Urgent condition on I/O channel
35 Multitasking wake-up
36 Multitasking kill
37 Fortran asynchronous I/O completion
38 Recovery
-39 Uncorrectable memory error
+39 Неисправимая ошибка памяти
40 CPU time limit exceeded
41 System shutdown imminent
42 micro-tasking group-no wakeup flag set
43 Thread error - (use cord -T for detailed info)
-44 CRAY Y-MP register parity error
-45 Information request
+44 Ошибка четности в регистре CRAY Y-MP
+45 Запрос на информацию
46 Suspended (signal)
47 Stopped (signal)
48 Suspended
diff --git a/contrib/tcsh/nls/russian/set20 b/contrib/tcsh/nls/russian/set20
index 8d1795eb0185..78359940e1cb 100644
--- a/contrib/tcsh/nls/russian/set20
+++ b/contrib/tcsh/nls/russian/set20
@@ -1,41 +1,41 @@
-$ $Id: set20,v 1.2 2001/04/26 19:09:19 kim Exp $
+$ $Id: set20,v 1.4 2002/03/08 17:46:50 christos Exp $
$ tc.bind.c
$set 20
-1 Неверное имя ключа `%S'\n
-2 Плохое имя ключа: %S\n
+1 Неверное имя клавиши `%S'\n
+2 Плохое имя клавиши: %S\n
3 Плохое имя команды: %S\n
-4 Плохая спецификация ключа %S\n
-5 Null string specification\n
-6 Стандартные привязки ключей\n
-7 Альтернативные привязки ключей\n
-8 Multi-character bindings\n
-9 Arrow key bindings\n
-10 %-15s-> неопределено\n
+4 Плохая спецификация клавиши %S\n
+5 Пустая строка\n
+6 Стандартные привязки клавиш\n
+7 Альтернативные привязки клавиш\n
+8 Много-символьные привязки\n
+9 Привязки управляющих клавиш\n
+10 %-15s-> не определено\n
11 BUG!!! %s не связан ни с чем.\n
-12 Использование: bindkey [опции] [--] [КЛЮЧ [КОМАНДА]]\n
-13 -a list or bind KEY in alternative key map\n
-14 -b interpret KEY as a C-, M-, F- or X- key name\n
-15 -s interpret COMMAND as a literal string to be output\n
-16 -c interpret COMMAND as a builtin or external command\n
-17 -v bind all keys to vi bindings\n
-18 -e bind all keys to emacs bindings\n
-19 -d bind all keys to default editor's bindings\n
-20 -l list editor commands with descriptions\n
-21 -r remove KEY's binding\n
-22 -k interpret KEY as a symbolic arrow-key name\n
-23 -- force a break from option processing\n
-24 -u (or any invalid option) this message\n
-25 Без КЛЮЧа или КОМАНДы вывести все привязки.\n
-26 Без КОМАНДы, вывести привязку КЛЮЧа.\n
-27 плохая спецификация ключа -- нулевая строка\n
-28 плохая спецификация ключа -- пустая строка\n
-29 Плохая специфкация функциональной клавиши. Нулевой ключ запрещен\n
-30 плохая спецификация ключа -- неверный шестнадцатеричный номер\n
-31 плохая спецификация ключа -- неверный восьмеричный номер\n
-32 плохая спецификация ключа -- неверный десятичный номер\n
-33 Bad function-key specification.\n
-34 Нулевые ключи запрещены\n
-35 плохая спецификация ключаbad key specification -- unknown name "%S"\n
-36 использование: bind [КЛЮЧ | КОМАНДА КЛЮЧ | "emacs" | "vi" | "-a"]\n
+12 Использование: bindkey [опции] [--] [КЛАВИШа [КОМАНДа]]\n
+13 -a вывести или привязать КЛАВИШу в альтернативной раскладке клавиатуры\n
+14 -b воспринимать КЛАВИШу как C-, M-, F- или X- название клавиши\n
+15 -s воспринимать КОМАНДу как строку, которую нужно вывести\n
+16 -c воспринимать КОМАНДу как встроенную или внешнюю команду\n
+17 -v привязать все клавиши в соответствии с редактором vi\n
+18 -e привязать все клавиши в соответствии с редактором emacs\n
+19 -d привязать все клавиши в соответствии с редактором по умолчанию\n
+20 -l вывести список команд редактора и их описания\n
+21 -r удалить привязку КЛАВИШи\n
+22 -k воспринимать КЛАВИШу как явное название управляющей клавиши\n
+23 -- не воспринимать все последующие параметры как опции\n
+24 -u (или любая неправильная опция) вывести этот текст\n
+25 Без КЛАВИШи или КОМАНДы, вывести все привязки.\n
+26 Без КОМАНДы, вывести привязку КЛАВИШи\n.\n
+27 плохая спецификация клавиши -- нулевая строка\n
+28 плохая спецификация клавиши -- пустая строка\n
+29 Плохая спецификация функциональной клавиши. Нулевая клавиша запрещена\n
+30 плохая спецификация клавиши -- неверный шестнадцатеричный номер\n
+31 плохая спецификация клавиши -- неверный восьмеричный номер\n
+32 плохая спецификация клавиши -- неверный десятичный номер\n
+33 Плохая спецификация функциональной клавиши.\n
+34 Нулевые клавиши запрещены\n
+35 плохая спецификация клавиши -- неизвестное имя "%S"\n
+36 использование: bind [КЛАВИШа | КОМАНДа КЛАВИШа | "emacs" | "vi" | "-a"]\n
37 Неверная функция
-38 %s\t\tis undefined\n
+38 %s\t\tне определен\n
diff --git a/contrib/tcsh/nls/russian/set22 b/contrib/tcsh/nls/russian/set22
index 583af3aa9d95..b1d4e054dd95 100644
--- a/contrib/tcsh/nls/russian/set22
+++ b/contrib/tcsh/nls/russian/set22
@@ -1,17 +1,17 @@
-$ $Id: set22,v 1.1 2001/03/18 19:06:39 christos Exp $
+$ $Id: set22,v 1.3 2002/03/08 17:46:50 christos Exp $
$ tc.func.c
$set 22
-1 %S: \t переопределен в
-2 \nIncorrect passwd for %s\n
-3 Faulty alias 'precmd' removed.\n
-4 Faulty alias 'cwdcmd' removed.\n
-5 Faulty alias 'beepcmd' removed.\n
-6 Faulty alias 'periodic' removed.\n
+1 %S: \t переопределено в
+2 \nНеверный пароль для %s\n
+3 Ошибочное переопределение 'precmd' удалено.\n
+4 Ошибочное переопределение 'cwdcmd' удалено.\n
+5 Ошибочное переопределение 'beepcmd' удалено.\n
+6 Ошибочное переопределение 'periodic' удалено.\n
7 разбор командной строки\n
8 Вы действительно хотите удалить все файлы? [n/y]
-9 пропуск удаления всех файлов!\n
+9 удаление всех файлов пропущено!\n
10 командная строка теперь:\n
11 разбор командной строки\n
-12 in one of the lists\n
+12 в одном из списков\n
13 командная строка теперь:\n
14 yY
diff --git a/contrib/tcsh/nls/russian/set23 b/contrib/tcsh/nls/russian/set23
index 8802ad561dd5..3134bb76f396 100644
--- a/contrib/tcsh/nls/russian/set23
+++ b/contrib/tcsh/nls/russian/set23
@@ -1,4 +1,4 @@
-$ $Id: set23,v 1.1 2001/03/18 19:06:40 christos Exp $
+$ $Id: set23,v 1.2 2002/03/08 17:46:50 christos Exp $
$ tc.os.c
$set 23
1 Bad cpu/site name
@@ -19,16 +19,16 @@ $set 23
16 release: %s\n
17 version: %s\n
18 machine: %s\n
-19 getwd: Cannot open ".." (%s)
-20 getwd: Cannot chdir to ".." (%s)
-21 getwd: Read error in ".." (%s)
-22 getwd: Cannot change back to "." (%s)
-23 getwd: Cannot stat "/" (%s)
-24 getwd: Cannot stat "." (%s)
-25 getwd: Cannot stat directory "%s" (%s)
-26 getwd: Cannot open directory "%s" (%s)
-27 getwd: Cannot find "." in ".." (%s)
+19 getwd: Не могу открыть ".." (%s)
+20 getwd: Не могу сменить каталог на ".." (%s)
+21 getwd: Ошибка чтения в ".." (%s)
+22 getwd: Не могу вернуться назад в "." (%s)
+23 getwd: Не могу выполнить stat на "/" (%s)
+24 getwd: Не могу выполнить stat на "." (%s)
+25 getwd: Не могу выполнить stat на каталог "%s" (%s)
+26 getwd: Не могу открыть каталог "%s" (%s)
+27 getwd: Не могу найти "." в ".." (%s)
28 Неверный тип системы
-29 System type is not set
+29 Тип системы не установлен
30 Слишком много аргументов
31 Неверный аргумент
diff --git a/contrib/tcsh/nls/russian/set26 b/contrib/tcsh/nls/russian/set26
index e680370653d6..f351f29e4efb 100644
--- a/contrib/tcsh/nls/russian/set26
+++ b/contrib/tcsh/nls/russian/set26
@@ -1,15 +1,15 @@
-$ $Id: set26,v 1.1 2001/03/18 19:06:41 christos Exp $
+$ $Id: set26,v 1.2 2002/03/08 17:46:50 christos Exp $
$ tc.who.c
$set 26
-1 cannot stat %s. Please "unset watch".\n
-2 %s cannot be opened. Please "unset watch".\n
-3 BUG! last element is not whotail!\n
-4 backward:
-5 BUG! first element is not whohead!\n
-6 new: %s/%s\n
+1 не могу выполнить stat на %s. Пожалуйста, выполните "unset watch".\n
+2 %s не может быть открыт. Пожалуйста, выполните "unset watch".\n
+3 BUG! последний элемент не является whotail!\n
+4 назад:
+5 BUG! первый элемент не является whohead!\n
+6 новый: %s/%s\n
7 %n has %a %l from %m.
8 %n has %a %l.
9 logged on
10 logged off
11 replaced %s on
-12 local
+12 локальный
diff --git a/contrib/tcsh/nls/russian/set27 b/contrib/tcsh/nls/russian/set27
index 475cde2a69d7..42de51813734 100644
--- a/contrib/tcsh/nls/russian/set27
+++ b/contrib/tcsh/nls/russian/set27
@@ -1,8 +1,8 @@
-$ $Id: set27,v 1.1 2001/03/18 19:06:41 christos Exp $
+$ $Id: set27,v 1.3 2002/03/08 17:46:50 christos Exp $
$ tw.comp.c
$set 27
1 команда
-2 сеператор
+2 сепаратор
3 шаблон
4 интервал
5 завершение
diff --git a/contrib/tcsh/nls/russian/set3 b/contrib/tcsh/nls/russian/set3
index 70bcd78e2a3a..9442f1ff8e9a 100644
--- a/contrib/tcsh/nls/russian/set3
+++ b/contrib/tcsh/nls/russian/set3
@@ -1,4 +1,4 @@
-$ $Id: set3,v 1.2 2001/04/26 19:07:51 kim Exp $
+$ $Id: set3,v 1.3 2002/03/08 17:46:50 christos Exp $
$ Editor function descriptions
$set 3
1 Move back a character
@@ -115,10 +115,3 @@ $set 3
112 Vi goto the beginning of line
113 Perform which of current command
114 Paste cut buffer at cursor position
-115 Replace just-yanked text with yank from earlier kill
-116 (WIN32 only) Copy cut buffer to system clipboard
-117 (WIN32 only) Paste clipboard buffer at cursor position
-118 (WIN32 only) Convert each '/' in next word to '\\\\'
-119 (WIN32 only) Convert each '/' in previous word to '\\\\'
-120 (WIN32 only) Page visible console window up
-121 (WIN32 only) Page visible console window down
diff --git a/contrib/tcsh/nls/russian/set30 b/contrib/tcsh/nls/russian/set30
index 9aa0fe3ac984..178057349e23 100644
--- a/contrib/tcsh/nls/russian/set30
+++ b/contrib/tcsh/nls/russian/set30
@@ -1,16 +1,17 @@
-$ $Id: set30,v 1.1 2001/03/18 19:06:42 christos Exp $
+$ $Id: set30,v 1.2 2002/03/08 17:46:50 christos Exp $
$ tw.parse.c
$set 30
1 starting_a_command %d\n
2 complete %d
3 complete %d %S\n
-4 %s: Internal match error.\n
-5 items
-6 rows
-7 There are %d %s, list them anyway? [n/y]
+4 %s: Внутренняя match error.\n
+5 элементов
+6 рядов
+7 Найдено %d %s, вы действительно хотите вывести их всех? [n/y]
8 looking = %d\n
-9 \ntcsh internal error: I don't know what I'm looking for!\n
+9 \nвнутренняя ошибка tcsh: я не знаю, что я ищу!\n
10 не каталог
11 не найдено
12 нечитаемо
+12 нечитаемо
13 yY
diff --git a/contrib/tcsh/nls/russian/set31 b/contrib/tcsh/nls/russian/set31
index ca8c9db75f0b..432810a26508 100644
--- a/contrib/tcsh/nls/russian/set31
+++ b/contrib/tcsh/nls/russian/set31
@@ -1,7 +1,7 @@
-$ $Id: set31,v 1.1 2001/03/18 19:06:42 christos Exp $
+$ $Id: set31,v 1.2 2002/03/08 17:46:50 christos Exp $
$ vms.termcap.c
$set 31
1 Не могу открыть TERMCAP: [%s]\n
2 Не могу открыть %s.\n
3 Найдено %s в %s.\n
-4 No match found for %s in file %s\n
+4 Соответствий для %s не найдено в файле %s\n
diff --git a/contrib/tcsh/nls/russian/set4 b/contrib/tcsh/nls/russian/set4
index 53396bc4cba3..dd01982ee73b 100644
--- a/contrib/tcsh/nls/russian/set4
+++ b/contrib/tcsh/nls/russian/set4
@@ -1,26 +1,26 @@
-$ $Id: set4,v 1.1 2001/03/18 19:06:42 christos Exp $
+$ $Id: set4,v 1.2 2002/03/08 17:46:50 christos Exp $
$ Termcap strings
$set 4
-1 add new blank line
-2 audible bell
-3 clear to bottom
-4 clear to end of line
-5 cursor to horiz pos
-6 clear screen
-7 delete a character
-8 delete a line
-9 start delete mode
-10 end delete mode
-11 end insert mode
+1 добавить новую пустую строку
+2 звуковой звонок
+3 очистить до конца
+4 очистить до конца строки
+5 курсор на горизонтальную позицию
+6 очистить экран
+7 удалить символ
+8 удалить строку
+9 перейти в режим удаления
+10 выйти из режима удаления
+11 выйти из режима вставки
12 cursor from status line
13 home cursor
-14 insert character
-15 start insert mode
+14 вставить символ
+15 перейти в режим вставки
16 insert padding
-17 sends cursor down
-18 sends cursor left
-19 sends cursor right
-20 sends cursor up
+17 переместить курсор вниз
+18 переместить курсор влево
+19 переместить курсор вправо
+20 переместить курсор вверх
21 begin bold
22 end attributes
23 non destructive space
@@ -30,16 +30,16 @@ $set 4
27 cursor up one
28 begin underline
29 end underline
-30 visible bell
-31 delete multiple chars
+30 визуальный звонок
+31 удалить несколько символов
32 cursor down multiple
-33 insert multiple chars
+33 вставить несколько символов
34 cursor left multiple
35 cursor right multiple
36 cursor up multiple
37 Has automatic margins
38 Can use physical tabs
-39 Number of lines
-40 Number of columns
+39 Число строк
+40 Чисто столбцов
41 Has meta key
42 Newline ignored at right margin
diff --git a/contrib/tcsh/nls/russian/set6 b/contrib/tcsh/nls/russian/set6
index 73367a8f934d..2d05145c52b4 100644
--- a/contrib/tcsh/nls/russian/set6
+++ b/contrib/tcsh/nls/russian/set6
@@ -1,4 +1,4 @@
-$ $Id: set6,v 1.1 2001/03/18 19:06:43 christos Exp $
+$ $Id: set6,v 1.2 2002/03/08 17:46:50 christos Exp $
$ ed.inputl.c
$set 6
1 ОШИБКА: неверная команда ключа 0%o\r\n
@@ -6,6 +6,6 @@ $set 6
3 редактировать\n
4 прервать\n
5 нет\n
-6 No matching command\n
+6 Нет соответствующей команды\n
7 Неоднозначная команда\n
8 *** фатальная ОШИБКА редактора ***\r\n\n
diff --git a/contrib/tcsh/nls/russian/set7 b/contrib/tcsh/nls/russian/set7
index 490c63717ae3..d3788ae5694f 100644
--- a/contrib/tcsh/nls/russian/set7
+++ b/contrib/tcsh/nls/russian/set7
@@ -1,4 +1,4 @@
-$ $Id: set7,v 1.1 2001/03/18 19:06:43 christos Exp $
+$ $Id: set7,v 1.2 2002/03/08 17:46:50 christos Exp $
$ ed.screen.c
$set 7
1 \n\tTcsh thinks your terminal has the\n
@@ -10,20 +10,20 @@ $set 7
7 \tIt can%s use tabs\n
8 not
9 \tIt %s automatic margins\n
-10 has
-11 does not have
+10 имеет
+11 не имеет
12 \tIt %s magic margins\n
-13 (empty)
-14 yes
-15 no
-16 ERROR: cannot delete\r\n
+13 (пусто)
+14 да
+15 нет
+16 ОШИБКА: не могу удалить\r\n
17 DeleteChars: num is riduculous: %d\r\n
-18 ERROR: cannot insert\r\n
+18 ОШИБКА: не могу вставить\r\n
19 StartInsert: num is riduculous: %d\r\n
-20 %s: Cannot open /etc/termcap.\n
+20 %s: Не могу открыть /etc/termcap.\n
21 %s: No entry for terminal type "%s"\n
22 %s: using dumb terminal settings.\n
-23 %s: WARNING: Your terminal cannot move up.\n
+23 %s: ВНИМАНИЕ: Your terminal cannot move up.\n
24 Editing may be odd for long lines.\n
25 no clear EOL capability.\n
26 no delete char capability.\n
diff --git a/contrib/tcsh/nls/russian/set9 b/contrib/tcsh/nls/russian/set9
index 62320bc58307..cc65c73b7240 100644
--- a/contrib/tcsh/nls/russian/set9
+++ b/contrib/tcsh/nls/russian/set9
@@ -1,4 +1,4 @@
-$ $Id: set9,v 1.1 2001/03/18 19:06:44 christos Exp $
+$ $Id: set9,v 1.2 2002/03/08 17:46:50 christos Exp $
$ ed.xmap.c
$set 9
1 AddXkey: Null extended-key not allowed.\n
@@ -6,7 +6,7 @@ $set 9
3 DeleteXkey: Null extended-key not allowed.\n
4 Unbound extended key "%S"\n
5 Some extended keys too long for internal print buffer
-6 Enumerate: BUG!! Null ptr passed\n!
-7 no input
+6 Enumerate: BUG!! Передан нулевой указатель!\n
+7 нет вводимых данных
8 Something must follow: %c\n
-9 Octal constant does not fit in a char.\n
+9 Восьмеричная константа не умещается в char.\n
diff --git a/contrib/tcsh/nls/ukrainian/set1 b/contrib/tcsh/nls/ukrainian/set1
index d5547b3d50f8..edf93be89582 100644
--- a/contrib/tcsh/nls/ukrainian/set1
+++ b/contrib/tcsh/nls/ukrainian/set1
@@ -1,140 +1,140 @@
-$ $Id: set1,v 1.1 2000/11/11 23:03:42 christos Exp $
+$ $Id: set1,v 1.2 2002/07/01 20:50:22 christos Exp $
$ Error messages
$set 1
1 Синтаксична помилка
-2 %s is not allowed
-3 Word too long
-4 $< line too long
-5 No file for $0
-6 Incomplete [] modifier
-7 $ expansion must end before ]
-8 Bad : modifier in $ (%c)
-9 Subscript error
-10 Badly formed number
-11 No more words
+2 %s не дозволя╓ться
+3 Задовге слово
+4 Задовгий рядок $<
+5 Нема╓ файлу для $0
+6 Неповний модиф╕катор []
+7 Розширення $ ма╓ бути перед ]
+8 Поганий модиф╕катор : в $ (%c)
+9 Помилковий ╕ндекс
+10 Число погано сформоване
+11 Не можна б╕льше сл╕в
12 Пропущено ╕м'я файлу
-13 Internal glob error
+13 Внутр╕шня помилка glob
14 Нев╕дома команда
15 Замало параметр╕в
16 Забагато параметр╕в
17 Небезпечно створювати такий псевдон╕м
18 Порожн╕й оператор if
-19 Improper then
-20 Words not parenthesized
+19 Нев╕рне then
+20 Слова не в дужках
21 %s не знайдено
-22 Improper mask
-23 No such limit
-24 Argument too large
+22 Некоректна маска
+23 Такого л╕м╕ту не ╕сну╓
+24 Задовгий параметр
25 Improper or unknown scale factor
-26 Undefined variable
-27 Directory stack not that deep
-28 Поганий номер сигналу
-29 Unknown signal; kill -l lists signals
-30 Variable name must begin with a letter
-31 Variable name too long
-32 Variable name must contain alphanumeric characters
-33 No job control in this shell
-34 Expression Syntax
+26 Невизначена зм╕нна
+27 Стек каталог╕в не такий вже ╕ великий
+28 Нев╕рний номер сигналу
+29 Нев╕домий сигнал; kill -l показу╓ вс╕ можлив╕
+30 ╤м'я зм╕нно╖ ма╓ починатися з л╕тери
+31 Задовге ╕м'я зм╕нно╖
+32 ╤м'я зм╕нно╖ ма╓ починатися з алфав╕тно-цифрового символу
+33 Ця оболонка не м╕стить засоб╕в керування задачами
+34 Синтакс виразу
35 Нема╓ домашнього каталогу
36 Не можу перейти до домашнього каталогу
-37 Invalid null command
+37 Некоректна порожня команда
38 Assignment missing expression
39 Нев╕домий оператор
40 Неоднозначно
41 %s: Файл ╕сну╓
-42 Argument for -c ends in backslash
+42 Аргумент -c зак╕нчу╓ться backslash'ем
43 Перервано
44 Subscript out of range
-45 Line overflow
-46 Нема тако╖ задач╕
+45 Переповнення рядку
+46 Нема╓ тако╖ задач╕
47 Неможливо з терм╕налу
-48 Not in while/foreach
+48 Не у while/foreach
49 Не можна б╕льше процес╕в
50 Нема╓ сп╕впадань
-51 Missing %c
-52 Unmatched %c
+51 Пропущено %c
+52 В╕дсутн╕й в╕дпов╕дник до %c
53 Мало пам'ят╕
-54 Can't make pipe
+54 Не можу створити канал
55 %s: %s
56 %s
57 Використання: jobs [ -l ]
-58 Arguments should be jobs or process id's
+58 Аргументом ма╓ бути номер задач╕ чи процесу
59 Нема╓ поточно╖ задач╕
60 Нема╓ попередньо╖ задач╕
-61 No job matches pattern
+61 Жодна задача не в╕дпов╕да╓ шаблону
62 Fork nesting > %d; maybe `...` loop
-63 No job control in subshells
+63 П╕доболонка не м╕ститить засоб╕в керування задачами
64 Sync fault: Process %d not found
65 %sЩе ╓ 'п╕дв╕шен╕' задач╕
66 %sЩе ╓ 'призупинен╕' задач╕
-67 No other directory
+67 Нема╓ ╕нших каталог╕в
68 Стек каталог╕в пустий
69 Поганий каталог
70 Використання: %s [-%s]%s
-71 No operand for -h flag
-72 Not a login shell
+71 В╕дсутн╕й операнд прапорця -h
+72 Це не первинна оболонка
73 Д╕лення на 0
74 Д╕лення на 0
75 Bad scaling; did you mean "%s"?
-76 Can't suspend a login shell (yet)
+76 Не можу п╕дв╕сити первинну оболонку (поки що)
77 Нев╕домий користувач: %s
78 Зм╕нна $home не визначена
79 Використання: history [-%s] [# к╕льк╕сть под╕й]
-80 $, ! та < не дозволя╓ться з $# чи $?
-81 Newline in variable name
-82 * not allowed with $# or $?
-83 $?<цифра> чи $#<цифра> не дозволя╓ться
-84 Illegal variable name
-85 Newline in variable index
-86 Expansion buffer overflow
-87 Variable syntax
-88 Bad ! form
-89 No previous substitute
-90 Bad substitute
+80 Не можна використовувати $, ! та < разом з $# чи $?
+81 Символ нового рядку в ╕мен╕ зм╕нно╖
+82 Не можна використовувати * разом з $# чи $?
+83 Не можна використовувати $?<цифра> чи $#<цифра>
+84 Неправильне ╕м'я зм╕нно╖
+85 Символ нового рядка в ╕ндекс╕ зм╕нно╖
+86 Переповнення буферу розширення
+87 Синтакс зм╕нно╖
+88 Неправильна форма '!'
+89 Ще не було п╕дстановок
+90 Погана п╕дстановка
91 No previous left hand side
92 Right hand side too long
-93 Bad ! modifier: %c
-94 Modifier failed
-95 Substitution buffer overflow
+93 Поганий модиф╕катор !: %c
+94 Невдача модиф╕катора
+95 Переповнення буферу п╕дстановки
96 Bad ! arg selector
-97 No prev search
+97 Пошуку ще не було
98 %s: Под╕ю не знайдено
-99 Багато лапок )
-100 Багато лапок (
-101 Погано розм╕щено лапки (
+99 Багато дужок )
+100 Багато дужок (
+101 Погано розм╕щено дужку ()
102 В╕дсутн╓ ╕м'я для перенаправлення
-103 Ambiguous output redirect
-104 Can't << within ()'s
-105 Ambiguous input redirect
-106 Погано розм╕щено лапки ()'s
-107 Alias loop
-108 No $watch variable set
-109 No scheduled events
-110 Використання: sched -<item#>.\nВикористання: sched [+]hh:mm <command>
-111 Not that many scheduled events
-112 No command to run
-113 Invalid time for event
-114 Relative time inconsistent with am/pm
+103 Неоднозначне перенаправлення виведення
+104 Не можна використовувати << в середин╕ ()
+105 Неоднозначне перенаправлення введення
+106 Погано розм╕щено дужки ()
+107 Зациклення псевдон╕м╕в
+108 Зм╕нну $watch не встановлено
+109 Нема╓ запланованих завдань
+110 Використання: sched -<# елемента>.\nВикористання: sched [+]год:хв <команда>
+111 Забагато плану╓те запускати!
+112 А що запускати?
+113 Неправильний час для запланованого завдання
+114 В╕дносний час несум╕сний з am/pm
115 Out of termcap string space
116 Використання: settc %s [yes|no]
117 Unknown capability `%s'
-118 Unknown termcap parameter `%%%c'
-119 Too many arguments for `%s' (%d)
-120 `%s' requires %d arguments
+118 Нев╕домий параметр termcap `%%%c'
+119 Забагато аргумент╕в для `%s' (%d)
+120 `%s' вимага╓ %d аргумент(╕в)
121 Використання: echotc [-v|-s] [<capability> [<args>]]
-122 %s: %s. Wrong Architecture
-123 !# History loop
+122 %s: %s. Неправильна арх╕тектура
+123 !# Зациклення ╕стор╕╖
124 Malformed file inquiry
-125 Selector overflow
-126 Unknown option: `-%s'\nВикористання: %s [ -bcdefilmnqstvVxX -Dname[=value] ] [ argument ... ]
-127 Unknown option: `-%s'\nВикористання: %s [ -bcdefFilmnqstvVxX ] [ argument ... ]
-128 Unknown option: `-%s'\nВикористання: %s [ -bcdefilmnqstvVxX ] [ argument ... ]
-129 \nInvalid completion: "%s"
-130 \nInvalid %s: '%c'
-131 \nMissing separator '%c' after %s "%s"
-132 \nIncomplete %s: "%s"
-133 No operand for -m flag
-134 Використання: unlimit [-fh] [limits]
+125 Переповнення селектора
+126 Нев╕домий параметр: `-%s'\nВикористання: %s [ -bcdefilmnqstvVxX -D╕м'я[=значення] ] [ аргумент ... ]
+127 Нев╕домий параметр: `-%s'\nВикористання: %s [ -bcdefFilmnqstvVxX ] [ аргумент ... ]
+128 Нев╕домий параметр: `-%s'\nВикористання: %s [ -bcdefilmnqstvVxX ] [ аргумент ... ]
+129 \nНев╕рне завершеня: "%s"
+130 \nНев╕рне %s: '%c'
+131 \nПропущено розд╕льник '%c' п╕сля %s "%s"
+132 \nНеповне %s: "%s"
+133 В╕дсутн╕й операнд прапорця -m
+134 Використання: unlimit [-fh] [л╕м╕ти]
135 $%S лише для читання
136 Нема╓ тако╖ задач╕
-137 Unknown colorls variable `%c%c'
+137 Нев╕доме значення зм╕нно╖ colorls: `%c%c'
diff --git a/contrib/tcsh/nls/ukrainian/set10 b/contrib/tcsh/nls/ukrainian/set10
index e82aa5ca8bb7..3b95c5181d5e 100644
--- a/contrib/tcsh/nls/ukrainian/set10
+++ b/contrib/tcsh/nls/ukrainian/set10
@@ -1,8 +1,8 @@
-$ $Id: set10,v 1.1 2000/11/11 23:03:42 christos Exp $
+$ $Id: set10,v 1.2 2002/07/01 20:50:22 christos Exp $
$ ma.setp.c
$set 10
-1 setpath: invalid command '%s'.\n
-2 setpath: insufficient arguments to command '%s'.\n
-3 setpath: value missing in path '%s'\n
-4 setpath: %s not found in %s\n
-5 setpath: %d not valid position in %s\n
+1 setpath: нев╕рна команда '%s'.\n
+2 setpath: недостатньо аргумент╕в для команди '%s'.\n
+3 setpath: значення в╕дсутн╓ в шляху '%s'\n
+4 setpath: %s не знайдено в %s\n
+5 setpath: %d нед╕йсна позиц╕я в %s\n
diff --git a/contrib/tcsh/nls/ukrainian/set11 b/contrib/tcsh/nls/ukrainian/set11
index 4b902a39b0f9..d9bd51a6f19b 100644
--- a/contrib/tcsh/nls/ukrainian/set11
+++ b/contrib/tcsh/nls/ukrainian/set11
@@ -1,10 +1,10 @@
-$ $Id: set11,v 1.1 2000/11/11 23:03:42 christos Exp $
+$ $Id: set11,v 1.2 2002/07/01 20:50:22 christos Exp $
$ sh.c
$set 11
-1 Warning: no access to tty (%s).\n
-2 Thus no job control in this shell.\n
-3 You have %d mail messages.\n
-4 You have %d mail messages in %s.\n
+1 Увага: нема╓ доступу до tty (%s).\n
+2 Все ще нема керування задачами в ц╕й оболонц╕.\n
+3 К╕льк╕сть лист╕в: %d.\n
+4 К╕льк╕сть лист╕в: %d (в %s).\n
5 У Вас ╓ %sпошта.\n
6 нова
7 У Вас ╓ %sпошта в %s.\n
diff --git a/contrib/tcsh/nls/ukrainian/set12 b/contrib/tcsh/nls/ukrainian/set12
index 6636c8103e66..595bd951941a 100644
--- a/contrib/tcsh/nls/ukrainian/set12
+++ b/contrib/tcsh/nls/ukrainian/set12
@@ -1,4 +1,4 @@
-$ $Id: set12,v 1.1 2000/11/11 23:03:42 christos Exp $
+$ $Id: set12,v 1.2 2002/07/01 20:50:22 christos Exp $
$ sh.dir.c
$set 12
-1 %s: Trying to start from "%s"\n
+1 %s: Спробую почати з "%s"\n
diff --git a/contrib/tcsh/nls/ukrainian/set13 b/contrib/tcsh/nls/ukrainian/set13
index 569939882442..65549666269d 100644
--- a/contrib/tcsh/nls/ukrainian/set13
+++ b/contrib/tcsh/nls/ukrainian/set13
@@ -1,13 +1,13 @@
-$ $Id: set13,v 1.1 2000/11/11 23:03:42 christos Exp $
+$ $Id: set13,v 1.2 2002/07/01 20:50:22 christos Exp $
$ sh.exec.c
$set 13
-1 hash=%-4d dir=%-2d prog=%s\n
+1 хеш=%-4d dir=%-2d prog=%s\n
2 %d hash buckets of %d bits each\n
3 debug mask = 0x%08x\n
4 %d попадань, %d промах╕в, %d%%\n
-5 %S: shell built-in command.\n
-6 %S: Command not found.\n
-7 where: / in command makes no sense\n
-8 %S is aliased to
-9 %S is a shell built-in\n
-10 hash miss:
+5 %S: вбудована команда.\n
+6 %S: Команду не знайдено.\n
+7 where: символ / в командах не ма╓ зм╕сту\n
+8 %S переназначено у
+9 %S внутр╕шня команда оболонки\n
+10 промахи хешу:
diff --git a/contrib/tcsh/nls/ukrainian/set14 b/contrib/tcsh/nls/ukrainian/set14
index a21afca2e879..5989b93e46ff 100644
--- a/contrib/tcsh/nls/ukrainian/set14
+++ b/contrib/tcsh/nls/ukrainian/set14
@@ -1,6 +1,6 @@
-$ $Id: set14,v 1.1 2000/11/11 23:03:42 christos Exp $
+$ $Id: set14,v 1.2 2002/07/01 20:50:22 christos Exp $
$ sh.file.c
$set 14
-1 \nYikes!! Too many %s!!\n
-2 names in password file
-3 files
+1 \nОй!! Забагато %s!!\n
+2 ╕мен у файл╕ парол╕в
+3 файл╕в
diff --git a/contrib/tcsh/nls/ukrainian/set15 b/contrib/tcsh/nls/ukrainian/set15
index e0abb011f104..ff2ab104382a 100644
--- a/contrib/tcsh/nls/ukrainian/set15
+++ b/contrib/tcsh/nls/ukrainian/set15
@@ -1,7 +1,7 @@
-$ $Id: set15,v 1.1 2000/11/11 23:03:43 christos Exp $
+$ $Id: set15,v 1.2 2002/07/01 20:50:22 christos Exp $
$ sh.func.c
$set 15
-1 %s: %s: Can't %s%s limit\n
-2 remove
-3 set
-4 \040hard
+1 %s: %s: Не можу %s%s л╕м╕т\n
+2 зняти
+3 виставити
+4 \040жорсткий
diff --git a/contrib/tcsh/nls/ukrainian/set16 b/contrib/tcsh/nls/ukrainian/set16
index 5fa6e19c3d57..fc0e60912640 100644
--- a/contrib/tcsh/nls/ukrainian/set16
+++ b/contrib/tcsh/nls/ukrainian/set16
@@ -1,4 +1,4 @@
-$ $Id: set16,v 1.1 2000/11/11 23:03:43 christos Exp $
+$ $Id: set16,v 1.2 2002/07/01 20:50:22 christos Exp $
$ sh.lex.c
$set 16
1 Reset tty pgrp from %d to %d\n
diff --git a/contrib/tcsh/nls/ukrainian/set17 b/contrib/tcsh/nls/ukrainian/set17
index 50dae4b22514..88852b540a4e 100644
--- a/contrib/tcsh/nls/ukrainian/set17
+++ b/contrib/tcsh/nls/ukrainian/set17
@@ -1,16 +1,16 @@
-$ $Id: set17,v 1.1 2000/11/11 23:03:43 christos Exp $
+$ $Id: set17,v 1.2 2002/07/01 20:50:22 christos Exp $
$ sh.proc.c
$set 17
-1 BUG: waiting for background job!\n
-2 Exit %d\n
-3 BUG: process flushed twice
-4 Running
-5 Signal
-6 Exit %-25d
-7 Done
-8 BUG: status=%-9o
+1 ПОМИЛКА: оч╕кування фоново╖ задач╕!\n
+2 Завершення %d\n
+3 ПОМИЛКА: process flushed twice
+4 Запущено
+5 Сигнал
+6 Завершення %-25d
+7 Завершено
+8 ПОМИЛКА: статус=%-9o
9 \040(записано core)
10 \040(wd:
11 wd тепер:
-12 %S: Already suspended\n
-13 %S: Already stopped\n
+12 %S: вже п╕дв╕шено\n
+13 %S: вже призупинено\n
diff --git a/contrib/tcsh/nls/ukrainian/set18 b/contrib/tcsh/nls/ukrainian/set18
index 5af57395e713..53128aa0b656 100644
--- a/contrib/tcsh/nls/ukrainian/set18
+++ b/contrib/tcsh/nls/ukrainian/set18
@@ -1,4 +1,4 @@
-$ $Id: set18,v 1.1 2000/11/11 23:03:43 christos Exp $
+$ $Id: set18,v 1.2 2002/07/01 20:50:22 christos Exp $
$ sh.set.c
$set 18
-1 Warning: ridiculously long PATH truncated\n
+1 Увага: задовгий PATH обр╕зано\n
diff --git a/contrib/tcsh/nls/ukrainian/set19 b/contrib/tcsh/nls/ukrainian/set19
index 71debca45a5a..220b359e8ad7 100644
--- a/contrib/tcsh/nls/ukrainian/set19
+++ b/contrib/tcsh/nls/ukrainian/set19
@@ -1,7 +1,7 @@
-$ $Id: set19,v 1.1 2000/11/11 23:03:43 christos Exp $
+$ $Id: set19,v 1.2 2002/07/01 20:50:22 christos Exp $
$ tc.alloc.c
$set 19
-1 nbytes=%d: Out of memory\n
+1 nbytes=%d: Мало пам'ят╕\n
2 free(%lx) called before any allocations.
3 free(%lx) above top of memory.
4 free(%lx) below bottom of memory.
@@ -11,5 +11,5 @@ $set 19
8 Нин╕шн╓ розпод╕лення пам'ят╕ %s:\nв╕льно:\t
9 \nзанято:\t
10 \n\tВсього занято: %d, всього в╕льно: %d\n
-11 \tAllocated memory from 0x%lx to 0x%lx. Real top at 0x%lx\n
-12 Allocated memory from 0x%lx to 0x%lx (%ld).\n
+11 \tЗанято пам'ять з 0x%lx до 0x%lx. Real top at 0x%lx\n
+12 Занято пам'ять з 0x%lx до 0x%lx (%ld).\n
diff --git a/contrib/tcsh/nls/ukrainian/set2 b/contrib/tcsh/nls/ukrainian/set2
index b17016bf93df..2ecef12518c0 100644
--- a/contrib/tcsh/nls/ukrainian/set2
+++ b/contrib/tcsh/nls/ukrainian/set2
@@ -1,36 +1,36 @@
-$ $Id: set2,v 1.1 2000/11/11 23:03:43 christos Exp $
+$ $Id: set2,v 1.2 2002/07/01 20:50:22 christos Exp $
$ Signal names
$set 2
-1 Null signal
+1 Нульовий сигнал
2 Hangup
-3 Interrupt
-4 Quit
-5 Illegal instruction
+3 Переривання
+4 Вих╕д
+5 Некоректна ╕нструкц╕яn
6 Trace/BPT trap
-7 Abort
+7 Авар╕йне завершення
8 IOT trap
9 System Crash Imminent
-10 Error exit
+10 Помилка завершення
11 EMT trap
-12 Floating exception
+12 Помилка операц╕╖ з плаваючою комою
13 Вбито
-14 User signal 1
-15 User signal 2
-16 Segmentation fault
+14 Сигнал користувача 1
+15 Сигнал користувача 2
+16 Помилка адресац╕╖
17 Bus error
18 Program range error
19 Operand range error
-20 Bad system call
-21 Broken pipe
+20 Поганий системний виклик
+21 Обрив каналу
22 Alarm clock
23 Terminated
-24 Child status change
-25 Death of child
+24 Зм╕на статусу нащадка
+25 Смерть нащадка
26 Apollo-specific fault
27 Child stopped or exited
28 Child exited
-29 Power failure
-30 Resource Lost
+29 Зб╕й живлення
+30 Втрата ресурсу
31 Break (Ctrl-Break)
32 Input/output possible signal
33 Asynchronous I/O (select)
@@ -40,21 +40,21 @@ $set 2
37 Fortran asynchronous I/O completion
38 Recovery
39 Uncorrectable memory error
-40 CPU time limit exceeded
+40 Досягнуто л╕м╕ту CPU time
41 System shutdown imminent
42 micro-tasking group-no wakeup flag set
43 Thread error - (use cord -T for detailed info)
44 CRAY Y-MP register parity error
45 Information request
-46 Suspended (signal)
-47 Stopped (signal)
-48 Suspended
-49 Stopped
-50 Continued
-51 Suspended (tty input)
-52 Stopped (tty input)
-53 Suspended (tty output)
-54 Stopped (tty output)
+46 П╕дв╕шено (сигнал)
+47 Призупинено (сигнал)
+48 П╕дв╕шено
+49 Призупинено
+50 Продовжено
+51 П╕дв╕шено (tty input)
+52 Призупинено (tty input)
+53 П╕дв╕шено (tty output)
+54 Призупинено (tty output)
55 Window status changed
56 Window size changed
57 Phone status changed
diff --git a/contrib/tcsh/nls/ukrainian/set20 b/contrib/tcsh/nls/ukrainian/set20
index 6418f2b41fad..7fd91c8908f2 100644
--- a/contrib/tcsh/nls/ukrainian/set20
+++ b/contrib/tcsh/nls/ukrainian/set20
@@ -1,4 +1,4 @@
-$ $Id: set20,v 1.1 2000/11/11 23:03:43 christos Exp $
+$ $Id: set20,v 1.2 2002/07/01 20:50:22 christos Exp $
$ tc.bind.c
$set 20
1 Invalid key name `%S'\n
@@ -10,9 +10,9 @@ $set 20
7 Alternative key bindings\n
8 Multi-character bindings\n
9 Arrow key bindings\n
-10 %-15s-> is undefined\n
+10 %-15s-> не визначено\n
11 BUG!!! %s isn't bound to anything.\n
-12 Usage: bindkey [options] [--] [KEY [COMMAND]]\n
+12 Використання: bindkey [параметри] [--] [КЛЮЧ [КОМАНДА]]\n
13 -a list or bind KEY in alternative key map\n
14 -b interpret KEY as a C-, M-, F- or X- key name\n
15 -s interpret COMMAND as a literal string to be output\n
@@ -36,6 +36,6 @@ $set 20
33 Bad function-key specification.\n
34 Null key not allowed\n
35 bad key specification -- unknown name "%S"\n
-36 usage: bind [KEY | COMMAND KEY | "emacs" | "vi" | "-a"]\n
-37 Invalid function
-38 %s\t\tis undefined\n
+36 Використання: bind [KEY | COMMAND KEY | "emacs" | "vi" | "-a"]\n
+37 Нев╕рна функц╕я
+38 %s\t\tне визначено\n
diff --git a/contrib/tcsh/nls/ukrainian/set21 b/contrib/tcsh/nls/ukrainian/set21
index 593e0eb7527f..4f6c139a54ef 100644
--- a/contrib/tcsh/nls/ukrainian/set21
+++ b/contrib/tcsh/nls/ukrainian/set21
@@ -1,4 +1,4 @@
-$ $Id: set21,v 1.1 2000/11/11 23:03:43 christos Exp $
+$ $Id: set21,v 1.2 2002/07/01 20:50:22 christos Exp $
$ tc.disc.c
$set 21
1 Couldn't get local chars.\n
diff --git a/contrib/tcsh/nls/ukrainian/set22 b/contrib/tcsh/nls/ukrainian/set22
index 0a2626d1908b..e0cb878e65b3 100644
--- a/contrib/tcsh/nls/ukrainian/set22
+++ b/contrib/tcsh/nls/ukrainian/set22
@@ -1,17 +1,17 @@
-$ $Id: set22,v 1.1 2000/11/11 23:03:43 christos Exp $
+$ $Id: set22,v 1.2 2002/07/01 20:50:22 christos Exp $
$ tc.func.c
$set 22
-1 %S: \t aliased to
-2 \nIncorrect passwd for %s\n
+1 %S: \t перевизначено на
+2 \nНев╕рний пароль користувача %s\n
3 Faulty alias 'precmd' removed.\n
4 Faulty alias 'cwdcmd' removed.\n
5 Faulty alias 'beepcmd' removed.\n
6 Faulty alias 'periodic' removed.\n
-7 parsing command line\n
-8 Do you really want to delete all files? [n/y]
-9 skipping deletion of files!\n
-10 command line now is:\n
-11 parsing command line\n
-12 in one of the lists\n
-13 command line now is:\n
+7 синтаксичний розб╕р командного рядка\n
+8 Ви справд╕ хочете видалити вс╕ файли? [n/y]
+9 пропуска╓мо видалення вс╕х файл╕в!\n
+10 командний рядок тепер:\n
+11 синтаксичний розб╕р командного рядка\n
+12 в одному ╕з списк╕в\n
+13 командний рядок тепер:\n
14 yY
diff --git a/contrib/tcsh/nls/ukrainian/set23 b/contrib/tcsh/nls/ukrainian/set23
index c7ee923097a6..4b8a5430db20 100644
--- a/contrib/tcsh/nls/ukrainian/set23
+++ b/contrib/tcsh/nls/ukrainian/set23
@@ -1,4 +1,4 @@
-$ $Id: set23,v 1.1 2000/11/11 23:03:43 christos Exp $
+$ $Id: set23,v 1.2 2002/07/01 20:50:22 christos Exp $
$ tc.os.c
$set 23
1 Bad cpu/site name
@@ -17,7 +17,7 @@ $set 23
14 sysname: %s\n
15 nodename: %s\n
16 release: %s\n
-17 version: %s\n
+17 верс╕я: %s\n
18 machine: %s\n
19 getwd: Cannot open ".." (%s)
20 getwd: Cannot chdir to ".." (%s)
@@ -28,7 +28,7 @@ $set 23
25 getwd: Cannot stat directory "%s" (%s)
26 getwd: Cannot open directory "%s" (%s)
27 getwd: Cannot find "." in ".." (%s)
-28 Invalid system type
-29 System type is not set
-30 Too many arguments
-31 Invalid argument
+28 Нев╕рний тип системи
+29 Тип системи не визначено
+30 Забагато аргумент╕в
+31 Нев╕рний аргумент
diff --git a/contrib/tcsh/nls/ukrainian/set24 b/contrib/tcsh/nls/ukrainian/set24
index d66225ed3776..d0460de0286c 100644
--- a/contrib/tcsh/nls/ukrainian/set24
+++ b/contrib/tcsh/nls/ukrainian/set24
@@ -1,4 +1,4 @@
-$ $Id: set24,v 1.1 2000/11/11 23:03:43 christos Exp $
+$ $Id: set24,v 1.2 2002/07/01 20:50:22 christos Exp $
$ tc.sched.c
$set 24
1 kludge
diff --git a/contrib/tcsh/nls/ukrainian/set25 b/contrib/tcsh/nls/ukrainian/set25
index 5d67f3f9ed7c..9b5a9e1e041c 100644
--- a/contrib/tcsh/nls/ukrainian/set25
+++ b/contrib/tcsh/nls/ukrainian/set25
@@ -1,6 +1,6 @@
-$ $Id: set25,v 1.1 2000/11/11 23:03:43 christos Exp $
+$ $Id: set25,v 1.2 2002/07/01 20:50:22 christos Exp $
$ tc.sig.c
$set 25
1 our wait %d\n
-2 error: bsd_signal(%d) signal out of range\n
-3 error: bsd_signal(%d) - sigaction failed, errno %d\n
+2 помилка: bsd_signal(%d) сигнал за межами ╕нтервалу\n
+3 помилка: bsd_signal(%d) - невдача sigaction, код помилки %d\n
diff --git a/contrib/tcsh/nls/ukrainian/set26 b/contrib/tcsh/nls/ukrainian/set26
index e3cb250271ed..4f8b7f524002 100644
--- a/contrib/tcsh/nls/ukrainian/set26
+++ b/contrib/tcsh/nls/ukrainian/set26
@@ -1,15 +1,15 @@
-$ $Id: set26,v 1.1 2000/11/11 23:03:44 christos Exp $
+$ $Id: set26,v 1.2 2002/07/01 20:50:22 christos Exp $
$ tc.who.c
$set 26
1 cannot stat %s. Please "unset watch".\n
2 %s cannot be opened. Please "unset watch".\n
-3 BUG! last element is not whotail!\n
+3 ПОМИЛКА! last element is not whotail!\n
4 backward:
-5 BUG! first element is not whohead!\n
+5 ПОМИЛКА! first element is not whohead!\n
6 new: %s/%s\n
-7 %n has %a %l from %m.
-8 %n has %a %l.
-9 logged on
-10 logged off
-11 replaced %s on
-12 local
+7 Користувач %n %a %l (%m).
+8 Користувач %n %a %l.
+9 п╕д'╓днався до
+10 в╕д'╓днався в╕д
+11 зам╕нив %s на
+12 локально
diff --git a/contrib/tcsh/nls/ukrainian/set27 b/contrib/tcsh/nls/ukrainian/set27
index 287b12bb6910..4417820c58d5 100644
--- a/contrib/tcsh/nls/ukrainian/set27
+++ b/contrib/tcsh/nls/ukrainian/set27
@@ -1,8 +1,8 @@
-$ $Id: set27,v 1.1 2000/11/11 23:03:44 christos Exp $
+$ $Id: set27,v 1.2 2002/07/01 20:50:22 christos Exp $
$ tw.comp.c
$set 27
-1 command
-2 separator
-3 pattern
-4 range
-5 completion
+1 команда
+2 розд╕льник
+3 шаблон
+4 пром╕жок
+5 завершення
diff --git a/contrib/tcsh/nls/ukrainian/set29 b/contrib/tcsh/nls/ukrainian/set29
index 9bae9079e83b..fa1902f58dc7 100644
--- a/contrib/tcsh/nls/ukrainian/set29
+++ b/contrib/tcsh/nls/ukrainian/set29
@@ -1,4 +1,4 @@
-$ $Id: set29,v 1.1 2000/11/11 23:03:44 christos Exp $
+$ $Id: set29,v 1.2 2002/07/01 20:50:22 christos Exp $
$ tw.help.c
$set 29
-1 No help file for %S\n
+1 В╕дсутн╕й файл дов╕дки для %S\n
diff --git a/contrib/tcsh/nls/ukrainian/set3 b/contrib/tcsh/nls/ukrainian/set3
index 712b73fe4547..af8f410bfdfd 100644
--- a/contrib/tcsh/nls/ukrainian/set3
+++ b/contrib/tcsh/nls/ukrainian/set3
@@ -1,4 +1,4 @@
-$ $Id: set3,v 1.2 2001/04/26 19:07:52 kim Exp $
+$ $Id: set3,v 1.3 2002/07/01 20:50:22 christos Exp $
$ Editor function descriptions
$set 3
1 Move back a character
diff --git a/contrib/tcsh/nls/ukrainian/set30 b/contrib/tcsh/nls/ukrainian/set30
index bdb0c880ee50..689f407ddf8e 100644
--- a/contrib/tcsh/nls/ukrainian/set30
+++ b/contrib/tcsh/nls/ukrainian/set30
@@ -1,4 +1,4 @@
-$ $Id: set30,v 1.1 2000/11/11 23:03:44 christos Exp $
+$ $Id: set30,v 1.2 2002/07/01 20:50:22 christos Exp $
$ tw.parse.c
$set 30
1 starting_a_command %d\n
@@ -7,10 +7,10 @@ $set 30
4 %s: Internal match error.\n
5 items
6 rows
-7 There are %d %s, list them anyway? [n/y]
+7 Тут %d %s, все-таки показувати? [n/y]
8 looking = %d\n
-9 \nвнутр╕шня помилка tcsh: I don't know what I'm looking for!\n
+9 \nвнутр╕шня помилка tcsh: Вже й не знаю, що саме я шукаю!\n
10 не каталог
11 не знайдено
-12 unreadable
+12 не чита╓ться
13 yY
diff --git a/contrib/tcsh/nls/ukrainian/set31 b/contrib/tcsh/nls/ukrainian/set31
index c50777b71936..1349b96a5e7d 100644
--- a/contrib/tcsh/nls/ukrainian/set31
+++ b/contrib/tcsh/nls/ukrainian/set31
@@ -1,7 +1,7 @@
-$ $Id: set31,v 1.1 2000/11/11 23:03:44 christos Exp $
+$ $Id: set31,v 1.2 2002/07/01 20:50:22 christos Exp $
$ vms.termcap.c
$set 31
-1 Can't open TERMCAP: [%s]\n
-2 Can't open %s.\n
-3 Found %s in %s.\n
-4 No match found for %s in file %s\n
+1 Не можу в╕дкрити TERMCAP: [%s]\n
+2 Не можу в╕дкрити %s.\n
+3 Знайдено %s в %s.\n
+4 Не знайдено сп╕впадань по %s у %s\n
diff --git a/contrib/tcsh/nls/ukrainian/set4 b/contrib/tcsh/nls/ukrainian/set4
index f758f6738acd..868617a64379 100644
--- a/contrib/tcsh/nls/ukrainian/set4
+++ b/contrib/tcsh/nls/ukrainian/set4
@@ -1,4 +1,4 @@
-$ $Id: set4,v 1.1 2000/11/11 23:03:44 christos Exp $
+$ $Id: set4,v 1.2 2002/07/01 20:50:22 christos Exp $
$ Termcap strings
$set 4
1 add new blank line
diff --git a/contrib/tcsh/nls/ukrainian/set5 b/contrib/tcsh/nls/ukrainian/set5
index ce186b78fdba..ca041e2fce50 100644
--- a/contrib/tcsh/nls/ukrainian/set5
+++ b/contrib/tcsh/nls/ukrainian/set5
@@ -1,4 +1,4 @@
-$ $Id: set5,v 1.1 2000/11/11 23:03:44 christos Exp $
+$ $Id: set5,v 1.2 2002/07/01 20:50:22 christos Exp $
$ ed.chared.c
$set 5
-1 Load average unavailable\n
+1 Недоступне значення: середн╓ завантаження\n
diff --git a/contrib/tcsh/nls/ukrainian/set6 b/contrib/tcsh/nls/ukrainian/set6
index fb19a93a6414..65be467d3feb 100644
--- a/contrib/tcsh/nls/ukrainian/set6
+++ b/contrib/tcsh/nls/ukrainian/set6
@@ -1,4 +1,4 @@
-$ $Id: set6,v 1.1 2000/11/11 23:03:44 christos Exp $
+$ $Id: set6,v 1.2 2002/07/01 20:50:22 christos Exp $
$ ed.inputl.c
$set 6
1 ERROR: illegal command from key 0%o\r\n
@@ -6,6 +6,6 @@ $set 6
3 edit\n
4 abort\n
5 no\n
-6 No matching command\n
-7 Ambiguous command\n
-8 *** editor fatal ERROR ***\r\n\n
+6 Нема╓ схожо╖ команди\n
+7 Неоднозначна команда\n
+8 *** Фатальна ПОМИЛКА редактора ***\r\n\n
diff --git a/contrib/tcsh/nls/ukrainian/set7 b/contrib/tcsh/nls/ukrainian/set7
index fd28aea207f5..2c43d69557c9 100644
--- a/contrib/tcsh/nls/ukrainian/set7
+++ b/contrib/tcsh/nls/ukrainian/set7
@@ -1,4 +1,4 @@
-$ $Id: set7,v 1.1 2000/11/11 23:03:44 christos Exp $
+$ $Id: set7,v 1.2 2002/07/01 20:50:22 christos Exp $
$ ed.screen.c
$set 7
1 \n\tTcsh thinks your terminal has the\n
@@ -14,11 +14,11 @@ $set 7
11 does not have
12 \tIt %s magic margins\n
13 (empty)
-14 yes
-15 no
-16 ERROR: cannot delete\r\n
+14 так
+15 н╕
+16 ПОМИЛКА: cannot delete\r\n
17 DeleteChars: num is riduculous: %d\r\n
-18 ERROR: cannot insert\r\n
+18 ПОМИЛКА: cannot insert\r\n
19 StartInsert: num is riduculous: %d\r\n
20 %s: Cannot open /etc/termcap.\n
21 %s: No entry for terminal type "%s"\n
diff --git a/contrib/tcsh/nls/ukrainian/set8 b/contrib/tcsh/nls/ukrainian/set8
index dafcf894b1cf..4d7b8c251fa3 100644
--- a/contrib/tcsh/nls/ukrainian/set8
+++ b/contrib/tcsh/nls/ukrainian/set8
@@ -1,5 +1,5 @@
-$ $Id: set8,v 1.1 2000/11/11 23:03:44 christos Exp $
+$ $Id: set8,v 1.2 2002/07/01 20:50:22 christos Exp $
$ ed.term.c
$set 8
-1 Unknown switch
-2 Invalid argument
+1 Нев╕домий перемикач
+2 Нев╕рний аргумент
diff --git a/contrib/tcsh/nls/ukrainian/set9 b/contrib/tcsh/nls/ukrainian/set9
index ccae7f3f66c6..5b6146825395 100644
--- a/contrib/tcsh/nls/ukrainian/set9
+++ b/contrib/tcsh/nls/ukrainian/set9
@@ -1,4 +1,4 @@
-$ $Id: set9,v 1.1 2000/11/11 23:03:44 christos Exp $
+$ $Id: set9,v 1.2 2002/07/01 20:50:22 christos Exp $
$ ed.xmap.c
$set 9
1 AddXkey: Null extended-key not allowed.\n
@@ -6,7 +6,7 @@ $set 9
3 DeleteXkey: Null extended-key not allowed.\n
4 Unbound extended key "%S"\n
5 Some extended keys too long for internal print buffer
-6 Enumerate: BUG!! Null ptr passed\n!
+6 Enumerate: ПОМИЛКА!! Null ptr passed\n!
7 no input
8 Something must follow: %c\n
9 Octal constant does not fit in a char.\n
diff --git a/contrib/tcsh/patchlevel.h b/contrib/tcsh/patchlevel.h
index 71a0db74fc56..ebca29269f23 100644
--- a/contrib/tcsh/patchlevel.h
+++ b/contrib/tcsh/patchlevel.h
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/patchlevel.h,v 3.129 2001/09/02 21:16:25 christos Exp $ */
+/* $Header: /src/pub/tcsh/patchlevel.h,v 3.135 2002/07/23 16:13:22 christos Exp $ */
/*
* patchlevel.h: Our life story.
*/
@@ -7,8 +7,8 @@
#define ORIGIN "Astron"
#define REV 6
-#define VERS 11
-#define PATCHLEVEL 0
-#define DATE "2001-09-02"
+#define VERS 12
+#define PATCHLEVEL 00
+#define DATE "2002-07-23"
#endif /* _h_patchlevel */
diff --git a/contrib/tcsh/pathnames.h b/contrib/tcsh/pathnames.h
index 3b29072bbeb8..38027e8baf82 100644
--- a/contrib/tcsh/pathnames.h
+++ b/contrib/tcsh/pathnames.h
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/pathnames.h,v 3.17 1998/09/13 13:51:03 christos Exp $ */
+/* $Header: /src/pub/tcsh/pathnames.h,v 3.18 2002/03/08 17:36:46 christos Exp $ */
/*
* pathnames.h: Location of things to find
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
diff --git a/contrib/tcsh/sh.c b/contrib/tcsh/sh.c
index 824680c92e92..7647c1184741 100644
--- a/contrib/tcsh/sh.c
+++ b/contrib/tcsh/sh.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/sh.c,v 3.95 2001/04/27 22:36:39 christos Exp $ */
+/* $Header: /src/pub/tcsh/sh.c,v 3.105 2002/07/05 16:28:16 christos Exp $ */
/*
* sh.c: Main shell routines
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -43,7 +39,7 @@ char copyright[] =
All rights reserved.\n";
#endif /* not lint */
-RCSID("$Id: sh.c,v 3.95 2001/04/27 22:36:39 christos Exp $")
+RCSID("$Id: sh.c,v 3.105 2002/07/05 16:28:16 christos Exp $")
#include "tc.h"
#include "ed.h"
@@ -136,7 +132,10 @@ extern char **environ;
*/
struct saved_state {
int insource;
+ int OLDSTD;
int SHIN;
+ int SHOUT;
+ int SHDIAG;
int intty;
struct whyle *whyles;
Char *gointr;
@@ -302,7 +301,6 @@ main(argc, argv)
gid = getgid();
euid = geteuid();
egid = getegid();
-#if defined(OREO) || defined(DT_SUPPORT)
/*
* We are a login shell if: 1. we were invoked as -<something> with
* optional arguments 2. or we were invoked only with the -l flag
@@ -310,16 +308,6 @@ main(argc, argv)
loginsh = (**tempv == '-') || (argc == 2 &&
tempv[1][0] == '-' && tempv[1][1] == 'l' &&
tempv[1][2] == '\0');
-#else
- /*
- * We are a login shell if: 1. we were invoked as -<something> and we had
- * no arguments 2. or we were invoked only with the -l flag
- */
- loginsh = (**tempv == '-' && argc == 1) || (argc == 2 &&
- tempv[1][0] == '-' && tempv[1][1] == 'l' &&
- tempv[1][2] == '\0');
-#endif
-
#ifdef _VMS_POSIX
/* No better way to find if we are a login shell */
if (!loginsh) {
@@ -505,27 +493,28 @@ main(argc, argv)
set(STRstatus, Strsave(STR0), VAR_READWRITE);
/*
- * get and set machine specific envirnment variables
+ * get and set machine specific environment variables
*/
getmachine();
- fix_version(); /* publish the shell version */
/*
* Publish the selected echo style
*/
-#if ECHO_STYLE == NONE_ECHO
- set(STRecho_style, Strsave(STRnone), VAR_READWRITE);
-#endif /* ECHO_STYLE == NONE_ECHO */
-#if ECHO_STYLE == BSD_ECHO
- set(STRecho_style, Strsave(STRbsd), VAR_READWRITE);
-#endif /* ECHO_STYLE == BSD_ECHO */
-#if ECHO_STYLE == SYSV_ECHO
- set(STRecho_style, Strsave(STRsysv), VAR_READWRITE);
-#endif /* ECHO_STYLE == SYSV_ECHO */
-#if ECHO_STYLE == BOTH_ECHO
- set(STRecho_style, Strsave(STRboth), VAR_READWRITE);
-#endif /* ECHO_STYLE == BOTH_ECHO */
+#if ECHO_STYLE != BSD_ECHO
+ if (tcsh) {
+# if ECHO_STYLE == NONE_ECHO
+ set(STRecho_style, Strsave(STRnone), VAR_READWRITE);
+# endif /* ECHO_STYLE == NONE_ECHO */
+# if ECHO_STYLE == SYSV_ECHO
+ set(STRecho_style, Strsave(STRsysv), VAR_READWRITE);
+# endif /* ECHO_STYLE == SYSV_ECHO */
+# if ECHO_STYLE == BOTH_ECHO
+ set(STRecho_style, Strsave(STRboth), VAR_READWRITE);
+# endif /* ECHO_STYLE == BOTH_ECHO */
+ } else
+#endif /* ECHO_STYLE != BSD_ECHO */
+ set(STRecho_style, Strsave(STRbsd), VAR_READWRITE);
/*
* increment the shell level.
@@ -799,6 +788,12 @@ main(argc, argv)
#endif /* WINNT_NATIVE */
#endif
+ fix_version(); /* publish the shell version */
+
+ if (argc > 1 && strcmp(argv[1], "--version") == 0) {
+ xprintf("%S\n", varval(STRversion));
+ xexit(0);
+ }
/*
* Process the arguments.
*
@@ -1009,6 +1004,13 @@ main(argc, argv)
/* argc not used any more */ tempv++;
}
+ /*
+ * Call to closem() used to be part of initdesc(). Now called below where
+ * the script name argument has become stdin. Kernel may have used a file
+ * descriptor to hold the name of the script (setuid case) and this name
+ * mustn't be lost by closing the fd too soon.
+ */
+ closem();
/*
* Consider input a tty if it really is or we are interactive. but not for
@@ -1482,6 +1484,31 @@ st_save(st, unit, hflg, al, av)
{
st->insource = insource;
st->SHIN = SHIN;
+ /* Want to preserve the meaning of "source file >output".
+ * Save old descriptors, move new 0,1,2 to safe places and assign
+ * them to SH* and let process() redo 0,1,2 from them.
+ *
+ * The macro returns true if d1 and d2 are good and they point to
+ * different things. If you don't avoid saving duplicate
+ * descriptors, you really limit the depth of "source" recursion
+ * you can do because of all the open file descriptors. -IAN!
+ */
+#define NEED_SAVE_FD(d1,d2) \
+ (fstat(d1, &s1) != -1 && fstat(d2, &s2) != -1 \
+ && (s1.st_ino != s2.st_ino || s1.st_dev != s2.st_dev) )
+
+ st->OLDSTD = st->SHOUT = st->SHDIAG = -1;/* test later to restore these */
+ if (didfds) {
+ struct stat s1, s2;
+ if (NEED_SAVE_FD(0,OLDSTD))
+ st->OLDSTD = OLDSTD, OLDSTD = dmove(0, -1);
+ if (NEED_SAVE_FD(1,SHOUT))
+ st->SHOUT = SHOUT, SHOUT = dmove(1, -1);
+ if (NEED_SAVE_FD(2,SHDIAG))
+ st->SHDIAG = SHDIAG, SHDIAG = dmove(2, -1);
+ donefds();
+ }
+
st->intty = intty;
st->whyles = whyles;
st->gointr = gointr;
@@ -1506,7 +1533,7 @@ st_save(st, unit, hflg, al, av)
*/
if (av != NULL && *av != NULL) {
struct varent *vp;
- if ((vp = adrof(STRargv)) != NULL)
+ if ((vp = adrof(STRargv)) != NULL && vp->vec != NULL)
st->argv = saveblk(vp->vec);
else
st->argv = NULL;
@@ -1569,6 +1596,12 @@ st_restore(st, av)
insource = st->insource;
SHIN = st->SHIN;
+ if (st->OLDSTD != -1)
+ (void)close(OLDSTD), OLDSTD = st->OLDSTD;
+ if (st->SHOUT != -1)
+ (void)close(SHOUT), SHOUT = st->SHOUT;
+ if (st->SHDIAG != -1)
+ (void)close(SHDIAG), SHDIAG = st->SHDIAG;
arginp = st->arginp;
onelflg = st->onelflg;
evalp = st->evalp;
@@ -1606,9 +1639,6 @@ srcunit(unit, onlyown, hflg, av)
if (unit < 0)
return;
- if (didfds)
- donefds();
-
if (onlyown) {
struct stat stb;
@@ -2045,9 +2075,13 @@ process(catch)
*/
if ((lex(&paraml) && !seterr && intty && !tellwhat && !Expand &&
!whyles) || adrof(STRverbose)) {
+ int odidfds = didfds;
haderr = 1;
+ didfds = 0;
prlex(&paraml);
+ flush();
haderr = 0;
+ didfds = odidfds;
}
(void) alarm(0); /* Autologout OFF */
@@ -2122,7 +2156,7 @@ process(catch)
* Execute the parse tree From: Michael Schroeder
* <mlschroe@immd4.informatik.uni-erlangen.de> was execute(t, tpgrp);
*/
- execute(savet, (tpgrp > 0 ? tpgrp : -1), NULL, NULL);
+ execute(savet, (tpgrp > 0 ? tpgrp : -1), NULL, NULL, TRUE);
/*
* Made it!
@@ -2130,8 +2164,10 @@ process(catch)
freelex(&paraml);
freesyn(savet), savet = NULL;
#ifdef SIG_WINDOW
- if (catch && intty && !whyles && !tellwhat)
- (void) window_change(0); /* for window systems */
+ if (windowchg || (catch && intty && !whyles && !tellwhat)) {
+ windowchg = 0;
+ (void) check_window_size(0); /* for window systems */
+ }
#endif /* SIG_WINDOW */
set(STR_, Strsave(InputBuf), VAR_READWRITE | VAR_NOGLOB);
}
@@ -2200,7 +2236,7 @@ mailchk()
bool new;
v = adrof(STRmail);
- if (v == 0)
+ if (v == NULL || v->vec == NULL)
return;
(void) time(&t);
vp = v->vec;
@@ -2341,7 +2377,6 @@ initdesc()
#endif /* CLOSE_ON_EXEC */
isdiagatty = isatty(SHDIAG);
isoutatty = isatty(SHOUT);
- closem();
#ifdef NLS_BUGS
#ifdef NLS_CATALOGS
nlsinit();
diff --git a/contrib/tcsh/sh.char.c b/contrib/tcsh/sh.char.c
index bb028b72885f..6fb51d1dc677 100644
--- a/contrib/tcsh/sh.char.c
+++ b/contrib/tcsh/sh.char.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/sh.char.c,v 3.16 2001/03/20 04:16:56 christos Exp $ */
+/* $Header: /src/pub/tcsh/sh.char.c,v 3.18 2002/07/01 20:50:21 christos Exp $ */
/*
* sh.char.c: Character classification tables
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,7 +32,7 @@
*/
#include "sh.h"
-RCSID("$Id: sh.char.c,v 3.16 2001/03/20 04:16:56 christos Exp $")
+RCSID("$Id: sh.char.c,v 3.18 2002/07/01 20:50:21 christos Exp $")
#include "sh.char.h"
@@ -874,6 +870,35 @@ unsigned short _mbmap_big5[256] = {
_MB1|_MB2, _MB1|_MB2, _MB1|_MB2, 0,
};
+unsigned short _mbmap_utf8[256] = {
+/* utf8 uses up to 6 bytes */
+/* first byte 0xc0 - 0xfd */
+/* any further bytes 0x80 - 0xbf */
+/* 0 - 7f all 0 */
+ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+/* 80 - bf : all _MB2 */
+ _MB2, _MB2, _MB2, _MB2, _MB2, _MB2, _MB2, _MB2,
+ _MB2, _MB2, _MB2, _MB2, _MB2, _MB2, _MB2, _MB2,
+ _MB2, _MB2, _MB2, _MB2, _MB2, _MB2, _MB2, _MB2,
+ _MB2, _MB2, _MB2, _MB2, _MB2, _MB2, _MB2, _MB2,
+ _MB2, _MB2, _MB2, _MB2, _MB2, _MB2, _MB2, _MB2,
+ _MB2, _MB2, _MB2, _MB2, _MB2, _MB2, _MB2, _MB2,
+ _MB2, _MB2, _MB2, _MB2, _MB2, _MB2, _MB2, _MB2,
+ _MB2, _MB2, _MB2, _MB2, _MB2, _MB2, _MB2, _MB2,
+/* c0 - fc : all _MB1 */
+ _MB1, _MB1, _MB1, _MB1, _MB1, _MB1, _MB1, _MB1,
+ _MB1, _MB1, _MB1, _MB1, _MB1, _MB1, _MB1, _MB1,
+ _MB1, _MB1, _MB1, _MB1, _MB1, _MB1, _MB1, _MB1,
+ _MB1, _MB1, _MB1, _MB1, _MB1, _MB1, _MB1, _MB1,
+ _MB1, _MB1, _MB1, _MB1, _MB1, _MB1, _MB1, _MB1,
+ _MB1, _MB1, _MB1, _MB1, _MB1, _MB1, _MB1, _MB1,
+ _MB1, _MB1, _MB1, _MB1, _MB1, _MB1, _MB1, _MB1,
+/* f8 f9 fa fb fc fd fe ff*/
+ _MB1, _MB1, _MB1, _MB1, _MB1, _MB1, 0, 0
+};
#else /* !(defined(KANJI) && defined(SHORT_STRINGS) && defined(DSPMBYTE)) */
unsigned short _cmap[256] = {
diff --git a/contrib/tcsh/sh.char.h b/contrib/tcsh/sh.char.h
index c383d0d1e14f..c6f19e89300c 100644
--- a/contrib/tcsh/sh.char.h
+++ b/contrib/tcsh/sh.char.h
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/sh.char.h,v 3.18 2001/03/18 19:06:29 christos Exp $ */
+/* $Header: /src/pub/tcsh/sh.char.h,v 3.20 2002/07/01 20:50:21 christos Exp $ */
/*
* sh.char.h: Table for spotting special characters quickly
* Makes for very obscure but efficient coding.
@@ -15,11 +15,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -59,6 +55,7 @@ extern unsigned short _mbmap[];
extern unsigned short _mbmap_euc[];
extern unsigned short _mbmap_sjis[];
extern unsigned short _mbmap_big5[];
+extern unsigned short _mbmap_utf8[];
/* VARIABLE Check str */
/* same compiler require #define even not define DSPMBYTE */
#define _MB1 0x0001
diff --git a/contrib/tcsh/sh.decls.h b/contrib/tcsh/sh.decls.h
index e3da4227d821..9c3728d96703 100644
--- a/contrib/tcsh/sh.decls.h
+++ b/contrib/tcsh/sh.decls.h
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/sh.decls.h,v 3.35 2001/08/06 23:52:03 christos Exp $ */
+/* $Header: /src/pub/tcsh/sh.decls.h,v 3.38 2002/05/16 13:51:25 christos Exp $ */
/*
* sh.decls.h External declarations from sh*.c
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -91,7 +87,7 @@ extern void stderror __P((unsigned int, ...));
/*
* sh.exec.c
*/
-extern void doexec __P((struct command *));
+extern void doexec __P((struct command *, bool));
extern void dohash __P((Char **, struct command *));
extern void dounhash __P((Char **, struct command *));
extern void execash __P((Char **, struct command *));
@@ -112,7 +108,7 @@ extern int exp0 __P((Char ***, bool));
/*
* sh.file.c
*/
-#ifdef FILEC
+#if defined(FILEC) && defined(TIOCSTI)
extern int tenex __P((Char *, int));
#endif
@@ -179,7 +175,7 @@ extern Char **globall __P((Char **));
extern void rscan __P((Char **, void (*)(int)));
extern void tglob __P((Char **));
extern void trim __P((Char **));
-#ifdef FILEC
+#if defined(FILEC) && defined(TIOCSTI)
extern int sortscmp __P((Char **, Char **));
#endif
extern void nlsinit __P((void));
@@ -314,7 +310,7 @@ extern struct process *pfind __P((Char *));
* sh.sem.c
*/
extern void execute __P((struct command *, int, int *,
- int *));
+ int *, bool));
extern void mypipe __P((int *));
/*
diff --git a/contrib/tcsh/sh.dir.c b/contrib/tcsh/sh.dir.c
index de2e9d0cd175..4271be2176af 100644
--- a/contrib/tcsh/sh.dir.c
+++ b/contrib/tcsh/sh.dir.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/sh.dir.c,v 3.56 2001/01/29 01:28:02 christos Exp $ */
+/* $Header: /src/pub/tcsh/sh.dir.c,v 3.60 2002/07/08 21:03:04 christos Exp $ */
/*
* sh.dir.c: Directory manipulation functions
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,7 +32,7 @@
*/
#include "sh.h"
-RCSID("$Id: sh.dir.c,v 3.56 2001/01/29 01:28:02 christos Exp $")
+RCSID("$Id: sh.dir.c,v 3.60 2002/07/08 21:03:04 christos Exp $")
/*
* C Shell - directory management
@@ -323,6 +319,7 @@ dnormalize(cp, exp)
if (exp) {
int dotdot = 0;
Char *dp, *cwd, *start = cp, buf[MAXPATHLEN];
+ struct stat sb;
# ifdef apollo
bool slashslash;
# endif /* apollo */
@@ -339,6 +336,13 @@ dnormalize(cp, exp)
if (dotdot == 0)
return (Strsave(cp));
+ /*
+ * If the path doesn't exist, we are done too.
+ */
+ if (lstat(short2str(cp), &sb) != 0 && errno == ENOENT)
+ return (Strsave(cp));
+
+
cwd = (Char *) xmalloc((size_t) (((int) Strlen(dcwd->di_name) + 3) *
sizeof(Char)));
(void) Strcpy(cwd, dcwd->di_name);
@@ -415,6 +419,18 @@ dnormalize(cp, exp)
if ((TRM(cwd[(dotdot = (int) Strlen(cwd)) - 1])) == '/')
cwd[--dotdot] = '\0';
}
+ /* Reduction of ".." following the stuff we collected in buf
+ * only makes sense if the directory item in buf really exists.
+ * Avoid reduction of "-I../.." (typical compiler call) to ""
+ * or "/usr/nonexistant/../bin" to "/usr/bin":
+ */
+ if (cwd[0]) {
+ struct stat exists;
+ if (0 != stat(short2str(cwd), &exists)) {
+ xfree((ptr_t) cwd);
+ return Strsave(start);
+ }
+ }
if (!*cp)
break;
}
@@ -570,7 +586,7 @@ dfollow(cp)
}
if (cp[0] != '/' && !prefix(STRdotsl, cp) && !prefix(STRdotdotsl, cp)
- && (c = adrof(STRcdpath))) {
+ && (c = adrof(STRcdpath)) && c->vec != NULL) {
Char **cdp;
register Char *p;
Char buf[MAXPATHLEN];
@@ -1201,7 +1217,7 @@ dsetstack()
struct varent *vp;
struct directory *dn, *dp;
- if ((vp = adrof(STRdirstack)) == NULL)
+ if ((vp = adrof(STRdirstack)) == NULL || vp->vec == NULL)
return;
/* Free the whole stack */
diff --git a/contrib/tcsh/sh.dir.h b/contrib/tcsh/sh.dir.h
index 9cb0af8892ab..6f76f49d31ae 100644
--- a/contrib/tcsh/sh.dir.h
+++ b/contrib/tcsh/sh.dir.h
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/sh.dir.h,v 3.5 1997/10/27 22:44:26 christos Exp $ */
+/* $Header: /src/pub/tcsh/sh.dir.h,v 3.6 2002/03/08 17:36:46 christos Exp $ */
/*
* sh.dir.h: Directory data structures and globals
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
diff --git a/contrib/tcsh/sh.dol.c b/contrib/tcsh/sh.dol.c
index abad1c159a29..91d234035ddd 100644
--- a/contrib/tcsh/sh.dol.c
+++ b/contrib/tcsh/sh.dol.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/sh.dol.c,v 3.47 2001/07/25 15:48:04 christos Exp $ */
+/* $Header: /src/pub/tcsh/sh.dol.c,v 3.50 2002/06/25 19:02:11 christos Exp $ */
/*
* sh.dol.c: Variable substitutions
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,7 +32,7 @@
*/
#include "sh.h"
-RCSID("$Id: sh.dol.c,v 3.47 2001/07/25 15:48:04 christos Exp $")
+RCSID("$Id: sh.dol.c,v 3.50 2002/06/25 19:02:11 christos Exp $")
/*
* C shell
@@ -585,10 +581,8 @@ Dgetdol()
c = DgetC(0);
} while (Isdigit(c));
unDredc(c);
- if (subscr < 0) {
- dolerror(vp->v_name);
- return;
- }
+ if (subscr < 0)
+ stderror(ERR_RANGE);
if (subscr == 0) {
if (bitset) {
dolp = dolzero ? STR1 : STR0;
@@ -651,7 +645,7 @@ Dgetdol()
dolp = (vp || getenv(short2str(name))) ? STR1 : STR0;
goto eatbrac;
}
- if (vp == 0) {
+ if (vp == NULL || vp->vec == NULL) {
np = str2short(getenv(short2str(name)));
if (np) {
fixDolMod();
diff --git a/contrib/tcsh/sh.err.c b/contrib/tcsh/sh.err.c
index f6ec6d59bde4..8bca9fee354d 100644
--- a/contrib/tcsh/sh.err.c
+++ b/contrib/tcsh/sh.err.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/sh.err.c,v 3.35 2000/11/11 23:03:36 christos Exp $ */
+/* $Header: /src/pub/tcsh/sh.err.c,v 3.36 2002/03/08 17:36:46 christos Exp $ */
/*
* sh.err.c: Error printing routines.
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -37,7 +33,7 @@
#define _h_sh_err /* Don't redefine the errors */
#include "sh.h"
-RCSID("$Id: sh.err.c,v 3.35 2000/11/11 23:03:36 christos Exp $")
+RCSID("$Id: sh.err.c,v 3.36 2002/03/08 17:36:46 christos Exp $")
/*
* C Shell
diff --git a/contrib/tcsh/sh.exec.c b/contrib/tcsh/sh.exec.c
index 1808c6b3b2a2..655c4d04d698 100644
--- a/contrib/tcsh/sh.exec.c
+++ b/contrib/tcsh/sh.exec.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/sh.exec.c,v 3.51 2000/11/11 23:03:36 christos Exp $ */
+/* $Header: /src/pub/tcsh/sh.exec.c,v 3.56 2002/06/25 19:02:11 christos Exp $ */
/*
* sh.exec.c: Search, find, and execute a command!
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,7 +32,7 @@
*/
#include "sh.h"
-RCSID("$Id: sh.exec.c,v 3.51 2000/11/11 23:03:36 christos Exp $")
+RCSID("$Id: sh.exec.c,v 3.56 2002/06/25 19:02:11 christos Exp $")
#include "tc.h"
#include "tw.h"
@@ -151,13 +147,14 @@ int hashname __P((Char *));
static int iscommand __P((Char *));
void
-doexec(t)
+doexec(t, do_glob)
register struct command *t;
+ bool do_glob;
{
- register Char *dp, **pv, **av, *sav;
- register struct varent *v;
- register bool slash;
- register int hashval, i;
+ Char *dp, **pv, **av, *sav;
+ struct varent *v;
+ bool slash;
+ int hashval, i;
Char *blk[2];
/*
@@ -167,7 +164,9 @@ doexec(t)
*/
blk[0] = t->t_dcom[0];
blk[1] = 0;
- gflag = 0, tglob(blk);
+ gflag = 0;
+ if (do_glob)
+ tglob(blk);
if (gflag) {
pv = globall(blk);
if (pv == 0) {
@@ -199,7 +198,8 @@ doexec(t)
*/
gflag = 0;
av = &t->t_dcom[1];
- tglob(av);
+ if (do_glob)
+ tglob(av);
if (gflag) {
av = globall(av);
if (av == 0) {
@@ -253,7 +253,7 @@ doexec(t)
* If no path, no words in path, or a / in the filename then restrict the
* command search.
*/
- if (v == 0 || v->vec[0] == 0 || slash)
+ if (v == NULL || v->vec == NULL || v->vec[0] == NULL || slash)
pv = justabs;
else
pv = v->vec;
@@ -472,7 +472,7 @@ texec(sf, st)
* interpretation of the words at this point.
*/
v = adrof1(STRshell, &aliases);
- if (v == 0) {
+ if (v == NULL || v->vec == NULL) {
vp = lastsh;
vp[0] = adrof(STRshell) ? varval(STRshell) : STR_SHELLPATH;
vp[1] = NULL;
@@ -620,7 +620,7 @@ execash(t, kp)
#ifdef WINNT_NATIVE
__nt_really_exec=1;
#endif /* WINNT_NATIVE */
- doexec(kp);
+ doexec(kp, 1);
}
(void) sigset(SIGINT, osigint);
@@ -651,9 +651,13 @@ xechoit(t)
Char **t;
{
if (adrof(STRecho)) {
+ int odidfds = didfds;
flush();
haderr = 1;
+ didfds = 0;
blkpr(t), xputchar('\n');
+ flush();
+ didfds = odidfds;
haderr = 0;
}
}
@@ -699,7 +703,7 @@ dohash(vv, c)
hashwidth = 0;
if (v == NULL)
return;
- for (pv = v->vec; *pv; pv++, hashwidth++)
+ for (pv = v->vec; pv && *pv; pv++, hashwidth++)
continue;
if (hashwidth <= widthof(unsigned char))
hashwidth = sizeof(unsigned char);
@@ -727,7 +731,7 @@ dohash(vv, c)
havhash = 1;
if (v == NULL)
return;
- for (pv = v->vec; *pv; pv++, i++) {
+ for (pv = v->vec; pv && *pv; pv++, i++) {
if (!ABSOLUTEP(pv[0]))
continue;
dirp = opendir(short2str(*pv));
@@ -847,7 +851,7 @@ iscommand(name)
register int hashval, i;
v = adrof(STRpath);
- if (v == 0 || v->vec[0] == 0 || slash)
+ if (v == NULL || v->vec == NULL || v->vec[0] == NULL || slash)
pv = justabs;
else
pv = v->vec;
@@ -1016,7 +1020,7 @@ tellmewhat(lexp, str)
bool slash = any(short2str(sp->word), '/');
v = adrof(STRpath);
- if (v == 0 || v->vec[0] == 0 || slash)
+ if (v == NULL || v->vec == NULL || v->vec[0] == NULL || slash)
pv = justabs;
else
pv = v->vec;
@@ -1104,7 +1108,8 @@ find_cmd(cmd, prt)
if (prt && adrof1(cmd, &aliases)) {
if ((var = adrof1(cmd, &aliases)) != NULL) {
xprintf(CGETS(13, 8, "%S is aliased to "), cmd);
- blkpr(var->vec);
+ if (var->vec != NULL)
+ blkpr(var->vec);
xputchar('\n');
rval = 1;
}
@@ -1142,7 +1147,7 @@ find_cmd(cmd, prt)
sv = Strspl(STRslash, cmd);
- for (pv = var->vec, i = 0; *pv; pv++, i++) {
+ for (pv = var->vec, i = 0; pv && *pv; pv++, i++) {
if (havhash && !eq(*pv, STRdot)) {
#ifdef FASTHASH
if (!bit(hashval, i))
diff --git a/contrib/tcsh/sh.exp.c b/contrib/tcsh/sh.exp.c
index 6a267755fcf9..f6f557eeacef 100644
--- a/contrib/tcsh/sh.exp.c
+++ b/contrib/tcsh/sh.exp.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/sh.exp.c,v 3.38 1998/11/24 18:17:32 christos Exp $ */
+/* $Header: /src/pub/tcsh/sh.exp.c,v 3.40 2002/03/08 17:36:46 christos Exp $ */
/*
* sh.exp.c: Expression evaluations
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,7 +32,9 @@
*/
#include "sh.h"
-RCSID("$Id: sh.exp.c,v 3.38 1998/11/24 18:17:32 christos Exp $")
+RCSID("$Id: sh.exp.c,v 3.40 2002/03/08 17:36:46 christos Exp $")
+
+#include "tw.h"
/*
* C shell
@@ -1017,7 +1015,7 @@ evalav(v)
t = syntax(paraml1.next, &paraml1, 0);
if (seterr)
stderror(ERR_OLD);
- execute(t, -1, NULL, NULL);
+ execute(t, -1, NULL, NULL, TRUE);
freelex(&paraml1), freesyn(t);
}
diff --git a/contrib/tcsh/sh.file.c b/contrib/tcsh/sh.file.c
index 5b8d7bac79bd..0fda8e1e7f81 100644
--- a/contrib/tcsh/sh.file.c
+++ b/contrib/tcsh/sh.file.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/sh.file.c,v 3.16 2000/06/11 02:14:14 kim Exp $ */
+/* $Header: /src/pub/tcsh/sh.file.c,v 3.22 2002/07/01 20:53:00 christos Exp $ */
/*
* sh.file.c: File completion for csh. This file is not used in tcsh.
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -35,10 +31,11 @@
* SUCH DAMAGE.
*/
#include "sh.h"
+#include "ed.h"
-RCSID("$Id: sh.file.c,v 3.16 2000/06/11 02:14:14 kim Exp $")
+RCSID("$Id: sh.file.c,v 3.22 2002/07/01 20:53:00 christos Exp $")
-#ifdef FILEC
+#if defined(FILEC) && defined(TIOCSTI)
/*
* Tenex style file name recognition, .. and more.
@@ -77,6 +74,7 @@ static void extract_dir_and_name __P((Char *, Char *, Char *));
static Char *getitem __P((DIR *, int));
static void free_items __P((Char **));
static int tsearch __P((Char *, COMMAND, int));
+static int compare __P((const ptr_t, const ptr_t));
static int recognize __P((Char *, Char *, int, int));
static int is_prefix __P((Char *, Char *));
static int is_suffix __P((Char *, Char *));
@@ -227,7 +225,7 @@ static void
pushback(string)
Char *string;
{
- register Char *p;
+ Char *p;
char c;
#ifdef TERMIO
# ifdef POSIX
@@ -259,14 +257,13 @@ pushback(string)
(void) ioctl(SHOUT, TCSETAW, (ioctl_t) &tty);
# endif /* POSIX */
- for (p = string; c = *p; p++)
+ for (p = string; (c = *p) != '\0'; p++)
(void) ioctl(SHOUT, TIOCSTI, (ioctl_t) & c);
# ifdef POSIX
(void) tcsetattr(SHOUT, TCSANOW, &tty_normal);
# else
(void) ioctl(SHOUT, TCSETAW, (ioctl_t) &tty_normal);
# endif /* POSIX */
- (void) sigsetmask(omask);
#else
(void) ioctl(SHOUT, TIOCGETP, (ioctl_t) & tty);
tty_normal = tty;
@@ -292,8 +289,8 @@ pushback(string)
*/
static void
catn(des, src, count)
- register Char *des, *src;
- register count;
+ Char *des, *src;
+ int count;
{
while (--count >= 0 && *des)
des++;
@@ -309,8 +306,8 @@ catn(des, src, count)
*/
static void
copyn(des, src, count)
- register Char *des, *src;
- register count;
+ Char *des, *src;
+ int count;
{
while (--count >= 0)
if ((*des++ = *src++) == 0)
@@ -359,7 +356,7 @@ print_by_column(dir, items, count)
Char *dir, *items[];
int count;
{
- register int i, rows, r, c, maxwidth = 0, columns;
+ int i, rows, r, c, maxwidth = 0, columns;
if (ioctl(SHOUT, TIOCGWINSZ, (ioctl_t) & win) < 0 || win.ws_col == 0)
win.ws_col = 80;
@@ -374,7 +371,7 @@ print_by_column(dir, items, count)
for (c = 0; c < columns; c++) {
i = c * rows + r;
if (i < count) {
- register int w;
+ int w;
xprintf("%S", items[i]);
xputchar(dir ? filetype(dir, items[i]) : ' ');
@@ -400,8 +397,8 @@ static Char *
tilde(new, old)
Char *new, *old;
{
- register Char *o, *p;
- register struct passwd *pw;
+ Char *o, *p;
+ struct passwd *pw;
static Char person[40];
if (old[0] != '~')
@@ -507,7 +504,7 @@ static void
extract_dir_and_name(path, dir, name)
Char *path, *dir, *name;
{
- register Char *p;
+ Char *p;
p = Strrchr(path, '/');
if (p == NULL) {
@@ -529,8 +526,8 @@ getitem(dir_fd, looking_for_lognames)
DIR *dir_fd;
int looking_for_lognames;
{
- register struct passwd *pw;
- register struct dirent *dirp;
+ struct passwd *pw;
+ struct dirent *dirp;
if (looking_for_lognames) {
#ifdef _VMS_POSIX
@@ -541,16 +538,16 @@ getitem(dir_fd, looking_for_lognames)
return (str2short(pw->pw_name));
#endif /* atp vmsposix */
}
- if (dirp = readdir(dir_fd))
+ if ((dirp = readdir(dir_fd)) != NULL)
return (str2short(dirp->d_name));
return (NULL);
}
static void
free_items(items)
- register Char **items;
+ Char **items;
{
- register int i;
+ int i;
for (i = 0; items[i]; i++)
xfree((ptr_t) items[i]);
@@ -585,9 +582,9 @@ tsearch(word, command, max_word_length)
COMMAND command;
{
static Char **items = NULL;
- register DIR *dir_fd;
- register numitems = 0, ignoring = TRUE, nignored = 0;
- register name_length, looking_for_lognames;
+ DIR *dir_fd;
+ int numitems = 0, ignoring = TRUE, nignored = 0;
+ int name_length, looking_for_lognames;
Char tilded_dir[MAXPATHLEN + 1], dir[MAXPATHLEN + 1];
Char name[MAXNAMLEN + 1], extended_name[MAXNAMLEN + 1];
Char *item;
@@ -616,7 +613,8 @@ tsearch(word, command, max_word_length)
again: /* search for matches */
name_length = Strlen(name);
- for (numitems = 0; item = getitem(dir_fd, looking_for_lognames);) {
+ for (numitems = 0;
+ (item = getitem(dir_fd, looking_for_lognames)) != NULL;) {
if (!is_prefix(name, item))
continue;
/* Don't match . files on null prefix match */
@@ -628,7 +626,7 @@ again: /* search for matches */
xprintf(CGETS(14, 1, "\nYikes!! Too many %s!!\n"),
looking_for_lognames ?
CGETS(14, 2, "names in password file") :
- CGETS(14, 3, "files");
+ CGETS(14, 3, "files"));
break;
}
/*
@@ -687,7 +685,8 @@ again: /* search for matches */
return (numitems);
}
else { /* LIST */
- qsort((ptr_t) items, (size_t) numitems, sizeof(items[0]), sortscmp);
+ qsort((ptr_t) items, (size_t) numitems, sizeof(items[0]),
+ (int (*) __P((const void *, const void *))) compare);
print_by_column(looking_for_lognames ? NULL : tilded_dir,
items, numitems);
if (items != NULL)
@@ -696,6 +695,20 @@ again: /* search for matches */
return (0);
}
+
+static int
+compare(p, q)
+ const ptr_t p, q;
+{
+#if defined(NLS) && !defined(NOSTRCOLL)
+ errno = 0; /* strcoll sets errno, another brain-damage */
+
+ return (strcoll(*(char **) p, *(char **) q));
+#else
+ return (strcmp(*(char **) p, *(char **) q));
+#endif /* NLS && !NOSTRCOLL */
+}
+
/*
* Object: extend what user typed up to an ambiguity.
* Algorithm:
@@ -712,8 +725,8 @@ recognize(extended_name, item, name_length, numitems)
if (numitems == 1) /* 1st match */
copyn(extended_name, item, MAXNAMLEN);
else { /* 2nd & subsequent matches */
- register Char *x, *ent;
- register int len = 0;
+ Char *x, *ent;
+ int len = 0;
x = extended_name;
for (ent = item; *x && *x == *ent++; x++, len++);
@@ -731,7 +744,7 @@ recognize(extended_name, item, name_length, numitems)
*/
static int
is_prefix(check, template)
- register Char *check, *template;
+ Char *check, *template;
{
do
if (*check == 0)
@@ -748,7 +761,7 @@ static int
is_suffix(check, template)
Char *check, *template;
{
- register Char *c, *t;
+ Char *c, *t;
for (c = check; *c++;);
for (t = template; *t++;);
@@ -765,7 +778,7 @@ tenex(inputline, inputline_size)
Char *inputline;
int inputline_size;
{
- register int numitems, num_read;
+ int numitems, num_read;
char tinputline[BUFSIZE];
@@ -775,8 +788,8 @@ tenex(inputline, inputline_size)
int i;
static Char delims[] = {' ', '\'', '"', '\t', ';', '&', '<',
'>', '(', ')', '|', '^', '%', '\0'};
- register Char *str_end, *word_start, last_Char, should_retype;
- register int space_left;
+ Char *str_end, *word_start, last_Char, should_retype;
+ int space_left;
COMMAND command;
for (i = 0; i < num_read; i++)
@@ -833,10 +846,10 @@ tenex(inputline, inputline_size)
static int
ignored(item)
- register Char *item;
+ Char *item;
{
struct varent *vp;
- register Char **cp;
+ Char **cp;
if ((vp = adrof(STRfignore)) == NULL || (cp = vp->vec) == NULL)
return (FALSE);
@@ -845,4 +858,4 @@ ignored(item)
return (TRUE);
return (FALSE);
}
-#endif /* FILEC */
+#endif /* FILEC && TIOCSTI */
diff --git a/contrib/tcsh/sh.func.c b/contrib/tcsh/sh.func.c
index a2e898909917..bd253e73bdef 100644
--- a/contrib/tcsh/sh.func.c
+++ b/contrib/tcsh/sh.func.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/sh.func.c,v 3.93 2001/03/13 12:53:50 christos Exp $ */
+/* $Header: /src/pub/tcsh/sh.func.c,v 3.103 2002/07/09 12:56:55 christos Exp $ */
/*
* sh.func.c: csh builtin functions
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,7 +32,7 @@
*/
#include "sh.h"
-RCSID("$Id: sh.func.c,v 3.93 2001/03/13 12:53:50 christos Exp $")
+RCSID("$Id: sh.func.c,v 3.103 2002/07/09 12:56:55 christos Exp $")
#include "ed.h"
#include "tw.h"
@@ -304,7 +300,7 @@ doalias(v, c)
plist(&aliases, VAR_ALL);
else if (*v == 0) {
vp = adrof1(strip(p), &aliases);
- if (vp)
+ if (vp && vp->vec)
blkpr(vp->vec), xputchar('\n');
}
else {
@@ -446,7 +442,7 @@ reexecute(kp)
* pgrp's as the jobs would then have no way to get the tty (we can't give
* it to them, and our parent wouldn't know their pgrp, etc.
*/
- execute(kp, (tpgrp > 0 ? tpgrp : -1), NULL, NULL);
+ execute(kp, (tpgrp > 0 ? tpgrp : -1), NULL, NULL, TRUE);
}
/*ARGSUSED*/
@@ -731,21 +727,23 @@ dorepeat(v, kp)
Char **v;
struct command *kp;
{
- register int i;
+ int i = 1;
#ifdef BSDSIGS
register sigmask_t omask = 0;
-
#endif /* BSDSIGS */
- i = getn(v[1]);
+ do {
+ i *= getn(v[1]);
+ lshift(v, 2);
+ } while (v[0] != NULL && Strcmp(v[0], STRrepeat) == 0);
+
if (setintr)
#ifdef BSDSIGS
omask = sigblock(sigmask(SIGINT)) & ~sigmask(SIGINT);
#else /* !BSDSIGS */
(void) sighold(SIGINT);
#endif /* BSDSIGS */
- lshift(v, 2);
while (i > 0) {
if (setintr)
#ifdef BSDSIGS
@@ -1313,6 +1311,16 @@ dosetenv(v, c)
vp = *v++;
+ lp = vp;
+ if (!letter(*lp))
+ stderror(ERR_NAME | ERR_VARBEGIN);
+
+ for (; alnum(*lp); lp++)
+ continue;
+
+ if (*lp != '\0')
+ stderror(ERR_NAME | ERR_SYNTAX);
+
if ((lp = *v++) == 0)
lp = STRNULL;
@@ -1382,6 +1390,13 @@ dosetenv(v, c)
return;
}
+#ifdef NLS_CATALOGS
+ if (eq(vp, STRNLSPATH)) {
+ (void) catclose(catd);
+ nlsinit();
+ }
+#endif
+
if (eq(vp, STRNOREBIND)) {
NoNLSRebind = 1;
MapsAreInited = 0;
@@ -1576,6 +1591,12 @@ dounsetenv(v, c)
else if (eq(name, STRLS_COLORS))
parseLS_COLORS(n);
#endif /* COLOR_LS_F */
+#ifdef NLS_CATALOGS
+ else if (eq(name, STRNLSPATH)) {
+ (void) catclose(catd);
+ nlsinit();
+ }
+#endif
/*
* start again cause the environment changes
*/
@@ -1711,15 +1732,15 @@ doumask(v, c)
# define toset(a) ((a) + 1)
# endif /* aiws */
# else /* BSDLIMIT */
-# if defined(BSD4_4) && !defined(__386BSD__)
- typedef quad_t RLIM_TYPE;
+# if (defined(BSD4_4) || defined(__linux__)) && !defined(__386BSD__)
+ typedef rlim_t RLIM_TYPE;
# else
# if defined(SOLARIS2) || (defined(sgi) && SYSVREL > 3)
typedef rlim_t RLIM_TYPE;
# else
# if defined(_SX)
typedef long long RLIM_TYPE;
-# else /* _SX */
+# else /* !_SX */
typedef unsigned long RLIM_TYPE;
# endif /* _SX */
# endif /* SOLARIS2 || (sgi && SYSVREL > 3) */
@@ -1825,9 +1846,13 @@ struct limits limits[] =
{ RLIMIT_NPROC, "maxproc", 1, "" },
# endif /* RLIMIT_NPROC */
-# ifdef RLIMIT_OFILE
+# if defined(RLIMIT_OFILE) && !defined(RLIMIT_NOFILE)
{ RLIMIT_OFILE, "openfiles", 1, "" },
-# endif /* RLIMIT_OFILE */
+# endif /* RLIMIT_OFILE && !defined(RLIMIT_NOFILE) */
+
+# ifdef RLIMIT_SBSIZE
+ { RLIMIT_SBSIZE, "sbsize", 1, "" },
+# endif /* RLIMIT_SBSIZE */
{ -1, NULL, 0, NULL }
};
@@ -2143,6 +2168,9 @@ setlim(lp, hard, limit)
else
rlim.rlim_cur = limit;
+ if (rlim.rlim_cur > rlim.rlim_max)
+ rlim.rlim_max = rlim.rlim_cur;
+
if (setrlimit(lp->limconst, &rlim) < 0) {
# else /* BSDLIMIT */
if (limit != RLIM_INFINITY && lp->limconst == RLIMIT_FSIZE)
@@ -2153,10 +2181,10 @@ setlim(lp, hard, limit)
# endif /* aiws */
if (ulimit(toset(lp->limconst), limit) < 0) {
# endif /* BSDLIMIT */
- xprintf(CGETS(15, 1, "%s: %s: Can't %s%s limit\n"), bname, lp->limname,
- limit == RLIM_INFINITY ? CGETS(15, 2, "remove") :
- CGETS(15, 3, "set"),
- hard ? CGETS(14, 4, " hard") : "");
+ xprintf(CGETS(15, 1, "%s: %s: Can't %s%s limit (%s)\n"), bname,
+ lp->limname, limit == RLIM_INFINITY ? CGETS(15, 2, "remove") :
+ CGETS(15, 3, "set"), hard ? CGETS(14, 4, " hard") : "",
+ strerror(errno));
return (-1);
}
return (0);
diff --git a/contrib/tcsh/sh.glob.c b/contrib/tcsh/sh.glob.c
index 2b39c76c11ae..6a50a8d188d2 100644
--- a/contrib/tcsh/sh.glob.c
+++ b/contrib/tcsh/sh.glob.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/sh.glob.c,v 3.48 2001/01/04 18:51:57 christos Exp $ */
+/* $Header: /src/pub/tcsh/sh.glob.c,v 3.54 2002/07/04 19:28:29 christos Exp $ */
/*
* sh.glob.c: Regular expression expansion
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,9 +32,10 @@
*/
#include "sh.h"
-RCSID("$Id: sh.glob.c,v 3.48 2001/01/04 18:51:57 christos Exp $")
+RCSID("$Id: sh.glob.c,v 3.54 2002/07/04 19:28:29 christos Exp $")
#include "tc.h"
+#include "tw.h"
#include "glob.h"
@@ -755,7 +752,7 @@ dobackp(cp, literal)
pnleft = LONGBSIZE - 4;
for (;;) {
#if defined(DSPMBYTE)
- for (lp = cp;; lp++) {
+ for (lp = cp;; lp++) { /* } */
if (*lp == '`' &&
(lp-1 < cp || !Ismbyte2(*lp) || !Ismbyte1(*(lp-1)))) {
break;
@@ -834,6 +831,7 @@ backeval(cp, literal)
(void) dmove(pvec[1], 1);
(void) dmove(SHDIAG, 2);
initdesc();
+ closem();
/*
* Bugfix for nested backquotes by Michael Greim <greim@sbsvax.UUCP>,
* posted to comp.bugs.4bsd 12 Sep. 1989.
@@ -842,8 +840,11 @@ backeval(cp, literal)
blkfree(pargv), pargv = 0, pargsiz = 0;
/* mg, 21.dec.88 */
arginp = cp;
- while (*cp)
- *cp++ &= TRIM;
+ for (arginp = cp; *cp; cp++) {
+ *cp &= TRIM;
+ if (*cp == '\n' || *cp == '\r')
+ *cp = ' ';
+ }
/*
* In the child ``forget'' everything about current aliases or
@@ -871,7 +872,7 @@ backeval(cp, literal)
#ifdef SIGTTOU
(void) sigignore(SIGTTOU);
#endif
- execute(t, -1, NULL, NULL);
+ execute(t, -1, NULL, NULL, TRUE);
exitstat();
}
xfree((ptr_t) cp);
@@ -1125,7 +1126,7 @@ Gcat(s1, s2)
continue;
}
-#ifdef FILEC
+#if defined(FILEC) && defined(TIOCSTI)
int
sortscmp(a, b)
register Char **a, **b;
diff --git a/contrib/tcsh/sh.h b/contrib/tcsh/sh.h
index 0e2c6fa40a77..e8342b80873f 100644
--- a/contrib/tcsh/sh.h
+++ b/contrib/tcsh/sh.h
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/sh.h,v 3.96 2001/03/18 19:06:29 christos Exp $ */
+/* $Header: /src/pub/tcsh/sh.h,v 3.108 2002/07/23 16:13:22 christos Exp $ */
/*
* sh.h: Catch it all globals and includes file!
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -39,6 +35,12 @@
#include "config.h"
+#ifndef HAVE_QUAD
+#ifdef __GNUC__
+#define HAVE_QUAD 1
+#endif
+#endif
+
#ifndef EXTERN
# define EXTERN extern
#else /* !EXTERN */
@@ -107,12 +109,12 @@ typedef int sigret_t;
/*
* Return true if the path is absolute
*/
-#ifndef WINNT_NATIVE
-# define ABSOLUTEP(p) (*(p) == '/')
-#else /* WINNT_NATIVE */
+#if defined(WINNT_NATIVE) || defined(__CYGWIN__)
# define ABSOLUTEP(p) ((p)[0] == '/' || \
- (Isalpha((p)[0]) && (p)[1] == ':' && (p)[2] == '/'))
-#endif /* WINNT_NATIVE */
+ (Isalpha((p)[0]) && (p)[1] == ':'))
+#else /* !WINNT_NATIVE && !__CYGWIN__ */
+# define ABSOLUTEP(p) (*(p) == '/')
+#endif /* WINNT_NATIVE || __CYGWIN__ */
/*
* Fundamental definitions which may vary from system to system.
@@ -268,8 +270,10 @@ typedef int sigret_t;
* by now, but in some systems we use the
* old routines...
*/
+# if !defined(__APPLE__)
# define getpgrp __getpgrp
# define setpgrp __setpgrp
+# endif
# include <unistd.h>
# undef getpgrp
# undef setpgrp
@@ -279,7 +283,7 @@ typedef int sigret_t;
* redefines malloc(), so we define the following
* to avoid it.
*/
-# if defined(linux) || defined(sgi) || defined(_OSD_POSIX)
+# if defined(SYSMALLOC) || defined(linux) || defined(sgi) || defined(_OSD_POSIX)
# define NO_FIX_MALLOC
# include <stdlib.h>
# else /* linux */
@@ -393,8 +397,12 @@ typedef int sigret_t;
# include <netinet/in.h>
# include <arpa/inet.h>
# include <sys/socket.h>
-# if defined(_SS_SIZE) || defined(_SS_MAXSIZE)
-# define INET6
+# if (defined(_SS_SIZE) || defined(_SS_MAXSIZE)) && !defined(NO_SS_FAMILY)
+# if !defined(__APPLE__) /* Damnit, where is getnameinfo() folks? */
+# if !defined(sgi)
+# define INET6
+# endif /* sgi */
+# endif /* __APPLE__ */
# endif
# include <sys/uio.h> /* For struct iovec */
#endif /* REMOTEHOST */
@@ -593,6 +601,7 @@ EXTERN bool is2atty IZERO; /* is file descriptor 2 a tty (didfds mode) */
EXTERN bool arun IZERO; /* Currently running multi-line-aliases */
EXTERN int implicit_cd IZERO;/* implicit cd enabled?(1=enabled,2=verbose) */
EXTERN bool inheredoc IZERO; /* Currently parsing a heredoc */
+EXTERN bool windowchg IZERO; /* We received a window change event */
/*
* Global i/o info
@@ -602,8 +611,12 @@ EXTERN int onelflg IZERO; /* 2 -> need line for -t, 1 -> exit on read */
extern Char *ffile; /* Name of shell file for $0 */
extern bool dolzero; /* if $?0 should return true... */
+#if defined(FILEC) && defined(TIOCSTI)
+extern bool filec;
+#endif /* FILEC && TIOCSTI */
+
extern char *seterr; /* Error message from scanner/parser */
-#ifndef BSD4_4
+#if !defined(BSD4_4) && !defined(__linux__)
extern int errno; /* Error from C library routines */
#endif
extern int exitset;
diff --git a/contrib/tcsh/sh.hist.c b/contrib/tcsh/sh.hist.c
index 639f5e9ac0fb..96d37ba46cba 100644
--- a/contrib/tcsh/sh.hist.c
+++ b/contrib/tcsh/sh.hist.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/sh.hist.c,v 3.27 2000/06/10 22:07:56 kim Exp $ */
+/* $Header: /src/pub/tcsh/sh.hist.c,v 3.29 2002/06/25 19:02:11 christos Exp $ */
/*
* sh.hist.c: Shell history expansions and substitutions
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,7 +32,7 @@
*/
#include "sh.h"
-RCSID("$Id: sh.hist.c,v 3.27 2000/06/10 22:07:56 kim Exp $")
+RCSID("$Id: sh.hist.c,v 3.29 2002/06/25 19:02:11 christos Exp $")
#include "tc.h"
@@ -348,7 +344,7 @@ phist(hp, hflg)
Char buf[INBUFSIZE];
struct varent *vp = adrof(STRhistory);
- if (vp && vp->vec[0] && vp->vec[1])
+ if (vp && vp->vec != NULL && vp->vec[0] && vp->vec[1])
cp = vp->vec[1];
tprintf(FMT_HISTORY, buf, cp, INBUFSIZE, NULL, hp->Htime, (ptr_t) hp);
@@ -439,7 +435,7 @@ rechist(fname, ref)
*/
oldidfds = didfds;
didfds = 0;
- if ((shist = adrof(STRsavehist)) != NULL)
+ if ((shist = adrof(STRsavehist)) != NULL && shist->vec != NULL)
if (shist->vec[1] && eq(shist->vec[1], STRmerge))
loadhist(fname, 1);
fp = creat(short2str(fname), 0600);
diff --git a/contrib/tcsh/sh.init.c b/contrib/tcsh/sh.init.c
index 62e9d8c4fa99..7eea58dc05cc 100644
--- a/contrib/tcsh/sh.init.c
+++ b/contrib/tcsh/sh.init.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/sh.init.c,v 3.48 1999/02/11 16:18:36 christos Exp $ */
+/* $Header: /src/pub/tcsh/sh.init.c,v 3.49 2002/03/08 17:36:46 christos Exp $ */
/*
* sh.init.c: Function and signal tables
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,7 +32,7 @@
*/
#include "sh.h"
-RCSID("$Id: sh.init.c,v 3.48 1999/02/11 16:18:36 christos Exp $")
+RCSID("$Id: sh.init.c,v 3.49 2002/03/08 17:36:46 christos Exp $")
#include "ed.h"
#include "tw.h"
diff --git a/contrib/tcsh/sh.lex.c b/contrib/tcsh/sh.lex.c
index 60d5fb44d006..69992793d921 100644
--- a/contrib/tcsh/sh.lex.c
+++ b/contrib/tcsh/sh.lex.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/sh.lex.c,v 3.52 2000/11/11 23:03:37 christos Exp $ */
+/* $Header: /src/pub/tcsh/sh.lex.c,v 3.56 2002/07/08 20:57:32 christos Exp $ */
/*
* sh.lex.c: Lexical analysis into tokens
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,7 +32,7 @@
*/
#include "sh.h"
-RCSID("$Id: sh.lex.c,v 3.52 2000/11/11 23:03:37 christos Exp $")
+RCSID("$Id: sh.lex.c,v 3.56 2002/07/08 20:57:32 christos Exp $")
#include "ed.h"
/* #define DEBUG_INP */
@@ -1500,8 +1496,10 @@ readc(wanteof)
}
numeof = numeof * 10 + *ptr++ - '0';
}
+ if (numeof != 0)
+ numeof++;
}
- if (numeof < 1) numeof = 26; /* Sanity check */
+ if (numeof < 0) numeof = 26; /* Sanity check */
top:
aret = TCSH_F_SEEK;
@@ -1605,12 +1603,11 @@ reread:
if (isatty(SHIN))
#endif /* !WINNT_NATIVE */
{
- /* was 'short' for FILEC */
#ifdef BSDJOBS
int ctpgrp;
#endif /* BSDJOBS */
- if (++sincereal >= numeof) /* Too many EOFs? Bye! */
+ if (numeof != 0 && ++sincereal >= numeof) /* Too many EOFs? Bye! */
goto oops;
#ifdef BSDJOBS
if (tpgrp != -1 &&
@@ -1740,8 +1737,17 @@ bgetc()
}
while (fseekp >= feobp) {
- if (editing && intty) { /* then use twenex routine */
+ if ((editing
+#if defined(FILEC) && defined(TIOCSTI)
+ || filec
+#endif /* FILEC && TIOCSTI */
+ ) && intty) { /* then use twenex routine */
fseekp = feobp; /* where else? */
+#if defined(FILEC) && defined(TIOCSTI)
+ if (!editing)
+ c = numleft = tenex(InputBuf, BUFSIZE);
+ else
+#endif /* FILEC && TIOCSTI */
c = numleft = Inputl(); /* PWP: get a line */
while (numleft > 0) {
off = (int) feobp % BUFSIZE;
@@ -1750,12 +1756,13 @@ bgetc()
roomleft = BUFSIZE - off;
if (roomleft > numleft)
roomleft = numleft;
- (void) memmove((ptr_t) (fbuf[buf] + off), (ptr_t) (InputBuf + c - numleft), (size_t) (roomleft * sizeof(Char)));
+ (void) memmove((ptr_t) (fbuf[buf] + off),
+ (ptr_t) (InputBuf + c - numleft),
+ (size_t) (roomleft * sizeof(Char)));
numleft -= roomleft;
feobp += roomleft;
}
- }
- else {
+ } else {
off = (int) feobp % BUFSIZE;
buf = (int) feobp / BUFSIZE;
balloc(buf);
diff --git a/contrib/tcsh/sh.misc.c b/contrib/tcsh/sh.misc.c
index 5b3595319f27..eeb2a2684104 100644
--- a/contrib/tcsh/sh.misc.c
+++ b/contrib/tcsh/sh.misc.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/sh.misc.c,v 3.23 1997/02/23 19:03:23 christos Exp $ */
+/* $Header: /src/pub/tcsh/sh.misc.c,v 3.24 2002/03/08 17:36:46 christos Exp $ */
/*
* sh.misc.c: Miscelaneous functions
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,7 +32,7 @@
*/
#include "sh.h"
-RCSID("$Id: sh.misc.c,v 3.23 1997/02/23 19:03:23 christos Exp $")
+RCSID("$Id: sh.misc.c,v 3.24 2002/03/08 17:36:46 christos Exp $")
static int renum __P((int, int));
static Char **blkend __P((Char **));
diff --git a/contrib/tcsh/sh.parse.c b/contrib/tcsh/sh.parse.c
index ac91ed88777a..b1a76d829e79 100644
--- a/contrib/tcsh/sh.parse.c
+++ b/contrib/tcsh/sh.parse.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/sh.parse.c,v 3.10 1996/04/26 19:20:04 christos Exp $ */
+/* $Header: /src/pub/tcsh/sh.parse.c,v 3.11 2002/03/08 17:36:46 christos Exp $ */
/*
* sh.parse.c: Interpret a list of tokens
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,7 +32,7 @@
*/
#include "sh.h"
-RCSID("$Id: sh.parse.c,v 3.10 1996/04/26 19:20:04 christos Exp $")
+RCSID("$Id: sh.parse.c,v 3.11 2002/03/08 17:36:46 christos Exp $")
/*
* C shell
diff --git a/contrib/tcsh/sh.print.c b/contrib/tcsh/sh.print.c
index 650731e1110e..263252da45ef 100644
--- a/contrib/tcsh/sh.print.c
+++ b/contrib/tcsh/sh.print.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/sh.print.c,v 3.20 2000/06/11 02:14:15 kim Exp $ */
+/* $Header: /src/pub/tcsh/sh.print.c,v 3.21 2002/03/08 17:36:46 christos Exp $ */
/*
* sh.print.c: Primitive Output routines.
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,7 +32,7 @@
*/
#include "sh.h"
-RCSID("$Id: sh.print.c,v 3.20 2000/06/11 02:14:15 kim Exp $")
+RCSID("$Id: sh.print.c,v 3.21 2002/03/08 17:36:46 christos Exp $")
#include "ed.h"
diff --git a/contrib/tcsh/sh.proc.c b/contrib/tcsh/sh.proc.c
index ea4f271dfce5..7d42f5c2b0da 100644
--- a/contrib/tcsh/sh.proc.c
+++ b/contrib/tcsh/sh.proc.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/sh.proc.c,v 3.75 2001/08/06 23:52:03 christos Exp $ */
+/* $Header: /src/pub/tcsh/sh.proc.c,v 3.76 2002/03/08 17:36:46 christos Exp $ */
/*
* sh.proc.c: Job manipulations
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,7 +32,7 @@
*/
#include "sh.h"
-RCSID("$Id: sh.proc.c,v 3.75 2001/08/06 23:52:03 christos Exp $")
+RCSID("$Id: sh.proc.c,v 3.76 2002/03/08 17:36:46 christos Exp $")
#include "ed.h"
#include "tc.h"
diff --git a/contrib/tcsh/sh.proc.h b/contrib/tcsh/sh.proc.h
index c6fb94a63582..c526b2ef4121 100644
--- a/contrib/tcsh/sh.proc.h
+++ b/contrib/tcsh/sh.proc.h
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/sh.proc.h,v 3.9 1997/10/27 22:44:32 christos Exp $ */
+/* $Header: /src/pub/tcsh/sh.proc.h,v 3.10 2002/03/08 17:36:46 christos Exp $ */
/*
* sh.proc.h: Process data structures and variables
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
diff --git a/contrib/tcsh/sh.sem.c b/contrib/tcsh/sh.sem.c
index 2ff1399ba28a..cebba05b7aba 100644
--- a/contrib/tcsh/sh.sem.c
+++ b/contrib/tcsh/sh.sem.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/sh.sem.c,v 3.53 2001/08/06 23:52:03 christos Exp $ */
+/* $Header: /src/pub/tcsh/sh.sem.c,v 3.56 2002/03/08 17:36:46 christos Exp $ */
/*
* sh.sem.c: I/O redirections and job forking. A touchy issue!
* Most stuff with builtins is incorrect
@@ -15,11 +15,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -37,7 +33,7 @@
*/
#include "sh.h"
-RCSID("$Id: sh.sem.c,v 3.53 2001/08/06 23:52:03 christos Exp $")
+RCSID("$Id: sh.sem.c,v 3.56 2002/03/08 17:36:46 christos Exp $")
#include "tc.h"
#include "tw.h"
@@ -88,10 +84,11 @@ static void chkclob __P((char *));
/*VARARGS 1*/
void
-execute(t, wanttty, pipein, pipeout)
+execute(t, wanttty, pipein, pipeout, do_glob)
register struct command *t;
int wanttty;
int *pipein, *pipeout;
+ bool do_glob;
{
#ifdef VFORK
extern bool use_fork; /* use fork() instead of vfork()? */
@@ -660,7 +657,7 @@ execute(t, wanttty, pipein, pipeout)
break;
}
if (t->t_dtyp != NODE_PAREN) {
- doexec(t);
+ doexec(t, do_glob);
/* NOTREACHED */
}
/*
@@ -679,31 +676,31 @@ execute(t, wanttty, pipein, pipeout)
didfds = 0;
wanttty = -1;
t->t_dspr->t_dflg |= t->t_dflg & F_NOINTERRUPT;
- execute(t->t_dspr, wanttty, NULL, NULL);
+ execute(t->t_dspr, wanttty, NULL, NULL, do_glob);
exitstat();
case NODE_PIPE:
#ifdef BACKPIPE
t->t_dcdr->t_dflg |= F_PIPEIN | (t->t_dflg &
(F_PIPEOUT | F_AMPERSAND | F_NOFORK | F_NOINTERRUPT));
- execute(t->t_dcdr, wanttty, pv, pipeout);
+ execute(t->t_dcdr, wanttty, pv, pipeout, do_glob);
t->t_dcar->t_dflg |= F_PIPEOUT |
(t->t_dflg & (F_PIPEIN | F_AMPERSAND | F_STDERR | F_NOINTERRUPT));
- execute(t->t_dcar, wanttty, pipein, pv);
+ execute(t->t_dcar, wanttty, pipein, pv, do_glob);
#else /* !BACKPIPE */
t->t_dcar->t_dflg |= F_PIPEOUT |
(t->t_dflg & (F_PIPEIN | F_AMPERSAND | F_STDERR | F_NOINTERRUPT));
- execute(t->t_dcar, wanttty, pipein, pv);
+ execute(t->t_dcar, wanttty, pipein, pv, do_glob);
t->t_dcdr->t_dflg |= F_PIPEIN | (t->t_dflg &
(F_PIPEOUT | F_AMPERSAND | F_NOFORK | F_NOINTERRUPT));
- execute(t->t_dcdr, wanttty, pv, pipeout);
+ execute(t->t_dcdr, wanttty, pv, pipeout, do_glob);
#endif /* BACKPIPE */
break;
case NODE_LIST:
if (t->t_dcar) {
t->t_dcar->t_dflg |= t->t_dflg & F_NOINTERRUPT;
- execute(t->t_dcar, wanttty, NULL, NULL);
+ execute(t->t_dcar, wanttty, NULL, NULL, do_glob);
/*
* In strange case of A&B make a new job after A
*/
@@ -714,7 +711,7 @@ execute(t, wanttty, pipein, pipeout)
if (t->t_dcdr) {
t->t_dcdr->t_dflg |= t->t_dflg &
(F_NOFORK | F_NOINTERRUPT);
- execute(t->t_dcdr, wanttty, NULL, NULL);
+ execute(t->t_dcdr, wanttty, NULL, NULL, do_glob);
}
break;
@@ -722,7 +719,7 @@ execute(t, wanttty, pipein, pipeout)
case NODE_AND:
if (t->t_dcar) {
t->t_dcar->t_dflg |= t->t_dflg & F_NOINTERRUPT;
- execute(t->t_dcar, wanttty, NULL, NULL);
+ execute(t->t_dcar, wanttty, NULL, NULL, do_glob);
if ((getn(varval(STRstatus)) == 0) !=
(t->t_dtyp == NODE_AND)) {
return;
@@ -731,7 +728,7 @@ execute(t, wanttty, pipein, pipeout)
if (t->t_dcdr) {
t->t_dcdr->t_dflg |= t->t_dflg &
(F_NOFORK | F_NOINTERRUPT);
- execute(t->t_dcdr, wanttty, NULL, NULL);
+ execute(t->t_dcdr, wanttty, NULL, NULL, do_glob);
}
break;
diff --git a/contrib/tcsh/sh.set.c b/contrib/tcsh/sh.set.c
index 91c0127609b2..531da301fed0 100644
--- a/contrib/tcsh/sh.set.c
+++ b/contrib/tcsh/sh.set.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/sh.set.c,v 3.39 2001/03/18 19:06:30 christos Exp $ */
+/* $Header: /src/pub/tcsh/sh.set.c,v 3.44 2002/07/01 20:50:22 christos Exp $ */
/*
* sh.set.c: Setting and Clearing of variables
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,7 +32,7 @@
*/
#include "sh.h"
-RCSID("$Id: sh.set.c,v 3.39 2001/03/18 19:06:30 christos Exp $")
+RCSID("$Id: sh.set.c,v 3.44 2002/07/01 20:50:22 christos Exp $")
#include "ed.h"
#include "tw.h"
@@ -186,6 +182,10 @@ update_vars(vp)
(void) catclose(catd);
nlsinit();
}
+#if defined(FILEC) && defined(TIOCSTI)
+ else if (eq(vp, STRfilec))
+ filec = 1;
+#endif
#endif /* NLS_CATALOGS */
}
@@ -550,7 +550,8 @@ value1(var, head)
return (STRNULL);
vp = adrof1(var, head);
- return (vp == 0 || vp->vec[0] == 0 ? STRNULL : vp->vec[0]);
+ return ((vp == NULL || vp->vec == NULL || vp->vec[0] == NULL) ?
+ STRNULL : vp->vec[0]);
}
static struct varent *
@@ -721,6 +722,12 @@ unset(v, c)
did_roe = adrof(STRrecognize_only_executables) != NULL;
did_edit = adrof(STRedit) != NULL;
unset1(v, &shvhed);
+
+#if defined(FILEC) && defined(TIOCSTI)
+ if (adrof(STRfilec) == 0)
+ filec = 0;
+#endif /* FILEC && TIOCSTI */
+
if (adrof(STRhistchars) == 0) {
HIST = '!';
HISTSUB = '^';
@@ -862,7 +869,7 @@ shift(v, c)
else
(void) strip(name);
argv = adrof(name);
- if (argv == 0)
+ if (argv == NULL || argv->vec == NULL)
udvar(name);
if (argv->vec[0] == 0)
stderror(ERR_NAME | ERR_NOMORE);
@@ -1110,6 +1117,8 @@ update_dspmbyte_vars()
iskcode = 2;
else if (eq(dstr1, STRKBIG5))
iskcode = 3;
+ else if (eq(dstr1, STRKUTF8))
+ iskcode = 4;
else if ((dstr1[0] - '0') >= 0 && (dstr1[0] - '0') <= 3) {
iskcode = 0;
}
@@ -1139,6 +1148,11 @@ update_dspmbyte_vars()
_cmap[lp] = _cmap_mbyte[lp];
_mbmap[lp] = _mbmap_big5[lp];
break;
+ case 4:
+ /* 4 ... utf8 */
+ _cmap[lp] = _cmap_mbyte[lp];
+ _mbmap[lp] = _mbmap_utf8[lp];
+ break;
default:
xprintf(CGETS(18, 3,
"Warning: unknown multibyte code %d; multibyte disabled\n"),
diff --git a/contrib/tcsh/sh.time.c b/contrib/tcsh/sh.time.c
index cb71724efa9d..9f0601ff7072 100644
--- a/contrib/tcsh/sh.time.c
+++ b/contrib/tcsh/sh.time.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/sh.time.c,v 3.23 2001/03/18 19:06:31 christos Exp $ */
+/* $Header: /src/pub/tcsh/sh.time.c,v 3.25 2002/06/25 19:02:11 christos Exp $ */
/*
* sh.time.c: Shell time keeping and printing.
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,7 +32,7 @@
*/
#include "sh.h"
-RCSID("$Id: sh.time.c,v 3.23 2001/03/18 19:06:31 christos Exp $")
+RCSID("$Id: sh.time.c,v 3.25 2002/06/25 19:02:11 christos Exp $")
#ifdef SUNOS4
# include <machine/param.h>
@@ -398,7 +394,7 @@ prusage(bs, es, e, b)
xprintf("t %lu\n", t);
#endif /* TDEBUG */
- if (vp && vp->vec[0] && vp->vec[1])
+ if (vp && vp->vec && vp->vec[0] && vp->vec[1])
cp = short2str(vp->vec[1]);
for (; *cp; cp++)
if (*cp != '%')
diff --git a/contrib/tcsh/sh.types.h b/contrib/tcsh/sh.types.h
index d62da8a095a0..981c89a8943b 100644
--- a/contrib/tcsh/sh.types.h
+++ b/contrib/tcsh/sh.types.h
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/sh.types.h,v 3.38 2000/07/04 19:46:23 christos Exp $ */
+/* $Header: /src/pub/tcsh/sh.types.h,v 3.39 2002/03/08 17:36:47 christos Exp $ */
/* sh.types.h: Do the necessary typedefs for each system.
* Up till now I avoided making this into a separate file
* But I just wanted to eliminate the whole mess from sh.h
@@ -22,11 +22,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
diff --git a/contrib/tcsh/tc.alloc.c b/contrib/tcsh/tc.alloc.c
index 8c5e29e96e57..a149db2050d8 100644
--- a/contrib/tcsh/tc.alloc.c
+++ b/contrib/tcsh/tc.alloc.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/tc.alloc.c,v 3.35 2000/11/11 23:03:38 christos Exp $ */
+/* $Header: /src/pub/tcsh/tc.alloc.c,v 3.36 2002/03/08 17:36:47 christos Exp $ */
/*
* tc.alloc.c (Caltech) 2/21/82
* Chris Kingsley, kingsley@cit-20.
@@ -22,11 +22,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -44,7 +40,7 @@
*/
#include "sh.h"
-RCSID("$Id: tc.alloc.c,v 3.35 2000/11/11 23:03:38 christos Exp $")
+RCSID("$Id: tc.alloc.c,v 3.36 2002/03/08 17:36:47 christos Exp $")
static char *memtop = NULL; /* PWP: top of current memory */
static char *membot = NULL; /* PWP: bottom of allocatable memory */
diff --git a/contrib/tcsh/tc.bind.c b/contrib/tcsh/tc.bind.c
index 89445576969f..da2e3c38e2b8 100644
--- a/contrib/tcsh/tc.bind.c
+++ b/contrib/tcsh/tc.bind.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/tc.bind.c,v 3.35 2000/11/11 23:03:38 christos Exp $ */
+/* $Header: /src/pub/tcsh/tc.bind.c,v 3.36 2002/03/08 17:36:47 christos Exp $ */
/*
* tc.bind.c: Key binding functions
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,7 +32,7 @@
*/
#include "sh.h"
-RCSID("$Id: tc.bind.c,v 3.35 2000/11/11 23:03:38 christos Exp $")
+RCSID("$Id: tc.bind.c,v 3.36 2002/03/08 17:36:47 christos Exp $")
#include "ed.h"
#include "ed.defns.h"
diff --git a/contrib/tcsh/tc.const.c b/contrib/tcsh/tc.const.c
index a3385dd2f4eb..0fdcec0bb889 100644
--- a/contrib/tcsh/tc.const.c
+++ b/contrib/tcsh/tc.const.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/tc.const.c,v 3.62 2001/08/06 23:52:04 christos Exp $ */
+/* $Header: /src/pub/tcsh/tc.const.c,v 3.67 2002/07/06 22:21:07 christos Exp $ */
/*
* sh.const.c: String constants for tcsh.
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,7 +32,7 @@
*/
#include "sh.h"
-RCSID("$Id: tc.const.c,v 3.62 2001/08/06 23:52:04 christos Exp $")
+RCSID("$Id: tc.const.c,v 3.67 2002/07/06 22:21:07 christos Exp $")
Char STRlogout[] = { 'l', 'o', 'g', 'o', 'u', 't', '\0' };
Char STRautologout[] = { 'a', 'u', 't', 'o', 'l', 'o', 'g', 'o', 'u', 't',
@@ -117,6 +113,7 @@ Char STRtildothist[] = { '~', '/', '.', 'h', 'i', 's', 't', 'o', 'r',
#ifdef NLS_CATALOGS
Char STRcatalog[] = { 'c', 'a', 't', 'a', 'l', 'o', 'g', '\0' };
+Char STRNLSPATH[] = { 'N', 'L', 'S', 'P', 'A', 'T', 'H', '\0' };
#endif /* NLS_CATALOGS */
#ifdef KANJI
Char STRnokanji[] = { 'n', 'o', 'k', 'a', 'n', 'j', 'i', '\0' };
@@ -126,6 +123,7 @@ Char STRmmliteral[] = { '-', '-', 'l', 'i', 't', 'e', 'r', 'a', 'l', '\0' };
Char STRKEUC[] = { 'e', 'u', 'c', '\0' };
Char STRKSJIS[] = { 's', 'j', 'i', 's', '\0' };
Char STRKBIG5[] = { 'b', 'i', 'g', '5', '\0' };
+Char STRKUTF8[] = { 'u', 't', 'f', '8', '\0' };
# ifdef MBYTEDEBUG /* Sorry, use for beta testing */
Char STRmbytemap[] = { 'm', 'b', 'y', 't', 'e', 'm', 'a', 'p', '\0' };
# endif /* MBYTEMAP */
@@ -320,6 +318,9 @@ Char STRcontinue_args[] = { 'c', 'o', 'n', 't', 'i', 'n', 'u', 'e', '_', 'a',
Char STRunderpause[] = { '_', 'p', 'a', 'u', 's', 'e', '\0' };
#endif
Char STRbackqpwd[] = { '`', 'p', 'w', 'd', '`', '\0' };
+#if defined(FILEC) && defined(TIOCSTI)
+Char STRfilec[] = { 'f', 'i', 'l', 'e', 'c', '\0' };
+#endif /* FILEC && TIOCSTI */
Char STRhistchars[] = { 'h', 'i', 's', 't', 'c', 'h', 'a', 'r', 's', '\0' };
Char STRpromptchars[] = { 'p', 'r', 'o', 'm', 'p', 't', 'c', 'h', 'a', 'r',
's', '\0' };
@@ -466,3 +467,4 @@ Char STRcolorcat[] = { 'c', 'o', 'l', 'o', 'r', 'c', 'a', 't', '\0' };
Char STRshwspace[] = { ' ', '\t', '\0' };
Char STRshwordsep[] = { ' ', '\t', '&', '|', ';', '<', '>', '(', ')', '\0' };
+Char STRrepeat[] = { 'r', 'e', 'p', 'e', 'a', 't', '\0' };
diff --git a/contrib/tcsh/tc.decls.h b/contrib/tcsh/tc.decls.h
index c4b19172e806..aed74501dc11 100644
--- a/contrib/tcsh/tc.decls.h
+++ b/contrib/tcsh/tc.decls.h
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/tc.decls.h,v 3.49 2001/08/06 23:57:33 christos Exp $ */
+/* $Header: /src/pub/tcsh/tc.decls.h,v 3.50 2002/03/08 17:36:47 christos Exp $ */
/*
* tc.decls.h: Function declarations from all the tcsh modules
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
diff --git a/contrib/tcsh/tc.disc.c b/contrib/tcsh/tc.disc.c
index 7c681037095b..86d336935ea1 100644
--- a/contrib/tcsh/tc.disc.c
+++ b/contrib/tcsh/tc.disc.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/tc.disc.c,v 3.11 1997/10/02 16:36:31 christos Exp $ */
+/* $Header: /src/pub/tcsh/tc.disc.c,v 3.13 2002/07/06 22:28:13 christos Exp $ */
/*
* tc.disc.c: Functions to set/clear line disciplines
*
@@ -15,11 +15,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -37,13 +33,13 @@
*/
#include "sh.h"
-RCSID("$Id: tc.disc.c,v 3.11 1997/10/02 16:36:31 christos Exp $")
+RCSID("$Id: tc.disc.c,v 3.13 2002/07/06 22:28:13 christos Exp $")
#ifdef OREO
#include <compat.h>
#endif /* OREO */
-#include "ed.term.h"
+#include "ed.h"
static bool add_discipline = 0; /* Did we add a line discipline */
diff --git a/contrib/tcsh/tc.func.c b/contrib/tcsh/tc.func.c
index 505830b2ce8d..427c2d121115 100644
--- a/contrib/tcsh/tc.func.c
+++ b/contrib/tcsh/tc.func.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/tc.func.c,v 3.97 2001/08/28 23:13:44 christos Exp $ */
+/* $Header: /src/pub/tcsh/tc.func.c,v 3.105 2002/07/12 13:16:18 christos Exp $ */
/*
* tc.func.c: New tcsh builtins.
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,7 +32,7 @@
*/
#include "sh.h"
-RCSID("$Id: tc.func.c,v 3.97 2001/08/28 23:13:44 christos Exp $")
+RCSID("$Id: tc.func.c,v 3.105 2002/07/12 13:16:18 christos Exp $")
#include "ed.h"
#include "ed.defns.h" /* for the function names */
@@ -290,7 +286,8 @@ dolist(v, c)
STRmCF[3] = '\0';
/* Look at listflags, to add -A to the flags, to get a path
of ls if necessary */
- if ((vp = adrof(STRlistflags)) != NULL && vp->vec[0] != STRNULL) {
+ if ((vp = adrof(STRlistflags)) != NULL && vp->vec != NULL &&
+ vp->vec[0] != STRNULL) {
if (vp->vec[1] != NULL && vp->vec[1][0] != '\0')
lspath = vp->vec[1];
for (cp = vp->vec[0]; *cp; cp++)
@@ -341,7 +338,7 @@ dolist(v, c)
lastword = nextword;
for (cp = *v; cp; cp = *++v) {
nextword = (struct wordent *) xcalloc(1, sizeof cmd);
- nextword->word = Strsave(cp);
+ nextword->word = quote(Strsave(cp));
lastword->next = nextword;
nextword->prev = lastword;
lastword = nextword;
@@ -356,7 +353,7 @@ dolist(v, c)
/* expand aliases like process() does */
/* alias(&cmd); */
/* execute the parse tree. */
- execute(t, tpgrp > 0 ? tpgrp : -1, NULL, NULL);
+ execute(t, tpgrp > 0 ? tpgrp : -1, NULL, NULL, FALSE);
/* done. free the lex list and parse tree. */
freelex(&cmd), freesyn(t);
if (setintr)
@@ -504,7 +501,7 @@ cmd_expand(cmd, str)
lexp[0].word = STRNULL;
lexp[2].word = STRret;
- if ((vp = adrof1(cmd, &aliases)) != NULL) {
+ if ((vp = adrof1(cmd, &aliases)) != NULL && vp->vec != NULL) {
if (str == NULL) {
xprintf(CGETS(22, 1, "%S: \t aliased to "), cmd);
blkpr(vp->vec);
@@ -1070,8 +1067,11 @@ job_cmd(args)
goto leave;
}
jobcmd_active = 1;
- if (!whyles && adrof1(STRjobcmd, &aliases))
+ if (!whyles && adrof1(STRjobcmd, &aliases)) {
+ struct process *pp = pcurrjob; /* put things back after the hook */
aliasrun(2, STRjobcmd, args);
+ pcurrjob = pp;
+ }
leave:
jobcmd_active = 0;
#ifdef BSDSIGS
@@ -1139,7 +1139,7 @@ aliasrun(cnt, s1, s2)
* From: Michael Schroeder <mlschroe@immd4.informatik.uni-erlangen.de>
* was execute(t, tpgrp);
*/
- execute(t, tpgrp > 0 ? tpgrp : -1, NULL, NULL);
+ execute(t, tpgrp > 0 ? tpgrp : -1, NULL, NULL, TRUE);
/* done. free the lex list and parse tree. */
freelex(&w), freesyn(t);
if (haderr) {
@@ -1186,7 +1186,7 @@ setalarm(lck)
unsigned alrm_time = 0, logout_time, lock_time;
time_t cl, nl, sched_dif;
- if ((vp = adrof(STRautologout)) != NULL) {
+ if ((vp = adrof(STRautologout)) != NULL && vp->vec != NULL) {
if ((cp = vp->vec[0]) != 0) {
if ((logout_time = (unsigned) atoi(short2str(cp)) * 60) > 0) {
alrm_time = logout_time;
@@ -1575,10 +1575,12 @@ gethomedir(us)
fix_yp_bugs();
#endif /* YPBUGS */
if (pp != NULL) {
+#if 0
/* Don't return if root */
if (pp->pw_dir[0] == '/' && pp->pw_dir[1] == '\0')
return NULL;
else
+#endif
return Strsave(str2short(pp->pw_dir));
}
#ifdef HESIOD
@@ -1610,10 +1612,13 @@ gethomedir(us)
}
for (res1 = res; *res1; res1++)
free(*res1);
+#if 0
+ /* Don't return if root */
if (rp != NULL && rp[0] == '/' && rp[1] == '\0') {
xfree((ptr_t)rp);
rp = NULL;
}
+#endif
return rp;
}
#endif /* HESIOD */
@@ -2102,7 +2107,7 @@ getremotehost()
const char *host = NULL;
#ifdef INET6
struct sockaddr_storage saddr;
- int len = sizeof(struct sockaddr_storage);
+ socklen_t len = sizeof(struct sockaddr_storage);
static char hbuf[NI_MAXHOST];
#else
struct hostent* hp;
@@ -2113,13 +2118,10 @@ getremotehost()
char *sptr = NULL;
#endif
- if (getpeername(SHIN, (struct sockaddr *) &saddr, &len) != -1) {
#ifdef INET6
-#if 0
- int flag = 0;
-#else
+ if (getpeername(SHIN, (struct sockaddr *) &saddr, &len) != -1 &&
+ (saddr.ss_family == AF_INET6 || saddr.ss_family == AF_INET)) {
int flag = NI_NUMERICHOST;
-#endif
#ifdef NI_WITHSCOPEID
flag |= NI_WITHSCOPEID;
@@ -2128,6 +2130,8 @@ getremotehost()
NULL, 0, flag);
host = hbuf;
#else
+ if (getpeername(SHIN, (struct sockaddr *) &saddr, &len) != -1 &&
+ saddr.sin_family == AF_INET) {
#if 0
if ((hp = gethostbyaddr((char *)&saddr.sin_addr, sizeof(struct in_addr),
AF_INET)) != NULL)
diff --git a/contrib/tcsh/tc.h b/contrib/tcsh/tc.h
index f39d74693abe..fd572f2d4c1e 100644
--- a/contrib/tcsh/tc.h
+++ b/contrib/tcsh/tc.h
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/tc.h,v 3.4 1996/04/26 19:21:03 christos Exp $ */
+/* $Header: /src/pub/tcsh/tc.h,v 3.5 2002/03/08 17:36:47 christos Exp $ */
/*
* tc.h: Tcsh includes
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
diff --git a/contrib/tcsh/tc.os.c b/contrib/tcsh/tc.os.c
index a5b8f55e069e..84819ffd60ee 100644
--- a/contrib/tcsh/tc.os.c
+++ b/contrib/tcsh/tc.os.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/tc.os.c,v 3.52 2000/11/11 23:03:39 christos Exp $ */
+/* $Header: /src/pub/tcsh/tc.os.c,v 3.53 2002/03/08 17:36:47 christos Exp $ */
/*
* tc.os.c: OS Dependent builtin functions
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,7 +32,7 @@
*/
#include "sh.h"
-RCSID("$Id: tc.os.c,v 3.52 2000/11/11 23:03:39 christos Exp $")
+RCSID("$Id: tc.os.c,v 3.53 2002/03/08 17:36:47 christos Exp $")
#include "tw.h"
#include "ed.h"
diff --git a/contrib/tcsh/tc.os.h b/contrib/tcsh/tc.os.h
index c362cbcfcef7..2217f6ca3faf 100644
--- a/contrib/tcsh/tc.os.h
+++ b/contrib/tcsh/tc.os.h
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/tc.os.h,v 3.86 2000/11/11 23:03:39 christos Exp $ */
+/* $Header: /src/pub/tcsh/tc.os.h,v 3.88 2002/05/16 13:51:26 christos Exp $ */
/*
* tc.os.h: Shell os dependent defines
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -167,6 +163,9 @@ struct ucred {
# define setpgrp(a, b) setpgrp2(a, b)
# endif /* BSDJOBS */
# endif /* POSIX */
+# ifndef TIOCSTI
+# include <sys/strtio.h>
+# endif
#endif /* hpux */
/*
diff --git a/contrib/tcsh/tc.printf.c b/contrib/tcsh/tc.printf.c
index 76432512f955..a6f130afea34 100644
--- a/contrib/tcsh/tc.printf.c
+++ b/contrib/tcsh/tc.printf.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/tc.printf.c,v 3.21 2001/06/21 23:26:54 kim Exp $ */
+/* $Header: /src/pub/tcsh/tc.printf.c,v 3.23 2002/03/08 17:36:47 christos Exp $ */
/*
* tc.printf.c: A public-domain, minimal printf/sprintf routine that prints
* through the putchar() routine. Feel free to use for
@@ -16,11 +16,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -38,7 +34,7 @@
*/
#include "sh.h"
-RCSID("$Id: tc.printf.c,v 3.21 2001/06/21 23:26:54 kim Exp $")
+RCSID("$Id: tc.printf.c,v 3.23 2002/03/08 17:36:47 christos Exp $")
#ifdef lint
#undef va_arg
@@ -58,16 +54,21 @@ doprnt(addchar, sfmt, ap)
const char *sfmt;
va_list ap;
{
- register char *bp;
- register const char *f;
+ char *bp;
+ const char *f;
#ifdef SHORT_STRINGS
- register Char *Bp;
+ Char *Bp;
#endif /* SHORT_STRINGS */
- register long l;
- register unsigned long u;
- register int i;
- register int fmt;
- register unsigned char pad = ' ';
+#ifdef HAVE_QUAD
+ long long l;
+ unsigned long long u;
+#else
+ long l;
+ unsigned long u;
+#endif
+ int i;
+ int fmt;
+ unsigned char pad = ' ';
int flush_left = 0, f_width = 0, prec = INF, hash = 0, do_long = 0;
int sign = 0;
int attributes = 0;
@@ -120,8 +121,12 @@ doprnt(addchar, sfmt, ap)
}
if (*f == 'l') { /* long format */
- do_long = 1;
+ do_long++;
f++;
+ if (*f == 'l') {
+ do_long++;
+ f++;
+ }
}
fmt = (unsigned char) *f;
@@ -132,10 +137,23 @@ doprnt(addchar, sfmt, ap)
bp = buf;
switch (fmt) { /* do the format */
case 'd':
- if (do_long)
- l = va_arg(ap, long);
- else
+ switch (do_long) {
+ case 0:
l = (long) (va_arg(ap, int));
+ break;
+ case 1:
+#ifndef HAVE_QUAD
+ default:
+#endif
+ l = va_arg(ap, long);
+ break;
+#ifdef HAVE_QUAD
+ default:
+ l = va_arg(ap, long long);
+ break;
+#endif
+ }
+
if (l < 0) {
sign = 1;
l = -l;
@@ -159,10 +177,22 @@ doprnt(addchar, sfmt, ap)
case 'o':
case 'x':
case 'u':
- if (do_long)
- u = va_arg(ap, unsigned long);
- else
+ switch (do_long) {
+ case 0:
u = (unsigned long) (va_arg(ap, unsigned int));
+ break;
+ case 1:
+#ifndef HAVE_QUAD
+ default:
+#endif
+ u = va_arg(ap, unsigned long);
+ break;
+#ifdef HAVE_QUAD
+ default:
+ u = va_arg(ap, unsigned long long);
+ break;
+#endif
+ }
if (fmt == 'u') { /* unsigned decimal */
do {
*bp++ = (char) (u % 10) + '0';
diff --git a/contrib/tcsh/tc.prompt.c b/contrib/tcsh/tc.prompt.c
index 95d56414287b..6c0a0a41fd6c 100644
--- a/contrib/tcsh/tc.prompt.c
+++ b/contrib/tcsh/tc.prompt.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/tc.prompt.c,v 3.41 2000/11/11 23:03:39 christos Exp $ */
+/* $Header: /src/pub/tcsh/tc.prompt.c,v 3.46 2002/07/12 13:16:19 christos Exp $ */
/*
* tc.prompt.c: Prompt printing stuff
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,7 +32,7 @@
*/
#include "sh.h"
-RCSID("$Id: tc.prompt.c,v 3.41 2000/11/11 23:03:39 christos Exp $")
+RCSID("$Id: tc.prompt.c,v 3.46 2002/07/12 13:16:19 christos Exp $")
#include "ed.h"
#include "tw.h"
@@ -200,8 +196,8 @@ tprintf(what, buf, fmt, siz, str, tim, info)
/* prompt stuff */
static Char *olddir = NULL, *olduser = NULL;
extern int tlength; /* cache cleared */
- int updirs, sz;
- size_t pdirs;
+ int updirs;
+ size_t pdirs, sz;
for (; *cp; cp++) {
if (p >= ep)
@@ -424,7 +420,7 @@ tprintf(what, buf, fmt, siz, str, tim, info)
*p++ = attributes | '+';
} else
*p++ = attributes | ('0' + updirs);
- *p++ = attributes | tcsh ? '>' : '%';
+ *p++ = attributes | '>';
}
}
@@ -513,14 +509,30 @@ tprintf(what, buf, fmt, siz, str, tim, info)
case 'L':
ClearToBottom();
break;
+
+ case 'j':
+ {
+ Char buf[128], *ebuf, *q;
+ int njobs = -1;
+ struct process *pp;
+ for (pp = proclist.p_next; pp; pp = pp->p_next)
+ njobs++;
+ /* make sure we have space */
+ ebuf = Itoa(njobs, buf, 1, attributes);
+ for (q = buf; q < ebuf; *p++ = *q++)
+ if (p >= ep) break;
+ break;
+ }
case '?':
if ((z = varval(STRstatus)) != STRNULL)
for (; *z; *p++ = attributes | *z++)
if (p >= ep) break;
break;
case '$':
- sz = (int) (ep - p);
+ sz = ep - p;
(void) expdollar(&p, &cp, &sz, attributes);
+ /* cp should point the last char of currnet % sequence */
+ cp--;
break;
case '%':
*p++ = attributes | '%';
@@ -604,7 +616,7 @@ expdollar(dstp, srcp, spp, attr)
vp = adrof(var);
val = (!vp) ? tgetenv(var) : NULL;
- if (vp) {
+ if (vp && vp->vec) {
for (i = 0; vp->vec[i] != NULL; i++) {
for (val = vp->vec[i]; *spp > 0 && *val; (*spp)--)
*dst++ = *val++ | attr;
diff --git a/contrib/tcsh/tc.sched.c b/contrib/tcsh/tc.sched.c
index 577bc601da68..c8fab26d330c 100644
--- a/contrib/tcsh/tc.sched.c
+++ b/contrib/tcsh/tc.sched.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/tc.sched.c,v 3.17 2000/07/04 19:46:23 christos Exp $ */
+/* $Header: /src/pub/tcsh/tc.sched.c,v 3.19 2002/03/08 17:36:47 christos Exp $ */
/*
* tc.sched.c: Scheduled command execution
*
@@ -16,11 +16,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -38,9 +34,10 @@
*/
#include "sh.h"
-RCSID("$Id: tc.sched.c,v 3.17 2000/07/04 19:46:23 christos Exp $")
+RCSID("$Id: tc.sched.c,v 3.19 2002/03/08 17:36:47 christos Exp $")
#include "ed.h"
+#include "tw.h"
#include "tc.h"
extern int just_signaled;
@@ -268,7 +265,7 @@ sched_run(n)
if (seterr)
stderror(ERR_OLD);
/* execute the parse tree. */
- execute(t, -1, NULL, NULL);
+ execute(t, -1, NULL, NULL, TRUE);
/* done. free the lex list and parse tree. */
freelex(&cmd), freesyn(t);
}
diff --git a/contrib/tcsh/tc.sig.c b/contrib/tcsh/tc.sig.c
index 29bbded90004..3e1804be2918 100644
--- a/contrib/tcsh/tc.sig.c
+++ b/contrib/tcsh/tc.sig.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/tc.sig.c,v 3.25 2000/07/04 19:46:24 christos Exp $ */
+/* $Header: /src/pub/tcsh/tc.sig.c,v 3.26 2002/03/08 17:36:47 christos Exp $ */
/*
* tc.sig.c: Signal routine emulations
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,7 +32,7 @@
*/
#include "sh.h"
-RCSID("$Id: tc.sig.c,v 3.25 2000/07/04 19:46:24 christos Exp $")
+RCSID("$Id: tc.sig.c,v 3.26 2002/03/08 17:36:47 christos Exp $")
#include "tc.wait.h"
diff --git a/contrib/tcsh/tc.sig.h b/contrib/tcsh/tc.sig.h
index b817978cb4a6..c87936a524b3 100644
--- a/contrib/tcsh/tc.sig.h
+++ b/contrib/tcsh/tc.sig.h
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/tc.sig.h,v 3.22 2000/11/11 23:03:39 christos Exp $ */
+/* $Header: /src/pub/tcsh/tc.sig.h,v 3.26 2002/07/12 13:16:19 christos Exp $ */
/*
* tc.sig.h: Signal handling
*
@@ -15,11 +15,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -47,7 +43,7 @@
# include <sys/signal.h>
#endif /* SYSVREL > 0 */
-#if defined(SUNOS4) || defined(DGUX) || defined(hp800) || (SYSVREL > 3 && defined(POSIXSIGS) && defined(VFORK))
+#if defined(__APPLE__) || defined(SUNOS4) || defined(DGUX) || defined(hp800) || (SYSVREL > 3 && defined(POSIXSIGS) && defined(VFORK))
# define SAVESIGVEC
#endif /* SUNOS4 || DGUX || hp800 || SVR4 & POSIXSIGS & VFORK */
@@ -66,11 +62,9 @@
# define HAVE_SIGVEC
# define mysigvec(a, b, c) sigaction(a, b, c)
typedef struct sigaction sigvec_t;
-# if defined(convex) || defined(__convex__)
- /* eliminate compiler warnings since these are defined in signal.h */
-# undef sv_handler
-# undef sv_flags
-# endif
+/* eliminate compiler warnings since these are defined in signal.h */
+# undef sv_handler
+# undef sv_flags
# define sv_handler sa_handler
# define sv_flags sa_flags
# endif /* _SEQUENT || (_POSIX_SOURCE && !hpux) */
@@ -86,6 +80,8 @@ typedef struct sigvec sigvec_t;
# ifdef POSIXSIGS
# define mysigvec(a, b, c) sigaction(a, b, c)
typedef struct sigaction sigvec_t;
+# undef sv_handler
+# undef sv_flags
# define sv_handler sa_handler
# define sv_flags sa_flags
# else /* BSDSIGS */
diff --git a/contrib/tcsh/tc.str.c b/contrib/tcsh/tc.str.c
index 5f58ef9fc026..7bddf892a55d 100644
--- a/contrib/tcsh/tc.str.c
+++ b/contrib/tcsh/tc.str.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/tc.str.c,v 3.9 1996/04/26 19:21:42 christos Exp $ */
+/* $Header: /src/pub/tcsh/tc.str.c,v 3.10 2002/03/08 17:36:47 christos Exp $ */
/*
* tc.str.c: Short string package
* This has been a lesson of how to write buggy code!
@@ -15,11 +15,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -37,7 +33,7 @@
*/
#include "sh.h"
-RCSID("$Id: tc.str.c,v 3.9 1996/04/26 19:21:42 christos Exp $")
+RCSID("$Id: tc.str.c,v 3.10 2002/03/08 17:36:47 christos Exp $")
#define MALLOC_INCR 128
diff --git a/contrib/tcsh/tc.vers.c b/contrib/tcsh/tc.vers.c
index f319b8e16a6d..6d1b38ae77be 100644
--- a/contrib/tcsh/tc.vers.c
+++ b/contrib/tcsh/tc.vers.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/tc.vers.c,v 3.46 1999/05/11 13:07:54 christos Exp $ */
+/* $Header: /src/pub/tcsh/tc.vers.c,v 3.49 2002/05/16 13:51:26 christos Exp $ */
/*
* tc.vers.c: Version dependent stuff
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -37,7 +33,7 @@
#include "sh.h"
#include "tw.h"
-RCSID("$Id: tc.vers.c,v 3.46 1999/05/11 13:07:54 christos Exp $")
+RCSID("$Id: tc.vers.c,v 3.49 2002/05/16 13:51:26 christos Exp $")
#include "patchlevel.h"
@@ -139,6 +135,11 @@ fix_version()
#else
# define CCATSTR ""
#endif
+#if defined(FILEC) && defined(TIOCSTI)
+# define FILECSTR ",filec"
+#else
+# define FILECSTR ""
+#endif
/* if you want your local version to say something */
#ifndef LOCALSTR
# define LOCALSTR ""
@@ -157,11 +158,11 @@ fix_version()
(void) xsnprintf(version, sizeof(version),
-"tcsh %d.%.2d.%.2d (%s) %s (%S-%S-%S) options %s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s",
+"tcsh %d.%.2d.%.2d (%s) %s (%S-%S-%S) options %s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s",
REV, VERS, PATCHLEVEL, ORIGIN, DATE, machtype, vendor, ostype,
SSSTR, NLSSTR, LFSTR, DLSTR, VISTR, DTRSTR, BYESTR,
ALSTR, KANSTR, SMSTR, HBSTR, NGSTR, RHSTR, AFSSTR, NDSTR,
- COLORSTR, DSPMSTR, CCATSTR, LOCALSTR);
+ COLORSTR, DSPMSTR, CCATSTR, FILECSTR, LOCALSTR);
set(STRversion, SAVE(version), VAR_READWRITE);
(void) xsnprintf(version, sizeof(version), "%d.%.2d.%.2d",
REV, VERS, PATCHLEVEL);
diff --git a/contrib/tcsh/tc.wait.h b/contrib/tcsh/tc.wait.h
index 9d7ac21830ad..fc55e3f13430 100644
--- a/contrib/tcsh/tc.wait.h
+++ b/contrib/tcsh/tc.wait.h
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/tc.wait.h,v 3.11 2000/11/11 23:03:39 christos Exp $ */
+/* $Header: /src/pub/tcsh/tc.wait.h,v 3.13 2002/05/30 15:22:09 christos Exp $ */
/*
* tc.wait.h: <sys/wait.h> for machines that don't have it or have it and
* is incorrect.
@@ -15,11 +15,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -98,7 +94,7 @@ union wait {
# define w_stopval w_S.w_Stopval
# define w_stopsig w_S.w_Stopsig
# else /* _SEQUENT_ */
-# if defined(vax) || defined(i386) || defined(_I386)
+# if defined(vax) || defined(__vax__) || defined(i386) || defined(_I386) || defined(__i386__)
union {
struct {
unsigned int w_Termsig:7;
@@ -131,7 +127,7 @@ union wait {
unsigned int w_Stopval:8;
} w_S;
} w_P;
-# endif /* vax || i386 || _I386 */
+# endif /* vax || __vax__ || i386 || _I386 || __i386__ */
};
# define w_termsig w_P.w_T.w_Termsig
diff --git a/contrib/tcsh/tc.who.c b/contrib/tcsh/tc.who.c
index 325db77ee35c..ede76023706d 100644
--- a/contrib/tcsh/tc.who.c
+++ b/contrib/tcsh/tc.who.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/tc.who.c,v 3.32 2000/11/12 02:18:07 christos Exp $ */
+/* $Header: /src/pub/tcsh/tc.who.c,v 3.35 2002/07/01 21:12:04 christos Exp $ */
/*
* tc.who.c: Watch logins and logouts...
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,7 +32,7 @@
*/
#include "sh.h"
-RCSID("$Id: tc.who.c,v 3.32 2000/11/12 02:18:07 christos Exp $")
+RCSID("$Id: tc.who.c,v 3.35 2002/07/01 21:12:04 christos Exp $")
#include "tc.h"
@@ -197,7 +193,7 @@ watch_login(force)
#endif
v = adrof(STRwatch);
- if (v == NULL && !force) {
+ if ((v == NULL || v->vec == NULL) && !force) {
#ifdef BSDSIGS
(void) sigsetmask(omask);
#else
@@ -500,7 +496,7 @@ print_who(wp)
struct varent *vp = adrof(STRwho);
Char buf[BUFSIZE];
- if (vp && vp->vec[0])
+ if (vp && vp->vec && vp->vec[0])
cp = vp->vec[0];
tprintf(FMT_WHO, buf, cp, BUFSIZE, NULL, wp->who_time, (ptr_t) wp);
diff --git a/contrib/tcsh/tcsh.man b/contrib/tcsh/tcsh.man
index 361eb9a0beb4..30d91ee2d78d 100644
--- a/contrib/tcsh/tcsh.man
+++ b/contrib/tcsh/tcsh.man
@@ -9,11 +9,7 @@
.\" 2. Redistributions in binary form must reproduce the above copyright
.\" notice, this list of conditions and the following disclaimer in the
.\" documentation and/or other materials provided with the distribution.
-.\" 3. All advertising materials mentioning features or use of this software
-.\" must display the following acknowledgment:
-.\" This product includes software developed by the University of
-.\" California, Berkeley and its contributors.
-.\" 4. Neither the name of the University nor the names of its contributors
+.\" 3. Neither the name of the University nor the names of its contributors
.\" may be used to endorse or promote products derived from this software
.\" without specific prior written permission.
.\"
@@ -76,7 +72,7 @@
.\" used here if you can. In particular, please don't use nroff commands
.\" which aren't already used herein.
.\"
-.TH TCSH 1 "2 September 2001" "Astron 6.11.00"
+.TH TCSH 1 "23 July 2002" "Astron 6.12.00"
.SH NAME
tcsh \- C shell with file name completion and command line editing
.SH SYNOPSIS
@@ -2890,15 +2886,42 @@ limits. Only the super-user may raise the hard limits, but
a user may lower or raise the current limits within the legal range.
.RS +8
.PP
-Controllable resources currently include \fIcputime\fR (the
-maximum number of cpu-seconds to be used by each process),
-\fIfilesize\fR (the largest single file which can be created),
-\fIdatasize\fR (the maximum growth of the data+stack region via
-sbrk(2) beyond the end of the program text), \fIstacksize\fR (the
-maximum size of the automatically-extended stack region),
-\fIcoredumpsize\fR (the size of the largest core dump that will be created),
-and \fImemoryuse\fR, the maximum amount of physical memory a process
-may have allocated to it at a given time.
+Controllable resources currently include (if supported by the OS):
+.TP
+\fIcputime\fR
+the maximum number of cpu-seconds to be used by each process
+.TP
+\fIfilesize\fR
+the largest single file which can be created
+.TP
+\fIdatasize\fR
+the maximum growth of the data+stack region via sbrk(2) beyond
+the end of the program text
+.TP
+\fIstacksize\fR
+the maximum size of the automatically-extended stack region
+.TP
+\fIcoredumpsize\fR
+the size of the largest core dump that will be created
+.TP
+\fImemoryuse\fR
+the maximum amount of physical memory a process
+may have allocated to it at a given time
+.TP
+\fIdescriptors\fR or \fIopenfiles\fR
+the maximum number of open files for this process
+.TP
+\fIconcurrency\fR
+the maximum number of threads for this process
+.TP
+\fImemorylocked\fR
+the maximum size which a process may lock into memory using mlock(2)
+.TP
+\fImaxproc\fR
+the maximum number of simultaneous processes for this user id
+.TP
+\fIsbsize\fR
+the maximum size of socket buffer usage for this user
.PP
\fImaximum-use\fR may be given as a (floating point or
integer) number followed by a scale factor. For all limits
@@ -3634,6 +3657,7 @@ See also the \fBcwd\fR and \fBowd\fR shell variables.
If set to `euc', it enables display and editing EUC-kanji(Japanese) code.
If set to `sjis', it enables display and editing Shift-JIS(Japanese) code.
If set to `big5', it enables display and editing Big5(Chinese) code.
+If set to `utf8', it enables display and editing Utf8(Unicode) code.
If set to the following format, it enables display and editing of original
multi-byte code format:
.RS +8
@@ -3677,6 +3701,11 @@ The GNU fileutils version of ls cannot display multi-byte
filenames without the -N ( --literal ) option. If you are using
this version, set the second word of dspmbyte to "ls". If not, for
example, "ls-F -l" cannot display multi-byte filenames.
+.PP
+ Note:
+.br
+This variable can only be used if KANJI and DSPMBYTE has been defined at
+compile time.
.RE
.TP 8
.B dunique \fR(+)
@@ -3727,7 +3756,10 @@ instead of `/<skipped>'.
Lists file name suffixes to be ignored by completion.
.TP 8
.B filec
-In \fItcsh\fR, completion is always used and this variable is ignored.
+In \fItcsh\fR, completion is always used and this variable is ignored
+by default. If
+.B edit
+is unset, then the traditional \fIcsh\fR completion is used.
If set in \fIcsh\fR, filename completion is used.
.TP 8
.B gid \fR(+)
@@ -4022,6 +4054,9 @@ A single `%'.
%n
The user name.
.TP 4
+%j
+The number of jobs.
+.TP 4
%d
The weekday in `Day' format.
.TP 4
@@ -4602,6 +4637,9 @@ Named pipe (FIFO)
so 01;35
Socket
.TP 12
+do 01;35
+Door
+.TP 12
bd 01;33
Block device
.TP 12
@@ -5001,7 +5039,7 @@ pipe(2), setrlimit(2), sigvec(2), stat(2), umask(2), vfork(2), wait(2),
malloc(3), setlocale(3), tty(4), a.out(5), termcap(5), environ(7),
termio(7), Introduction to the C Shell
.SH VERSION
-This manual documents tcsh 6.11.00 (Astron) 2001-09-02.
+This manual documents tcsh 6.12.00 (Astron) 2002-07-23.
.SH AUTHORS
.PD 0
.TP 2
diff --git a/contrib/tcsh/tw.color.c b/contrib/tcsh/tw.color.c
index de87c75a7a32..c71855455c18 100644
--- a/contrib/tcsh/tw.color.c
+++ b/contrib/tcsh/tw.color.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/tw.color.c,v 1.8 2001/03/18 19:06:32 christos Exp $ */
+/* $Header: /src/pub/tcsh/tw.color.c,v 1.11 2002/06/25 19:02:11 christos Exp $ */
/*
* tw.color.c: builtin color ls-F
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,7 +32,7 @@
*/
#include "sh.h"
-RCSID("$Id: tw.color.c,v 1.8 2001/03/18 19:06:32 christos Exp $")
+RCSID("$Id: tw.color.c,v 1.11 2002/06/25 19:02:11 christos Exp $")
#include "tw.h"
#include "ed.h"
@@ -116,15 +112,13 @@ set_color_context()
{
struct varent *vp = adrof(STRcolor);
- if (!vp) {
+ if (vp == NULL || vp->vec == NULL) {
color_context_ls = FALSE;
color_context_lsmF = FALSE;
- }
- else if (!vp->vec[0] || vp->vec[0][0] == '\0') {
+ } else if (!vp->vec[0] || vp->vec[0][0] == '\0') {
color_context_ls = TRUE;
color_context_lsmF = TRUE;
- }
- else {
+ } else {
size_t i;
color_context_ls = FALSE;
@@ -184,6 +178,8 @@ parseLS_COLORS(value)
Extension *e; /* pointer in extensions */
jmp_buf_t osetexit;
+ (void) &e;
+
/* init */
if (extensions)
xfree((ptr_t) extensions);
diff --git a/contrib/tcsh/tw.comp.c b/contrib/tcsh/tw.comp.c
index 6d5652ad1d8c..59eff802d74e 100644
--- a/contrib/tcsh/tw.comp.c
+++ b/contrib/tcsh/tw.comp.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/tw.comp.c,v 1.31 1998/10/25 15:10:49 christos Exp $ */
+/* $Header: /src/pub/tcsh/tw.comp.c,v 1.33 2002/06/25 19:02:11 christos Exp $ */
/*
* tw.comp.c: File completion builtin
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,7 +32,7 @@
*/
#include "sh.h"
-RCSID("$Id: tw.comp.c,v 1.31 1998/10/25 15:10:49 christos Exp $")
+RCSID("$Id: tw.comp.c,v 1.33 2002/06/25 19:02:11 christos Exp $")
#include "tw.h"
#include "ed.h"
@@ -74,7 +70,7 @@ docomplete(v, t)
tw_prlist(&completions);
else if (*v == 0) {
vp = adrof1(strip(p), &completions);
- if (vp)
+ if (vp && vp->vec)
tw_pr(vp->vec), xputchar('\n');
}
else
@@ -119,7 +115,8 @@ x:
if (p->v_parent == 0) /* is it the header? */
return;
xprintf("%s\t", short2str(p->v_name));
- tw_pr(p->vec);
+ if (p->vec)
+ tw_pr(p->vec);
xputchar('\n');
if (p->v_right) {
p = p->v_right;
diff --git a/contrib/tcsh/tw.decls.h b/contrib/tcsh/tw.decls.h
index b3eafb4b3d49..0af6041a1a9d 100644
--- a/contrib/tcsh/tw.decls.h
+++ b/contrib/tcsh/tw.decls.h
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/tw.decls.h,v 3.17 2000/06/11 02:14:16 kim Exp $ */
+/* $Header: /src/pub/tcsh/tw.decls.h,v 3.18 2002/03/08 17:36:47 christos Exp $ */
/*
* tw.decls.h: Tenex external declarations
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
diff --git a/contrib/tcsh/tw.h b/contrib/tcsh/tw.h
index 80aec0bd8ac8..b2d97bcab95e 100644
--- a/contrib/tcsh/tw.h
+++ b/contrib/tcsh/tw.h
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/tw.h,v 3.21 2000/07/04 19:45:02 christos Exp $ */
+/* $Header: /src/pub/tcsh/tw.h,v 3.22 2002/03/08 17:36:47 christos Exp $ */
/*
* tw.h: TwENEX functions headers
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
diff --git a/contrib/tcsh/tw.help.c b/contrib/tcsh/tw.help.c
index 972a0fe368c3..1cdf7e3c0b3f 100644
--- a/contrib/tcsh/tw.help.c
+++ b/contrib/tcsh/tw.help.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/tw.help.c,v 3.17 2000/01/14 22:57:30 christos Exp $ */
+/* $Header: /src/pub/tcsh/tw.help.c,v 3.18 2002/03/08 17:36:47 christos Exp $ */
/* tw.help.c: actually look up and print documentation on a file.
* Look down the path for an appropriate file, then print it.
* Note that the printing is NOT PAGED. This is because the
@@ -17,11 +17,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -39,7 +35,7 @@
*/
#include "sh.h"
-RCSID("$Id: tw.help.c,v 3.17 2000/01/14 22:57:30 christos Exp $")
+RCSID("$Id: tw.help.c,v 3.18 2002/03/08 17:36:47 christos Exp $")
#include "tw.h"
#include "tc.h"
diff --git a/contrib/tcsh/tw.init.c b/contrib/tcsh/tw.init.c
index db4fe109bfe3..66439d262c35 100644
--- a/contrib/tcsh/tw.init.c
+++ b/contrib/tcsh/tw.init.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/tw.init.c,v 3.27 2000/11/11 23:03:40 christos Exp $ */
+/* $Header: /src/pub/tcsh/tw.init.c,v 3.29 2002/06/25 19:02:12 christos Exp $ */
/*
* tw.init.c: Handle lists of things to complete
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,7 +32,7 @@
*/
#include "sh.h"
-RCSID("$Id: tw.init.c,v 3.27 2000/11/11 23:03:40 christos Exp $")
+RCSID("$Id: tw.init.c,v 3.29 2002/06/25 19:02:12 christos Exp $")
#include "tw.h"
#include "ed.h"
@@ -245,7 +241,7 @@ tw_cmd_cmd()
int len;
- if (v == NULL) /* if no path */
+ if (v == NULL || v->vec == NULL) /* if no path */
return;
for (pv = v->vec; *pv; pv++) {
diff --git a/contrib/tcsh/tw.parse.c b/contrib/tcsh/tw.parse.c
index abfaa8cb6f86..7bec5be5a61c 100644
--- a/contrib/tcsh/tw.parse.c
+++ b/contrib/tcsh/tw.parse.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/tw.parse.c,v 3.90 2001/03/18 19:06:32 christos Exp $ */
+/* $Header: /src/pub/tcsh/tw.parse.c,v 3.92 2002/06/25 19:02:12 christos Exp $ */
/*
* tw.parse.c: Everyone has taken a shot in this futile effort to
* lexically analyze a csh line... Well we cannot good
@@ -17,11 +17,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -39,7 +35,7 @@
*/
#include "sh.h"
-RCSID("$Id: tw.parse.c,v 3.90 2001/03/18 19:06:32 christos Exp $")
+RCSID("$Id: tw.parse.c,v 3.92 2002/06/25 19:02:12 christos Exp $")
#include "tw.h"
#include "ed.h"
@@ -827,7 +823,7 @@ recognize(exp_name, item, name_length, numitems, enhanced)
#ifdef WINNT_NATIVE
struct varent *vp;
int igncase;
- igncase = (vp = adrof(STRcomplete)) != NULL &&
+ igncase = (vp = adrof(STRcomplete)) != NULL && vp->vec != NULL &&
Strcmp(*(vp->vec), STRigncase) == 0;
#endif /* WINNT_NATIVE */
@@ -993,7 +989,7 @@ tw_collect_items(command, looking, exp_dir, exp_name, target, pat, flags)
case RECOGNIZE_SCROLL:
#ifdef WINNT_NATIVE
- igncase = (vp = adrof(STRcomplete)) != NULL &&
+ igncase = (vp = adrof(STRcomplete)) != NULL && vp->vec != NULL &&
Strcmp(*(vp->vec), STRigncase) == 0;
#endif /* WINNT_NATIVE */
enhanced = (vp = adrof(STRcomplete)) != NULL && !Strcmp(*(vp->vec),STRenhance);
@@ -1147,7 +1143,7 @@ tw_suffix(looking, exp_dir, exp_name, target, name)
/*
* Don't consider array variables or empty variables
*/
- if ((vp = adrof(exp_name)) != NULL) {
+ if ((vp = adrof(exp_name)) != NULL && vp->vec != NULL) {
if ((ptr = vp->vec[0]) == NULL || *ptr == '\0' ||
vp->vec[1] != NULL)
return ' ';
diff --git a/contrib/tcsh/tw.spell.c b/contrib/tcsh/tw.spell.c
index e784edd2585b..f3cba9d25f3e 100644
--- a/contrib/tcsh/tw.spell.c
+++ b/contrib/tcsh/tw.spell.c
@@ -1,4 +1,4 @@
-/* $Header: /src/pub/tcsh/tw.spell.c,v 3.14 1996/04/26 19:23:27 christos Exp $ */
+/* $Header: /src/pub/tcsh/tw.spell.c,v 3.15 2002/03/08 17:36:47 christos Exp $ */
/*
* tw.spell.c: Spell check words
*/
@@ -14,11 +14,7 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
@@ -36,7 +32,7 @@
*/
#include "sh.h"
-RCSID("$Id: tw.spell.c,v 3.14 1996/04/26 19:23:27 christos Exp $")
+RCSID("$Id: tw.spell.c,v 3.15 2002/03/08 17:36:47 christos Exp $")
#include "tw.h"