mirror of
https://https.git.savannah.gnu.org/git/bash.git
synced 2026-06-27 15:43:18 +02:00
commit bash-20040121 snapshot
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
This document details the changes between this version, bash-3.0-alpha,
|
||||
and the previous version, bash-2.05b-release.
|
||||
This document details the changes between this version, bash-3.0-beta1,
|
||||
and the previous version, bash-3.0-alpha.
|
||||
|
||||
1. Changes to Bash
|
||||
|
||||
@@ -62,6 +62,19 @@ r. Fixes to the pattern removal and pattern replacement expansions to deal
|
||||
s. Fix to the substring expansion (${param:off[:len]}) to deal with (possibly
|
||||
multibyte) characters instead of raw bytes.
|
||||
|
||||
t. Fixed a bug that caused some key bindings set in an inputrc to be ignored
|
||||
at shell startup.
|
||||
|
||||
u. Fixed a bug that caused unsetting a local variable within a function to
|
||||
not work correctly.
|
||||
|
||||
v. Fixed a bug that caused invalid variables to be created when using
|
||||
`read -a'.
|
||||
|
||||
w. Fixed a bug that caused "$@" to expand incorrectly when used as the right
|
||||
hand side of a parameter expansion such as ${word:="$@"} if the first
|
||||
character of $IFS was not a space.
|
||||
|
||||
2. Changes to Readline
|
||||
|
||||
a. Change to history expansion functions to treat `^' as equivalent to word
|
||||
@@ -97,6 +110,12 @@ b. `echo -e' understands two new escape sequences: \" and \?.
|
||||
c. The GNU `gettext' package and libintl have been integrated; the shell's
|
||||
messages can be translated into different languages.
|
||||
|
||||
d. The `\W' prompt expansion now abbreviates $HOME as `~', like `\w'.
|
||||
|
||||
e. The error message printed when bash cannot open a shell script supplied
|
||||
as argument 1 now includes the name of the shell, to better identify
|
||||
the error as coming from bash.
|
||||
|
||||
4. New Features in Readline
|
||||
|
||||
a. New application variable, rl_completion_quote_character, set to any
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
This document details the changes between this version, bash-3.0-alpha,
|
||||
and the previous version, bash-2.05b-release.
|
||||
This document details the changes between this version, bash-3.0-beta1,
|
||||
and the previous version, bash-3.0-alpha.
|
||||
|
||||
1. Changes to Bash
|
||||
|
||||
@@ -62,6 +62,19 @@ r. Fixes to the pattern removal and pattern replacement expansions to deal
|
||||
s. Fix to the substring expansion (${param:off[:len]}) to deal with (possibly
|
||||
multibyte) characters instead of raw bytes.
|
||||
|
||||
t. Fixed a bug that caused some key bindings set in an inputrc to be ignored
|
||||
at shell startup.
|
||||
|
||||
u. Fixed a bug that caused unsetting a local variable within a function to
|
||||
not work correctly.
|
||||
|
||||
v. Fixed a bug that caused invalid variables to be created when using
|
||||
`read -a'.
|
||||
|
||||
w. Fixed a bug that caused "$@" to expand incorrectly when used as the right
|
||||
hand side of a parameter expansion such as ${word:="$@"} if the first
|
||||
character of $IFS was not a space.
|
||||
|
||||
2. Changes to Readline
|
||||
|
||||
a. Change to history expansion functions to treat `^' as equivalent to word
|
||||
@@ -83,6 +96,11 @@ e. Fixed a bug that could cause incorrect filename quoting when
|
||||
f. Fixed a bug in redisplay triggered when the prompt string contains
|
||||
invisible characters.
|
||||
|
||||
g. Fixed some display (and other) bugs encountered in multibyte locales
|
||||
when a non-ascii character was the last character on a line.
|
||||
|
||||
h. Fixed some display bugs caused by multibyte characters in prompt strings.
|
||||
|
||||
3. New Features in Bash
|
||||
|
||||
a. printf builtin understands two new escape sequences: \" and \?.
|
||||
@@ -92,6 +110,8 @@ b. `echo -e' understands two new escape sequences: \" and \?.
|
||||
c. The GNU `gettext' package and libintl have been integrated; the shell's
|
||||
messages can be translated into different languages.
|
||||
|
||||
d. The `\W' prompt expansion now abbreviates $HOME as `~', like `\w'.
|
||||
|
||||
4. New Features in Readline
|
||||
|
||||
a. New application variable, rl_completion_quote_character, set to any
|
||||
|
||||
@@ -8994,3 +8994,82 @@ lib/readline/mbutil.c
|
||||
back past it with ^B, and other display problems caused by the same
|
||||
situation
|
||||
|
||||
1/15
|
||||
----
|
||||
lib/readline/doc/rltech.texi
|
||||
- document RL_PROMPT_START_IGNORE and RL_PROMPT_END_IGNORE in the
|
||||
description of rl_expand_prompt()
|
||||
|
||||
1/20
|
||||
----
|
||||
bashline.c
|
||||
- in initialize_readline, make sure M-C-j and M-C-m are still bound to
|
||||
vi-editing-mode before unbinding them -- they may have been rebound
|
||||
in an inputrc
|
||||
|
||||
variables.c
|
||||
- in unbind_variable, unset attributes other than `local' and exported
|
||||
(if the variable came from a temporary environment) when unsetting a
|
||||
local variable inside a function
|
||||
|
||||
1/21
|
||||
----
|
||||
configure.in
|
||||
- add libintl build directory to the list of include directories if
|
||||
it's being built (using INTL_BUILDDIR)
|
||||
|
||||
Makefile.in,{builtins,lib/{sh,malloc}}/Makefile.in
|
||||
- substitute LIBBUILD as ${BUILD_DIR}/${LIBSUBDIR}
|
||||
- define INTL_BUILDDIR as ${LIBBUILD}/intl
|
||||
|
||||
{builtins,lib/sh}/Makefile.in
|
||||
- make sure INTL_INC is added to the list of include directories
|
||||
- make sure INTL_LIBSRC is defined with the correct value
|
||||
|
||||
{configure,Makefile,{builtins,lib/sh}/Makefile}.in
|
||||
- substitute LIBINTL_H as ${INTL_BUILDDIR}/libintl.h
|
||||
|
||||
Makefile.in,builtins/Makefile.iin
|
||||
- all files depending on bashintl.h also depend on ${LIBINTL_H}
|
||||
(which may be empty)
|
||||
|
||||
Makefile.in
|
||||
- make a rule telling how to build lib/intl/libintl.h if necessary
|
||||
|
||||
1/24
|
||||
----
|
||||
builtins/read.def
|
||||
- make sure that the array name supplied as an argument to -a is a
|
||||
valid identifier
|
||||
|
||||
parse.y
|
||||
- make the \W expansion abbreviate $HOME with a ~ (seems to be more
|
||||
useful)
|
||||
|
||||
doc/{bash.1,bashref.texi}
|
||||
- document new behavior of \W
|
||||
|
||||
subst.c
|
||||
- make sure parameter_brace_expand_rhs uses the first character of
|
||||
$IFS when making the string to return from the expanded word
|
||||
(which, in the case of "$@" or $@, contains multiple words that
|
||||
need to be separated)
|
||||
|
||||
1/25
|
||||
----
|
||||
builtins/common.c
|
||||
- change get_job_spec to make `%' by itself or an empty argument
|
||||
return NO_JOB
|
||||
|
||||
jobs.h
|
||||
- new possible value for a job spec return value: BAD_JOBSPEC
|
||||
(for syntactically invalid specs, like the empty string)
|
||||
|
||||
shell.c
|
||||
- in open_shell_script, check to see whether or not we can find and
|
||||
open the filename argument before setting dollar_vars[0] or
|
||||
manipulating BASH_SOURCE, so the error messages come out better
|
||||
|
||||
subst.c
|
||||
- in string_list_internal, short-circuit right away to savestring()
|
||||
if the list only has a single element
|
||||
|
||||
+114
-7
@@ -8955,10 +8955,117 @@ subst.c
|
||||
- new static function, mb_getcharlens, allocates and returns an array
|
||||
of character lengths for (possibly multibyte) characters in the
|
||||
argument string
|
||||
- change pattern matching operations to use while loops instead of for
|
||||
loops to handle multibyte characters better (no more simple increment
|
||||
or decrement); use multibyte character operations instead of simple
|
||||
increments and decrements. Don't use BACKUP_CHAR_P -- use the
|
||||
mblen array instead, because that avoids the N**2 behavior of having
|
||||
to count from the beginning of the string each time you want to
|
||||
back up one character. Changes to remove_pattern and match_pattern
|
||||
- change pattern matching operations to use while loops instead of
|
||||
for loops to handle multibyte characters better (no more simple
|
||||
increment or decrement)
|
||||
- change pattern matching operations to use multibyte character
|
||||
operations instead of simple increments and decrements. Don't
|
||||
use BACKUP_CHAR_P -- use the mblen array instead, because that
|
||||
avoids the N**2 behavior of having to count from the beginning
|
||||
of the string each time you want to back up one character. Changes
|
||||
to remove_pattern and match_pattern
|
||||
|
||||
1/12
|
||||
----
|
||||
lib/readline/display.c
|
||||
- make expand_prompt count multbyte characters in the prompt string
|
||||
by using _rl_find_next_mbchar (and copying possibly more than one
|
||||
byte) instead of a simple increment and single byte copy
|
||||
|
||||
1/13
|
||||
----
|
||||
lib/readline/display.c
|
||||
- expand_prompt takes a new reference argument -- it returns
|
||||
the actual count of (possibly multibyte) characters displayed
|
||||
on the screen
|
||||
- don't short-circuit in expand_prompt unless we're not going to
|
||||
be using any multibyte characters
|
||||
- change calls to expand_prompt to pass an argument for the
|
||||
number of physical characters the prompt occupies
|
||||
(prompt_physical_chars)
|
||||
- initialize `lpos' (the physical cursor position) from
|
||||
prompt_physical_chars in rl_redisplay
|
||||
|
||||
lib/readline/mbutil.c
|
||||
- in _rl_find_prev_mbchar_internal, if mbrtowc returns -1 or -2, and
|
||||
we assume that the character is a single-byte char, make sure we
|
||||
update `prev' so it doesn't get lost. Fixes problems encountered
|
||||
when a non-ascii char is the last char on the line and we're moving
|
||||
back past it with ^B, and other display problems caused by the same
|
||||
situation
|
||||
|
||||
1/15
|
||||
----
|
||||
lib/readline/doc/rltech.texi
|
||||
- document RL_PROMPT_START_IGNORE and RL_PROMPT_END_IGNORE in the
|
||||
description of rl_expand_prompt()
|
||||
|
||||
1/20
|
||||
----
|
||||
bashline.c
|
||||
- in initialize_readline, make sure M-C-j and M-C-m are still bound to
|
||||
vi-editing-mode before unbinding them -- they may have been rebound
|
||||
in an inputrc
|
||||
|
||||
variables.c
|
||||
- in unbind_variable, unset attributes other than `local' and exported
|
||||
(if the variable came from a temporary environment) when unsetting a
|
||||
local variable inside a function
|
||||
|
||||
1/21
|
||||
----
|
||||
configure.in
|
||||
- add libintl build directory to the list of include directories if
|
||||
it's being built (using INTL_BUILDDIR)
|
||||
|
||||
Makefile.in,{builtins,lib/{sh,malloc}}/Makefile.in
|
||||
- substitute LIBBUILD as ${BUILD_DIR}/${LIBSUBDIR}
|
||||
- define INTL_BUILDDIR as ${LIBBUILD}/intl
|
||||
|
||||
{builtins,lib/sh}/Makefile.in
|
||||
- make sure INTL_INC is added to the list of include directories
|
||||
- make sure INTL_LIBSRC is defined with the correct value
|
||||
|
||||
{configure,Makefile,{builtins,lib/sh}/Makefile}.in
|
||||
- substitute LIBINTL_H as ${INTL_BUILDDIR}/libintl.h
|
||||
|
||||
Makefile.in,builtins/Makefile.iin
|
||||
- all files depending on bashintl.h also depend on ${LIBINTL_H}
|
||||
(which may be empty)
|
||||
|
||||
Makefile.in
|
||||
- make a rule telling how to build lib/intl/libintl.h if necessary
|
||||
|
||||
1/24
|
||||
----
|
||||
builtins/read.def
|
||||
- make sure that the array name supplied as an argument to -a is a
|
||||
valid identifier
|
||||
|
||||
parse.y
|
||||
- make the \W expansion abbreviate $HOME with a ~ (seems to be more
|
||||
useful)
|
||||
|
||||
doc/{bash.1,bashref.texi}
|
||||
- document new behavior of \W
|
||||
|
||||
subst.c
|
||||
- make sure parameter_brace_expand_rhs uses the first character of
|
||||
$IFS when making the string to return from the expanded word
|
||||
(which, in the case of "$@" or $@, contains multiple words that
|
||||
need to be separated)
|
||||
|
||||
1/25
|
||||
----
|
||||
builtins/common.c
|
||||
- change get_job_spec to make `%' by itself or an empty argument
|
||||
return NO_JOB
|
||||
|
||||
jobs.h
|
||||
- new possible value for a job spec return value: BAD_JOBSPEC
|
||||
(for syntactically invalid specs, like the empty string)
|
||||
|
||||
shell.c
|
||||
- in open_shell_script, check to see whether or not we can find and
|
||||
open the filename argument before setting dollar_vars[0] or
|
||||
manipulating BASH_SOURCE, so the error messages come out better
|
||||
|
||||
@@ -707,6 +707,7 @@ 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-star1.sub f
|
||||
tests/dollar.right f
|
||||
tests/dstack.tests f
|
||||
|
||||
@@ -0,0 +1,955 @@
|
||||
#
|
||||
# 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
|
||||
lib/tilde/doc 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/doc/tilde.texi f
|
||||
lib/tilde/doc/Makefile 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/builtins.pot 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/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-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
|
||||
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/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/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
|
||||
+72
-65
@@ -159,6 +159,8 @@ dot = .
|
||||
LIBSUBDIR = lib
|
||||
LIBSRC = $(srcdir)/$(LIBSUBDIR)
|
||||
|
||||
LIBBUILD = ${BUILD_DIR}/${LIBSUBDIR}
|
||||
|
||||
SUBDIR_INCLUDES = -I. @RL_INCLUDE@ -I$(topdir) -I$(topdir)/$(LIBSUBDIR)
|
||||
|
||||
BUILD_INCLUDED_LIBINTL = @BUILD_INCLUDED_LIBINTL@
|
||||
@@ -319,12 +321,15 @@ TILDE_OBJ = $(TILDE_LIBDIR)/tilde.o
|
||||
INTL_LIBSRC = $(LIBSRC)/intl
|
||||
INTL_LIBDIR = $(dot)/$(LIBSUBDIR)/intl
|
||||
INTL_ABSSRC = ${topdir}/$(INTL_LIB)
|
||||
INTL_BUILDDIR = ${LIBBUILD}/intl
|
||||
|
||||
INTL_LIB = @LIBINTL@
|
||||
INTL_LIBRARY = $(INTL_LIBDIR)/libintl.a
|
||||
INTL_DEP = @INTL_DEP@
|
||||
INTL_INC = @INTL_INC@
|
||||
|
||||
LIBINTL_H = @LIBINTL_H@
|
||||
|
||||
# tests
|
||||
LIBINTL = @LIBINTL@
|
||||
LTLIBINTL = @LTLIBINTL@
|
||||
@@ -598,7 +603,9 @@ $(SHLIB_LIBRARY): config.h ${SHLIB_SOURCE}
|
||||
${INTL_LIBRARY}: config.h ${INTL_LIBDIR}/Makefile
|
||||
@echo making $@ in ${INTL_LIBDIR}
|
||||
@(cd ${INTL_LIBDIR} && \
|
||||
$(MAKE) $(MFLAGS) libintl.a) || exit 1
|
||||
$(MAKE) $(MFLAGS) all) || exit 1
|
||||
|
||||
${LIBINTL_H}: ${INTL_LIBRARY}
|
||||
|
||||
mksignames$(EXEEXT): $(SUPPORT_SRC)mksignames.c
|
||||
$(CC_FOR_BUILD) $(CCFLAGS_FOR_BUILD) -o $@ $(SUPPORT_SRC)mksignames.c
|
||||
@@ -897,7 +904,7 @@ list.o: shell.h syntax.h config.h bashjmp.h ${BASHINCDIR}/posixjmp.h command.h $
|
||||
list.o: general.h xmalloc.h bashtypes.h variables.h arrayfunc.h conftypes.h array.h hashlib.h
|
||||
list.o: quit.h ${BASHINCDIR}/maxpath.h unwind_prot.h dispose_cmd.h
|
||||
list.o: make_cmd.h subst.h sig.h pathnames.h externs.h
|
||||
locale.o: config.h bashtypes.h bashintl.h bashansi.h ${BASHINCDIR}/ansi_stdlib.h
|
||||
locale.o: config.h bashtypes.h bashintl.h ${LIBINTL_H} bashansi.h ${BASHINCDIR}/ansi_stdlib.h
|
||||
locale.o: shell.h syntax.h config.h bashjmp.h ${BASHINCDIR}/posixjmp.h command.h ${BASHINCDIR}/stdc.h error.h
|
||||
locale.o: general.h xmalloc.h bashtypes.h variables.h arrayfunc.h conftypes.h array.h hashlib.h
|
||||
locale.o: quit.h ${BASHINCDIR}/maxpath.h unwind_prot.h dispose_cmd.h
|
||||
@@ -1105,34 +1112,34 @@ subst.o: $(TILDE_LIBSRC)/tilde.h
|
||||
variables.o: $(TILDE_LIBSRC)/tilde.h
|
||||
|
||||
# libintl dependencies
|
||||
arrayfunc.o: bashintl.h $(BASHINCDIR)/gettext.h
|
||||
bashhist.o: bashintl.h $(BASHINCDIR)/gettext.h
|
||||
bashline.o: bashintl.h $(BASHINCDIR)/gettext.h
|
||||
braces.o: bashintl.h $(BASHINCDIR)/gettext.h
|
||||
error.o: bashintl.h $(BASHINCDIR)/gettext.h
|
||||
eval.o: bashintl.h $(BASHINCDIR)/gettext.h
|
||||
execute_cmd.o: bashintl.h $(BASHINCDIR)/gettext.h
|
||||
expr.o: bashintl.h $(BASHINCDIR)/gettext.h
|
||||
general.o: bashintl.h $(BASHINCDIR)/gettext.h
|
||||
input.o: bashintl.h $(BASHINCDIR)/gettext.h
|
||||
jobs.o: bashintl.h $(BASHINCDIR)/gettext.h
|
||||
mailcheck.o: bashintl.h $(BASHINCDIR)/gettext.h
|
||||
make_cmd.o: bashintl.h $(BASHINCDIR)/gettext.h
|
||||
nojobs.o: bashintl.h $(BASHINCDIR)/gettext.h
|
||||
parse.y: bashintl.h $(BASHINCDIR)/gettext.h
|
||||
pcomplete.o: bashintl.h $(BASHINCDIR)/gettext.h
|
||||
pcomplib.o: bashintl.h $(BASHINCDIR)/gettext.h
|
||||
print_cmd.o: bashintl.h $(BASHINCDIR)/gettext.h
|
||||
redir.o: bashintl.h $(BASHINCDIR)/gettext.h
|
||||
shell.o: bashintl.h $(BASHINCDIR)/gettext.h
|
||||
sig.o: bashintl.h $(BASHINCDIR)/gettext.h
|
||||
siglist.o: bashintl.h $(BASHINCDIR)/gettext.h
|
||||
subst.o: bashintl.h $(BASHINCDIR)/gettext.h
|
||||
test.o: bashintl.h $(BASHINCDIR)/gettext.h
|
||||
trap.o: bashintl.h $(BASHINCDIR)/gettext.h
|
||||
variables.o: bashintl.h $(BASHINCDIR)/gettext.h
|
||||
version.o: bashintl.h $(BASHINCDIR)/gettext.h
|
||||
xmalloc.o: bashintl.h $(BASHINCDIR)/gettext.h
|
||||
arrayfunc.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
bashhist.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
bashline.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
braces.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
error.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
eval.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
execute_cmd.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
expr.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
general.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
input.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
jobs.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
mailcheck.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
make_cmd.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
nojobs.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
parse.y: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
pcomplete.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
pcomplib.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
print_cmd.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
redir.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
shell.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
sig.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
siglist.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
subst.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
test.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
trap.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
variables.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
version.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
xmalloc.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
|
||||
# XXX - dependencies checked through here
|
||||
|
||||
@@ -1337,41 +1344,41 @@ builtins/complete.o: pcomplete.h
|
||||
builtins/complete.o: ${DEFSRC}/common.h ${DEFSRC}/bashgetopt.h
|
||||
|
||||
# libintl dependencies
|
||||
builtins/bind.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/break.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/caller.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/cd.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/common.c: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/complete.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/declare.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/enable.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/evalfile.c: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/exec.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/exit.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/fc.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/fg_bg.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/getopt.c: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/hash.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/help.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/history.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/inlib.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/jobs.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/kill.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/let.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/mkbuiltins.c: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/printf.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/pushd.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/read.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/return.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/set.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/setattr.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/shift.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/shopt.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/source.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/suspend.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/type.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/ulimit.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/umask.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
builtins/bind.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/break.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/caller.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/cd.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/common.c: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/complete.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/declare.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/enable.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/evalfile.c: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/exec.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/exit.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/fc.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/fg_bg.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/getopt.c: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/hash.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/help.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/history.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/inlib.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/jobs.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/kill.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/let.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/mkbuiltins.c: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/printf.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/pushd.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/read.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/return.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/set.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/setattr.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/shift.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/shopt.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/source.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/suspend.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/type.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/ulimit.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
builtins/umask.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
|
||||
# builtin library dependencies
|
||||
builtins/bind.o: $(RL_LIBSRC)/chardefs.h $(RL_LIBSRC)/readline.h
|
||||
|
||||
+1435
File diff suppressed because it is too large
Load Diff
@@ -1,5 +1,5 @@
|
||||
@%:@! /bin/sh
|
||||
@%:@ From configure.in for Bash 3.0, version 3.159, from autoconf version AC_ACVERSION.
|
||||
@%:@ From configure.in for Bash 3.0, version 3.160, from autoconf version AC_ACVERSION.
|
||||
@%:@ Guess values for system-dependent variables and create Makefiles.
|
||||
@%:@ Generated by GNU Autoconf 2.57 for bash 3.0-beta1.
|
||||
@%:@
|
||||
@@ -311,7 +311,7 @@ ac_includes_default="\
|
||||
# include <unistd.h>
|
||||
#endif"
|
||||
|
||||
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os EMACS lispdir DEBUGGER_START_FILE TESTSCRIPT PURIFY MALLOC_TARGET MALLOC_SRC MALLOC_LIB MALLOC_LIBRARY MALLOC_LDFLAGS MALLOC_DEP htmldir HELPDIR HELPDIRDEFINE HELPINSTALL CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP EGREP SIGNAMES_H CC_FOR_BUILD STATIC_LD CFLAGS_FOR_BUILD CPPFLAGS_FOR_BUILD LDFLAGS_FOR_BUILD RL_VERSION RL_MAJOR RL_MINOR READLINE_LIB READLINE_DEP RL_LIBDIR RL_INCLUDEDIR RL_INCLUDE HISTORY_LIB HISTORY_DEP HIST_LIBDIR INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA AR RANLIB ac_ct_RANLIB YACC SET_MAKE MAKE_SHELL MKINSTALLDIRS USE_NLS MSGFMT GMSGFMT XGETTEXT MSGMERGE ALLOCA GLIBC21 LIBICONV LTLIBICONV INTLBISON BUILD_INCLUDED_LIBINTL USE_INCLUDED_LIBINTL CATOBJEXT DATADIRNAME INSTOBJEXT GENCAT INTLOBJS INTL_LIBTOOL_SUFFIX_PREFIX INTLLIBS LIBINTL LTLIBINTL POSUB LIB@&t@OBJS INTL_DEP INTL_INC SIGLIST_O TERMCAP_LIB TERMCAP_DEP JOBS_O SHOBJ_CC SHOBJ_CFLAGS SHOBJ_LD SHOBJ_LDFLAGS SHOBJ_XLDFLAGS SHOBJ_LIBS SHOBJ_STATUS PROFILE_FLAGS incdir BUILD_DIR ARFLAGS BASHVERS RELSTATUS DEBUG MALLOC_DEBUG LOCAL_LIBS LOCAL_CFLAGS LOCAL_LDFLAGS LOCAL_DEFS LTLIBOBJS'
|
||||
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os EMACS lispdir DEBUGGER_START_FILE TESTSCRIPT PURIFY MALLOC_TARGET MALLOC_SRC MALLOC_LIB MALLOC_LIBRARY MALLOC_LDFLAGS MALLOC_DEP htmldir HELPDIR HELPDIRDEFINE HELPINSTALL CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP EGREP SIGNAMES_H CC_FOR_BUILD STATIC_LD CFLAGS_FOR_BUILD CPPFLAGS_FOR_BUILD LDFLAGS_FOR_BUILD RL_VERSION RL_MAJOR RL_MINOR READLINE_LIB READLINE_DEP RL_LIBDIR RL_INCLUDEDIR RL_INCLUDE HISTORY_LIB HISTORY_DEP HIST_LIBDIR INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA AR RANLIB ac_ct_RANLIB YACC SET_MAKE MAKE_SHELL MKINSTALLDIRS USE_NLS MSGFMT GMSGFMT XGETTEXT MSGMERGE ALLOCA GLIBC21 LIBICONV LTLIBICONV INTLBISON BUILD_INCLUDED_LIBINTL USE_INCLUDED_LIBINTL CATOBJEXT DATADIRNAME INSTOBJEXT GENCAT INTLOBJS INTL_LIBTOOL_SUFFIX_PREFIX INTLLIBS LIBINTL LTLIBINTL POSUB LIB@&t@OBJS INTL_DEP INTL_INC LIBINTL_H SIGLIST_O TERMCAP_LIB TERMCAP_DEP JOBS_O SHOBJ_CC SHOBJ_CFLAGS SHOBJ_LD SHOBJ_LDFLAGS SHOBJ_XLDFLAGS SHOBJ_LIBS SHOBJ_STATUS PROFILE_FLAGS incdir BUILD_DIR ARFLAGS BASHVERS RELSTATUS DEBUG MALLOC_DEBUG LOCAL_LIBS LOCAL_CFLAGS LOCAL_LDFLAGS LOCAL_DEFS LTLIBOBJS'
|
||||
ac_subst_files=''
|
||||
|
||||
# Initialize some variables set by options.
|
||||
@@ -13780,10 +13780,11 @@ fi
|
||||
done
|
||||
|
||||
|
||||
INTL_DEP= INTL_INC=
|
||||
INTL_DEP= INTL_INC= LIBINTL_H=
|
||||
if test "x$USE_INCLUDED_LIBINTL" = "xyes"; then
|
||||
INTL_DEP='${INTL_LIBDIR}/libintl.a'
|
||||
INTL_INC='-I${INTL_LIBSRC}'
|
||||
INTL_INC='-I${INTL_LIBSRC} -I${INTL_BUILDDIR}'
|
||||
LIBINTL_H='${INTL_BUILDDIR}/libintl.h'
|
||||
fi
|
||||
|
||||
|
||||
@@ -13791,6 +13792,7 @@ fi
|
||||
|
||||
|
||||
|
||||
|
||||
for ac_header in wctype.h
|
||||
do
|
||||
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
|
||||
@@ -24854,6 +24856,7 @@ s,@POSUB@,$POSUB,;t t
|
||||
s,@LIB@&t@OBJS@,$LIB@&t@OBJS,;t t
|
||||
s,@INTL_DEP@,$INTL_DEP,;t t
|
||||
s,@INTL_INC@,$INTL_INC,;t t
|
||||
s,@LIBINTL_H@,$LIBINTL_H,;t t
|
||||
s,@SIGLIST_O@,$SIGLIST_O,;t t
|
||||
s,@TERMCAP_LIB@,$TERMCAP_LIB,;t t
|
||||
s,@TERMCAP_DEP@,$TERMCAP_DEP,;t t
|
||||
|
||||
+81
-81
@@ -15,96 +15,96 @@
|
||||
'configure.in'
|
||||
],
|
||||
{
|
||||
'AC_STRUCT_ST_BLOCKS' => 1,
|
||||
'AH_OUTPUT' => 1,
|
||||
'AC_FUNC_STRERROR_R' => 1,
|
||||
'AC_CHECK_HEADERS' => 1,
|
||||
'AC_HEADER_MAJOR' => 1,
|
||||
'AC_FUNC_MMAP' => 1,
|
||||
'AC_INIT' => 1,
|
||||
'AM_CONDITIONAL' => 1,
|
||||
'AC_REPLACE_FNMATCH' => 1,
|
||||
'AC_FUNC_MKTIME' => 1,
|
||||
'AC_FUNC_CLOSEDIR_VOID' => 1,
|
||||
'AC_CHECK_TYPES' => 1,
|
||||
'AC_PROG_GCC_TRADITIONAL' => 1,
|
||||
'AC_FUNC_VPRINTF' => 1,
|
||||
'AC_FUNC_MBRTOWC' => 1,
|
||||
'AC_FUNC_STRTOD' => 1,
|
||||
'AC_FUNC_STRNLEN' => 1,
|
||||
'AM_AUTOMAKE_VERSION' => 1,
|
||||
'AC_PROG_CXX' => 1,
|
||||
'AC_TYPE_PID_T' => 1,
|
||||
'AC_STRUCT_ST_BLOCKS' => 1,
|
||||
'AC_PROG_INSTALL' => 1,
|
||||
'AC_PROG_CC' => 1,
|
||||
'AC_TYPE_OFF_T' => 1,
|
||||
'AC_PROG_YACC' => 1,
|
||||
'AC_PROG_CPP' => 1,
|
||||
'AC_C_INLINE' => 1,
|
||||
'AC_TYPE_UID_T' => 1,
|
||||
'AC_STRUCT_TM' => 1,
|
||||
'AC_FUNC_MKTIME' => 1,
|
||||
'AC_FUNC_MEMCMP' => 1,
|
||||
'AC_CONFIG_HEADERS' => 1,
|
||||
'AC_CHECK_HEADERS' => 1,
|
||||
'AC_HEADER_SYS_WAIT' => 1,
|
||||
'AC_CHECK_MEMBERS' => 1,
|
||||
'AC_HEADER_MAJOR' => 1,
|
||||
'AC_PROG_LIBTOOL' => 1,
|
||||
'AC_FUNC_REALLOC' => 1,
|
||||
'AC_FUNC_MBRTOWC' => 1,
|
||||
'AC_FUNC_SELECT_ARGTYPES' => 1,
|
||||
'AH_OUTPUT' => 1,
|
||||
'AC_FUNC_MMAP' => 1,
|
||||
'AC_FUNC_SETVBUF_REVERSED' => 1,
|
||||
'AC_FUNC_ERROR_AT_LINE' => 1,
|
||||
'AC_FUNC_STRCOLL' => 1,
|
||||
'AC_C_VOLATILE' => 1,
|
||||
'AC_FUNC_GETPGRP' => 1,
|
||||
'AC_TYPE_PID_T' => 1,
|
||||
'm4_pattern_allow' => 1,
|
||||
'AC_FUNC_UTIME_NULL' => 1,
|
||||
'AC_PROG_RANLIB' => 1,
|
||||
'm4_include' => 1,
|
||||
'AC_FUNC_STRERROR_R' => 1,
|
||||
'AC_FUNC_GETMNTENT' => 1,
|
||||
'AC_PROG_GCC_TRADITIONAL' => 1,
|
||||
'AC_STRUCT_TIMEZONE' => 1,
|
||||
'include' => 1,
|
||||
'AM_AUTOMAKE_VERSION' => 1,
|
||||
'AC_LIBSOURCE' => 1,
|
||||
'AC_SUBST' => 1,
|
||||
'AC_CHECK_LIB' => 1,
|
||||
'AC_C_CONST' => 1,
|
||||
'AC_FUNC_VPRINTF' => 1,
|
||||
'AC_TYPE_SIGNAL' => 1,
|
||||
'AC_FUNC_GETGROUPS' => 1,
|
||||
'AC_CANONICAL_HOST' => 1,
|
||||
'AC_HEADER_STDC' => 1,
|
||||
'AC_FUNC_STRTOD' => 1,
|
||||
'AC_PROG_LEX' => 1,
|
||||
'AC_FUNC_OBSTACK' => 1,
|
||||
'AM_MAINTAINER_MODE' => 1,
|
||||
'AC_INIT' => 1,
|
||||
'AC_PROG_LN_S' => 1,
|
||||
'AC_FUNC_SETPGRP' => 1,
|
||||
'AC_CONFIG_SUBDIRS' => 1,
|
||||
'AC_PROG_MAKE_SET' => 1,
|
||||
'AC_HEADER_TIME' => 1,
|
||||
'AC_FUNC_FORK' => 1,
|
||||
'AC_PROG_AWK' => 1,
|
||||
'AC_FUNC_CHOWN' => 1,
|
||||
'AC_FUNC_STRNLEN' => 1,
|
||||
'AM_INIT_AUTOMAKE' => 1,
|
||||
'AC_FUNC_ALLOCA' => 1,
|
||||
'AC_DEFINE_TRACE_LITERAL' => 1,
|
||||
'AC_FUNC_STRFTIME' => 1,
|
||||
'AC_PATH_X' => 1,
|
||||
'AC_REPLACE_FNMATCH' => 1,
|
||||
'AC_FUNC_WAIT3' => 1,
|
||||
'm4_pattern_forbid' => 1,
|
||||
'AC_CHECK_FUNCS' => 1,
|
||||
'AC_FUNC_STAT' => 1,
|
||||
'AC_CONFIG_AUX_DIR' => 1,
|
||||
'AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK' => 1,
|
||||
'AC_FUNC_MALLOC' => 1,
|
||||
'AC_FUNC_GETLOADAVG' => 1,
|
||||
'AC_PROG_INSTALL' => 1,
|
||||
'AC_HEADER_DIRENT' => 1,
|
||||
'AM_PROG_CC_C_O' => 1,
|
||||
'AC_PROG_LN_S' => 1,
|
||||
'AC_C_VOLATILE' => 1,
|
||||
'AC_TYPE_SIZE_T' => 1,
|
||||
'AC_FUNC_FSEEKO' => 1,
|
||||
'AC_TYPE_MODE_T' => 1,
|
||||
'AC_DECL_SYS_SIGLIST' => 1,
|
||||
'AM_GNU_GETTEXT' => 1,
|
||||
'AM_CONDITIONAL' => 1,
|
||||
'AC_CONFIG_FILES' => 1,
|
||||
'AC_FUNC_LSTAT' => 1,
|
||||
'AC_C_CONST' => 1,
|
||||
'AC_PATH_X' => 1,
|
||||
'AC_DEFINE_TRACE_LITERAL' => 1,
|
||||
'AC_STRUCT_TIMEZONE' => 1,
|
||||
'AC_FUNC_MEMCMP' => 1,
|
||||
'AC_CHECK_TYPES' => 1,
|
||||
'AC_CANONICAL_SYSTEM' => 1,
|
||||
'AC_HEADER_SYS_WAIT' => 1,
|
||||
'AC_SUBST' => 1,
|
||||
'AC_PROG_AWK' => 1,
|
||||
'AC_FUNC_REALLOC' => 1,
|
||||
'AC_PROG_RANLIB' => 1,
|
||||
'AC_FUNC_SELECT_ARGTYPES' => 1,
|
||||
'AC_DECL_SYS_SIGLIST' => 1,
|
||||
'AM_MAINTAINER_MODE' => 1,
|
||||
'AC_FUNC_MALLOC' => 1,
|
||||
'AC_FUNC_STRCOLL' => 1,
|
||||
'AC_PROG_LIBTOOL' => 1,
|
||||
'AC_FUNC_GETPGRP' => 1,
|
||||
'AC_CHECK_LIB' => 1,
|
||||
'AC_FUNC_SETVBUF_REVERSED' => 1,
|
||||
'AC_CHECK_FUNCS' => 1,
|
||||
'AC_LIBSOURCE' => 1,
|
||||
'AC_FUNC_ERROR_AT_LINE' => 1,
|
||||
'AC_STRUCT_TM' => 1,
|
||||
'AC_CONFIG_SUBDIRS' => 1,
|
||||
'AC_FUNC_WAIT3' => 1,
|
||||
'AC_PROG_CPP' => 1,
|
||||
'AC_FUNC_GETLOADAVG' => 1,
|
||||
'AC_TYPE_UID_T' => 1,
|
||||
'AC_CANONICAL_HOST' => 1,
|
||||
'AC_CONFIG_FILES' => 1,
|
||||
'AC_FUNC_STAT' => 1,
|
||||
'AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK' => 1,
|
||||
'AC_PROG_LEX' => 1,
|
||||
'AC_PROG_MAKE_SET' => 1,
|
||||
'AC_FUNC_ALLOCA' => 1,
|
||||
'AC_C_INLINE' => 1,
|
||||
'AC_FUNC_FSEEKO' => 1,
|
||||
'AC_CONFIG_HEADERS' => 1,
|
||||
'm4_include' => 1,
|
||||
'AC_HEADER_DIRENT' => 1,
|
||||
'AC_HEADER_STDC' => 1,
|
||||
'AC_FUNC_CHOWN' => 1,
|
||||
'AC_FUNC_LSTAT' => 1,
|
||||
'AC_CHECK_MEMBERS' => 1,
|
||||
'AM_PROG_CC_C_O' => 1,
|
||||
'm4_pattern_forbid' => 1,
|
||||
'AC_HEADER_STAT' => 1,
|
||||
'AC_PROG_CXX' => 1
|
||||
'AC_FUNC_UTIME_NULL' => 1,
|
||||
'AC_FUNC_GETMNTENT' => 1,
|
||||
'AC_FUNC_SETPGRP' => 1,
|
||||
'AC_FUNC_STRFTIME' => 1,
|
||||
'AC_FUNC_OBSTACK' => 1,
|
||||
'AC_FUNC_GETGROUPS' => 1,
|
||||
'AC_HEADER_TIME' => 1,
|
||||
'AC_TYPE_MODE_T' => 1,
|
||||
'AC_PROG_YACC' => 1,
|
||||
'm4_pattern_allow' => 1,
|
||||
'AC_TYPE_SIGNAL' => 1,
|
||||
'AC_CONFIG_AUX_DIR' => 1,
|
||||
'include' => 1
|
||||
}
|
||||
], 'Request' )
|
||||
);
|
||||
|
||||
+248
-247
@@ -869,327 +869,328 @@ m4trace:configure.in:680: -1- AH_OUTPUT([HAVE_STRCSPN], [/* Define to 1 if you h
|
||||
#undef HAVE_STRCSPN])
|
||||
m4trace:configure.in:680: -1- AH_OUTPUT([HAVE_STRDUP], [/* Define to 1 if you have the `strdup\' function. */
|
||||
#undef HAVE_STRDUP])
|
||||
m4trace:configure.in:687: -1- AC_SUBST([INTL_DEP])
|
||||
m4trace:configure.in:688: -1- AC_SUBST([INTL_INC])
|
||||
m4trace:configure.in:694: -1- AC_CHECK_HEADERS([wctype.h])
|
||||
m4trace:configure.in:694: -1- AH_OUTPUT([HAVE_WCTYPE_H], [/* Define to 1 if you have the <wctype.h> header file. */
|
||||
m4trace:configure.in:688: -1- AC_SUBST([INTL_DEP])
|
||||
m4trace:configure.in:689: -1- AC_SUBST([INTL_INC])
|
||||
m4trace:configure.in:690: -1- AC_SUBST([LIBINTL_H])
|
||||
m4trace:configure.in:696: -1- AC_CHECK_HEADERS([wctype.h])
|
||||
m4trace:configure.in:696: -1- AH_OUTPUT([HAVE_WCTYPE_H], [/* Define to 1 if you have the <wctype.h> header file. */
|
||||
#undef HAVE_WCTYPE_H])
|
||||
m4trace:configure.in:694: -1- AC_CHECK_HEADERS([wchar.h])
|
||||
m4trace:configure.in:694: -1- AH_OUTPUT([HAVE_WCHAR_H], [/* Define to 1 if you have the <wchar.h> header file. */
|
||||
m4trace:configure.in:696: -1- AC_CHECK_HEADERS([wchar.h])
|
||||
m4trace:configure.in:696: -1- AH_OUTPUT([HAVE_WCHAR_H], [/* Define to 1 if you have the <wchar.h> header file. */
|
||||
#undef HAVE_WCHAR_H])
|
||||
m4trace:configure.in:694: -1- AC_CHECK_HEADERS([langinfo.h])
|
||||
m4trace:configure.in:694: -1- AH_OUTPUT([HAVE_LANGINFO_H], [/* Define to 1 if you have the <langinfo.h> header file. */
|
||||
m4trace:configure.in:696: -1- AC_CHECK_HEADERS([langinfo.h])
|
||||
m4trace:configure.in:696: -1- AH_OUTPUT([HAVE_LANGINFO_H], [/* Define to 1 if you have the <langinfo.h> header file. */
|
||||
#undef HAVE_LANGINFO_H])
|
||||
m4trace:configure.in:694: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MBSRTOWCS])
|
||||
m4trace:configure.in:694: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MBRTOWC])
|
||||
m4trace:configure.in:694: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MBRLEN])
|
||||
m4trace:configure.in:694: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WCTOMB])
|
||||
m4trace:configure.in:694: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WCWIDTH])
|
||||
m4trace:configure.in:694: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MBSTATE_T])
|
||||
m4trace:configure.in:694: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LANGINFO_CODESET])
|
||||
m4trace:configure.in:698: -1- AC_CHECK_LIB([dl], [dlopen])
|
||||
m4trace:configure.in:698: -1- AH_OUTPUT([HAVE_LIBDL], [/* Define to 1 if you have the `dl\' library (-ldl). */
|
||||
m4trace:configure.in:696: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MBSRTOWCS])
|
||||
m4trace:configure.in:696: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MBRTOWC])
|
||||
m4trace:configure.in:696: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MBRLEN])
|
||||
m4trace:configure.in:696: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WCTOMB])
|
||||
m4trace:configure.in:696: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WCWIDTH])
|
||||
m4trace:configure.in:696: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MBSTATE_T])
|
||||
m4trace:configure.in:696: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LANGINFO_CODESET])
|
||||
m4trace:configure.in:700: -1- AC_CHECK_LIB([dl], [dlopen])
|
||||
m4trace:configure.in:700: -1- AH_OUTPUT([HAVE_LIBDL], [/* Define to 1 if you have the `dl\' library (-ldl). */
|
||||
#undef HAVE_LIBDL])
|
||||
m4trace:configure.in:698: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBDL])
|
||||
m4trace:configure.in:699: -1- AC_CHECK_FUNCS([dlopen dlclose dlsym])
|
||||
m4trace:configure.in:699: -1- AH_OUTPUT([HAVE_DLOPEN], [/* Define to 1 if you have the `dlopen\' function. */
|
||||
m4trace:configure.in:700: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBDL])
|
||||
m4trace:configure.in:701: -1- AC_CHECK_FUNCS([dlopen dlclose dlsym])
|
||||
m4trace:configure.in:701: -1- AH_OUTPUT([HAVE_DLOPEN], [/* Define to 1 if you have the `dlopen\' function. */
|
||||
#undef HAVE_DLOPEN])
|
||||
m4trace:configure.in:699: -1- AH_OUTPUT([HAVE_DLCLOSE], [/* Define to 1 if you have the `dlclose\' function. */
|
||||
m4trace:configure.in:701: -1- AH_OUTPUT([HAVE_DLCLOSE], [/* Define to 1 if you have the `dlclose\' function. */
|
||||
#undef HAVE_DLCLOSE])
|
||||
m4trace:configure.in:699: -1- AH_OUTPUT([HAVE_DLSYM], [/* Define to 1 if you have the `dlsym\' function. */
|
||||
m4trace:configure.in:701: -1- AH_OUTPUT([HAVE_DLSYM], [/* Define to 1 if you have the `dlsym\' function. */
|
||||
#undef HAVE_DLSYM])
|
||||
m4trace:configure.in:703: -1- AC_DECL_SYS_SIGLIST
|
||||
m4trace:configure.in:703: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_SYS_SIGLIST])
|
||||
m4trace:configure.in:703: -1- AH_OUTPUT([HAVE_DECL_SYS_SIGLIST], [/* Define to 1 if you have the declaration of `sys_siglist\', and to 0 if you
|
||||
m4trace:configure.in:705: -1- AC_DECL_SYS_SIGLIST
|
||||
m4trace:configure.in:705: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_SYS_SIGLIST])
|
||||
m4trace:configure.in:705: -1- AH_OUTPUT([HAVE_DECL_SYS_SIGLIST], [/* Define to 1 if you have the declaration of `sys_siglist\', and to 0 if you
|
||||
don\'t. */
|
||||
#undef HAVE_DECL_SYS_SIGLIST])
|
||||
m4trace:configure.in:703: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_SYS_SIGLIST])
|
||||
m4trace:configure.in:707: -1- AC_DEFINE_TRACE_LITERAL([HAVE_INET_ATON])
|
||||
m4trace:configure.in:707: -1- AC_LIBSOURCE([inet_aton.c])
|
||||
m4trace:configure.in:707: -1- AC_SUBST([LIB@&t@OBJS])
|
||||
m4trace:configure.in:713: -1- AC_CHECK_LIB([sun], [getpwent])
|
||||
m4trace:configure.in:713: -1- AH_OUTPUT([HAVE_LIBSUN], [/* Define to 1 if you have the `sun\' library (-lsun). */
|
||||
m4trace:configure.in:705: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_SYS_SIGLIST])
|
||||
m4trace:configure.in:709: -1- AC_DEFINE_TRACE_LITERAL([HAVE_INET_ATON])
|
||||
m4trace:configure.in:709: -1- AC_LIBSOURCE([inet_aton.c])
|
||||
m4trace:configure.in:709: -1- AC_SUBST([LIB@&t@OBJS])
|
||||
m4trace:configure.in:715: -1- AC_CHECK_LIB([sun], [getpwent])
|
||||
m4trace:configure.in:715: -1- AH_OUTPUT([HAVE_LIBSUN], [/* Define to 1 if you have the `sun\' library (-lsun). */
|
||||
#undef HAVE_LIBSUN])
|
||||
m4trace:configure.in:713: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBSUN])
|
||||
m4trace:configure.in:718: -1- AC_CHECK_LIB([socket], [getpeername], [bash_cv_have_socklib=yes], [bash_cv_have_socklib=no], [-lnsl])
|
||||
m4trace:configure.in:718: -1- AC_CHECK_LIB([nsl], [t_open], [bash_cv_have_libnsl=yes], [bash_cv_have_libnsl=no])
|
||||
m4trace:configure.in:718: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBSOCKET])
|
||||
m4trace:configure.in:718: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETPEERNAME])
|
||||
m4trace:configure.in:722: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETHOSTBYNAME])
|
||||
m4trace:configure.in:726: -1- AC_TYPE_UID_T
|
||||
m4trace:configure.in:726: -1- AC_DEFINE_TRACE_LITERAL([uid_t])
|
||||
m4trace:configure.in:726: -1- AH_OUTPUT([uid_t], [/* Define to `int\' if <sys/types.h> doesn\'t define. */
|
||||
m4trace:configure.in:715: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBSUN])
|
||||
m4trace:configure.in:720: -1- AC_CHECK_LIB([socket], [getpeername], [bash_cv_have_socklib=yes], [bash_cv_have_socklib=no], [-lnsl])
|
||||
m4trace:configure.in:720: -1- AC_CHECK_LIB([nsl], [t_open], [bash_cv_have_libnsl=yes], [bash_cv_have_libnsl=no])
|
||||
m4trace:configure.in:720: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBSOCKET])
|
||||
m4trace:configure.in:720: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETPEERNAME])
|
||||
m4trace:configure.in:724: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETHOSTBYNAME])
|
||||
m4trace:configure.in:728: -1- AC_TYPE_UID_T
|
||||
m4trace:configure.in:728: -1- AC_DEFINE_TRACE_LITERAL([uid_t])
|
||||
m4trace:configure.in:728: -1- AH_OUTPUT([uid_t], [/* Define to `int\' if <sys/types.h> doesn\'t define. */
|
||||
#undef uid_t])
|
||||
m4trace:configure.in:726: -1- AC_DEFINE_TRACE_LITERAL([gid_t])
|
||||
m4trace:configure.in:726: -1- AH_OUTPUT([gid_t], [/* Define to `int\' if <sys/types.h> doesn\'t define. */
|
||||
m4trace:configure.in:728: -1- AC_DEFINE_TRACE_LITERAL([gid_t])
|
||||
m4trace:configure.in:728: -1- AH_OUTPUT([gid_t], [/* Define to `int\' if <sys/types.h> doesn\'t define. */
|
||||
#undef gid_t])
|
||||
m4trace:configure.in:726: -1- AC_DEFINE_TRACE_LITERAL([GETGROUPS_T])
|
||||
m4trace:configure.in:726: -1- AH_OUTPUT([GETGROUPS_T], [/* Define to the type of elements in the array set by `getgroups\'. Usually
|
||||
m4trace:configure.in:728: -1- AC_DEFINE_TRACE_LITERAL([GETGROUPS_T])
|
||||
m4trace:configure.in:728: -1- AH_OUTPUT([GETGROUPS_T], [/* Define to the type of elements in the array set by `getgroups\'. Usually
|
||||
this is either `int\' or `gid_t\'. */
|
||||
#undef GETGROUPS_T])
|
||||
m4trace:configure.in:727: -1- AC_TYPE_OFF_T
|
||||
m4trace:configure.in:727: -1- AC_DEFINE_TRACE_LITERAL([off_t])
|
||||
m4trace:configure.in:727: -1- AH_OUTPUT([off_t], [/* Define to `long\' if <sys/types.h> does not define. */
|
||||
m4trace:configure.in:729: -1- AC_TYPE_OFF_T
|
||||
m4trace:configure.in:729: -1- AC_DEFINE_TRACE_LITERAL([off_t])
|
||||
m4trace:configure.in:729: -1- AH_OUTPUT([off_t], [/* Define to `long\' if <sys/types.h> does not define. */
|
||||
#undef off_t])
|
||||
m4trace:configure.in:728: -1- AC_TYPE_MODE_T
|
||||
m4trace:configure.in:728: -1- AC_DEFINE_TRACE_LITERAL([mode_t])
|
||||
m4trace:configure.in:728: -1- AH_OUTPUT([mode_t], [/* Define to `int\' if <sys/types.h> does not define. */
|
||||
m4trace:configure.in:730: -1- AC_TYPE_MODE_T
|
||||
m4trace:configure.in:730: -1- AC_DEFINE_TRACE_LITERAL([mode_t])
|
||||
m4trace:configure.in:730: -1- AH_OUTPUT([mode_t], [/* Define to `int\' if <sys/types.h> does not define. */
|
||||
#undef mode_t])
|
||||
m4trace:configure.in:729: -1- AC_TYPE_UID_T
|
||||
m4trace:configure.in:729: -1- AC_DEFINE_TRACE_LITERAL([uid_t])
|
||||
m4trace:configure.in:729: -1- AH_OUTPUT([uid_t], [/* Define to `int\' if <sys/types.h> doesn\'t define. */
|
||||
m4trace:configure.in:731: -1- AC_TYPE_UID_T
|
||||
m4trace:configure.in:731: -1- AC_DEFINE_TRACE_LITERAL([uid_t])
|
||||
m4trace:configure.in:731: -1- AH_OUTPUT([uid_t], [/* Define to `int\' if <sys/types.h> doesn\'t define. */
|
||||
#undef uid_t])
|
||||
m4trace:configure.in:729: -1- AC_DEFINE_TRACE_LITERAL([gid_t])
|
||||
m4trace:configure.in:729: -1- AH_OUTPUT([gid_t], [/* Define to `int\' if <sys/types.h> doesn\'t define. */
|
||||
m4trace:configure.in:731: -1- AC_DEFINE_TRACE_LITERAL([gid_t])
|
||||
m4trace:configure.in:731: -1- AH_OUTPUT([gid_t], [/* Define to `int\' if <sys/types.h> doesn\'t define. */
|
||||
#undef gid_t])
|
||||
m4trace:configure.in:730: -1- AC_TYPE_PID_T
|
||||
m4trace:configure.in:730: -1- AC_DEFINE_TRACE_LITERAL([pid_t])
|
||||
m4trace:configure.in:730: -1- AH_OUTPUT([pid_t], [/* Define to `int\' if <sys/types.h> does not define. */
|
||||
m4trace:configure.in:732: -1- AC_TYPE_PID_T
|
||||
m4trace:configure.in:732: -1- AC_DEFINE_TRACE_LITERAL([pid_t])
|
||||
m4trace:configure.in:732: -1- AH_OUTPUT([pid_t], [/* Define to `int\' if <sys/types.h> does not define. */
|
||||
#undef pid_t])
|
||||
m4trace:configure.in:731: -1- AC_TYPE_SIZE_T
|
||||
m4trace:configure.in:731: -1- AC_DEFINE_TRACE_LITERAL([size_t])
|
||||
m4trace:configure.in:731: -1- AH_OUTPUT([size_t], [/* Define to `unsigned\' if <sys/types.h> does not define. */
|
||||
m4trace:configure.in:733: -1- AC_TYPE_SIZE_T
|
||||
m4trace:configure.in:733: -1- AC_DEFINE_TRACE_LITERAL([size_t])
|
||||
m4trace:configure.in:733: -1- AH_OUTPUT([size_t], [/* Define to `unsigned\' if <sys/types.h> does not define. */
|
||||
#undef size_t])
|
||||
m4trace:configure.in:732: -1- AC_DEFINE_TRACE_LITERAL([ssize_t])
|
||||
m4trace:configure.in:732: -1- AH_OUTPUT([ssize_t], [/* Define to `int\' if <sys/types.h> does not define. */
|
||||
m4trace:configure.in:734: -1- AC_DEFINE_TRACE_LITERAL([ssize_t])
|
||||
m4trace:configure.in:734: -1- AH_OUTPUT([ssize_t], [/* Define to `int\' if <sys/types.h> does not define. */
|
||||
#undef ssize_t])
|
||||
m4trace:configure.in:733: -1- AC_DEFINE_TRACE_LITERAL([time_t])
|
||||
m4trace:configure.in:733: -1- AH_OUTPUT([time_t], [/* Define to `long\' if <sys/types.h> does not define. */
|
||||
m4trace:configure.in:735: -1- AC_DEFINE_TRACE_LITERAL([time_t])
|
||||
m4trace:configure.in:735: -1- AH_OUTPUT([time_t], [/* Define to `long\' if <sys/types.h> does not define. */
|
||||
#undef time_t])
|
||||
m4trace:configure.in:735: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LONG_LONG])
|
||||
m4trace:configure.in:736: -1- AC_DEFINE_TRACE_LITERAL([HAVE_UNSIGNED_LONG_LONG])
|
||||
m4trace:configure.in:738: -1- AC_TYPE_SIGNAL
|
||||
m4trace:configure.in:738: -1- AC_DEFINE_TRACE_LITERAL([RETSIGTYPE])
|
||||
m4trace:configure.in:738: -1- AH_OUTPUT([RETSIGTYPE], [/* Define as the return type of signal handlers (`int\' or `void\'). */
|
||||
m4trace:configure.in:737: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LONG_LONG])
|
||||
m4trace:configure.in:738: -1- AC_DEFINE_TRACE_LITERAL([HAVE_UNSIGNED_LONG_LONG])
|
||||
m4trace:configure.in:740: -1- AC_TYPE_SIGNAL
|
||||
m4trace:configure.in:740: -1- AC_DEFINE_TRACE_LITERAL([RETSIGTYPE])
|
||||
m4trace:configure.in:740: -1- AH_OUTPUT([RETSIGTYPE], [/* Define as the return type of signal handlers (`int\' or `void\'). */
|
||||
#undef RETSIGTYPE])
|
||||
m4trace:configure.in:740: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_CHAR])
|
||||
m4trace:configure.in:740: -1- AH_OUTPUT([SIZEOF_CHAR], [/* The size of a `char\', as computed by sizeof. */
|
||||
m4trace:configure.in:742: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_CHAR])
|
||||
m4trace:configure.in:742: -1- AH_OUTPUT([SIZEOF_CHAR], [/* The size of a `char\', as computed by sizeof. */
|
||||
#undef SIZEOF_CHAR])
|
||||
m4trace:configure.in:741: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_SHORT])
|
||||
m4trace:configure.in:741: -1- AH_OUTPUT([SIZEOF_SHORT], [/* The size of a `short\', as computed by sizeof. */
|
||||
m4trace:configure.in:743: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_SHORT])
|
||||
m4trace:configure.in:743: -1- AH_OUTPUT([SIZEOF_SHORT], [/* The size of a `short\', as computed by sizeof. */
|
||||
#undef SIZEOF_SHORT])
|
||||
m4trace:configure.in:742: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_INT])
|
||||
m4trace:configure.in:742: -1- AH_OUTPUT([SIZEOF_INT], [/* The size of a `int\', as computed by sizeof. */
|
||||
m4trace:configure.in:744: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_INT])
|
||||
m4trace:configure.in:744: -1- AH_OUTPUT([SIZEOF_INT], [/* The size of a `int\', as computed by sizeof. */
|
||||
#undef SIZEOF_INT])
|
||||
m4trace:configure.in:743: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_LONG])
|
||||
m4trace:configure.in:743: -1- AH_OUTPUT([SIZEOF_LONG], [/* The size of a `long\', as computed by sizeof. */
|
||||
m4trace:configure.in:745: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_LONG])
|
||||
m4trace:configure.in:745: -1- AH_OUTPUT([SIZEOF_LONG], [/* The size of a `long\', as computed by sizeof. */
|
||||
#undef SIZEOF_LONG])
|
||||
m4trace:configure.in:744: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_CHAR_P])
|
||||
m4trace:configure.in:744: -1- AH_OUTPUT([SIZEOF_CHAR_P], [/* The size of a `char *\', as computed by sizeof. */
|
||||
m4trace:configure.in:746: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_CHAR_P])
|
||||
m4trace:configure.in:746: -1- AH_OUTPUT([SIZEOF_CHAR_P], [/* The size of a `char *\', as computed by sizeof. */
|
||||
#undef SIZEOF_CHAR_P])
|
||||
m4trace:configure.in:745: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_DOUBLE])
|
||||
m4trace:configure.in:745: -1- AH_OUTPUT([SIZEOF_DOUBLE], [/* The size of a `double\', as computed by sizeof. */
|
||||
m4trace:configure.in:747: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_DOUBLE])
|
||||
m4trace:configure.in:747: -1- AH_OUTPUT([SIZEOF_DOUBLE], [/* The size of a `double\', as computed by sizeof. */
|
||||
#undef SIZEOF_DOUBLE])
|
||||
m4trace:configure.in:746: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_LONG_LONG])
|
||||
m4trace:configure.in:746: -1- AH_OUTPUT([SIZEOF_LONG_LONG], [/* The size of a `long long\', as computed by sizeof. */
|
||||
m4trace:configure.in:748: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_LONG_LONG])
|
||||
m4trace:configure.in:748: -1- AH_OUTPUT([SIZEOF_LONG_LONG], [/* The size of a `long long\', as computed by sizeof. */
|
||||
#undef SIZEOF_LONG_LONG])
|
||||
m4trace:configure.in:748: -1- AC_DEFINE_TRACE_LITERAL([u_int])
|
||||
m4trace:configure.in:748: -1- AH_OUTPUT([u_int], [/* Define to `unsigned int\' if <sys/types.h> does not define. */
|
||||
m4trace:configure.in:750: -1- AC_DEFINE_TRACE_LITERAL([u_int])
|
||||
m4trace:configure.in:750: -1- AH_OUTPUT([u_int], [/* Define to `unsigned int\' if <sys/types.h> does not define. */
|
||||
#undef u_int])
|
||||
m4trace:configure.in:749: -1- AC_DEFINE_TRACE_LITERAL([u_long])
|
||||
m4trace:configure.in:749: -1- AH_OUTPUT([u_long], [/* Define to `unsigned long\' if <sys/types.h> does not define. */
|
||||
m4trace:configure.in:751: -1- AC_DEFINE_TRACE_LITERAL([u_long])
|
||||
m4trace:configure.in:751: -1- AH_OUTPUT([u_long], [/* Define to `unsigned long\' if <sys/types.h> does not define. */
|
||||
#undef u_long])
|
||||
m4trace:configure.in:751: -1- AC_DEFINE_TRACE_LITERAL([bits16_t])
|
||||
m4trace:configure.in:751: -1- AH_OUTPUT([bits16_t], [/* Define to `short\' if <sys/types.h> does not define. */
|
||||
m4trace:configure.in:753: -1- AC_DEFINE_TRACE_LITERAL([bits16_t])
|
||||
m4trace:configure.in:753: -1- AH_OUTPUT([bits16_t], [/* Define to `short\' if <sys/types.h> does not define. */
|
||||
#undef bits16_t])
|
||||
m4trace:configure.in:751: -1- AC_DEFINE_TRACE_LITERAL([bits16_t])
|
||||
m4trace:configure.in:751: -1- AH_OUTPUT([bits16_t], [/* Define to `char\' if <sys/types.h> does not define. */
|
||||
m4trace:configure.in:753: -1- AC_DEFINE_TRACE_LITERAL([bits16_t])
|
||||
m4trace:configure.in:753: -1- AH_OUTPUT([bits16_t], [/* Define to `char\' if <sys/types.h> does not define. */
|
||||
#undef bits16_t])
|
||||
m4trace:configure.in:751: -1- AC_DEFINE_TRACE_LITERAL([bits16_t])
|
||||
m4trace:configure.in:751: -1- AH_OUTPUT([bits16_t], [/* Define to `short\' if <sys/types.h> does not define. */
|
||||
m4trace:configure.in:753: -1- AC_DEFINE_TRACE_LITERAL([bits16_t])
|
||||
m4trace:configure.in:753: -1- AH_OUTPUT([bits16_t], [/* Define to `short\' if <sys/types.h> does not define. */
|
||||
#undef bits16_t])
|
||||
m4trace:configure.in:752: -1- AC_DEFINE_TRACE_LITERAL([u_bits16_t])
|
||||
m4trace:configure.in:752: -1- AH_OUTPUT([u_bits16_t], [/* Define to `unsigned short\' if <sys/types.h> does not define. */
|
||||
m4trace:configure.in:754: -1- AC_DEFINE_TRACE_LITERAL([u_bits16_t])
|
||||
m4trace:configure.in:754: -1- AH_OUTPUT([u_bits16_t], [/* Define to `unsigned short\' if <sys/types.h> does not define. */
|
||||
#undef u_bits16_t])
|
||||
m4trace:configure.in:752: -1- AC_DEFINE_TRACE_LITERAL([u_bits16_t])
|
||||
m4trace:configure.in:752: -1- AH_OUTPUT([u_bits16_t], [/* Define to `unsigned char\' if <sys/types.h> does not define. */
|
||||
m4trace:configure.in:754: -1- AC_DEFINE_TRACE_LITERAL([u_bits16_t])
|
||||
m4trace:configure.in:754: -1- AH_OUTPUT([u_bits16_t], [/* Define to `unsigned char\' if <sys/types.h> does not define. */
|
||||
#undef u_bits16_t])
|
||||
m4trace:configure.in:752: -1- AC_DEFINE_TRACE_LITERAL([u_bits16_t])
|
||||
m4trace:configure.in:752: -1- AH_OUTPUT([u_bits16_t], [/* Define to `unsigned short\' if <sys/types.h> does not define. */
|
||||
m4trace:configure.in:754: -1- AC_DEFINE_TRACE_LITERAL([u_bits16_t])
|
||||
m4trace:configure.in:754: -1- AH_OUTPUT([u_bits16_t], [/* Define to `unsigned short\' if <sys/types.h> does not define. */
|
||||
#undef u_bits16_t])
|
||||
m4trace:configure.in:753: -1- AC_DEFINE_TRACE_LITERAL([bits32_t])
|
||||
m4trace:configure.in:753: -1- AH_OUTPUT([bits32_t], [/* Define to `int\' if <sys/types.h> does not define. */
|
||||
m4trace:configure.in:755: -1- AC_DEFINE_TRACE_LITERAL([bits32_t])
|
||||
m4trace:configure.in:755: -1- AH_OUTPUT([bits32_t], [/* Define to `int\' if <sys/types.h> does not define. */
|
||||
#undef bits32_t])
|
||||
m4trace:configure.in:753: -1- AC_DEFINE_TRACE_LITERAL([bits32_t])
|
||||
m4trace:configure.in:753: -1- AH_OUTPUT([bits32_t], [/* Define to `long\' if <sys/types.h> does not define. */
|
||||
m4trace:configure.in:755: -1- AC_DEFINE_TRACE_LITERAL([bits32_t])
|
||||
m4trace:configure.in:755: -1- AH_OUTPUT([bits32_t], [/* Define to `long\' if <sys/types.h> does not define. */
|
||||
#undef bits32_t])
|
||||
m4trace:configure.in:753: -1- AC_DEFINE_TRACE_LITERAL([bits32_t])
|
||||
m4trace:configure.in:753: -1- AH_OUTPUT([bits32_t], [/* Define to `int\' if <sys/types.h> does not define. */
|
||||
m4trace:configure.in:755: -1- AC_DEFINE_TRACE_LITERAL([bits32_t])
|
||||
m4trace:configure.in:755: -1- AH_OUTPUT([bits32_t], [/* Define to `int\' if <sys/types.h> does not define. */
|
||||
#undef bits32_t])
|
||||
m4trace:configure.in:754: -1- AC_DEFINE_TRACE_LITERAL([u_bits32_t])
|
||||
m4trace:configure.in:754: -1- AH_OUTPUT([u_bits32_t], [/* Define to `unsigned int\' if <sys/types.h> does not define. */
|
||||
m4trace:configure.in:756: -1- AC_DEFINE_TRACE_LITERAL([u_bits32_t])
|
||||
m4trace:configure.in:756: -1- AH_OUTPUT([u_bits32_t], [/* Define to `unsigned int\' if <sys/types.h> does not define. */
|
||||
#undef u_bits32_t])
|
||||
m4trace:configure.in:754: -1- AC_DEFINE_TRACE_LITERAL([u_bits32_t])
|
||||
m4trace:configure.in:754: -1- AH_OUTPUT([u_bits32_t], [/* Define to `unsigned long\' if <sys/types.h> does not define. */
|
||||
m4trace:configure.in:756: -1- AC_DEFINE_TRACE_LITERAL([u_bits32_t])
|
||||
m4trace:configure.in:756: -1- AH_OUTPUT([u_bits32_t], [/* Define to `unsigned long\' if <sys/types.h> does not define. */
|
||||
#undef u_bits32_t])
|
||||
m4trace:configure.in:754: -1- AC_DEFINE_TRACE_LITERAL([u_bits32_t])
|
||||
m4trace:configure.in:754: -1- AH_OUTPUT([u_bits32_t], [/* Define to `unsigned int\' if <sys/types.h> does not define. */
|
||||
m4trace:configure.in:756: -1- AC_DEFINE_TRACE_LITERAL([u_bits32_t])
|
||||
m4trace:configure.in:756: -1- AH_OUTPUT([u_bits32_t], [/* Define to `unsigned int\' if <sys/types.h> does not define. */
|
||||
#undef u_bits32_t])
|
||||
m4trace:configure.in:755: -1- AC_DEFINE_TRACE_LITERAL([bits64_t])
|
||||
m4trace:configure.in:755: -1- AH_OUTPUT([bits64_t], [/* Define to `char *\' if <sys/types.h> does not define. */
|
||||
m4trace:configure.in:757: -1- AC_DEFINE_TRACE_LITERAL([bits64_t])
|
||||
m4trace:configure.in:757: -1- AH_OUTPUT([bits64_t], [/* Define to `char *\' if <sys/types.h> does not define. */
|
||||
#undef bits64_t])
|
||||
m4trace:configure.in:755: -1- AC_DEFINE_TRACE_LITERAL([bits64_t])
|
||||
m4trace:configure.in:755: -1- AH_OUTPUT([bits64_t], [/* Define to `double\' if <sys/types.h> does not define. */
|
||||
m4trace:configure.in:757: -1- AC_DEFINE_TRACE_LITERAL([bits64_t])
|
||||
m4trace:configure.in:757: -1- AH_OUTPUT([bits64_t], [/* Define to `double\' if <sys/types.h> does not define. */
|
||||
#undef bits64_t])
|
||||
m4trace:configure.in:755: -1- AC_DEFINE_TRACE_LITERAL([bits64_t])
|
||||
m4trace:configure.in:755: -1- AH_OUTPUT([bits64_t], [/* Define to `long long\' if <sys/types.h> does not define. */
|
||||
m4trace:configure.in:757: -1- AC_DEFINE_TRACE_LITERAL([bits64_t])
|
||||
m4trace:configure.in:757: -1- AH_OUTPUT([bits64_t], [/* Define to `long long\' if <sys/types.h> does not define. */
|
||||
#undef bits64_t])
|
||||
m4trace:configure.in:755: -1- AC_DEFINE_TRACE_LITERAL([bits64_t])
|
||||
m4trace:configure.in:755: -1- AH_OUTPUT([bits64_t], [/* Define to `long\' if <sys/types.h> does not define. */
|
||||
m4trace:configure.in:757: -1- AC_DEFINE_TRACE_LITERAL([bits64_t])
|
||||
m4trace:configure.in:757: -1- AH_OUTPUT([bits64_t], [/* Define to `long\' if <sys/types.h> does not define. */
|
||||
#undef bits64_t])
|
||||
m4trace:configure.in:755: -1- AC_DEFINE_TRACE_LITERAL([bits64_t])
|
||||
m4trace:configure.in:755: -1- AH_OUTPUT([bits64_t], [/* Define to `double\' if <sys/types.h> does not define. */
|
||||
m4trace:configure.in:757: -1- AC_DEFINE_TRACE_LITERAL([bits64_t])
|
||||
m4trace:configure.in:757: -1- AH_OUTPUT([bits64_t], [/* Define to `double\' if <sys/types.h> does not define. */
|
||||
#undef bits64_t])
|
||||
m4trace:configure.in:757: -1- AC_DEFINE_TRACE_LITERAL([ptrdiff_t])
|
||||
m4trace:configure.in:757: -1- AH_OUTPUT([ptrdiff_t], [/* Define to `int\' if <sys/types.h> does not define. */
|
||||
m4trace:configure.in:759: -1- AC_DEFINE_TRACE_LITERAL([ptrdiff_t])
|
||||
m4trace:configure.in:759: -1- AH_OUTPUT([ptrdiff_t], [/* Define to `int\' if <sys/types.h> does not define. */
|
||||
#undef ptrdiff_t])
|
||||
m4trace:configure.in:757: -1- AC_DEFINE_TRACE_LITERAL([ptrdiff_t])
|
||||
m4trace:configure.in:757: -1- AH_OUTPUT([ptrdiff_t], [/* Define to `long\' if <sys/types.h> does not define. */
|
||||
m4trace:configure.in:759: -1- AC_DEFINE_TRACE_LITERAL([ptrdiff_t])
|
||||
m4trace:configure.in:759: -1- AH_OUTPUT([ptrdiff_t], [/* Define to `long\' if <sys/types.h> does not define. */
|
||||
#undef ptrdiff_t])
|
||||
m4trace:configure.in:757: -1- AC_DEFINE_TRACE_LITERAL([ptrdiff_t])
|
||||
m4trace:configure.in:757: -1- AH_OUTPUT([ptrdiff_t], [/* Define to `long long\' if <sys/types.h> does not define. */
|
||||
m4trace:configure.in:759: -1- AC_DEFINE_TRACE_LITERAL([ptrdiff_t])
|
||||
m4trace:configure.in:759: -1- AH_OUTPUT([ptrdiff_t], [/* Define to `long long\' if <sys/types.h> does not define. */
|
||||
#undef ptrdiff_t])
|
||||
m4trace:configure.in:757: -1- AC_DEFINE_TRACE_LITERAL([ptrdiff_t])
|
||||
m4trace:configure.in:757: -1- AH_OUTPUT([ptrdiff_t], [/* Define to `int\' if <sys/types.h> does not define. */
|
||||
m4trace:configure.in:759: -1- AC_DEFINE_TRACE_LITERAL([ptrdiff_t])
|
||||
m4trace:configure.in:759: -1- AH_OUTPUT([ptrdiff_t], [/* Define to `int\' if <sys/types.h> does not define. */
|
||||
#undef ptrdiff_t])
|
||||
m4trace:configure.in:760: -1- AC_HEADER_STAT
|
||||
m4trace:configure.in:760: -1- AC_DEFINE_TRACE_LITERAL([STAT_MACROS_BROKEN])
|
||||
m4trace:configure.in:760: -1- AH_OUTPUT([STAT_MACROS_BROKEN], [/* Define to 1 if the `S_IS*\' macros in <sys/stat.h> do not work properly. */
|
||||
m4trace:configure.in:762: -1- AC_HEADER_STAT
|
||||
m4trace:configure.in:762: -1- AC_DEFINE_TRACE_LITERAL([STAT_MACROS_BROKEN])
|
||||
m4trace:configure.in:762: -1- AH_OUTPUT([STAT_MACROS_BROKEN], [/* Define to 1 if the `S_IS*\' macros in <sys/stat.h> do not work properly. */
|
||||
#undef STAT_MACROS_BROKEN])
|
||||
m4trace:configure.in:765: -1- AC_DEFINE_TRACE_LITERAL([HAVE_HASH_BANG_EXEC])
|
||||
m4trace:configure.in:770: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LSTAT])
|
||||
m4trace:configure.in:774: -1- AC_DEFINE_TRACE_LITERAL([CTYPE_NON_ASCII])
|
||||
m4trace:configure.in:775: -1- AC_DEFINE_TRACE_LITERAL([DUP2_BROKEN])
|
||||
m4trace:configure.in:776: -1- AC_DEFINE_TRACE_LITERAL([PGRP_PIPE])
|
||||
m4trace:configure.in:777: -1- AC_DEFINE_TRACE_LITERAL([HAVE_POSIX_SIGNALS])
|
||||
m4trace:configure.in:777: -1- AC_DEFINE_TRACE_LITERAL([HAVE_BSD_SIGNALS])
|
||||
m4trace:configure.in:777: -1- AC_DEFINE_TRACE_LITERAL([HAVE_USG_SIGHOLD])
|
||||
m4trace:configure.in:780: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SYS_ERRLIST])
|
||||
m4trace:configure.in:781: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SYS_SIGLIST])
|
||||
m4trace:configure.in:782: -1- AC_DEFINE_TRACE_LITERAL([UNDER_SYS_SIGLIST_DECLARED])
|
||||
m4trace:configure.in:782: -1- AC_DEFINE_TRACE_LITERAL([HAVE_UNDER_SYS_SIGLIST])
|
||||
m4trace:configure.in:785: -1- AC_DEFINE_TRACE_LITERAL([VOID_SIGHANDLER])
|
||||
m4trace:configure.in:786: -1- AC_DEFINE_TRACE_LITERAL([clock_t])
|
||||
m4trace:configure.in:787: -1- AC_DEFINE_TRACE_LITERAL([sigset_t])
|
||||
m4trace:configure.in:788: -1- AC_DEFINE_TRACE_LITERAL([HAVE_QUAD_T])
|
||||
m4trace:configure.in:788: -1- AC_DEFINE_TRACE_LITERAL([quad_t])
|
||||
m4trace:configure.in:789: -1- AC_DEFINE_TRACE_LITERAL([intmax_t])
|
||||
m4trace:configure.in:790: -1- AC_DEFINE_TRACE_LITERAL([uintmax_t])
|
||||
m4trace:configure.in:792: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SOCKLEN_T])
|
||||
m4trace:configure.in:792: -1- AC_DEFINE_TRACE_LITERAL([socklen_t])
|
||||
m4trace:configure.in:794: -1- AC_DEFINE_TRACE_LITERAL([RLIMTYPE])
|
||||
m4trace:configure.in:794: -1- AC_DEFINE_TRACE_LITERAL([RLIMTYPE])
|
||||
m4trace:configure.in:797: -2- AC_DEFINE_TRACE_LITERAL([TERMIOS_LDISC])
|
||||
m4trace:configure.in:798: -2- AC_DEFINE_TRACE_LITERAL([TERMIO_LDISC])
|
||||
m4trace:configure.in:799: -1- AC_DEFINE_TRACE_LITERAL([STRUCT_DIRENT_HAS_D_INO])
|
||||
m4trace:configure.in:800: -1- AC_DEFINE_TRACE_LITERAL([STRUCT_DIRENT_HAS_D_FILENO])
|
||||
m4trace:configure.in:801: -1- AC_DEFINE_TRACE_LITERAL([STRUCT_WINSIZE_IN_SYS_IOCTL])
|
||||
m4trace:configure.in:801: -1- AC_DEFINE_TRACE_LITERAL([STRUCT_WINSIZE_IN_TERMIOS])
|
||||
m4trace:configure.in:802: -1- AC_DEFINE_TRACE_LITERAL([HAVE_TIMEVAL])
|
||||
m4trace:configure.in:803: -1- AC_CHECK_MEMBERS([struct stat.st_blocks])
|
||||
m4trace:configure.in:803: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_STAT_ST_BLOCKS])
|
||||
m4trace:configure.in:803: -1- AH_OUTPUT([HAVE_STRUCT_STAT_ST_BLOCKS], [/* Define to 1 if `st_blocks\' is member of `struct stat\'. */
|
||||
m4trace:configure.in:767: -1- AC_DEFINE_TRACE_LITERAL([HAVE_HASH_BANG_EXEC])
|
||||
m4trace:configure.in:772: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LSTAT])
|
||||
m4trace:configure.in:776: -1- AC_DEFINE_TRACE_LITERAL([CTYPE_NON_ASCII])
|
||||
m4trace:configure.in:777: -1- AC_DEFINE_TRACE_LITERAL([DUP2_BROKEN])
|
||||
m4trace:configure.in:778: -1- AC_DEFINE_TRACE_LITERAL([PGRP_PIPE])
|
||||
m4trace:configure.in:779: -1- AC_DEFINE_TRACE_LITERAL([HAVE_POSIX_SIGNALS])
|
||||
m4trace:configure.in:779: -1- AC_DEFINE_TRACE_LITERAL([HAVE_BSD_SIGNALS])
|
||||
m4trace:configure.in:779: -1- AC_DEFINE_TRACE_LITERAL([HAVE_USG_SIGHOLD])
|
||||
m4trace:configure.in:782: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SYS_ERRLIST])
|
||||
m4trace:configure.in:783: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SYS_SIGLIST])
|
||||
m4trace:configure.in:784: -1- AC_DEFINE_TRACE_LITERAL([UNDER_SYS_SIGLIST_DECLARED])
|
||||
m4trace:configure.in:784: -1- AC_DEFINE_TRACE_LITERAL([HAVE_UNDER_SYS_SIGLIST])
|
||||
m4trace:configure.in:787: -1- AC_DEFINE_TRACE_LITERAL([VOID_SIGHANDLER])
|
||||
m4trace:configure.in:788: -1- AC_DEFINE_TRACE_LITERAL([clock_t])
|
||||
m4trace:configure.in:789: -1- AC_DEFINE_TRACE_LITERAL([sigset_t])
|
||||
m4trace:configure.in:790: -1- AC_DEFINE_TRACE_LITERAL([HAVE_QUAD_T])
|
||||
m4trace:configure.in:790: -1- AC_DEFINE_TRACE_LITERAL([quad_t])
|
||||
m4trace:configure.in:791: -1- AC_DEFINE_TRACE_LITERAL([intmax_t])
|
||||
m4trace:configure.in:792: -1- AC_DEFINE_TRACE_LITERAL([uintmax_t])
|
||||
m4trace:configure.in:794: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SOCKLEN_T])
|
||||
m4trace:configure.in:794: -1- AC_DEFINE_TRACE_LITERAL([socklen_t])
|
||||
m4trace:configure.in:796: -1- AC_DEFINE_TRACE_LITERAL([RLIMTYPE])
|
||||
m4trace:configure.in:796: -1- AC_DEFINE_TRACE_LITERAL([RLIMTYPE])
|
||||
m4trace:configure.in:799: -2- AC_DEFINE_TRACE_LITERAL([TERMIOS_LDISC])
|
||||
m4trace:configure.in:800: -2- AC_DEFINE_TRACE_LITERAL([TERMIO_LDISC])
|
||||
m4trace:configure.in:801: -1- AC_DEFINE_TRACE_LITERAL([STRUCT_DIRENT_HAS_D_INO])
|
||||
m4trace:configure.in:802: -1- AC_DEFINE_TRACE_LITERAL([STRUCT_DIRENT_HAS_D_FILENO])
|
||||
m4trace:configure.in:803: -1- AC_DEFINE_TRACE_LITERAL([STRUCT_WINSIZE_IN_SYS_IOCTL])
|
||||
m4trace:configure.in:803: -1- AC_DEFINE_TRACE_LITERAL([STRUCT_WINSIZE_IN_TERMIOS])
|
||||
m4trace:configure.in:804: -1- AC_DEFINE_TRACE_LITERAL([HAVE_TIMEVAL])
|
||||
m4trace:configure.in:805: -1- AC_CHECK_MEMBERS([struct stat.st_blocks])
|
||||
m4trace:configure.in:805: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_STAT_ST_BLOCKS])
|
||||
m4trace:configure.in:805: -1- AH_OUTPUT([HAVE_STRUCT_STAT_ST_BLOCKS], [/* Define to 1 if `st_blocks\' is member of `struct stat\'. */
|
||||
#undef HAVE_STRUCT_STAT_ST_BLOCKS])
|
||||
m4trace:configure.in:804: -1- AC_STRUCT_TM
|
||||
m4trace:configure.in:804: -1- AC_DEFINE_TRACE_LITERAL([TM_IN_SYS_TIME])
|
||||
m4trace:configure.in:804: -1- AH_OUTPUT([TM_IN_SYS_TIME], [/* Define to 1 if your <sys/time.h> declares `struct tm\'. */
|
||||
m4trace:configure.in:806: -1- AC_STRUCT_TM
|
||||
m4trace:configure.in:806: -1- AC_DEFINE_TRACE_LITERAL([TM_IN_SYS_TIME])
|
||||
m4trace:configure.in:806: -1- AH_OUTPUT([TM_IN_SYS_TIME], [/* Define to 1 if your <sys/time.h> declares `struct tm\'. */
|
||||
#undef TM_IN_SYS_TIME])
|
||||
m4trace:configure.in:805: -1- AC_STRUCT_TIMEZONE
|
||||
m4trace:configure.in:805: -1- AC_CHECK_MEMBERS([struct tm.tm_zone], [], [], [#include <sys/types.h>
|
||||
m4trace:configure.in:807: -1- AC_STRUCT_TIMEZONE
|
||||
m4trace:configure.in:807: -1- AC_CHECK_MEMBERS([struct tm.tm_zone], [], [], [#include <sys/types.h>
|
||||
#include <$ac_cv_struct_tm>
|
||||
])
|
||||
m4trace:configure.in:805: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_TM_TM_ZONE])
|
||||
m4trace:configure.in:805: -1- AH_OUTPUT([HAVE_STRUCT_TM_TM_ZONE], [/* Define to 1 if `tm_zone\' is member of `struct tm\'. */
|
||||
m4trace:configure.in:807: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_TM_TM_ZONE])
|
||||
m4trace:configure.in:807: -1- AH_OUTPUT([HAVE_STRUCT_TM_TM_ZONE], [/* Define to 1 if `tm_zone\' is member of `struct tm\'. */
|
||||
#undef HAVE_STRUCT_TM_TM_ZONE])
|
||||
m4trace:configure.in:805: -1- AC_DEFINE_TRACE_LITERAL([HAVE_TM_ZONE])
|
||||
m4trace:configure.in:805: -1- AH_OUTPUT([HAVE_TM_ZONE], [/* Define to 1 if your `struct tm\' has `tm_zone\'. Deprecated, use
|
||||
m4trace:configure.in:807: -1- AC_DEFINE_TRACE_LITERAL([HAVE_TM_ZONE])
|
||||
m4trace:configure.in:807: -1- AH_OUTPUT([HAVE_TM_ZONE], [/* Define to 1 if your `struct tm\' has `tm_zone\'. Deprecated, use
|
||||
`HAVE_STRUCT_TM_TM_ZONE\' instead. */
|
||||
#undef HAVE_TM_ZONE])
|
||||
m4trace:configure.in:805: -1- AC_DEFINE_TRACE_LITERAL([HAVE_TZNAME])
|
||||
m4trace:configure.in:805: -1- AH_OUTPUT([HAVE_TZNAME], [/* Define to 1 if you don\'t have `tm_zone\' but do have the external array
|
||||
m4trace:configure.in:807: -1- AC_DEFINE_TRACE_LITERAL([HAVE_TZNAME])
|
||||
m4trace:configure.in:807: -1- AH_OUTPUT([HAVE_TZNAME], [/* Define to 1 if you don\'t have `tm_zone\' but do have the external array
|
||||
`tzname\'. */
|
||||
#undef HAVE_TZNAME])
|
||||
m4trace:configure.in:806: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_TIMEZONE])
|
||||
m4trace:configure.in:809: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRSIGNAL])
|
||||
m4trace:configure.in:810: -1- AC_DEFINE_TRACE_LITERAL([OPENDIR_NOT_ROBUST])
|
||||
m4trace:configure.in:811: -1- AC_DEFINE_TRACE_LITERAL([ULIMIT_MAXFDS])
|
||||
m4trace:configure.in:812: -1- AC_DEFINE_TRACE_LITERAL([CAN_REDEFINE_GETENV])
|
||||
m4trace:configure.in:814: -1- AC_DEFINE_TRACE_LITERAL([GETCWD_BROKEN])
|
||||
m4trace:configure.in:814: -1- AC_LIBSOURCE([getcwd.c])
|
||||
m4trace:configure.in:814: -1- AC_SUBST([LIB@&t@OBJS])
|
||||
m4trace:configure.in:816: -1- AC_DEFINE_TRACE_LITERAL([HAVE_POSIX_SIGSETJMP])
|
||||
m4trace:configure.in:817: -1- AC_DEFINE_TRACE_LITERAL([STRCOLL_BROKEN])
|
||||
m4trace:configure.in:823: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_PUTENV])
|
||||
m4trace:configure.in:808: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_TIMEZONE])
|
||||
m4trace:configure.in:811: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRSIGNAL])
|
||||
m4trace:configure.in:812: -1- AC_DEFINE_TRACE_LITERAL([OPENDIR_NOT_ROBUST])
|
||||
m4trace:configure.in:813: -1- AC_DEFINE_TRACE_LITERAL([ULIMIT_MAXFDS])
|
||||
m4trace:configure.in:814: -1- AC_DEFINE_TRACE_LITERAL([CAN_REDEFINE_GETENV])
|
||||
m4trace:configure.in:816: -1- AC_DEFINE_TRACE_LITERAL([GETCWD_BROKEN])
|
||||
m4trace:configure.in:816: -1- AC_LIBSOURCE([getcwd.c])
|
||||
m4trace:configure.in:816: -1- AC_SUBST([LIB@&t@OBJS])
|
||||
m4trace:configure.in:818: -1- AC_DEFINE_TRACE_LITERAL([HAVE_POSIX_SIGSETJMP])
|
||||
m4trace:configure.in:819: -1- AC_DEFINE_TRACE_LITERAL([STRCOLL_BROKEN])
|
||||
m4trace:configure.in:825: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_PUTENV])
|
||||
m4trace:configure.in:828: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_UNSETENV])
|
||||
m4trace:configure.in:827: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_PUTENV])
|
||||
m4trace:configure.in:830: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_UNSETENV])
|
||||
m4trace:configure.in:845: -1- AC_DEFINE_TRACE_LITERAL([HAVE_PRINTF_A_FORMAT])
|
||||
m4trace:configure.in:848: -1- AC_DEFINE_TRACE_LITERAL([MUST_REINSTALL_SIGHANDLERS])
|
||||
m4trace:configure.in:849: -1- AC_DEFINE_TRACE_LITERAL([JOB_CONTROL_MISSING])
|
||||
m4trace:configure.in:850: -1- AC_DEFINE_TRACE_LITERAL([NAMED_PIPES_MISSING])
|
||||
m4trace:configure.in:853: -1- AC_DEFINE_TRACE_LITERAL([GWINSZ_IN_SYS_IOCTL])
|
||||
m4trace:configure.in:853: -1- AH_OUTPUT([GWINSZ_IN_SYS_IOCTL], [/* Define to 1 if `TIOCGWINSZ\' requires <sys/ioctl.h>. */
|
||||
m4trace:configure.in:832: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_UNSETENV])
|
||||
m4trace:configure.in:847: -1- AC_DEFINE_TRACE_LITERAL([HAVE_PRINTF_A_FORMAT])
|
||||
m4trace:configure.in:850: -1- AC_DEFINE_TRACE_LITERAL([MUST_REINSTALL_SIGHANDLERS])
|
||||
m4trace:configure.in:851: -1- AC_DEFINE_TRACE_LITERAL([JOB_CONTROL_MISSING])
|
||||
m4trace:configure.in:852: -1- AC_DEFINE_TRACE_LITERAL([NAMED_PIPES_MISSING])
|
||||
m4trace:configure.in:855: -1- AC_DEFINE_TRACE_LITERAL([GWINSZ_IN_SYS_IOCTL])
|
||||
m4trace:configure.in:855: -1- AH_OUTPUT([GWINSZ_IN_SYS_IOCTL], [/* Define to 1 if `TIOCGWINSZ\' requires <sys/ioctl.h>. */
|
||||
#undef GWINSZ_IN_SYS_IOCTL])
|
||||
m4trace:configure.in:854: -1- AC_DEFINE_TRACE_LITERAL([TIOCSTAT_IN_SYS_IOCTL])
|
||||
m4trace:configure.in:855: -1- AC_DEFINE_TRACE_LITERAL([FIONREAD_IN_SYS_IOCTL])
|
||||
m4trace:configure.in:858: -1- AC_DEFINE_TRACE_LITERAL([SPEED_T_IN_SYS_TYPES])
|
||||
m4trace:configure.in:859: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETPW_DECLS])
|
||||
m4trace:configure.in:860: -1- AC_DEFINE_TRACE_LITERAL([UNUSABLE_RT_SIGNALS])
|
||||
m4trace:configure.in:861: -1- AC_SUBST([SIGLIST_O])
|
||||
m4trace:configure.in:865: -1- AC_DEFINE_TRACE_LITERAL([RLIMIT_NEEDS_KERNEL])
|
||||
m4trace:configure.in:873: -1- AC_CHECK_LIB([termcap], [tgetent], [bash_cv_termcap_lib=libtermcap], [AC_CHECK_LIB(tinfo, tgetent, bash_cv_termcap_lib=libtinfo,
|
||||
m4trace:configure.in:856: -1- AC_DEFINE_TRACE_LITERAL([TIOCSTAT_IN_SYS_IOCTL])
|
||||
m4trace:configure.in:857: -1- AC_DEFINE_TRACE_LITERAL([FIONREAD_IN_SYS_IOCTL])
|
||||
m4trace:configure.in:860: -1- AC_DEFINE_TRACE_LITERAL([SPEED_T_IN_SYS_TYPES])
|
||||
m4trace:configure.in:861: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETPW_DECLS])
|
||||
m4trace:configure.in:862: -1- AC_DEFINE_TRACE_LITERAL([UNUSABLE_RT_SIGNALS])
|
||||
m4trace:configure.in:863: -1- AC_SUBST([SIGLIST_O])
|
||||
m4trace:configure.in:867: -1- AC_DEFINE_TRACE_LITERAL([RLIMIT_NEEDS_KERNEL])
|
||||
m4trace:configure.in:875: -1- AC_CHECK_LIB([termcap], [tgetent], [bash_cv_termcap_lib=libtermcap], [AC_CHECK_LIB(tinfo, tgetent, bash_cv_termcap_lib=libtinfo,
|
||||
[AC_CHECK_LIB(curses, tgetent, bash_cv_termcap_lib=libcurses,
|
||||
[AC_CHECK_LIB(ncurses, tgetent, bash_cv_termcap_lib=libncurses,
|
||||
bash_cv_termcap_lib=gnutermcap)])])])
|
||||
m4trace:configure.in:873: -1- AC_CHECK_LIB([tinfo], [tgetent], [bash_cv_termcap_lib=libtinfo], [AC_CHECK_LIB(curses, tgetent, bash_cv_termcap_lib=libcurses,
|
||||
m4trace:configure.in:875: -1- AC_CHECK_LIB([tinfo], [tgetent], [bash_cv_termcap_lib=libtinfo], [AC_CHECK_LIB(curses, tgetent, bash_cv_termcap_lib=libcurses,
|
||||
[AC_CHECK_LIB(ncurses, tgetent, bash_cv_termcap_lib=libncurses,
|
||||
bash_cv_termcap_lib=gnutermcap)])])
|
||||
m4trace:configure.in:873: -1- AC_CHECK_LIB([curses], [tgetent], [bash_cv_termcap_lib=libcurses], [AC_CHECK_LIB(ncurses, tgetent, bash_cv_termcap_lib=libncurses,
|
||||
m4trace:configure.in:875: -1- AC_CHECK_LIB([curses], [tgetent], [bash_cv_termcap_lib=libcurses], [AC_CHECK_LIB(ncurses, tgetent, bash_cv_termcap_lib=libncurses,
|
||||
bash_cv_termcap_lib=gnutermcap)])
|
||||
m4trace:configure.in:873: -1- AC_CHECK_LIB([ncurses], [tgetent], [bash_cv_termcap_lib=libncurses], [bash_cv_termcap_lib=gnutermcap])
|
||||
m4trace:configure.in:875: -1- AC_SUBST([TERMCAP_LIB])
|
||||
m4trace:configure.in:876: -1- AC_SUBST([TERMCAP_DEP])
|
||||
m4trace:configure.in:878: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DEV_FD])
|
||||
m4trace:configure.in:878: -1- AC_DEFINE_TRACE_LITERAL([DEV_FD_PREFIX])
|
||||
m4trace:configure.in:878: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DEV_FD])
|
||||
m4trace:configure.in:878: -1- AC_DEFINE_TRACE_LITERAL([DEV_FD_PREFIX])
|
||||
m4trace:configure.in:879: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DEV_STDIN])
|
||||
m4trace:configure.in:880: -1- AC_DEFINE_TRACE_LITERAL([DEFAULT_MAIL_DIRECTORY])
|
||||
m4trace:configure.in:887: -1- AC_DEFINE_TRACE_LITERAL([JOB_CONTROL])
|
||||
m4trace:configure.in:893: -1- AC_SUBST([JOBS_O])
|
||||
m4trace:configure.in:906: -1- AC_DEFINE_TRACE_LITERAL([SVR4_2])
|
||||
m4trace:configure.in:907: -1- AC_DEFINE_TRACE_LITERAL([SVR4])
|
||||
m4trace:configure.in:908: -1- AC_DEFINE_TRACE_LITERAL([SVR4])
|
||||
m4trace:configure.in:909: -1- AC_DEFINE_TRACE_LITERAL([SVR5])
|
||||
m4trace:configure.in:966: -1- AC_SUBST([SHOBJ_CC])
|
||||
m4trace:configure.in:967: -1- AC_SUBST([SHOBJ_CFLAGS])
|
||||
m4trace:configure.in:968: -1- AC_SUBST([SHOBJ_LD])
|
||||
m4trace:configure.in:969: -1- AC_SUBST([SHOBJ_LDFLAGS])
|
||||
m4trace:configure.in:970: -1- AC_SUBST([SHOBJ_XLDFLAGS])
|
||||
m4trace:configure.in:971: -1- AC_SUBST([SHOBJ_LIBS])
|
||||
m4trace:configure.in:972: -1- AC_SUBST([SHOBJ_STATUS])
|
||||
m4trace:configure.in:993: -1- AC_SUBST([PROFILE_FLAGS])
|
||||
m4trace:configure.in:995: -1- AC_SUBST([incdir])
|
||||
m4trace:configure.in:996: -1- AC_SUBST([BUILD_DIR])
|
||||
m4trace:configure.in:998: -1- AC_SUBST([YACC])
|
||||
m4trace:configure.in:999: -1- AC_SUBST([AR])
|
||||
m4trace:configure.in:1000: -1- AC_SUBST([ARFLAGS])
|
||||
m4trace:configure.in:1002: -1- AC_SUBST([BASHVERS])
|
||||
m4trace:configure.in:1003: -1- AC_SUBST([RELSTATUS])
|
||||
m4trace:configure.in:1004: -1- AC_SUBST([DEBUG])
|
||||
m4trace:configure.in:1005: -1- AC_SUBST([MALLOC_DEBUG])
|
||||
m4trace:configure.in:1007: -1- AC_SUBST([host_cpu])
|
||||
m4trace:configure.in:1008: -1- AC_SUBST([host_vendor])
|
||||
m4trace:configure.in:1009: -1- AC_SUBST([host_os])
|
||||
m4trace:configure.in:1011: -1- AC_SUBST([LOCAL_LIBS])
|
||||
m4trace:configure.in:1012: -1- AC_SUBST([LOCAL_CFLAGS])
|
||||
m4trace:configure.in:1013: -1- AC_SUBST([LOCAL_LDFLAGS])
|
||||
m4trace:configure.in:1014: -1- AC_SUBST([LOCAL_DEFS])
|
||||
m4trace:configure.in:1028: -1- AC_CONFIG_FILES([Makefile builtins/Makefile lib/readline/Makefile lib/glob/Makefile \
|
||||
m4trace:configure.in:875: -1- AC_CHECK_LIB([ncurses], [tgetent], [bash_cv_termcap_lib=libncurses], [bash_cv_termcap_lib=gnutermcap])
|
||||
m4trace:configure.in:877: -1- AC_SUBST([TERMCAP_LIB])
|
||||
m4trace:configure.in:878: -1- AC_SUBST([TERMCAP_DEP])
|
||||
m4trace:configure.in:880: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DEV_FD])
|
||||
m4trace:configure.in:880: -1- AC_DEFINE_TRACE_LITERAL([DEV_FD_PREFIX])
|
||||
m4trace:configure.in:880: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DEV_FD])
|
||||
m4trace:configure.in:880: -1- AC_DEFINE_TRACE_LITERAL([DEV_FD_PREFIX])
|
||||
m4trace:configure.in:881: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DEV_STDIN])
|
||||
m4trace:configure.in:882: -1- AC_DEFINE_TRACE_LITERAL([DEFAULT_MAIL_DIRECTORY])
|
||||
m4trace:configure.in:889: -1- AC_DEFINE_TRACE_LITERAL([JOB_CONTROL])
|
||||
m4trace:configure.in:895: -1- AC_SUBST([JOBS_O])
|
||||
m4trace:configure.in:908: -1- AC_DEFINE_TRACE_LITERAL([SVR4_2])
|
||||
m4trace:configure.in:909: -1- AC_DEFINE_TRACE_LITERAL([SVR4])
|
||||
m4trace:configure.in:910: -1- AC_DEFINE_TRACE_LITERAL([SVR4])
|
||||
m4trace:configure.in:911: -1- AC_DEFINE_TRACE_LITERAL([SVR5])
|
||||
m4trace:configure.in:968: -1- AC_SUBST([SHOBJ_CC])
|
||||
m4trace:configure.in:969: -1- AC_SUBST([SHOBJ_CFLAGS])
|
||||
m4trace:configure.in:970: -1- AC_SUBST([SHOBJ_LD])
|
||||
m4trace:configure.in:971: -1- AC_SUBST([SHOBJ_LDFLAGS])
|
||||
m4trace:configure.in:972: -1- AC_SUBST([SHOBJ_XLDFLAGS])
|
||||
m4trace:configure.in:973: -1- AC_SUBST([SHOBJ_LIBS])
|
||||
m4trace:configure.in:974: -1- AC_SUBST([SHOBJ_STATUS])
|
||||
m4trace:configure.in:995: -1- AC_SUBST([PROFILE_FLAGS])
|
||||
m4trace:configure.in:997: -1- AC_SUBST([incdir])
|
||||
m4trace:configure.in:998: -1- AC_SUBST([BUILD_DIR])
|
||||
m4trace:configure.in:1000: -1- AC_SUBST([YACC])
|
||||
m4trace:configure.in:1001: -1- AC_SUBST([AR])
|
||||
m4trace:configure.in:1002: -1- AC_SUBST([ARFLAGS])
|
||||
m4trace:configure.in:1004: -1- AC_SUBST([BASHVERS])
|
||||
m4trace:configure.in:1005: -1- AC_SUBST([RELSTATUS])
|
||||
m4trace:configure.in:1006: -1- AC_SUBST([DEBUG])
|
||||
m4trace:configure.in:1007: -1- AC_SUBST([MALLOC_DEBUG])
|
||||
m4trace:configure.in:1009: -1- AC_SUBST([host_cpu])
|
||||
m4trace:configure.in:1010: -1- AC_SUBST([host_vendor])
|
||||
m4trace:configure.in:1011: -1- AC_SUBST([host_os])
|
||||
m4trace:configure.in:1013: -1- AC_SUBST([LOCAL_LIBS])
|
||||
m4trace:configure.in:1014: -1- AC_SUBST([LOCAL_CFLAGS])
|
||||
m4trace:configure.in:1015: -1- AC_SUBST([LOCAL_LDFLAGS])
|
||||
m4trace:configure.in:1016: -1- AC_SUBST([LOCAL_DEFS])
|
||||
m4trace:configure.in:1030: -1- AC_CONFIG_FILES([Makefile builtins/Makefile lib/readline/Makefile lib/glob/Makefile \
|
||||
lib/intl/Makefile \
|
||||
lib/malloc/Makefile lib/sh/Makefile lib/termcap/Makefile \
|
||||
lib/tilde/Makefile doc/Makefile support/Makefile po/Makefile.in \
|
||||
examples/loadables/Makefile examples/loadables/perl/Makefile \
|
||||
pathnames.h])
|
||||
m4trace:configure.in:1028: -1- AC_SUBST([LIB@&t@OBJS], [$ac_libobjs])
|
||||
m4trace:configure.in:1028: -1- AC_SUBST([LTLIBOBJS], [$ac_ltlibobjs])
|
||||
m4trace:configure.in:1030: -1- AC_SUBST([LIB@&t@OBJS], [$ac_libobjs])
|
||||
m4trace:configure.in:1030: -1- AC_SUBST([LTLIBOBJS], [$ac_ltlibobjs])
|
||||
|
||||
+12
-2
@@ -324,6 +324,9 @@ enable_hostname_completion (on_or_off)
|
||||
void
|
||||
initialize_readline ()
|
||||
{
|
||||
rl_command_func_t *func;
|
||||
char kseq[2];
|
||||
|
||||
if (bash_readline_initialized)
|
||||
return;
|
||||
|
||||
@@ -395,8 +398,15 @@ initialize_readline ()
|
||||
/* In Bash, the user can switch editing modes with "set -o [vi emacs]",
|
||||
so it is not necessary to allow C-M-j for context switching. Turn
|
||||
off this occasionally confusing behaviour. */
|
||||
rl_unbind_key_in_map (CTRL('J'), emacs_meta_keymap);
|
||||
rl_unbind_key_in_map (CTRL('M'), emacs_meta_keymap);
|
||||
kseq[0] = CTRL('J');
|
||||
kseq[1] = '\0';
|
||||
func = rl_function_of_keyseq (kseq, emacs_meta_keymap, (int *)NULL);
|
||||
if (func == rl_vi_editing_mode)
|
||||
rl_unbind_key_in_map (CTRL('J'), emacs_meta_keymap);
|
||||
kseq[0] = CTRL('M');
|
||||
func = rl_function_of_keyseq (kseq, emacs_meta_keymap, (int *)NULL);
|
||||
if (func == rl_vi_editing_mode)
|
||||
rl_unbind_key_in_map (CTRL('M'), emacs_meta_keymap);
|
||||
#if defined (VI_MODE)
|
||||
rl_unbind_key_in_map (CTRL('E'), vi_movement_keymap);
|
||||
#endif
|
||||
|
||||
+43
-36
@@ -50,6 +50,8 @@ INSTALL = @INSTALL@
|
||||
INSTALL_DATA = @INSTALL_DATA@
|
||||
BUILD_DIR = @BUILD_DIR@
|
||||
|
||||
LIBBUILD = ${BUILD_DIR}/lib
|
||||
|
||||
PROFILE_FLAGS = @PROFILE_FLAGS@
|
||||
CFLAGS = @CFLAGS@
|
||||
CFLAGS_FOR_BUILD = @CFLAGS_FOR_BUILD@
|
||||
@@ -70,10 +72,15 @@ BASHINCDIR = ${topdir}/include
|
||||
|
||||
RL_INCLUDEDIR = @RL_INCLUDEDIR@
|
||||
|
||||
INTL_LIBSRC = ${topdir}/lib/intl
|
||||
INTL_BUILDDIR = ${LIBBUILD}/intl
|
||||
INTL_INC = @INTL_INC@
|
||||
LIBINTL_H = @LIBINTL_H@
|
||||
|
||||
HELPDIR = @HELPDIR@
|
||||
MKDIRS = ${topdir}/support/mkdirs
|
||||
|
||||
INCLUDES = -I. -I.. @RL_INCLUDE@ -I$(topdir) -I$(BASHINCDIR) -I$(topdir)/lib -I$(srcdir)
|
||||
INCLUDES = -I. -I.. @RL_INCLUDE@ -I$(topdir) -I$(BASHINCDIR) -I$(topdir)/lib -I$(srcdir) ${INTL_INC}
|
||||
|
||||
BASE_CCFLAGS = ${PROFILE_FLAGS} $(DEFS) $(LOCAL_DEFS) $(SYSTEM_FLAGS) \
|
||||
${INCLUDES} $(LOCAL_CFLAGS)
|
||||
@@ -577,38 +584,38 @@ complete.o: ${srcdir}/common.h ${srcdir}/bashgetopt.h
|
||||
#bind.o: $(RL_LIBSRC)chardefs.h $(RL_LIBSRC)readline.h $(RL_LIBSRC)keymaps.h
|
||||
|
||||
# libintl dependencies
|
||||
bind.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
break.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
caller.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
cd.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
common.c: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
complete.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
declare.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
enable.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
evalfile.c: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
exec.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
exit.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
fc.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
fg_bg.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
getopt.c: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
hash.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
help.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
history.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
inlib.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
jobs.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
kill.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
let.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
mkbuiltins.c: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
printf.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
pushd.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
read.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
return.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
set.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
setattr.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
shift.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
shopt.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
source.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
suspend.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
type.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
ulimit.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
umask.o: ${topdir}/bashintl.h $(BASHINCDIR)/gettext.h
|
||||
bind.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
break.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
caller.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
cd.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
common.c: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
complete.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
declare.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
enable.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
evalfile.c: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
exec.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
exit.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
fc.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
fg_bg.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
getopt.c: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
hash.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
help.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
history.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
inlib.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
jobs.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
kill.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
let.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
mkbuiltins.c: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
printf.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
pushd.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
read.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
return.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
set.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
setattr.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
shift.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
shopt.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
source.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
suspend.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
type.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
ulimit.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
umask.o: ${topdir}/bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h
|
||||
|
||||
+5
-4
@@ -573,7 +573,11 @@ get_job_spec (list)
|
||||
word = list->word->word;
|
||||
|
||||
if (*word == '\0')
|
||||
#if 0
|
||||
return (current_job);
|
||||
#else
|
||||
return (NO_JOB);
|
||||
#endif
|
||||
|
||||
if (*word == '%')
|
||||
word++;
|
||||
@@ -581,17 +585,14 @@ get_job_spec (list)
|
||||
if (DIGIT (*word) && all_digits (word))
|
||||
{
|
||||
job = atoi (word);
|
||||
#if 0
|
||||
return (job >= job_slots ? NO_JOB : job - 1);
|
||||
#else
|
||||
return (job > job_slots ? NO_JOB : job - 1);
|
||||
#endif
|
||||
}
|
||||
|
||||
jflags = 0;
|
||||
switch (*word)
|
||||
{
|
||||
case 0:
|
||||
return NO_JOB;
|
||||
case '%':
|
||||
case '+':
|
||||
return (current_job);
|
||||
|
||||
@@ -0,0 +1,818 @@
|
||||
/* Copyright (C) 1987-2002 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. */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#if defined (HAVE_UNISTD_H)
|
||||
# ifdef _MINIX
|
||||
# include <sys/types.h>
|
||||
# endif
|
||||
# include <unistd.h>
|
||||
#endif
|
||||
|
||||
#include <stdio.h>
|
||||
#include <chartypes.h>
|
||||
#include "../bashtypes.h"
|
||||
#include "posixstat.h"
|
||||
#include <signal.h>
|
||||
|
||||
#include <errno.h>
|
||||
|
||||
#if defined (PREFER_STDARG)
|
||||
# include <stdarg.h>
|
||||
#else
|
||||
# include <varargs.h>
|
||||
#endif
|
||||
|
||||
#include "../bashansi.h"
|
||||
#include "../bashintl.h"
|
||||
|
||||
#include "../shell.h"
|
||||
#include "maxpath.h"
|
||||
#include "../flags.h"
|
||||
#include "../jobs.h"
|
||||
#include "../builtins.h"
|
||||
#include "../input.h"
|
||||
#include "../execute_cmd.h"
|
||||
#include "../trap.h"
|
||||
#include "bashgetopt.h"
|
||||
#include "common.h"
|
||||
#include "builtext.h"
|
||||
#include <tilde/tilde.h>
|
||||
|
||||
#if defined (HISTORY)
|
||||
# include "../bashhist.h"
|
||||
#endif
|
||||
|
||||
#if !defined (errno)
|
||||
extern int errno;
|
||||
#endif /* !errno */
|
||||
|
||||
extern int indirection_level, subshell_environment;
|
||||
extern int line_number;
|
||||
extern int last_command_exit_value;
|
||||
extern int running_trap;
|
||||
extern int posixly_correct;
|
||||
extern char *this_command_name, *shell_name;
|
||||
extern char *bash_getcwd_errstr;
|
||||
|
||||
/* Used by some builtins and the mainline code. */
|
||||
sh_builtin_func_t *last_shell_builtin = (sh_builtin_func_t *)NULL;
|
||||
sh_builtin_func_t *this_shell_builtin = (sh_builtin_func_t *)NULL;
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* Error reporting, usage, and option processing */
|
||||
/* */
|
||||
/* **************************************************************** */
|
||||
|
||||
/* This is a lot like report_error (), but it is for shell builtins
|
||||
instead of shell control structures, and it won't ever exit the
|
||||
shell. */
|
||||
void
|
||||
#if defined (PREFER_STDARG)
|
||||
builtin_error (const char *format, ...)
|
||||
#else
|
||||
builtin_error (format, va_alist)
|
||||
const char *format;
|
||||
va_dcl
|
||||
#endif
|
||||
{
|
||||
va_list args;
|
||||
char *name;
|
||||
|
||||
name = get_name_for_error ();
|
||||
fprintf (stderr, "%s: ", name);
|
||||
|
||||
if (interactive_shell == 0)
|
||||
fprintf (stderr, "line %d: ", executing_line_number ());
|
||||
|
||||
if (this_command_name && *this_command_name)
|
||||
fprintf (stderr, "%s: ", this_command_name);
|
||||
|
||||
SH_VA_START (args, format);
|
||||
|
||||
vfprintf (stderr, format, args);
|
||||
va_end (args);
|
||||
fprintf (stderr, "\n");
|
||||
}
|
||||
|
||||
/* Print a usage summary for the currently-executing builtin command. */
|
||||
void
|
||||
builtin_usage ()
|
||||
{
|
||||
if (this_command_name && *this_command_name)
|
||||
fprintf (stderr, "%s: usage: ", this_command_name);
|
||||
fprintf (stderr, "%s\n", current_builtin->short_doc);
|
||||
fflush (stderr);
|
||||
}
|
||||
|
||||
/* Return if LIST is NULL else barf and jump to top_level. Used by some
|
||||
builtins that do not accept arguments. */
|
||||
void
|
||||
no_args (list)
|
||||
WORD_LIST *list;
|
||||
{
|
||||
if (list)
|
||||
{
|
||||
builtin_error (_("too many arguments"));
|
||||
jump_to_top_level (DISCARD);
|
||||
}
|
||||
}
|
||||
|
||||
/* Check that no options were given to the currently-executing builtin,
|
||||
and return 0 if there were options. */
|
||||
int
|
||||
no_options (list)
|
||||
WORD_LIST *list;
|
||||
{
|
||||
reset_internal_getopt ();
|
||||
if (internal_getopt (list, "") != -1)
|
||||
{
|
||||
builtin_usage ();
|
||||
return (1);
|
||||
}
|
||||
return (0);
|
||||
}
|
||||
|
||||
void
|
||||
sh_needarg (s)
|
||||
char *s;
|
||||
{
|
||||
builtin_error (_("%s: option requires an argument"), s);
|
||||
}
|
||||
|
||||
void
|
||||
sh_neednumarg (s)
|
||||
char *s;
|
||||
{
|
||||
builtin_error (_("%s: numeric argument required"), s);
|
||||
}
|
||||
|
||||
void
|
||||
sh_notfound (s)
|
||||
char *s;
|
||||
{
|
||||
builtin_error (_("%s: not found"), s);
|
||||
}
|
||||
|
||||
/* Function called when one of the builtin commands detects an invalid
|
||||
option. */
|
||||
void
|
||||
sh_invalidopt (s)
|
||||
char *s;
|
||||
{
|
||||
builtin_error (_("%s: invalid option"), s);
|
||||
}
|
||||
|
||||
void
|
||||
sh_invalidoptname (s)
|
||||
char *s;
|
||||
{
|
||||
builtin_error (_("%s: invalid option name"), s);
|
||||
}
|
||||
|
||||
void
|
||||
sh_invalidid (s)
|
||||
char *s;
|
||||
{
|
||||
builtin_error (_("`%s': not a valid identifier"), s);
|
||||
}
|
||||
|
||||
void
|
||||
sh_invalidnum (s)
|
||||
char *s;
|
||||
{
|
||||
builtin_error (_("%s: invalid number"), s);
|
||||
}
|
||||
|
||||
void
|
||||
sh_invalidsig (s)
|
||||
char *s;
|
||||
{
|
||||
builtin_error (_("%s: invalid signal specification"), s);
|
||||
}
|
||||
|
||||
void
|
||||
sh_badpid (s)
|
||||
char *s;
|
||||
{
|
||||
builtin_error (_("`%s': not a pid or valid job spec"), s);
|
||||
}
|
||||
|
||||
void
|
||||
sh_readonly (s)
|
||||
const char *s;
|
||||
{
|
||||
builtin_error (_("%s: readonly variable"), s);
|
||||
}
|
||||
|
||||
void
|
||||
sh_erange (s, desc)
|
||||
char *s, *desc;
|
||||
{
|
||||
if (s)
|
||||
builtin_error (_("%s: %s out of range"), s, desc ? desc : _("argument"));
|
||||
else
|
||||
builtin_error (_("%s out of range"), desc ? desc : _("argument"));
|
||||
}
|
||||
|
||||
#if defined (JOB_CONTROL)
|
||||
void
|
||||
sh_badjob (s)
|
||||
char *s;
|
||||
{
|
||||
builtin_error (_("%s: no such job"), s);
|
||||
}
|
||||
|
||||
void
|
||||
sh_nojobs (s)
|
||||
char *s;
|
||||
{
|
||||
if (s)
|
||||
builtin_error (_("%s: no job control"), s);
|
||||
else
|
||||
builtin_error (_("no job control"));
|
||||
}
|
||||
#endif
|
||||
|
||||
#if defined (RESTRICTED_SHELL)
|
||||
void
|
||||
sh_restricted (s)
|
||||
char *s;
|
||||
{
|
||||
if (s)
|
||||
builtin_error (_("%s: restricted"), s);
|
||||
else
|
||||
builtin_error (_("restricted"));
|
||||
}
|
||||
#endif
|
||||
|
||||
void
|
||||
sh_notbuiltin (s)
|
||||
char *s;
|
||||
{
|
||||
builtin_error (_("%s: not a shell builtin"), s);
|
||||
}
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* Shell positional parameter manipulation */
|
||||
/* */
|
||||
/* **************************************************************** */
|
||||
|
||||
/* Convert a WORD_LIST into a C-style argv. Return the number of elements
|
||||
in the list in *IP, if IP is non-null. A convenience function for
|
||||
loadable builtins; also used by `test'. */
|
||||
char **
|
||||
make_builtin_argv (list, ip)
|
||||
WORD_LIST *list;
|
||||
int *ip;
|
||||
{
|
||||
char **argv;
|
||||
|
||||
argv = strvec_from_word_list (list, 0, 1, ip);
|
||||
argv[0] = this_command_name;
|
||||
return argv;
|
||||
}
|
||||
|
||||
/* Remember LIST in $0 ... $9, and REST_OF_ARGS. If DESTRUCTIVE is
|
||||
non-zero, then discard whatever the existing arguments are, else
|
||||
only discard the ones that are to be replaced. */
|
||||
void
|
||||
remember_args (list, destructive)
|
||||
WORD_LIST *list;
|
||||
int destructive;
|
||||
{
|
||||
register int i;
|
||||
|
||||
for (i = 1; i < 10; i++)
|
||||
{
|
||||
if ((destructive || list) && dollar_vars[i])
|
||||
{
|
||||
free (dollar_vars[i]);
|
||||
dollar_vars[i] = (char *)NULL;
|
||||
}
|
||||
|
||||
if (list)
|
||||
{
|
||||
dollar_vars[i] = savestring (list->word->word);
|
||||
list = list->next;
|
||||
}
|
||||
}
|
||||
|
||||
/* If arguments remain, assign them to REST_OF_ARGS.
|
||||
Note that copy_word_list (NULL) returns NULL, and
|
||||
that dispose_words (NULL) does nothing. */
|
||||
if (destructive || list)
|
||||
{
|
||||
dispose_words (rest_of_args);
|
||||
rest_of_args = copy_word_list (list);
|
||||
}
|
||||
|
||||
if (destructive)
|
||||
set_dollar_vars_changed ();
|
||||
}
|
||||
|
||||
static int changed_dollar_vars;
|
||||
|
||||
/* Have the dollar variables been reset to new values since we last
|
||||
checked? */
|
||||
int
|
||||
dollar_vars_changed ()
|
||||
{
|
||||
return (changed_dollar_vars);
|
||||
}
|
||||
|
||||
void
|
||||
set_dollar_vars_unchanged ()
|
||||
{
|
||||
changed_dollar_vars = 0;
|
||||
}
|
||||
|
||||
void
|
||||
set_dollar_vars_changed ()
|
||||
{
|
||||
if (variable_context)
|
||||
changed_dollar_vars |= ARGS_FUNC;
|
||||
else if (this_shell_builtin == set_builtin)
|
||||
changed_dollar_vars |= ARGS_SETBLTIN;
|
||||
else
|
||||
changed_dollar_vars |= ARGS_INVOC;
|
||||
}
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* Validating numeric input and arguments */
|
||||
/* */
|
||||
/* **************************************************************** */
|
||||
|
||||
/* Read a numeric arg for this_command_name, the name of the shell builtin
|
||||
that wants it. LIST is the word list that the arg is to come from.
|
||||
Accept only the numeric argument; report an error if other arguments
|
||||
follow. If FATAL is true, call throw_to_top_level, which exits the
|
||||
shell; if not, call jump_to_top_level (DISCARD), which aborts the
|
||||
current command. */
|
||||
intmax_t
|
||||
get_numeric_arg (list, fatal)
|
||||
WORD_LIST *list;
|
||||
int fatal;
|
||||
{
|
||||
intmax_t count = 1;
|
||||
|
||||
if (list && list->word && ISOPTION (list->word->word, '-'))
|
||||
list = list->next;
|
||||
|
||||
if (list)
|
||||
{
|
||||
register char *arg;
|
||||
|
||||
arg = list->word->word;
|
||||
if (arg == 0 || (legal_number (arg, &count) == 0))
|
||||
{
|
||||
sh_neednumarg (list->word->word);
|
||||
if (fatal)
|
||||
throw_to_top_level ();
|
||||
else
|
||||
jump_to_top_level (DISCARD);
|
||||
}
|
||||
no_args (list->next);
|
||||
}
|
||||
|
||||
return (count);
|
||||
}
|
||||
|
||||
/* Get an eight-bit status value from LIST */
|
||||
int
|
||||
get_exitstat (list)
|
||||
WORD_LIST *list;
|
||||
{
|
||||
int status;
|
||||
intmax_t sval;
|
||||
char *arg;
|
||||
|
||||
if (list && list->word && ISOPTION (list->word->word, '-'))
|
||||
list = list->next;
|
||||
|
||||
if (list == 0)
|
||||
return (last_command_exit_value);
|
||||
|
||||
arg = list->word->word;
|
||||
if (arg == 0 || legal_number (arg, &sval) == 0)
|
||||
{
|
||||
sh_neednumarg (list->word->word ? list->word->word : "`'");
|
||||
return 255;
|
||||
}
|
||||
no_args (list->next);
|
||||
|
||||
status = sval & 255;
|
||||
return status;
|
||||
}
|
||||
|
||||
/* Return the octal number parsed from STRING, or -1 to indicate
|
||||
that the string contained a bad number. */
|
||||
int
|
||||
read_octal (string)
|
||||
char *string;
|
||||
{
|
||||
int result, digits;
|
||||
|
||||
result = digits = 0;
|
||||
while (*string && ISOCTAL (*string))
|
||||
{
|
||||
digits++;
|
||||
result = (result * 8) + (*string++ - '0');
|
||||
if (result > 0777)
|
||||
return -1;
|
||||
}
|
||||
|
||||
if (digits == 0 || *string)
|
||||
result = -1;
|
||||
|
||||
return (result);
|
||||
}
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* Manipulating the current working directory */
|
||||
/* */
|
||||
/* **************************************************************** */
|
||||
|
||||
/* Return a consed string which is the current working directory.
|
||||
FOR_WHOM is the name of the caller for error printing. */
|
||||
char *the_current_working_directory = (char *)NULL;
|
||||
|
||||
char *
|
||||
get_working_directory (for_whom)
|
||||
char *for_whom;
|
||||
{
|
||||
char *directory;
|
||||
|
||||
if (no_symbolic_links)
|
||||
{
|
||||
if (the_current_working_directory)
|
||||
free (the_current_working_directory);
|
||||
|
||||
the_current_working_directory = (char *)NULL;
|
||||
}
|
||||
|
||||
if (the_current_working_directory == 0)
|
||||
{
|
||||
the_current_working_directory = (char *)xmalloc (PATH_MAX);
|
||||
the_current_working_directory[0] = '\0';
|
||||
directory = getcwd (the_current_working_directory, PATH_MAX);
|
||||
if (directory == 0)
|
||||
{
|
||||
fprintf (stderr, _("%s: could not get current directory: %s: %s\n"),
|
||||
(for_whom && *for_whom) ? for_whom : get_name_for_error (),
|
||||
_(bash_getcwd_errstr), strerror (errno));
|
||||
|
||||
free (the_current_working_directory);
|
||||
the_current_working_directory = (char *)NULL;
|
||||
return (char *)NULL;
|
||||
}
|
||||
}
|
||||
|
||||
return (savestring (the_current_working_directory));
|
||||
}
|
||||
|
||||
/* Make NAME our internal idea of the current working directory. */
|
||||
void
|
||||
set_working_directory (name)
|
||||
char *name;
|
||||
{
|
||||
FREE (the_current_working_directory);
|
||||
the_current_working_directory = savestring (name);
|
||||
}
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* Job control support functions */
|
||||
/* */
|
||||
/* **************************************************************** */
|
||||
|
||||
#if defined (JOB_CONTROL)
|
||||
int
|
||||
get_job_by_name (name, flags)
|
||||
const char *name;
|
||||
int flags;
|
||||
{
|
||||
register int i, wl, cl, match, job;
|
||||
register PROCESS *p;
|
||||
|
||||
job = NO_JOB;
|
||||
wl = strlen (name);
|
||||
for (i = job_slots - 1; i >= 0; i--)
|
||||
{
|
||||
if (jobs[i] == 0 || ((flags & JM_STOPPED) && JOBSTATE(i) != JSTOPPED))
|
||||
continue;
|
||||
|
||||
p = jobs[i]->pipe;
|
||||
do
|
||||
{
|
||||
if (flags & JM_EXACT)
|
||||
{
|
||||
cl = strlen (p->command);
|
||||
match = STREQN (p->command, name, cl);
|
||||
}
|
||||
else if (flags & JM_SUBSTRING)
|
||||
match = strindex (p->command, name) != (char *)0;
|
||||
else
|
||||
match = STREQN (p->command, name, wl);
|
||||
|
||||
if (match == 0)
|
||||
{
|
||||
p = p->next;
|
||||
continue;
|
||||
}
|
||||
else if (flags & JM_FIRSTMATCH)
|
||||
return i; /* return first match */
|
||||
else if (job != NO_JOB)
|
||||
{
|
||||
if (this_shell_builtin)
|
||||
builtin_error (_("%s: ambiguous job spec"), name);
|
||||
else
|
||||
report_error (_("%s: ambiguous job spec"), name);
|
||||
return (DUP_JOB);
|
||||
}
|
||||
else
|
||||
job = i;
|
||||
}
|
||||
while (p != jobs[i]->pipe);
|
||||
}
|
||||
|
||||
return (job);
|
||||
}
|
||||
|
||||
/* Return the job spec found in LIST. */
|
||||
int
|
||||
get_job_spec (list)
|
||||
WORD_LIST *list;
|
||||
{
|
||||
register char *word;
|
||||
int job, jflags;
|
||||
|
||||
if (list == 0)
|
||||
return (current_job);
|
||||
|
||||
word = list->word->word;
|
||||
|
||||
if (*word == '\0')
|
||||
#if 0
|
||||
return (current_job);
|
||||
#else
|
||||
return (NO_JOB);
|
||||
#endif
|
||||
|
||||
if (*word == '%')
|
||||
word++;
|
||||
|
||||
if (DIGIT (*word) && all_digits (word))
|
||||
{
|
||||
job = atoi (word);
|
||||
#if 0
|
||||
return (job >= job_slots ? NO_JOB : job - 1);
|
||||
#else
|
||||
return (job > job_slots ? NO_JOB : job - 1);
|
||||
#endif
|
||||
}
|
||||
|
||||
jflags = 0;
|
||||
switch (*word)
|
||||
{
|
||||
case 0:
|
||||
return NO_JOB;
|
||||
case '%':
|
||||
case '+':
|
||||
return (current_job);
|
||||
|
||||
case '-':
|
||||
return (previous_job);
|
||||
|
||||
case '?': /* Substring search requested. */
|
||||
jflags |= JM_SUBSTRING;
|
||||
word++;
|
||||
/* FALLTHROUGH */
|
||||
|
||||
default:
|
||||
return get_job_by_name (word, jflags);
|
||||
}
|
||||
}
|
||||
#endif /* JOB_CONTROL */
|
||||
|
||||
/*
|
||||
* NOTE: `kill' calls this function with forcecols == 0
|
||||
*/
|
||||
int
|
||||
display_signal_list (list, forcecols)
|
||||
WORD_LIST *list;
|
||||
int forcecols;
|
||||
{
|
||||
register int i, column;
|
||||
char *name;
|
||||
int result, signum, dflags;
|
||||
intmax_t lsignum;
|
||||
|
||||
result = EXECUTION_SUCCESS;
|
||||
if (!list)
|
||||
{
|
||||
for (i = 1, column = 0; i < NSIG; i++)
|
||||
{
|
||||
name = signal_name (i);
|
||||
if (STREQN (name, "SIGJUNK", 7) || STREQN (name, "Unknown", 7))
|
||||
continue;
|
||||
|
||||
if (posixly_correct && !forcecols)
|
||||
{
|
||||
/* This is for the kill builtin. POSIX.2 says the signal names
|
||||
are displayed without the `SIG' prefix. */
|
||||
if (STREQN (name, "SIG", 3))
|
||||
name += 3;
|
||||
printf ("%s%s", name, (i == NSIG - 1) ? "" : " ");
|
||||
}
|
||||
else
|
||||
{
|
||||
printf ("%2d) %s", i, name);
|
||||
|
||||
if (++column < 4)
|
||||
printf ("\t");
|
||||
else
|
||||
{
|
||||
printf ("\n");
|
||||
column = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ((posixly_correct && !forcecols) || column != 0)
|
||||
printf ("\n");
|
||||
return result;
|
||||
}
|
||||
|
||||
/* List individual signal names or numbers. */
|
||||
while (list)
|
||||
{
|
||||
if (legal_number (list->word->word, &lsignum))
|
||||
{
|
||||
/* This is specified by Posix.2 so that exit statuses can be
|
||||
mapped into signal numbers. */
|
||||
if (lsignum > 128)
|
||||
lsignum -= 128;
|
||||
if (lsignum < 0 || lsignum >= NSIG)
|
||||
{
|
||||
sh_invalidsig (list->word->word);
|
||||
result = EXECUTION_FAILURE;
|
||||
list = list->next;
|
||||
continue;
|
||||
}
|
||||
|
||||
signum = lsignum;
|
||||
name = signal_name (signum);
|
||||
if (STREQN (name, "SIGJUNK", 7) || STREQN (name, "Unknown", 7))
|
||||
{
|
||||
list = list->next;
|
||||
continue;
|
||||
}
|
||||
#if defined (JOB_CONTROL)
|
||||
/* POSIX.2 says that `kill -l signum' prints the signal name without
|
||||
the `SIG' prefix. */
|
||||
printf ("%s\n", (this_shell_builtin == kill_builtin) ? name + 3 : name);
|
||||
#else
|
||||
printf ("%s\n", name);
|
||||
#endif
|
||||
}
|
||||
else
|
||||
{
|
||||
dflags = DSIG_NOCASE;
|
||||
if (posixly_correct == 0 || this_shell_builtin != kill_builtin)
|
||||
dflags |= DSIG_SIGPREFIX;
|
||||
signum = decode_signal (list->word->word, dflags);
|
||||
if (signum == NO_SIG)
|
||||
{
|
||||
sh_invalidsig (list->word->word);
|
||||
result = EXECUTION_FAILURE;
|
||||
list = list->next;
|
||||
continue;
|
||||
}
|
||||
printf ("%d\n", signum);
|
||||
}
|
||||
list = list->next;
|
||||
}
|
||||
return (result);
|
||||
}
|
||||
|
||||
/* **************************************************************** */
|
||||
/* */
|
||||
/* Finding builtin commands and their functions */
|
||||
/* */
|
||||
/* **************************************************************** */
|
||||
|
||||
/* Perform a binary search and return the address of the builtin function
|
||||
whose name is NAME. If the function couldn't be found, or the builtin
|
||||
is disabled or has no function associated with it, return NULL.
|
||||
Return the address of the builtin.
|
||||
DISABLED_OKAY means find it even if the builtin is disabled. */
|
||||
struct builtin *
|
||||
builtin_address_internal (name, disabled_okay)
|
||||
char *name;
|
||||
int disabled_okay;
|
||||
{
|
||||
int hi, lo, mid, j;
|
||||
|
||||
hi = num_shell_builtins - 1;
|
||||
lo = 0;
|
||||
|
||||
while (lo <= hi)
|
||||
{
|
||||
mid = (lo + hi) / 2;
|
||||
|
||||
j = shell_builtins[mid].name[0] - name[0];
|
||||
|
||||
if (j == 0)
|
||||
j = strcmp (shell_builtins[mid].name, name);
|
||||
|
||||
if (j == 0)
|
||||
{
|
||||
/* It must have a function pointer. It must be enabled, or we
|
||||
must have explicitly allowed disabled functions to be found,
|
||||
and it must not have been deleted. */
|
||||
if (shell_builtins[mid].function &&
|
||||
((shell_builtins[mid].flags & BUILTIN_DELETED) == 0) &&
|
||||
((shell_builtins[mid].flags & BUILTIN_ENABLED) || disabled_okay))
|
||||
return (&shell_builtins[mid]);
|
||||
else
|
||||
return ((struct builtin *)NULL);
|
||||
}
|
||||
if (j > 0)
|
||||
hi = mid - 1;
|
||||
else
|
||||
lo = mid + 1;
|
||||
}
|
||||
return ((struct builtin *)NULL);
|
||||
}
|
||||
|
||||
/* Return the pointer to the function implementing builtin command NAME. */
|
||||
sh_builtin_func_t *
|
||||
find_shell_builtin (name)
|
||||
char *name;
|
||||
{
|
||||
current_builtin = builtin_address_internal (name, 0);
|
||||
return (current_builtin ? current_builtin->function : (sh_builtin_func_t *)NULL);
|
||||
}
|
||||
|
||||
/* Return the address of builtin with NAME, whether it is enabled or not. */
|
||||
sh_builtin_func_t *
|
||||
builtin_address (name)
|
||||
char *name;
|
||||
{
|
||||
current_builtin = builtin_address_internal (name, 1);
|
||||
return (current_builtin ? current_builtin->function : (sh_builtin_func_t *)NULL);
|
||||
}
|
||||
|
||||
/* Return the function implementing the builtin NAME, but only if it is a
|
||||
POSIX.2 special builtin. */
|
||||
sh_builtin_func_t *
|
||||
find_special_builtin (name)
|
||||
char *name;
|
||||
{
|
||||
current_builtin = builtin_address_internal (name, 0);
|
||||
return ((current_builtin && (current_builtin->flags & SPECIAL_BUILTIN)) ?
|
||||
current_builtin->function :
|
||||
(sh_builtin_func_t *)NULL);
|
||||
}
|
||||
|
||||
static int
|
||||
shell_builtin_compare (sbp1, sbp2)
|
||||
struct builtin *sbp1, *sbp2;
|
||||
{
|
||||
int result;
|
||||
|
||||
if ((result = sbp1->name[0] - sbp2->name[0]) == 0)
|
||||
result = strcmp (sbp1->name, sbp2->name);
|
||||
|
||||
return (result);
|
||||
}
|
||||
|
||||
/* Sort the table of shell builtins so that the binary search will work
|
||||
in find_shell_builtin. */
|
||||
void
|
||||
initialize_shell_builtins ()
|
||||
{
|
||||
qsort (shell_builtins, num_shell_builtins, sizeof (struct builtin),
|
||||
(QSFUNC *)shell_builtin_compare);
|
||||
}
|
||||
+8
-1
@@ -1,7 +1,7 @@
|
||||
This file is read.def, from which is created read.c.
|
||||
It implements the builtin "read" in Bash.
|
||||
|
||||
Copyright (C) 1987-2003 Free Software Foundation, Inc.
|
||||
Copyright (C) 1987-2004 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Bash, the Bourne Again SHell.
|
||||
|
||||
@@ -499,6 +499,13 @@ read_builtin (list)
|
||||
an assign them to `arrayname' in turn. */
|
||||
if (arrayname)
|
||||
{
|
||||
if (legal_identifier (arrayname) == 0)
|
||||
{
|
||||
sh_invalidid (arrayname);
|
||||
xfree (input_string);
|
||||
return (EXECUTION_FAILURE);
|
||||
}
|
||||
|
||||
var = find_or_make_array_variable (arrayname, 1);
|
||||
if (var == 0)
|
||||
return EXECUTION_FAILURE; /* readonly or noassign */
|
||||
|
||||
@@ -0,0 +1,736 @@
|
||||
This file is read.def, from which is created read.c.
|
||||
It implements the builtin "read" in Bash.
|
||||
|
||||
Copyright (C) 1987-2003 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.
|
||||
|
||||
$PRODUCES read.c
|
||||
|
||||
$BUILTIN read
|
||||
$FUNCTION read_builtin
|
||||
$SHORT_DOC read [-ers] [-u fd] [-t timeout] [-p prompt] [-a array] [-n nchars] [-d delim] [name ...]
|
||||
One line is read from the standard input, or from file descriptor FD if the
|
||||
-u option is supplied, and the first word is assigned to the first NAME,
|
||||
the second word to the second NAME, and so on, with leftover words assigned
|
||||
to the last NAME. Only the characters found in $IFS are recognized as word
|
||||
delimiters. If no NAMEs are supplied, the line read is stored in the REPLY
|
||||
variable. If the -r option is given, this signifies `raw' input, and
|
||||
backslash escaping is disabled. The -d option causes read to continue
|
||||
until the first character of DELIM is read, rather than newline. If the -p
|
||||
option is supplied, the string PROMPT is output without a trailing newline
|
||||
before attempting to read. If -a is supplied, the words read are assigned
|
||||
to sequential indices of ARRAY, starting at zero. If -e is supplied and
|
||||
the shell is interactive, readline is used to obtain the line. If -n is
|
||||
supplied with a non-zero NCHARS argument, read returns after NCHARS
|
||||
characters have been read. The -s option causes input coming from a
|
||||
terminal to not be echoed.
|
||||
|
||||
The -t option causes read to time out and return failure if a complete line
|
||||
of input is not read within TIMEOUT seconds. If the TMOUT variable is set,
|
||||
its value is the default timeout. The return code is zero, unless end-of-file
|
||||
is encountered, read times out, or an invalid file descriptor is supplied as
|
||||
the argument to -u.
|
||||
$END
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include "bashtypes.h"
|
||||
#include "posixstat.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
#if defined (HAVE_UNISTD_H)
|
||||
# include <unistd.h>
|
||||
#endif
|
||||
|
||||
#include <signal.h>
|
||||
#include <errno.h>
|
||||
|
||||
#ifdef __CYGWIN__
|
||||
# include <fcntl.h>
|
||||
# include <io.h>
|
||||
#endif
|
||||
|
||||
#include "../bashintl.h"
|
||||
|
||||
#include "../shell.h"
|
||||
#include "common.h"
|
||||
#include "bashgetopt.h"
|
||||
|
||||
#include <shtty.h>
|
||||
|
||||
#if defined (READLINE)
|
||||
#include "../bashline.h"
|
||||
#include <readline/readline.h>
|
||||
#endif
|
||||
|
||||
#if !defined(errno)
|
||||
extern int errno;
|
||||
#endif
|
||||
|
||||
extern int interrupt_immediately;
|
||||
|
||||
#if defined (READLINE)
|
||||
static char *edit_line __P((char *));
|
||||
static void set_eol_delim __P((int));
|
||||
static void reset_eol_delim __P((char *));
|
||||
#endif
|
||||
static SHELL_VAR *bind_read_variable __P((char *, char *));
|
||||
|
||||
static sighandler sigalrm __P((int));
|
||||
static void reset_alarm __P((void));
|
||||
|
||||
static procenv_t alrmbuf;
|
||||
static SigHandler *old_alrm;
|
||||
static unsigned char delim;
|
||||
|
||||
static sighandler
|
||||
sigalrm (s)
|
||||
int s;
|
||||
{
|
||||
longjmp (alrmbuf, 1);
|
||||
}
|
||||
|
||||
static void
|
||||
reset_alarm ()
|
||||
{
|
||||
set_signal_handler (SIGALRM, old_alrm);
|
||||
alarm (0);
|
||||
}
|
||||
|
||||
/* Read the value of the shell variables whose names follow.
|
||||
The reading is done from the current input stream, whatever
|
||||
that may be. Successive words of the input line are assigned
|
||||
to the variables mentioned in LIST. The last variable in LIST
|
||||
gets the remainder of the words on the line. If no variables
|
||||
are mentioned in LIST, then the default variable is $REPLY. */
|
||||
int
|
||||
read_builtin (list)
|
||||
WORD_LIST *list;
|
||||
{
|
||||
register char *varname;
|
||||
int size, i, pass_next, saw_escape, eof, opt, retval, code;
|
||||
int input_is_tty, input_is_pipe, unbuffered_read;
|
||||
int raw, edit, nchars, silent, have_timeout, fd;
|
||||
unsigned int tmout;
|
||||
intmax_t intval;
|
||||
char c;
|
||||
char *input_string, *orig_input_string, *ifs_chars, *prompt, *arrayname;
|
||||
char *e, *t, *t1;
|
||||
struct stat tsb;
|
||||
SHELL_VAR *var;
|
||||
#if defined (ARRAY_VARS)
|
||||
WORD_LIST *alist;
|
||||
#endif
|
||||
#if defined (READLINE)
|
||||
char *rlbuf;
|
||||
int rlind;
|
||||
#endif
|
||||
|
||||
USE_VAR(size);
|
||||
USE_VAR(i);
|
||||
USE_VAR(pass_next);
|
||||
USE_VAR(saw_escape);
|
||||
USE_VAR(input_is_pipe);
|
||||
/* USE_VAR(raw); */
|
||||
USE_VAR(edit);
|
||||
USE_VAR(tmout);
|
||||
USE_VAR(nchars);
|
||||
USE_VAR(silent);
|
||||
USE_VAR(ifs_chars);
|
||||
USE_VAR(prompt);
|
||||
USE_VAR(arrayname);
|
||||
#if defined (READLINE)
|
||||
USE_VAR(rlbuf);
|
||||
USE_VAR(rlind);
|
||||
#endif
|
||||
USE_VAR(list);
|
||||
|
||||
i = 0; /* Index into the string that we are reading. */
|
||||
raw = edit = 0; /* Not reading raw input by default. */
|
||||
silent = 0;
|
||||
arrayname = prompt = (char *)NULL;
|
||||
fd = 0; /* file descriptor to read from */
|
||||
|
||||
#if defined (READLINE)
|
||||
rlbuf = (char *)0;
|
||||
rlind = 0;
|
||||
#endif
|
||||
|
||||
tmout = 0; /* no timeout */
|
||||
nchars = input_is_tty = input_is_pipe = unbuffered_read = have_timeout = 0;
|
||||
delim = '\n'; /* read until newline */
|
||||
|
||||
reset_internal_getopt ();
|
||||
while ((opt = internal_getopt (list, "ersa:d:n:p:t:u:")) != -1)
|
||||
{
|
||||
switch (opt)
|
||||
{
|
||||
case 'r':
|
||||
raw = 1;
|
||||
break;
|
||||
case 'p':
|
||||
prompt = list_optarg;
|
||||
break;
|
||||
case 's':
|
||||
silent = 1;
|
||||
break;
|
||||
case 'e':
|
||||
#if defined (READLINE)
|
||||
edit = 1;
|
||||
#endif
|
||||
break;
|
||||
#if defined (ARRAY_VARS)
|
||||
case 'a':
|
||||
arrayname = list_optarg;
|
||||
break;
|
||||
#endif
|
||||
case 't':
|
||||
code = legal_number (list_optarg, &intval);
|
||||
if (code == 0 || intval < 0 || intval != (unsigned int)intval)
|
||||
{
|
||||
builtin_error (_("%s: invalid timeout specification"), list_optarg);
|
||||
return (EXECUTION_FAILURE);
|
||||
}
|
||||
else
|
||||
{
|
||||
have_timeout = 1;
|
||||
tmout = intval;
|
||||
}
|
||||
break;
|
||||
case 'n':
|
||||
code = legal_number (list_optarg, &intval);
|
||||
if (code == 0 || intval < 0 || intval != (int)intval)
|
||||
{
|
||||
sh_invalidnum (list_optarg);
|
||||
return (EXECUTION_FAILURE);
|
||||
}
|
||||
else
|
||||
nchars = intval;
|
||||
break;
|
||||
case 'u':
|
||||
code = legal_number (list_optarg, &intval);
|
||||
if (code == 0 || intval < 0 || intval != (int)intval)
|
||||
{
|
||||
builtin_error (_("%s: invalid file descriptor specification"), list_optarg);
|
||||
return (EXECUTION_FAILURE);
|
||||
}
|
||||
else
|
||||
fd = intval;
|
||||
if (sh_validfd (fd) == 0)
|
||||
{
|
||||
builtin_error (_("%d: invalid file descriptor: %s"), fd, strerror (errno));
|
||||
return (EXECUTION_FAILURE);
|
||||
}
|
||||
break;
|
||||
case 'd':
|
||||
delim = *list_optarg;
|
||||
break;
|
||||
default:
|
||||
builtin_usage ();
|
||||
return (EX_USAGE);
|
||||
}
|
||||
}
|
||||
list = loptend;
|
||||
|
||||
/* `read -t 0 var' returns failure immediately. XXX - should it test
|
||||
whether input is available with select/FIONREAD, and fail if those
|
||||
are unavailable? */
|
||||
if (have_timeout && tmout == 0)
|
||||
return (EXECUTION_FAILURE);
|
||||
|
||||
/* IF IFS is unset, we use the default of " \t\n". */
|
||||
ifs_chars = getifs ();
|
||||
if (ifs_chars == 0) /* XXX - shouldn't happen */
|
||||
ifs_chars = "";
|
||||
|
||||
input_string = (char *)xmalloc (size = 112); /* XXX was 128 */
|
||||
|
||||
/* $TMOUT, if set, is the default timeout for read. */
|
||||
if (have_timeout == 0 && (e = get_string_value ("TMOUT")))
|
||||
{
|
||||
code = legal_number (e, &intval);
|
||||
if (code == 0 || intval < 0 || intval != (unsigned int)intval)
|
||||
tmout = 0;
|
||||
else
|
||||
tmout = intval;
|
||||
}
|
||||
|
||||
begin_unwind_frame ("read_builtin");
|
||||
|
||||
input_is_tty = isatty (fd);
|
||||
if (input_is_tty == 0)
|
||||
#ifndef __CYGWIN__
|
||||
input_is_pipe = (lseek (0, 0L, SEEK_CUR) < 0) && (errno == ESPIPE);
|
||||
#else
|
||||
input_is_pipe = 1;
|
||||
#endif
|
||||
|
||||
/* If the -p, -e or -s flags were given, but input is not coming from the
|
||||
terminal, turn them off. */
|
||||
if ((prompt || edit || silent) && input_is_tty == 0)
|
||||
{
|
||||
prompt = (char *)NULL;
|
||||
edit = silent = 0;
|
||||
}
|
||||
|
||||
#if defined (READLINE)
|
||||
if (edit)
|
||||
add_unwind_protect (xfree, rlbuf);
|
||||
#endif
|
||||
|
||||
if (prompt && edit == 0)
|
||||
{
|
||||
fprintf (stderr, "%s", prompt);
|
||||
fflush (stderr);
|
||||
}
|
||||
|
||||
pass_next = 0; /* Non-zero signifies last char was backslash. */
|
||||
saw_escape = 0; /* Non-zero signifies that we saw an escape char */
|
||||
|
||||
if (tmout > 0)
|
||||
{
|
||||
/* Turn off the timeout if stdin is a regular file (e.g. from
|
||||
input redirection). */
|
||||
if ((fstat (fd, &tsb) < 0) || S_ISREG (tsb.st_mode))
|
||||
tmout = 0;
|
||||
}
|
||||
|
||||
if (tmout > 0)
|
||||
{
|
||||
code = setjmp (alrmbuf);
|
||||
if (code)
|
||||
{
|
||||
run_unwind_frame ("read_builtin");
|
||||
return (EXECUTION_FAILURE);
|
||||
}
|
||||
old_alrm = set_signal_handler (SIGALRM, sigalrm);
|
||||
add_unwind_protect (reset_alarm, (char *)NULL);
|
||||
alarm (tmout);
|
||||
}
|
||||
|
||||
/* If we've been asked to read only NCHARS chars, or we're using some
|
||||
character other than newline to terminate the line, do the right
|
||||
thing to readline or the tty. */
|
||||
if (nchars > 0 || delim != '\n')
|
||||
{
|
||||
#if defined (READLINE)
|
||||
if (edit)
|
||||
{
|
||||
if (nchars > 0)
|
||||
{
|
||||
unwind_protect_int (rl_num_chars_to_read);
|
||||
rl_num_chars_to_read = nchars;
|
||||
}
|
||||
if (delim != '\n')
|
||||
{
|
||||
set_eol_delim (delim);
|
||||
add_unwind_protect (reset_eol_delim, (char *)NULL);
|
||||
}
|
||||
}
|
||||
else
|
||||
#endif
|
||||
if (input_is_tty)
|
||||
{
|
||||
ttsave ();
|
||||
if (silent)
|
||||
ttcbreak ();
|
||||
else
|
||||
ttonechar ();
|
||||
add_unwind_protect ((Function *)ttrestore, (char *)NULL);
|
||||
}
|
||||
}
|
||||
else if (silent) /* turn off echo but leave term in canonical mode */
|
||||
{
|
||||
ttsave ();
|
||||
ttnoecho ();
|
||||
add_unwind_protect ((Function *)ttrestore, (char *)NULL);
|
||||
}
|
||||
|
||||
/* This *must* be the top unwind-protect on the stack, so the manipulation
|
||||
of the unwind-protect stack after the realloc() works right. */
|
||||
add_unwind_protect (xfree, input_string);
|
||||
interrupt_immediately++;
|
||||
|
||||
unbuffered_read = (nchars > 0) || (delim != '\n') || input_is_pipe;
|
||||
|
||||
#if defined (__CYGWIN__) && defined (O_TEXT)
|
||||
setmode (0, O_TEXT);
|
||||
#endif
|
||||
|
||||
for (eof = retval = 0;;)
|
||||
{
|
||||
#if defined (READLINE)
|
||||
if (edit)
|
||||
{
|
||||
if (rlbuf && rlbuf[rlind] == '\0')
|
||||
{
|
||||
xfree (rlbuf);
|
||||
rlbuf = (char *)0;
|
||||
}
|
||||
if (rlbuf == 0)
|
||||
{
|
||||
rlbuf = edit_line (prompt ? prompt : "");
|
||||
rlind = 0;
|
||||
}
|
||||
if (rlbuf == 0)
|
||||
{
|
||||
eof = 1;
|
||||
break;
|
||||
}
|
||||
c = rlbuf[rlind++];
|
||||
}
|
||||
else
|
||||
{
|
||||
#endif
|
||||
|
||||
if (unbuffered_read)
|
||||
retval = zread (fd, &c, 1);
|
||||
else
|
||||
retval = zreadc (fd, &c);
|
||||
|
||||
if (retval <= 0)
|
||||
{
|
||||
eof = 1;
|
||||
break;
|
||||
}
|
||||
|
||||
#if defined (READLINE)
|
||||
}
|
||||
#endif
|
||||
|
||||
if (i + 2 >= size)
|
||||
{
|
||||
input_string = (char *)xrealloc (input_string, size += 128);
|
||||
remove_unwind_protect ();
|
||||
add_unwind_protect (xfree, input_string);
|
||||
}
|
||||
|
||||
/* If the next character is to be accepted verbatim, a backslash
|
||||
newline pair still disappears from the input. */
|
||||
if (pass_next)
|
||||
{
|
||||
if (c == '\n')
|
||||
i--; /* back up over the CTLESC */
|
||||
else
|
||||
input_string[i++] = c;
|
||||
pass_next = 0;
|
||||
continue;
|
||||
}
|
||||
|
||||
if (c == '\\' && raw == 0)
|
||||
{
|
||||
pass_next++;
|
||||
saw_escape++;
|
||||
input_string[i++] = CTLESC;
|
||||
continue;
|
||||
}
|
||||
|
||||
if ((unsigned char)c == delim)
|
||||
break;
|
||||
|
||||
if (c == CTLESC || c == CTLNUL)
|
||||
{
|
||||
saw_escape++;
|
||||
input_string[i++] = CTLESC;
|
||||
}
|
||||
|
||||
input_string[i++] = c;
|
||||
|
||||
if (nchars > 0 && i >= nchars)
|
||||
break;
|
||||
}
|
||||
input_string[i] = '\0';
|
||||
|
||||
#if 1
|
||||
if (retval < 0)
|
||||
{
|
||||
builtin_error (_("read error: %d: %s"), fd, strerror (errno));
|
||||
return (EXECUTION_FAILURE);
|
||||
}
|
||||
#endif
|
||||
|
||||
if (tmout > 0)
|
||||
reset_alarm ();
|
||||
|
||||
if (nchars > 0 || delim != '\n')
|
||||
{
|
||||
#if defined (READLINE)
|
||||
if (edit)
|
||||
{
|
||||
if (nchars > 0)
|
||||
rl_num_chars_to_read = 0;
|
||||
if (delim != '\n')
|
||||
reset_eol_delim ((char *)NULL);
|
||||
}
|
||||
else
|
||||
#endif
|
||||
if (input_is_tty)
|
||||
ttrestore ();
|
||||
}
|
||||
else if (silent)
|
||||
ttrestore ();
|
||||
|
||||
if (unbuffered_read == 0)
|
||||
zsyncfd (fd);
|
||||
|
||||
interrupt_immediately--;
|
||||
discard_unwind_frame ("read_builtin");
|
||||
|
||||
retval = eof ? EXECUTION_FAILURE : EXECUTION_SUCCESS;
|
||||
|
||||
#if defined (ARRAY_VARS)
|
||||
/* If -a was given, take the string read, break it into a list of words,
|
||||
an assign them to `arrayname' in turn. */
|
||||
if (arrayname)
|
||||
{
|
||||
if (legal_identifier (arrayname) == 0)
|
||||
{
|
||||
sh_invalidid (arrayname);
|
||||
xfree (input_string);
|
||||
return (EXECUTION_FAILURE);
|
||||
}
|
||||
|
||||
var = find_or_make_array_variable (arrayname, 1);
|
||||
if (var == 0)
|
||||
return EXECUTION_FAILURE; /* readonly or noassign */
|
||||
array_flush (array_cell (var));
|
||||
|
||||
alist = list_string (input_string, ifs_chars, 0);
|
||||
if (alist)
|
||||
{
|
||||
word_list_remove_quoted_nulls (alist);
|
||||
assign_array_var_from_word_list (var, alist);
|
||||
dispose_words (alist);
|
||||
}
|
||||
xfree (input_string);
|
||||
return (retval);
|
||||
}
|
||||
#endif /* ARRAY_VARS */
|
||||
|
||||
/* If there are no variables, save the text of the line read to the
|
||||
variable $REPLY. ksh93 strips leading and trailing IFS whitespace,
|
||||
so that `read x ; echo "$x"' and `read ; echo "$REPLY"' behave the
|
||||
same way, but I believe that the difference in behaviors is useful
|
||||
enough to not do it. Without the bash behavior, there is no way
|
||||
to read a line completely without interpretation or modification
|
||||
unless you mess with $IFS (e.g., setting it to the empty string).
|
||||
If you disagree, change the occurrences of `#if 0' to `#if 1' below. */
|
||||
if (list == 0)
|
||||
{
|
||||
#if 0
|
||||
orig_input_string = input_string;
|
||||
for (t = input_string; ifs_chars && *ifs_chars && spctabnl(*t) && isifs(*t); t++)
|
||||
;
|
||||
input_string = t;
|
||||
input_string = strip_trailing_ifs_whitespace (input_string, ifs_chars, saw_escape);
|
||||
#endif
|
||||
|
||||
if (saw_escape)
|
||||
{
|
||||
t = dequote_string (input_string);
|
||||
var = bind_variable ("REPLY", t);
|
||||
free (t);
|
||||
}
|
||||
else
|
||||
var = bind_variable ("REPLY", input_string);
|
||||
VUNSETATTR (var, att_invisible);
|
||||
|
||||
free (input_string);
|
||||
return (retval);
|
||||
}
|
||||
|
||||
/* This code implements the Posix.2 spec for splitting the words
|
||||
read and assigning them to variables. */
|
||||
orig_input_string = input_string;
|
||||
|
||||
/* Remove IFS white space at the beginning of the input string. If
|
||||
$IFS is null, no field splitting is performed. */
|
||||
for (t = input_string; ifs_chars && *ifs_chars && spctabnl(*t) && isifs(*t); t++)
|
||||
;
|
||||
input_string = t;
|
||||
|
||||
for (; list->next; list = list->next)
|
||||
{
|
||||
varname = list->word->word;
|
||||
#if defined (ARRAY_VARS)
|
||||
if (legal_identifier (varname) == 0 && valid_array_reference (varname) == 0)
|
||||
#else
|
||||
if (legal_identifier (varname) == 0)
|
||||
#endif
|
||||
{
|
||||
sh_invalidid (varname);
|
||||
xfree (orig_input_string);
|
||||
return (EXECUTION_FAILURE);
|
||||
}
|
||||
|
||||
/* If there are more variables than words read from the input,
|
||||
the remaining variables are set to the empty string. */
|
||||
if (*input_string)
|
||||
{
|
||||
/* This call updates INPUT_STRING. */
|
||||
t = get_word_from_string (&input_string, ifs_chars, &e);
|
||||
if (t)
|
||||
*e = '\0';
|
||||
/* Don't bother to remove the CTLESC unless we added one
|
||||
somewhere while reading the string. */
|
||||
if (t && saw_escape)
|
||||
{
|
||||
t1 = dequote_string (t);
|
||||
var = bind_read_variable (varname, t1);
|
||||
xfree (t1);
|
||||
}
|
||||
else
|
||||
var = bind_read_variable (varname, t);
|
||||
}
|
||||
else
|
||||
{
|
||||
t = (char *)0;
|
||||
var = bind_read_variable (varname, "");
|
||||
}
|
||||
|
||||
FREE (t);
|
||||
if (var == 0)
|
||||
{
|
||||
xfree (orig_input_string);
|
||||
return (EXECUTION_FAILURE);
|
||||
}
|
||||
|
||||
stupidly_hack_special_variables (varname);
|
||||
VUNSETATTR (var, att_invisible);
|
||||
}
|
||||
|
||||
/* Now assign the rest of the line to the last variable argument. */
|
||||
#if defined (ARRAY_VARS)
|
||||
if (legal_identifier (list->word->word) == 0 && valid_array_reference (list->word->word) == 0)
|
||||
#else
|
||||
if (legal_identifier (list->word->word) == 0)
|
||||
#endif
|
||||
{
|
||||
sh_invalidid (list->word->word);
|
||||
xfree (orig_input_string);
|
||||
return (EXECUTION_FAILURE);
|
||||
}
|
||||
|
||||
/* This has to be done this way rather than using string_list
|
||||
and list_string because Posix.2 says that the last variable gets the
|
||||
remaining words and their intervening separators. */
|
||||
input_string = strip_trailing_ifs_whitespace (input_string, ifs_chars, saw_escape);
|
||||
|
||||
if (saw_escape)
|
||||
{
|
||||
t = dequote_string (input_string);
|
||||
var = bind_read_variable (list->word->word, t);
|
||||
xfree (t);
|
||||
}
|
||||
else
|
||||
var = bind_read_variable (list->word->word, input_string);
|
||||
stupidly_hack_special_variables (list->word->word);
|
||||
if (var)
|
||||
VUNSETATTR (var, att_invisible);
|
||||
xfree (orig_input_string);
|
||||
|
||||
return (retval);
|
||||
}
|
||||
|
||||
static SHELL_VAR *
|
||||
bind_read_variable (name, value)
|
||||
char *name, *value;
|
||||
{
|
||||
#if defined (ARRAY_VARS)
|
||||
if (valid_array_reference (name) == 0)
|
||||
return (bind_variable (name, value));
|
||||
else
|
||||
return (assign_array_element (name, value));
|
||||
#else /* !ARRAY_VARS */
|
||||
return bind_variable (name, value);
|
||||
#endif /* !ARRAY_VARS */
|
||||
}
|
||||
|
||||
#if defined (READLINE)
|
||||
static rl_completion_func_t *old_attempted_completion_function;
|
||||
|
||||
static char *
|
||||
edit_line (p)
|
||||
char *p;
|
||||
{
|
||||
char *ret;
|
||||
int len;
|
||||
|
||||
if (!bash_readline_initialized)
|
||||
initialize_readline ();
|
||||
old_attempted_completion_function = rl_attempted_completion_function;
|
||||
rl_attempted_completion_function = (rl_completion_func_t *)NULL;
|
||||
ret = readline (p);
|
||||
rl_attempted_completion_function = old_attempted_completion_function;
|
||||
if (ret == 0)
|
||||
return ret;
|
||||
len = strlen (ret);
|
||||
ret = (char *)xrealloc (ret, len + 2);
|
||||
ret[len++] = delim;
|
||||
ret[len] = '\0';
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int old_delim_ctype;
|
||||
static rl_command_func_t *old_delim_func;
|
||||
static int old_newline_ctype;
|
||||
static rl_command_func_t *old_newline_func;
|
||||
|
||||
static unsigned char delim_char;
|
||||
|
||||
static void
|
||||
set_eol_delim (c)
|
||||
int c;
|
||||
{
|
||||
Keymap cmap;
|
||||
|
||||
if (bash_readline_initialized == 0)
|
||||
initialize_readline ();
|
||||
cmap = rl_get_keymap ();
|
||||
|
||||
/* Change newline to self-insert */
|
||||
old_newline_ctype = cmap[RETURN].type;
|
||||
old_newline_func = cmap[RETURN].function;
|
||||
cmap[RETURN].type = ISFUNC;
|
||||
cmap[RETURN].function = rl_insert;
|
||||
|
||||
/* Bind the delimiter character to accept-line. */
|
||||
old_delim_ctype = cmap[c].type;
|
||||
old_delim_func = cmap[c].function;
|
||||
cmap[c].type = ISFUNC;
|
||||
cmap[c].function = rl_newline;
|
||||
|
||||
delim_char = c;
|
||||
}
|
||||
|
||||
static void
|
||||
reset_eol_delim (cp)
|
||||
char *cp;
|
||||
{
|
||||
Keymap cmap;
|
||||
|
||||
cmap = rl_get_keymap ();
|
||||
|
||||
cmap[RETURN].type = old_newline_ctype;
|
||||
cmap[RETURN].function = old_newline_func;
|
||||
|
||||
cmap[delim_char].type = old_delim_ctype;
|
||||
cmap[delim_char].function = old_delim_func;
|
||||
}
|
||||
#endif
|
||||
@@ -1,5 +1,5 @@
|
||||
#! /bin/sh
|
||||
# From configure.in for Bash 3.0, version 3.159, from autoconf version AC_ACVERSION.
|
||||
# From configure.in for Bash 3.0, version 3.160, from autoconf version AC_ACVERSION.
|
||||
# Guess values for system-dependent variables and create Makefiles.
|
||||
# Generated by GNU Autoconf 2.57 for bash 3.0-beta1.
|
||||
#
|
||||
@@ -311,7 +311,7 @@ ac_includes_default="\
|
||||
# include <unistd.h>
|
||||
#endif"
|
||||
|
||||
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os EMACS lispdir DEBUGGER_START_FILE TESTSCRIPT PURIFY MALLOC_TARGET MALLOC_SRC MALLOC_LIB MALLOC_LIBRARY MALLOC_LDFLAGS MALLOC_DEP htmldir HELPDIR HELPDIRDEFINE HELPINSTALL CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP EGREP SIGNAMES_H CC_FOR_BUILD STATIC_LD CFLAGS_FOR_BUILD CPPFLAGS_FOR_BUILD LDFLAGS_FOR_BUILD RL_VERSION RL_MAJOR RL_MINOR READLINE_LIB READLINE_DEP RL_LIBDIR RL_INCLUDEDIR RL_INCLUDE HISTORY_LIB HISTORY_DEP HIST_LIBDIR INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA AR RANLIB ac_ct_RANLIB YACC SET_MAKE MAKE_SHELL MKINSTALLDIRS USE_NLS MSGFMT GMSGFMT XGETTEXT MSGMERGE ALLOCA GLIBC21 LIBICONV LTLIBICONV INTLBISON BUILD_INCLUDED_LIBINTL USE_INCLUDED_LIBINTL CATOBJEXT DATADIRNAME INSTOBJEXT GENCAT INTLOBJS INTL_LIBTOOL_SUFFIX_PREFIX INTLLIBS LIBINTL LTLIBINTL POSUB LIBOBJS INTL_DEP INTL_INC SIGLIST_O TERMCAP_LIB TERMCAP_DEP JOBS_O SHOBJ_CC SHOBJ_CFLAGS SHOBJ_LD SHOBJ_LDFLAGS SHOBJ_XLDFLAGS SHOBJ_LIBS SHOBJ_STATUS PROFILE_FLAGS incdir BUILD_DIR ARFLAGS BASHVERS RELSTATUS DEBUG MALLOC_DEBUG LOCAL_LIBS LOCAL_CFLAGS LOCAL_LDFLAGS LOCAL_DEFS LTLIBOBJS'
|
||||
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os EMACS lispdir DEBUGGER_START_FILE TESTSCRIPT PURIFY MALLOC_TARGET MALLOC_SRC MALLOC_LIB MALLOC_LIBRARY MALLOC_LDFLAGS MALLOC_DEP htmldir HELPDIR HELPDIRDEFINE HELPINSTALL CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP EGREP SIGNAMES_H CC_FOR_BUILD STATIC_LD CFLAGS_FOR_BUILD CPPFLAGS_FOR_BUILD LDFLAGS_FOR_BUILD RL_VERSION RL_MAJOR RL_MINOR READLINE_LIB READLINE_DEP RL_LIBDIR RL_INCLUDEDIR RL_INCLUDE HISTORY_LIB HISTORY_DEP HIST_LIBDIR INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA AR RANLIB ac_ct_RANLIB YACC SET_MAKE MAKE_SHELL MKINSTALLDIRS USE_NLS MSGFMT GMSGFMT XGETTEXT MSGMERGE ALLOCA GLIBC21 LIBICONV LTLIBICONV INTLBISON BUILD_INCLUDED_LIBINTL USE_INCLUDED_LIBINTL CATOBJEXT DATADIRNAME INSTOBJEXT GENCAT INTLOBJS INTL_LIBTOOL_SUFFIX_PREFIX INTLLIBS LIBINTL LTLIBINTL POSUB LIBOBJS INTL_DEP INTL_INC LIBINTL_H SIGLIST_O TERMCAP_LIB TERMCAP_DEP JOBS_O SHOBJ_CC SHOBJ_CFLAGS SHOBJ_LD SHOBJ_LDFLAGS SHOBJ_XLDFLAGS SHOBJ_LIBS SHOBJ_STATUS PROFILE_FLAGS incdir BUILD_DIR ARFLAGS BASHVERS RELSTATUS DEBUG MALLOC_DEBUG LOCAL_LIBS LOCAL_CFLAGS LOCAL_LDFLAGS LOCAL_DEFS LTLIBOBJS'
|
||||
ac_subst_files=''
|
||||
|
||||
# Initialize some variables set by options.
|
||||
@@ -13780,10 +13780,11 @@ fi
|
||||
done
|
||||
|
||||
|
||||
INTL_DEP= INTL_INC=
|
||||
INTL_DEP= INTL_INC= LIBINTL_H=
|
||||
if test "x$USE_INCLUDED_LIBINTL" = "xyes"; then
|
||||
INTL_DEP='${INTL_LIBDIR}/libintl.a'
|
||||
INTL_INC='-I${INTL_LIBSRC}'
|
||||
INTL_INC='-I${INTL_LIBSRC} -I${INTL_BUILDDIR}'
|
||||
LIBINTL_H='${INTL_BUILDDIR}/libintl.h'
|
||||
fi
|
||||
|
||||
|
||||
@@ -13791,6 +13792,7 @@ fi
|
||||
|
||||
|
||||
|
||||
|
||||
for ac_header in wctype.h
|
||||
do
|
||||
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
|
||||
@@ -24854,6 +24856,7 @@ s,@POSUB@,$POSUB,;t t
|
||||
s,@LIBOBJS@,$LIBOBJS,;t t
|
||||
s,@INTL_DEP@,$INTL_DEP,;t t
|
||||
s,@INTL_INC@,$INTL_INC,;t t
|
||||
s,@LIBINTL_H@,$LIBINTL_H,;t t
|
||||
s,@SIGLIST_O@,$SIGLIST_O,;t t
|
||||
s,@TERMCAP_LIB@,$TERMCAP_LIB,;t t
|
||||
s,@TERMCAP_DEP@,$TERMCAP_DEP,;t t
|
||||
|
||||
+6
-4
@@ -5,7 +5,7 @@ dnl report bugs to chet@po.cwru.edu
|
||||
dnl
|
||||
dnl Process this file with autoconf to produce a configure script.
|
||||
|
||||
# Copyright (C) 1987-2003 Free Software Foundation, Inc.
|
||||
# Copyright (C) 1987-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
|
||||
@@ -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.159, from autoconf version] AC_ACVERSION)dnl
|
||||
AC_REVISION([for Bash 3.0, version 3.160, from autoconf version] AC_ACVERSION)dnl
|
||||
|
||||
define(bashvers, 3.0)
|
||||
define(relstatus, beta1)
|
||||
@@ -679,13 +679,15 @@ AC_FUNC_MMAP
|
||||
AC_CHECK_FUNCS([__argz_count __argz_next __argz_stringify dcgettext mempcpy \
|
||||
munmap stpcpy strcspn strdup])
|
||||
|
||||
INTL_DEP= INTL_INC=
|
||||
INTL_DEP= INTL_INC= LIBINTL_H=
|
||||
if test "x$USE_INCLUDED_LIBINTL" = "xyes"; then
|
||||
INTL_DEP='${INTL_LIBDIR}/libintl.a'
|
||||
INTL_INC='-I${INTL_LIBSRC}'
|
||||
INTL_INC='-I${INTL_LIBSRC} -I${INTL_BUILDDIR}'
|
||||
LIBINTL_H='${INTL_BUILDDIR}/libintl.h'
|
||||
fi
|
||||
AC_SUBST(INTL_DEP)
|
||||
AC_SUBST(INTL_INC)
|
||||
AC_SUBST(LIBINTL_H)
|
||||
|
||||
dnl
|
||||
dnl End of checks needed by files in lib/intl
|
||||
|
||||
+1
-1
@@ -1 +1 @@
|
||||
/usr/local/build/chet/bash/bash-current/doc/Makefile
|
||||
/usr/local/build/bash/bash-current/doc/Makefile
|
||||
+10
-8
@@ -9,7 +9,7 @@ SSYYNNOOPPSSIISS
|
||||
bbaasshh [options] [file]
|
||||
|
||||
CCOOPPYYRRIIGGHHTT
|
||||
Bash is Copyright (C) 1989-2003 by the Free Software Foundation, Inc.
|
||||
Bash is Copyright (C) 1989-2004 by the Free Software Foundation, Inc.
|
||||
|
||||
DDEESSCCRRIIPPTTIIOONN
|
||||
BBaasshh is an sshh-compatible command language interpreter that executes
|
||||
@@ -2293,8 +2293,10 @@ PPRROOMMPPTTIINNGG
|
||||
\\uu the username of the current user
|
||||
\\vv the version of bbaasshh (e.g., 2.00)
|
||||
\\VV the release of bbaasshh, version + patchelvel (e.g., 2.00.0)
|
||||
\\ww the current working directory
|
||||
\\WW the basename of the current working directory
|
||||
\\ww the current working directory, with $$HHOOMMEE abbreviated
|
||||
with a tilde
|
||||
\\WW the basename of the current working directory, with $$HHOOMMEE
|
||||
abbreviated with a tilde
|
||||
\\!! the history number of this command
|
||||
\\## the command number of this command
|
||||
\\$$ if the effective UID is 0, a ##, otherwise a $$
|
||||
@@ -3133,8 +3135,8 @@ HHIISSTTOORRYY
|
||||
are appended to the history file, otherwise the history file is over-
|
||||
written. If HHIISSTTFFIILLEE is unset, or if the history file is unwritable,
|
||||
the history is not saved. After saving the history, the history file
|
||||
is truncated to contain no more than HHIISSTTFFIILLEESSIIZZEE lines. If
|
||||
HHIISSTTFFIILLEESSIIZZEE is not set, no truncation is performed.
|
||||
is truncated to contain no more than HHIISSTTFFIILLEESSIIZZEE lines. If HHIISSTTFFIILLEE--
|
||||
SSIIZZEE is not set, no truncation is performed.
|
||||
|
||||
The builtin command ffcc (see SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS below) may be used
|
||||
to list or edit and re-execute a portion of the history list. The hhiiss--
|
||||
@@ -4515,8 +4517,8 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS
|
||||
given, ttrraapp prints the list of commands associated with each
|
||||
signal number. The --ll option causes the shell to print a list
|
||||
of signal names and their corresponding numbers. Each _s_i_g_s_p_e_c
|
||||
is either a signal name defined in <_s_i_g_n_a_l_._h>, or a signal
|
||||
number. If a _s_i_g_s_p_e_c is EEXXIITT (0) the command _a_r_g is executed on
|
||||
is either a signal name defined in <_s_i_g_n_a_l_._h>, or a signal num-
|
||||
ber. If a _s_i_g_s_p_e_c is EEXXIITT (0) the command _a_r_g is executed on
|
||||
exit from the shell. If a _s_i_g_s_p_e_c is DDEEBBUUGG, the command _a_r_g is
|
||||
executed before every _s_i_m_p_l_e _c_o_m_m_a_n_d, _f_o_r command, _c_a_s_e command,
|
||||
_s_e_l_e_c_t command, every arithmetic _f_o_r command, and before the
|
||||
@@ -4767,4 +4769,4 @@ BBUUGGSS
|
||||
|
||||
|
||||
|
||||
GNU Bash-3.0 2003 Nov 13 BASH(1)
|
||||
GNU Bash-3.0 2004 Jan 24 BASH(1)
|
||||
|
||||
+7
-6
@@ -6,12 +6,12 @@
|
||||
.\" Case Western Reserve University
|
||||
.\" chet@po.CWRU.Edu
|
||||
.\"
|
||||
.\" Last Change: Thu Nov 13 09:47:27 EST 2003
|
||||
.\" Last Change: Sat Jan 24 13:18:08 EST 2004
|
||||
.\"
|
||||
.\" bash_builtins, strip all but Built-Ins section
|
||||
.if \n(zZ=1 .ig zZ
|
||||
.if \n(zY=1 .ig zY
|
||||
.TH BASH 1 "2003 Nov 13" "GNU Bash-3.0"
|
||||
.TH BASH 1 "2004 Jan 24" "GNU Bash-3.0"
|
||||
.\"
|
||||
.\" There's some problem with having a `@'
|
||||
.\" in a tagged paragraph with the BSD man macros.
|
||||
@@ -51,8 +51,8 @@ bash \- GNU Bourne-Again SHell
|
||||
[options]
|
||||
[file]
|
||||
.SH COPYRIGHT
|
||||
.if n Bash is Copyright (C) 1989-2003 by the Free Software Foundation, Inc.
|
||||
.if t Bash is Copyright \(co 1989-2003 by the Free Software Foundation, Inc.
|
||||
.if n Bash is Copyright (C) 1989-2004 by the Free Software Foundation, Inc.
|
||||
.if t Bash is Copyright \(co 1989-2004 by the Free Software Foundation, Inc.
|
||||
.SH DESCRIPTION
|
||||
.B Bash
|
||||
is an \fBsh\fR-compatible command language interpreter that
|
||||
@@ -4157,10 +4157,11 @@ the version of \fBbash\fP (e.g., 2.00)
|
||||
the release of \fBbash\fP, version + patchelvel (e.g., 2.00.0)
|
||||
.TP
|
||||
.B \ew
|
||||
the current working directory
|
||||
the current working directory, with \fB$HOME\fP abbreviated with a tilde
|
||||
.TP
|
||||
.B \eW
|
||||
the basename of the current working directory
|
||||
the basename of the current working directory, with \fB$HOME\fP
|
||||
abbreviated with a tilde
|
||||
.TP
|
||||
.B \e!
|
||||
the history number of this command
|
||||
|
||||
+8722
File diff suppressed because it is too large
Load Diff
+98
-124
@@ -1,6 +1,6 @@
|
||||
%!PS-Adobe-3.0
|
||||
%%Creator: groff version 1.18.1
|
||||
%%CreationDate: Thu Nov 13 09:47:38 2003
|
||||
%%CreationDate: Sun Jan 25 21:10:35 2004
|
||||
%%DocumentNeededResources: font Times-Roman
|
||||
%%+ font Times-Bold
|
||||
%%+ font Times-Italic
|
||||
@@ -189,11 +189,11 @@ setpacking
|
||||
%%IncludeResource: font Palatino-Italic
|
||||
%%IncludeResource: font Palatino-Bold
|
||||
grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72
|
||||
def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron
|
||||
/scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef
|
||||
def/PL 841.89 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron
|
||||
/Zcaron/scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef
|
||||
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
|
||||
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
|
||||
/.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent
|
||||
/.notdef/.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent
|
||||
/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen
|
||||
/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon
|
||||
/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O
|
||||
@@ -230,7 +230,7 @@ BP
|
||||
(bash \255 GNU Bourne-Ag)108 96 Q(ain SHell)-.05 E F1(SYNOPSIS)72 112.8
|
||||
Q/F2 10/Times-Bold@0 SF(bash)108 124.8 Q F0([options] [\214le])2.5 E F1
|
||||
(COPYRIGHT)72 141.6 Q F0(Bash is Cop)108 153.6 Q
|
||||
(yright \251 1989-2003 by the Free Softw)-.1 E(are F)-.1 E
|
||||
(yright \251 1989-2004 by the Free Softw)-.1 E(are F)-.1 E
|
||||
(oundation, Inc.)-.15 E F1(DESCRIPTION)72 170.4 Q F2(Bash)108 182.4 Q F0
|
||||
.973(is an)3.474 F F2(sh)3.473 E F0 .973
|
||||
(-compatible command language interpreter that e)B -.15(xe)-.15 G .973
|
||||
@@ -321,8 +321,7 @@ E F2(po)2.5 E F0(\(portable object\) \214le format.)2.5 E F2
|
||||
144 686.4 Q .3 -.15(ve \()-.25 H(see).15 E F4(INV)2.5 E(OCA)-.405 E
|
||||
(TION)-.855 E F0(belo)2.25 E(w\).)-.25 E F2(\255\255login)108 703.2 Q F0
|
||||
(Equi)144 715.2 Q -.25(va)-.25 G(lent to).25 E F2<ad6c>2.5 E F0(.)A
|
||||
(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G 202.965(31)-2.5 G
|
||||
0 Cg EP
|
||||
(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(1)204.835 E 0 Cg EP
|
||||
%%Page: 2 2
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -445,7 +444,7 @@ F(ariable)-.25 E F3 -.27(BA)108 679.2 S(SH_ENV).27 E F0 1.01(in the en)
|
||||
108 727.2 S 2.5(tt).2 G(he v)-2.5 E(alue of the)-.25 E F3 -.666(PA)2.5 G
|
||||
(TH)-.189 E F0 -.25(va)2.25 G
|
||||
(riable is not used to search for the \214le name.).25 E(GNU Bash-3.0)72
|
||||
768 Q(2003 No)147.975 E 2.5(v1)-.15 G 202.965(32)-2.5 G 0 Cg EP
|
||||
768 Q(2004 Jan 24)149.845 E(2)204.835 E 0 Cg EP
|
||||
%%Page: 3 3
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -570,8 +569,7 @@ F1(Pipelines)87 679.2 Q F0(A)108 691.2 Q F2(pipeline)2.919 E F0 .419
|
||||
F F1(|)2.92 E F0 5.42(.T)C .42(he format for a pipeline)-5.42 F(is:)108
|
||||
703.2 Q([)144 720 Q F1(time)A F0([)2.5 E F1<ad70>A F0(]] [ ! ])A F2
|
||||
(command)2.5 E F0([)2.5 E F1(|)2.5 E F2(command2)2.5 E F0(... ])2.5 E
|
||||
(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G 202.965(33)-2.5 G
|
||||
0 Cg EP
|
||||
(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(3)204.835 E 0 Cg EP
|
||||
%%Page: 4 4
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -691,8 +689,8 @@ A({)108 573.6 Q F1(list)2.5 E F0 2.5(;})C F1(list)3.89 E F0 .402
|
||||
F(SIONS)144 727.2 Q F5(.)A F0 -.8(Wo)5.633 G 1.133
|
||||
(rd splitting and pathname e).8 F 1.133
|
||||
(xpansion are not performed on the w)-.15 F 1.133(ords between the)-.1 F
|
||||
F3([[)3.632 E F0(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G
|
||||
202.965(34)-2.5 G 0 Cg EP
|
||||
F3([[)3.632 E F0(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(4)204.835 E
|
||||
0 Cg EP
|
||||
%%Page: 5 5
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -831,8 +829,8 @@ F F2(name)144 727.2 Q F0 .759(to be set to null.)3.439 F .759
|
||||
(The line read is sa)5.759 F -.15(ve)-.2 G 3.26(di).15 G 3.26(nt)-3.26 G
|
||||
.76(he v)-3.26 F(ariable)-.25 E F1(REPL)3.26 E(Y)-.92 E F0 5.76(.T)C(he)
|
||||
-5.76 E F2(list)3.35 E F0 .76(is e)3.94 F -.15(xe)-.15 G .76
|
||||
(cuted after).15 F(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G
|
||||
202.965(35)-2.5 G 0 Cg EP
|
||||
(cuted after).15 F(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(5)204.835
|
||||
E 0 Cg EP
|
||||
%%Page: 6 6
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -967,7 +965,7 @@ E(xpansion.)-.15 E(There are three quoting mechanisms: the)108 708 Q F2
|
||||
G(he)-2.974 E F2 .474(escape c)2.974 F(har)-.15 E(acter)-.15 E F0 5.474
|
||||
(.I).73 G 2.974(tp)-5.474 G(reserv)-2.974 E .474(es the literal v)-.15 F
|
||||
.474(alue of the ne)-.25 F .474(xt character that)-.15 F(GNU Bash-3.0)72
|
||||
768 Q(2003 No)147.975 E 2.5(v1)-.15 G 202.965(36)-2.5 G 0 Cg EP
|
||||
768 Q(2004 Jan 24)149.845 E(6)204.835 E 0 Cg EP
|
||||
%%Page: 7 7
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -1084,7 +1082,7 @@ d by one or more digits, other than the single digit 0.)3.935 F(Posi-)
|
||||
5.706 E .445(tional parameters are assigned from the shell')108 729.6 R
|
||||
2.944(sa)-.55 G -.18(rg)-2.944 G .444(uments when it is in).18 F -.2(vo)
|
||||
-.4 G -.1(ke).2 G .444(d, and may be reassigned using).1 F(GNU Bash-3.0)
|
||||
72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G 202.965(37)-2.5 G 0 Cg EP
|
||||
72 768 Q(2004 Jan 24)149.845 E(7)204.835 E 0 Cg EP
|
||||
%%Page: 8 8
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -1202,7 +1200,7 @@ F F1 -.3(BA)144 619.2 S(SH_ARGV).3 E F0(.)A F1 -.3(BA)108 631.2 S
|
||||
F F1(${FUNCN)144 727.2 Q(AME[)-.2 E F3 8.951($i + 1)B F1(]})A F0 -.1(wa)
|
||||
11.451 G 11.451(sc).1 G 11.451(alled. The)-11.451 F 8.951
|
||||
(corresponding source \214le name is)11.451 F(GNU Bash-3.0)72 768 Q
|
||||
(2003 No)147.975 E 2.5(v1)-.15 G 202.965(38)-2.5 G 0 Cg EP
|
||||
(2004 Jan 24)149.845 E(8)204.835 E 0 Cg EP
|
||||
%%Page: 9 9
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -1303,7 +1301,7 @@ F(ariable)-.25 E .351(will not change the current directory)144 711.6 R
|
||||
5.35(.I)-.65 G(f)-5.35 E F3(DIRST)2.85 E -.495(AC)-.81 G(K).495 E F0 .35
|
||||
(is unset, it loses its special properties, e)2.6 F -.15(ve)-.25 G 2.85
|
||||
(ni).15 G(f)-2.85 E(it is subsequently reset.)144 723.6 Q(GNU Bash-3.0)
|
||||
72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G 202.965(39)-2.5 G 0 Cg EP
|
||||
72 768 Q(2004 Jan 24)149.845 E(9)204.835 E 0 Cg EP
|
||||
%%Page: 10 10
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -1392,8 +1390,7 @@ R .01(alue to)-.25 F F2(RANDOM)2.51 E/F4 9/Times-Roman@0 SF(.)A F0(If)
|
||||
4.51 E F2(RANDOM)2.51 E F0(is)2.26 E
|
||||
(unset, it loses its special properties, e)144 720 Q -.15(ve)-.25 G 2.5
|
||||
(ni).15 G 2.5(fi)-2.5 G 2.5(ti)-2.5 G 2.5(ss)-2.5 G(ubsequently reset.)
|
||||
-2.5 E(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G 197.965(31)
|
||||
-2.5 G(0)-197.965 E 0 Cg EP
|
||||
-2.5 E(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(10)199.835 E 0 Cg EP
|
||||
%%Page: 11 11
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -1502,8 +1499,7 @@ me e)-3.118 F(xpan-)-.15 E 3.131(sion. If)144 640.8 R 3.132<618c>3.131 G
|
||||
(all pre)144 724.8 R .698
|
||||
(vious lines matching the current line to be remo)-.25 F -.15(ve)-.15 G
|
||||
3.198(df).15 G .698(rom the history list before that line is)-3.198 F
|
||||
(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G 197.965(31)-2.5 G
|
||||
(1)-197.965 E 0 Cg EP
|
||||
(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(11)199.835 E 0 Cg EP
|
||||
%%Page: 12 12
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -1616,8 +1612,7 @@ E F1(LANG)108 648 Q F0 1.24(Used to determine the locale cate)7.11 F
|
||||
(rrides the v).15 F .764(alue of)-.25 F F1(LANG)3.264 E F0 .764(and an)
|
||||
3.264 F 3.264(yo)-.15 G(ther)-3.264 E F1(LC_)3.264 E F0 -.25(va)3.264 G
|
||||
.764(riable specifying a locale cate-).25 F(gory)144 696 Q(.)-.65 E
|
||||
(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G 197.965(31)-2.5 G
|
||||
(2)-197.965 E 0 Cg EP
|
||||
(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(12)199.835 E 0 Cg EP
|
||||
%%Page: 13 13
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -1721,8 +1716,8 @@ F0 1.225(displays during an e)3.725 F -.15(xe)-.15 G 1.225
|
||||
E F0 1.226(is replicated multiple)3.476 F(times, as necessary)144 696 Q
|
||||
2.5(,t)-.65 G 2.5(oi)-2.5 G(ndicate multiple le)-2.5 E -.15(ve)-.25 G
|
||||
(ls of indirection.).15 E(The def)5 E(ault is `)-.1 E(`)-.74 E F1(+)A F0
|
||||
-.74('')2.5 G(.).74 E(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)
|
||||
-.15 G 197.965(31)-2.5 G(3)-197.965 E 0 Cg EP
|
||||
-.74('')2.5 G(.).74 E(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(13)
|
||||
199.835 E 0 Cg EP
|
||||
%%Page: 14 14
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -1840,7 +1835,7 @@ G .961(or an)-3.461 F 3.461(yr)-.15 G(equirement)-3.461 E
|
||||
1.302(An array is created automatically if an)108 728.4 R 3.801(yv)-.15
|
||||
G 1.301(ariable is assigned to using the syntax)-4.051 F F2(name)3.801 E
|
||||
F0([)A F2(subscript)A F0(]=)A F2(value)A F0(.)A(GNU Bash-3.0)72 768 Q
|
||||
(2003 No)147.975 E 2.5(v1)-.15 G 197.965(31)-2.5 G(4)-197.965 E 0 Cg EP
|
||||
(2004 Jan 24)149.845 E(14)199.835 E 0 Cg EP
|
||||
%%Page: 15 15
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -1992,8 +1987,7 @@ F0(must be of the same type.)2.5 E .582(Brace e)108 705.6 R .582
|
||||
(does not apply an)2.516 F 2.516(ys)-.15 G .016
|
||||
(yntactic interpretation to the con-)-2.516 F(te)108 729.6 Q
|
||||
(xt of the e)-.15 E(xpansion or the te)-.15 E(xt between the braces.)
|
||||
-.15 E(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G 197.965(31)
|
||||
-2.5 G(5)-197.965 E 0 Cg EP
|
||||
-.15 E(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(15)199.835 E 0 Cg EP
|
||||
%%Page: 16 16
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -2120,8 +2114,8 @@ E .351(able is then e)108 700.8 R .351(xpanded and that v)-.15 F .352
|
||||
(e\214x)-.37 E F0 .019(*} and)B(${)108 724.8 Q F1(!)A F2(name)A F0([)A
|
||||
F2(@)A F0 .762(]} described belo)B 4.563 -.65(w. T)-.25 H .763(he e).65
|
||||
F .763(xclamation point must immediately follo)-.15 F 3.263(wt)-.25 G
|
||||
.763(he left brace in order to)-3.263 F(GNU Bash-3.0)72 768 Q(2003 No)
|
||||
147.975 E 2.5(v1)-.15 G 197.965(31)-2.5 G(6)-197.965 E 0 Cg EP
|
||||
.763(he left brace in order to)-3.263 F(GNU Bash-3.0)72 768 Q
|
||||
(2004 Jan 24)149.845 E(16)199.835 E 0 Cg EP
|
||||
%%Page: 17 17
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -2244,8 +2238,7 @@ F1(par)145.25 664.8 Q(ameter)-.15 E F0 .607
|
||||
3.151(,t)C .651(he pattern remo)-3.151 F -.25(va)-.15 G 3.151(lo).25 G
|
||||
.65(peration is applied to each member of the array in)-3.151 F
|
||||
(turn, and the e)144 712.8 Q(xpansion is the resultant list.)-.15 E
|
||||
(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G 197.965(31)-2.5 G
|
||||
(7)-197.965 E 0 Cg EP
|
||||
(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(17)199.835 E 0 Cg EP
|
||||
%%Page: 18 18
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -2358,8 +2351,7 @@ F1 -.2(ex)2.666 G(pr).2 E(ession)-.37 E F0 .165
|
||||
A F0(If)5.878 E F1 -.2(ex)108 705.6 S(pr).2 E(ession)-.37 E F0(is in)
|
||||
2.74 E -.25(va)-.4 G(lid,).25 E F2(bash)2.5 E F0
|
||||
(prints a message indicating f)2.5 E(ailure and no substitution occurs.)
|
||||
-.1 E(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G 197.965(31)
|
||||
-2.5 G(8)-197.965 E 0 Cg EP
|
||||
-.1 E(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(18)199.835 E 0 Cg EP
|
||||
%%Page: 19 19
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -2496,8 +2488,8 @@ R 1.12(NUL character may not occur in a pattern.)3.62 F 3.62(Ab)6.12 G
|
||||
(The special pattern characters must be quoted if the)5.576 F 3.076(ya)
|
||||
-.15 G(re)-3.076 E(to be matched literally)108 691.2 Q(.)-.65 E
|
||||
(The special pattern characters ha)108 708 Q .3 -.15(ve t)-.2 H
|
||||
(he follo).15 E(wing meanings:)-.25 E(GNU Bash-3.0)72 768 Q(2003 No)
|
||||
147.975 E 2.5(v1)-.15 G 197.965(31)-2.5 G(9)-197.965 E 0 Cg EP
|
||||
(he follo).15 E(wing meanings:)-.25 E(GNU Bash-3.0)72 768 Q(2004 Jan 24)
|
||||
149.845 E(19)199.835 E 0 Cg EP
|
||||
%%Page: 20 20
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -2607,8 +2599,7 @@ ted, and the \214rst character of the redirec-)-.25 F .365
|
||||
E F0(dirlist 2)2.5 E F1(>&)A F0(1)A
|
||||
(directs both standard output and standard error to the \214le)108 728.4
|
||||
Q F2(dirlist)2.5 E F0 2.5(,w).68 G(hile the command)-2.5 E(GNU Bash-3.0)
|
||||
72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G 197.965(32)-2.5 G(0)-197.965 E
|
||||
0 Cg EP
|
||||
72 768 Q(2004 Jan 24)149.845 E(20)199.835 E 0 Cg EP
|
||||
%%Page: 21 21
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -2697,7 +2688,7 @@ Q F0(allo)3.141 E .642(ws both the standard output \(\214le descriptor \
|
||||
E(There are tw)108 693.6 Q 2.5(of)-.1 G
|
||||
(ormats for redirecting standard output and standard error:)-2.5 E F1
|
||||
(&>)144 710.4 Q F2(wor)A(d)-.37 E F0(and)108 722.4 Q(GNU Bash-3.0)72 768
|
||||
Q(2003 No)147.975 E 2.5(v1)-.15 G 197.965(32)-2.5 G(1)-197.965 E 0 Cg EP
|
||||
Q(2004 Jan 24)149.845 E(21)199.835 E 0 Cg EP
|
||||
%%Page: 22 22
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -2784,7 +2775,7 @@ E F0(is closed after being duplicated to)2.5 E F2(n)2.5 E F0(.)A
|
||||
.24 G 2.786(rt)-2.786 G .285
|
||||
(he standard output \(\214le descriptor 1\) if)-2.786 F F2(n)2.785 E F0
|
||||
.285(is not speci-)2.785 F(\214ed.)108 705.6 Q(GNU Bash-3.0)72 768 Q
|
||||
(2003 No)147.975 E 2.5(v1)-.15 G 197.965(32)-2.5 G(2)-197.965 E 0 Cg EP
|
||||
(2004 Jan 24)149.845 E(22)199.835 E 0 Cg EP
|
||||
%%Page: 23 23
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -2924,8 +2915,8 @@ F F1 .616(\255o functrace)3.115 F F0 .616
|
||||
(alues of the positional parameters and the spe-)-.25 F(cial parameter)
|
||||
108 724.8 Q F1(#)2.5 E F0(are restored to the v)2.5 E(alues the)-.25 E
|
||||
2.5(yh)-.15 G(ad prior to the function')-2.5 E 2.5(se)-.55 G -.15(xe)
|
||||
-2.65 G(cution.).15 E(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)
|
||||
-.15 G 197.965(32)-2.5 G(3)-197.965 E 0 Cg EP
|
||||
-2.65 G(cution.).15 E(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(23)
|
||||
199.835 E 0 Cg EP
|
||||
%%Page: 24 24
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -3027,8 +3018,7 @@ H .343(ts inte).15 F .343(ger attrib)-.15 F .343(ute turned on)-.2 F
|
||||
(xpressions in parentheses are e)-.15 F -.25(va)-.25 G .234
|
||||
(luated \214rst and may).25 F -.15(ove)108 724.8 S
|
||||
(rride the precedence rules abo).15 E -.15(ve)-.15 G(.).15 E
|
||||
(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G 197.965(32)-2.5 G
|
||||
(4)-197.965 E 0 Cg EP
|
||||
(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(24)199.835 E 0 Cg EP
|
||||
%%Page: 25 25
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -3138,8 +3128,7 @@ qual to, greater than, or greater than or equal to)144 696 R F3(ar)144
|
||||
-.65 E F3(Ar)6.01 E(g1)-.37 E F0(and)2.5 E F3(ar)2.83 E(g2)-.37 E F0
|
||||
(may be positi)2.52 E .3 -.15(ve o)-.25 H 2.5(rn).15 G -2.25 -.15(eg a)
|
||||
-2.5 H(ti).15 E .3 -.15(ve i)-.25 H(nte).15 E(gers.)-.15 E(GNU Bash-3.0)
|
||||
72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G 197.965(32)-2.5 G(5)-197.965 E
|
||||
0 Cg EP
|
||||
72 768 Q(2004 Jan 24)149.845 E(25)199.835 E 0 Cg EP
|
||||
%%Page: 26 26
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -3255,8 +3244,7 @@ e remainder of the \214rst line speci\214es an interpreter for the pro-)
|
||||
(COMMAND EXECUTION ENVIR)72 703.2 Q(ONMENT)-.329 E F0(The shell has an)
|
||||
108 715.2 Q F5 -.2(ex)2.5 G(ecution en).2 E(vir)-.4 E(onment)-.45 E F0
|
||||
2.5(,w)C(hich consists of the follo)-2.5 E(wing:)-.25 E(GNU Bash-3.0)72
|
||||
768 Q(2003 No)147.975 E 2.5(v1)-.15 G 197.965(32)-2.5 G(6)-197.965 E 0
|
||||
Cg EP
|
||||
768 Q(2004 Jan 24)149.845 E(26)199.835 E 0 Cg EP
|
||||
%%Page: 27 27
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -3366,8 +3354,8 @@ t for)-.4 F F2 -.2(ex)2.643 G(port).2 E F0 .143(to child pro-)3.323 F
|
||||
.202(parameter assignments, as described abo)108 724.8 R .502 -.15(ve i)
|
||||
-.15 H(n).15 E/F4 9/Times-Bold@0 SF -.666(PA)2.702 G(RAMETERS).666 E/F5
|
||||
9/Times-Roman@0 SF(.)A F0 .202(These assignment statements af)4.702 F
|
||||
.203(fect only the)-.25 F(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5
|
||||
(v1)-.15 G 197.965(32)-2.5 G(7)-197.965 E 0 Cg EP
|
||||
.203(fect only the)-.25 F(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E
|
||||
(27)199.835 E 0 Cg EP
|
||||
%%Page: 28 28
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -3491,8 +3479,7 @@ iated)108 676.8 R .732(with this job is 25647.)108 688.8 R .733
|
||||
.87(notion of a)108 729.6 R F2(curr)3.37 E .87(ent terminal pr)-.37 F
|
||||
.871(ocess gr)-.45 F .871(oup ID)-.45 F F0 5.871(.M)C .871
|
||||
(embers of this process group \(processes whose process)-5.871 F
|
||||
(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G 197.965(32)-2.5 G
|
||||
(8)-197.965 E 0 Cg EP
|
||||
(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(28)199.835 E 0 Cg EP
|
||||
%%Page: 29 29
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -3619,8 +3606,7 @@ ized by inserting a number of backslash-escaped special characters that\
|
||||
(\\r)144 700.8 Q F0(carriage return)28.78 E F4(\\s)144 712.8 Q F0
|
||||
(the name of the shell, the basename of)29.33 E F4($0)2.5 E F0
|
||||
(\(the portion follo)2.5 E(wing the \214nal slash\))-.25 E(GNU Bash-3.0)
|
||||
72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G 197.965(32)-2.5 G(9)-197.965 E
|
||||
0 Cg EP
|
||||
72 768 Q(2004 Jan 24)149.845 E(29)199.835 E 0 Cg EP
|
||||
%%Page: 30 30
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -3635,12 +3621,14 @@ BP
|
||||
28.22 E(ersion of)-.15 E F1(bash)2.5 E F0(\(e.g., 2.00\))2.5 E F1(\\V)
|
||||
144 156 Q F0(the release of)26 E F1(bash)2.5 E F0 2.5(,v)C
|
||||
(ersion + patchelv)-2.65 E(el \(e.g., 2.00.0\))-.15 E F1(\\w)144 168 Q
|
||||
F0(the current w)26 E(orking directory)-.1 E F1(\\W)144 180 Q F0
|
||||
(the basename of the current w)23.22 E(orking directory)-.1 E F1(\\!)144
|
||||
192 Q F0(the history number of this command)29.89 E F1(\\#)144 204 Q F0
|
||||
(the command number of this command)28.22 E F1(\\$)144 216 Q F0
|
||||
(if the ef)28.22 E(fecti)-.25 E .3 -.15(ve U)-.25 H(ID is 0, a).15 E F1
|
||||
(#)2.5 E F0 2.5(,o)C(therwise a)-2.5 E F1($)2.5 E(\\)144 228 Q/F2 10
|
||||
F0(the current w)26 E(orking directory)-.1 E 2.5(,w)-.65 G(ith)-2.5 E F1
|
||||
($HOME)2.5 E F0(abbre)2.5 E(viated with a tilde)-.25 E F1(\\W)144 180 Q
|
||||
F0(the basename of the current w)23.22 E(orking directory)-.1 E 2.5(,w)
|
||||
-.65 G(ith)-2.5 E F1($HOME)2.5 E F0(abbre)2.5 E(viated with a tilde)-.25
|
||||
E F1(\\!)144 192 Q F0(the history number of this command)29.89 E F1(\\#)
|
||||
144 204 Q F0(the command number of this command)28.22 E F1(\\$)144 216 Q
|
||||
F0(if the ef)28.22 E(fecti)-.25 E .3 -.15(ve U)-.25 H(ID is 0, a).15 E
|
||||
F1(#)2.5 E F0 2.5(,o)C(therwise a)-2.5 E F1($)2.5 E(\\)144 228 Q/F2 10
|
||||
/Times-Italic@0 SF(nnn)A F0
|
||||
(the character corresponding to the octal number)18.22 E F2(nnn)2.5 E F1
|
||||
(\\\\)144 240 Q F0 2.5(ab)30.44 G(ackslash)-2.5 E F1(\\[)144 252 Q F0
|
||||
@@ -3739,8 +3727,8 @@ nd the k)108 652.8 R 1.334 -.15(ey b)-.1 H 1.034(indings and).15 F -.25
|
||||
-.15(ey)-.1 G .987(-bindings may be changed with an).15 F F2(inputr)
|
||||
3.497 E(c)-.37 E F0 3.487(\214le. Other)3.797 F .987
|
||||
(programs that use this library may)3.487 F(add their o)108 717.6 Q
|
||||
(wn commands and bindings.)-.25 E(GNU Bash-3.0)72 768 Q(2003 No)147.975
|
||||
E 2.5(v1)-.15 G 197.965(33)-2.5 G(0)-197.965 E 0 Cg EP
|
||||
(wn commands and bindings.)-.25 E(GNU Bash-3.0)72 768 Q(2004 Jan 24)
|
||||
149.845 E(30)199.835 E 0 Cg EP
|
||||
%%Page: 31 31
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -3822,8 +3810,8 @@ pes is a)108 612 Q -.25(va)-.2 G(ilable:).25 E F2(\\a)144 624 Q F0
|
||||
648 Q F0(delete)27.66 E F2(\\f)144 660 Q F0(form feed)29.89 E F2(\\n)144
|
||||
672 Q F0(ne)27.66 E(wline)-.25 E F2(\\r)144 684 Q F0(carriage return)
|
||||
28.78 E F2(\\t)144 696 Q F0(horizontal tab)29.89 E F2(\\v)144 708 Q F0
|
||||
-.15(ve)28.22 G(rtical tab).15 E(GNU Bash-3.0)72 768 Q(2003 No)147.975 E
|
||||
2.5(v1)-.15 G 197.965(33)-2.5 G(1)-197.965 E 0 Cg EP
|
||||
-.15(ve)28.22 G(rtical tab).15 E(GNU Bash-3.0)72 768 Q(2004 Jan 24)
|
||||
149.845 E(31)199.835 E 0 Cg EP
|
||||
%%Page: 32 32
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -3922,7 +3910,7 @@ F0 .448(When set to)144 688.8 R F1(On)2.948 E F0 2.948(,m)C(ak)-2.948 E
|
||||
.449(crolling the input horizontally on a)-2.948 F 1.194(single screen \
|
||||
line when it becomes longer than the screen width rather than wrapping \
|
||||
to a ne)144 700.8 R(w)-.25 E(line.)144 712.8 Q(GNU Bash-3.0)72 768 Q
|
||||
(2003 No)147.975 E 2.5(v1)-.15 G 197.965(33)-2.5 G(2)-197.965 E 0 Cg EP
|
||||
(2004 Jan 24)149.845 E(32)199.835 E 0 Cg EP
|
||||
%%Page: 33 33
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -4020,8 +4008,8 @@ F0 .463(construct allo)2.963 F .462(ws bindings to be made based on the\
|
||||
(or the application using readline.)144 693.6 R .477(The te)5.477 F .477
|
||||
(xt of the test e)-.15 F .477
|
||||
(xtends to the end of the line; no characters)-.15 F
|
||||
(are required to isolate it.)144 705.6 Q(GNU Bash-3.0)72 768 Q(2003 No)
|
||||
147.975 E 2.5(v1)-.15 G 197.965(33)-2.5 G(3)-197.965 E 0 Cg EP
|
||||
(are required to isolate it.)144 705.6 Q(GNU Bash-3.0)72 768 Q
|
||||
(2004 Jan 24)149.845 E(33)199.835 E 0 Cg EP
|
||||
%%Page: 34 34
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -4129,8 +4117,8 @@ E F0 .911(refers to the current cursor position, and)3.411 F F2(mark)
|
||||
(db).15 G 3.41(yt)-3.41 G(he)-3.41 E F1(set\255mark)108 724.8 Q F0 2.5
|
||||
(command. The)2.5 F(te)2.5 E
|
||||
(xt between the point and mark is referred to as the)-.15 E F2 -.37(re)
|
||||
2.5 G(gion)-.03 E F0(.)A(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)
|
||||
-.15 G 197.965(33)-2.5 G(4)-197.965 E 0 Cg EP
|
||||
2.5 G(gion)-.03 E F0(.)A(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(34)
|
||||
199.835 E 0 Cg EP
|
||||
%%Page: 35 35
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -4209,8 +4197,8 @@ etween the start of the current)-.1 F(line and the point.)144 688.8 Q
|
||||
(th an ar).4 F(gument)-.18 E/F3 10/Times-Italic@0 SF(n)3.294 E F0 3.294
|
||||
(,i).24 G .794(nsert the)-3.294 F F3(n)3.294 E F0 .794(th w)B .794
|
||||
(ord from the pre)-.1 F .794(vious command \(the w)-.25 F .795
|
||||
(ords in the)-.1 F(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G
|
||||
197.965(33)-2.5 G(5)-197.965 E 0 Cg EP
|
||||
(ords in the)-.1 F(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(35)
|
||||
199.835 E 0 Cg EP
|
||||
%%Page: 36 36
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -4306,8 +4294,8 @@ G .779(nsert characters lik)-3.279 F(e)-.1 E F2(C\255q)3.278 E F0 3.278
|
||||
-.1 F .023(ving point o)-.15 F -.15(ve)-.15 G 2.524(rt).15 G .024(hat w)
|
||||
-2.524 F .024(ord as well.)-.1 F .024(If point)5.024 F
|
||||
(is at the end of the line, this transposes the last tw)144 700.8 Q 2.5
|
||||
(ow)-.1 G(ords on the line.)-2.6 E(GNU Bash-3.0)72 768 Q(2003 No)147.975
|
||||
E 2.5(v1)-.15 G 197.965(33)-2.5 G(6)-197.965 E 0 Cg EP
|
||||
(ow)-.1 G(ords on the line.)-2.6 E(GNU Bash-3.0)72 768 Q(2004 Jan 24)
|
||||
149.845 E(36)199.835 E 0 Cg EP
|
||||
%%Page: 37 37
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -4397,8 +4385,7 @@ F0(or)2.5 E F1(yank\255pop)2.5 E F0(.)A F1(Numeric Ar)87 681.6 Q
|
||||
(gument already accumulating, or start a ne)-.18 F 3.141(wa)-.25 G -.18
|
||||
(rg)-3.141 G 3.141(ument. M\255\255).18 F .641(starts a ne)3.141 F(g-)
|
||||
-.15 E(ati)144 717.6 Q .3 -.15(ve a)-.25 H -.18(rg).15 G(ument.).18 E
|
||||
(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G 197.965(33)-2.5 G
|
||||
(7)-197.965 E 0 Cg EP
|
||||
(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(37)199.835 E 0 Cg EP
|
||||
%%Page: 38 38
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -4498,8 +4485,7 @@ F0(List the possible completions of the te)144 580.8 Q
|
||||
(possible\255command\255completions \(C\255x !\))108 688.8 Q F0
|
||||
(List the possible completions of the te)144 700.8 Q
|
||||
(xt before point, treating it as a command name.)-.15 E(GNU Bash-3.0)72
|
||||
768 Q(2003 No)147.975 E 2.5(v1)-.15 G 197.965(33)-2.5 G(8)-197.965 E 0
|
||||
Cg EP
|
||||
768 Q(2004 Jan 24)149.845 E(38)199.835 E 0 Cg EP
|
||||
%%Page: 39 39
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -4591,8 +4577,8 @@ F0 1.095(command enough times to)3.595 F
|
||||
(he current line a shell comment.)-3.339 F .84(If a numeric ar)5.84 F
|
||||
(gu-)-.18 E(ment causes the comment character to be remo)144 705.6 Q
|
||||
-.15(ve)-.15 G(d, the line will be e).15 E -.15(xe)-.15 G
|
||||
(cuted by the shell.).15 E(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5
|
||||
(v1)-.15 G 197.965(33)-2.5 G(9)-197.965 E 0 Cg EP
|
||||
(cuted by the shell.).15 E(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E
|
||||
(39)199.835 E 0 Cg EP
|
||||
%%Page: 40 40
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -4712,8 +4698,8 @@ F .404(gument is the name of the command whose ar)-.18 F .404
|
||||
(guments are being completed, the second)-.18 F(ar)108 729.6 Q 1.994
|
||||
(gument is the w)-.18 F 1.993(ord being completed, and the third ar)-.1
|
||||
F 1.993(gument is the w)-.18 F 1.993(ord preceding the w)-.1 F 1.993
|
||||
(ord being)-.1 F(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G
|
||||
197.965(34)-2.5 G(0)-197.965 E 0 Cg EP
|
||||
(ord being)-.1 F(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(40)199.835
|
||||
E 0 Cg EP
|
||||
%%Page: 41 41
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -4858,8 +4844,7 @@ R 1.486(ws control o)-.25 F -.15(ve)-.15 G 3.986(rw).15 G 1.486
|
||||
E(OL)-.27 E F0(and)3.735 E F2(HISTIGNORE)108 729.6 Q F0 -.25(va)2.707 G
|
||||
.457(riables may be set to cause the shell to sa).25 F .758 -.15(ve o)
|
||||
-.2 H .458(nly a subset of the commands entered.).15 F(The)5.458 E
|
||||
(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G 197.965(34)-2.5 G
|
||||
(1)-197.965 E 0 Cg EP
|
||||
(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(41)199.835 E 0 Cg EP
|
||||
%%Page: 42 42
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -4982,8 +4967,7 @@ SF(^)108 667.4 Q F4(string1)-5 I F5(^)5 I F4(string2)-5 I F5(^)5 I F0
|
||||
F4(string2)A F0(/')A 2.5('\()-.74 G(see)-2.5 E F1(Modi\214ers)2.5 E F0
|
||||
(belo)2.5 E(w\).)-.25 E F1(!#)108 698.4 Q F0
|
||||
(The entire command line typed so f)27.67 E(ar)-.1 E(.)-.55 E
|
||||
(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G 197.965(34)-2.5 G
|
||||
(2)-197.965 E 0 Cg EP
|
||||
(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(42)199.835 E 0 Cg EP
|
||||
%%Page: 43 43
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -5099,7 +5083,7 @@ R -.15(xe)-.15 G 3.333(cutable. When).15 F F1(bash)3.333 E F0 .832
|
||||
/Times-Roman@0 SF(.)A F0 .981(If the)5.481 F F1(sour)3.481 E(cepath)-.18
|
||||
E F0 .981(option to the)3.481 F F1(shopt)3.481 E F0 -.2(bu)3.481 G .981
|
||||
(iltin command is turned of).2 F .982(f, the)-.25 F(GNU Bash-3.0)72 768
|
||||
Q(2003 No)147.975 E 2.5(v1)-.15 G 197.965(34)-2.5 G(3)-197.965 E 0 Cg EP
|
||||
Q(2004 Jan 24)149.845 E(43)199.835 E 0 Cg EP
|
||||
%%Page: 44 44
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -5211,8 +5195,7 @@ F2 -.1(ke)2.5 G(yseq)-.2 E F0(Remo)180 650.4 Q .3 -.15(ve a)-.15 H .3
|
||||
F2 -.1(ke)2.5 G(yseq)-.2 E F0(is entered.)2.5 E(The return v)144 691.2 Q
|
||||
(alue is 0 unless an unrecognized option is gi)-.25 E -.15(ve)-.25 G 2.5
|
||||
(no).15 G 2.5(ra)-2.5 G 2.5(ne)-2.5 G(rror occurred.)-2.5 E
|
||||
(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G 197.965(34)-2.5 G
|
||||
(4)-197.965 E 0 Cg EP
|
||||
(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(44)199.835 E 0 Cg EP
|
||||
%%Page: 45 45
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -5348,8 +5331,8 @@ F2(action)2.786 E F0 2.786(][)C F1<ad47>-2.786 E F2(globpat)2.786 E F0
|
||||
E F2(suf-)2.787 E<8c78>108 712.8 Q F0(])A([)144 724.8 Q F1<ad58>A F2
|
||||
(\214lterpat)2.5 E F0 2.5(][)C F1<ad46>-2.5 E F2(function)2.5 E F0 2.5
|
||||
(][)C F1<ad43>-2.5 E F2(command)2.5 E F0(])A F2(name)2.5 E F0([)2.5 E F2
|
||||
(name ...)A F0(])A(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G
|
||||
197.965(34)-2.5 G(5)-197.965 E 0 Cg EP
|
||||
(name ...)A F0(])A(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(45)
|
||||
199.835 E 0 Cg EP
|
||||
%%Page: 46 46
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -5424,7 +5407,7 @@ Q(en from the \214le speci\214ed by the)-.1 E/F3 9/Times-Bold@0 SF
|
||||
(HOSTFILE)2.5 E F0(shell v)2.25 E(ariable.)-.25 E F1(job)184 696 Q F0
|
||||
(Job names, if job control is acti)26.11 E -.15(ve)-.25 G 5(.M).15 G
|
||||
(ay also be speci\214ed as)-5 E F1<ad6a>2.5 E F0(.)A(GNU Bash-3.0)72 768
|
||||
Q(2003 No)147.975 E 2.5(v1)-.15 G 197.965(34)-2.5 G(6)-197.965 E 0 Cg EP
|
||||
Q(2004 Jan 24)149.845 E(46)199.835 E 0 Cg EP
|
||||
%%Page: 47 47
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -5531,8 +5514,7 @@ n is de\214ned are displayed as well.)144 662.4 R(The)6.308 E F1<ad46>
|
||||
698.4 Q F0(Each)25.3 E F2(name)2.5 E F0(is an array v)2.5 E
|
||||
(ariable \(see)-.25 E F1(Arrays)2.5 E F0(abo)2.5 E -.15(ve)-.15 G(\).)
|
||||
.15 E F1<ad66>144 710.4 Q F0(Use function names only)26.97 E(.)-.65 E
|
||||
(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G 197.965(34)-2.5 G
|
||||
(7)-197.965 E 0 Cg EP
|
||||
(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(47)199.835 E 0 Cg EP
|
||||
%%Page: 48 48
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -5652,7 +5634,7 @@ E F0(shell)4.002 E .009
|
||||
(\\a)144 672 Q F0(alert \(bell\))28.22 E F1(\\b)144 684 Q F0(backspace)
|
||||
27.66 E F1(\\c)144 696 Q F0(suppress trailing ne)28.78 E(wline)-.25 E F1
|
||||
(\\e)144 708 Q F0(an escape character)28.78 E(GNU Bash-3.0)72 768 Q
|
||||
(2003 No)147.975 E 2.5(v1)-.15 G 197.965(34)-2.5 G(8)-197.965 E 0 Cg EP
|
||||
(2004 Jan 24)149.845 E(48)199.835 E 0 Cg EP
|
||||
%%Page: 49 49
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -5786,8 +5768,8 @@ Q F0(that is not a function.)2.68 E F1(fc)108 688.8 Q F0([)2.5 E F1
|
||||
(is selected from the his-)3.658 F .881(tory list.)144 724.8 R F2 -.45
|
||||
(Fi)5.881 G -.1(rs).45 G(t).1 E F0(and)4.061 E F2(last)3.471 E F0 .882
|
||||
(may be speci\214ed as a string \(to locate the last command be)4.062 F
|
||||
.882(ginning with)-.15 F(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)
|
||||
-.15 G 197.965(34)-2.5 G(9)-197.965 E 0 Cg EP
|
||||
.882(ginning with)-.15 F(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(49)
|
||||
199.835 E 0 Cg EP
|
||||
%%Page: 50 50
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -5917,8 +5899,7 @@ E F0 .399(is silent, the option character found is placed in)2.899 F F4
|
||||
729.6 R 1.242(gument is not found, and)-.18 F F3(getopts)3.741 E F0
|
||||
1.241(is not silent, a question mark \()3.741 F F3(?).833 E F0 3.741
|
||||
(\)i).833 G 3.741(sp)-3.741 G 1.241(laced in)-3.741 F(GNU Bash-3.0)72
|
||||
768 Q(2003 No)147.975 E 2.5(v1)-.15 G 197.965(35)-2.5 G(0)-197.965 E 0
|
||||
Cg EP
|
||||
768 Q(2004 Jan 24)149.845 E(50)199.835 E 0 Cg EP
|
||||
%%Page: 51 51
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -6033,8 +6014,7 @@ E F0 .28
|
||||
(is supplied as an ar)2.922 F .422(gument to)-.18 F F3<ad64>2.922 E F0
|
||||
(,)A(or the history e)144 703.2 Q(xpansion supplied as an ar)-.15 E
|
||||
(gument to)-.18 E F3<ad70>2.5 E F0 -.1(fa)2.5 G(ils.).1 E(GNU Bash-3.0)
|
||||
72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G 197.965(35)-2.5 G(1)-197.965 E
|
||||
0 Cg EP
|
||||
72 768 Q(2004 Jan 24)149.845 E(51)199.835 E 0 Cg EP
|
||||
%%Page: 52 52
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -6161,8 +6141,7 @@ tring which contains three types of objects: plain characters, which ar\
|
||||
e simply)144 715.2 R 1.858
|
||||
(copied to standard output, character escape sequences, which are con)
|
||||
144 727.2 R -.15(ve)-.4 G 1.859(rted and copied to the).15 F
|
||||
(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G 197.965(35)-2.5 G
|
||||
(2)-197.965 E 0 Cg EP
|
||||
(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(52)199.835 E 0 Cg EP
|
||||
%%Page: 53 53
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -6280,8 +6259,8 @@ F2<ad65>144 655.2 Q F0 .372
|
||||
-.15 E(s)-.1 E F2 -.18(re)180 691.2 S(ad).18 E F0 1.395
|
||||
(returns after reading)3.895 F F1(nc)3.895 E(har)-.15 E(s)-.1 E F0 1.395
|
||||
(characters rather than w)3.895 F 1.394(aiting for a complete line of)
|
||||
-.1 F(input.)180 703.2 Q(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)
|
||||
-.15 G 197.965(35)-2.5 G(3)-197.965 E 0 Cg EP
|
||||
-.1 F(input.)180 703.2 Q(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(53)
|
||||
199.835 E 0 Cg EP
|
||||
%%Page: 54 54
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -6405,8 +6384,7 @@ F3(or)3.196 E F7(until)3.196 E F3(keywor)3.196 E .696
|
||||
.711(This option is on by default for interac-)5.711 F 1.164
|
||||
(tive shells on systems that support it \(see)184 727.2 R F5 1.165
|
||||
(JOB CONTROL)3.665 F F3 3.665(above\). Backgr)3.415 F(ound)-.18 E F0
|
||||
(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G 197.965(35)-2.5 G
|
||||
(4)-197.965 E 0 Cg EP
|
||||
(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(54)199.835 E 0 Cg EP
|
||||
%%Page: 55 55
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -6468,8 +6446,8 @@ F2<ad6f>4.63 E F1 2.131(is supplied with no)4.63 F F3(option\255name)
|
||||
(ent options ar)-.18 F(e)-.18 E 4.412(printed. If)184 726 R F2(+o)4.412
|
||||
E F1 1.912(is supplied with no)4.412 F F3(option\255name)4.412 E F1
|
||||
4.411(,as)C 1.911(eries of)-4.411 F F2(set)4.411 E F1 1.911(commands to)
|
||||
4.411 F F0(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G 197.965
|
||||
(35)-2.5 G(5)-197.965 E 0 Cg EP
|
||||
4.411 F F0(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(55)199.835 E 0 Cg
|
||||
EP
|
||||
%%Page: 56 56
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -6590,8 +6568,8 @@ G(f)-2.5 E F3(n)2.76 E F1(is gr)2.58 E(eater than)-.18 E F2($#)2.5 E F1
|
||||
(olling optional shell behavior)-.18 F 6.522(.W)-.74 G 1.522
|
||||
(ith no options, or)-7.072 F 2.531(with the)144 722.4 R F2<ad70>5.031 E
|
||||
F1 2.531(option, a list of all settable options is displayed, with an i\
|
||||
ndication of)5.031 F F0(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)
|
||||
-.15 G 197.965(35)-2.5 G(6)-197.965 E 0 Cg EP
|
||||
ndication of)5.031 F F0(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(56)
|
||||
199.835 E 0 Cg EP
|
||||
%%Page: 57 57
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -6685,8 +6663,7 @@ F1 1.106(trap r)3.606 F 1.106(eturns a value of 2, and the)-.18 F .87
|
||||
(outine \(a shell function or a shell script exe-)-.18 F(cuted by the)
|
||||
220 728.4 Q F2(.)2.5 E F1(or)2.5 E F2(source)2.5 E F1
|
||||
(builtins\), a call to)2.5 E F2(return)2.5 E F1(is simulated.)2.5 E F0
|
||||
(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G 197.965(35)-2.5 G
|
||||
(7)-197.965 E 0 Cg EP
|
||||
(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(57)199.835 E 0 Cg EP
|
||||
%%Page: 58 58
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -6765,8 +6742,8 @@ F3(mail\214le)4.147 E F2 1.647(has been r)4.147 F(ead')-.18 E 4.148('i)
|
||||
F2 1.548
|
||||
(matches \214lenames in a case\255insensitive fashion when performing)
|
||||
4.048 F(pathname expansion \(see)184 696 Q F1(Pathname Expansion)2.5 E
|
||||
F2(above\).)2.5 E F0(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)-.15
|
||||
G 197.965(35)-2.5 G(8)-197.965 E 0 Cg EP
|
||||
F2(above\).)2.5 E F0(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(58)
|
||||
199.835 E 0 Cg EP
|
||||
%%Page: 59 59
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -6852,8 +6829,7 @@ F2 1.401(the expr)3.651 F 1.401(ession is tr)-.18 F 1.401
|
||||
1.356(the \214rst ar)3.855 F 1.356
|
||||
(gument is not a valid unary conditional operator)-.18 F 3.856(,t)-.74 G
|
||||
(he)-3.856 E(expr)180 712.8 Q(ession is false.)-.18 E F0(GNU Bash-3.0)72
|
||||
768 Q(2003 No)147.975 E 2.5(v1)-.15 G 197.965(35)-2.5 G(9)-197.965 E 0
|
||||
Cg EP
|
||||
768 Q(2004 Jan 24)149.845 E(59)199.835 E 0 Cg EP
|
||||
%%Page: 60 60
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -6994,8 +6970,8 @@ E F1 2.516(,e)C .016(ven if)-2.516 F F7 .016(type -t)2.516 F(name)144
|
||||
.411(option is used,)2.911 F F4(type)2.911 E F1 .411(prints all)2.911 F
|
||||
.164(of the places that contain an executable named)144 722.4 R F5(name)
|
||||
2.664 E F1 5.164(.T).35 G .164(his includes aliases and functions,)
|
||||
-5.164 F F0(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G
|
||||
197.965(36)-2.5 G(0)-197.965 E 0 Cg EP
|
||||
-5.164 F F0(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(60)199.835 E 0
|
||||
Cg EP
|
||||
%%Page: 61 61
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -7116,8 +7092,7 @@ E F5(,)A F4(HISTCMD)3.725 E F5(,)A F4(FUNCNAME)144 708 Q F5(,)A F4
|
||||
.553(operties, even if)-.18 F(they ar)144 720 Q 2.5(es)-.18 G
|
||||
(ubsequently r)-2.5 E 2.5(eset. The)-.18 F(exit status is tr)2.5 E
|
||||
(ue unless a)-.08 E F3(name)2.76 E F1(is r)2.85 E(eadonly)-.18 E(.)-1.11
|
||||
E F0(GNU Bash-3.0)72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G 197.965(36)
|
||||
-2.5 G(1)-197.965 E 0 Cg EP
|
||||
E F0(GNU Bash-3.0)72 768 Q(2004 Jan 24)149.845 E(61)199.835 E 0 Cg EP
|
||||
%%Page: 62 62
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -7201,7 +7176,7 @@ F2 2.5(,B)C(rian Fox and Chet Ramey)-2.5 E F3(Portable Operating System\
|
||||
(The personal initialization \214le, executed for login shells)144 686.4
|
||||
Q F3(~/.bashr)109.666 698.4 Q(c)-.18 E F2(The individual per)144 710.4 Q
|
||||
(-interactive-shell startup \214le)-.18 E F0(GNU Bash-3.0)72 768 Q
|
||||
(2003 No)147.975 E 2.5(v1)-.15 G 197.965(36)-2.5 G(2)-197.965 E 0 Cg EP
|
||||
(2004 Jan 24)149.845 E(62)199.835 E 0 Cg EP
|
||||
%%Page: 63 63
|
||||
%%BeginPageSetup
|
||||
BP
|
||||
@@ -7264,8 +7239,7 @@ F1(bashbug)108.13 393.6 Q F2 1.316(inserts the \214rst thr)4.296 F 1.316
|
||||
(This will delay err)108 607.2 Q(or r)-.18 E
|
||||
(eporting until some time after the command is enter)-.18 E(ed.)-.18 E
|
||||
(Array variables may not \(yet\) be exported.)108 624 Q F0(GNU Bash-3.0)
|
||||
72 768 Q(2003 No)147.975 E 2.5(v1)-.15 G 197.965(36)-2.5 G(3)-197.965 E
|
||||
0 Cg EP
|
||||
72 768 Q(2004 Jan 24)149.845 E(63)199.835 E 0 Cg EP
|
||||
%%Trailer
|
||||
end
|
||||
%%EOF
|
||||
|
||||
+1
-112
@@ -1,115 +1,4 @@
|
||||
\initial {A}
|
||||
\entry {\code {abort (C-g)}}{101}
|
||||
\entry {\code {accept-line (Newline or Return)}}{95}
|
||||
\entry {\code {alias-expand-line ()}}{102}
|
||||
\initial {B}
|
||||
\entry {\code {backward-char (C-b)}}{95}
|
||||
\entry {\code {backward-delete-char (Rubout)}}{97}
|
||||
\entry {\code {backward-kill-line (C-x Rubout)}}{98}
|
||||
\entry {\code {backward-kill-word (M-\key {DEL})}}{98}
|
||||
\entry {\code {backward-word (M-b)}}{95}
|
||||
\entry {\code {beginning-of-history (M-<)}}{96}
|
||||
\entry {\code {beginning-of-line (C-a)}}{95}
|
||||
\initial {C}
|
||||
\entry {\code {call-last-kbd-macro (C-x e)}}{101}
|
||||
\entry {\code {capitalize-word (M-c)}}{97}
|
||||
\entry {\code {character-search (C-])}}{101}
|
||||
\entry {\code {character-search-backward (M-C-])}}{101}
|
||||
\entry {\code {clear-screen (C-l)}}{95}
|
||||
\entry {\code {complete (\key {TAB})}}{99}
|
||||
\entry {\code {complete-command (M-!)}}{100}
|
||||
\entry {\code {complete-filename (M-/)}}{99}
|
||||
\entry {\code {complete-hostname (M-@)}}{100}
|
||||
\entry {\code {complete-into-braces (M-{\tt \char 123})}}{100}
|
||||
\entry {\code {complete-username (M-~)}}{100}
|
||||
\entry {\code {complete-variable (M-$)}}{100}
|
||||
\entry {\code {copy-backward-word ()}}{98}
|
||||
\entry {\code {copy-forward-word ()}}{98}
|
||||
\entry {\code {copy-region-as-kill ()}}{98}
|
||||
\initial {D}
|
||||
\entry {\code {delete-char (C-d)}}{97}
|
||||
\entry {\code {delete-char-or-list ()}}{99}
|
||||
\entry {\code {delete-horizontal-space ()}}{98}
|
||||
\entry {\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}}{99}
|
||||
\entry {\code {display-shell-version (C-x C-v)}}{102}
|
||||
\entry {\code {do-uppercase-version (M-a, M-b, M-\var {x}, \dots {})}}{101}
|
||||
\entry {\code {downcase-word (M-l)}}{97}
|
||||
\entry {\code {dump-functions ()}}{102}
|
||||
\entry {\code {dump-macros ()}}{102}
|
||||
\entry {\code {dump-variables ()}}{102}
|
||||
\entry {\code {dynamic-complete-history (M-\key {TAB})}}{100}
|
||||
\initial {E}
|
||||
\entry {\code {edit-and-execute-command (C-xC-e)}}{103}
|
||||
\entry {\code {end-kbd-macro (C-x ))}}{100}
|
||||
\entry {\code {end-of-history (M->)}}{96}
|
||||
\entry {\code {end-of-line (C-e)}}{95}
|
||||
\entry {\code {exchange-point-and-mark (C-x C-x)}}{101}
|
||||
\initial {F}
|
||||
\entry {\code {forward-backward-delete-char ()}}{97}
|
||||
\entry {\code {forward-char (C-f)}}{95}
|
||||
\entry {\code {forward-search-history (C-s)}}{96}
|
||||
\entry {\code {forward-word (M-f)}}{95}
|
||||
\initial {G}
|
||||
\entry {\code {glob-complete-word (M-g)}}{102}
|
||||
\entry {\code {glob-expand-word (C-x *)}}{102}
|
||||
\entry {\code {glob-list-expansions (C-x g)}}{102}
|
||||
\initial {H}
|
||||
\entry {\code {history-and-alias-expand-line ()}}{103}
|
||||
\entry {\code {history-expand-line (M-^)}}{102}
|
||||
\entry {\code {history-search-backward ()}}{96}
|
||||
\entry {\code {history-search-forward ()}}{96}
|
||||
\initial {I}
|
||||
\entry {\code {insert-comment (M-#)}}{101}
|
||||
\entry {\code {insert-completions (M-*)}}{99}
|
||||
\entry {\code {insert-last-argument (M-. or M-_)}}{103}
|
||||
\initial {K}
|
||||
\entry {\code {kill-line (C-k)}}{98}
|
||||
\entry {\code {kill-region ()}}{98}
|
||||
\entry {\code {kill-whole-line ()}}{98}
|
||||
\entry {\code {kill-word (M-d)}}{98}
|
||||
\initial {M}
|
||||
\entry {\code {magic-space ()}}{102}
|
||||
\entry {\code {menu-complete ()}}{99}
|
||||
\initial {N}
|
||||
\entry {\code {next-history (C-n)}}{96}
|
||||
\entry {\code {non-incremental-forward-search-history (M-n)}}{96}
|
||||
\entry {\code {non-incremental-reverse-search-history (M-p)}}{96}
|
||||
\initial {O}
|
||||
\entry {\code {operate-and-get-next (C-o)}}{103}
|
||||
\entry {\code {overwrite-mode ()}}{97}
|
||||
\initial {P}
|
||||
\entry {\code {possible-command-completions (C-x !)}}{100}
|
||||
\entry {\code {possible-completions (M-?)}}{99}
|
||||
\entry {\code {possible-filename-completions (C-x /)}}{100}
|
||||
\entry {\code {possible-hostname-completions (C-x @)}}{100}
|
||||
\entry {\code {possible-username-completions (C-x ~)}}{100}
|
||||
\entry {\code {possible-variable-completions (C-x $)}}{100}
|
||||
\entry {\code {prefix-meta (\key {ESC})}}{101}
|
||||
\entry {\code {previous-history (C-p)}}{96}
|
||||
\initial {Q}
|
||||
\entry {\code {quoted-insert (C-q or C-v)}}{97}
|
||||
\initial {R}
|
||||
\entry {\code {re-read-init-file (C-x C-r)}}{101}
|
||||
\entry {\code {redraw-current-line ()}}{95}
|
||||
\entry {\code {reverse-search-history (C-r)}}{96}
|
||||
\entry {\code {revert-line (M-r)}}{101}
|
||||
\initial {S}
|
||||
\entry {\code {self-insert (a, b, A, 1, !, \dots {})}}{97}
|
||||
\entry {\code {set-mark (C-@)}}{101}
|
||||
\entry {\code {shell-expand-line (M-C-e)}}{102}
|
||||
\entry {\code {start-kbd-macro (C-x ()}}{100}
|
||||
\initial {T}
|
||||
\entry {\code {tilde-expand (M-&)}}{101}
|
||||
\entry {\code {transpose-chars (C-t)}}{97}
|
||||
\entry {\code {transpose-words (M-t)}}{97}
|
||||
\initial {U}
|
||||
\entry {\code {undo (C-_ or C-x C-u)}}{101}
|
||||
\entry {\code {universal-argument ()}}{99}
|
||||
\entry {\code {unix-line-discard (C-u)}}{98}
|
||||
\entry {\code {unix-word-rubout (C-w)}}{98}
|
||||
\entry {\code {upcase-word (M-u)}}{97}
|
||||
\initial {Y}
|
||||
\entry {\code {yank (C-y)}}{98}
|
||||
\entry {\code {yank-last-arg (M-. or M-_)}}{96}
|
||||
\entry {\code {yank-nth-arg (M-C-y)}}{96}
|
||||
\entry {\code {yank-pop (M-y)}}{98}
|
||||
\entry {\code {alias-expand-line ()}}{102
|
||||
+134
-169
@@ -1,11 +1,11 @@
|
||||
This is bashref.info, produced by makeinfo version 4.5 from
|
||||
/usr/homes/chet/src/bash/src/doc/bashref.texi.
|
||||
This is bashref.info, produced by makeinfo version 4.2 from
|
||||
/usr/src/local/bash/bash-20040121/doc/bashref.texi.
|
||||
|
||||
This text is a brief description of the features that are present in
|
||||
the Bash shell (version 3.0-alpha, 13 November 2003).
|
||||
the Bash shell (version 3.0-beta1, 24 January 2004).
|
||||
|
||||
This is Edition 3.0, last updated 13 November 2003, of `The GNU Bash
|
||||
Reference Manual', for `Bash', Version 3.0-alpha.
|
||||
This is Edition 3.0, last updated 24 January 2004, of `The GNU Bash
|
||||
Reference Manual', for `Bash', Version 3.0-beta1.
|
||||
|
||||
Copyright (C) 1988-2003 Free Software Foundation, Inc.
|
||||
|
||||
@@ -37,10 +37,10 @@ Bash Features
|
||||
*************
|
||||
|
||||
This text is a brief description of the features that are present in
|
||||
the Bash shell (version 3.0-alpha, 13 November 2003)..
|
||||
the Bash shell (version 3.0-beta1, 24 January 2004)..
|
||||
|
||||
This is Edition 3.0, last updated 13 November 2003, of `The GNU Bash
|
||||
Reference Manual', for `Bash', Version 3.0-alpha.
|
||||
This is Edition 3.0, last updated 24 January 2004, of `The GNU Bash
|
||||
Reference Manual', for `Bash', Version 3.0-beta1.
|
||||
|
||||
Bash contains features that appear in other popular shells, and some
|
||||
features that only appear in Bash. Some of the shells that Bash has
|
||||
@@ -731,7 +731,6 @@ syntax, it may be replaced with one or more newlines.
|
||||
command in LIST that is executed, or false if any of the
|
||||
expressions is invalid.
|
||||
|
||||
|
||||
The `break' and `continue' builtins (*note Bourne Shell Builtins::)
|
||||
may be used to control loop execution.
|
||||
|
||||
@@ -896,7 +895,6 @@ Conditional Constructs
|
||||
value of EXPRESSION1 is sufficient to determine the return value
|
||||
of the entire conditional expression.
|
||||
|
||||
|
||||
|
||||
File: bashref.info, Node: Command Grouping, Prev: Conditional Constructs, Up: Compound Commands
|
||||
|
||||
@@ -1301,7 +1299,6 @@ the expanded value.
|
||||
`~-N'
|
||||
The string that would be displayed by `dirs -N'
|
||||
|
||||
|
||||
|
||||
File: bashref.info, Node: Shell Parameter Expansion, Next: Command Substitution, Prev: Tilde Expansion, Up: Shell Expansions
|
||||
|
||||
@@ -1448,7 +1445,6 @@ if the colon is omitted, the operator tests only for existence.
|
||||
member of the array in turn, and the expansion is the resultant
|
||||
list.
|
||||
|
||||
|
||||
|
||||
File: bashref.info, Node: Command Substitution, Next: Arithmetic Expansion, Prev: Shell Parameter Expansion, Up: Shell Expansions
|
||||
|
||||
@@ -1756,7 +1752,6 @@ redirections, as described in the following table:
|
||||
integer port number or service name, Bash attempts to open a UDP
|
||||
connection to the corresponding socket.
|
||||
|
||||
|
||||
A failure to open or create a file causes the redirection to fail.
|
||||
|
||||
Redirecting Input
|
||||
@@ -2715,7 +2710,6 @@ POSIX 1003.2 standard.
|
||||
`-x KEYSEQ:SHELL-COMMAND'
|
||||
Cause SHELL-COMMAND to be executed whenever KEYSEQ is entered.
|
||||
|
||||
|
||||
The return status is zero unless an invalid option is supplied or
|
||||
an error occurs.
|
||||
|
||||
@@ -3011,7 +3005,6 @@ POSIX 1003.2 standard.
|
||||
`-u FD'
|
||||
Read input from file descriptor FD.
|
||||
|
||||
|
||||
`shopt'
|
||||
shopt [-pqsu] [-o] [OPTNAME ...]
|
||||
Toggle the values of variables controlling optional shell behavior.
|
||||
@@ -3221,7 +3214,6 @@ POSIX 1003.2 standard.
|
||||
If set, the `echo' builtin expands backslash-escape sequences
|
||||
by default.
|
||||
|
||||
|
||||
The return status when listing options is zero if all OPTNAMES are
|
||||
enabled, non-zero otherwise. When setting or unsetting options,
|
||||
the return status is zero unless an OPTNAME is not a valid shell
|
||||
@@ -3315,7 +3307,6 @@ POSIX 1003.2 standard.
|
||||
`-v'
|
||||
The maximum amount of virtual memory available to the process.
|
||||
|
||||
|
||||
If LIMIT is given, it is the new value of the specified resource;
|
||||
the special LIMIT values `hard', `soft', and `unlimited' stand for
|
||||
the current hard limit, the current soft limit, and no limit,
|
||||
@@ -3336,7 +3327,6 @@ POSIX 1003.2 standard.
|
||||
Remove each NAME from the list of aliases. If `-a' is supplied,
|
||||
all aliases are removed. Aliases are described in *Note Aliases::.
|
||||
|
||||
|
||||
|
||||
File: bashref.info, Node: The Set Builtin, Next: Special Builtins, Prev: Bash Builtins, Up: Shell Builtin Commands
|
||||
|
||||
@@ -3683,7 +3673,6 @@ shell. In some cases, Bash assigns a default value to the variable.
|
||||
`PS2'
|
||||
The secondary prompt string. The default value is `> '.
|
||||
|
||||
|
||||
|
||||
File: bashref.info, Node: Bash Variables, Prev: Bourne Shell Variables, Up: Shell Variables
|
||||
|
||||
@@ -3776,7 +3765,6 @@ Variables::).
|
||||
`BASH_VERSINFO[5]'
|
||||
The value of `MACHTYPE'.
|
||||
|
||||
|
||||
`BASH_VERSION'
|
||||
The version number of the current instance of Bash.
|
||||
|
||||
@@ -4157,7 +4145,6 @@ Variables::).
|
||||
The numeric real user id of the current user. This variable is
|
||||
readonly.
|
||||
|
||||
|
||||
|
||||
File: bashref.info, Node: Bash Features, Next: Job Control, Prev: Shell Variables, Up: Top
|
||||
|
||||
@@ -4255,7 +4242,6 @@ the single-character options to be recognized.
|
||||
Show version information for this instance of Bash on the standard
|
||||
output and exit successfully.
|
||||
|
||||
|
||||
There are several single-character options that may be supplied at
|
||||
invocation which are not available with the `set' builtin.
|
||||
|
||||
@@ -4307,7 +4293,6 @@ invocation which are not available with the `set' builtin.
|
||||
processing. Any arguments after the `--' are treated as filenames
|
||||
and arguments.
|
||||
|
||||
|
||||
A _login_ shell is one whose first character of argument zero is
|
||||
`-', or one invoked with the `--login' option.
|
||||
|
||||
@@ -4699,7 +4684,6 @@ checked. If the FILE argument to one of the primaries is one of
|
||||
greater than or equal to ARG2, respectively. ARG1 and ARG2 may be
|
||||
positive or negative integers.
|
||||
|
||||
|
||||
|
||||
File: bashref.info, Node: Shell Arithmetic, Next: Aliases, Prev: Bash Conditional Expressions, Up: Bash Features
|
||||
|
||||
@@ -5016,7 +5000,6 @@ Directory Stack Builtins
|
||||
Makes the current working directory be the top of the stack,
|
||||
and then executes the equivalent of ``cd' DIR'. `cd's to DIR.
|
||||
|
||||
|
||||
|
||||
File: bashref.info, Node: Printing a Prompt, Next: The Restricted Shell, Prev: The Directory Stack, Up: Bash Features
|
||||
|
||||
@@ -5089,10 +5072,11 @@ which can appear in the prompt variables:
|
||||
The release of Bash, version + patchlevel (e.g., 2.00.0)
|
||||
|
||||
`\w'
|
||||
The current working directory.
|
||||
The current working directory, with `$HOME' abbreviated with a
|
||||
tilde.
|
||||
|
||||
`\W'
|
||||
The basename of `$PWD'.
|
||||
The basename of `$PWD', with `$HOME' abbreviated with a tilde.
|
||||
|
||||
`\!'
|
||||
The history number of this command.
|
||||
@@ -5532,7 +5516,6 @@ Job Control Builtins
|
||||
signal. The `-f' option means to suspend even if the shell is a
|
||||
login shell.
|
||||
|
||||
|
||||
When job control is not active, the `kill' and `wait' builtins do
|
||||
not accept JOBSPEC arguments. They must be supplied process IDs.
|
||||
|
||||
@@ -5559,7 +5542,6 @@ Job Control Variables
|
||||
a prefix of a stopped job's name; this provides functionality
|
||||
analogous to the `%' job ID.
|
||||
|
||||
|
||||
|
||||
File: bashref.info, Node: Command Line Editing, Next: Installing Bash, Prev: Using History Interactively, Up: Top
|
||||
|
||||
@@ -5766,7 +5748,6 @@ available to be yanked back later, when you are typing another line.
|
||||
Kill from the cursor to the previous whitespace. This is
|
||||
different than `M-<DEL>' because the word boundaries differ.
|
||||
|
||||
|
||||
Here is how to "yank" the text back into the line. Yanking means to
|
||||
copy the most-recently-killed text from the kill buffer.
|
||||
|
||||
@@ -6044,7 +6025,6 @@ Variable Settings
|
||||
appended to the filename when listing possible completions.
|
||||
The default is `off'.
|
||||
|
||||
|
||||
Key Bindings
|
||||
The syntax for controlling key bindings in the init file is
|
||||
simple. First you need to find the name of the command that you
|
||||
@@ -6099,7 +6079,6 @@ Key Bindings
|
||||
`<ESC> <[> <1> <1> <~>' is bound to insert the text `Function
|
||||
Key 1'.
|
||||
|
||||
|
||||
The following GNU Emacs style escape sequences are available when
|
||||
specifying key sequences:
|
||||
|
||||
@@ -6165,7 +6144,6 @@ Key Bindings
|
||||
the line:
|
||||
"\C-x\\": "\\"
|
||||
|
||||
|
||||
|
||||
File: bashref.info, Node: Conditional Init Constructs, Next: Sample Init File, Prev: Readline Init File Syntax, Up: Readline Init File
|
||||
|
||||
@@ -6397,7 +6375,6 @@ Commands For Moving
|
||||
`redraw-current-line ()'
|
||||
Refresh the current line. By default, this is unbound.
|
||||
|
||||
|
||||
|
||||
File: bashref.info, Node: Commands For History, Next: Commands For Text, Prev: Commands For Moving, Up: Bindable Readline Commands
|
||||
|
||||
@@ -6468,7 +6445,6 @@ Commands For Manipulating The History
|
||||
through the history list, inserting the last argument of each line
|
||||
in turn.
|
||||
|
||||
|
||||
|
||||
File: bashref.info, Node: Commands For Text, Next: Commands For Killing, Prev: Commands For History, Up: Bindable Readline Commands
|
||||
|
||||
@@ -6533,7 +6509,6 @@ Commands For Changing Text
|
||||
|
||||
By default, this command is unbound.
|
||||
|
||||
|
||||
|
||||
File: bashref.info, Node: Commands For Killing, Next: Numeric Arguments, Prev: Commands For Text, Up: Bindable Readline Commands
|
||||
|
||||
@@ -6709,7 +6684,6 @@ Letting Readline Type For You
|
||||
completions enclosed within braces so the list is available to the
|
||||
shell (*note Brace Expansion::).
|
||||
|
||||
|
||||
|
||||
File: bashref.info, Node: Keyboard Macros, Next: Miscellaneous Commands, Prev: Commands For Completion, Up: Bindable Readline Commands
|
||||
|
||||
@@ -6727,7 +6701,6 @@ Keyboard Macros
|
||||
Re-execute the last keyboard macro defined, by making the
|
||||
characters in the macro appear as if typed at the keyboard.
|
||||
|
||||
|
||||
|
||||
File: bashref.info, Node: Miscellaneous Commands, Prev: Keyboard Macros, Up: Bindable Readline Commands
|
||||
|
||||
@@ -6862,7 +6835,6 @@ Some Miscellaneous Commands
|
||||
result as shell commands. Bash attempts to invoke `$FCEDIT',
|
||||
`$EDITOR', and `emacs' as the editor, in that order.
|
||||
|
||||
|
||||
|
||||
File: bashref.info, Node: Readline vi Mode, Next: Programmable Completion, Prev: Bindable Readline Commands, Up: Command Line Editing
|
||||
|
||||
@@ -7195,7 +7167,6 @@ completion facilities.
|
||||
for a NAME for which no specification exists, or an error occurs
|
||||
adding a completion specification.
|
||||
|
||||
|
||||
|
||||
File: bashref.info, Node: Using History Interactively, Next: Command Line Editing, Prev: Job Control, Up: Top
|
||||
|
||||
@@ -7354,12 +7325,10 @@ and history file.
|
||||
The ARGs are added to the end of the history list as a single
|
||||
entry.
|
||||
|
||||
|
||||
When any of the `-w', `-r', `-a', or `-n' options is used, if
|
||||
FILENAME is given, then it is used as the history file. If not,
|
||||
then the value of the `HISTFILE' variable is used.
|
||||
|
||||
|
||||
|
||||
File: bashref.info, Node: History Interaction, Prev: Bash History Builtins, Up: Using History Interactively
|
||||
|
||||
@@ -7449,7 +7418,6 @@ history list.
|
||||
`!#'
|
||||
The entire command line typed so far.
|
||||
|
||||
|
||||
|
||||
File: bashref.info, Node: Word Designators, Next: Modifiers, Prev: Event Designators, Up: History Interaction
|
||||
|
||||
@@ -7508,7 +7476,6 @@ line separated by single spaces.
|
||||
`X-'
|
||||
Abbreviates `X-$' like `X*', but omits the last word.
|
||||
|
||||
|
||||
If a word designator is supplied without an event specification, the
|
||||
previous command is used as the event.
|
||||
|
||||
@@ -7563,7 +7530,6 @@ more of the following modifiers, each preceded by a `:'.
|
||||
`G'
|
||||
Apply the following `s' modifier once to each word in the event.
|
||||
|
||||
|
||||
|
||||
File: bashref.info, Node: Installing Bash, Next: Reporting Bugs, Prev: Command Line Editing, Up: Top
|
||||
|
||||
@@ -7997,7 +7963,6 @@ does not provide the necessary support.
|
||||
Specification, version 2. *Note Bash Builtins::, for a
|
||||
description of the escape sequences that `echo' recognizes.
|
||||
|
||||
|
||||
The file `config-top.h' contains C Preprocessor `#define' statements
|
||||
for options which are not settable from `configure'. Some of these are
|
||||
not meant to be changed; beware of the consequences if you do. Read
|
||||
@@ -9249,129 +9214,129 @@ Concept Index
|
||||
|
||||
|
||||
Tag Table:
|
||||
Node: Top1373
|
||||
Node: Introduction3532
|
||||
Node: What is Bash?3757
|
||||
Node: What is a shell?4845
|
||||
Node: Definitions7381
|
||||
Node: Basic Shell Features10121
|
||||
Node: Shell Syntax11339
|
||||
Node: Shell Operation12363
|
||||
Node: Quoting13648
|
||||
Node: Escape Character14910
|
||||
Node: Single Quotes15382
|
||||
Node: Double Quotes15717
|
||||
Node: ANSI-C Quoting16730
|
||||
Node: Locale Translation17673
|
||||
Node: Comments18556
|
||||
Node: Shell Commands19161
|
||||
Node: Simple Commands19922
|
||||
Node: Pipelines20543
|
||||
Node: Lists22409
|
||||
Node: Compound Commands24031
|
||||
Node: Looping Constructs24803
|
||||
Node: Top1376
|
||||
Node: Introduction3533
|
||||
Node: What is Bash?3758
|
||||
Node: What is a shell?4846
|
||||
Node: Definitions7382
|
||||
Node: Basic Shell Features10122
|
||||
Node: Shell Syntax11340
|
||||
Node: Shell Operation12364
|
||||
Node: Quoting13649
|
||||
Node: Escape Character14911
|
||||
Node: Single Quotes15383
|
||||
Node: Double Quotes15718
|
||||
Node: ANSI-C Quoting16731
|
||||
Node: Locale Translation17674
|
||||
Node: Comments18557
|
||||
Node: Shell Commands19162
|
||||
Node: Simple Commands19923
|
||||
Node: Pipelines20544
|
||||
Node: Lists22410
|
||||
Node: Compound Commands24032
|
||||
Node: Looping Constructs24804
|
||||
Node: Conditional Constructs27237
|
||||
Node: Command Grouping34290
|
||||
Node: Shell Functions35726
|
||||
Node: Shell Parameters39991
|
||||
Node: Positional Parameters41562
|
||||
Node: Special Parameters42453
|
||||
Node: Shell Expansions45111
|
||||
Node: Brace Expansion47031
|
||||
Node: Tilde Expansion49347
|
||||
Node: Shell Parameter Expansion51679
|
||||
Node: Command Substitution58933
|
||||
Node: Arithmetic Expansion60255
|
||||
Node: Process Substitution61096
|
||||
Node: Word Splitting62133
|
||||
Node: Filename Expansion63585
|
||||
Node: Pattern Matching65709
|
||||
Node: Quote Removal69030
|
||||
Node: Redirections69316
|
||||
Node: Executing Commands76791
|
||||
Node: Simple Command Expansion77458
|
||||
Node: Command Search and Execution79379
|
||||
Node: Command Execution Environment81376
|
||||
Node: Environment84138
|
||||
Node: Exit Status85789
|
||||
Node: Signals86984
|
||||
Node: Shell Scripts88939
|
||||
Node: Shell Builtin Commands91450
|
||||
Node: Bourne Shell Builtins92880
|
||||
Node: Bash Builtins109763
|
||||
Node: The Set Builtin137885
|
||||
Node: Special Builtins146103
|
||||
Node: Shell Variables147075
|
||||
Node: Bourne Shell Variables147511
|
||||
Node: Bash Variables149488
|
||||
Node: Bash Features168993
|
||||
Node: Invoking Bash169875
|
||||
Node: Bash Startup Files175686
|
||||
Node: Interactive Shells180556
|
||||
Node: What is an Interactive Shell?180958
|
||||
Node: Is this Shell Interactive?181593
|
||||
Node: Interactive Shell Behavior182399
|
||||
Node: Bash Conditional Expressions185666
|
||||
Node: Shell Arithmetic189086
|
||||
Node: Aliases191826
|
||||
Node: Arrays194329
|
||||
Node: The Directory Stack197349
|
||||
Node: Directory Stack Builtins198055
|
||||
Node: Printing a Prompt200934
|
||||
Node: The Restricted Shell203560
|
||||
Node: Bash POSIX Mode205385
|
||||
Node: Job Control212031
|
||||
Node: Job Control Basics212497
|
||||
Node: Job Control Builtins216777
|
||||
Node: Job Control Variables221073
|
||||
Node: Command Line Editing222223
|
||||
Node: Introduction and Notation223221
|
||||
Node: Readline Interaction224838
|
||||
Node: Readline Bare Essentials226024
|
||||
Node: Readline Movement Commands227804
|
||||
Node: Readline Killing Commands228760
|
||||
Node: Readline Arguments230669
|
||||
Node: Searching231704
|
||||
Node: Readline Init File233881
|
||||
Node: Readline Init File Syntax234935
|
||||
Node: Conditional Init Constructs246579
|
||||
Node: Sample Init File249103
|
||||
Node: Bindable Readline Commands252286
|
||||
Node: Commands For Moving253485
|
||||
Node: Commands For History254334
|
||||
Node: Commands For Text257223
|
||||
Node: Commands For Killing259884
|
||||
Node: Numeric Arguments261834
|
||||
Node: Commands For Completion262961
|
||||
Node: Keyboard Macros266542
|
||||
Node: Miscellaneous Commands267101
|
||||
Node: Readline vi Mode272400
|
||||
Node: Programmable Completion273309
|
||||
Node: Programmable Completion Builtins279116
|
||||
Node: Using History Interactively286478
|
||||
Node: Bash History Facilities287157
|
||||
Node: Bash History Builtins289847
|
||||
Node: History Interaction293699
|
||||
Node: Event Designators296250
|
||||
Node: Word Designators297254
|
||||
Node: Modifiers298884
|
||||
Node: Installing Bash300281
|
||||
Node: Basic Installation301415
|
||||
Node: Compilers and Options304100
|
||||
Node: Compiling For Multiple Architectures304834
|
||||
Node: Installation Names306491
|
||||
Node: Specifying the System Type307302
|
||||
Node: Sharing Defaults308011
|
||||
Node: Operation Controls308676
|
||||
Node: Optional Features309627
|
||||
Node: Reporting Bugs317899
|
||||
Node: Major Differences From The Bourne Shell319074
|
||||
Node: Copying This Manual334822
|
||||
Node: GNU Free Documentation License335076
|
||||
Node: Builtin Index357469
|
||||
Node: Reserved Word Index361096
|
||||
Node: Variable Index362572
|
||||
Node: Function Index369565
|
||||
Node: Concept Index374115
|
||||
Node: Command Grouping34289
|
||||
Node: Shell Functions35725
|
||||
Node: Shell Parameters39990
|
||||
Node: Positional Parameters41561
|
||||
Node: Special Parameters42452
|
||||
Node: Shell Expansions45110
|
||||
Node: Brace Expansion47030
|
||||
Node: Tilde Expansion49346
|
||||
Node: Shell Parameter Expansion51677
|
||||
Node: Command Substitution58930
|
||||
Node: Arithmetic Expansion60252
|
||||
Node: Process Substitution61093
|
||||
Node: Word Splitting62130
|
||||
Node: Filename Expansion63582
|
||||
Node: Pattern Matching65706
|
||||
Node: Quote Removal69027
|
||||
Node: Redirections69313
|
||||
Node: Executing Commands76787
|
||||
Node: Simple Command Expansion77454
|
||||
Node: Command Search and Execution79375
|
||||
Node: Command Execution Environment81372
|
||||
Node: Environment84134
|
||||
Node: Exit Status85785
|
||||
Node: Signals86980
|
||||
Node: Shell Scripts88935
|
||||
Node: Shell Builtin Commands91446
|
||||
Node: Bourne Shell Builtins92876
|
||||
Node: Bash Builtins109759
|
||||
Node: The Set Builtin137876
|
||||
Node: Special Builtins146094
|
||||
Node: Shell Variables147066
|
||||
Node: Bourne Shell Variables147502
|
||||
Node: Bash Variables149478
|
||||
Node: Bash Features168981
|
||||
Node: Invoking Bash169863
|
||||
Node: Bash Startup Files175672
|
||||
Node: Interactive Shells180542
|
||||
Node: What is an Interactive Shell?180944
|
||||
Node: Is this Shell Interactive?181579
|
||||
Node: Interactive Shell Behavior182385
|
||||
Node: Bash Conditional Expressions185652
|
||||
Node: Shell Arithmetic189071
|
||||
Node: Aliases191811
|
||||
Node: Arrays194314
|
||||
Node: The Directory Stack197334
|
||||
Node: Directory Stack Builtins198040
|
||||
Node: Printing a Prompt200918
|
||||
Node: The Restricted Shell203627
|
||||
Node: Bash POSIX Mode205452
|
||||
Node: Job Control212098
|
||||
Node: Job Control Basics212564
|
||||
Node: Job Control Builtins216844
|
||||
Node: Job Control Variables221139
|
||||
Node: Command Line Editing222288
|
||||
Node: Introduction and Notation223286
|
||||
Node: Readline Interaction224903
|
||||
Node: Readline Bare Essentials226089
|
||||
Node: Readline Movement Commands227869
|
||||
Node: Readline Killing Commands228825
|
||||
Node: Readline Arguments230733
|
||||
Node: Searching231768
|
||||
Node: Readline Init File233945
|
||||
Node: Readline Init File Syntax234999
|
||||
Node: Conditional Init Constructs246640
|
||||
Node: Sample Init File249164
|
||||
Node: Bindable Readline Commands252347
|
||||
Node: Commands For Moving253546
|
||||
Node: Commands For History254394
|
||||
Node: Commands For Text257282
|
||||
Node: Commands For Killing259942
|
||||
Node: Numeric Arguments261892
|
||||
Node: Commands For Completion263019
|
||||
Node: Keyboard Macros266599
|
||||
Node: Miscellaneous Commands267157
|
||||
Node: Readline vi Mode272455
|
||||
Node: Programmable Completion273364
|
||||
Node: Programmable Completion Builtins279171
|
||||
Node: Using History Interactively286532
|
||||
Node: Bash History Facilities287211
|
||||
Node: Bash History Builtins289901
|
||||
Node: History Interaction293751
|
||||
Node: Event Designators296302
|
||||
Node: Word Designators297305
|
||||
Node: Modifiers298934
|
||||
Node: Installing Bash300330
|
||||
Node: Basic Installation301464
|
||||
Node: Compilers and Options304149
|
||||
Node: Compiling For Multiple Architectures304883
|
||||
Node: Installation Names306540
|
||||
Node: Specifying the System Type307351
|
||||
Node: Sharing Defaults308060
|
||||
Node: Operation Controls308725
|
||||
Node: Optional Features309676
|
||||
Node: Reporting Bugs317947
|
||||
Node: Major Differences From The Bourne Shell319122
|
||||
Node: Copying This Manual334870
|
||||
Node: GNU Free Documentation License335124
|
||||
Node: Builtin Index357517
|
||||
Node: Reserved Word Index361144
|
||||
Node: Variable Index362620
|
||||
Node: Function Index369613
|
||||
Node: Concept Index374163
|
||||
|
||||
End Tag Table
|
||||
|
||||
+2
-2
@@ -5716,9 +5716,9 @@ The version of Bash (e.g., 2.00)
|
||||
@item \V
|
||||
The release of Bash, version + patchlevel (e.g., 2.00.0)
|
||||
@item \w
|
||||
The current working directory.
|
||||
The current working directory, with @env{$HOME} abbreviated with a tilde.
|
||||
@item \W
|
||||
The basename of @env{$PWD}.
|
||||
The basename of @env{$PWD}, with @env{$HOME} abbreviated with a tilde.
|
||||
@item \!
|
||||
The history number of this command.
|
||||
@item \#
|
||||
|
||||
+7255
File diff suppressed because it is too large
Load Diff
+4
-4
@@ -1,6 +1,6 @@
|
||||
%!PS-Adobe-3.0
|
||||
%%Creator: groff version 1.18.1
|
||||
%%CreationDate: Thu Nov 13 09:47:38 2003
|
||||
%%CreationDate: Sun Jan 25 21:10:35 2004
|
||||
%%DocumentNeededResources: font Times-Roman
|
||||
%%+ font Times-Bold
|
||||
%%+ font Times-Italic
|
||||
@@ -189,11 +189,11 @@ setpacking
|
||||
%%IncludeResource: font Palatino-Italic
|
||||
%%IncludeResource: font Palatino-Bold
|
||||
grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72
|
||||
def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron
|
||||
/scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef
|
||||
def/PL 841.89 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron
|
||||
/Zcaron/scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef
|
||||
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
|
||||
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
|
||||
/.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent
|
||||
/.notdef/.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent
|
||||
/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen
|
||||
/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon
|
||||
/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O
|
||||
|
||||
+4
-4
@@ -1,6 +1,6 @@
|
||||
%!PS-Adobe-3.0
|
||||
%%Creator: groff version 1.18.1
|
||||
%%CreationDate: Thu Nov 13 09:47:38 2003
|
||||
%%CreationDate: Sun Jan 25 21:10:36 2004
|
||||
%%DocumentNeededResources: font Times-Roman
|
||||
%%+ font Times-Bold
|
||||
%%DocumentSuppliedResources: procset grops 1.18 1
|
||||
@@ -177,11 +177,11 @@ setpacking
|
||||
%%IncludeResource: font Times-Roman
|
||||
%%IncludeResource: font Times-Bold
|
||||
grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72
|
||||
def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron
|
||||
/scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef
|
||||
def/PL 841.89 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron
|
||||
/Zcaron/scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef
|
||||
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
|
||||
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
|
||||
/.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent
|
||||
/.notdef/.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent
|
||||
/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen
|
||||
/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon
|
||||
/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O
|
||||
|
||||
+5
-5
@@ -1,10 +1,10 @@
|
||||
@ignore
|
||||
Copyright (C) 1988-2003 Free Software Foundation, Inc.
|
||||
Copyright (C) 1988-2004 Free Software Foundation, Inc.
|
||||
@end ignore
|
||||
|
||||
@set EDITION 3.0
|
||||
@set VERSION 3.0-alpha
|
||||
@set UPDATED 13 November 2003
|
||||
@set UPDATED-MONTH November 2003
|
||||
@set VERSION 3.0-beta1
|
||||
@set UPDATED 24 January 2004
|
||||
@set UPDATED-MONTH January 2004
|
||||
|
||||
@set LASTCHANGE Thu Nov 13 09:47:04 EST 2003
|
||||
@set LASTCHANGE Sat Jan 24 13:17:53 EST 2004
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
@ignore
|
||||
Copyright (C) 1988-2003 Free Software Foundation, Inc.
|
||||
@end ignore
|
||||
|
||||
@set EDITION 3.0
|
||||
@set VERSION 3.0-alpha
|
||||
@set UPDATED 13 November 2003
|
||||
@set UPDATED-MONTH November 2003
|
||||
|
||||
@set LASTCHANGE Thu Nov 13 09:47:04 EST 2003
|
||||
@@ -95,6 +95,7 @@ typedef struct job {
|
||||
|
||||
#define NO_JOB -1 /* An impossible job array index. */
|
||||
#define DUP_JOB -2 /* A possible return value for get_job_spec (). */
|
||||
#define BAD_JOBSPEC -3 /* Bad syntax for job spec. */
|
||||
|
||||
/* A value which cannot be a process ID. */
|
||||
#define NO_PID (pid_t)-1
|
||||
|
||||
@@ -0,0 +1,182 @@
|
||||
/* jobs.h -- structures and stuff used by the jobs.c file. */
|
||||
|
||||
/* Copyright (C) 1993 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 (_JOBS_H_)
|
||||
# define _JOBS_H_
|
||||
|
||||
#include "quit.h"
|
||||
#include "siglist.h"
|
||||
|
||||
#include "stdc.h"
|
||||
|
||||
#include "posixwait.h"
|
||||
|
||||
/* Defines controlling the fashion in which jobs are listed. */
|
||||
#define JLIST_STANDARD 0
|
||||
#define JLIST_LONG 1
|
||||
#define JLIST_PID_ONLY 2
|
||||
#define JLIST_CHANGED_ONLY 3
|
||||
#define JLIST_NONINTERACTIVE 4
|
||||
|
||||
/* I looked it up. For pretty_print_job (). The real answer is 24. */
|
||||
#define LONGEST_SIGNAL_DESC 24
|
||||
|
||||
/* We keep an array of jobs. Each entry in the array is a linked list
|
||||
of processes that are piped together. The first process encountered is
|
||||
the group leader. */
|
||||
|
||||
/* Values for the `running' field of a struct process. */
|
||||
#define PS_DONE 0
|
||||
#define PS_RUNNING 1
|
||||
#define PS_STOPPED 2
|
||||
|
||||
/* Each child of the shell is remembered in a STRUCT PROCESS. A chain of
|
||||
such structures is a pipeline. The chain is circular. */
|
||||
typedef struct process {
|
||||
struct process *next; /* Next process in the pipeline. A circular chain. */
|
||||
pid_t pid; /* Process ID. */
|
||||
WAIT status; /* The status of this command as returned by wait. */
|
||||
int running; /* Non-zero if this process is running. */
|
||||
char *command; /* The particular program that is running. */
|
||||
} PROCESS;
|
||||
|
||||
/* PRUNNING really means `not exited' */
|
||||
#define PRUNNING(p) ((p)->running || WIFSTOPPED((p)->status))
|
||||
#define PSTOPPED(p) (WIFSTOPPED((p)->status))
|
||||
#define PDEADPROC(p) ((p)->running == PS_DONE)
|
||||
|
||||
/* A description of a pipeline's state. */
|
||||
typedef enum { JRUNNING, JSTOPPED, JDEAD, JMIXED } JOB_STATE;
|
||||
#define JOBSTATE(job) (jobs[(job)]->state)
|
||||
|
||||
#define STOPPED(j) (jobs[(j)]->state == JSTOPPED)
|
||||
#define RUNNING(j) (jobs[(j)]->state == JRUNNING)
|
||||
#define DEADJOB(j) (jobs[(j)]->state == JDEAD)
|
||||
|
||||
/* Values for the FLAGS field in the JOB struct below. */
|
||||
#define J_FOREGROUND 0x01 /* Non-zero if this is running in the foreground. */
|
||||
#define J_NOTIFIED 0x02 /* Non-zero if already notified about job state. */
|
||||
#define J_JOBCONTROL 0x04 /* Non-zero if this job started under job control. */
|
||||
#define J_NOHUP 0x08 /* Don't send SIGHUP to job if shell gets SIGHUP. */
|
||||
|
||||
#define IS_FOREGROUND(j) ((jobs[j]->flags & J_FOREGROUND) != 0)
|
||||
#define IS_NOTIFIED(j) ((jobs[j]->flags & J_NOTIFIED) != 0)
|
||||
#define IS_JOBCONTROL(j) ((jobs[j]->flags & J_JOBCONTROL) != 0)
|
||||
|
||||
typedef struct job {
|
||||
char *wd; /* The working directory at time of invocation. */
|
||||
PROCESS *pipe; /* The pipeline of processes that make up this job. */
|
||||
pid_t pgrp; /* The process ID of the process group (necessary). */
|
||||
JOB_STATE state; /* The state that this job is in. */
|
||||
int flags; /* Flags word: J_NOTIFIED, J_FOREGROUND, or J_JOBCONTROL. */
|
||||
#if defined (JOB_CONTROL)
|
||||
COMMAND *deferred; /* Commands that will execute when this job is done. */
|
||||
sh_vptrfunc_t *j_cleanup; /* Cleanup function to call when job marked JDEAD */
|
||||
PTR_T cleanarg; /* Argument passed to (*j_cleanup)() */
|
||||
#endif /* JOB_CONTROL */
|
||||
} JOB;
|
||||
|
||||
#define NO_JOB -1 /* An impossible job array index. */
|
||||
#define DUP_JOB -2 /* A possible return value for get_job_spec (). */
|
||||
|
||||
/* A value which cannot be a process ID. */
|
||||
#define NO_PID (pid_t)-1
|
||||
|
||||
/* System calls. */
|
||||
#if !defined (HAVE_UNISTD_H)
|
||||
extern pid_t fork (), getpid (), getpgrp ();
|
||||
#endif /* !HAVE_UNISTD_H */
|
||||
|
||||
/* Stuff from the jobs.c file. */
|
||||
extern pid_t original_pgrp, shell_pgrp, pipeline_pgrp;
|
||||
extern pid_t last_made_pid, last_asynchronous_pid;
|
||||
extern int current_job, previous_job;
|
||||
extern int asynchronous_notification;
|
||||
extern JOB **jobs;
|
||||
extern int job_slots;
|
||||
|
||||
extern void making_children __P((void));
|
||||
extern void stop_making_children __P((void));
|
||||
extern void cleanup_the_pipeline __P((void));
|
||||
extern void save_pipeline __P((int));
|
||||
extern void restore_pipeline __P((int));
|
||||
extern void start_pipeline __P((void));
|
||||
extern int stop_pipeline __P((int, COMMAND *));
|
||||
|
||||
extern void delete_job __P((int, int));
|
||||
extern void nohup_job __P((int));
|
||||
extern void delete_all_jobs __P((int));
|
||||
extern void nohup_all_jobs __P((int));
|
||||
|
||||
extern int count_all_jobs __P((void));
|
||||
|
||||
extern void terminate_current_pipeline __P((void));
|
||||
extern void terminate_stopped_jobs __P((void));
|
||||
extern void hangup_all_jobs __P((void));
|
||||
extern void kill_current_pipeline __P((void));
|
||||
|
||||
#if defined (__STDC__) && defined (pid_t)
|
||||
extern int get_job_by_pid __P((int, int));
|
||||
extern void describe_pid __P((int));
|
||||
#else
|
||||
extern int get_job_by_pid __P((pid_t, int));
|
||||
extern void describe_pid __P((pid_t));
|
||||
#endif
|
||||
|
||||
extern void list_one_job __P((JOB *, int, int, int));
|
||||
extern void list_all_jobs __P((int));
|
||||
extern void list_stopped_jobs __P((int));
|
||||
extern void list_running_jobs __P((int));
|
||||
|
||||
extern pid_t make_child __P((char *, int));
|
||||
|
||||
extern int get_tty_state __P((void));
|
||||
extern int set_tty_state __P((void));
|
||||
|
||||
extern int wait_for_single_pid __P((pid_t));
|
||||
extern void wait_for_background_pids __P((void));
|
||||
extern int wait_for __P((pid_t));
|
||||
extern int wait_for_job __P((int));
|
||||
|
||||
extern void notify_and_cleanup __P((void));
|
||||
extern void reap_dead_jobs __P((void));
|
||||
extern int start_job __P((int, int));
|
||||
extern int kill_pid __P((pid_t, int, int));
|
||||
extern int initialize_job_control __P((int));
|
||||
extern void initialize_job_signals __P((void));
|
||||
extern int give_terminal_to __P((pid_t, int));
|
||||
|
||||
extern void set_sigwinch_handler __P((void));
|
||||
extern void unset_sigwinch_handler __P((void));
|
||||
|
||||
extern void unfreeze_jobs_list __P((void));
|
||||
extern int set_job_control __P((int));
|
||||
extern void without_job_control __P((void));
|
||||
extern void end_job_control __P((void));
|
||||
extern void restart_job_control __P((void));
|
||||
extern void set_sigchld_handler __P((void));
|
||||
extern void ignore_tty_job_signals __P((void));
|
||||
extern void default_tty_job_signals __P((void));
|
||||
|
||||
#if defined (JOB_CONTROL)
|
||||
extern int job_control;
|
||||
#endif
|
||||
|
||||
#endif /* _JOBS_H_ */
|
||||
+13
-6
@@ -46,9 +46,16 @@ LDFLAGS = @LDFLAGS@
|
||||
DEFS = @DEFS@
|
||||
LOCAL_DEFS = @LOCAL_DEFS@
|
||||
|
||||
LIBBUILD = ${BUILD_DIR}/lib
|
||||
|
||||
BASHINCDIR = ${topdir}/include
|
||||
|
||||
INCLUDES = -I. -I../.. -I$(topdir) -I$(BASHINCDIR) -I$(topdir)/lib
|
||||
INTL_LIBSRC = ${topdir}/lib/intl
|
||||
INTL_BUILDDIR = ${LIBBUILD}/intl
|
||||
INTL_INC = @INTL_INC@
|
||||
LIBINTL_H = @LIBINTL_H@
|
||||
|
||||
INCLUDES = -I. -I../.. -I$(topdir) -I$(BASHINCDIR) -I$(topdir)/lib $(INTL_INC)
|
||||
|
||||
CCFLAGS = ${PROFILE_FLAGS} ${INCLUDES} $(DEFS) $(LOCAL_DEFS) $(LOCAL_CFLAGS) \
|
||||
$(CFLAGS) $(MALLOC_CFLAGS) $(CPPFLAGS)
|
||||
@@ -116,11 +123,11 @@ trace.o: ${srcdir}/imalloc.h
|
||||
table.o: ${srcdir}/imalloc.h ${srcdir}/table.h
|
||||
watch.o: ${srcdir}/imalloc.h ${srcdir}/watch.h
|
||||
|
||||
malloc.o: ${topdir}/bashintl.h ${BASHINCDIR}/gettext.h
|
||||
stats.o: ${topdir}/bashintl.h ${BASHINCDIR}/gettext.h
|
||||
trace.o: ${topdir}/bashintl.h ${BASHINCDIR}/gettext.h
|
||||
table.o: ${topdir}/bashintl.h ${BASHINCDIR}/gettext.h
|
||||
watch.o: ${topdir}/bashintl.h ${BASHINCDIR}/gettext.h
|
||||
malloc.o: ${topdir}/bashintl.h ${LIBINTL_H} ${BASHINCDIR}/gettext.h
|
||||
stats.o: ${topdir}/bashintl.h ${LIBINTL_H} ${BASHINCDIR}/gettext.h
|
||||
trace.o: ${topdir}/bashintl.h ${LIBINTL_H} ${BASHINCDIR}/gettext.h
|
||||
table.o: ${topdir}/bashintl.h ${LIBINTL_H} ${BASHINCDIR}/gettext.h
|
||||
watch.o: ${topdir}/bashintl.h ${LIBINTL_H} ${BASHINCDIR}/gettext.h
|
||||
|
||||
# Rules for deficient makes, like SunOS and Solaris
|
||||
stub.o: stub.c
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/* complete.c -- filename completion for readline. */
|
||||
|
||||
/* Copyright (C) 1987, 1989, 1992 Free Software Foundation, Inc.
|
||||
/* Copyright (C) 1987-2004 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of the GNU Readline Library, a library for
|
||||
reading lines of text with interactive input and history editing.
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/* display.c -- readline redisplay facility. */
|
||||
|
||||
/* Copyright (C) 1987, 1989, 1992 Free Software Foundation, Inc.
|
||||
/* Copyright (C) 1987-2004 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of the GNU Readline Library, a library for
|
||||
reading lines of text with interactive input and history editing.
|
||||
|
||||
@@ -933,6 +933,11 @@ expand the primary prompt if the @code{rl_on_new_line_with_prompt()}
|
||||
function or @code{rl_already_prompted} variable is used.
|
||||
It returns the number of visible characters on the last line of the
|
||||
(possibly multi-line) prompt.
|
||||
Applications may indicate that the prompt contains characters that take
|
||||
up no physical screen space when displayed by bracketing a sequence of
|
||||
such characters with the special markers @code{RL_PROMPT_START_IGNORE}
|
||||
and @code{RL_PROMPT_END_IGNORE} (declared in @file{readline.h}. This may
|
||||
be used to embed terminal-specific escape sequences in prompts.
|
||||
@end deftypefun
|
||||
|
||||
@deftypefun int rl_set_prompt (const char *prompt)
|
||||
|
||||
@@ -4,7 +4,7 @@ Copyright (C) 1988-2004 Free Software Foundation, Inc.
|
||||
|
||||
@set EDITION 5.0
|
||||
@set VERSION 5.0
|
||||
@set UPDATED 8 January 2004
|
||||
@set UPDATED 15 January 2004
|
||||
@set UPDATED-MONTH January 2003
|
||||
|
||||
@set LASTCHANGE Thu Jan 8 10:34:23 EST 2004
|
||||
@set LASTCHANGE Thu Jan 15 09:05:10 EST 2004
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/* mbutil.c -- readline multibyte character utility functions */
|
||||
|
||||
/* Copyright (C) 2001 Free Software Foundation, Inc.
|
||||
/* Copyright (C) 2001-2004 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of the GNU Readline Library, a library for
|
||||
reading lines of text with interactive input and history editing.
|
||||
@@ -92,7 +92,7 @@ _rl_find_next_mbchar_internal (string, seed, count, find_non_zero)
|
||||
/* if this is true, means that seed was not pointed character
|
||||
started byte. So correct the point and consume count */
|
||||
if (seed < point)
|
||||
count --;
|
||||
count--;
|
||||
|
||||
while (count > 0)
|
||||
{
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/* Readline.h -- the names of functions callable from within readline. */
|
||||
|
||||
/* Copyright (C) 1987, 1989, 1992 Free Software Foundation, Inc.
|
||||
/* Copyright (C) 1987-2004 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of the GNU Readline Library, a library for
|
||||
reading lines of text with interactive input and history editing.
|
||||
|
||||
+12
-5
@@ -31,8 +31,15 @@ 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@
|
||||
@@ -57,7 +64,7 @@ PROFILE_FLAGS = @PROFILE_FLAGS@
|
||||
DEFS = @DEFS@
|
||||
LOCAL_DEFS = @LOCAL_DEFS@
|
||||
|
||||
INCLUDES = -I. -I../.. -I$(topdir) -I$(topdir)/lib -I$(BASHINCDIR) -I$(srcdir)
|
||||
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)
|
||||
@@ -277,7 +284,7 @@ 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 $(BASHINCDIR)/gettext.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
|
||||
@@ -423,21 +430,21 @@ 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 ${BASHINCDIR}/gettext.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 ${BASHINCDIR}/gettext.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 ${BASHINCDIR}/gettext.h
|
||||
fmtumax.o: ${topdir}/bashintl.h ${LIBINTL_H} ${BASHINCDIR}/gettext.h
|
||||
|
||||
xstrchr.o: ${topdir}/bashansi.h
|
||||
xstrchr.o: ${BASHINCDIR}/ansi_stdlib.h
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/* Yacc grammar for bash. */
|
||||
|
||||
/* Copyright (C) 1989-2002 Free Software Foundation, Inc.
|
||||
/* Copyright (C) 1989-2004 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Bash, the Bourne Again SHell.
|
||||
|
||||
@@ -4070,7 +4070,7 @@ decode_prompt_string (string)
|
||||
case 'W':
|
||||
{
|
||||
/* Use the value of PWD because it is much more efficient. */
|
||||
char t_string[PATH_MAX];
|
||||
char t_string[PATH_MAX], *t;
|
||||
int tlen;
|
||||
|
||||
temp = get_string_value ("PWD");
|
||||
@@ -4094,7 +4094,8 @@ decode_prompt_string (string)
|
||||
|
||||
#define ROOT_PATH(x) ((x)[0] == '/' && (x)[1] == 0)
|
||||
#define DOUBLE_SLASH_ROOT(x) ((x)[0] == '/' && (x)[1] == '/' && (x)[2] == 0)
|
||||
if (c == 'W')
|
||||
/* Abbreviate \W as ~ if $PWD == $HOME */
|
||||
if (c == 'W' && (((t = get_string_value ("HOME")) == 0) || STREQ (t, temp) == 0))
|
||||
{
|
||||
if (ROOT_PATH (t_string) == 0 && DOUBLE_SLASH_ROOT (t_string) == 0)
|
||||
{
|
||||
|
||||
@@ -1332,25 +1332,8 @@ open_shell_script (script_name)
|
||||
ARRAY *funcname_a, *bash_source_a, *bash_lineno_a;
|
||||
#endif
|
||||
|
||||
free (dollar_vars[0]);
|
||||
dollar_vars[0] = savestring (script_name);
|
||||
filename = savestring (script_name);
|
||||
|
||||
#if defined (ARRAY_VARS)
|
||||
GET_ARRAY_FROM_VAR ("FUNCNAME", funcname_v, funcname_a);
|
||||
GET_ARRAY_FROM_VAR ("BASH_SOURCE", bash_source_v, bash_source_a);
|
||||
GET_ARRAY_FROM_VAR ("BASH_LINENO", bash_lineno_v, bash_lineno_a);
|
||||
|
||||
array_push (bash_source_a, filename);
|
||||
if (bash_lineno_a)
|
||||
{
|
||||
t = itos (executing_line_number ());
|
||||
array_push (bash_lineno_a, t);
|
||||
free (t);
|
||||
}
|
||||
array_push (funcname_a, "main");
|
||||
#endif
|
||||
|
||||
fd = open (filename, O_RDONLY);
|
||||
if ((fd < 0) && (errno == ENOENT) && (absolute_program (filename) == 0))
|
||||
{
|
||||
@@ -1375,6 +1358,24 @@ open_shell_script (script_name)
|
||||
exit ((e == ENOENT) ? EX_NOTFOUND : EX_NOINPUT);
|
||||
}
|
||||
|
||||
free (dollar_vars[0]);
|
||||
dollar_vars[0] = savestring (script_name);
|
||||
|
||||
#if defined (ARRAY_VARS)
|
||||
GET_ARRAY_FROM_VAR ("FUNCNAME", funcname_v, funcname_a);
|
||||
GET_ARRAY_FROM_VAR ("BASH_SOURCE", bash_source_v, bash_source_a);
|
||||
GET_ARRAY_FROM_VAR ("BASH_LINENO", bash_lineno_v, bash_lineno_a);
|
||||
|
||||
array_push (bash_source_a, filename);
|
||||
if (bash_lineno_a)
|
||||
{
|
||||
t = itos (executing_line_number ());
|
||||
array_push (bash_lineno_a, t);
|
||||
free (t);
|
||||
}
|
||||
array_push (funcname_a, "main");
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_DEV_FD
|
||||
fd_is_tty = isatty (fd);
|
||||
#else
|
||||
|
||||
@@ -1565,6 +1565,10 @@ string_list_internal (list, sep)
|
||||
if (list == 0)
|
||||
return ((char *)NULL);
|
||||
|
||||
/* Short-circuit quickly if we don't need to separate anything. */
|
||||
if (list->next == 0)
|
||||
return (savestring (list->word->word));
|
||||
|
||||
/* This is nearly always called with either sep[0] == 0 or sep[1] == 0. */
|
||||
sep_len = STRLEN (sep);
|
||||
result_size = 0;
|
||||
@@ -4356,11 +4360,16 @@ parameter_brace_expand_rhs (name, value, c, quoted, qdollaratp, hasdollarat)
|
||||
if (l)
|
||||
{
|
||||
/* The expansion of TEMP returned something. We need to treat things
|
||||
slightly differently if HASDOL is non-zero. */
|
||||
temp = string_list (l);
|
||||
slightly differently if HASDOL is non-zero. If we have "$@", the
|
||||
individual words have already been quoted. We need to turn them
|
||||
into a string with the words separated by the first character of
|
||||
$IFS without any additional quoting, so string_list_dollar_at won't
|
||||
do the right thing. We use string_list_dollar_star instead. */
|
||||
temp = (hasdol || l->next) ? string_list_dollar_star (l) : string_list (l);
|
||||
|
||||
/* If l->next is not null, we know that TEMP contained "$@", since that
|
||||
is the only expansion that creates more than one word. */
|
||||
if ((hasdol && quoted) || l->next)
|
||||
if (qdollaratp && ((hasdol && quoted) || l->next))
|
||||
*qdollaratp = 1;
|
||||
dispose_words (l);
|
||||
}
|
||||
|
||||
@@ -3107,6 +3107,8 @@ match_pattern (string, pat, mtype, sp, ep)
|
||||
else
|
||||
p++;
|
||||
}
|
||||
|
||||
FREE (mblen);
|
||||
return (0);
|
||||
|
||||
case MATCH_BEG:
|
||||
@@ -3136,6 +3138,8 @@ match_pattern (string, pat, mtype, sp, ep)
|
||||
else
|
||||
p--;
|
||||
}
|
||||
|
||||
FREE (mblen);
|
||||
return (0);
|
||||
|
||||
case MATCH_END:
|
||||
@@ -3161,6 +3165,7 @@ match_pattern (string, pat, mtype, sp, ep)
|
||||
return (0);
|
||||
}
|
||||
|
||||
FREE (mblen);
|
||||
return (0);
|
||||
}
|
||||
|
||||
@@ -4351,11 +4356,16 @@ parameter_brace_expand_rhs (name, value, c, quoted, qdollaratp, hasdollarat)
|
||||
if (l)
|
||||
{
|
||||
/* The expansion of TEMP returned something. We need to treat things
|
||||
slightly differently if HASDOL is non-zero. */
|
||||
temp = string_list (l);
|
||||
slightly differently if HASDOL is non-zero. If we have "$@", the
|
||||
individual words have already been quoted. We need to turn them
|
||||
into a string with the words separated by the first character of
|
||||
$IFS without any additional quoting, so string_list_dollar_at won't
|
||||
do the right thing. We use string_list_dollar_star instead. */
|
||||
temp = (hasdol || l->next) ? string_list_dollar_star (l) : string_list (l);
|
||||
|
||||
/* If l->next is not null, we know that TEMP contained "$@", since that
|
||||
is the only expansion that creates more than one word. */
|
||||
if ((hasdol && quoted) || l->next)
|
||||
if (qdollaratp && ((hasdol && quoted) || l->next))
|
||||
*qdollaratp = 1;
|
||||
dispose_words (l);
|
||||
}
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
BUILD_DIR=/usr/local/build/chet/bash/bash-current
|
||||
BUILD_DIR=/usr/local/build/bash/bash-current
|
||||
THIS_SH=$BUILD_DIR/bash
|
||||
PATH=$PATH:$BUILD_DIR
|
||||
|
||||
|
||||
@@ -211,4 +211,8 @@ esac
|
||||
# expansions -- bugs through bash-2.05b
|
||||
${THIS_SH} ./dollar-star1.sub
|
||||
|
||||
# tests for expansion of "$@" on rhs of things like ${param:+word}. Bugs
|
||||
# though bash-2.05b
|
||||
${THIS_SH} ./dollar-at1.sub
|
||||
|
||||
exit 0
|
||||
|
||||
Executable
+214
@@ -0,0 +1,214 @@
|
||||
# first, let's start with the basics
|
||||
|
||||
recho "$@"
|
||||
recho "$*"
|
||||
|
||||
recho $@
|
||||
recho $*
|
||||
|
||||
set a b
|
||||
|
||||
recho "$*"
|
||||
|
||||
# If IFS is null, the parameters are joined without separators
|
||||
IFS=''
|
||||
recho "$*"
|
||||
|
||||
# If IFS is unset, the parameters are separated by spaces
|
||||
unset IFS
|
||||
recho "${*}"
|
||||
|
||||
recho "$@"
|
||||
recho $@
|
||||
|
||||
IFS='/'
|
||||
set bob 'tom dick harry' joe
|
||||
set $*
|
||||
recho $#
|
||||
recho $1
|
||||
recho $2
|
||||
recho $3
|
||||
|
||||
set bob 'tom dick harry' joe
|
||||
set ${*}
|
||||
recho $#
|
||||
recho $1
|
||||
recho $2
|
||||
recho $3
|
||||
|
||||
set bob 'tom dick harry' joe
|
||||
set $@
|
||||
recho $#
|
||||
recho $1
|
||||
recho $2
|
||||
recho $3
|
||||
|
||||
set bob 'tom dick harry' joe
|
||||
set ${@}
|
||||
recho $#
|
||||
recho $1
|
||||
recho $2
|
||||
recho $3
|
||||
|
||||
# according to POSIX.2, unquoted $* should expand to multiple words if
|
||||
# $IFS is null, just like unquoted $@
|
||||
IFS=''
|
||||
set bob 'tom dick harry' joe
|
||||
set $*
|
||||
recho $#
|
||||
recho $1
|
||||
recho $2
|
||||
recho $3
|
||||
|
||||
set bob 'tom dick harry' joe
|
||||
set $@
|
||||
recho $#
|
||||
recho $1
|
||||
recho $2
|
||||
recho $3
|
||||
|
||||
# if IFS is unset, the individual positional parameters are split on
|
||||
# " \t\n" if $* or $@ are unquoted
|
||||
unset IFS
|
||||
set bob 'tom dick harry' joe
|
||||
set $*
|
||||
recho $#
|
||||
recho $1
|
||||
recho $2
|
||||
recho $3
|
||||
|
||||
set bob 'tom dick harry' joe
|
||||
set $@
|
||||
recho $#
|
||||
recho $1
|
||||
recho $2
|
||||
recho $3
|
||||
|
||||
# but not for "$@" or "$*"
|
||||
set bob 'tom dick harry' joe
|
||||
set "$*"
|
||||
recho $#
|
||||
recho $1
|
||||
recho $2
|
||||
recho $3
|
||||
|
||||
set bob 'tom dick harry' joe
|
||||
set "$@"
|
||||
recho $#
|
||||
recho $1
|
||||
recho $2
|
||||
recho $3
|
||||
|
||||
# POSIX.2 says these should both expand the positional parameters
|
||||
# to multiple words
|
||||
set a b c d e
|
||||
IFS=""
|
||||
recho $@
|
||||
recho "$@"
|
||||
|
||||
# this example is straight from the POSIX.2 rationale
|
||||
set foo bar bam
|
||||
|
||||
recho "$@"
|
||||
recho "$*"
|
||||
|
||||
unset IFS
|
||||
|
||||
recho "$@"
|
||||
recho $@
|
||||
recho "$*"
|
||||
|
||||
IFS=:
|
||||
|
||||
# special variables
|
||||
set -- 1 2 3 4 5 6 7 8 9 10
|
||||
|
||||
bar=${*}
|
||||
foo=$*
|
||||
echo foo = "$foo"
|
||||
echo bar = "$bar"
|
||||
|
||||
foo1=$@
|
||||
bar1=${@}
|
||||
|
||||
echo foo1 = "$foo1"
|
||||
echo bar1 = "$bar1"
|
||||
|
||||
foo2="$*"
|
||||
bar2="${*}"
|
||||
|
||||
echo foo2 = "$foo2"
|
||||
echo bar2 = "$bar2"
|
||||
|
||||
eval foo3='$*' bar3='${*}'
|
||||
echo foo3 = "$foo3"
|
||||
echo bar3 = "$bar3"
|
||||
|
||||
case $* in
|
||||
*\:*) echo ok 1;;
|
||||
*) echo bad 1;;
|
||||
esac
|
||||
|
||||
case $@ in
|
||||
*\:*) echo bad 2;;
|
||||
*) echo ok 2;;
|
||||
esac
|
||||
|
||||
case "$*" in
|
||||
*\:*) echo ok 3;;
|
||||
*) echo bad 3;;
|
||||
esac
|
||||
|
||||
case "$@" in
|
||||
*\:*) echo bad 4;;
|
||||
*) echo ok 4;;
|
||||
esac
|
||||
|
||||
IFS=$' \t\n'
|
||||
|
||||
bar=${*}
|
||||
foo=$*
|
||||
echo foo = "$foo"
|
||||
echo bar = "$bar"
|
||||
|
||||
foo1=$@
|
||||
bar1=${@}
|
||||
|
||||
echo foo1 = "$foo1"
|
||||
echo bar1 = "$bar1"
|
||||
|
||||
foo2="$*"
|
||||
bar2="${*}"
|
||||
|
||||
echo foo2 = "$foo2"
|
||||
echo bar2 = "$bar2"
|
||||
|
||||
eval foo3='$*' bar3='${*}'
|
||||
echo foo3 = "$foo3"
|
||||
echo bar3 = "$bar3"
|
||||
|
||||
case $* in
|
||||
*\ *) echo ok 1;;
|
||||
*) echo bad 1;;
|
||||
esac
|
||||
|
||||
case $@ in
|
||||
*\ *) echo ok 2;;
|
||||
*) echo bad 2;;
|
||||
esac
|
||||
|
||||
case "$*" in
|
||||
*\ *) echo ok 3;;
|
||||
*) echo bad 3;;
|
||||
esac
|
||||
|
||||
case "$@" in
|
||||
*\ *) echo ok 4;;
|
||||
*) echo bad 4;;
|
||||
esac
|
||||
|
||||
# tests for special expansion of "$*" and "${array[*]}" when used with other
|
||||
# expansions -- bugs through bash-2.05b
|
||||
${THIS_SH} ./dollar-star1.sub
|
||||
|
||||
exit 0
|
||||
@@ -0,0 +1,29 @@
|
||||
echo_argc()
|
||||
{
|
||||
echo $#
|
||||
}
|
||||
|
||||
a()
|
||||
{
|
||||
shift
|
||||
echo_argc "$@"
|
||||
echo_argc ${1:+"$@"}
|
||||
echo_argc "${1:+$@}"
|
||||
echo_argc 1 2 3
|
||||
}
|
||||
|
||||
b()
|
||||
{
|
||||
_IFS="$IFS"
|
||||
IFS="$1"
|
||||
shift
|
||||
echo_argc "$@"
|
||||
echo_argc ${1:+"$@"}
|
||||
echo_argc "${1:+$@}"
|
||||
echo_argc 1 2 3
|
||||
IFS="$_IFS"
|
||||
}
|
||||
|
||||
a "X" foo bar hoge
|
||||
|
||||
b "X" foo bar hoge
|
||||
@@ -0,0 +1,29 @@
|
||||
echo_argc()
|
||||
{
|
||||
echo $#
|
||||
}
|
||||
|
||||
a()
|
||||
{
|
||||
shift
|
||||
echo_argc "$@"
|
||||
echo_argc ${1:+"$@"}
|
||||
echo_argc "${1:+$@}"
|
||||
echo_argc 1 2 3
|
||||
}
|
||||
|
||||
b()
|
||||
{
|
||||
_IFS="$IFS"
|
||||
IFS="$1"
|
||||
shift
|
||||
echo_argc "$@"
|
||||
echo_argc ${1:+"$@"}
|
||||
echo_argc "${1:+$@}"
|
||||
echo_argc 1 2 3
|
||||
IFS="$_IFS"
|
||||
}
|
||||
|
||||
#a "X" foo bar hoge
|
||||
#echo
|
||||
b "X" foo bar hoge
|
||||
@@ -111,3 +111,11 @@ a|b|c
|
||||
a|b|c
|
||||
xa|xb|xc
|
||||
xa|xb|xc
|
||||
3
|
||||
3
|
||||
3
|
||||
3
|
||||
3
|
||||
3
|
||||
3
|
||||
3
|
||||
|
||||
+6
-6
@@ -6,15 +6,15 @@ after exec1.sub with args: 0
|
||||
after exec1.sub without args: 0
|
||||
./execscript: line 20: notthere: command not found
|
||||
127
|
||||
notthere: notthere: No such file or directory
|
||||
/tmp/bash: notthere: No such file or directory
|
||||
127
|
||||
/bin/sh: /bin/sh: cannot execute binary file
|
||||
126
|
||||
./execscript: line 32: /: is a directory
|
||||
./execscript: line 39: /: is a directory
|
||||
126
|
||||
/: /: cannot execute binary file
|
||||
126
|
||||
./execscript: line 39: .: /: is a directory
|
||||
./execscript: line 46: .: /: is a directory
|
||||
1
|
||||
127
|
||||
0
|
||||
@@ -22,11 +22,11 @@ this is bashenv
|
||||
./exec3.sub: line 3: /tmp/bash-notthere: No such file or directory
|
||||
./exec3.sub: line 3: exec: /tmp/bash-notthere: cannot execute: No such file or directory
|
||||
126
|
||||
./execscript: line 61: notthere: No such file or directory
|
||||
./execscript: line 68: notthere: No such file or directory
|
||||
127
|
||||
./execscript: line 64: notthere: No such file or directory
|
||||
./execscript: line 71: notthere: No such file or directory
|
||||
127
|
||||
./execscript: line 67: notthere: No such file or directory
|
||||
./execscript: line 74: notthere: No such file or directory
|
||||
127
|
||||
this is sh
|
||||
this is sh
|
||||
|
||||
@@ -0,0 +1,53 @@
|
||||
before exec1.sub: one two three
|
||||
calling exec1.sub
|
||||
aa bb cc dd ee
|
||||
after exec1.sub with args: 0
|
||||
|
||||
after exec1.sub without args: 0
|
||||
./execscript: line 20: notthere: command not found
|
||||
127
|
||||
/tmp/bash: notthere: No such file or directory
|
||||
127
|
||||
/bin/sh: /bin/sh: cannot execute binary file
|
||||
126
|
||||
./execscript: line 38: /: is a directory
|
||||
126
|
||||
/: /: cannot execute binary file
|
||||
126
|
||||
./execscript: line 45: .: /: is a directory
|
||||
1
|
||||
127
|
||||
0
|
||||
this is bashenv
|
||||
./exec3.sub: line 3: /tmp/bash-notthere: No such file or directory
|
||||
./exec3.sub: line 3: exec: /tmp/bash-notthere: cannot execute: No such file or directory
|
||||
126
|
||||
./execscript: line 67: notthere: No such file or directory
|
||||
127
|
||||
./execscript: line 70: notthere: No such file or directory
|
||||
127
|
||||
./execscript: line 73: notthere: No such file or directory
|
||||
127
|
||||
this is sh
|
||||
this is sh
|
||||
unset
|
||||
ok
|
||||
5
|
||||
./exec5.sub: line 4: exec: bash-notthere: not found
|
||||
127
|
||||
this is ohio-state
|
||||
0
|
||||
1
|
||||
1
|
||||
0
|
||||
42
|
||||
42
|
||||
0
|
||||
1
|
||||
1
|
||||
0
|
||||
0
|
||||
1
|
||||
0
|
||||
1
|
||||
testb
|
||||
+8
-1
@@ -21,8 +21,15 @@ notthere
|
||||
echo $?
|
||||
|
||||
# this is iffy, since the error messages may vary from system to system
|
||||
${THIS_SH} notthere
|
||||
# and /tmp might not exist
|
||||
ln -s ${THIS_SH} /tmp/bash 2>/dev/null
|
||||
if [ -f /tmp/bash ]; then
|
||||
/tmp/bash notthere
|
||||
else
|
||||
${THIS_SH} notthere
|
||||
fi
|
||||
echo $?
|
||||
rm -f /tmp/bash
|
||||
|
||||
# /bin/sh should be there on all systems
|
||||
${THIS_SH} /bin/sh
|
||||
|
||||
@@ -0,0 +1,105 @@
|
||||
export LC_ALL=C
|
||||
export LANG=C
|
||||
|
||||
if [ $UID -eq 0 ]; then
|
||||
echo "execscript: the test suite should not be run as root" >&2
|
||||
fi
|
||||
|
||||
set -- one two three
|
||||
echo before exec1.sub: "$@"
|
||||
echo calling exec1.sub
|
||||
./exec1.sub aa bb cc dd ee
|
||||
echo after exec1.sub with args: $?
|
||||
./exec1.sub
|
||||
echo after exec1.sub without args: $?
|
||||
|
||||
# set up a fixed path so we know notthere will not be found
|
||||
PATH=/usr/bin:/bin:/usr/local/bin:
|
||||
export PATH
|
||||
|
||||
notthere
|
||||
echo $?
|
||||
|
||||
# this is iffy, since the error messages may vary from system to system
|
||||
# and /tmp might not exist
|
||||
ln -s ${THIS_SH} /tmp/bash 2>/dev/null
|
||||
if [ -f /tmp/bash ]; then
|
||||
/tmp/bash notthere
|
||||
else
|
||||
${THIS_SH} notthere
|
||||
fi
|
||||
echo $?
|
||||
|
||||
# /bin/sh should be there on all systems
|
||||
${THIS_SH} /bin/sh
|
||||
echo $?
|
||||
|
||||
# try executing a directory
|
||||
/
|
||||
echo $?
|
||||
|
||||
${THIS_SH} /
|
||||
echo $?
|
||||
|
||||
# try sourcing a directory
|
||||
. /
|
||||
echo $?
|
||||
|
||||
# try sourcing a binary file -- post-2.04 versions don't do the binary file
|
||||
# check, and will probably fail with `command not found', or status 127
|
||||
. ${THIS_SH} 2>/dev/null
|
||||
echo $?
|
||||
|
||||
# post-bash-2.05 versions allow sourcing non-regular files
|
||||
. /dev/null
|
||||
echo $?
|
||||
|
||||
# kill two birds with one test -- test out the BASH_ENV code
|
||||
echo echo this is bashenv > /tmp/bashenv
|
||||
export BASH_ENV=/tmp/bashenv
|
||||
${THIS_SH} ./exec3.sub
|
||||
rm -f /tmp/bashenv
|
||||
unset BASH_ENV
|
||||
|
||||
# we're resetting the $PATH to empty, so this should be last
|
||||
PATH=
|
||||
|
||||
notthere
|
||||
echo $?
|
||||
|
||||
command notthere
|
||||
echo $?
|
||||
|
||||
command -p notthere
|
||||
echo $?
|
||||
|
||||
# but -p should guarantee that we find all the standard utilities, even
|
||||
# with an empty or unset $PATH
|
||||
command -p sh -c 'echo this is $0'
|
||||
unset PATH
|
||||
command -p sh -c 'echo this is $0'
|
||||
|
||||
# a bug in bash before bash-2.01 caused PATH to be set to the empty string
|
||||
# when command -p was run with PATH unset
|
||||
echo ${PATH-unset}
|
||||
|
||||
echo "echo ok" | ${THIS_SH} -t
|
||||
|
||||
${THIS_SH} ./exec2.sub
|
||||
echo $?
|
||||
|
||||
${THIS_SH} ./exec4.sub
|
||||
|
||||
# try exec'ing a command that cannot be found in $PATH
|
||||
${THIS_SH} ./exec5.sub
|
||||
|
||||
# this was a bug in bash versions before bash-2.04
|
||||
${THIS_SH} -c 'cat </dev/null | cat >/dev/null' >&-
|
||||
|
||||
# checks for proper return values in subshell commands with inverted return
|
||||
# values
|
||||
|
||||
${THIS_SH} ./exec6.sub
|
||||
|
||||
# checks for properly deciding what constitutes an executable file
|
||||
${THIS_SH} ./exec7.sub
|
||||
@@ -2300,6 +2300,11 @@ makunbound (name, vc)
|
||||
We also need to add it back into the correct hash table. */
|
||||
if (old_var && local_p (old_var) && variable_context == old_var->context)
|
||||
{
|
||||
/* Reset the attributes. Preserve the export attribute if the variable
|
||||
came from a temporary environment. Make sure it stays local, and
|
||||
make it invisible. */
|
||||
old_var->attributes = (exported_p (old_var) && tempvar_p (old_var)) ? att_exported : 0;
|
||||
VSETATTR (old_var, att_local);
|
||||
VSETATTR (old_var, att_invisible);
|
||||
FREE (value_cell (old_var));
|
||||
var_setvalue (old_var, (char *)NULL);
|
||||
|
||||
Reference in New Issue
Block a user