commit bash-20040909 snapshot

This commit is contained in:
Chet Ramey
2011-12-03 13:36:10 -05:00
parent 37c41ab12b
commit 301e21427e
69 changed files with 38515 additions and 517 deletions
+63
View File
@@ -9965,3 +9965,66 @@ subst.c
list_append for each split word -- as the list gets long, you have
to traverse it every time. Keep a pointer to the end of the list and
and just tack onto it
9/8
---
lib/readline/complete.c
- change fnprint to calculate the displayed width of a filename in
the same way as fnwidth
subst.c
- in verify_substring_values, when expanding ${array[@]:offset}, make
sure negative offsets count from one greater than the array's
maximum index so things like ${x[@}: -1} work to give the last element
(requires fixing array tests)
builtins/common.c
- new error function, sh_wrerror(), for builtins to call when a write
error occurs
builtins/common.h
- extern declaration for sh_wrerror()
builtins/cd.def
- change builtin_error call to use sh_wrerror()
builtins/echo.def
- report write errors with sh_wrerror() instead of just returning
failure
builtins/printf.def
- change printstr to return failure (-1) or success (0) indication
rather than void
- report write errors when printstr() fails, return failure
- if any of the PF/printf calls fail, report write error and return
failure
execute_cmd.c
- change execute_in_subshell so the subshell command inherits the
command timing flags from the enclosing COMMAND *
9/11
----
[prayers for the victims of 9/11/2001]
lib/sh/strnlen.c
- new file, implementation of GNU libc extension function strnlen
lib/sh/Makefile.in, {config.h,configure,Makefile}.in, MANIFEST
- changes for strnlen
configure.in
- version changed to 3.1-devel
doc/bash.1, lib/readline/doc/rluser.texi
- added description of `-o plusdirs' to complete/compgen (thanks,
Arnold)
parse.y
- new parser_state flag, PST_ASSIGNOK, if set indicates we're parsing
arguments to a builtin that accepts assignment statement arguments
- turn on PST_ASSIGNOK in read_token_word when appropriate
- turn off PST_ASSIGNOK in read_token when appropriate
- don't attempt to parse a compound assignment specially unless we're
in a position where an assignment statement is acceptable, or
PST_ASSIGNOK is set
+67
View File
@@ -9958,3 +9958,70 @@ lib/readline/display.c
that might contain double-width multibyte characters. Fixes from
Tomohiro Kubota
9/6
---
subst.c
- change word_list_split to avoid really bad behavior caused by calling
list_append for each split word -- as the list gets long, you have
to traverse it every time. Keep a pointer to the end of the list and
and just tack onto it
9/8
---
lib/readline/complete.c
- change fnprint to calculate the displayed width of a filename in
the same way as fnwidth
subst.c
- in verify_substring_values, when expanding ${array[@]:offset}, make
sure negative offsets count from one greater than the array's
maximum index so things like ${x[@}: -1} work to give the last element
(requires fixing array tests)
builtins/common.c
- new error function, sh_wrerror(), for builtins to call when a write
error occurs
builtins/common.h
- extern declaration for sh_wrerror()
builtins/cd.def
- change builtin_error call to use sh_wrerror()
builtins/echo.def
- report write errors with sh_wrerror() instead of just returning
failure
builtins/printf.def
- change printstr to return failure (-1) or success (0) indication
rather than void
- report write errors when printstr() fails, return failure
- if any of the PF/printf calls fail, report write error and return
failure
execute_cmd.c
- change execute_in_subshell so the subshell command inherits the
command timing flags from the enclosing COMMAND *
9/11
----
[prayers for the victims of 9/11/2001]
lib/sh/strnlen.c
- new file, implementation of GNU libc extension function strnlen
lib/sh/Makefile.in, {config.h,configure,Makefile}.in, MANIFEST
- changes for strnlen
configure.in
- version changed to 3.1-devel
doc/bash.1, lib/readline/doc/rluser.texi
- added description of `-o plusdirs' to complete/compgen (thanks,
Arnold)
parse.y
- new parser_state flag, PST_ASSIGNOK, if set indicates we're parsing
arguments to a builtin that accepts assignment statement arguments
- turn on PST_ASSIGNOK in read_token_word when appropriate
- turn off PST_ASSIGNOK in read_token when appropriate
+1
View File
@@ -408,6 +408,7 @@ lib/sh/strftime.c f
lib/sh/strindex.c f
lib/sh/stringlist.c f
lib/sh/stringvec.c f
lib/sh/strnlen.c f
lib/sh/strpbrk.c f
lib/sh/strstr.c f
lib/sh/strtod.c f
+957
View File
@@ -0,0 +1,957 @@
#
# Master distribution manifest for bash
#
#
# Filename type
#
CWRU d
CWRU/misc d
builtins d
cross-build d
doc d
examples d
examples/bashdb d
examples/obashdb d
examples/complete d
examples/functions d
examples/scripts d
examples/scripts.v2 d
examples/scripts.noah d
examples/startup-files d
examples/startup-files/apple d
examples/misc d
examples/loadables d
examples/loadables/perl d
include d
lib d
lib/glob d
lib/glob/doc d
lib/intl d
lib/malloc d
lib/readline d
lib/readline/doc d
lib/readline/examples d
lib/sh d
lib/termcap d
lib/termcap/grot d
lib/tilde d
po d
support d
tests d
tests/misc d
ABOUT-NLS f
CHANGES f
COMPAT f
COPYING f
INSTALL f
MANIFEST f
NEWS f
NOTES f
POSIX f
README f
RBASH f
AUTHORS f
Y2K f
configure.in f
configure f
Makefile.in f
config-top.h f
config-bot.h f
config.h.in f
aclocal.m4 f
array.c f
arrayfunc.c f
eval.c f
print_cmd.c f
general.c f
list.c f
locale.c f
stringlib.c f
variables.c f
make_cmd.c f
copy_cmd.c f
unwind_prot.c f
dispose_cmd.c f
bashhist.c f
hashcmd.c f
hashlib.c f
parse.y f
pathexp.c f
subst.c f
shell.c f
trap.c f
sig.c f
siglist.c f
version.c f
flags.c f
jobs.c f
input.c f
mailcheck.c f
test.c f
expr.c f
alias.c f
execute_cmd.c f
findcmd.c f
redir.c f
bashline.c f
braces.c f
bracecomp.c f
nojobs.c f
error.c f
xmalloc.c f
pcomplete.c f
pcomplib.c f
mksyntax.c f
alias.h f
builtins.h f
bashhist.h f
bashline.h f
conftypes.h f
patchlevel.h f
variables.h f
array.h f
arrayfunc.h f
jobs.h f
findcmd.h f
hashlib.h f
quit.h f
flags.h f
shell.h f
syntax.h f
pathexp.h f
parser.h f
pcomplete.h f
sig.h f
test.h f
trap.h f
general.h f
unwind_prot.h f
input.h f
error.h f
command.h f
externs.h f
siglist.h f
subst.h f
dispose_cmd.h f
hashcmd.h f
bashansi.h f
bashjmp.h f
bashintl.h f
make_cmd.h f
execute_cmd.h f
redir.h f
bashtypes.h f
mailcheck.h f
xmalloc.h f
y.tab.c f
y.tab.h f
parser-built f
pathnames.h.in f
builtins/Makefile.in f
builtins/alias.def f
builtins/bind.def f
builtins/break.def f
builtins/builtin.def f
builtins/caller.def f
builtins/cd.def f
builtins/colon.def f
builtins/command.def f
builtins/complete.def f
builtins/common.c f
builtins/declare.def f
builtins/echo.def f
builtins/enable.def f
builtins/eval.def f
builtins/evalfile.c f
builtins/evalstring.c f
builtins/exec.def f
builtins/exit.def f
builtins/fc.def f
builtins/fg_bg.def f
builtins/getopt.c f
builtins/getopt.h f
builtins/getopts.def f
builtins/hash.def f
builtins/help.def f
builtins/let.def f
builtins/history.def f
builtins/jobs.def f
builtins/kill.def f
builtins/mkbuiltins.c f
builtins/printf.def f
builtins/pushd.def f
builtins/read.def f
builtins/reserved.def f
builtins/return.def f
builtins/set.def f
builtins/setattr.def f
builtins/shift.def f
builtins/shopt.def f
builtins/source.def f
builtins/suspend.def f
builtins/test.def f
builtins/times.def f
builtins/trap.def f
builtins/type.def f
builtins/ulimit.def f
builtins/umask.def f
builtins/wait.def f
builtins/psize.c f
builtins/psize.sh f
builtins/inlib.def f
builtins/bashgetopt.c f
builtins/common.h f
builtins/bashgetopt.h f
cross-build/cygwin32.cache f
cross-build/win32sig.h f
cross-build/x86-beos.cache f
cross-build/beos-sig.h f
cross-build/opennt.cache f
include/ansi_stdlib.h f
include/chartypes.h f
include/filecntl.h f
include/gettext.h f
include/maxpath.h f
include/memalloc.h f
include/ocache.h f
include/posixdir.h f
include/posixjmp.h f
include/posixstat.h f
include/posixtime.h f
include/posixwait.h f
include/shmbutil.h f
include/shtty.h f
include/stdc.h f
include/systimes.h f
include/typemax.h f
include/unionwait.h f
lib/glob/Makefile.in f
lib/glob/sm_loop.c f
lib/glob/smatch.c f
lib/glob/strmatch.c f
lib/glob/strmatch.h f
lib/glob/glob.c f
lib/glob/glob.h f
lib/glob/glob_loop.c f
lib/glob/xmbsrtowcs.c f
lib/glob/collsyms.h f
lib/glob/doc/Makefile f
lib/glob/doc/glob.texi f
lib/glob/ndir.h f
lib/intl/ChangeLog f
lib/intl/Makefile.in f
lib/intl/VERSION f
lib/intl/bindtextdom.c f
lib/intl/config.charset f
lib/intl/dcgettext.c f
lib/intl/dcigettext.c f
lib/intl/dcngettext.c f
lib/intl/dgettext.c f
lib/intl/dngettext.c f
lib/intl/eval-plural.h f
lib/intl/explodename.c f
lib/intl/finddomain.c f
lib/intl/gettext.c f
lib/intl/gettextP.h f
lib/intl/gmo.h f
lib/intl/hash-string.h f
lib/intl/intl-compat.c f
lib/intl/l10nflist.c f
lib/intl/libgnuintl.h.in f
lib/intl/loadinfo.h f
lib/intl/loadmsgcat.c f
lib/intl/localcharset.c f
lib/intl/localcharset.h f
lib/intl/locale.alias f
lib/intl/localealias.c f
lib/intl/localename.c f
lib/intl/log.c f
lib/intl/ngettext.c f
lib/intl/os2compat.c f
lib/intl/os2compat.h f
lib/intl/osdep.c f
lib/intl/plural-exp.c f
lib/intl/plural-exp.h f
lib/intl/plural.c f
lib/intl/plural.y f
lib/intl/ref-add.sin f
lib/intl/ref-del.sin f
lib/intl/relocatable.c f
lib/intl/relocatable.h f
lib/intl/textdomain.c f
lib/malloc/Makefile.in f
lib/malloc/getpagesize.h f
lib/malloc/imalloc.h f
lib/malloc/mstats.h f
lib/malloc/shmalloc.h f
lib/malloc/table.h f
lib/malloc/watch.h f
lib/malloc/alloca.c f
lib/malloc/malloc.c f
lib/malloc/stats.c f
lib/malloc/table.c f
lib/malloc/trace.c f
lib/malloc/watch.c f
lib/malloc/xmalloc.c f
lib/malloc/xleaktrace f 755
lib/malloc/stub.c f
lib/malloc/i386-alloca.s f
lib/malloc/x386-alloca.s f
lib/readline/COPYING f
lib/readline/Makefile.in f
lib/readline/ChangeLog f
lib/readline/README f
lib/readline/STANDALONE f
lib/readline/readline.c f
lib/readline/vi_mode.c f
lib/readline/emacs_keymap.c f
lib/readline/vi_keymap.c f
lib/readline/history.c f
lib/readline/histexpand.c f
lib/readline/histsearch.c f
lib/readline/histfile.c f
lib/readline/funmap.c f
lib/readline/keymaps.c f
lib/readline/util.c f
lib/readline/terminal.c f
lib/readline/xmalloc.c f
lib/readline/search.c f
lib/readline/isearch.c f
lib/readline/parens.c f
lib/readline/rltty.c f
lib/readline/compat.c f
lib/readline/complete.c f
lib/readline/bind.c f
lib/readline/display.c f
lib/readline/signals.c f
lib/readline/kill.c f
lib/readline/text.c f
lib/readline/undo.c f
lib/readline/macro.c f
lib/readline/input.c f
lib/readline/callback.c f
lib/readline/mbutil.c f
lib/readline/misc.c f
lib/readline/nls.c f
lib/readline/shell.c f
lib/readline/savestring.c f
lib/readline/tilde.c f
lib/readline/tilde.h f
lib/readline/rldefs.h f
lib/readline/rlconf.h f
lib/readline/rlmbutil.h f
lib/readline/rlshell.h f
lib/readline/rltty.h f
lib/readline/rltypedefs.h f
lib/readline/rlwinsize.h f
lib/readline/readline.h f
lib/readline/tcap.h f
lib/readline/keymaps.h f
lib/readline/history.h f
lib/readline/histlib.h f
lib/readline/chardefs.h f
lib/readline/posixdir.h f
lib/readline/posixjmp.h f
lib/readline/posixstat.h f
lib/readline/ansi_stdlib.h f
lib/readline/rlstdc.h f
lib/readline/rlprivate.h f
lib/readline/xmalloc.h f
lib/readline/doc/Makefile f
lib/readline/doc/version.texi f
lib/readline/doc/rlman.texi f
lib/readline/doc/rltech.texi f
lib/readline/doc/rluser.texi f
lib/readline/doc/rluserman.texi f
lib/readline/doc/history.texi f
lib/readline/doc/hstech.texi f
lib/readline/doc/hsuser.texi f
lib/readline/doc/fdl.texi f
lib/readline/examples/Makefile f
lib/readline/examples/excallback.c f
lib/readline/examples/fileman.c f
lib/readline/examples/manexamp.c f
lib/readline/examples/histexamp.c f
lib/readline/examples/rltest.c f
lib/readline/examples/rl.c f
lib/readline/examples/rlcat.c f
lib/readline/examples/Inputrc f
lib/sh/Makefile.in f
lib/sh/clktck.c f
lib/sh/clock.c f
lib/sh/fmtullong.c f
lib/sh/fmtulong.c f
lib/sh/fmtumax.c f
lib/sh/getcwd.c f
lib/sh/getenv.c f
lib/sh/inet_aton.c f
lib/sh/itos.c f
lib/sh/mailstat.c f
lib/sh/makepath.c f
lib/sh/memset.c f
lib/sh/mktime.c f
lib/sh/netconn.c f
lib/sh/netopen.c f
lib/sh/oslib.c f
lib/sh/pathcanon.c f
lib/sh/pathphys.c f
lib/sh/rename.c f
lib/sh/setlinebuf.c f
lib/sh/shmatch.c f
lib/sh/shquote.c f
lib/sh/shtty.c f
lib/sh/snprintf.c f
lib/sh/spell.c f
lib/sh/strcasecmp.c f
lib/sh/strerror.c f
lib/sh/strftime.c f
lib/sh/strindex.c f
lib/sh/stringlist.c f
lib/sh/stringvec.c f
lib/sh/strpbrk.c f
lib/sh/strstr.c f
lib/sh/strtod.c f
lib/sh/strtoimax.c f
lib/sh/strtol.c f
lib/sh/strtoll.c f
lib/sh/strtoul.c f
lib/sh/strtoull.c f
lib/sh/strtoumax.c f
lib/sh/strtrans.c f
lib/sh/times.c f
lib/sh/timeval.c f
lib/sh/tmpfile.c f
lib/sh/vprint.c f
lib/sh/xstrchr.c f
lib/sh/zcatfd.c f
lib/sh/zread.c f
lib/sh/zwrite.c f
lib/termcap/Makefile.in f
lib/termcap/ltcap.h f
lib/termcap/termcap.c f
lib/termcap/termcap.h f
lib/termcap/tparam.c f
lib/termcap/version.c f
lib/termcap/grot/termcap.info f
lib/termcap/grot/termcap.info-1 f
lib/termcap/grot/termcap.info-2 f
lib/termcap/grot/termcap.info-3 f
lib/termcap/grot/termcap.info-4 f
lib/termcap/grot/NEWS f
lib/termcap/grot/INSTALL f
lib/termcap/grot/ChangeLog f
lib/termcap/grot/texinfo.tex f
lib/termcap/grot/termcap.texi f
lib/termcap/grot/Makefile.in f
lib/termcap/grot/configure f
lib/termcap/grot/configure.in f
lib/termcap/grot/COPYING f
lib/termcap/grot/README f
lib/tilde/README f
lib/tilde/Makefile.in f
lib/tilde/tilde.c f
lib/tilde/tilde.h f
lib/tilde/shell.c f
po/LINGUAS f
po/Makefile.in.in f
po/Makevars f
po/POTFILES.in f
po/Rules-builtins f
po/Rules-quot f
po/bash.pot f
po/boldquot.sed f
po/en@quot.header f
po/en@boldquot.header f
po/en@quot.po f
po/en@boldquot.po f
po/en@quot.gmo f
po/en@boldquot.gmo f
po/insert-header.sin f
po/quot.sed f
po/remove-potcdate.sin f
CWRU/misc/open-files.c f
CWRU/misc/sigs.c f
CWRU/misc/sigstat.c f
CWRU/misc/bison f
CWRU/misc/errlist.c f
CWRU/misc/hpux10-dlfcn.h f
CWRU/PLATFORMS f
CWRU/README f
CWRU/changelog f
CWRU/sh-redir-hack f
CWRU/mh-folder-comp f
doc/FAQ f
doc/Makefile.in f
doc/bash.1 f
doc/bashbug.1 f
doc/builtins.1 f
doc/rbash.1 f
doc/README f
doc/INTRO f
doc/texinfo.tex f
doc/bashref.texi f
doc/version.texi f
doc/bashref.info f
doc/article.ms f
doc/htmlpost.sh f 755
doc/infopost.sh f 755
doc/fdl.texi f
doc/fdl.txt f
support/Makefile.in f
support/bashversion.c f
support/config.guess f
support/config.rpath f 755
support/config.sub f
support/printenv.sh f 755
support/printenv.c f
support/bash.xbm f
support/missing f 755
support/mkclone f 755
support/mkconffiles f 755
support/mkdirs f 755
support/mkinstalldirs f 755
support/mkversion.sh f 755
support/mksignames.c f
support/bashbug.sh f
support/man2html.c f
support/recho.c f
support/zecho.c f
support/SYMLINKS f
support/fixlinks f 755
support/install.sh f 755
support/texi2dvi f 755
support/texi2html f 755
support/xenix-link.sh f 755
support/shobj-conf f 755
support/rlvers.sh f 755
examples/bashdb/PERMISSION f
examples/bashdb/bashdb f
examples/bashdb/bashdb.el f
examples/obashdb/PERMISSION f
examples/obashdb/README f
examples/obashdb/bashdb f
examples/obashdb/bashdb.fns f
examples/obashdb/bashdb.pre f
examples/complete/complete-examples f
examples/complete/complete.ianmac f
examples/complete/complete2.ianmac f
examples/complete/complete.freebsd f
examples/complete/complete.gnu-longopt f
examples/complete/bashcc-1.0.1.tar.gz f
examples/loadables/README f
examples/loadables/template.c f
examples/loadables/Makefile.in f
examples/loadables/necho.c f
examples/loadables/hello.c f
examples/loadables/print.c f
examples/loadables/realpath.c f
examples/loadables/sleep.c f
examples/loadables/strftime.c f
examples/loadables/truefalse.c f
examples/loadables/getconf.h f
examples/loadables/getconf.c f
examples/loadables/finfo.c f
examples/loadables/cat.c f
examples/loadables/cut.c f
examples/loadables/logname.c f
examples/loadables/basename.c f
examples/loadables/dirname.c f
examples/loadables/tty.c f
examples/loadables/pathchk.c f
examples/loadables/tee.c f
examples/loadables/rmdir.c f
examples/loadables/head.c f
examples/loadables/printenv.c f
examples/loadables/push.c f
examples/loadables/id.c f
examples/loadables/whoami.c f
examples/loadables/uname.c f
examples/loadables/sync.c f
examples/loadables/mkdir.c f
examples/loadables/ln.c f
examples/loadables/unlink.c f
examples/loadables/perl/Makefile.in f
examples/loadables/perl/README f
examples/loadables/perl/bperl.c f
examples/loadables/perl/iperl.c f
examples/functions/array-stuff f
examples/functions/array-to-string f
examples/functions/autoload f
examples/functions/autoload.v2 f
examples/functions/autoload.v3 f
examples/functions/basename f
examples/functions/basename2 f
examples/functions/coproc.bash f
examples/functions/coshell.README f
examples/functions/coshell.bash f
examples/functions/csh-compat f
examples/functions/dirfuncs f
examples/functions/dirname f
examples/functions/emptydir f
examples/functions/exitstat f
examples/functions/external f
examples/functions/fact f
examples/functions/fstty f
examples/functions/func f
examples/functions/gethtml f
examples/functions/getoptx.bash f
examples/functions/inetaddr f
examples/functions/inpath f
examples/functions/isnum.bash f
examples/functions/isnum2 f
examples/functions/isvalidip f
examples/functions/jdate.bash f
examples/functions/jj.bash f
examples/functions/keep f
examples/functions/ksh-cd f
examples/functions/ksh-compat-test f
examples/functions/kshenv f
examples/functions/login f
examples/functions/lowercase f
examples/functions/manpage f
examples/functions/mhfold f
examples/functions/notify.bash f
examples/functions/pathfuncs f
examples/functions/recurse f
examples/functions/repeat2 f
examples/functions/repeat3 f
examples/functions/seq f
examples/functions/seq2 f
examples/functions/shcat f
examples/functions/shcat2 f
examples/functions/sort-pos-params f
examples/functions/substr f
examples/functions/substr2 f
examples/functions/term f
examples/functions/whatis f
examples/functions/whence f
examples/functions/which f
examples/functions/xalias.bash f
examples/functions/xfind.bash f
examples/scripts/adventure.sh f
examples/scripts/bcsh.sh f
examples/scripts/cat.sh f
examples/scripts/center f
examples/scripts/dd-ex.sh f
examples/scripts/fixfiles.bash f
examples/scripts/hanoi.bash f
examples/scripts/inpath f
examples/scripts/krand.bash f
examples/scripts/line-input.bash f
examples/scripts/nohup.bash f
examples/scripts/precedence f
examples/scripts/randomcard.bash f
examples/scripts/scrollbar f
examples/scripts/scrollbar2 f
examples/scripts/self-repro f
examples/scripts/showperm.bash f
examples/scripts/shprompt f
examples/scripts/spin.bash f
examples/scripts/timeout f
examples/scripts/vtree2 f
examples/scripts/vtree3 f
examples/scripts/vtree3a f
examples/scripts/websrv.sh f
examples/scripts/xterm_title f
examples/scripts/zprintf f
examples/startup-files/README f
examples/startup-files/Bashrc.bfox f
examples/startup-files/Bash_aliases f
examples/startup-files/Bash_profile f
examples/startup-files/bash-profile f
examples/startup-files/bashrc f
examples/startup-files/apple/README f
examples/startup-files/apple/aliases f
examples/startup-files/apple/bash.defaults f
examples/startup-files/apple/environment f
examples/startup-files/apple/login f
examples/startup-files/apple/logout f
examples/startup-files/apple/rc f
examples/misc/suncmd.termcap f
examples/misc/aliasconv.sh f
examples/misc/aliasconv.bash f
examples/misc/cshtobash f
tests/README f
tests/alias.tests f
tests/alias.right f
tests/arith-for.tests f
tests/arith-for.right f
tests/arith.tests f
tests/arith.right f
tests/arith1.sub f
tests/arith2.sub f
tests/array.tests f
tests/array.right f
tests/array-at-star f
tests/array2.right f
tests/braces.tests f
tests/braces.right f
tests/builtins.tests f
tests/builtins.right f
tests/builtins1.sub f
tests/builtins2.sub f
tests/source1.sub f
tests/source2.sub f
tests/source3.sub f
tests/source4.sub f
tests/source5.sub f
tests/cond.tests f
tests/cond.right f
tests/cprint.tests f
tests/cprint.right f
tests/dbg-support.right f
tests/dbg-support.sub f
tests/dbg-support.tests f
tests/dbg-support2.right f
tests/dbg-support2.tests f
tests/dollar-at-star f
tests/dollar-at1.sub f
tests/dollar-at2.sub f
tests/dollar-star1.sub f
tests/dollar.right f
tests/dstack.tests f
tests/dstack.right f
tests/dstack2.tests f
tests/dstack2.right f
tests/errors.tests f
tests/errors.right f
tests/execscript f
tests/exec.right f
tests/exec1.sub f 755
tests/exec2.sub f
tests/exec3.sub f
tests/exec4.sub f
tests/exec5.sub f
tests/exec6.sub f
tests/exec7.sub f
tests/exp-tests f
tests/exp.right f
tests/extglob.tests f
tests/extglob.right f
tests/extglob2.tests f
tests/extglob2.right f
tests/func.tests f
tests/func.right f
tests/func1.sub f
tests/func2.sub f
tests/func3.sub f
tests/getopts.tests f
tests/getopts.right f
tests/getopts1.sub f
tests/getopts2.sub f
tests/getopts3.sub f
tests/getopts4.sub f
tests/getopts5.sub f
tests/getopts6.sub f
tests/getopts7.sub f
tests/glob-test f
tests/glob1.sub f
tests/glob.right f
tests/heredoc.tests f
tests/heredoc.right f
tests/herestr.tests f
tests/herestr.right f
tests/histexp.tests f
tests/histexp.right f
tests/history.tests f
tests/history.right f
tests/history.list f 444
tests/ifs.tests f
tests/ifs.right f
tests/input-line.sh f
tests/input-line.sub f
tests/input.right f
tests/invert.tests f
tests/invert.right f
tests/jobs.tests f
tests/jobs1.sub f
tests/jobs2.sub f
tests/jobs3.sub f
tests/jobs4.sub f
tests/jobs.right f
tests/more-exp.tests f
tests/more-exp.right f
tests/new-exp.tests f
tests/new-exp1.sub f
tests/new-exp2.sub f
tests/new-exp3.sub f
tests/new-exp4.sub f
tests/new-exp.right f
tests/nquote.tests f
tests/nquote.right f
tests/nquote1.tests f
tests/nquote1.right f
tests/nquote2.tests f
tests/nquote2.right f
tests/nquote3.tests f
tests/nquote3.right f
tests/nquote4.tests f
tests/nquote4.right f
tests/posix2.tests f
tests/posix2.right f
tests/posixpat.tests f
tests/posixpat.right f
tests/prec.right f
tests/precedence f
tests/printf.tests f
tests/printf.right f
tests/quote.tests f
tests/quote.right f
tests/read.tests f
tests/read.right f
tests/read1.sub f
tests/read2.sub f
tests/read3.sub f
tests/read4.sub f
tests/read5.sub f
tests/redir.tests f
tests/redir.right f
tests/redir1.sub f
tests/redir2.sub f
tests/redir3.sub f
tests/redir3.in1 f
tests/redir3.in2 f
tests/redir4.sub f
tests/redir4.in1 f
tests/redir5.sub f
tests/redir6.sub f
tests/rhs-exp.tests f
tests/rhs-exp.right f
tests/rsh.tests f
tests/rsh.right f
tests/run-all f
tests/run-minimal f
tests/run-alias f
tests/run-arith-for f
tests/run-arith f
tests/run-array f
tests/run-array2 f
tests/run-braces f
tests/run-builtins f
tests/run-cond f
tests/run-cprint f
tests/run-dbg-support f
tests/run-dbg-support2 f
tests/run-dirstack f
tests/run-dollars f
tests/run-errors f
tests/run-execscript f
tests/run-exp-tests f
tests/run-extglob f
tests/run-extglob2 f
tests/run-func f
tests/run-getopts f
tests/run-glob-test f
tests/run-heredoc f
tests/run-herestr f
tests/run-histexpand f
tests/run-history f
tests/run-ifs f
tests/run-input-test f
tests/run-invert f
tests/run-jobs f
tests/run-more-exp f
tests/run-new-exp f
tests/run-nquote f
tests/run-nquote1 f
tests/run-nquote2 f
tests/run-nquote3 f
tests/run-nquote4 f
tests/run-posix2 f
tests/run-posixpat f
tests/run-precedence f
tests/run-printf f
tests/run-quote f
tests/run-read f
tests/run-redir f
tests/run-rhs-exp f
tests/run-rsh f
tests/run-set-e f
tests/run-set-x f
tests/run-shopt f
tests/run-strip f
tests/run-test f
tests/run-tilde f
tests/run-trap f
tests/run-type f
tests/run-varenv f
tests/set-e-test f
tests/set-e.right f
tests/set-x.tests f
tests/set-x.right f
tests/shopt.tests f
tests/shopt.right f
tests/strip.tests f
tests/strip.right f
tests/test.tests f
tests/test.right f
tests/tilde-tests f
tests/tilde.right f
tests/trap.tests f
tests/trap.right f
tests/trap1.sub f 755
tests/trap2.sub f 755
tests/trap2a.sub f 755
tests/type.tests f
tests/type.right f
tests/varenv.right f
tests/varenv.sh f
tests/varenv1.sub f
tests/varenv2.sub f
tests/version f
tests/version.mini f
tests/misc/dev-tcp.tests f
tests/misc/perf-script f
tests/misc/perftest f
tests/misc/read-nchars.tests f
tests/misc/redir-t2.sh f
tests/misc/run-r2.sh f
tests/misc/sigint-1.sh f
tests/misc/sigint-2.sh f
tests/misc/sigint-3.sh f
tests/misc/sigint-4.sh f
tests/misc/test-minus-e.1 f
tests/misc/test-minus-e.2 f
tests/misc/wait-bg.tests f
examples/scripts.v2/PERMISSION f
examples/scripts.v2/README f
examples/scripts.v2/arc2tarz f
examples/scripts.v2/bashrand f
examples/scripts.v2/cal2day.bash f
examples/scripts.v2/cdhist.bash f
examples/scripts.v2/corename f
examples/scripts.v2/fman f
examples/scripts.v2/frcp f
examples/scripts.v2/lowercase f
examples/scripts.v2/ncp f
examples/scripts.v2/newext f
examples/scripts.v2/nmv f
examples/scripts.v2/pages f
examples/scripts.v2/pf f
examples/scripts.v2/ren f
examples/scripts.v2/rename f
examples/scripts.v2/repeat f
examples/scripts.v2/untar f
examples/scripts.v2/uudec f
examples/scripts.v2/uuenc f
examples/scripts.v2/vtree f
examples/scripts.v2/where f
examples/scripts.v2/pmtop f
examples/scripts.v2/shprof f
examples/scripts.noah/PERMISSION f
examples/scripts.noah/README f
examples/scripts.noah/aref.bash f
examples/scripts.noah/bash.sub.bash f
examples/scripts.noah/bash_version.bash f
examples/scripts.noah/meta.bash f
examples/scripts.noah/mktmp.bash f
examples/scripts.noah/number.bash f
examples/scripts.noah/prompt.bash f
examples/scripts.noah/remap_keys.bash f
examples/scripts.noah/require.bash f
examples/scripts.noah/send_mail.bash f
examples/scripts.noah/shcat.bash f
examples/scripts.noah/source.bash f
examples/scripts.noah/string.bash f
examples/scripts.noah/stty.bash f
examples/scripts.noah/y_or_n_p.bash f
+4 -3
View File
@@ -1,4 +1,4 @@
# Makefile for bash-3.0, version 2.152
# Makefile for bash-3.0, version 2.153
#
# Copyright (C) 1996-2004 Free Software Foundation, Inc.
@@ -196,7 +196,8 @@ SHLIB_SOURCE = ${SH_LIBSRC}/clktck.c ${SH_LIBSRC}/getcwd.c \
${SH_LIBSRC}/fmtumax.c ${SH_LIBSRC}/netconn.c \
${SH_LIBSRC}/mktime.c ${SH_LIBSRC}/strftime.c \
${SH_LIBSRC}/memset.c ${SH_LIBSRC}/xstrchr.c \
${SH_LIBSRC}/zcatfd.c ${SH_LIBSRC}/shmatch.c
${SH_LIBSRC}/zcatfd.c ${SH_LIBSRC}/shmatch.c \
${SH_LIBSRC}/strnlen.c
SHLIB_LIB = -lsh
SHLIB_LIBNAME = libsh.a
@@ -668,7 +669,7 @@ $(srcdir)/configure: $(srcdir)/configure.in $(srcdir)/aclocal.m4 $(srcdir)/confi
# for chet
reconfig: force
sh $(srcdir)/configure
sh $(srcdir)/configure -C
#newversion: mkversion
# $(RM) .build
+1436
View File
File diff suppressed because it is too large Load Diff
+14 -13
View File
@@ -1,7 +1,7 @@
@%:@! /bin/sh
@%:@ From configure.in for Bash 3.0, version 3.168, from autoconf version AC_ACVERSION.
@%:@ From configure.in for Bash 3.0, version 3.169, from autoconf version AC_ACVERSION.
@%:@ Guess values for system-dependent variables and create Makefiles.
@%:@ Generated by GNU Autoconf 2.57 for bash 3.0-release.
@%:@ Generated by GNU Autoconf 2.57 for bash 3.1-devel.
@%:@
@%:@ Report bugs to <bug-bash@gnu.org>.
@%:@
@@ -269,8 +269,8 @@ SHELL=${CONFIG_SHELL-/bin/sh}
# Identity of this package.
PACKAGE_NAME='bash'
PACKAGE_TARNAME='bash'
PACKAGE_VERSION='3.0-release'
PACKAGE_STRING='bash 3.0-release'
PACKAGE_VERSION='3.1-devel'
PACKAGE_STRING='bash 3.1-devel'
PACKAGE_BUGREPORT='bug-bash@gnu.org'
ac_unique_file="shell.h"
@@ -784,7 +784,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
\`configure' configures bash 3.0-release to adapt to many kinds of systems.
\`configure' configures bash 3.1-devel to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -845,7 +845,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
short | recursive ) echo "Configuration of bash 3.0-release:";;
short | recursive ) echo "Configuration of bash 3.1-devel:";;
esac
cat <<\_ACEOF
@@ -1000,7 +1000,7 @@ fi
test -n "$ac_init_help" && exit 0
if $ac_init_version; then
cat <<\_ACEOF
bash configure 3.0-release
bash configure 3.1-devel
generated by GNU Autoconf 2.57
Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002
@@ -1015,7 +1015,7 @@ cat >&5 <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by bash $as_me 3.0-release, which was
It was created by bash $as_me 3.1-devel, which was
generated by GNU Autoconf 2.57. Invocation command line was
$ $0 $@
@@ -1383,8 +1383,8 @@ ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure.
ac_config_headers="$ac_config_headers config.h"
BASHVERS=3.0
RELSTATUS=release
BASHVERS=3.1
RELSTATUS=devel
case "$RELSTATUS" in
alp*|bet*|dev*|rc*) DEBUG='-DDEBUG' MALLOC_DEBUG='-DMALLOC_DEBUG' ;;
@@ -11534,7 +11534,8 @@ done
for ac_func in getcwd strcasecmp strerror strftime strpbrk memset strstr
for ac_func in getcwd strcasecmp strerror strftime strpbrk memset strstr strnlen
do
as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
echo "$as_me:$LINENO: checking for $ac_func" >&5
@@ -24445,7 +24446,7 @@ _ASBOX
} >&5
cat >&5 <<_CSEOF
This file was extended by bash $as_me 3.0-release, which was
This file was extended by bash $as_me 3.1-devel, which was
generated by GNU Autoconf 2.57. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -24508,7 +24509,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF
ac_cs_version="\\
bash config.status 3.0-release
bash config.status 3.1-devel
configured by $0, generated by GNU Autoconf 2.57,
with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
+85 -85
View File
@@ -15,96 +15,96 @@
'configure.in'
],
{
'AH_OUTPUT' => 1,
'AC_FUNC_UTIME_NULL' => 1,
'AC_TYPE_OFF_T' => 1,
'AC_FUNC_SELECT_ARGTYPES' => 1,
'AC_PROG_AWK' => 1,
'AM_AUTOMAKE_VERSION' => 1,
'AC_CANONICAL_HOST' => 1,
'AC_CHECK_LIB' => 1,
'AC_CHECK_TYPES' => 1,
'AC_FUNC_STRFTIME' => 1,
'AC_FUNC_SETPGRP' => 1,
'AC_SUBST' => 1,
'AC_FUNC_STRTOD' => 1,
'AM_PROG_CC_C_O' => 1,
'AC_PROG_INSTALL' => 1,
'AC_PROG_MAKE_SET' => 1,
'AM_INIT_AUTOMAKE' => 1,
'AC_CONFIG_FILES' => 1,
'AC_TYPE_MODE_T' => 1,
'AC_TYPE_PID_T' => 1,
'AC_FUNC_OBSTACK' => 1,
'AC_FUNC_GETPGRP' => 1,
'AC_PROG_GCC_TRADITIONAL' => 1,
'AC_HEADER_STDC' => 1,
'AC_FUNC_ALLOCA' => 1,
'AM_GNU_GETTEXT' => 1,
'AM_MAINTAINER_MODE' => 1,
'AC_CHECK_FUNCS' => 1,
'AC_TYPE_SIGNAL' => 1,
'AC_FUNC_STRNLEN' => 1,
'AC_HEADER_DIRENT' => 1,
'AC_STRUCT_TM' => 1,
'AC_CHECK_MEMBERS' => 1,
'AC_FUNC_STRCOLL' => 1,
'AM_CONDITIONAL' => 1,
'AC_FUNC_MEMCMP' => 1,
'AC_PATH_X' => 1,
'include' => 1,
'AC_LIBSOURCE' => 1,
'AC_PROG_LIBTOOL' => 1,
'AC_FUNC_VPRINTF' => 1,
'AC_FUNC_MBRTOWC' => 1,
'AC_FUNC_SETVBUF_REVERSED' => 1,
'AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK' => 1,
'AC_FUNC_STAT' => 1,
'AC_FUNC_WAIT3' => 1,
'AC_CANONICAL_SYSTEM' => 1,
'AC_HEADER_TIME' => 1,
'AC_PROG_YACC' => 1,
'AC_FUNC_REALLOC' => 1,
'AC_CHECK_HEADERS' => 1,
'AC_PROG_CXX' => 1,
'AC_REPLACE_FNMATCH' => 1,
'm4_pattern_allow' => 1,
'AC_TYPE_SIZE_T' => 1,
'AC_FUNC_MKTIME' => 1,
'AC_PROG_LEX' => 1,
'AC_CONFIG_SUBDIRS' => 1,
'AC_PROG_CC' => 1,
'AC_PROG_AWK' => 1,
'AC_INIT' => 1,
'AC_CONFIG_HEADERS' => 1,
'AC_FUNC_ERROR_AT_LINE' => 1,
'AC_DEFINE_TRACE_LITERAL' => 1,
'AC_PROG_CPP' => 1,
'AC_TYPE_UID_T' => 1,
'AC_HEADER_MAJOR' => 1,
'm4_pattern_forbid' => 1,
'AC_FUNC_LSTAT' => 1,
'AC_C_CONST' => 1,
'AC_FUNC_CHOWN' => 1,
'AC_STRUCT_ST_BLOCKS' => 1,
'AC_FUNC_STRERROR_R' => 1,
'AC_FUNC_FORK' => 1,
'AC_FUNC_MMAP' => 1,
'AC_DECL_SYS_SIGLIST' => 1,
'AC_FUNC_GETMNTENT' => 1,
'AC_FUNC_FSEEKO' => 1,
'AC_FUNC_MALLOC' => 1,
'AC_FUNC_GETLOADAVG' => 1,
'AC_PROG_LN_S' => 1,
'AC_CONFIG_AUX_DIR' => 1,
'AC_C_VOLATILE' => 1,
'AC_PROG_RANLIB' => 1,
'AC_C_INLINE' => 1,
'AC_FUNC_CLOSEDIR_VOID' => 1,
'AC_HEADER_SYS_WAIT' => 1,
'AC_FUNC_REALLOC' => 1,
'AC_FUNC_UTIME_NULL' => 1,
'AC_FUNC_VPRINTF' => 1,
'AC_FUNC_STRTOD' => 1,
'm4_include' => 1,
'AC_FUNC_STRFTIME' => 1,
'AM_GNU_GETTEXT' => 1,
'AC_TYPE_OFF_T' => 1,
'AC_C_CONST' => 1,
'AH_OUTPUT' => 1,
'AC_FUNC_STAT' => 1,
'AM_AUTOMAKE_VERSION' => 1,
'AC_STRUCT_TM' => 1,
'AC_FUNC_SETPGRP' => 1,
'AC_PATH_X' => 1,
'AM_PROG_CC_C_O' => 1,
'AC_FUNC_CHOWN' => 1,
'AC_FUNC_ALLOCA' => 1,
'AC_PROG_LN_S' => 1,
'AC_CANONICAL_SYSTEM' => 1,
'm4_pattern_allow' => 1,
'AM_INIT_AUTOMAKE' => 1,
'AC_FUNC_SELECT_ARGTYPES' => 1,
'AC_FUNC_MBRTOWC' => 1,
'AC_LIBSOURCE' => 1,
'AM_CONDITIONAL' => 1,
'AC_HEADER_DIRENT' => 1,
'AC_FUNC_STRERROR_R' => 1,
'AC_C_INLINE' => 1,
'AC_TYPE_PID_T' => 1,
'AC_HEADER_MAJOR' => 1,
'AC_CHECK_FUNCS' => 1,
'AC_PROG_MAKE_SET' => 1,
'AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK' => 1,
'AC_TYPE_UID_T' => 1,
'm4_pattern_forbid' => 1,
'AC_FUNC_GETLOADAVG' => 1,
'AC_HEADER_STDC' => 1,
'AC_TYPE_SIGNAL' => 1,
'include' => 1,
'AC_PROG_RANLIB' => 1,
'AC_HEADER_STAT' => 1,
'AC_DECL_SYS_SIGLIST' => 1,
'AC_FUNC_MALLOC' => 1,
'AC_FUNC_FORK' => 1,
'AC_CONFIG_AUX_DIR' => 1,
'AC_SUBST' => 1,
'AC_FUNC_MEMCMP' => 1,
'AC_FUNC_WAIT3' => 1,
'AC_FUNC_SETVBUF_REVERSED' => 1,
'AC_PROG_CPP' => 1,
'AC_FUNC_GETGROUPS' => 1,
'AC_STRUCT_TIMEZONE' => 1
'AC_CANONICAL_HOST' => 1,
'AC_FUNC_CLOSEDIR_VOID' => 1,
'AC_PROG_YACC' => 1,
'AC_STRUCT_ST_BLOCKS' => 1,
'AC_PROG_LIBTOOL' => 1,
'AC_FUNC_FSEEKO' => 1,
'AC_CONFIG_FILES' => 1,
'AC_PROG_INSTALL' => 1,
'AC_FUNC_STRNLEN' => 1,
'AC_CONFIG_HEADERS' => 1,
'AC_CHECK_TYPES' => 1,
'AC_CHECK_MEMBERS' => 1,
'AM_MAINTAINER_MODE' => 1,
'AC_CHECK_LIB' => 1,
'AC_TYPE_SIZE_T' => 1,
'AC_STRUCT_TIMEZONE' => 1,
'AC_FUNC_MKTIME' => 1,
'AC_FUNC_GETMNTENT' => 1,
'AC_PROG_LEX' => 1,
'AC_HEADER_SYS_WAIT' => 1,
'AC_FUNC_MMAP' => 1,
'AC_FUNC_GETPGRP' => 1,
'AC_C_VOLATILE' => 1,
'AC_TYPE_MODE_T' => 1,
'AC_CHECK_HEADERS' => 1,
'AC_FUNC_LSTAT' => 1,
'AC_CONFIG_SUBDIRS' => 1,
'AC_FUNC_STRCOLL' => 1,
'AC_REPLACE_FNMATCH' => 1,
'AC_DEFINE_TRACE_LITERAL' => 1,
'AC_HEADER_TIME' => 1,
'AC_PROG_CXX' => 1,
'AC_PROG_CC' => 1,
'AC_FUNC_ERROR_AT_LINE' => 1,
'AC_FUNC_OBSTACK' => 1
}
], 'Request' )
);
+5 -2
View File
@@ -1,4 +1,4 @@
m4trace:configure.in:30: -1- AC_INIT([bash], [3.0-release], [bug-bash@gnu.org])
m4trace:configure.in:30: -1- AC_INIT([bash], [3.1-devel], [bug-bash@gnu.org])
m4trace:configure.in:30: -1- m4_pattern_forbid([^_?A[CHUM]_])
m4trace:configure.in:30: -1- m4_pattern_forbid([_AC_])
m4trace:configure.in:30: -1- m4_pattern_forbid([^LIBOBJS$], [do not use LIBOBJS directly, use AC_LIBOBJ (see section `AC_LIBOBJ vs LIBOBJS'])
@@ -729,7 +729,8 @@ m4trace:configure.in:649: -1- AC_LIBSOURCE([strftime.c])
m4trace:configure.in:649: -1- AC_LIBSOURCE([strpbrk.c])
m4trace:configure.in:649: -1- AC_LIBSOURCE([memset.c])
m4trace:configure.in:649: -1- AC_LIBSOURCE([strstr.c])
m4trace:configure.in:649: -1- AC_CHECK_FUNCS([getcwd strcasecmp strerror strftime strpbrk memset strstr], [], [_AC_LIBOBJ($ac_func)])
m4trace:configure.in:649: -1- AC_LIBSOURCE([strnlen.c])
m4trace:configure.in:649: -1- AC_CHECK_FUNCS([getcwd strcasecmp strerror strftime strpbrk memset strstr strnlen], [], [_AC_LIBOBJ($ac_func)])
m4trace:configure.in:649: -1- AH_OUTPUT([HAVE_GETCWD], [/* Define to 1 if you have the `getcwd\' function. */
#undef HAVE_GETCWD])
m4trace:configure.in:649: -1- AH_OUTPUT([HAVE_STRCASECMP], [/* Define to 1 if you have the `strcasecmp\' function. */
@@ -744,6 +745,8 @@ m4trace:configure.in:649: -1- AH_OUTPUT([HAVE_MEMSET], [/* Define to 1 if you ha
#undef HAVE_MEMSET])
m4trace:configure.in:649: -1- AH_OUTPUT([HAVE_STRSTR], [/* Define to 1 if you have the `strstr\' function. */
#undef HAVE_STRSTR])
m4trace:configure.in:649: -1- AH_OUTPUT([HAVE_STRNLEN], [/* Define to 1 if you have the `strnlen\' function. */
#undef HAVE_STRNLEN])
m4trace:configure.in:649: -1- AC_SUBST([LIB@&t@OBJS])
m4trace:configure.in:650: -1- AC_LIBSOURCE([strtod.c])
m4trace:configure.in:650: -1- AC_LIBSOURCE([strtol.c])
+1 -1
View File
@@ -355,7 +355,7 @@ pwd_builtin (list)
fflush (stdout);
if (ferror (stdout))
{
builtin_error (_("write error: %s"), strerror (errno));
sh_wrerror ();
clearerr (stdout);
return (EXECUTION_FAILURE);
}
+6
View File
@@ -270,6 +270,12 @@ sh_notbuiltin (s)
builtin_error (_("%s: not a shell builtin"), s);
}
void
sh_wrerror ()
{
builtin_error (_("write error: %s"), strerror (errno));
}
/* **************************************************************** */
/* */
/* Shell positional parameter manipulation */
+1
View File
@@ -77,6 +77,7 @@ extern void sh_readonly __P((const char *));
extern void sh_nojobs __P((char *));
extern void sh_restricted __P((char *));
extern void sh_notbuiltin __P((char *));
extern void sh_wrerror __P((void));
extern char **make_builtin_argv __P((WORD_LIST *, int *));
extern void remember_args __P((WORD_LIST *, int));
+1
View File
@@ -175,6 +175,7 @@ just_echo:
fflush (stdout);
if (ferror (stdout))
{
sh_wrerror ();
clearerr (stdout);
return (EXECUTION_FAILURE);
}
+30 -6
View File
@@ -105,7 +105,7 @@ extern int errno;
#define LENMODS "hjlLtz"
static void printf_erange __P((char *));
static void printstr __P((char *, char *, int, int, int));
static int printstr __P((char *, char *, int, int, int));
static int tescape __P((char *, char *, int *));
static char *bexpand __P((char *, int, int *, int *));
static char *mklong __P((char *, char *, size_t));
@@ -297,7 +297,7 @@ printf_builtin (list)
case 'b': /* expand escapes in argument */
{
char *p, *xp;
int rlen;
int rlen, r;
p = getstr ();
ch = rlen = 0;
@@ -307,11 +307,17 @@ printf_builtin (list)
{
/* Have to use printstr because of possible NUL bytes
in XP -- printf does not handle that well. */
printstr (start, xp, rlen, fieldwidth, precision);
r = printstr (start, xp, rlen, fieldwidth, precision);
if (r < 0)
{
sh_wrerror ();
clearerr (stdout);
retval = EXECUTION_FAILURE;
}
free (xp);
}
if (ch)
if (ch || r < 0)
PRETURN (retval);
break;
}
@@ -319,6 +325,7 @@ printf_builtin (list)
case 'q': /* print with shell quoting */
{
char *p, *xp;
int r;
p = getstr ();
if (ansic_shouldquote (p))
@@ -328,9 +335,17 @@ printf_builtin (list)
if (xp)
{
/* Use printstr to get fieldwidth and precision right. */
printstr (start, xp, strlen (xp), fieldwidth, precision);
r = printstr (start, xp, strlen (xp), fieldwidth, precision);
if (r < 0)
{
sh_wrerror ();
clearerr (stdout);
}
free (xp);
}
if (r < 0)
PRETURN (EXECUTION_FAILURE);
break;
}
@@ -412,6 +427,13 @@ printf_builtin (list)
modstart[0] = thisch;
modstart[1] = nextch;
}
if (ferror (stdout))
{
sh_wrerror ();
clearerr (stdout);
PRETURN (EXECUTION_FAILURE);
}
}
while (garglist && garglist != list->next);
@@ -429,7 +451,7 @@ printf_erange (s)
}
/* We duplicate a lot of what printf(3) does here. */
static void
static int
printstr (fmt, string, len, fieldwidth, precision)
char *fmt; /* format */
char *string; /* expanded string argument */
@@ -531,6 +553,8 @@ printstr (fmt, string, len, fieldwidth, precision)
/* output any necessary trailing padding */
for (; padlen < 0; padlen++)
putchar (' ');
return (ferror (stdout) ? -1 : 0);
}
/* Convert STRING by expanding the escape sequences specified by the
+3
View File
@@ -664,6 +664,9 @@
/* Define if you have the strftime function. */
#undef HAVE_STRFTIME
/* Define if you have the strnlen function. */
#undef HAVE_STRNLEN
/* Define if you have the strpbrk function. */
#undef HAVE_STRPBRK
+976
View File
@@ -0,0 +1,976 @@
/* config.h -- Configuration file for bash. */
/* Copyright (C) 1987-2004 Free Software Foundation, Inc.
This file is part of GNU Bash, the Bourne Again SHell.
Bash 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, or (at your option)
any later version.
Bash is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
License for more details.
You should have received a copy of the GNU General Public License
along with Bash; see the file COPYING. If not, write to the Free
Software Foundation, 59 Temple Place, Suite 330, Boston, MA 02111 USA. */
#ifndef _CONFIG_H_
#define _CONFIG_H_
/* Configuration feature settings controllable by autoconf. */
/* Define JOB_CONTROL if your operating system supports
BSD-like job control. */
#undef JOB_CONTROL
/* Define ALIAS if you want the alias features. */
#undef ALIAS
/* Define PUSHD_AND_POPD if you want those commands to be compiled in.
(Also the `dirs' commands.) */
#undef PUSHD_AND_POPD
/* Define BRACE_EXPANSION if you want curly brace expansion a la Csh:
foo{a,b} -> fooa foob. Even if this is compiled in (the default) you
can turn it off at shell startup with `-nobraceexpansion', or during
shell execution with `set +o braceexpand'. */
#undef BRACE_EXPANSION
/* Define READLINE to get the nifty/glitzy editing features.
This is on by default. You can turn it off interactively
with the -nolineediting flag. */
#undef READLINE
/* Define BANG_HISTORY if you want to have Csh style "!" history expansion.
This is unrelated to READLINE. */
#undef BANG_HISTORY
/* Define HISTORY if you want to have access to previously typed commands.
If both HISTORY and READLINE are defined, you can get at the commands
with line editing commands, and you can directly manipulate the history
from the command line.
If only HISTORY is defined, the `fc' and `history' builtins are
available. */
#undef HISTORY
/* Define this if you want completion that puts all alternatives into
a brace expansion shell expression. */
#if defined (BRACE_EXPANSION) && defined (READLINE)
# define BRACE_COMPLETION
#endif /* BRACE_EXPANSION */
/* Define DEFAULT_ECHO_TO_XPG if you want the echo builtin to interpret
the backslash-escape characters by default, like the XPG Single Unix
Specification V2 for echo.
This requires that V9_ECHO be defined. */
#undef DEFAULT_ECHO_TO_XPG
/* Define HELP_BUILTIN if you want the `help' shell builtin and the long
documentation strings compiled into the shell. */
#undef HELP_BUILTIN
/* Define RESTRICTED_SHELL if you want the generated shell to have the
ability to be a restricted one. The shell thus generated can become
restricted by being run with the name "rbash", or by setting the -r
flag. */
#undef RESTRICTED_SHELL
/* Define DISABLED_BUILTINS if you want "builtin foo" to always run the
shell builtin "foo", even if it has been disabled with "enable -n foo". */
#undef DISABLED_BUILTINS
/* Define PROCESS_SUBSTITUTION if you want the K*rn shell-like process
substitution features "<(file)". */
/* Right now, you cannot do this on machines without fully operational
FIFO support. This currently include NeXT and Alliant. */
#undef PROCESS_SUBSTITUTION
/* Define PROMPT_STRING_DECODE if you want the backslash-escaped special
characters in PS1 and PS2 expanded. Variable expansion will still be
performed. */
#undef PROMPT_STRING_DECODE
/* Define SELECT_COMMAND if you want the Korn-shell style `select' command:
select word in word_list; do command_list; done */
#undef SELECT_COMMAND
/* Define COMMAND_TIMING of you want the ksh-style `time' reserved word and
the ability to time pipelines, functions, and builtins. */
#undef COMMAND_TIMING
/* Define ARRAY_VARS if you want ksh-style one-dimensional array variables. */
#undef ARRAY_VARS
/* Define DPAREN_ARITHMETIC if you want the ksh-style ((...)) arithmetic
evaluation command. */
#undef DPAREN_ARITHMETIC
/* Define EXTENDED_GLOB if you want the ksh-style [*+@?!](patlist) extended
pattern matching. */
#undef EXTENDED_GLOB
/* Define COND_COMMAND if you want the ksh-style [[...]] conditional
command. */
#undef COND_COMMAND
/* Define COND_REGEXP if you want extended regular expression matching and the
=~ binary operator in the [[...]] conditional command. */
#define COND_REGEXP
/* Define ARITH_FOR_COMMAND if you want the ksh93-style
for (( init; test; step )) do list; done
arithmetic for command. */
#undef ARITH_FOR_COMMAND
/* Define NETWORK_REDIRECTIONS if you want /dev/(tcp|udp)/host/port to open
socket connections when used in redirections */
#undef NETWORK_REDIRECTIONS
/* Define PROGRAMMABLE_COMPLETION for the programmable completion features
and the complete builtin. */
#undef PROGRAMMABLE_COMPLETION
/* Define NO_MULTIBYTE_SUPPORT to not compile in support for multibyte
characters, even if the OS supports them. */
#undef NO_MULTIBYTE_SUPPORT
/* Define DEBUGGER if you want to compile in some features used only by the
bash debugger. */
#undef DEBUGGER
/* Define MEMSCRAMBLE if you want the bash malloc and free to scramble
memory contents on malloc() and free(). */
#undef MEMSCRAMBLE
/* Define AFS if you are using Transarc's AFS. */
#undef AFS
#undef ENABLE_NLS
/* End of configuration settings controllable by autoconf. */
/* Other settable options appear in config-top.h. */
#include "config-top.h"
/* Beginning of autoconf additions. */
/* Characteristics of the C compiler */
#undef const
#undef inline
/* Define if cpp supports the ANSI-C stringizing `#' operator */
#undef HAVE_STRINGIZE
/* Define if the compiler supports `long double' variables. */
#undef HAVE_LONG_DOUBLE
#undef PROTOTYPES
#undef __CHAR_UNSIGNED__
/* Define if the compiler supports `long long' variables. */
#undef HAVE_LONG_LONG
#undef HAVE_UNSIGNED_LONG_LONG
/* The number of bytes in a int. */
#undef SIZEOF_INT
/* The number of bytes in a long. */
#undef SIZEOF_LONG
/* The number of bytes in a pointer to char. */
#undef SIZEOF_CHAR_P
/* The number of bytes in a double (hopefully 8). */
#undef SIZEOF_DOUBLE
/* The number of bytes in a `long long', if we have one. */
#undef SIZEOF_LONG_LONG
/* System paths */
#define DEFAULT_MAIL_DIRECTORY "/usr/spool/mail"
/* Characteristics of the system's header files and libraries that affect
the compilation environment. */
/* Define if the system does not provide POSIX.1 features except
with this defined. */
#undef _POSIX_1_SOURCE
/* Define if you need to in order for stat and other things to work. */
#undef _POSIX_SOURCE
/* Define to use GNU libc extensions */
#undef _GNU_SOURCE
/* Define if you have the ANSI C header files. */
#undef STDC_HEADERS
/* Memory management functions. */
/* Define if using the bash version of malloc in lib/malloc/malloc.c */
#undef USING_BASH_MALLOC
#undef DISABLE_MALLOC_WRAPPERS
/* Define if using alloca.c. */
#undef C_ALLOCA
/* Define to one of _getb67, GETB67, getb67 for Cray-2 and Cray-YMP systems.
This function is required for alloca.c support on those systems. */
#undef CRAY_STACKSEG_END
/* Define if you have alloca, as a function or macro. */
#undef HAVE_ALLOCA
/* Define if you have <alloca.h> and it should be used (not on Ultrix). */
#undef HAVE_ALLOCA_H
/* SYSTEM TYPES */
/* Define to `long' if <sys/types.h> doesn't define. */
#undef off_t
/* Define to `int' if <sys/types.h> doesn't define. */
#undef mode_t
/* Define to `int' if <signal.h> doesn't define. */
#undef sigset_t
/* Define to `int' if <sys/types.h> doesn't define. */
#undef pid_t
/* Define to `short' if <sys/types.h> doesn't define. */
#undef bits16_t
/* Define to `unsigned short' if <sys/types.h> doesn't define. */
#undef u_bits16_t
/* Define to `int' if <sys/types.h> doesn't define. */
#undef bits32_t
/* Define to `unsigned int' if <sys/types.h> doesn't define. */
#undef u_bits32_t
/* Define to `double' if <sys/types.h> doesn't define. */
#undef bits64_t
/* Define to `unsigned int' if <sys/types.h> doesn't define. */
#undef u_int
/* Define to `unsigned long' if <sys/types.h> doesn't define. */
#undef u_long
/* Define to `int' if <sys/types.h> doesn't define. */
#undef ptrdiff_t
/* Define to `unsigned' if <sys/types.h> doesn't define. */
#undef size_t
/* Define to `int' if <sys/types.h> doesn't define. */
#undef ssize_t
/* Define to `long' if <stdint.h> doesn't define. */
#undef intmax_t
/* Define to `unsigned long' if <stdint.h> doesn't define. */
#undef uintmax_t
/* Define to `int' if <sys/types.h> doesn't define. */
#undef uid_t
/* Define to `long' if <sys/types.h> doesn't define. */
#undef clock_t
/* Define to `long' if <sys/types.h> doesn't define. */
#undef time_t
/* Define to `int' if <sys/types.h> doesn't define. */
#undef gid_t
/* Define to `unsigned int' if <sys/socket.h> doesn't define. */
#undef socklen_t
/* Define if you have quad_t in <sys/types.h>. */
#undef HAVE_QUAD_T
#undef RLIMTYPE
/* Define to the type of elements in the array set by `getgroups'.
Usually this is either `int' or `gid_t'. */
#undef GETGROUPS_T
/* Characteristics of the machine archictecture. */
/* If using the C implementation of alloca, define if you know the
direction of stack growth for your system; otherwise it will be
automatically deduced at run-time.
STACK_DIRECTION > 0 => grows toward higher addresses
STACK_DIRECTION < 0 => grows toward lower addresses
STACK_DIRECTION = 0 => direction of growth unknown
*/
#undef STACK_DIRECTION
/* Define if the machine architecture is big-endian. */
#undef WORDS_BIGENDIAN
/* Check for the presence of certain non-function symbols in the system
libraries. */
/* Define if `sys_siglist' is declared by <signal.h> or <unistd.h>. */
#undef HAVE_DECL_SYS_SIGLIST
#undef SYS_SIGLIST_DECLARED
/* Define if `_sys_siglist' is declared by <signal.h> or <unistd.h>. */
#undef UNDER_SYS_SIGLIST_DECLARED
#undef HAVE_SYS_SIGLIST
#undef HAVE_UNDER_SYS_SIGLIST
#undef HAVE_SYS_ERRLIST
#undef HAVE_TZNAME
/* Characteristics of some of the system structures. */
#undef HAVE_STRUCT_DIRENT_D_INO
#undef HAVE_STRUCT_DIRENT_D_FILENO
#undef HAVE_STRUCT_DIRENT_D_NAMLEN
#undef TIOCSTAT_IN_SYS_IOCTL
#undef FIONREAD_IN_SYS_IOCTL
#undef GWINSZ_IN_SYS_IOCTL
#undef STRUCT_WINSIZE_IN_SYS_IOCTL
#undef TM_IN_SYS_TIME
#undef STRUCT_WINSIZE_IN_TERMIOS
#undef SPEED_T_IN_SYS_TYPES
#undef TERMIOS_LDISC
#undef TERMIO_LDISC
#undef HAVE_STRUCT_STAT_ST_BLOCKS
#undef HAVE_STRUCT_TM_TM_ZONE
#undef HAVE_TM_ZONE
#undef HAVE_TIMEVAL
#undef HAVE_STRUCT_TIMEZONE
/* Characteristics of definitions in the system header files. */
#undef HAVE_GETPW_DECLS
#undef HAVE_RESOURCE
#undef HAVE_LIBC_FNM_EXTMATCH
#undef HAVE_DECL_CONFSTR
#undef HAVE_DECL_PRINTF
#undef HAVE_DECL_SBRK
#undef HAVE_DECL_STRCPY
#undef HAVE_DECL_STRSIGNAL
#undef HAVE_DECL_STRTOLD
#undef STRTOLD_BROKEN
#undef HAVE_MBSTATE_T
/* These are checked with BASH_CHECK_DECL */
#undef HAVE_DECL_STRTOIMAX
#undef HAVE_DECL_STRTOL
#undef HAVE_DECL_STRTOLL
#undef HAVE_DECL_STRTOUL
#undef HAVE_DECL_STRTOULL
#undef HAVE_DECL_STRTOUMAX
/* Characteristics of system calls and C library functions. */
/* Define if the `getpgrp' function takes no argument. */
#undef GETPGRP_VOID
#undef NAMED_PIPES_MISSING
#undef OPENDIR_NOT_ROBUST
#undef PGRP_PIPE
/* Define if the setvbuf function takes the buffering type as its second
argument and the buffer pointer as the third, as on System V
before release 3. */
#undef SETVBUF_REVERSED
#undef STAT_MACROS_BROKEN
#undef ULIMIT_MAXFDS
#undef CAN_REDEFINE_GETENV
#undef HAVE_STD_PUTENV
#undef HAVE_STD_UNSETENV
#undef HAVE_PRINTF_A_FORMAT
#undef CTYPE_NON_ASCII
/* Define if you have <langinfo.h> and nl_langinfo(CODESET). */
#undef HAVE_LANGINFO_CODESET
/* Characteristics of properties exported by the kernel. */
/* Define if the kernel can exec files beginning with #! */
#undef HAVE_HASH_BANG_EXEC
/* Define if you have the /dev/fd devices to map open files into the file system. */
#undef HAVE_DEV_FD
/* Defined to /dev/fd or /proc/self/fd (linux). */
#undef DEV_FD_PREFIX
/* Define if you have the /dev/stdin device. */
#undef HAVE_DEV_STDIN
/* Type and behavior of signal handling functions. */
/* Define as the return type of signal handlers (int or void). */
#undef RETSIGTYPE
/* Define if return type of signal handlers is void */
#undef VOID_SIGHANDLER
#undef MUST_REINSTALL_SIGHANDLERS
#undef HAVE_BSD_SIGNALS
#undef HAVE_POSIX_SIGNALS
#undef HAVE_USG_SIGHOLD
#undef UNUSABLE_RT_SIGNALS
/* Presence of system and C library functions. */
/* Define if you have the asprintf function. */
#undef HAVE_ASPRINTF
/* Define if you have the bcopy function. */
#undef HAVE_BCOPY
/* Define if you have the bzero function. */
#undef HAVE_BZERO
/* Define if you have the confstr function. */
#undef HAVE_CONFSTR
/* Define if you have the dlclose function. */
#undef HAVE_DLCLOSE
/* Define if you have the dlopen function. */
#undef HAVE_DLOPEN
/* Define if you have the dlsym function. */
#undef HAVE_DLSYM
/* Define if you don't have vprintf but do have _doprnt. */
#undef HAVE_DOPRNT
/* Define if you have the dup2 function. */
#undef HAVE_DUP2
/* Define if you have the getaddrinfo function. */
#undef HAVE_GETADDRINFO
/* Define if you have the getcwd function. */
#undef HAVE_GETCWD
/* Define if you have the getdtablesize function. */
#undef HAVE_GETDTABLESIZE
/* Define if you have the getgroups function. */
#undef HAVE_GETGROUPS
/* Define if you have the gethostbyname function. */
#undef HAVE_GETHOSTBYNAME
/* Define if you have the gethostname function. */
#undef HAVE_GETHOSTNAME
/* Define if you have the getpagesize function. */
#undef HAVE_GETPAGESIZE
/* Define if you have the getpeername function. */
#undef HAVE_GETPEERNAME
/* Define if you have the getrlimit function. */
#undef HAVE_GETRLIMIT
/* Define if you have the getrusage function. */
#undef HAVE_GETRUSAGE
/* Define if you have the getservbyname function. */
#undef HAVE_GETSERVBYNAME
/* Define if you have the getservent function. */
#undef HAVE_GETSERVENT
/* Define if you have the gettimeofday function. */
#undef HAVE_GETTIMEOFDAY
/* Define if you have the getwd function. */
#undef HAVE_GETWD
/* Define if you have the inet_aton function. */
#undef HAVE_INET_ATON
/* Define if you have the isascii function. */
#undef HAVE_ISASCII
/* Define if you have the isblank function. */
#undef HAVE_ISBLANK
/* Define if you have the isgraph function. */
#undef HAVE_ISGRAPH
/* Define if you have the isint function in libc */
#undef HAVE_ISINF_IN_LIBC
/* Define if you have the isprint function. */
#undef HAVE_ISPRINT
/* Define if you have the isspace function. */
#undef HAVE_ISSPACE
/* Define if you have the isxdigit function. */
#undef HAVE_ISXDIGIT
/* Define if you have the killpg function. */
#undef HAVE_KILLPG
/* Define if you have the lstat function. */
#undef HAVE_LSTAT
/* Define if you have the mbrlen function. */
#undef HAVE_MBRLEN
/* Define if you have the mbrtowc function. */
#undef HAVE_MBRTOWC
/* Define if you have the mbsrtowcs function. */
#undef HAVE_MBSRTOWCS
/* Define if you have the memmove function. */
#undef HAVE_MEMMOVE
/* Define if you have the memset function. */
#undef HAVE_MEMSET
/* Define if you have the mkfifo function. */
#undef HAVE_MKFIFO
/* Define if you have the pathconf function. */
#undef HAVE_PATHCONF
/* Define if you have the putenv function. */
#undef HAVE_PUTENV
/* Define if you have the readlink function. */
#undef HAVE_READLINK
/* Define if you have the regcomp function. */
#undef HAVE_REGCOMP
/* Define if you have the regexec function. */
#undef HAVE_REGEXEC
/* Define if you have the rename function. */
#undef HAVE_RENAME
/* Define if you have the sbrk function. */
#undef HAVE_SBRK
/* Define if you have the select function. */
#undef HAVE_SELECT
/* Define if you have the setdtablesize function. */
#undef HAVE_SETDTABLESIZE
/* Define if you have the setenv function. */
#undef HAVE_SETENV
/* Define if you have the setlinebuf function. */
#undef HAVE_SETLINEBUF
/* Define if you have the setlocale function. */
#undef HAVE_SETLOCALE
/* Define if you have the setostype function. */
#undef HAVE_SETOSTYPE
/* Define if you have the setvbuf function. */
#undef HAVE_SETVBUF
/* Define if you have the siginterrupt function. */
#undef HAVE_SIGINTERRUPT
/* Define if you have the POSIX.1-style sigsetjmp function. */
#undef HAVE_POSIX_SIGSETJMP
/* Define if you have the snprintf function. */
#undef HAVE_SNPRINTF
/* Define if you have the strcasecmp function. */
#undef HAVE_STRCASECMP
/* Define if you have the strchr function. */
#undef HAVE_STRCHR
/* Define if you have the strcoll function. */
#undef HAVE_STRCOLL
/* Define if you have the strerror function. */
#undef HAVE_STRERROR
/* Define if you have the strftime function. */
#undef HAVE_STRFTIME
/* Define if you have the strpbrk function. */
#undef HAVE_STRPBRK
/* Define if you have the strstr function. */
#undef HAVE_STRSTR
/* Define if you have the strtod function. */
#undef HAVE_STRTOD
/* Define if you have the strtoimax function. */
#undef HAVE_STRTOIMAX
/* Define if you have the strtol function. */
#undef HAVE_STRTOL
/* Define if you have the strtoll function. */
#undef HAVE_STRTOLL
/* Define if you have the strtoul function. */
#undef HAVE_STRTOUL
/* Define if you have the strtoull function. */
#undef HAVE_STRTOULL
/* Define if you have the strtoumax function. */
#undef HAVE_STRTOUMAX
/* Define if you have the strsignal function or macro. */
#undef HAVE_STRSIGNAL
/* Define if you have the sysconf function. */
#undef HAVE_SYSCONF
/* Define if you have the tcgetattr function. */
#undef HAVE_TCGETATTR
/* Define if you have the tcgetpgrp function. */
#undef HAVE_TCGETPGRP
/* Define if you have the times function. */
#undef HAVE_TIMES
/* Define if you have the ttyname function. */
#undef HAVE_TTYNAME
/* Define if you have the tzset function. */
#undef HAVE_TZSET
/* Define if you have the ulimit function. */
#undef HAVE_ULIMIT
/* Define if you have the uname function. */
#undef HAVE_UNAME
/* Define if you have the unsetenv function. */
#undef HAVE_UNSETENV
/* Define if you have the vasprintf function. */
#undef HAVE_VASPRINTF
/* Define if you have the vprintf function. */
#undef HAVE_VPRINTF
/* Define if you have the vsnprintf function. */
#undef HAVE_VSNPRINTF
/* Define if you have the waitpid function. */
#undef HAVE_WAITPID
/* Define if you have the wait3 function. */
#undef HAVE_WAIT3
/* Define if you have the wcsdup function. */
#undef HAVE_WCSDUP
/* Define if you have the wctomb function. */
#undef HAVE_WCTOMB
/* Define if you have the wcwidth function. */
#undef HAVE_WCWIDTH
/* Presence of certain system include files. */
/* Define if you have the <arpa/inet.h> header file. */
#undef HAVE_ARPA_INET_H
/* Define if you have the <dirent.h> header file. */
#undef HAVE_DIRENT_H
/* Define if you have the <dlfcn.h> header file. */
#undef HAVE_DLFCN_H
/* Define if you have the <grp.h> header file. */
#undef HAVE_GRP_H
/* Define if you have the <inttypes.h> header file. */
#undef HAVE_INTTYPES_H
/* Define if you have the <langinfo.h> header file. */
#undef HAVE_LANGINFO_H
/* Define if you have the <libintl.h> header file. */
#undef HAVE_LIBINTL_H
/* Define if you have the <limits.h> header file. */
#undef HAVE_LIMITS_H
/* Define if you have the <locale.h> header file. */
#undef HAVE_LOCALE_H
/* Define if you have the <ndir.h> header file. */
#undef HAVE_NDIR_H
/* Define if you have the <netdh.h> header file. */
#undef HAVE_NETDB_H
/* Define if you have the <netinet/in.h> header file. */
#undef HAVE_NETINET_IN_H
/* Define if you have the <regex.h> header file. */
#undef HAVE_REGEX_H
/* Define if you have the <stdlib.h> header file. */
#undef HAVE_STDLIB_H
/* Define if you have the <stdarg.h> header file. */
#undef HAVE_STDARG_H
/* Define if you have the <string.h> header file. */
#undef HAVE_STRING_H
/* Define if you have the <strings.h> header file. */
#undef HAVE_STRINGS_H
/* Define if you have the <memory.h> header file. */
#undef HAVE_MEMORY_H
/* Define if you have the <stddef.h> header file. */
#undef HAVE_STDDEF_H
/* Define if you have the <stdint.h> header file. */
#undef HAVE_STDINT_H
/* Define if you have the <sys/dir.h> header file. */
#undef HAVE_SYS_DIR_H
/* Define if you have the <sys/file.h> header file. */
#undef HAVE_SYS_FILE_H
/* Define if you have the <sys/ndir.h> header file. */
#undef HAVE_SYS_NDIR_H
/* Define if you have the <sys/param.h> header file. */
#undef HAVE_SYS_PARAM_H
/* Define if you have the <sys/pte.h> header file. */
#undef HAVE_SYS_PTE_H
/* Define if you have the <sys/ptem.h> header file. */
#undef HAVE_SYS_PTEM_H
/* Define if you have the <sys/resource.h> header file. */
#undef HAVE_SYS_RESOURCE_H
/* Define if you have the <sys/select.h> header file. */
#undef HAVE_SYS_SELECT_H
/* Define if you have the <sys/socket.h> header file. */
#undef HAVE_SYS_SOCKET_H
/* Define if you have the <sys/stat.h> header file. */
#undef HAVE_SYS_STAT_H
/* Define if you have the <sys/stream.h> header file. */
#undef HAVE_SYS_STREAM_H
/* Define if you have <sys/time.h> */
#undef HAVE_SYS_TIME_H
#undef TIME_WITH_SYS_TIME
/* Define if you have <sys/times.h> */
#undef HAVE_SYS_TIMES_H
/* Define if you have the <sys/types.h> header file. */
#undef HAVE_SYS_TYPES_H
/* Define if you have <sys/wait.h> that is POSIX.1 compatible. */
#undef HAVE_SYS_WAIT_H
/* Define if you have the <termcap.h> header file. */
#undef HAVE_TERMCAP_H
/* Define if you have the <termio.h> header file. */
#undef HAVE_TERMIO_H
/* Define if you have the <termios.h> header file. */
#undef HAVE_TERMIOS_H
/* Define if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H
/* Define if you have the <varargs.h> header file. */
#undef HAVE_VARARGS_H
/* Define if you have the <wchar.h> header file. */
#undef HAVE_WCHAR_H
/* Define if you have the <varargs.h> header file. */
#undef HAVE_WCTYPE_H
/* Presence of certain system libraries. */
#undef HAVE_LIBDL
#undef HAVE_LIBSUN
#undef HAVE_LIBSOCKET
/* Define if on MINIX. */
#undef _MINIX
/* Are we running SVR5 (UnixWare 7)? */
#undef SVR5
/* Are we running SVR4.2? */
#undef SVR4_2
/* Are we running some version of SVR4? */
#undef SVR4
/* Define if job control is unusable or unsupported. */
#undef JOB_CONTROL_MISSING
/* Do we need to define _KERNEL to get the RLIMIT_* defines from
<sys/resource.h>? */
#undef RLIMIT_NEEDS_KERNEL
/* Number of bits in a file offset, on hosts where this is settable. */
#undef _FILE_OFFSET_BITS
/* Define for large files on AIX-style hosts. */
#undef _LARGE_FILES
/* Do strcoll(3) and strcmp(3) give different results in the default locale? */
#undef STRCOLL_BROKEN
#undef DUP2_BROKEN
#undef GETCWD_BROKEN
/* Additional defines for configuring lib/intl, maintained by autoscan/autoheader */
/* Define if you have the <argz.h> header file. */
#undef HAVE_ARGZ_H
/* Define if you have the <errno.h> header file. */
#undef HAVE_ERRNO_H
/* Define if you have the <fcntl.h> header file. */
#undef HAVE_FCNTL_H
/* Define if you have the <malloc.h> header file. */
#undef HAVE_MALLOC_H
/* Define if you have the <stdio_ext.h> header file. */
#undef HAVE_STDIO_EXT_H
/* Define if you have the `dcgettext' function. */
#undef HAVE_DCGETTEXT
/* Define if your system has a working `malloc' function. */
/* #undef HAVE_MALLOC */
/* Define if you have the `mempcpy' function. */
#undef HAVE_MEMPCPY
/* Define if you have a working `mmap' system call. */
#undef HAVE_MMAP
/* Define if you have the `munmap' function. */
#undef HAVE_MUNMAP
/* Define if you have the `nl_langinfo' function. */
#undef HAVE_NL_LANGINFO
/* Define if you have the `stpcpy' function. */
#undef HAVE_STPCPY
/* Define if you have the `strcspn' function. */
#undef HAVE_STRCSPN
/* Define if you have the `strdup' function. */
#undef HAVE_STRDUP
/* Define if you have the `__argz_count' function. */
#undef HAVE___ARGZ_COUNT
/* Define if you have the `__argz_next' function. */
#undef HAVE___ARGZ_NEXT
/* Define if you have the `__argz_stringify' function. */
#undef HAVE___ARGZ_STRINGIFY
/* End additions for lib/intl */
#include "config-bot.h"
#endif /* _CONFIG_H_ */
Vendored
+14 -13
View File
@@ -1,7 +1,7 @@
#! /bin/sh
# From configure.in for Bash 3.0, version 3.168, from autoconf version AC_ACVERSION.
# From configure.in for Bash 3.0, version 3.169, from autoconf version AC_ACVERSION.
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.57 for bash 3.0-release.
# Generated by GNU Autoconf 2.57 for bash 3.1-devel.
#
# Report bugs to <bug-bash@gnu.org>.
#
@@ -269,8 +269,8 @@ SHELL=${CONFIG_SHELL-/bin/sh}
# Identity of this package.
PACKAGE_NAME='bash'
PACKAGE_TARNAME='bash'
PACKAGE_VERSION='3.0-release'
PACKAGE_STRING='bash 3.0-release'
PACKAGE_VERSION='3.1-devel'
PACKAGE_STRING='bash 3.1-devel'
PACKAGE_BUGREPORT='bug-bash@gnu.org'
ac_unique_file="shell.h"
@@ -784,7 +784,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
\`configure' configures bash 3.0-release to adapt to many kinds of systems.
\`configure' configures bash 3.1-devel to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -845,7 +845,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
short | recursive ) echo "Configuration of bash 3.0-release:";;
short | recursive ) echo "Configuration of bash 3.1-devel:";;
esac
cat <<\_ACEOF
@@ -1000,7 +1000,7 @@ fi
test -n "$ac_init_help" && exit 0
if $ac_init_version; then
cat <<\_ACEOF
bash configure 3.0-release
bash configure 3.1-devel
generated by GNU Autoconf 2.57
Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002
@@ -1015,7 +1015,7 @@ cat >&5 <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by bash $as_me 3.0-release, which was
It was created by bash $as_me 3.1-devel, which was
generated by GNU Autoconf 2.57. Invocation command line was
$ $0 $@
@@ -1383,8 +1383,8 @@ ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure.
ac_config_headers="$ac_config_headers config.h"
BASHVERS=3.0
RELSTATUS=release
BASHVERS=3.1
RELSTATUS=devel
case "$RELSTATUS" in
alp*|bet*|dev*|rc*) DEBUG='-DDEBUG' MALLOC_DEBUG='-DMALLOC_DEBUG' ;;
@@ -11534,7 +11534,8 @@ done
for ac_func in getcwd strcasecmp strerror strftime strpbrk memset strstr
for ac_func in getcwd strcasecmp strerror strftime strpbrk memset strstr strnlen
do
as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
echo "$as_me:$LINENO: checking for $ac_func" >&5
@@ -24445,7 +24446,7 @@ _ASBOX
} >&5
cat >&5 <<_CSEOF
This file was extended by bash $as_me 3.0-release, which was
This file was extended by bash $as_me 3.1-devel, which was
generated by GNU Autoconf 2.57. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -24508,7 +24509,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF
ac_cs_version="\\
bash config.status 3.0-release
bash config.status 3.1-devel
configured by $0, generated by GNU Autoconf 2.57,
with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
+4 -4
View File
@@ -22,10 +22,10 @@ dnl Process this file with autoconf to produce a configure script.
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
# 02111-1307, USA.
AC_REVISION([for Bash 3.0, version 3.168, from autoconf version] AC_ACVERSION)dnl
AC_REVISION([for Bash 3.0, version 3.169, from autoconf version] AC_ACVERSION)dnl
define(bashvers, 3.0)
define(relstatus, release)
define(bashvers, 3.1)
define(relstatus, devel)
AC_INIT(bash, bashvers-relstatus, bug-bash@gnu.org)
@@ -646,7 +646,7 @@ AC_CHECK_FUNCS(bcopy bzero confstr sysconf pathconf setenv putenv unsetenv \
getaddrinfo gethostbyname getservbyname getservent inet_aton \
vsnprintf snprintf vasprintf asprintf fnmatch regcomp regexec)
AC_CHECK_FUNCS(isascii isblank isgraph isprint isspace isxdigit)
AC_REPLACE_FUNCS(getcwd strcasecmp strerror strftime strpbrk memset strstr)
AC_REPLACE_FUNCS(getcwd strcasecmp strerror strftime strpbrk memset strstr strnlen)
AC_REPLACE_FUNCS(strtod strtol strtoul strtoll strtoull strtoimax strtoumax)
AC_CHECK_DECLS([confstr])
+10 -2
View File
@@ -22,7 +22,7 @@ dnl Process this file with autoconf to produce a configure script.
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
# 02111-1307, USA.
AC_REVISION([for Bash 3.0, version 3.166, from autoconf version] AC_ACVERSION)dnl
AC_REVISION([for Bash 3.0, version 3.168, from autoconf version] AC_ACVERSION)dnl
define(bashvers, 3.0)
define(relstatus, release)
@@ -574,11 +574,19 @@ BASH_HEADER_INTTYPES
AC_CHECK_HEADERS(unistd.h stdlib.h stdarg.h varargs.h limits.h string.h \
memory.h locale.h termcap.h termio.h termios.h dlfcn.h \
stddef.h stdint.h netdb.h grp.h strings.h regex.h)
AC_CHECK_HEADERS(sys/ptem.h sys/pte.h sys/stream.h sys/select.h sys/file.h \
AC_CHECK_HEADERS(sys/pte.h sys/stream.h sys/select.h sys/file.h \
sys/resource.h sys/param.h sys/socket.h sys/stat.h \
sys/time.h sys/times.h sys/types.h sys/wait.h)
AC_CHECK_HEADERS(netinet/in.h arpa/inet.h)
dnl sys/ptem.h requires definitions from sys/stream.h on systems where it
dnl exists
AC_CHECK_HEADER(sys/ptem.h, , ,[[
#if HAVE_SYS_STREAM_H
# include <sys/stream.h>
#endif
]])
dnl special checks for libc functions
AC_FUNC_ALLOCA
AC_FUNC_GETPGRP
+7 -8
View File
@@ -1,4 +1,4 @@
This is the Bash FAQ, version 3.28, for Bash version 3.0.
This is the Bash FAQ, version 3.29, for Bash version 3.0.
This document contains a set of frequently-asked questions concerning
Bash, the GNU Bourne-Again Shell. Bash is a freely-available command
@@ -181,16 +181,15 @@ earlier Minix versions yet.
Bash has been ported to versions of Windows implementing the Win32
programming interface. This includes Windows 95 and Windows NT.
The port was done by Cygnus Solutions as part of their CYGWIN
project. For more information about the project, look at the URLs
http://www.cygwin.com/
http://sourceware.cygnus.com/cygwin
The port was done by Cygnus Solutions (now part of Red Hat) as part
of their CYGWIN project. For more information about the project, see
http://www.cygwin.com/.
Cygnus originally ported bash-1.14.7, and that port was part of their
early GNU-Win32 (the original name) releases. Cygnus has also done a
port of bash-2.05 to the CYGWIN environment, and it is available as
part of their current release.
port of bash-2.05b to the CYGWIN environment, and it is available as
part of their current release. Bash-3.0 is currently being tested and
should be available soon.
Bash-2.05b and later versions should require no local Cygnus changes to
build and run under CYGWIN.
+1785
View File
File diff suppressed because it is too large Load Diff
+5
View File
@@ -6186,6 +6186,11 @@ suppressing trailing spaces). Intended to be used with shell functions.
.B nospace
Tell readline not to append a space (the default) to words completed at
the end of the line.
.TP 8
.B plusdirs
After any matches defined by the compspec are generated,
directory name completion is attempted and any
matches are added to the results of the other actions.
.RE
.TP 8
\fB\-A\fP \fIaction\fP
+11 -2
View File
@@ -1130,6 +1130,10 @@ Expands to the positional parameters, starting from one. When the
expansion occurs within double quotes, each parameter expands to a
separate word. That is, "\fB$@\fP" is equivalent to
"\fB$1\fP" "\fB$2\fP" ...
If the double-quoted expansion occurs within a word, the expansion of
the first parameter is joined with the beginning part of the original
word, and the expansion of the last parameter is joined with the last
part of the original word.
When there are no positional parameters, "\fB$@\fP" and
.B $@
expand to nothing (i.e., they are removed).
@@ -1222,7 +1226,7 @@ The command argument to the \fB\-c\fP invocation option.
.TP
.B BASH_LINENO
An array variable whose members are the line numbers in source files
corresponding to each member of @var{FUNCNAME}.
corresponding to each member of \fBFUNCNAME\fP.
\fB${BASH_LINENO[\fP\fI$i\fP\fB]}\fP is the line number in the source
file where \fB${FUNCNAME[\fP\fI$i + 1\fP\fB]}\fP was called.
The corresponding source file name is \fB${BASH_SOURCE[\fP\fI$i + 1\fP\fB]}\fB.
@@ -2035,7 +2039,12 @@ character of the
.B IFS
special variable, and ${\fIname\fP[@]} expands each element of
\fIname\fP to a separate word. When there are no array members,
${\fIname\fP[@]} expands to nothing. This is analogous to the expansion
${\fIname\fP[@]} expands to nothing.
If the double-quoted expansion occurs within a word, the expansion of
the first parameter is joined with the beginning part of the original
word, and the expansion of the last parameter is joined with the last
part of the original word.
This is analogous to the expansion
of the special parameters \fB*\fP and \fB@\fP (see
.B Special Parameters
above). ${#\fIname\fP[\fIsubscript\fP]} expands to the length of
+3 -3
View File
@@ -4,7 +4,7 @@ Copyright (C) 1988-2004 Free Software Foundation, Inc.
@set EDITION 3.0
@set VERSION 3.0
@set UPDATED 27 August 2004
@set UPDATED-MONTH August 2004
@set UPDATED 11 September 2004
@set UPDATED-MONTH September 2004
@set LASTCHANGE Fri Aug 27 12:15:06 EDT 2004
@set LASTCHANGE Sat Sep 11 10:13:36 EDT 2004
+2 -2
View File
@@ -4,7 +4,7 @@ Copyright (C) 1988-2004 Free Software Foundation, Inc.
@set EDITION 3.0
@set VERSION 3.0
@set UPDATED 2 August 2004
@set UPDATED 27 August 2004
@set UPDATED-MONTH August 2004
@set LASTCHANGE Mon Aug 2 22:45:05 EDT 2004
@set LASTCHANGE Fri Aug 27 12:15:06 EDT 2004
+5
View File
@@ -1274,6 +1274,11 @@ execute_in_subshell (command, asynchronous, pipe_in, pipe_out, fds_to_close)
tcom = (command->type == cm_subshell) ? command->value.Subshell->command : command;
if (command->flags & CMD_TIME_PIPELINE)
tcom->flags |= CMD_TIME_PIPELINE;
if (command->flags & CMD_TIME_POSIX)
tcom->flags |= CMD_TIME_POSIX;
/* Make sure the subshell inherits any CMD_IGNORE_RETURN flag. */
if ((command->flags & CMD_IGNORE_RETURN) && tcom != command)
tcom->flags |= CMD_IGNORE_RETURN;
+11 -2
View File
@@ -621,6 +621,8 @@ fnprint (to_print)
mbstate_t ps;
const char *end;
size_t tlen;
int width, w;
wchar_t wc;
end = to_print + strlen (to_print) + 1;
memset (&ps, 0, sizeof (mbstate_t));
@@ -653,21 +655,28 @@ fnprint (to_print)
else
{
#if defined (HANDLE_MULTIBYTE)
tlen = mbrlen (s, end - s, &ps);
tlen = mbrtowc (&wc, s, end - s, &ps);
if (MB_INVALIDCH (tlen))
{
tlen = 1;
width = 1;
memset (&ps, 0, sizeof (mbstate_t));
}
else if (MB_NULLWCH (tlen))
break;
else
{
w = wcwidth (wc);
width = (w >= 0) ? w : 1;
}
fwrite (s, 1, tlen, rl_outstream);
s += tlen;
printed_len += width;
#else
putc (*s, rl_outstream);
s++;
#endif
printed_len++;
#endif
}
}
+6
View File
@@ -1693,6 +1693,12 @@ shell functions specified with @option{-F}.
@item nospace
Tell Readline not to append a space (the default) to words completed at
the end of the line.
@item plusdirs
After any matches defined by the compspec are generated,
directory name completion is attempted and any
matches are added to the results of the other actions.
@end table
@item -A @var{action}
File diff suppressed because it is too large Load Diff
+6 -2
View File
@@ -86,7 +86,7 @@ CSOURCES = clktck.c clock.c getcwd.c getenv.c oslib.c setlinebuf.c \
inet_aton.c netconn.c netopen.c strpbrk.c timeval.c makepath.c \
pathcanon.c pathphys.c tmpfile.c stringlist.c stringvec.c spell.c \
shquote.c strtrans.c strindex.c snprintf.c mailstat.c \
fmtulong.c fmtullong.c fmtumax.c shmatch.c \
fmtulong.c fmtullong.c fmtumax.c shmatch.c strnlen.c \
strtoll.c strtoull.c strtoimax.c strtoumax.c memset.c strstr.c \
mktime.c strftime.c xstrchr.c zcatfd.c
@@ -95,7 +95,7 @@ HSOURCES =
# The object files contained in $(LIBRARY_NAME)
LIBOBJS = @LIBOBJS@
OBJECTS = clktck.o clock.o getenv.o oslib.o setlinebuf.o \
OBJECTS = clktck.o clock.o getenv.o oslib.o setlinebuf.o strnlen.o \
itos.o zread.o zwrite.o shtty.o shmatch.o \
netconn.o netopen.o timeval.o makepath.o pathcanon.o \
pathphys.o tmpfile.o stringlist.o stringvec.o spell.o shquote.o \
@@ -162,6 +162,7 @@ strftime.o: strftime.c
strindex.o: strindex.c
stringlist.o: stringlist.c
stringvec.o: stringvec.c
strnlen.o: strnlen.c
strpbrk.o: strpbrk.c
strtod.o: strtod.c
strtoimax.o: strtoimax.c
@@ -218,6 +219,7 @@ strftime.o: ${BUILD_DIR}/config.h
strindex.o: ${BUILD_DIR}/config.h
stringlist.o: ${BUILD_DIR}/config.h
stringvec.o: ${BUILD_DIR}/config.h
strnlen.o: ${BUILD_DIR}/config.h
strpbrk.o: ${BUILD_DIR}/config.h
strtod.o: ${BUILD_DIR}/config.h
strtoimax.o: ${BUILD_DIR}/config.h
@@ -372,6 +374,8 @@ stringvec.o: ${topdir}/unwind_prot.h ${topdir}/dispose_cmd.h
stringvec.o: ${topdir}/make_cmd.h ${topdir}/subst.h ${topdir}/sig.h
stringvec.o: ${BUILD_DIR}/pathnames.h ${topdir}/externs.h ${BUILD_DIR}/version.h
strnlen.o: ${BASHINCDIR}/stdc.h
strpbrk.o: ${BASHINCDIR}/stdc.h
strtod.o: ${topdir}/bashansi.h
+451
View File
@@ -0,0 +1,451 @@
#
# Makefile for the Bash library
#
#
# Copyright (C) 1998-2002 Free Software Foundation, Inc.
# This program 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, or (at your option)
# any later version.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111 USA.
PACKAGE = @PACKAGE_NAME@
VERSION = @PACKAGE_VERSION@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_VERSION = @PACKAGE_VERSION@
srcdir = @srcdir@
VPATH = .:@srcdir@
topdir = @top_srcdir@
BUILD_DIR = @BUILD_DIR@
LIBBUILD = ${BUILD_DIR}/lib
BASHINCDIR = ${topdir}/include
INTL_LIBSRC = ${topdir}/lib/intl
INTL_BUILDDIR = ${LIBBUILD}/intl
INTL_INC = @INTL_INC@
LIBINTL_H = @LIBINTL_H@
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
CC = @CC@
RANLIB = @RANLIB@
AR = @AR@
ARFLAGS = @ARFLAGS@
RM = rm -f
CP = cp
MV = mv
SHELL = @MAKE_SHELL@
CFLAGS = @CFLAGS@
LOCAL_CFLAGS = @LOCAL_CFLAGS@ ${DEBUG}
CPPFLAGS = @CPPFLAGS@
LDFLAGS = @LDFLAGS@ @LOCAL_LDFLAGS@
PROFILE_FLAGS = @PROFILE_FLAGS@
DEFS = @DEFS@
LOCAL_DEFS = @LOCAL_DEFS@
INCLUDES = -I. -I../.. -I$(topdir) -I$(topdir)/lib -I$(BASHINCDIR) -I$(srcdir) $(INTL_INC)
CCFLAGS = ${PROFILE_FLAGS} ${INCLUDES} $(DEFS) $(LOCAL_DEFS) $(LOCAL_CFLAGS) \
$(CFLAGS) $(CPPFLAGS)
GCC_LINT_FLAGS = -Wall -Wshadow -Wpointer-arith -Wcast-qual \
-Wcast-align -Wstrict-prototypes -Wconversion \
-Wmissing-prototypes -Wtraditional -Wredundant-decls -pedantic
.c.o:
$(CC) -c $(CCFLAGS) $<
# The name of the library target.
LIBRARY_NAME = libsh.a
# The C code source files for this library.
CSOURCES = clktck.c clock.c getcwd.c getenv.c oslib.c setlinebuf.c \
strcasecmp.c strerror.c strtod.c strtol.c strtoul.c \
vprint.c itos.c rename.c zread.c zwrite.c shtty.c \
inet_aton.c netconn.c netopen.c strpbrk.c timeval.c makepath.c \
pathcanon.c pathphys.c tmpfile.c stringlist.c stringvec.c spell.c \
shquote.c strtrans.c strindex.c snprintf.c mailstat.c \
fmtulong.c fmtullong.c fmtumax.c shmatch.c \
strtoll.c strtoull.c strtoimax.c strtoumax.c memset.c strstr.c \
mktime.c strftime.c xstrchr.c zcatfd.c
# The header files for this library.
HSOURCES =
# The object files contained in $(LIBRARY_NAME)
LIBOBJS = @LIBOBJS@
OBJECTS = clktck.o clock.o getenv.o oslib.o setlinebuf.o \
itos.o zread.o zwrite.o shtty.o shmatch.o \
netconn.o netopen.o timeval.o makepath.o pathcanon.o \
pathphys.o tmpfile.o stringlist.o stringvec.o spell.o shquote.o \
strtrans.o strindex.o snprintf.o mailstat.o fmtulong.o \
fmtullong.o fmtumax.o xstrchr.o zcatfd.o ${LIBOBJS}
SUPPORT = Makefile
all: $(LIBRARY_NAME)
$(LIBRARY_NAME): $(OBJECTS)
$(RM) $@
$(AR) $(ARFLAGS) $@ $(OBJECTS)
-test -n "$(RANLIB)" && $(RANLIB) $@
force:
# The rule for 'includes' is written funny so that the if statement
# always returns TRUE unless there really was an error installing the
# include files.
install:
clean:
$(RM) $(OBJECTS) $(LIBRARY_NAME)
realclean distclean maintainer-clean: clean
$(RM) Makefile
mostlyclean: clean
# Dependencies
${BUILD_DIR}/version.h: ${BUILD_DIR}/config.h ${BUILD_DIR}/Makefile Makefile
-( cd ${BUILD_DIR} && ${MAKE} ${MFLAGS} version.h )
# rules for losing makes, like SunOS
clktck.o: clktck.c
clock.o: clock.c
fmtullong.o: fmtullong.c
fmtulong.o: fmtulong.c
fmtumax.o: fmtumax.c
getcwd.o: getcwd.c
getenv.o: getenv.c
inet_aton.o: inet_aton.c
itos.o: itos.c
mailstat.o: mailstat.c
makepath.o: makepath.c
memset.o: memset.c
mktime.o: mktime.c
netconn.o: netconn.c
netopen.o: netopen.c
oslib.o: oslib.c
pathcanon.o: pathcanon.c
pathphys.o: pathphys.c
rename.o: rename.c
setlinebuf.o: setlinebuf.c
shquote.o: shquote.c
shtty.o: shtty.c
snprintf.o: snprintf.c
spell.o: spell.c
strcasecmp.o: strcasecmp.c
strerror.o: strerror.c
strftime.o: strftime.c
strindex.o: strindex.c
stringlist.o: stringlist.c
stringvec.o: stringvec.c
strpbrk.o: strpbrk.c
strtod.o: strtod.c
strtoimax.o: strtoimax.c
strtol.o: strtol.c
strtoll.o: strtoll.c
strtoul.o: strtoul.c
strtoull.o: strtoull.c
strtoumax.o: strtoumax.c
strtrans.o: strtrans.c
times.o: times.c
timeval.o: timeval.c
tmpfile.o: tmpfile.c
vprint.o: vprint.c
xstrchr.o: xstrchr.c
zcatfd.o: zcatfd.c
zread.o: zread.c
zwrite.o: zwrite.c
# dependencies for c files that include other c files
fmtullong.o: fmtulong.c
fmtumax.o: fmtulong.c
strtoll.o: strtol.c
strtoul.o: strtol.c
strtoull.o: strtol.c
# all files in the library depend on config.h
clktck.o: ${BUILD_DIR}/config.h
clock.o: ${BUILD_DIR}/config.h
fmtullong.o: ${BUILD_DIR}/config.h
fmtulong.o: ${BUILD_DIR}/config.h
fmtumax.o: ${BUILD_DIR}/config.h
getcwd.o: ${BUILD_DIR}/config.h
getenv.o: ${BUILD_DIR}/config.h
inet_aton.o: ${BUILD_DIR}/config.h
itos.o: ${BUILD_DIR}/config.h
mailstat.o: ${BUILD_DIR}/config.h
makepath.o: ${BUILD_DIR}/config.h
memset.o: ${BUILD_DIR}/config.h
mktime.o: ${BUILD_DIR}/config.h
netconn.o: ${BUILD_DIR}/config.h
netopen.o: ${BUILD_DIR}/config.h
oslib.o: ${BUILD_DIR}/config.h
pathcanon.o: ${BUILD_DIR}/config.h
pathphys.o: ${BUILD_DIR}/config.h
rename.o: ${BUILD_DIR}/config.h
setlinebuf.o: ${BUILD_DIR}/config.h
shquote.o: ${BUILD_DIR}/config.h
shtty.o: ${BUILD_DIR}/config.h
snprintf.o: ${BUILD_DIR}/config.h
spell.o: ${BUILD_DIR}/config.h
strcasecmp.o: ${BUILD_DIR}/config.h
strerror.o: ${BUILD_DIR}/config.h
strftime.o: ${BUILD_DIR}/config.h
strindex.o: ${BUILD_DIR}/config.h
stringlist.o: ${BUILD_DIR}/config.h
stringvec.o: ${BUILD_DIR}/config.h
strpbrk.o: ${BUILD_DIR}/config.h
strtod.o: ${BUILD_DIR}/config.h
strtoimax.o: ${BUILD_DIR}/config.h
strtol.o: ${BUILD_DIR}/config.h
strtoll.o: ${BUILD_DIR}/config.h
strtoul.o: ${BUILD_DIR}/config.h
strtoull.o: ${BUILD_DIR}/config.h
strtoumax.o: ${BUILD_DIR}/config.h
strtrans.o: ${BUILD_DIR}/config.h
times.o: ${BUILD_DIR}/config.h
timeval.o: ${BUILD_DIR}/config.h
tmpfile.o: ${BUILD_DIR}/config.h
vprint.o: ${BUILD_DIR}/config.h
xstrchr.o: ${BUILD_DIR}/config.h
zcatfd.o: ${BUILD_DIR}/config.h
zread.o: ${BUILD_DIR}/config.h
zwrite.o: ${BUILD_DIR}/config.h
clktck.o: ${topdir}/bashtypes.h
getcwd.o: ${topdir}/bashtypes.h ${topdir}/bashansi.h ${BASHINCDIR}/maxpath.h
getcwd.o: ${BASHINCDIR}/posixstat.h ${BASHINCDIR}/posixdir.h
getcwd.o: ${BASHINCDIR}/memalloc.h ${BASHINCDIR}/ansi_stdlib.h
getenv.o: ${topdir}/bashansi.h ${BASHINCDIR}/ansi_stdlib.h
getenv.o: ${topdir}/shell.h ${topdir}/syntax.h ${topdir}/bashjmp.h ${BASHINCDIR}/posixjmp.h
getenv.o: ${topdir}/command.h ${BASHINCDIR}/stdc.h ${topdir}/error.h
getenv.o: ${topdir}/general.h ${topdir}/bashtypes.h ${topdir}/variables.h ${topdir}/conftypes.h
getenv.o: ${topdir}/array.h ${topdir}/hashlib.h ${topdir}/quit.h
getenv.o: ${topdir}/unwind_prot.h ${topdir}/dispose_cmd.h
getenv.o: ${topdir}/make_cmd.h ${topdir}/subst.h ${topdir}/sig.h
getenv.o: ${BUILD_DIR}/pathnames.h ${topdir}/externs.h
getenv.o: ${BUILD_DIR}/version.h
inet_aton.o: ${topdir}/bashansi.h ${BASHINCDIR}/ansi_stdlib.h
inet_aton.o: ${BASHINCDIR}/stdc.h
itos.o: ${topdir}/bashansi.h ${BASHINCDIR}/ansi_stdlib.h
itos.o: ${topdir}/shell.h ${topdir}/syntax.h ${topdir}/bashjmp.h ${BASHINCDIR}/posixjmp.h
itos.o: ${topdir}/command.h ${BASHINCDIR}/stdc.h ${topdir}/error.h
itos.o: ${topdir}/general.h ${topdir}/bashtypes.h ${topdir}/variables.h ${topdir}/conftypes.h
itos.o: ${topdir}/array.h ${topdir}/hashlib.h ${topdir}/quit.h
itos.o: ${topdir}/unwind_prot.h ${topdir}/dispose_cmd.h
itos.o: ${topdir}/make_cmd.h ${topdir}/subst.h ${topdir}/sig.h
itos.o: ${BUILD_DIR}/pathnames.h ${topdir}/externs.h ${BUILD_DIR}/version.h
makepath.o: ${topdir}/bashansi.h ${BASHINCDIR}/ansi_stdlib.h
makepath.o: ${topdir}/shell.h ${topdir}/syntax.h ${topdir}/bashjmp.h ${BASHINCDIR}/posixjmp.h
makepath.o: ${topdir}/command.h ${BASHINCDIR}/stdc.h ${topdir}/error.h
makepath.o: ${topdir}/general.h ${topdir}/bashtypes.h ${topdir}/variables.h ${topdir}/conftypes.h
makepath.o: ${topdir}/array.h ${topdir}/hashlib.h ${topdir}/quit.h
makepath.o: ${topdir}/unwind_prot.h ${topdir}/dispose_cmd.h
makepath.o: ${topdir}/make_cmd.h ${topdir}/subst.h ${topdir}/sig.h
makepath.o: ${BUILD_DIR}/pathnames.h ${topdir}/externs.h ${BUILD_DIR}/version.h
netconn.o: ${BASHINCDIR}/posixstat.h ${BASHINCDIR}/filecntl.h
netconn.o: ${topdir}/bashtypes.h
netopen.o: ${topdir}/bashansi.h ${BASHINCDIR}/ansi_stdlib.h ${topdir}/xmalloc.h
netopen.o: ${topdir}/shell.h ${topdir}/syntax.h ${topdir}/bashjmp.h ${BASHINCDIR}/posixjmp.h
netopen.o: ${topdir}/command.h ${BASHINCDIR}/stdc.h ${topdir}/error.h
netopen.o: ${topdir}/general.h ${topdir}/bashtypes.h ${topdir}/variables.h ${topdir}/conftypes.h
netopen.o: ${topdir}/array.h ${topdir}/hashlib.h ${topdir}/quit.h
netopen.o: ${topdir}/unwind_prot.h ${topdir}/dispose_cmd.h
netopen.o: ${topdir}/make_cmd.h ${topdir}/subst.h ${topdir}/sig.h
netopen.o: ${BUILD_DIR}/pathnames.h ${topdir}/externs.h ${BUILD_DIR}/version.h
netopen.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
oslib.o: ${topdir}/bashtypes.h ${topdir}/bashansi.h ${BASHINCDIR}/maxpath.h
oslib.o: ${topdir}/shell.h ${topdir}/syntax.h ${topdir}/bashjmp.h ${BASHINCDIR}/posixjmp.h
oslib.o: ${topdir}/command.h ${BASHINCDIR}/stdc.h ${topdir}/error.h
oslib.o: ${topdir}/general.h ${topdir}/bashtypes.h ${topdir}/variables.h ${topdir}/conftypes.h
oslib.o: ${topdir}/array.h ${topdir}/hashlib.h ${topdir}/quit.h
oslib.o: ${topdir}/unwind_prot.h ${topdir}/dispose_cmd.h
oslib.o: ${topdir}/make_cmd.h ${topdir}/subst.h ${topdir}/sig.h
oslib.o: ${BUILD_DIR}/pathnames.h ${topdir}/externs.h ${BUILD_DIR}/version.h
oslib.o: ${BASHINCDIR}/posixstat.h ${BASHINCDIR}/filecntl.h
oslib.o: ${BASHINCDIR}/ansi_stdlib.h ${BASHINCDIR}/chartypes.h
pathcanon.o: ${topdir}/bashtypes.h ${topdir}/bashansi.h ${BASHINCDIR}/maxpath.h
pathcanon.o: ${topdir}/shell.h ${topdir}/syntax.h ${topdir}/bashjmp.h ${BASHINCDIR}/posixjmp.h
pathcanon.o: ${topdir}/command.h ${BASHINCDIR}/stdc.h ${topdir}/error.h
pathcanon.o: ${topdir}/general.h ${topdir}/bashtypes.h ${topdir}/variables.h ${topdir}/conftypes.h
pathcanon.o: ${topdir}/array.h ${topdir}/hashlib.h ${topdir}/quit.h
pathcanon.o: ${topdir}/unwind_prot.h ${topdir}/dispose_cmd.h
pathcanon.o: ${topdir}/make_cmd.h ${topdir}/subst.h ${topdir}/sig.h
pathcanon.o: ${BUILD_DIR}/pathnames.h ${topdir}/externs.h ${BUILD_DIR}/version.h
pathcanon.o: ${BASHINCDIR}/posixstat.h ${BASHINCDIR}/filecntl.h
pathcanon.o: ${BASHINCDIR}/ansi_stdlib.h ${BASHINCDIR}/chartypes.h
pathphys.o: ${topdir}/bashtypes.h ${topdir}/bashansi.h ${BASHINCDIR}/maxpath.h
pathphys.o: ${topdir}/shell.h ${topdir}/syntax.h ${topdir}/bashjmp.h ${BASHINCDIR}/posixjmp.h
pathphys.o: ${topdir}/command.h ${BASHINCDIR}/stdc.h ${topdir}/error.h
pathphys.o: ${topdir}/general.h ${topdir}/bashtypes.h ${topdir}/variables.h ${topdir}/conftypes.h
pathphys.o: ${topdir}/array.h ${topdir}/hashlib.h ${topdir}/quit.h
pathphys.o: ${topdir}/unwind_prot.h ${topdir}/dispose_cmd.h
pathphys.o: ${topdir}/make_cmd.h ${topdir}/subst.h ${topdir}/sig.h
pathphys.o: ${BUILD_DIR}/pathnames.h ${topdir}/externs.h ${BUILD_DIR}/version.h
pathphys.o: ${BASHINCDIR}/posixstat.h ${BASHINCDIR}/filecntl.h
pathphys.o: ${BASHINCDIR}/ansi_stdlib.h ${BASHINCDIR}/chartypes.h
rename.o: ${topdir}/bashtypes.h ${BASHINCDIR}/stdc.h
rename.o: ${BASHINCDIR}/posixstat.h
setlinebuf.o: ${topdir}/xmalloc.h ${topdir}/bashansi.h
setlinebuf.o: ${BASHINCDIR}/ansi_stdlib.h ${BASHINCDIR}/stdc.h
shquote.o: ${BASHINCDIR}/stdc.h ${topdir}/bashansi.h
shquote.o: ${BASHINCDIR}/ansi_stdlib.h ${topdir}/xmalloc.h
shtty.o: ${BASHINCDIR}/shtty.h
shtty.o: ${BASHINCDIR}/stdc.h
snprintf.o: ${BASHINCDIR}/stdc.h ${topdir}/bashansi.h ${topdir}/xmalloc.h
snprintf.o: ${BASHINCDIR}/ansi_stdlib.h ${BASHINCDIR}/chartypes.h
snprintf.o: ${BASHINCDIR}/typemax.h
spell.o: ${topdir}/bashtypes.h
spell.o: ${BASHINCDIR}/posixstat.h ${BASHINCDIR}/posixdir.h
spell.o: ${BASHINCDIR}/ansi_stdlib.h
strcasecmp.o: ${BASHINCDIR}/stdc.h ${topdir}/bashansi.h
strcasecmp.o: ${BASHINCDIR}/ansi_stdlib.h ${BASHINCDIR}/chartypes.h
strerror.o: ${topdir}/bashtypes.h
strerror.o: ${topdir}/shell.h ${topdir}/syntax.h ${topdir}/bashjmp.h ${BASHINCDIR}/posixjmp.h
strerror.o: ${topdir}/command.h ${BASHINCDIR}/stdc.h ${topdir}/error.h
strerror.o: ${topdir}/general.h ${topdir}/bashtypes.h ${topdir}/variables.h ${topdir}/conftypes.h
strerror.o: ${topdir}/array.h ${topdir}/hashlib.h ${topdir}/quit.h
strerror.o: ${topdir}/unwind_prot.h ${topdir}/dispose_cmd.h
strerror.o: ${topdir}/make_cmd.h ${topdir}/subst.h ${topdir}/sig.h
strerror.o: ${BUILD_DIR}/pathnames.h ${topdir}/externs.h ${BUILD_DIR}/version.h
strindex.o: ${BASHINCDIR}/stdc.h ${topdir}/bashansi.h
strindex.o: ${BASHINCDIR}/ansi_stdlib.h ${BASHINCDIR}/chartypes.h
stringlist.o: ${topdir}/bashansi.h
stringlist.o: ${topdir}/shell.h ${topdir}/syntax.h ${topdir}/bashjmp.h ${BASHINCDIR}/posixjmp.h
stringlist.o: ${topdir}/command.h ${BASHINCDIR}/stdc.h ${topdir}/error.h
stringlist.o: ${topdir}/general.h ${topdir}/bashtypes.h ${topdir}/variables.h ${topdir}/conftypes.h
stringlist.o: ${topdir}/array.h ${topdir}/hashlib.h ${topdir}/quit.h
stringlist.o: ${topdir}/unwind_prot.h ${topdir}/dispose_cmd.h
stringlist.o: ${topdir}/make_cmd.h ${topdir}/subst.h ${topdir}/sig.h
stringlist.o: ${BUILD_DIR}/pathnames.h ${topdir}/externs.h ${BUILD_DIR}/version.h
stringvec.o: ${topdir}/bashansi.h ${BASHINCDIR}/chartypes.h
stringvec.o: ${topdir}/shell.h ${topdir}/syntax.h ${topdir}/bashjmp.h ${BASHINCDIR}/posixjmp.h
stringvec.o: ${topdir}/command.h ${BASHINCDIR}/stdc.h ${topdir}/error.h
stringvec.o: ${topdir}/general.h ${topdir}/bashtypes.h ${topdir}/variables.h ${topdir}/conftypes.h
stringvec.o: ${topdir}/array.h ${topdir}/hashlib.h ${topdir}/quit.h
stringvec.o: ${topdir}/unwind_prot.h ${topdir}/dispose_cmd.h
stringvec.o: ${topdir}/make_cmd.h ${topdir}/subst.h ${topdir}/sig.h
stringvec.o: ${BUILD_DIR}/pathnames.h ${topdir}/externs.h ${BUILD_DIR}/version.h
strpbrk.o: ${BASHINCDIR}/stdc.h
strtod.o: ${topdir}/bashansi.h
strtod.o: ${BASHINCDIR}/ansi_stdlib.h ${BASHINCDIR}/chartypes.h
strtoimax.o: ${BASHINCDIR}/stdc.h
strtol.o: ${topdir}/bashansi.h
strtol.o: ${BASHINCDIR}/ansi_stdlib.h ${BASHINCDIR}/chartypes.h
strtol.o: ${BASHINCDIR}/typemax.h
strtoll.o: ${topdir}/bashansi.h
strtoll.o: ${BASHINCDIR}/ansi_stdlib.h ${BASHINCDIR}/chartypes.h
strtoll.o: ${BASHINCDIR}/typemax.h
strtoul.o: ${topdir}/bashansi.h
strtoul.o: ${BASHINCDIR}/ansi_stdlib.h ${BASHINCDIR}/chartypes.h
strtoul.o: ${BASHINCDIR}/typemax.h
strtoull.o: ${topdir}/bashansi.h
strtoull.o: ${BASHINCDIR}/ansi_stdlib.h ${BASHINCDIR}/chartypes.h
strtoull.o: ${BASHINCDIR}/typemax.h
strtoumax.o: ${BASHINCDIR}/stdc.h
strtrans.o: ${topdir}/bashansi.h
strtrans.o: ${BASHINCDIR}/ansi_stdlib.h ${BASHINCDIR}/chartypes.h
strtrans.o: ${topdir}/shell.h ${topdir}/syntax.h ${topdir}/bashjmp.h ${BASHINCDIR}/posixjmp.h
strtrans.o: ${topdir}/command.h ${BASHINCDIR}/stdc.h ${topdir}/error.h
strtrans.o: ${topdir}/general.h ${topdir}/bashtypes.h ${topdir}/variables.h ${topdir}/conftypes.h
strtrans.o: ${topdir}/array.h ${topdir}/hashlib.h ${topdir}/quit.h
strtrans.o: ${topdir}/unwind_prot.h ${topdir}/dispose_cmd.h
strtrans.o: ${topdir}/make_cmd.h ${topdir}/subst.h ${topdir}/sig.h
strtrans.o: ${BUILD_DIR}/pathnames.h ${topdir}/externs.h ${BUILD_DIR}/version.h
times.o: ${BASHINCDIR}/systimes.h
times.o: ${BASHINCDIR}/posixtime.h
timeval.o: ${BASHINCDIR}/posixtime.h
tmpfile.o: ${topdir}/bashtypes.h
tmpfile.o: ${BASHINCDIR}/posixstat.h
tmpfile.o: ${BASHINCDIR}/filecntl.h
clock.o: ${BASHINCDIR}/posixtime.h
mailstat.o: ${topdir}/bashansi.h
mailstat.o: ${topdir}/bashtypes.h
mailstat.o: ${BASHINCDIR}/ansi_stdlib.h
mailstat.o: ${BASHINCDIR}/posixstat.h
mailstat.o: ${BASHINCDIR}/posixdir.h
mailstat.o: ${BASHINCDIR}/maxpath.h
fmtulong.o: ${topdir}/bashansi.h
fmtulong.o: ${BASHINCDIR}/ansi_stdlib.h
fmtulong.o: ${BASHINCDIR}/chartypes.h
fmtulong.o: ${BASHINCDIR}/stdc.h
fmtulong.o: ${BASHINCDIR}/typemax.h
fmtulong.o: ${topdir}/bashintl.h ${LIBINTL_H} ${BASHINCDIR}/gettext.h
fmtullong.o: ${topdir}/bashansi.h
fmtullong.o: ${BASHINCDIR}/ansi_stdlib.h
fmtullong.o: ${BASHINCDIR}/chartypes.h
fmtullong.o: ${BASHINCDIR}/stdc.h
fmtullong.o: ${BASHINCDIR}/typemax.h
fmtullong.o: ${topdir}/bashintl.h ${LIBINTL_H} ${BASHINCDIR}/gettext.h
fmtumax.o: ${topdir}/bashansi.h
fmtumax.o: ${BASHINCDIR}/ansi_stdlib.h
fmtumax.o: ${BASHINCDIR}/chartypes.h
fmtumax.o: ${BASHINCDIR}/stdc.h
fmtumax.o: ${BASHINCDIR}/typemax.h
fmtumax.o: ${topdir}/bashintl.h ${LIBINTL_H} ${BASHINCDIR}/gettext.h
xstrchr.o: ${topdir}/bashansi.h
xstrchr.o: ${BASHINCDIR}/ansi_stdlib.h
xstrchr.o: ${BASHINCDIR}/shmbutil.h
+39
View File
@@ -0,0 +1,39 @@
/* Copyright (C) 2004 Free Software Foundation, Inc.
This program 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, or (at your option) any
later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
#if !defined (HAVE_STRNLEN)
#include <stdc.h>
/* Find the length of S, but scan at most MAXLEN characters. If no '\0'
terminator is found within the first MAXLEN characters, return MAXLEN. */
size_t
strnlen (s, maxlen)
register const char *s;
size_t maxlen;
{
register const char *e;
size_t n;
for (e = s,n = 0; *e && n < maxlen; e++, n++)
;
return n;
}
#endif
+44
View File
@@ -0,0 +1,44 @@
/* Copyright (C) 1991, 1994 Free Software Foundation, Inc.
NOTE: The canonical source of this file is maintained with the GNU C Library.
Bugs can be reported to bug-glibc@prep.ai.mit.edu.
This program 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, or (at your option) any
later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
#if !defined (HAVE_STRPBRK)
#include <stdc.h>
/* Find the first ocurrence in S of any character in ACCEPT. */
char *
strpbrk (s, accept)
register const char *s;
register const char *accept;
{
while (*s != '\0')
{
const char *a = accept;
while (*a != '\0')
if (*a++ == *s)
return (char *) s;
++s;
}
return 0;
}
#endif
+16 -1
View File
@@ -50,6 +50,7 @@
#include "parser.h"
#include "mailcheck.h"
#include "test.h"
#include "builtins.h"
#include "builtins/common.h"
#include "builtins/builtext.h"
@@ -1028,6 +1029,7 @@ timespec: TIME
#define PST_ALEXPAND 0x0800 /* OK to expand aliases - unused */
#define PST_CMDTOKEN 0x1000 /* command token OK - unused */
#define PST_COMPASSIGN 0x2000 /* parsing x=(...) compound assignment */
#define PST_ASSIGNOK 0x4000 /* assignment statement ok in this context */
/* Initial size to allocate for tokens, and the
amount to grow them by. */
@@ -2567,6 +2569,8 @@ read_token (command)
parser_state &= ~PST_ALEXPNEXT;
#endif /* ALIAS */
parser_state &= ~PST_ASSIGNOK;
return (character);
}
@@ -2580,6 +2584,8 @@ read_token (command)
parser_state &= ~PST_ALEXPNEXT;
#endif /* ALIAS */
parser_state &= ~PST_ASSIGNOK;
peek_char = shell_getc (1);
if (character == peek_char)
{
@@ -2607,6 +2613,7 @@ read_token (command)
#if defined (ALIAS)
parser_state &= ~PST_ALEXPNEXT;
#endif /* ALIAS */
return (SEMI_SEMI);
case '&':
@@ -3515,7 +3522,7 @@ read_token_word (character)
goto next_character;
}
/* Identify possible compound array variable assignment. */
else if MBTEST(character == '=' && token_index > 0 && token_is_assignment (token, token_index))
else if MBTEST(character == '=' && token_index > 0 && (assignment_acceptable (last_read_token) || (parser_state & PST_ASSIGNOK)) && token_is_assignment (token, token_index))
{
peek_char = shell_getc (1);
if MBTEST(peek_char == '(') /* ) */
@@ -3642,6 +3649,14 @@ got_token:
the_word->flags |= W_NOSPLIT;
}
if (command_token_position (last_read_token))
{
struct builtin *b;
b = builtin_address_internal (token, 0);
if (b && (b->flags & ASSIGNMENT_BUILTIN))
parser_state |= PST_ASSIGNOK;
}
yylval.word = the_word;
result = ((the_word->flags & (W_ASSIGNMENT|W_NOSPLIT)) == (W_ASSIGNMENT|W_NOSPLIT))
+4874
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -25,6 +25,6 @@
regexp `^#define[ ]*PATCHLEVEL', since that's what support/mkversion.sh
looks for to find the patch level (for the sccs version string). */
#define PATCHLEVEL 1
#define PATCHLEVEL 0
#endif /* _PATCHLEVEL_H_ */
+30
View File
@@ -0,0 +1,30 @@
/* patchlevel.h -- current bash patch level */
/* Copyright (C) 2001 Free Software Foundation, Inc.
This file is part of GNU Bash, the Bourne Again SHell.
Bash 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, or (at your option)
any later version.
Bash is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
License for more details.
You should have received a copy of the GNU General Public License
along with Bash; see the file COPYING. If not, write to the Free
Software Foundation, 59 Temple Place, Suite 330, Boston, MA 02111 USA. */
#if !defined (_PATCHLEVEL_H_)
#define _PATCHLEVEL_H_
/* It's important that there be no other strings in this file that match the
regexp `^#define[ ]*PATCHLEVEL', since that's what support/mkversion.sh
looks for to find the patch level (for the sccs version string). */
#define PATCHLEVEL 1
#endif /* _PATCHLEVEL_H_ */
+2
View File
@@ -0,0 +1,2 @@
# Set of available languages.
en@quot en@boldquot
+357
View File
@@ -0,0 +1,357 @@
# Makefile for PO directory in any package using GNU gettext.
# Copyright (C) 1995-1997, 2000-2003 by Ulrich Drepper <drepper@gnu.ai.mit.edu>
#
# This file can be copied and used freely without restrictions. It can
# be used in projects which are not available under the GNU General Public
# License but which still want to provide support for the GNU gettext
# functionality.
# Please note that the actual code of GNU gettext is covered by the GNU
# General Public License and is *not* in the public domain.
PACKAGE = @PACKAGE_NAME@
VERSION = @PACKAGE_VERSION@
SHELL = /bin/sh
@SET_MAKE@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@
topdir = @top_srcdir@
BUILD_DIR = @BUILD_DIR@
prefix = @prefix@
exec_prefix = @exec_prefix@
datadir = @datadir@
localedir = $(datadir)/locale
gettextsrcdir = $(datadir)/gettext/po
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
MKINSTALLDIRS = @MKINSTALLDIRS@
mkinstalldirs = $(SHELL) $(MKINSTALLDIRS)
GMSGFMT = @GMSGFMT@
MSGFMT = @MSGFMT@
XGETTEXT = @XGETTEXT@
MSGMERGE = msgmerge
MSGMERGE_UPDATE = @MSGMERGE@ --update
MSGINIT = msginit
MSGCONV = msgconv
MSGFILTER = msgfilter
POFILES = @POFILES@
GMOFILES = @GMOFILES@
UPDATEPOFILES = @UPDATEPOFILES@
DUMMYPOFILES = @DUMMYPOFILES@
DISTFILES.common = Makefile.in.in remove-potcdate.sin \
$(DISTFILES.common.extra1) $(DISTFILES.common.extra2) $(DISTFILES.common.extra3)
DISTFILES = $(DISTFILES.common) Makevars POTFILES.in $(DOMAIN).pot stamp-po \
$(POFILES) $(GMOFILES) \
$(DISTFILES.extra1) $(DISTFILES.extra2) $(DISTFILES.extra3)
POTFILES = \
CATALOGS = @CATALOGS@
# Makevars gets inserted here. (Don't remove this line!)
.SUFFIXES:
.SUFFIXES: .po .gmo .mo .sed .sin .nop .po-update
.po.mo:
@echo "$(MSGFMT) -c -o $@ $<"; \
$(MSGFMT) -c -o t-$@ $< && mv t-$@ $@
.po.gmo:
@lang=`echo $* | sed -e 's,.*/,,'`; \
test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
echo "$${cdcmd}rm -f $${lang}.gmo && $(GMSGFMT) -c --statistics -o $${lang}.gmo $${lang}.po"; \
cd $(srcdir) && rm -f $${lang}.gmo && $(GMSGFMT) -c --statistics -o t-$${lang}.gmo $${lang}.po && mv t-$${lang}.gmo $${lang}.gmo
.sin.sed:
sed -e '/^#/d' $< > t-$@
mv t-$@ $@
all: all-@USE_NLS@
all-yes: stamp-po
all-no:
# stamp-po is a timestamp denoting the last time at which the CATALOGS have
# been loosely updated. Its purpose is that when a developer or translator
# checks out the package via CVS, and the $(DOMAIN).pot file is not in CVS,
# "make" will update the $(DOMAIN).pot and the $(CATALOGS), but subsequent
# invocations of "make" will do nothing. This timestamp would not be necessary
# if updating the $(CATALOGS) would always touch them; however, the rule for
# $(POFILES) has been designed to not touch files that don't need to be
# changed.
stamp-po: $(srcdir)/$(DOMAIN).pot
test -z "$(CATALOGS)" || $(MAKE) $(CATALOGS)
@echo "touch stamp-po"
@echo timestamp > stamp-poT
@mv stamp-poT stamp-po
# Note: Target 'all' must not depend on target '$(DOMAIN).pot-update',
# otherwise packages like GCC can not be built if only parts of the source
# have been downloaded.
# This target rebuilds $(DOMAIN).pot; it is an expensive operation.
# Note that $(DOMAIN).pot is not touched if it doesn't need to be changed.
$(DOMAIN).pot-update: $(POTFILES) $(srcdir)/POTFILES.in remove-potcdate.sed
$(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \
--add-comments=TRANSLATORS: $(XGETTEXT_OPTIONS) \
--files-from=$(srcdir)/POTFILES.in \
--copyright-holder='$(COPYRIGHT_HOLDER)' \
--msgid-bugs-address='$(MSGID_BUGS_ADDRESS)'
$(MAKE) $(MFLAGS) builtins.pot-update
test ! -f $(DOMAIN).po || { \
if test -f $(srcdir)/$(DOMAIN).pot; then \
sed -f remove-potcdate.sed < $(srcdir)/$(DOMAIN).pot > $(DOMAIN).1po && \
sed -f remove-potcdate.sed < $(DOMAIN).po > $(DOMAIN).2po && \
if cmp $(DOMAIN).1po $(DOMAIN).2po >/dev/null 2>&1; then \
rm -f $(DOMAIN).1po $(DOMAIN).2po $(DOMAIN).po; \
else \
rm -f $(DOMAIN).1po $(DOMAIN).2po $(srcdir)/$(DOMAIN).pot && \
mv $(DOMAIN).po $(srcdir)/$(DOMAIN).pot; \
fi; \
else \
mv $(DOMAIN).po $(srcdir)/$(DOMAIN).pot; \
fi; \
}
# This rule has no dependencies: we don't need to update $(DOMAIN).pot at
# every "make" invocation, only create it when it is missing.
# Only "make $(DOMAIN).pot-update" or "make dist" will force an update.
$(srcdir)/$(DOMAIN).pot:
$(MAKE) $(DOMAIN).pot-update
# This target rebuilds a PO file if $(DOMAIN).pot has changed.
# Note that a PO file is not touched if it doesn't need to be changed.
$(POFILES): $(srcdir)/$(DOMAIN).pot
@lang=`echo $@ | sed -e 's,.*/,,' -e 's/\.po$$//'`; \
test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
echo "$${cdcmd}$(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot"; \
cd $(srcdir) && $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot
install: install-exec install-data
install-exec:
install-data: install-data-@USE_NLS@
if test "$(PACKAGE)" = "gettext-tools"; then \
$(mkinstalldirs) $(DESTDIR)$(gettextsrcdir); \
for file in $(DISTFILES.common) Makevars.template; do \
$(INSTALL_DATA) $(srcdir)/$$file \
$(DESTDIR)$(gettextsrcdir)/$$file; \
done; \
for file in Makevars; do \
rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \
done; \
else \
: ; \
fi
install-data-no: all
install-data-yes: all
$(mkinstalldirs) $(DESTDIR)$(datadir)
@catalogs='$(CATALOGS)'; \
for cat in $$catalogs; do \
cat=`basename $$cat`; \
lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \
dir=$(localedir)/$$lang/LC_MESSAGES; \
$(mkinstalldirs) $(DESTDIR)$$dir; \
if test -r $$cat; then realcat=$$cat; else realcat=$(srcdir)/$$cat; fi; \
$(INSTALL_DATA) $$realcat $(DESTDIR)$$dir/$(DOMAIN).mo; \
echo "installing $$realcat as $(DESTDIR)$$dir/$(DOMAIN).mo"; \
for lc in '' $(EXTRA_LOCALE_CATEGORIES); do \
if test -n "$$lc"; then \
if (cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc 2>/dev/null) | grep ' -> ' >/dev/null; then \
link=`cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc | sed -e 's/^.* -> //'`; \
mv $(DESTDIR)$(localedir)/$$lang/$$lc $(DESTDIR)$(localedir)/$$lang/$$lc.old; \
mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \
(cd $(DESTDIR)$(localedir)/$$lang/$$lc.old && \
for file in *; do \
if test -f $$file; then \
ln -s ../$$link/$$file $(DESTDIR)$(localedir)/$$lang/$$lc/$$file; \
fi; \
done); \
rm -f $(DESTDIR)$(localedir)/$$lang/$$lc.old; \
else \
if test -d $(DESTDIR)$(localedir)/$$lang/$$lc; then \
:; \
else \
rm -f $(DESTDIR)$(localedir)/$$lang/$$lc; \
mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \
fi; \
fi; \
rm -f $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \
ln -s ../LC_MESSAGES/$(DOMAIN).mo $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo 2>/dev/null || \
ln $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(DOMAIN).mo $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo 2>/dev/null || \
cp -p $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(DOMAIN).mo $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \
echo "installing $$realcat link as $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo"; \
fi; \
done; \
done
install-strip: install
installdirs: installdirs-exec installdirs-data
installdirs-exec:
installdirs-data: installdirs-data-@USE_NLS@
if test "$(PACKAGE)" = "gettext-tools"; then \
$(mkinstalldirs) $(DESTDIR)$(gettextsrcdir); \
else \
: ; \
fi
installdirs-data-no:
installdirs-data-yes:
$(mkinstalldirs) $(DESTDIR)$(datadir)
@catalogs='$(CATALOGS)'; \
for cat in $$catalogs; do \
cat=`basename $$cat`; \
lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \
dir=$(localedir)/$$lang/LC_MESSAGES; \
$(mkinstalldirs) $(DESTDIR)$$dir; \
for lc in '' $(EXTRA_LOCALE_CATEGORIES); do \
if test -n "$$lc"; then \
if (cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc 2>/dev/null) | grep ' -> ' >/dev/null; then \
link=`cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc | sed -e 's/^.* -> //'`; \
mv $(DESTDIR)$(localedir)/$$lang/$$lc $(DESTDIR)$(localedir)/$$lang/$$lc.old; \
mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \
(cd $(DESTDIR)$(localedir)/$$lang/$$lc.old && \
for file in *; do \
if test -f $$file; then \
ln -s ../$$link/$$file $(DESTDIR)$(localedir)/$$lang/$$lc/$$file; \
fi; \
done); \
rm -f $(DESTDIR)$(localedir)/$$lang/$$lc.old; \
else \
if test -d $(DESTDIR)$(localedir)/$$lang/$$lc; then \
:; \
else \
rm -f $(DESTDIR)$(localedir)/$$lang/$$lc; \
mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \
fi; \
fi; \
fi; \
done; \
done
# Define this as empty until I found a useful application.
installcheck:
uninstall: uninstall-exec uninstall-data
uninstall-exec:
uninstall-data: uninstall-data-@USE_NLS@
if test "$(PACKAGE)" = "gettext-tools"; then \
for file in $(DISTFILES.common) Makevars.template; do \
rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \
done; \
else \
: ; \
fi
uninstall-data-no:
uninstall-data-yes:
catalogs='$(CATALOGS)'; \
for cat in $$catalogs; do \
cat=`basename $$cat`; \
lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \
for lc in LC_MESSAGES $(EXTRA_LOCALE_CATEGORIES); do \
rm -f $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \
done; \
done
check: all
info dvi ps pdf html tags TAGS ctags CTAGS ID:
mostlyclean:
rm -f remove-potcdate.sed
rm -f stamp-poT
rm -f core core.* $(DOMAIN).po $(DOMAIN).1po $(DOMAIN).2po *.new.po
rm -fr *.o
clean: mostlyclean
distclean: clean
rm -f Makefile Makefile.in POTFILES *.mo
maintainer-clean: distclean
@echo "This command is intended for maintainers to use;"
@echo "it deletes files that may require special tools to rebuild."
rm -f stamp-po $(GMOFILES)
distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
dist distdir:
$(MAKE) update-po
@$(MAKE) dist2
# This is a separate target because 'update-po' must be executed before.
dist2: $(DISTFILES)
dists="$(DISTFILES)"; \
if test "$(PACKAGE)" = "gettext-tools"; then \
dists="$$dists Makevars.template"; \
fi; \
if test -f $(srcdir)/ChangeLog; then \
dists="$$dists ChangeLog"; \
fi; \
for i in 0 1 2 3 4 5 6 7 8 9; do \
if test -f $(srcdir)/ChangeLog.$$i; then \
dists="$$dists ChangeLog.$$i"; \
fi; \
done; \
if test -f $(srcdir)/LINGUAS; then dists="$$dists LINGUAS"; fi; \
for file in $$dists; do \
if test -f $$file; then \
cp -p $$file $(distdir); \
else \
cp -p $(srcdir)/$$file $(distdir); \
fi; \
done
update-po: Makefile
$(MAKE) $(DOMAIN).pot-update
test -z "$(UPDATEPOFILES)" || $(MAKE) $(UPDATEPOFILES)
$(MAKE) update-gmo
# General rule for updating PO files.
.nop.po-update:
@lang=`echo $@ | sed -e 's/\.po-update$$//'`; \
if test "$(PACKAGE)" = "gettext-tools"; then PATH=`pwd`/../src:$$PATH; fi; \
tmpdir=`pwd`; \
echo "$$lang:"; \
test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
echo "$${cdcmd}$(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
cd $(srcdir); \
if $(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$tmpdir/$$lang.new.po; then \
if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
rm -f $$tmpdir/$$lang.new.po; \
else \
if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \
:; \
else \
echo "msgmerge for $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \
exit 1; \
fi; \
fi; \
else \
echo "msgmerge for $$lang.po failed!" 1>&2; \
rm -f $$tmpdir/$$lang.new.po; \
fi
$(DUMMYPOFILES):
update-gmo: Makefile $(GMOFILES)
@:
Makefile: Makefile.in.in $(top_builddir)/config.status @POMAKEFILEDEPS@ $(srcdir)/Rules-builtins
cd $(top_builddir) \
&& CONFIG_FILES=$(subdir)/$@.in CONFIG_HEADERS= \
$(SHELL) ./config.status
force:
# Tell versions [3.59,3.63) of GNU make not to export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
+41
View File
@@ -0,0 +1,41 @@
# Makefile variables for PO directory in any package using GNU gettext.
# Usually the message domain is the same as the package name.
DOMAIN = $(PACKAGE)
# These two variables depend on the location of this directory.
subdir = po
top_builddir = $(BUILD_DIR)
# These options get passed to xgettext.
XGETTEXT_OPTIONS = --keyword=_ --keyword=N_ -C
# This is the copyright holder that gets inserted into the header of the
# $(DOMAIN).pot file. Set this to the copyright holder of the surrounding
# package. (Note that the msgstr strings, extracted from the package's
# sources, belong to the copyright holder of the package.) Translators are
# expected to transfer the copyright for their translations to this person
# or entity, or to disclaim their copyright. The empty string stands for
# the public domain; in this case the translators are expected to disclaim
# their copyright.
COPYRIGHT_HOLDER = Free Software Foundation, Inc.
# This is the email address or URL to which the translators shall report
# bugs in the untranslated strings:
# - Strings which are not entire sentences, see the maintainer guidelines
# in the GNU gettext documentation, section 'Preparing Strings'.
# - Strings which use unclear terms or require additional context to be
# understood.
# - Strings which make invalid assumptions about notation of date, time or
# money.
# - Pluralisation problems.
# - Incorrect English spelling.
# - Incorrect formatting.
# It can be your email address, or a mailing list address where translators
# can write to without being subscribed, or the URL of a web page through
# which the translators can contact you.
MSGID_BUGS_ADDRESS = bug-bash@gnu.org
# This is the list of locale categories, beyond LC_MESSAGES, for which the
# message catalogs shall be used. It is usually empty.
EXTRA_LOCALE_CATEGORIES =
+41
View File
@@ -0,0 +1,41 @@
# Makefile variables for PO directory in any package using GNU gettext.
# Usually the message domain is the same as the package name.
DOMAIN = $(PACKAGE)
# These two variables depend on the location of this directory.
subdir = po
top_builddir = ..
# These options get passed to xgettext.
XGETTEXT_OPTIONS = --keyword=_ --keyword=N_
# This is the copyright holder that gets inserted into the header of the
# $(DOMAIN).pot file. Set this to the copyright holder of the surrounding
# package. (Note that the msgstr strings, extracted from the package's
# sources, belong to the copyright holder of the package.) Translators are
# expected to transfer the copyright for their translations to this person
# or entity, or to disclaim their copyright. The empty string stands for
# the public domain; in this case the translators are expected to disclaim
# their copyright.
COPYRIGHT_HOLDER = Free Software Foundation, Inc.
# This is the email address or URL to which the translators shall report
# bugs in the untranslated strings:
# - Strings which are not entire sentences, see the maintainer guidelines
# in the GNU gettext documentation, section 'Preparing Strings'.
# - Strings which use unclear terms or require additional context to be
# understood.
# - Strings which make invalid assumptions about notation of date, time or
# money.
# - Pluralisation problems.
# - Incorrect English spelling.
# - Incorrect formatting.
# It can be your email address, or a mailing list address where translators
# can write to without being subscribed, or the URL of a web page through
# which the translators can contact you.
MSGID_BUGS_ADDRESS =
# This is the list of locale categories, beyond LC_MESSAGES, for which the
# message catalogs shall be used. It is usually empty.
EXTRA_LOCALE_CATEGORIES =
+76
View File
@@ -0,0 +1,76 @@
# List of source files containing translatable strings.
# Copyright (C) 2004 Free Software Foundation, Inc.
arrayfunc.c
bashhist.c
bashline.c
braces.c
builtins/bind.def
builtins/break.def
builtins/caller.def
builtins/cd.def
builtins/common.c
builtins/complete.def
builtins/declare.def
builtins/enable.def
builtins/evalfile.c
builtins/exec.def
builtins/exit.def
builtins/fc.def
builtins/fg_bg.def
builtins/getopt.c
builtins/hash.def
builtins/help.def
builtins/history.def
builtins/inlib.def
builtins/jobs.def
builtins/kill.def
builtins/let.def
builtins/mkbuiltins.c
builtins/printf.def
builtins/pushd.def
builtins/read.def
builtins/return.def
builtins/set.def
builtins/setattr.def
builtins/shift.def
builtins/shopt.def
builtins/source.def
builtins/suspend.def
builtins/type.def
builtins/ulimit.def
builtins/umask.def
error.c
eval.c
execute_cmd.c
expr.c
general.c
input.c
jobs.c
lib/malloc/malloc.c
lib/malloc/stats.c
lib/malloc/table.c
lib/malloc/watch.c
lib/sh/fmtulong.c
lib/sh/netopen.c
mailcheck.c
make_cmd.c
nojobs.c
parse.y
pcomplete.c
pcomplib.c
print_cmd.c
redir.c
shell.c
sig.c
siglist.c
subst.c
test.c
trap.c
variables.c
version.c
xmalloc.c
# Apparently gettext's defaults cannot handle files that exist outside of the
# source directory, like in the build directory
#../builtins/builtins.c
+1
View File
@@ -0,0 +1 @@
This apparently requires GNU sed
+19
View File
@@ -0,0 +1,19 @@
#
# Update the strings from the builtins' long docs. Must be called when
# bash.pot exists, in the middle of the bash.pot-update recipe
#
builtins.pot-update: $(top_builddir)/builtins/builtins.c
$(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_builddir)/builtins \
$(XGETTEXT_OPTIONS) --omit-header \
--copyright-holder='$(COPYRIGHT_HOLDER)' \
--join-existing \
builtins.c
# This rule has no dependencies: we don't need to update builtins.pot at
# every "make" invocation, only create it when it is missing.
# Only "make builtins.pot-update" or "make dist" will force an update.
$(srcdir)/builtins.pot:
$(MAKE) builtins.pot-update
xdist:
$(MAKE) update-po
+42
View File
@@ -0,0 +1,42 @@
# Special Makefile rules for English message catalogs with quotation marks.
DISTFILES.common.extra1 = quot.sed boldquot.sed en@quot.header en@boldquot.header insert-header.sin Rules-quot
.SUFFIXES: .insert-header .po-update-en
en@quot.po-update: en@quot.po-update-en
en@boldquot.po-update: en@boldquot.po-update-en
.insert-header.po-update-en:
@lang=`echo $@ | sed -e 's/\.po-update-en$$//'`; \
if test "$(PACKAGE)" = "gettext"; then PATH=`pwd`/../src:$$PATH; GETTEXTLIBDIR=`cd $(top_srcdir)/src && pwd`; export GETTEXTLIBDIR; fi; \
tmpdir=`pwd`; \
echo "$$lang:"; \
ll=`echo $$lang | sed -e 's/@.*//'`; \
LC_ALL=C; export LC_ALL; \
cd $(srcdir); \
if $(MSGINIT) -i $(DOMAIN).pot --no-translator -l $$ll -o - 2>/dev/null | sed -f $$tmpdir/$$lang.insert-header | $(MSGCONV) -t UTF-8 | $(MSGFILTER) sed -f `echo $$lang | sed -e 's/.*@//'`.sed 2>/dev/null > $$tmpdir/$$lang.new.po; then \
if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
rm -f $$tmpdir/$$lang.new.po; \
else \
if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \
:; \
else \
echo "creation of $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \
exit 1; \
fi; \
fi; \
else \
echo "creation of $$lang.po failed!" 1>&2; \
rm -f $$tmpdir/$$lang.new.po; \
fi
en@quot.insert-header: insert-header.sin
sed -e '/^#/d' -e 's/HEADER/en@quot.header/g' $(srcdir)/insert-header.sin > en@quot.insert-header
en@boldquot.insert-header: insert-header.sin
sed -e '/^#/d' -e 's/HEADER/en@boldquot.header/g' $(srcdir)/insert-header.sin > en@boldquot.insert-header
mostlyclean: mostlyclean-quot
mostlyclean-quot:
rm -f *.insert-header
+5623
View File
File diff suppressed because it is too large Load Diff
+4174
View File
File diff suppressed because it is too large Load Diff
+10
View File
@@ -0,0 +1,10 @@
s/"\([^"]*\)"/“\1”/g
s/`\([^`']*\)'/\1/g
s/ '\([^`']*\)' / \1 /g
s/ '\([^`']*\)'$/ \1/g
s/^'\([^`']*\)' /\1 /g
s/“”/""/g
s///g
s//”/g
s///g
s///g
+2845
View File
File diff suppressed because it is too large Load Diff
Binary file not shown.
+25
View File
@@ -0,0 +1,25 @@
# All this catalog "translates" are quotation characters.
# The msgids must be ASCII and therefore cannot contain real quotation
# characters, only substitutes like grave accent (0x60), apostrophe (0x27)
# and double quote (0x22). These substitutes look strange; see
# http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
#
# This catalog translates grave accent (0x60) and apostrophe (0x27) to
# left single quotation mark (U+2018) and right single quotation mark (U+2019).
# It also translates pairs of apostrophe (0x27) to
# left single quotation mark (U+2018) and right single quotation mark (U+2019)
# and pairs of quotation mark (0x22) to
# left double quotation mark (U+201C) and right double quotation mark (U+201D).
#
# When output to an UTF-8 terminal, the quotation characters appear perfectly.
# When output to an ISO-8859-1 terminal, the single quotation marks are
# transliterated to apostrophes (by iconv in glibc 2.2 or newer) or to
# grave/acute accent (by libiconv), and the double quotation marks are
# transliterated to 0x22.
# When output to an ASCII terminal, the single quotation marks are
# transliterated to apostrophes, and the double quotation marks are
# transliterated to 0x22.
#
# This catalog furthermore displays the text between the quotation marks in
# bold face, assuming the VT100/XTerm escape sequences.
#
File diff suppressed because it is too large Load Diff
Binary file not shown.
+22
View File
@@ -0,0 +1,22 @@
# All this catalog "translates" are quotation characters.
# The msgids must be ASCII and therefore cannot contain real quotation
# characters, only substitutes like grave accent (0x60), apostrophe (0x27)
# and double quote (0x22). These substitutes look strange; see
# http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
#
# This catalog translates grave accent (0x60) and apostrophe (0x27) to
# left single quotation mark (U+2018) and right single quotation mark (U+2019).
# It also translates pairs of apostrophe (0x27) to
# left single quotation mark (U+2018) and right single quotation mark (U+2019)
# and pairs of quotation mark (0x22) to
# left double quotation mark (U+201C) and right double quotation mark (U+201D).
#
# When output to an UTF-8 terminal, the quotation characters appear perfectly.
# When output to an ISO-8859-1 terminal, the single quotation marks are
# transliterated to apostrophes (by iconv in glibc 2.2 or newer) or to
# grave/acute accent (by libiconv), and the double quotation marks are
# transliterated to 0x22.
# When output to an ASCII terminal, the single quotation marks are
# transliterated to apostrophes, and the double quotation marks are
# transliterated to 0x22.
#
+4283
View File
File diff suppressed because it is too large Load Diff
+23
View File
@@ -0,0 +1,23 @@
# Sed script that inserts the file called HEADER before the header entry.
#
# At each occurrence of a line starting with "msgid ", we execute the following
# commands. At the first occurrence, insert the file. At the following
# occurrences, do nothing. The distinction between the first and the following
# occurrences is achieved by looking at the hold space.
/^msgid /{
x
# Test if the hold space is empty.
s/m/m/
ta
# Yes it was empty. First occurrence. Read the file.
r HEADER
# Output the file's contents by reading the next line. But don't lose the
# current line while doing this.
g
N
bb
:a
# The hold space was nonempty. Following occurrences. Do nothing.
x
:b
}
+6
View File
@@ -0,0 +1,6 @@
s/"\([^"]*\)"/“\1”/g
s/`\([^`']*\)'/\1/g
s/ '\([^`']*\)' / \1 /g
s/ '\([^`']*\)'$/ \1/g
s/^'\([^`']*\)' /\1 /g
s/“”/""/g
+133
View File
@@ -0,0 +1,133 @@
#: lib/readline/bind.c:878
#, c-format
msgid "readline: %s: line %d: %s\n"
msgstr ""
#: lib/readline/bind.c:881
#, c-format
msgid "readline: %s\n"
msgstr ""
#: lib/readline/bind.c:994
msgid "$else found without matching $if"
msgstr ""
#: lib/readline/bind.c:1024
msgid "$endif without matching $if"
msgstr ""
#: lib/readline/bind.c:1101
msgid "unknown parser directive"
msgstr ""
#: lib/readline/bind.c:1162
msgid "no closing `\"' in key binding"
msgstr ""
#: lib/readline/bind.c:1977
#, c-format
msgid "# %s (not bound)\n"
msgstr ""
#: lib/readline/bind.c:1995
#, c-format
msgid "%s is not bound to any keys\n"
msgstr ""
#: lib/readline/bind.c:2001
#, c-format
msgid "%s can be found on "
msgstr ""
#: lib/readline/bind.c:2128
#, c-format
msgid "%s is set to `%s'\n"
msgstr ""
#: lib/readline/bind.c:2146
#, c-format
msgid "bell-style is set to `%s'\n"
msgstr ""
#: lib/readline/bind.c:2152
#, c-format
msgid "comment-begin is set to `%s'\n"
msgstr ""
#: lib/readline/bind.c:2158
#, c-format
msgid "completion-query-items is set to `%d'\n"
msgstr ""
#: lib/readline/bind.c:2164
#, c-format
msgid "editing-mode is set to `%s'\n"
msgstr ""
#: lib/readline/bind.c:2176
#, c-format
msgid "isearch-terminators is set to \"%s\"\n"
msgstr ""
#: lib/readline/bind.c:2188
#, c-format
msgid "keymap is set to `%s'\n"
msgstr ""
#: lib/readline/callback.c:105
msgid "readline: readline_callback_read_char() called with no handler!\r\n"
msgstr ""
#: lib/readline/complete.c:1342
#, c-format
msgid "Display all %d possibilities? (y or n)"
msgstr ""
#: lib/readline/complete.c:1681
#, c-format
msgid ""
"\r\n"
"readline: bad value %d for what_to_do in rl_complete\n"
msgstr ""
#: lib/readline/display.c:1924
#, c-format
msgid "readline: debug: insert_some_chars: count (%d) != col (%d)\n"
msgstr ""
#: lib/readline/histexpand.c:377
msgid "event not found"
msgstr ""
#: lib/readline/histexpand.c:381
msgid "bad word specifier"
msgstr ""
#: lib/readline/histexpand.c:385
msgid "substitution failed"
msgstr ""
#: lib/readline/histexpand.c:389
msgid "unrecognized history modifier"
msgstr ""
#: lib/readline/histexpand.c:393
msgid "no previous substitution"
msgstr ""
#: lib/readline/histexpand.c:397
msgid "unknown expansion error"
msgstr ""
#: lib/readline/rltty.c:464
#, c-format
msgid "readline: warning: %s\n"
msgstr ""
#: lib/readline/rltty.c:475
msgid "turning on OPOST for terminal\r"
msgstr ""
#: lib/readline/rltty.c:501
msgid "turning off output flushing"
msgstr ""
+19
View File
@@ -0,0 +1,19 @@
# Sed script that remove the POT-Creation-Date line in the header entry
# from a POT file.
#
# The distinction between the first and the following occurrences of the
# pattern is achieved by looking at the hold space.
/^"POT-Creation-Date: .*"$/{
x
# Test if the hold space is empty.
s/P/P/
ta
# Yes it was empty. First occurrence. Remove the line.
g
d
bb
:a
# The hold space was nonempty. Following occurrences. Do nothing.
x
:b
}
BIN
View File
Binary file not shown.
+347 -355
View File
File diff suppressed because it is too large Load Diff
+2938
View File
File diff suppressed because it is too large Load Diff
+3 -2
View File
@@ -4899,8 +4899,9 @@ verify_substring_values (value, substr, vtype, e1p, e2p)
#if defined (ARRAY_VARS)
case VT_ARRAYVAR:
a = (ARRAY *)value;
/* For arrays, the first value deals with array indices. */
len = array_max_index (a); /* arrays index from 0 to n - 1 */
/* For arrays, the first value deals with array indices. Negative
offsets count from one past the array's maximum index. */
len = array_max_index (a) + (*e1p < 0); /* arrays index from 0 to n - 1 */
break;
#endif
}
+6 -6
View File
@@ -96,11 +96,11 @@ echo "/* Version control for the shell. This file gets changed when you say"
echo " \`make version.h' to the Makefile. It is created by mkversion. */"
# Output the distribution version. Single numbers are converted to x.00.
# Allow, as a special case, `[:digit:].[:digit:][:digit:][:alpha:]' for
# intermediate versions (e.g., `2.05a').
# Allow, as a special case, `[:digit:].[:digit:][:alpha:]' for
# intermediate versions (e.g., `2.5a').
# Any characters other than digits and `.' are invalid.
case "$dist_version" in
[0-9].[0-9][0-9][a-z]) ;; # special case
[0-9].[0-9][a-z]) ;; # special case
*[!0-9.]*) echo "mkversion.sh: ${dist_version}: bad distribution version" >&2
exit 1 ;;
*.*) ;;
@@ -112,9 +112,9 @@ dist_major=`echo $dist_version | sed 's:\..*$::'`
dist_minor=`echo $dist_version | sed 's:^.*\.::'`
case "$dist_minor" in
"") dist_minor=00 ;;
[a-z]) dist_minor=00${dist_minor} ;;
?) dist_minor=0${dist_minor} ;;
"") dist_minor=0 ;;
[a-z]) dist_minor=0${dist_minor} ;;
?) dist_minor=${dist_minor} ;;
*) ;;
esac
+164
View File
@@ -0,0 +1,164 @@
#! /bin/sh
# Simple program to make new version numbers for the shell.
# Big deal, but it was getting out of hand to do everything
# in the makefile. This creates a file named by the -o option,
# otherwise everything is echoed to the standard output.
# Copyright (C) 1996-2002 Free Software Foundation, Inc.
#
# This program 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, or (at your option)
# any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111 USA.
PROGNAME=`basename $0`
USAGE="$PROGNAME [-b] [-S srcdir] -d version -p patchlevel [-s status] [-o outfile]"
source_dir="."
while [ $# -gt 0 ]; do
case "$1" in
-o) shift; OUTFILE=$1; shift ;;
-b) shift; inc_build=yes ;;
-s) shift; rel_status=$1; shift ;;
-p) shift; patch_level=$1; shift ;;
-d) shift; dist_version=$1; shift ;;
-S) shift; source_dir="$1"; shift ;;
*) echo "$PROGNAME: usage: $USAGE" >&2 ; exit 2 ;;
esac
done
# Required arguments
if [ -z "$dist_version" ]; then
echo "${PROGNAME}: required argument -d missing" >&2
echo "$PROGNAME: usage: $USAGE" >&2
exit 1
fi
#if [ -z "$patch_level" ]; then
# echo "${PROGNAME}: required argument -p missing" >&2
# echo "$PROGNAME: usage: $USAGE" >&2
# exit 1
#fi
# Defaults
if [ -z "$rel_status" ]; then
rel_status="release"
fi
build_ver=
if [ -r .build ]; then
build_ver=`cat .build`
fi
if [ -z "$build_ver" ]; then
build_ver=0
fi
# increment the build version if that's what's required
if [ -n "$inc_build" ]; then
build_ver=`expr $build_ver + 1`
fi
# what's the patch level?
if [ -z "$patch_level" ]; then
patchlevel_h=$source_dir/patchlevel.h
if [ -s $patchlevel_h ]; then
patch_level=`cat $patchlevel_h | grep '^#define[ ]*PATCHLEVEL' | awk '{print $NF}'`
fi
fi
if [ -z "$patch_level" ]; then
patch_level=0
fi
# If we have an output file specified, make it the standard output
if [ -n "$OUTFILE" ]; then
if exec >$OUTFILE; then
:
else
echo "${PROGNAME}: cannot redirect standard output to $OUTFILE" >&2
exit 1
fi
fi
# Output the leading comment.
echo "/* Version control for the shell. This file gets changed when you say"
echo " \`make version.h' to the Makefile. It is created by mkversion. */"
# Output the distribution version. Single numbers are converted to x.00.
# Allow, as a special case, `[:digit:].[:digit:][:digit:][:alpha:]' for
# intermediate versions (e.g., `2.05a').
# Any characters other than digits and `.' are invalid.
case "$dist_version" in
[0-9].[0-9][0-9][a-z]) ;; # special case
*[!0-9.]*) echo "mkversion.sh: ${dist_version}: bad distribution version" >&2
exit 1 ;;
*.*) ;;
*) dist_version=${dist_version}.00 ;;
esac
dist_major=`echo $dist_version | sed 's:\..*$::'`
[ -z "${dist_major}" ] && dist_major=0
dist_minor=`echo $dist_version | sed 's:^.*\.::'`
case "$dist_minor" in
"") dist_minor=00 ;;
[a-z]) dist_minor=00${dist_minor} ;;
?) dist_minor=0${dist_minor} ;;
*) ;;
esac
#float_dist=`echo $dist_version | awk '{printf "%.2f\n", $1}'`
float_dist=${dist_major}.${dist_minor}
echo
echo "/* The distribution version number of this shell. */"
echo "#define DISTVERSION \"${float_dist}\""
# Output the patch level
#echo
#echo "/* The patch level of this version of the shell. */"
#echo "#define PATCHLEVEL ${patch_level}"
# Output the build version
echo
echo "/* The last built version of this shell. */"
echo "#define BUILDVERSION ${build_ver}"
# Output the release status
echo
echo "/* The release status of this shell. */"
echo "#define RELSTATUS \"${rel_status}\""
# Output the SCCS version string
sccs_string="${float_dist}.${patch_level}(${build_ver}) ${rel_status} GNU"
echo
echo "/* A version string for use by sccs and the what command. */"
echo "#define SCCSVERSION \"@(#)Bash version ${sccs_string}\""
# extern function declarations
#echo
#echo '/* Functions from version.c. */'
#echo 'extern char *shell_version_string __P((void));'
#echo 'extern void show_shell_version __P((int));'
if [ -n "$inc_build" ]; then
# Make sure we can write to .build
if [ -f .build ] && [ ! -w .build ]; then
echo "$PROGNAME: cannot write to .build, not incrementing build version" >&2
else
echo "$build_ver" > .build
fi
fi
exit 0
+164
View File
@@ -0,0 +1,164 @@
#! /bin/sh
# Simple program to make new version numbers for the shell.
# Big deal, but it was getting out of hand to do everything
# in the makefile. This creates a file named by the -o option,
# otherwise everything is echoed to the standard output.
# Copyright (C) 1996-2002 Free Software Foundation, Inc.
#
# This program 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, or (at your option)
# any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111 USA.
PROGNAME=`basename $0`
USAGE="$PROGNAME [-b] [-S srcdir] -d version -p patchlevel [-s status] [-o outfile]"
source_dir="."
while [ $# -gt 0 ]; do
case "$1" in
-o) shift; OUTFILE=$1; shift ;;
-b) shift; inc_build=yes ;;
-s) shift; rel_status=$1; shift ;;
-p) shift; patch_level=$1; shift ;;
-d) shift; dist_version=$1; shift ;;
-S) shift; source_dir="$1"; shift ;;
*) echo "$PROGNAME: usage: $USAGE" >&2 ; exit 2 ;;
esac
done
# Required arguments
if [ -z "$dist_version" ]; then
echo "${PROGNAME}: required argument -d missing" >&2
echo "$PROGNAME: usage: $USAGE" >&2
exit 1
fi
#if [ -z "$patch_level" ]; then
# echo "${PROGNAME}: required argument -p missing" >&2
# echo "$PROGNAME: usage: $USAGE" >&2
# exit 1
#fi
# Defaults
if [ -z "$rel_status" ]; then
rel_status="release"
fi
build_ver=
if [ -r .build ]; then
build_ver=`cat .build`
fi
if [ -z "$build_ver" ]; then
build_ver=0
fi
# increment the build version if that's what's required
if [ -n "$inc_build" ]; then
build_ver=`expr $build_ver + 1`
fi
# what's the patch level?
if [ -z "$patch_level" ]; then
patchlevel_h=$source_dir/patchlevel.h
if [ -s $patchlevel_h ]; then
patch_level=`cat $patchlevel_h | grep '^#define[ ]*PATCHLEVEL' | awk '{print $NF}'`
fi
fi
if [ -z "$patch_level" ]; then
patch_level=0
fi
# If we have an output file specified, make it the standard output
if [ -n "$OUTFILE" ]; then
if exec >$OUTFILE; then
:
else
echo "${PROGNAME}: cannot redirect standard output to $OUTFILE" >&2
exit 1
fi
fi
# Output the leading comment.
echo "/* Version control for the shell. This file gets changed when you say"
echo " \`make version.h' to the Makefile. It is created by mkversion. */"
# Output the distribution version. Single numbers are converted to x.00.
# Allow, as a special case, `[:digit:].[:digit:][:digit:][:alpha:]' for
# intermediate versions (e.g., `2.05a').
# Any characters other than digits and `.' are invalid.
case "$dist_version" in
[0-9].[0-9][0-9][a-z]) ;; # special case
*[!0-9.]*) echo "mkversion.sh: ${dist_version}: bad distribution version" >&2
exit 1 ;;
*.*) ;;
*) dist_version=${dist_version}.00 ;;
esac
dist_major=`echo $dist_version | sed 's:\..*$::'`
[ -z "${dist_major}" ] && dist_major=0
dist_minor=`echo $dist_version | sed 's:^.*\.::'`
case "$dist_minor" in
"") dist_minor=00 ;;
[a-z]) dist_minor=00${dist_minor} ;;
?) dist_minor=0${dist_minor} ;;
*) ;;
esac
#float_dist=`echo $dist_version | awk '{printf "%.2f\n", $1}'`
float_dist=${dist_major}.${dist_minor}
echo
echo "/* The distribution version number of this shell. */"
echo "#define DISTVERSION \"${float_dist}\""
# Output the patch level
#echo
#echo "/* The patch level of this version of the shell. */"
#echo "#define PATCHLEVEL ${patch_level}"
# Output the build version
echo
echo "/* The last built version of this shell. */"
echo "#define BUILDVERSION ${build_ver}"
# Output the release status
echo
echo "/* The release status of this shell. */"
echo "#define RELSTATUS \"${rel_status}\""
# Output the SCCS version string
sccs_string="${float_dist}.${patch_level}(${build_ver}) ${rel_status} GNU"
echo
echo "/* A version string for use by sccs and the what command. */"
echo "#define SCCSVERSION \"@(#)Bash version ${sccs_string}\""
# extern function declarations
#echo
#echo '/* Functions from version.c. */'
#echo 'extern char *shell_version_string __P((void));'
#echo 'extern void show_shell_version __P((int));'
if [ -n "$inc_build" ]; then
# Make sure we can write to .build
if [ -f .build ] && [ ! -w .build ]; then
echo "$PROGNAME: cannot write to .build, not incrementing build version" >&2
else
echo "$build_ver" > .build
fi
fi
exit 0
+1 -1
View File
@@ -1,4 +1,4 @@
BUILD_DIR=/usr/local/build/bash/bash-current
BUILD_DIR=/usr/local/build/chet/bash/bash-current
THIS_SH=$BUILD_DIR/bash
PATH=$PATH:$BUILD_DIR
+2 -2
View File
@@ -170,8 +170,8 @@ too many elements -- expect three five seven
three five seven
positive offset - expect five seven
five seven
negative offset - expect five seven
five seven
negative offset to unset element - expect seven
seven
positive offset 2 - expect seven
seven
negative offset 2 - expect seven
+1 -1
View File
@@ -322,7 +322,7 @@ echo ${av[@]:3:5} # how about too many elements?
echo positive offset - expect five seven
echo ${av[@]:5:2}
echo negative offset - expect five seven
echo negative offset to unset element - expect seven
echo ${av[@]: -2:2}
echo positive offset 2 - expect seven