[haiku-commits] r34011 - in haiku/vendor/bash/current: . CWRU CWRU/misc builtins doc ...

  • From: korli@xxxxxxxxxxxxxxxx
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Thu, 12 Nov 2009 21:29:32 +0100 (CET)

Author: korli
Date: 2009-11-12 21:29:23 +0100 (Thu, 12 Nov 2009)
New Revision: 34011
Changeset: http://dev.haiku-os.org/changeset/34011/haiku

Added:
   haiku/vendor/bash/current/CWRU/audit-patch
   haiku/vendor/bash/current/MANIFEST.doc
   haiku/vendor/bash/current/assoc.c
   haiku/vendor/bash/current/assoc.h
   haiku/vendor/bash/current/builtins/mapfile.def
   haiku/vendor/bash/current/doc/article.pdf
   haiku/vendor/bash/current/doc/article.ps
   haiku/vendor/bash/current/doc/article.txt
   haiku/vendor/bash/current/doc/bash.0
   haiku/vendor/bash/current/doc/bash.html
   haiku/vendor/bash/current/doc/bash.pdf
   haiku/vendor/bash/current/doc/bash.ps
   haiku/vendor/bash/current/doc/bashbug.0
   haiku/vendor/bash/current/doc/bashbug.ps
   haiku/vendor/bash/current/doc/bashref.dvi
   haiku/vendor/bash/current/doc/bashref.html
   haiku/vendor/bash/current/doc/bashref.pdf
   haiku/vendor/bash/current/doc/bashref.ps
   haiku/vendor/bash/current/doc/builtins.0
   haiku/vendor/bash/current/doc/builtins.ps
   haiku/vendor/bash/current/doc/rbash.0
   haiku/vendor/bash/current/doc/rbash.ps
   haiku/vendor/bash/current/doc/rose94.pdf
   haiku/vendor/bash/current/doc/rose94.ps
   haiku/vendor/bash/current/examples/complete/bash_completion
   haiku/vendor/bash/current/examples/loadables/mypid.c
   haiku/vendor/bash/current/examples/obashdb/bashdb.el
   haiku/vendor/bash/current/examples/scripts/timeout2
   haiku/vendor/bash/current/examples/scripts/timeout3
   haiku/vendor/bash/current/lib/sh/casemod.c
   haiku/vendor/bash/current/lib/sh/fdprintf.c
   haiku/vendor/bash/current/lib/sh/fpurge.c
   haiku/vendor/bash/current/lib/sh/input_avail.c
   haiku/vendor/bash/current/lib/sh/mbscmp.c
   haiku/vendor/bash/current/lib/sh/uconvert.c
   haiku/vendor/bash/current/lib/sh/ufuncs.c
   haiku/vendor/bash/current/lib/sh/zgetline.c
   haiku/vendor/bash/current/lib/sh/zmapfd.c
   haiku/vendor/bash/current/po/._lt.po
   haiku/vendor/bash/current/po/README
   haiku/vendor/bash/current/po/af.gmo
   haiku/vendor/bash/current/po/af.po
   haiku/vendor/bash/current/po/bg.gmo
   haiku/vendor/bash/current/po/bg.po
   haiku/vendor/bash/current/po/ca.gmo
   haiku/vendor/bash/current/po/ca.po
   haiku/vendor/bash/current/po/cs.gmo
   haiku/vendor/bash/current/po/cs.po
   haiku/vendor/bash/current/po/de.gmo
   haiku/vendor/bash/current/po/de.po
   haiku/vendor/bash/current/po/eo.gmo
   haiku/vendor/bash/current/po/eo.po
   haiku/vendor/bash/current/po/es.gmo
   haiku/vendor/bash/current/po/es.po
   haiku/vendor/bash/current/po/et.gmo
   haiku/vendor/bash/current/po/et.po
   haiku/vendor/bash/current/po/fr.gmo
   haiku/vendor/bash/current/po/fr.po
   haiku/vendor/bash/current/po/hu.gmo
   haiku/vendor/bash/current/po/hu.po
   haiku/vendor/bash/current/po/id.gmo
   haiku/vendor/bash/current/po/id.po
   haiku/vendor/bash/current/po/ja.gmo
   haiku/vendor/bash/current/po/ja.po
   haiku/vendor/bash/current/po/lt.gmo
   haiku/vendor/bash/current/po/lt.po
   haiku/vendor/bash/current/po/nl.gmo
   haiku/vendor/bash/current/po/nl.po
   haiku/vendor/bash/current/po/pl.gmo
   haiku/vendor/bash/current/po/pl.po
   haiku/vendor/bash/current/po/pt_BR.gmo
   haiku/vendor/bash/current/po/pt_BR.po
   haiku/vendor/bash/current/po/ro.gmo
   haiku/vendor/bash/current/po/ro.po
   haiku/vendor/bash/current/po/ru.gmo
   haiku/vendor/bash/current/po/sk.gmo
   haiku/vendor/bash/current/po/sk.po
   haiku/vendor/bash/current/po/sv.gmo
   haiku/vendor/bash/current/po/sv.po
   haiku/vendor/bash/current/po/tr.gmo
   haiku/vendor/bash/current/po/tr.po
   haiku/vendor/bash/current/po/vi.gmo
   haiku/vendor/bash/current/po/vi.po
   haiku/vendor/bash/current/po/zh_TW.gmo
   haiku/vendor/bash/current/po/zh_TW.po
   haiku/vendor/bash/current/support/checkbashisms
   haiku/vendor/bash/current/support/xcase.c
   haiku/vendor/bash/current/tests/array5.sub
   haiku/vendor/bash/current/tests/array6.sub
   haiku/vendor/bash/current/tests/array7.sub
   haiku/vendor/bash/current/tests/array8.sub
   haiku/vendor/bash/current/tests/array9.sub
   haiku/vendor/bash/current/tests/assoc.right
   haiku/vendor/bash/current/tests/assoc.tests
   haiku/vendor/bash/current/tests/assoc1.sub
   haiku/vendor/bash/current/tests/assoc2.sub
   haiku/vendor/bash/current/tests/assoc3.sub
   haiku/vendor/bash/current/tests/assoc4.sub
   haiku/vendor/bash/current/tests/case.right
   haiku/vendor/bash/current/tests/case.tests
   [... truncated: 48 added files follow ...]
Removed:
   haiku/vendor/bash/current/examples/bashdb/PERMISSION
   haiku/vendor/bash/current/examples/bashdb/README
   haiku/vendor/bash/current/examples/bashdb/bashdb
   haiku/vendor/bash/current/examples/bashdb/bashdb.el
   haiku/vendor/bash/current/examples/obashdb/bashdb.fns
   haiku/vendor/bash/current/examples/obashdb/bashdb.pre
   haiku/vendor/bash/current/lib/termcap/grot/COPYING
   haiku/vendor/bash/current/lib/termcap/grot/ChangeLog
   haiku/vendor/bash/current/lib/termcap/grot/INSTALL
   haiku/vendor/bash/current/lib/termcap/grot/Makefile.in
   haiku/vendor/bash/current/lib/termcap/grot/NEWS
   haiku/vendor/bash/current/lib/termcap/grot/README
   haiku/vendor/bash/current/lib/termcap/grot/configure
   haiku/vendor/bash/current/lib/termcap/grot/configure.in
   haiku/vendor/bash/current/lib/termcap/grot/termcap.info
   haiku/vendor/bash/current/lib/termcap/grot/termcap.info-1
   haiku/vendor/bash/current/lib/termcap/grot/termcap.info-2
   haiku/vendor/bash/current/lib/termcap/grot/termcap.info-3
   haiku/vendor/bash/current/lib/termcap/grot/termcap.info-4
   haiku/vendor/bash/current/lib/termcap/grot/termcap.texi
   haiku/vendor/bash/current/lib/termcap/grot/texinfo.tex
   haiku/vendor/bash/current/tests/exp-tests
   haiku/vendor/bash/current/tests/set-e-test
Modified:
   haiku/vendor/bash/current/AUTHORS
   haiku/vendor/bash/current/CHANGES
   haiku/vendor/bash/current/COMPAT
   haiku/vendor/bash/current/COPYING
   haiku/vendor/bash/current/CWRU/changelog
   haiku/vendor/bash/current/CWRU/misc/bison
   haiku/vendor/bash/current/CWRU/misc/errlist.c
   haiku/vendor/bash/current/CWRU/misc/hpux10-dlfcn.h
   haiku/vendor/bash/current/CWRU/misc/open-files.c
   haiku/vendor/bash/current/CWRU/misc/sigs.c
   haiku/vendor/bash/current/CWRU/misc/sigstat.c
   haiku/vendor/bash/current/INSTALL
   haiku/vendor/bash/current/MANIFEST
   haiku/vendor/bash/current/Makefile.in
   haiku/vendor/bash/current/NEWS
   haiku/vendor/bash/current/NOTES
   haiku/vendor/bash/current/POSIX
   haiku/vendor/bash/current/README
   haiku/vendor/bash/current/aclocal.m4
   haiku/vendor/bash/current/alias.c
   haiku/vendor/bash/current/alias.h
   haiku/vendor/bash/current/array.c
   haiku/vendor/bash/current/array.h
   haiku/vendor/bash/current/arrayfunc.c
   haiku/vendor/bash/current/arrayfunc.h
   haiku/vendor/bash/current/bashansi.h
   haiku/vendor/bash/current/bashhist.c
   haiku/vendor/bash/current/bashhist.h
   haiku/vendor/bash/current/bashintl.h
   haiku/vendor/bash/current/bashjmp.h
   haiku/vendor/bash/current/bashline.c
   haiku/vendor/bash/current/bashline.h
   haiku/vendor/bash/current/bashtypes.h
   haiku/vendor/bash/current/bracecomp.c
   haiku/vendor/bash/current/braces.c
   haiku/vendor/bash/current/builtins.h
   haiku/vendor/bash/current/builtins/Makefile.in
   haiku/vendor/bash/current/builtins/alias.def
   haiku/vendor/bash/current/builtins/bashgetopt.c
   haiku/vendor/bash/current/builtins/bashgetopt.h
   haiku/vendor/bash/current/builtins/bind.def
   haiku/vendor/bash/current/builtins/break.def
   haiku/vendor/bash/current/builtins/builtin.def
   haiku/vendor/bash/current/builtins/caller.def
   haiku/vendor/bash/current/builtins/cd.def
   haiku/vendor/bash/current/builtins/colon.def
   haiku/vendor/bash/current/builtins/command.def
   haiku/vendor/bash/current/builtins/common.c
   haiku/vendor/bash/current/builtins/common.h
   haiku/vendor/bash/current/builtins/complete.def
   haiku/vendor/bash/current/builtins/declare.def
   haiku/vendor/bash/current/builtins/echo.def
   haiku/vendor/bash/current/builtins/enable.def
   haiku/vendor/bash/current/builtins/eval.def
   haiku/vendor/bash/current/builtins/evalfile.c
   haiku/vendor/bash/current/builtins/evalstring.c
   haiku/vendor/bash/current/builtins/exec.def
   haiku/vendor/bash/current/builtins/exit.def
   haiku/vendor/bash/current/builtins/fc.def
   haiku/vendor/bash/current/builtins/fg_bg.def
   haiku/vendor/bash/current/builtins/getopt.c
   haiku/vendor/bash/current/builtins/getopt.h
   haiku/vendor/bash/current/builtins/getopts.def
   haiku/vendor/bash/current/builtins/hash.def
   haiku/vendor/bash/current/builtins/help.def
   haiku/vendor/bash/current/builtins/history.def
   haiku/vendor/bash/current/builtins/inlib.def
   haiku/vendor/bash/current/builtins/jobs.def
   haiku/vendor/bash/current/builtins/kill.def
   haiku/vendor/bash/current/builtins/let.def
   haiku/vendor/bash/current/builtins/mkbuiltins.c
   haiku/vendor/bash/current/builtins/printf.def
   haiku/vendor/bash/current/builtins/psize.c
   haiku/vendor/bash/current/builtins/pushd.def
   haiku/vendor/bash/current/builtins/read.def
   haiku/vendor/bash/current/builtins/reserved.def
   haiku/vendor/bash/current/builtins/return.def
   haiku/vendor/bash/current/builtins/set.def
   haiku/vendor/bash/current/builtins/setattr.def
   haiku/vendor/bash/current/builtins/shift.def
   haiku/vendor/bash/current/builtins/shopt.def
   haiku/vendor/bash/current/builtins/source.def
   haiku/vendor/bash/current/builtins/suspend.def
   haiku/vendor/bash/current/builtins/test.def
   haiku/vendor/bash/current/builtins/times.def
   haiku/vendor/bash/current/builtins/trap.def
   haiku/vendor/bash/current/builtins/type.def
   haiku/vendor/bash/current/builtins/ulimit.def
   haiku/vendor/bash/current/builtins/umask.def
   haiku/vendor/bash/current/builtins/wait.def
   haiku/vendor/bash/current/command.h
   haiku/vendor/bash/current/config-bot.h
   haiku/vendor/bash/current/config-top.h
   haiku/vendor/bash/current/config.h.in
   haiku/vendor/bash/current/configure
   haiku/vendor/bash/current/configure.in
   haiku/vendor/bash/current/conftypes.h
   haiku/vendor/bash/current/copy_cmd.c
   haiku/vendor/bash/current/dispose_cmd.c
   haiku/vendor/bash/current/dispose_cmd.h
   [... truncated: 422 changed files follow ...]
Log:
update to bash-4.0 


Modified: haiku/vendor/bash/current/AUTHORS
===================================================================
--- haiku/vendor/bash/current/AUTHORS   2009-11-12 19:14:42 UTC (rev 34010)
+++ haiku/vendor/bash/current/AUTHORS   2009-11-12 20:29:23 UTC (rev 34011)
@@ -125,6 +125,7 @@
 builtins/history.def   Brian Fox, Chet Ramey
 builtins/jobs.def      Brian Fox, Chet Ramey
 builtins/kill.def      Brian Fox, Chet Ramey
+builtins/mapfile.def   Rocky Bernstein
 builtins/mkbuiltins.c  Brian Fox, Chet Ramey
 builtins/pushd.def     Brian Fox, Chet Ramey
 builtins/read.def      Brian Fox, Chet Ramey
@@ -456,3 +457,5 @@
 lib/sh/zwrite.c                Chet Ramey
 
 tests/posix-ifs.sh     Glenn Fowler
+
+support/checkbashisms  Julian Gilbey, Debian Linux team

Modified: haiku/vendor/bash/current/CHANGES
===================================================================
--- haiku/vendor/bash/current/CHANGES   2009-11-12 19:14:42 UTC (rev 34010)
+++ haiku/vendor/bash/current/CHANGES   2009-11-12 20:29:23 UTC (rev 34011)
@@ -1,3 +1,683 @@
+This document details the changes between this version, bash-4.0-release,
+and the previous version, bash-4.0-rc1.
+
+1.  Changes to Bash
+
+a.  Changed the message printed when setlocale(3) fails to only include the
+    strerror error text if the call changes errno.
+
+b.  Changed trap command execution to reset the line number before running a
+    trap (except DEBUG and RETURN traps).
+
+c.  Fixed behavior of case-modifiying word expansions to not work on
+    individual words within a variable's value.
+
+d.  Fixed a bug that caused mapfile to not be interruptible when run in an
+    interactive shell.
+
+e.  Fixed a bug that caused mapfile to not run callbacks for the first line
+    read.
+
+f.  Fixed a bug that caused mapfile to not honor EOF typed in an interactive
+    shell.
+
+g.  Fixed the coprocess reaping code to not run straight from a signal handler.
+
+h.  Fixed a bug that caused printf -b to ignore the first % conversion 
specifier
+    in the format string on 64-bit systems.
+
+i.  Fixed a bug that caused incorrect word splitting when `:', `=', or `~'
+    appeared in $IFS.
+
+j.  Fixed a bug that caused data corruption in the programmable completion code
+    when a shell function called from a completion aborted execution.
+
+k.  Fixed a bug that caused the CPU usage reported by the `time' builtin to be
+    capped at 100%.
+
+l.  Changed behavior of shell when -e option is in effect to reflect consensus
+    of Posix shell standardization working group.
+
+m.  Fixed a bug introduced in bash-4.0-alpha that caused redirections to not
+    be displayed by `type' or `declare' when appearing in functions under
+    certain circumstances.
+
+2.  Changes to Readline
+
+a.  Fixed a bug that caused !(...) extended glob patterns to inhibit later
+    history expansion.
+
+b.  Reworked the signal handling to avoid calling disallowed functions from a
+    signal handler.
+
+3.  New Features in Bash
+
+a.  `readarray' is now a synonym for `mapfile'.
+------------------------------------------------------------------------------
+This document details the changes between this version, bash-4.0-rc1,
+and the previous version, bash-4.0-beta2.
+
+1.  Changes to Bash
+
+a.  Fixed a bug that caused parsing errors when a $()-style command
+    substitution was follwed immediately by a quoted newline.
+
+b.  Fixed a bug that caused extended shell globbing patterns beginning with
+    `*(' to not work when used with pattern substitution word expansions.
+ 
+------------------------------------------------------------------------------
+This document details the changes between this version, bash-4.0-beta2,
+and the previous version, bash-4.0-beta.
+
+1.  Changes to Bash
+
+a.  Fixed a bug that caused failed word expansions to set $? but not
+    PIPESTATUS.
+
+b.  Changed filename completion to quote the tilde in a filename with a
+    leading tilde that exists in the current directory.
+
+c.  Fixed a bug that caused a file descriptor leak when performing
+    redirections attached to a compound command.
+
+d.  Fixed a bug that caused expansions of $@ and $* to not exit the shell if
+    the -u option was enabled and there were no posititional parameters.
+
+e.  Fixed a bug that resulted in bash not terminating immediately if a
+    terminating signal was received while performing output.
+
+f.  Fixed a bug that caused the shell to crash after creating 256 process
+    substitutions during word completion.
+
+2.  Changes to Readline
+
+a.  Fixed a bug that caused redisplay errors when using prompts with invisible
+    characters and numeric arguments to a command in a multibyte locale.
+
+b.  Fixed a bug that caused redisplay errors when using prompts with invisible
+    characters spanning more than two physical screen lines.
+
+------------------------------------------------------------------------------
+This document details the changes between this version, bash-4.0-beta,
+and the previous version, bash-4.0-alpha.
+
+1.  Changes to Bash
+
+a.  Fixed a typo that caused a variable to be used before initialization
+    while parsing Posix-style command substitutions.
+
+b.  Fixed a bug that caused stray ^? when the expansion of a parameter used
+    as part of a pattern removal expansion is empty, but part of a non-
+    empty string.
+
+c.  Fixed a bug that could cause strings not converted to numbers by strtol
+    to be treated as if the conversion had been successful.
+
+d.  The `return' builtin now accepts no options and requires a `--' before
+    a negative return value, as Posix requires.
+
+e.  Fixed a bug that caused local variables to be created with the empty
+    string for a value rather than no value.
+
+f.  Changed behavior so the shell now acts as if it received an interrupt
+    when a pipeline is killed by SIGINT while executing a list.
+
+g.  Fixed a bug that caused `declare var' and `typeset var' to initialize
+    `var' to the empty string.
+
+h.  Changed `bind' builtin to print a warning but proceed if invoked when
+    line editing is not active.
+
+i.  Fixed a bug that caused the shell to exit when the `errexit' option is
+    set and a command in a pipeline returns a non-zero exit status.
+
+j.  Fixed a bug that caused the shell to not run the exit trap in a command
+    run with `bash -c' under some circumstances.
+
+k.  Fixed a bug that caused parser errors to occasionally not set $? when
+    running commands with `eval'.
+
+l.  Fixed a bug that caused stray control characters when evaluating compound
+    array assignments containing $'\x7f' escapes.
+
+m.  Fixed a bug that caused redirections involving file descriptor 10 as the
+    target to behave incorrectly.
+
+n.  Fixed a bug that could cause memory to be freed multiple times when
+    assigning to COMP_WORDBREAKS.
+
+o.  Fixed a bug that could cause NULL pointer dereferences when COMP_WORDBREAKS
+    was unset.
+
+2.  Changes to Readline
+
+3.  New Features in Bash
+
+a.  A value of 0 for the -t option to `read' now returns success if there is
+    input available to be read from the specified file descriptor.
+
+b.  CDPATH and GLOBIGNORE are ignored when the shell is running in privileged
+    mode.
+
+c.  New bindable readline functions shell-forward-word and shell-backward-word,
+    which move forward and backward words delimited by shell metacharacters
+    and honor shell quoting.
+
+d.  New bindable readline functions shell-backward-kill-word and 
shell-kill-word
+    which kill words backward and forward, but use the same word boundaries
+    as shell-forward-word and shell-backward-word.
+
+4.  New Features in Readline
+
+a.  If the kernel supports it, readline displays special characters
+    corresponding to a keyboard-generated signal when the signal is received.
+
+------------------------------------------------------------------------------
+This document details the changes between this version, bash-4.0-alpha,
+and the previous version, bash-3.2-release.
+
+1.  Changes to Bash
+
+a.  Fixed several bugs in old-style `` command substitution parsing, including
+    comment parsing and quoted string handling.
+
+b.  Fixed problems parsing arguments to the [[ command's =~ regular expression
+    matching operator:  metacharacter and whitespace parsing.
+
+c.  Fixed a bug that caused the shell to inappropriately reuse high-numbered
+    file descriptors it used internally.
+
+d.  Fixed a bug in pattern replacement word expansions that caused a `/' as
+    the first character of an expanded pattern to be mistaken for a global
+    replacement specifier.
+
+e.  Fixed several problems with the asprintf and snprintf replacement functions
+    that caused hangs and crashes.
+
+f.  Fixed a bug in the calculation of the current and previous job that caused
+    it to refer to incorrect jobs.
+
+g.  Fixed a bug in the check for the validity of a hashed command pathname that
+    caused unnecessary hash table deletions and additions.
+
+h.  Fixed a bug that caused child processes to inherit the wrong value for $!.
+
+i.  Fixed a bug that caused `.' to fail to read and execute commands from non-
+    regular files such as devices or named pipes.
+
+j.  Fixed a bug in printf formatting for the %x and %X expansions that occurred
+    on some systems.
+
+k.  Fixed a bug that caused the shell to crash when creating temporary files if
+    $TMPDIR named a non-writable directory.
+
+l.  Fixed a bug that caused the shell to ignore $TMPDIR when creating temporary
+    files under some circumstances.
+
+m.  Fixed a bug that caused named pipes created by process substitution to not
+    be cleaned up.
+
+n.  Fixed a bug that caused HISTTIMEFORMAT to not be honored when it appeared
+    in the initial shell environment.
+
+o.  Fixed several bugs in the expansion of $* and $@ (quoted and unquoted)
+    when IFS is null or contains non-whitespace characters; the same changes
+    apply to arrays subscripted with * or @.
+
+p.  Fixed several problems with pattern substitution expansions on the
+    positional parameters and arrays subscripted with * or @ that occurred
+    when $IFS was set to the empty string.
+
+q.  Made a change to the default locale initialization code that should
+    result in better behavior from the locale-aware library functions.
+
+r.  Fixed a bug that caused compacting the jobs list to drop jobs.
+
+s.  Fixed a bug that caused jumps back to the top-level processing loop from
+    a builtin command to leave the shell in an inconsistent state.
+
+t.  Fixed a bug that caused characters that would be escaped internally to be
+    doubled when escaped with a backslash.
+
+u.  Fixed the initialization of mailboxes to not cause maildirs to be read
+    (and stat(2) called for every message file) at shell startup.
+
+v.  Fixed a bug that caused the shell to not display $PS2 when the read builtin
+    reads a line continued with a backslash.
+
+w.  Fixed a bug that caused errors in word splitting when $IFS contained
+    characters used for internal quoting.
+
+x.  Fixed bugs that caused problems with output from shell builtins not being
+    completely displayed on some systems.
+
+y.  Fixed a bug that caused output to be lost when a redirection is acting on
+    the shell's output file descriptor.
+
+z.  Fixed bugs caused by shell builtins not checking for all write errors.
+
+aa. Fixed a problem that caused the shell to dump core if expansions on the
+    pattern passed to the pattern removal word expansions resulted in expansion
+    errors.
+
+bb. Fixed a bug that caused bash to loop infinitely after creating and
+    waiting for 4096 jobs.
+
+cc. Fixed a bug that caused bash to lose the status of a background job under
+    certain circumstances.
+
+dd. Fixed a bug that caused bash to not look in the temporary environment
+    when performing variable lookup under certain circumstances.
+
+ee. Fixed a bug that caused bash to close file descriptors greater than 10
+    when they were used in redirections.
+
+ff. Fixed a problem that caused the shell to attempt to read from the standard
+    input when called as `bash -i script'.
+
+gg. Fixed a memory leak and variable initialization problems when the -v option
+    was supplied to `printf' that could cause incorrect results.
+
+hh. Fixed a bug that caused the `read' builtin to count bytes when the -n 
option
+    was supplied, rather than (possibly multibyte) characters.
+
+ii. Fixed a bug when displaying a function due to not converting the function
+    to an external form.
+
+jj. Changed job control initialization to ensure that the shell has a tty
+    as its controlling terminal before enabling job control.
+
+kk. Fixed a bug with the `test' builtin that caused it to misinterpret
+    arguments beginning with `-' but containing more than one character.
+
+ll. Fixed bug that could cause the shell to dump core in certain cases where
+    a command sets the SIGINT disposition to the default.
+
+mm. Fixed a bug in the pattern replacement (affecting both word expansion
+    and the `fc' builtin) that occurred when the pattern and replacement
+    strings were empty.
+
+nn. Fixed a bug that caused an arithmetic evaluation error to disable all
+    further evaluation.
+
+oo. Fixed a bug in pathname expansion that caused it to interpret backslashes
+    in the pathname as quoting characters.
+
+pp. Fixed a bug in the replacement getcwd() implementation that could cause
+    memory to be overwritten.
+
+qq. When in Posix mode, the `ulimit' builtin now uses a block size of 512 for
+    the `-c' and `-f' options.
+
+rr. Brace expansion now allows process substitutions to pass through unchanged.
+
+ss. Fixed a problem in the command name completion code to avoid quoting
+    escaped special characters twice when the command name begins with a tilde.
+
+tt. Fixed a problem in the printf builtin that resulted in single-byte
+    output for the "'" escape, even when using multibyte characters.
+
+uu. Fixed a bug that caused the failure exit status to be lost when 
redirections
+    attached to a compound command failed.
+
+vv. Fixed a bug that caused the internal random number generator to not be
+    re-seeded correctly when creating a subshell.
+
+ww. Fixed a bug that could cause the bash replacement getcwd to overwrite
+    memory.
+
+xx. Fixed a bug that caused the shell to not receive SIGINT if it was sent
+    while the shell was waiting for a command substitution to terminate, and
+    make sure the exit status is correct when it does.
+
+yy. Fixed a bug that resulted in the second and subsequent children spawned
+    by a shell begun to run a command substitution being placed into the
+    wrong process group.
+
+zz. Fixed a bug that caused the results of successful tilde expansion to be
+    subject to pathname expansion and word splitting.
+
+aaa. Fixed a bug that could cause the shell to hang if it encountered an
+     error that caused it to jump back to the top processing loop during a
+     command substitution or `eval' command.
+
+bbb. Fixed a bug that caused the `read' builtin to use the tty's attributes
+     instead of those of the file descriptor passed with the -u option when
+     processing the -n and -d options.
+
+ccc. Fixed a bug that caused incorrect expansion of ${array[@]:foo} if the
+     first character of $IFS was not whitespace.
+
+ddd. Fixed a bug that occurred when scanning for the ending delimiter of a
+     ${parameter/pat/sub} expansion.
+
+eee. Fixed a bug that caused the shell to inappropriately expand command
+     substitutions in words when expanding directory names for completion.
+
+fff. Fixed a bug that caused the `fc' builtin to look too far back in the
+     history list under certain circumstances.
+
+ggg. Fixed a bug that caused a shell running in Posix mode to search $PWD for
+     a file specified as an argument to source/. when the file was not found
+     in $PATH.
+
+hhh. Fixed a bug that caused the shell to modify the case of a command word
+     found via command completion when the shell was performing case-
+     insensitive completion.
+
+iii. Fixed a bug that caused the shell to search $PATH for an argument to
+     source/. even when it contained a `/'.
+
+jjj. Fixed a bug that caused brace expansion to misorder expansions when the
+     locale did not have a collating order like aAbBcC...zZ.
+
+kkk. Fixed a bug that did not allow `set +o history' to have any effect when
+     run in a startup file or from a sourced file.
+
+lll. Fixed a bug with the precedence of the ?: conditional arithmetic operator.
+
+mmm. Fixed a bug that caused side effects of temporary variable assignments
+     to persist in the shell environment.
+
+nnn. Fixed a bug that caused the terminal to be left in non-canonical mode
+     when using editing commands that invoke the an editor on the current
+     command line.
+
+ooo. Fixed a bug that caused globbing characters and characters in $IFS to not
+     be quoted appropriately when displaying assignment statements.
+
+ppp. Fixed a bug that caused the `-e' option to be inherited when sourcing a
+     file or evaluating a command with `eval' even if the return value of the
+     command was supposed to be ignored.
+
+qqq. Fixed a bug that caused the shell to attempt to created variables with
+     invalid names if such names appeared in the initial environment.
+
+rrr. Fixed a bug with quote removal in strings where the final character is a
+     backslash.
+
+sss. Fixed a bug that caused the effects of special variables to persist even
+     when the variables were unset as part of the shell reinitializing itself
+     to execute a shell script.
+
+ttt. Fixed a bug that caused the history to not be saved after `history -c' or
+     `history -d' was executed until a sufficient number of commands had been
+     saved to the history.
+
+uuu. Bash now parses command substitutions according to Posix rules: parsing
+     the command contained in $() to find the closing delimiter.
+
+vvv. Fixed a bug that caused traps on SIGCHLD set in a SIGCHLD handler to
+     not persist.
+
+www. Fixed a bug that didn't allow SIGCHLD to interrupt the `wait' builtin
+     as Posix specifies.
+
+xxx. Invalid numeric arguments to shell builtins no longer cause the shell to
+     short-circuit any executing compound command.
+
+yyy. Fixed a bug that caused the exit status to be lost when `break' was
+     used to short-circuit a loop's execution.
+
+zzz. Fixed a bug that caused stray ^? characters to be left in expansions of
+     "${array[*]}".
+
+aaaa. Bash now prints better error messages for here documents terminated by
+      EOF and for identifying the incorrect token in an invalid arithmetic
+      expression.
+
+bbbb. Fixed a bug in the variable length word expansion that caused it to
+      incorrectly calculate the number of multibyte characters.
+
+cccc. Fixed a race condition that could result in the top-level shell setting
+      the terminal's process group to an incorrect value if the process
+      group was changed by a child of a child of the shell.
+
+dddd. Fixed a bug that caused here documents belonging to commands within a
+      compound command to be displayed in a syntactially-incorrect form, which
+      prevented them from being re-read as input.
+
+eeee. The shell displays more warnings about failures to set the locale.
+
+ffff. Fixed a bug that caused the body of a here-document to not be saved to
+      the history list.
+
+gggg. Fixed a bug that caused configure to incorrectly conclude that FreeBSD
+      had /dev/fd available, resulting in problems with process substitution.
+
+2.  Changes to Readline
+
+a.  Fixed a number of redisplay errors in environments supporting multibyte 
+    characters.
+
+b.  Fixed bugs in vi command mode that caused motion commands to 
inappropriately
+    set the mark.
+
+c.  When using the arrow keys in vi insertion mode, readline allows movement
+    beyond the current end of the line (unlike command mode).
+
+d.  Fixed bugs that caused readline to loop when the terminal has been taken
+    away and reads return -1/EIO.
+
+e.  Fixed bugs in redisplay occurring when displaying prompts containing
+    invisible characters.
+
+f.  Fixed a bug that caused the completion append character to not be reset to
+    the default after an application-specified completion function changed it.
+
+g.  Fixed a problem that caused incorrect positioning of the cursor while in
+    emacs editing mode when moving forward at the end of a line while using
+    a locale supporting multibyte characters.
+
+h.  Fixed an off-by-one error that caused readline to drop every 511th
+    character of buffered input.
+
+i.  Fixed a bug that resulted in SIGTERM not being caught or cleaned up.
+
+j.  Fixed redisplay bugs caused by multiline prompts with invisible characters
+    or no characters following the final newline.
+
+k.  Fixed redisplay bug caused by prompts consisting solely of invisible
+    characters.
+
+l.  Fixed a bug in the code that buffers characters received very quickly in
+    succession which caused characters to be dropped.
+
+m.  Fixed a bug that caused readline to reference uninitialized data structures
+    if it received a SIGWINCH before completing initialzation.
+
+n.  Fixed a bug that caused the vi-mode `last command' to be set incorrectly
+    and therefore unrepeatable.
+
+o.  Fixed a bug that caused readline to disable echoing when it was being used
+    with an output file descriptor that was not a terminal.
+
+p.  Readline now blocks SIGINT while manipulating internal data structures
+    during redisplay.
+
+q.  Fixed a bug in redisplay that caused readline to segfault when pasting a
+    very long line (over 130,000 characters).
+
+r.  Fixed bugs in redisplay when using prompts with no visible printing
+    characters.
+
+3.  New Features in Bash
+
+a.  When using substring expansion on the positional parameters, a starting
+    index of 0 now causes $0 to be prefixed to the list.
+
+b.  The `help' builtin now prints its columns with entries sorted vertically
+    rather than horizontally.
+
+c.  There is a new variable, $BASHPID, which always returns the process id of
+    the current shell.
+
+d.  There is a new `autocd' option that, when enabled, causes bash to attempt
+    to `cd' to a directory name that is supplied as the first word of a
+    simple command.
+
+e.  There is a new `checkjobs' option that causes the shell to check for and
+    report any running or stopped jobs at exit.
+
+f.  The programmable completion code exports a new COMP_TYPE variable, set to
+    a character describing the type of completion being attempted.
+
+g.  The programmable completion code exports a new COMP_KEY variable, set to
+    the character that caused the completion to be invoked (e.g., TAB).
+
+h.  If creation of a child process fails due to insufficient resources, bash
+    will try again several times before reporting failure.
+
+i.  The programmable completion code now uses the same set of characters as
+    readline when breaking the command line into a list of words.
+
+j.  The block multiplier for the ulimit -c and -f options is now 512 when in
+    Posix mode, as Posix specifies.
+
+k.  Changed the behavior of the read builtin to save any partial input received
+    in the specified variable when the read builtin times out.  This also
+    results in variables specified as arguments to read to be set to the empty
+    string when there is no input available.  When the read builtin times out,
+    it returns an exit status greater than 128.
+
+l.  The shell now has the notion of a `compatibility level', controlled by
+    new variables settable by `shopt'.  Setting this variable currently
+    restores the bash-3.1 behavior when processing quoted strings on the rhs
+    of the `=~' operator to the `[[' command.
+
+m.  The `ulimit' builtin now has new -b (socket buffer size) and -T (number
+    of threads) options.
+
+n.  The -p option to `declare' now displays all variable values and attributes
+    (or function values and attributes if used with -f).
+
+o.  There is a new `compopt' builtin that allows completion functions to modify
+    completion options for existing completions or the completion currently
+    being executed.
+
+p.  The `read' builtin has a new -i option which inserts text into the reply
+    buffer when using readline.
+
+q.  A new `-E' option to the complete builtin allows control of the default
+    behavior for completion on an empty line.
+
+r.  There is now limited support for completing command name words containing
+    globbing characters.
+
+s.  Changed format of internal help documentation for all builtins to roughly
+    follow man page format.
+
+t.  The `help' builtin now has a new -d option, to display a short description,
+    and a -m option, to print help information in a man page-like format.
+
+u.  There is a new `mapfile' builtin to populate an array with lines from a
+    given file.
+
+v.  If a command is not found, the shell attempts to execute a shell function
+    named `command_not_found_handle', supplying the command words as the
+    function arguments.
+
+w.  There is a new shell option: `globstar'.  When enabled, the globbing code
+    treats `**' specially -- it matches all directories (and files within
+    them, when appropriate) recursively.
+
+x.  There is a new shell option: `dirspell'.  When enabled, the filename
+    completion code performs spelling correction on directory names during
+    completion.
+
+y.  The `-t' option to the `read' builtin now supports fractional timeout
+    values.
+
+z.  Brace expansion now allows zero-padding of expanded numeric values and
+    will add the proper number of zeroes to make sure all values contain the
+    same number of digits.
+
+aa. There is a new bash-specific bindable readline function: `dabbrev-expand'.
+    It uses menu completion on a set of words taken from the history list.
+
+bb. The command assigned to a key sequence with `bind -x' now sets two new
+    variables in the environment of the executed command:  READLINE_LINE_BUFFER
+    and READLINE_POINT.  The command can change the current readline line
+    and cursor position by modifying READLINE_LINE_BUFFER and READLINE_POINT,
+    respectively.
+
+cc. There is a new >>& redirection operator, which appends the standard output
+    and standard error to the named file.
+
+dd. The parser now understands `|&' as a synonym for `2>&1 |', which redirects
+    the standard error for a command through a pipe.
+
+ee. The new `;&' case statement action list terminator causes execution to
+    continue with the action associated with the next pattern in the
+    statement rather than terminating the command.
+
+ff. The new `;;&' case statement action list terminator causes the shell to
+    test the next set of patterns after completing execution of the current
+    action, rather than terminating the command.
+
+gg. The shell understands a new variable: PROMPT_DIRTRIM.  When set to an
+    integer value greater than zero, prompt expansion of \w and \W  will
+    retain only that number of trailing pathname components and replace
+    the intervening characters with `...'.
+
+hh. There are new case-modifying word expansions: uppercase (^[^]) and
+    lowercase (,[,]).  They can work on either the first character or
+    array element, or globally.  They accept an optional shell pattern
+    that determines which characters to modify.  There is an optionally-
+    configured feature to include capitalization operators.
+
+ii. The shell provides associative array variables, with the appropriate
+    support to create, delete, assign values to, and expand them.
+
+jj. The `declare' builtin now has new -l (convert value to lowercase upon
+    assignment) and -u (convert value to uppercase upon assignment) options.
+    There is an optionally-configurable -c option to capitalize a value at
+    assignment.
+
+kk. There is a new `coproc' reserved word that specifies a coprocess: an
+    asynchronous command run with two pipes connected to the creating shell.
+    Coprocs can be named.  The input and output file descriptors and the
+    PID of the coprocess are available to the calling shell in variables
+    with coproc-specific names.
+
+4.  New Features in Readline
+
+a.  A new variable, rl_sort_completion_matches; allows applications to inhibit
+    match list sorting (but beware: some things don't work right if
+    applications do this).
+
+b.  A new variable, rl_completion_invoking_key; allows applications to discover
+    the key that invoked rl_complete or rl_menu_complete.
+
+c.  The functions rl_block_sigint and rl_release_sigint are now public and
+    available to calling applications who want to protect critical sections
+    (like redisplay).
+
+d.  The functions rl_save_state and rl_restore_state are now public and
+    available to calling applications; documented rest of readline's state
+    flag values.
+
+e.  A new user-settable variable, `history-size', allows setting the maximum
+    number of entries in the history list.
+
+f.  There is a new implementation of menu completion, with several improvements
+    over the old; the most notable improvement is a better `completions
+    browsing' mode.
+
+g.  The menu completion code now uses the rl_menu_completion_entry_function
+    variable, allowing applications to provide their own menu completion
+    generators.
+
+h.  There is support for replacing a prefix  of a pathname with a `...' when
+    displaying possible completions.  This is controllable by setting the
+    `completion-prefix-display-length' variable.  Matches with a common prefix
+    longer than this value have the common prefix replaced with `...'.
+
+i.  There is a new `revert-all-at-newline' variable.  If enabled, readline will
+    undo all outstanding changes to all history lines when `accept-line' is
+    executed.
+
+------------------------------------------------------------------------------
 This document details the changes between this version, bash-3.2-release,
 and the previous version, bash-3.2-beta.
 

Modified: haiku/vendor/bash/current/COMPAT
===================================================================
--- haiku/vendor/bash/current/COMPAT    2009-11-12 19:14:42 UTC (rev 34010)
+++ haiku/vendor/bash/current/COMPAT    2009-11-12 20:29:23 UTC (rev 34011)
@@ -1,5 +1,5 @@
 This document details the incompatibilities between this version of bash,
-bash-3.2, and the previous widely-available versions, bash-1.14 (which is
+bash-4.0, and the previous widely-available versions, bash-1.14 (which is
 still the `standard' version for a few Linux distributions) and bash-2.x. 
 These were discovered by users of bash-2.x and 3.x, so this list is not
 comprehensive.  Some of these incompatibilities occur between the current
@@ -271,5 +271,50 @@
     file permission bits obtained with stat(2).  This obeys restrictions of
     the file system (e.g., read-only or noexec mounts) not available via stat.
 
-33. Beginning with bash-3.1/readline-5.1, the readline key binding code obeys
-    the current setting of the `convert-meta' variable.
+33. Bash-3.2 adopts the convention used by other string and pattern matching
+    operators for the `[[' compound command, and matches any quoted portion
+    of the right-hand-side argument to the =~ operator as a string rather
+    than a regular expression.
+
+34. Bash-4.0 allows the behavior in the previous item to be modified using
+    the notion of a shell `compatibility level'.
+
+35. Bash-3.2 (patched) and Bash-4.0 fix a bug that leaves the shell in an
+    inconsistent internal state following an assignment error.  One of the
+    changes means that compound commands or { ... } grouping commands are
+    aborted under some circumstances in which they previously were not.
+    This is what Posix specifies.
+
+36. Bash-4.0 now allows process substitution constructs to pass unchanged
+    through brace expansion, so any expansion of the contents will have to be
+    separately specified, and each process subsitution will have to be
+    separately entered.
+
+37. Bash-4.0 now allows SIGCHLD to interrupt the wait builtin, as Posix
+    specifies, so the SIGCHLD trap is no longer always invoked once per
+    exiting child if you are using `wait' to wait for all children.
+
+38. Since bash-4.0 now follows Posix rules for finding the closing delimiter
+    of a $() command substitution, it will not behave as previous versions
+    did, but will catch more syntax and parsing errors before spawning a
+    subshell to evaluate the command substitution.
+
+39. The programmable completion code uses the same set of delimiting characters
+    as readline when breaking the command line into words, rather than the
+    set of shell metacharacters, so programmable completion and readline
+    should be more consistent.
+
+40. When the read builtin times out, it attempts to assign any input read to
+    specified variables, which also causes variables to be set to the empty
+    string if there is not enough input.  Previous versions discarded the
+    characters read.
+
+41. Beginning with bash-4.0, when one of the commands in a pipeline is killed
+    by a SIGINT while executing a command list, the shell acts as if it
+    received the interrupt.
+
+42. Bash-4.0 changes the handling of the set -e option so that the shell exits
+    if a pipeline fails (and not just if the last command in the failing
+    pipeline is a simple command).  This is not as Posix specifies.  There is
+    work underway to update this portion of the standard; the bash-4.0
+    behavior attempts to capture the consensus at the time of release.

Modified: haiku/vendor/bash/current/COPYING
===================================================================
--- haiku/vendor/bash/current/COPYING   2009-11-12 19:14:42 UTC (rev 34010)
+++ haiku/vendor/bash/current/COPYING   2009-11-12 20:29:23 UTC (rev 34011)
@@ -1,309 +1,642 @@
-                   GNU GENERAL PUBLIC LICENSE
-                      Version 2, June 1991
+                    GNU GENERAL PUBLIC LICENSE
+                       Version 3, 29 June 2007
 
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.
-     59 Temple Place, Suite 330, Boston, MA 02111-1307, USA
+ Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
  Everyone is permitted to copy and distribute verbatim copies
  of this license document, but changing it is not allowed.
 
-The Free Software Foundation has exempted Bash from the requirement of
-Paragraph 2c of the General Public License.  This is to say, there is
-no requirement for Bash to print a notice when it is started
-interactively in the usual way.  We made this exception because users
-and standards expect shells not to print such messages.  This
-exception applies to any program that serves as a shell and that is
-based primarily on Bash as opposed to other GNU software.
+                            Preamble
 
-                           Preamble
+  The GNU General Public License is a free, copyleft license for
+software and other kinds of works.
 
-  The licenses for most software are designed to take away your
-freedom to share and change it.  By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users.  This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it.  (Some other Free Software Foundation software is covered by
-the GNU Library General Public License instead.)  You can apply it to
+  The licenses for most software and other practical works are designed
+to take away your freedom to share and change the works.  By contrast,
+the GNU General Public License is intended to guarantee your freedom to
+share and change all versions of a program--to make sure it remains free
+software for all its users.  We, the Free Software Foundation, use the
+GNU General Public License for most of our software; it applies also to
+any other work released this way by its authors.  You can apply it to
 your programs, too.
 
   When we speak of free software, we are referring to freedom, not
 price.  Our General Public Licenses are designed to make sure that you
 have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
+them if you wish), that you receive source code or can get it if you
+want it, that you can change the software or use pieces of it in new
+free programs, and that you know you can do these things.
 
-  To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
+  To protect your rights, we need to prevent others from denying you
+these rights or asking you to surrender the rights.  Therefore, you have
+certain responsibilities if you distribute copies of the software, or if
+you modify it: responsibilities to respect the freedom of others.
 
   For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have.  You must make sure that they, too, receive or can get the
-source code.  And you must show them these terms so they know their
-rights.
+gratis or for a fee, you must pass on to the recipients the same
+freedoms that you received.  You must make sure that they, too, receive
+or can get the source code.  And you must show them these terms so they
+know their rights.
 
-  We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
+  Developers that use the GNU GPL protect your rights with two steps:
+(1) assert copyright on the software, and (2) offer you this License
+giving you legal permission to copy, distribute and/or modify it.
 
-  Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software.  If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
+  For the developers' and authors' protection, the GPL clearly explains
+that there is no warranty for this free software.  For both users' and
+authors' sake, the GPL requires that modified versions be marked as
+changed, so that their problems will not be attributed erroneously to
+authors of previous versions.
 
-  Finally, any free program is threatened constantly by software
-patents.  We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary.  To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
+  Some devices are designed to deny users access to install or run
+modified versions of the software inside them, although the manufacturer
+can do so.  This is fundamentally incompatible with the aim of
+protecting users' freedom to change the software.  The systematic
+pattern of such abuse occurs in the area of products for individuals to
+use, which is precisely where it is most unacceptable.  Therefore, we
+have designed this version of the GPL to prohibit the practice for those
+products.  If such problems arise substantially in other domains, we
+stand ready to extend this provision to those domains in future versions
+of the GPL, as needed to protect the freedom of users.
 
+  Finally, every program is threatened constantly by software patents.
+States should not allow patents to restrict development and use of
+software on general-purpose computers, but in those that do, we wish to
+avoid the special danger that patents applied to a free program could
+make it effectively proprietary.  To prevent this, the GPL assures that
+patents cannot be used to render the program non-free.
+
   The precise terms and conditions for copying, distribution and
 modification follow.
-
-                   GNU GENERAL PUBLIC LICENSE
-   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
 
-  0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License.  The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language.  (Hereinafter, translation is included without limitation in
-the term "modification".)  Each licensee is addressed as "you".
+                       TERMS AND CONDITIONS
 
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope.  The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
+  0. Definitions.
 
-  1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
+  "This License" refers to version 3 of the GNU General Public License.
 
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
+  "Copyright" also means copyright-like laws that apply to other kinds of
+works, such as semiconductor masks.
 
-  2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
+  "The Program" refers to any copyrightable work licensed under this
+License.  Each licensee is addressed as "you".  "Licensees" and
+"recipients" may be individuals or organizations.
 
-    a) You must cause the modified files to carry prominent notices
-    stating that you changed the files and the date of any change.
+  To "modify" a work means to copy from or adapt all or part of the work
+in a fashion requiring copyright permission, other than the making of an
+exact copy.  The resulting work is called a "modified version" of the
+earlier work or a work "based on" the earlier work.
 
-    b) You must cause any work that you distribute or publish, that in
-    whole or in part contains or is derived from the Program or any
-    part thereof, to be licensed as a whole at no charge to all third
-    parties under the terms of this License.
+  A "covered work" means either the unmodified Program or a work based
+on the Program.
 
-    c) If the modified program normally reads commands interactively
-    when run, you must cause it, when started running for such
-    interactive use in the most ordinary way, to print or display an
-    announcement including an appropriate copyright notice and a
-    notice that there is no warranty (or else, saying that you provide
-    a warranty) and that users may redistribute the program under
-    these conditions, and telling the user how to view a copy of this
-    License.  (Exception: if the Program itself is interactive but
-    does not normally print such an announcement, your work based on
-    the Program is not required to print an announcement.)
-
-These requirements apply to the modified work as a whole.  If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works.  But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
+  To "propagate" a work means to do anything with it that, without
+permission, would make you directly or secondarily liable for
+infringement under applicable copyright law, except executing it on a
+computer or modifying a private copy.  Propagation includes copying,
+distribution (with or without modification), making available to the
+public, and in some countries other activities as well.
 
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
+  To "convey" a work means any kind of propagation that enables other
+parties to make or receive copies.  Mere interaction with a user through
+a computer network, with no transfer of a copy, is not conveying.
 
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
+  An interactive user interface displays "Appropriate Legal Notices"
+to the extent that it includes a convenient and prominently visible
+feature that (1) displays an appropriate copyright notice, and (2)
+tells the user that there is no warranty for the work (except to the
+extent that warranties are provided), that licensees may convey the
+work under this License, and how to view a copy of this License.  If
+the interface presents a list of user commands or options, such as a
+menu, a prominent item in the list meets this criterion.
 
-  3. You may copy and distribute the Program (or a work based on it,

[... truncated: 351289 lines follow ...]

Other related posts:

  • » [haiku-commits] r34011 - in haiku/vendor/bash/current: . CWRU CWRU/misc builtins doc ... - korli