From 495aee441b75276e38c75694ccb455bb6463fdb9 Mon Sep 17 00:00:00 2001 From: Chet Ramey Date: Tue, 22 Nov 2011 19:11:26 -0500 Subject: [PATCH] Bash-4.2 distribution sources and documentation --- CHANGES | 385 + COMPAT | 48 +- CWRU/changelog | 1487 +- CWRU/misc/sigs.c | 4 +- ChangeLog | 1 + INSTALL | 4 +- MANIFEST | 44 +- Makefile.in | 35 +- NEWS | 96 + POSIX | 87 +- README | 18 +- aclocal.m4 | 52 + alias.c | 6 + arrayfunc.c | 83 +- arrayfunc.h | 11 +- autom4te.cache/output.0 | 31473 +++++++++++++++++++++++++++++ autom4te.cache/requests | 67 + autom4te.cache/traces.0 | 2515 +++ bashhist.c | 19 +- bashline.c | 85 +- braces.c | 20 +- builtins/Makefile.in | 1 + builtins/cd.def | 43 +- builtins/common.c | 6 +- builtins/common.h | 2 +- builtins/complete.def | 4 +- builtins/declare.def | 26 +- builtins/evalfile.c | 7 +- builtins/evalstring.c | 8 +- builtins/exec.def | 28 +- builtins/fc.def | 18 +- builtins/getopts.def | 4 +- builtins/hash.def | 9 +- builtins/help.def | 8 +- builtins/kill.def | 6 +- builtins/let.def | 2 +- builtins/mapfile.def | 29 +- builtins/mkbuiltins.c | 11 +- builtins/printf.def | 149 +- builtins/read.def | 22 +- builtins/set.def | 5 +- builtins/setattr.def | 8 +- builtins/shopt.def | 6 +- builtins/source.def | 7 + builtins/test.def | 8 +- builtins/trap.def | 36 +- builtins/ulimit.def | 6 +- command.h | 5 +- config.h.in | 26 +- configure | 886 +- configure.in | 21 +- configure.in.bash40 | 1145 ++ configure.in.orig | 1145 ++ configure.in.save | 1145 ++ doc/FAQ | 126 +- doc/Makefile.in | 2 +- doc/bash.0 | 2338 ++- doc/bash.1 | 580 +- doc/bash.html | 597 +- doc/bash.pdf | Bin 288296 -> 296259 bytes doc/bash.ps | 13156 ++++++------ doc/bashref.dvi | Bin 663456 -> 680368 bytes doc/bashref.html | 5319 ++--- doc/bashref.info | 1164 +- doc/bashref.pdf | Bin 559434 -> 570072 bytes doc/bashref.ps | 16213 +++++++-------- doc/bashref.texi | 402 +- doc/builtins.0 | 696 +- doc/builtins.ps | 3429 ++-- doc/rbash.0 | 4 +- doc/rbash.ps | 12 +- doc/version.texi | 12 +- examples/scripts/bash-hexdump.sh | 67 + examples/scripts/timeout3 | 85 +- examples/startup-files/bashrc | 7 +- execute_cmd.c | 252 +- expr.c | 178 +- externs.h | 35 +- findcmd.c | 9 + general.c | 26 + general.h | 6 +- include/chartypes.h | 2 +- include/filecntl.h | 8 + include/posixselect.h | 47 + include/shmbchar.h | 353 + include/shmbutil.h | 84 +- include/typemax.h | 15 + input.c | 37 +- input.h | 1 + jobs.c | 64 +- jobs.h | 5 + lib/glob/Makefile.in | 11 +- lib/glob/gmisc.c | 314 + lib/glob/smatch.c | 16 +- lib/glob/xmbsrtowcs.c | 106 +- lib/malloc/Makefile.in | 1 + lib/readline/Makefile.in | 11 +- lib/readline/bind.c | 28 +- lib/readline/callback.c | 9 + lib/readline/complete.c | 260 +- lib/readline/doc/history.texi | 2 +- lib/readline/doc/hstech.texi | 6 +- lib/readline/doc/hsuser.texi | 13 +- lib/readline/doc/rlman.texi | 2 +- lib/readline/doc/rltech.texi | 21 +- lib/readline/doc/rluser.texi | 86 +- lib/readline/doc/rluserman.texi | 2 +- lib/readline/doc/version.texi | 12 +- lib/readline/funmap.c | 7 +- lib/readline/histexpand.c | 121 +- lib/readline/histfile.c | 17 +- lib/readline/history.c | 2 +- lib/readline/input.c | 14 +- lib/readline/isearch.c | 37 +- lib/readline/keymaps.c | 6 +- lib/readline/keymaps.h | 5 - lib/readline/kill.c | 6 +- lib/readline/misc.c | 8 +- lib/readline/nls.c | 2 +- lib/readline/posixselect.h | 47 + lib/readline/readline.c | 6 +- lib/readline/readline.h | 70 +- lib/readline/rlprivate.h | 35 +- lib/readline/rltty.c | 4 +- lib/readline/savestring.c | 6 +- lib/readline/search.c | 2 +- lib/readline/shell.c | 4 +- lib/readline/signals.c | 1 + lib/readline/terminal.c | 6 +- lib/readline/text.c | 65 +- lib/readline/tilde.c | 4 +- lib/readline/util.c | 51 +- lib/readline/vi_mode.c | 624 +- lib/readline/xfree.c | 50 + lib/readline/xmalloc.c | 10 - lib/sh/Makefile.in | 26 +- lib/sh/casemod.c | 7 + lib/sh/dprintf.c | 70 + lib/sh/eaccess.c | 25 +- lib/sh/fnxform.c | 199 + lib/sh/fpurge.c | 96 +- lib/sh/mbscasecmp.c | 78 + lib/sh/mbschr.c | 78 + lib/sh/oslib.c | 9 +- lib/sh/shmatch.c | 2 +- lib/sh/shmbchar.c | 92 + lib/sh/shquote.c | 10 +- lib/sh/snprintf.c | 2 +- lib/sh/strcasestr.c | 46 + lib/sh/strchrnul.c | 144 + lib/sh/strftime.c | 49 +- lib/sh/strtrans.c | 34 +- lib/sh/tmpfile.c | 2 +- lib/sh/unicode.c | 235 + lib/sh/wcswidth.c | 46 + lib/tilde/tilde.c | 4 +- locale.c | 2 +- nojobs.c | 5 + parse.y | 273 +- parser-built | 102 +- parser.h | 12 +- patchlevel.h | 4 +- patchlevel.h.rej | 13 + patchlevel.h~ | 30 + pathexp.c | 29 + pcomplete.h | 1 + pcomplib.c | 3 + po/LINGUAS | 2 +- po/af.gmo | Bin 1231 -> 1231 bytes po/af.po | 611 +- po/bash.pot | 611 +- po/bg.gmo | Bin 34844 -> 34844 bytes po/bg.po | 611 +- po/ca.gmo | Bin 9819 -> 9819 bytes po/ca.po | 611 +- po/cs.gmo | Bin 152764 -> 134220 bytes po/cs.po | 803 +- po/de.gmo | Bin 45438 -> 45776 bytes po/de.po | 776 +- po/en@boldquot.gmo | Bin 159145 -> 161163 bytes po/en@boldquot.po | 679 +- po/en@quot.gmo | Bin 157609 -> 159611 bytes po/en@quot.po | 679 +- po/eo.gmo | Bin 141873 -> 116790 bytes po/eo.po | 626 +- po/es.gmo | Bin 151298 -> 133409 bytes po/es.po | 776 +- po/et.gmo | Bin 12257 -> 12257 bytes po/et.po | 611 +- po/fi.gmo | Bin 0 -> 120517 bytes po/fi.po | 5507 +++++ po/fr.gmo | Bin 26542 -> 138545 bytes po/fr.po | 3018 ++- po/ga.gmo | Bin 0 -> 62011 bytes po/ga.po | 4355 ++++ po/hu.gmo | Bin 9311 -> 134317 bytes po/hu.po | 5503 +++-- po/id.gmo | Bin 149543 -> 131500 bytes po/id.po | 767 +- po/ja.gmo | Bin 8183 -> 145905 bytes po/ja.po | 3432 +++- po/lt.gmo | Bin 30754 -> 30079 bytes po/lt.po | 619 +- po/nl.gmo | Bin 150781 -> 131870 bytes po/nl.po | 1074 +- po/pl.gmo | Bin 24983 -> 24983 bytes po/pl.po | 613 +- po/pt_BR.gmo | Bin 9658 -> 9658 bytes po/pt_BR.po | 611 +- po/ro.gmo | Bin 9415 -> 9415 bytes po/ro.po | 611 +- po/ru.gmo | Bin 9142 -> 9142 bytes po/ru.po | 611 +- po/sk.gmo | Bin 150575 -> 132621 bytes po/sk.po | 793 +- po/sv.gmo | Bin 146044 -> 128852 bytes po/sv.po | 787 +- po/tr.gmo | Bin 24589 -> 24589 bytes po/tr.po | 613 +- po/uk.gmo | Bin 0 -> 138956 bytes po/uk.po | 5571 +++++ po/vi.gmo | Bin 161257 -> 142862 bytes po/vi.po | 781 +- po/zh_CN.gmo | Bin 0 -> 123267 bytes po/zh_CN.po | 5316 +++++ po/zh_TW.gmo | Bin 5993 -> 5993 bytes po/zh_TW.po | 611 +- print_cmd.c | 23 +- redir.c | 85 +- shell.c | 30 +- shell.h | 4 + sig.c | 42 +- subst.c | 784 +- subst.h | 32 +- support/signames.c | 18 +- test.c | 9 +- tests/alias1.sub | 20 + tests/arith.right | 22 +- tests/arith.tests | 5 + tests/arith3.sub | 45 + tests/arith4.sub | 10 + tests/array.right | 29 + tests/array.tests | 2 + tests/array10.sub | 52 + tests/assoc5.sub | 27 + tests/assoc6.sub | 146 + tests/braces.right | 1 + tests/braces.tests | 3 + tests/builtins.right | 5 +- tests/builtins.tests | 3 + tests/builtins3.sub | 14 + tests/comsub-eof4.sub | 4 + tests/comsub-eof5.sub | 9 + tests/comsub-posix.right | 16 + tests/comsub-posix.tests | 12 + tests/comsub-posix2.sub | 16 + tests/comsub-posix3.sub | 22 + tests/comsub1.sub | 48 + tests/dbg-support3.sub | 39 + tests/dollar-at3.sub | 9 + tests/dollar-star4.sub | 9 + tests/dollar-star5.sub | 16 + tests/errors.right | 6 +- tests/exec.right | 13 +- tests/exec9.sub | 20 + tests/execscript | 12 + tests/exp.right | 4 + tests/exp.tests | 2 + tests/exp3.sub | 7 + tests/exp4.sub | 10 + tests/func.right | 13 + tests/func.tests | 3 + tests/func4.sub | 39 + tests/glob.tests | 388 + tests/globstar.right | 155 + tests/globstar.tests | 41 + tests/globstar1.sub | 21 + tests/histexp.tests | 2 +- tests/history.right | 4 +- tests/history2.sub | 10 + tests/intl.right | 8 +- tests/intl.tests | 6 +- tests/intl2.sub | 11 + tests/lastpipe.right | 10 + tests/lastpipe.tests | 58 + tests/lastpipe1.sub | 5 + tests/mapfile.right | 80 +- tests/new-exp.right | 38 +- tests/new-exp.tests | 6 +- tests/new-exp8.sub | 95 + tests/nquote1.sub | 6 + tests/posixexp.right | 41 + tests/posixexp.tests | 77 + tests/posixexp1.sub | 30 + tests/posixexp2.right | 40 + tests/posixexp2.sub | 21 + tests/posixexp2.tests | 47 + tests/posixpipe.right | 41 + tests/posixpipe.tests | 43 + tests/printf.right | Bin 1510 -> 3079 bytes tests/printf.tests | 5 + tests/printf1.sub | 335 + tests/printf2.sub | 6 + tests/printf3.sub | 53 + tests/read.right | 2 +- tests/read5.sub | 3 +- tests/rsh.right | 2 +- tests/run-globstar | 4 + tests/run-lastpipe | 2 + tests/run-minimal | 2 +- tests/run-posixexp | 2 + tests/run-posixexp2 | 2 + tests/run-posixpipe | 2 + tests/run-vredir | 2 + tests/set-x1.sub | 25 + tests/shopt.right | 6 + tests/test.right | 8 +- tests/test.tests | 12 + tests/trap.right | 1 + tests/trap.tests | 1 - tests/trap3.sub | 9 + tests/type.right | 16 + tests/type.tests | 2 + tests/type2.sub | 16 + tests/type3.sub | 18 + tests/vredir.right | 94 + tests/vredir.tests | 46 + tests/vredir1.sub | 17 + tests/vredir2.sub | 52 + tests/vredir3.sub | 8 + tests/vredir4.sub | 22 + tests/vredir5.sub | 23 + tests/vredir6.sub | 14 + trap.c | 74 +- trap.h | 10 +- unwind_prot.c | 33 +- variables.c | 147 +- variables.h | 8 +- version.c | 4 +- y.tab.c | 1467 +- y.tab.h | 102 +- 341 files changed, 108751 insertions(+), 36060 deletions(-) create mode 120000 ChangeLog create mode 100644 autom4te.cache/output.0 create mode 100644 autom4te.cache/requests create mode 100644 autom4te.cache/traces.0 create mode 100644 configure.in.bash40 create mode 100644 configure.in.orig create mode 100644 configure.in.save create mode 100644 examples/scripts/bash-hexdump.sh create mode 100644 include/posixselect.h create mode 100644 include/shmbchar.h create mode 100644 lib/glob/gmisc.c create mode 100644 lib/readline/posixselect.h create mode 100644 lib/readline/xfree.c create mode 100644 lib/sh/dprintf.c create mode 100644 lib/sh/fnxform.c create mode 100644 lib/sh/mbscasecmp.c create mode 100644 lib/sh/mbschr.c create mode 100644 lib/sh/shmbchar.c create mode 100644 lib/sh/strcasestr.c create mode 100644 lib/sh/strchrnul.c create mode 100644 lib/sh/unicode.c create mode 100644 lib/sh/wcswidth.c create mode 100644 patchlevel.h.rej create mode 100644 patchlevel.h~ create mode 100644 po/fi.gmo create mode 100644 po/fi.po create mode 100644 po/ga.gmo create mode 100644 po/ga.po create mode 100644 po/uk.gmo create mode 100644 po/uk.po create mode 100644 po/zh_CN.gmo create mode 100644 po/zh_CN.po create mode 100644 tests/alias1.sub create mode 100644 tests/arith3.sub create mode 100644 tests/arith4.sub create mode 100644 tests/array10.sub create mode 100644 tests/assoc5.sub create mode 100644 tests/assoc6.sub create mode 100644 tests/builtins3.sub create mode 100644 tests/comsub-eof4.sub create mode 100644 tests/comsub-eof5.sub create mode 100644 tests/comsub-posix2.sub create mode 100644 tests/comsub-posix3.sub create mode 100644 tests/comsub1.sub create mode 100644 tests/dbg-support3.sub create mode 100644 tests/dollar-at3.sub create mode 100644 tests/dollar-star4.sub create mode 100644 tests/dollar-star5.sub create mode 100644 tests/exec9.sub create mode 100644 tests/exp3.sub create mode 100644 tests/exp4.sub create mode 100644 tests/func4.sub create mode 100644 tests/glob.tests create mode 100644 tests/globstar.right create mode 100644 tests/globstar.tests create mode 100644 tests/globstar1.sub create mode 100644 tests/history2.sub create mode 100644 tests/intl2.sub create mode 100644 tests/lastpipe.right create mode 100644 tests/lastpipe.tests create mode 100644 tests/lastpipe1.sub create mode 100644 tests/new-exp8.sub create mode 100644 tests/nquote1.sub create mode 100644 tests/posixexp.right create mode 100644 tests/posixexp.tests create mode 100644 tests/posixexp1.sub create mode 100644 tests/posixexp2.right create mode 100644 tests/posixexp2.sub create mode 100644 tests/posixexp2.tests create mode 100644 tests/posixpipe.right create mode 100644 tests/posixpipe.tests create mode 100644 tests/printf1.sub create mode 100644 tests/printf2.sub create mode 100644 tests/printf3.sub create mode 100644 tests/run-globstar create mode 100644 tests/run-lastpipe create mode 100644 tests/run-posixexp create mode 100644 tests/run-posixexp2 create mode 100644 tests/run-posixpipe create mode 100644 tests/run-vredir create mode 100644 tests/set-x1.sub create mode 100644 tests/trap3.sub create mode 100644 tests/type2.sub create mode 100644 tests/type3.sub create mode 100644 tests/vredir.right create mode 100644 tests/vredir.tests create mode 100644 tests/vredir1.sub create mode 100644 tests/vredir2.sub create mode 100644 tests/vredir3.sub create mode 100644 tests/vredir4.sub create mode 100644 tests/vredir5.sub create mode 100644 tests/vredir6.sub diff --git a/CHANGES b/CHANGES index 359e10d7..84e1dbda 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,388 @@ +This document details the changes between this version, bash-4.2-release, +and the previous version, bash-4.2-rc2. + +1. Changes to Bash + +a. Fixed a bug that caused some variables to be clobbered by a longjmp, + resulting in stack corruption. + +------------------------------------------------------------------------------ +This document details the changes between this version, bash-4.2-rc2, +and the previous version, bash-4.2-rc1. + +1. Changes to Bash + +a. Changes to bash_directory_completion_hook so that it's assigned to the + readline rl_directory_rewrite_hook variable, which modifies the directory + name passed to opendir without modifying the directory name the user + typed. + +b. Fixed bug in select builtin that caused it to not terminate correctly if + the read timed out due to $TMOUT. + +c. Fixed a problem that resulted in non-repeatable sequences of random + numbers when RANDOM=0. + +------------------------------------------------------------------------------ +This document details the changes between this version, bash-4.2-rc1, +and the previous version, bash-4.2-beta. + +1. Changes to Bash + +a. Fixed a bug that caused some redirection errors to leak file descriptors. + +b. Fixed a bug that caused unary `+' and `-' arithmetic operators to have a + higher precedence than unary `!' and `~'. + +c. Fixed a bug that caused simple commands in a pipeline to affect the exit + status ($?) seen by subsequent pipeline commands. + +d. A number of cygwin-specific changes to avoid the use of text-mode files + and file access, and to make sure that \r is handled correctly. + +e. Fixed a bug that caused the read builtin to not return failure if an + attempt is made to assign to a readonly variable. + +f. Fixed a bug that caused some builtin usage messages to not be translated. + +g. Fixed a bug that caused the getopts builtin to not return failure if an + attempt is made to assign to a readonly variable. Now it returns 2. + +h. Fixed the cd and pwd builtins to return failure if PWD is readonly and + cannot be assigned to. + +i. Added code to check the return value of access(2) on Solaris systems, + since it returns success for executable tests (e.g., `test -x') when + run by root, even if the file permissions don't allow execution. + +2. Changes to Readline + +a. Fixed a bug that caused directory names in words to be completed to not + be dequoted correctly. + +3. New Features in Bash + +4. New Features in Readline + +------------------------------------------------------------------------------ +This document details the changes between this version, bash-4.2-beta, +and the previous version, bash-4.2-alpha. + +1. Changes to Bash + +a. Fixed a bug that caused the \W prompt string escape to not add a closing + NULL. + +b. Fixed a bug that caused partially-quoted words that were not subject to + word splitting to retained quoted NULLs. + +c. Added considerable efficiency speedups when pattern matching in multibyte + locales by skipping multibyte character functions where possible. + +d. Added considerable speedups to variable expansion when in multibyte locales. + +e. Fixed a bug that caused the expansion of $* when there are no positional + parameters to cause the shell to dump core when used in a pattern + matching context. + +f. Fixed a bug that caused variable expansions preceding regular builtins to + not change the shell environment during their execution. + +2. Changes to Readline + +a. Fixed a bug that made an explicit argument of 0 to yank-last-arg behave + as if it were a negative argument. + +------------------------------------------------------------------------------ +This document details the changes between this version, bash-4.2-alpha, +and the previous version, bash-4.1-release. + +1. Changes to Bash + +a. Fixed a bug in the parser when processing alias expansions containing + quoted newlines. + +b. Fixed a memory leak in associative array expansion. + +c. Fixed a bug that caused quoted here-strings to be requoted when printed. + +d. Fixed a bug in arithmetic expansion that caused the index in an array + expansion to be evaluated twice under certain circumstances. + +e. Fixed several bugs with the expansion and display of variables that have + been given attributes but not values and are technically unset. + +f. Fixed a bug that caused core dumps when using filename completion that + expands to a filename containing a globbing character. + +g. Fixed a bug that caused assignment statements preceding a special builtin + when running in Posix mode to not persist after the builtin completed + when the special builtin was executed in a shell function without any + local variables. + +h. Fixed a bug that caused a command to remain in the hash table even after + `hash command' did not find anything if there was already an existing + hashed pathname. + +i. Fixed several bugs caused by executing unsafe functions from a signal + handler in the cases where a signal handler is executed immediately + rather than setting a flag for later execution. + +j. Fixed a bug that caused some internal flag variables to be set + incorrectly if `read -t' timed out. + +k. Fixed a Posix compatibility issue by making sure that a backslash escaping + a `}' within a double-quoted ${...} parameter expansion is removed as part + of the parameter expansion. + +l. Fixed a bug that caused execution of a trap to overwrite PIPESTATUS. + +m. Fixed a bug that caused here documents to not be displayed correctly + when attached to commands inside compound commands. + +n. Fixed a bug that caused the printf builtin to use the wrong precision + when using the `*' modifier. + +o. Fixed a bug that caused an arriving SIGCHLD to interrupt output functions + like those invoked by echo or printf. + +p. Changed to use a more robust mechanism than eaccess(2) when test is + checking filenames for execution permission. + +q. Fixed a bug that caused spurious semicolons to be added into the command + history in certain cases. + +r. Fixed a bug that caused the shell to free non-allocated memory when + unsetting element 0 of an associative array after it was assigned + implicitly. + +s. Fixed a bug that could cause the shell to dump core if using the `v' + vi editing command on a multi-line command. + +t. Fixed a bug that left FIFOs opened by process substitutions open long + enough to potentially cause file descriptor exhaustion when running a + shell function or shell builtin. + +u. Fixed a bug that caused the history expansion functions to not recognize + process substitution or extended glob patterns as single words. + +v. Fixed a bug that caused restricted shells to set a restricted command's + exit status incorrectly. + +w. Fixed a bug that caused bash to ignore the wrong set of filenames when + completing a command using the `complete-filename' readline command. + +x. Fixed a bug that caused a -PID argument following a -s sig or -n sig to + not be interpreted as a signal specification. + +y. Changed posix-mode behavior of a parse error in a `.' script or `eval' + command to exit the shell under Posix-specified conditions. Previous + versions printed a warning. + +z. Fixed a bug in \W prompt expansion that resulted in incorrect expansion + in the event of overlapping strings. + +aa. Fixed a bug that caused the := parameter expansion operator to return the + wrong value as the result of the expansion. + +bb. When in Posix mode, a single quote is not treated specially in a + double-quoted ${...} expansion, unless the expansion operator is + # or % or the non-Posix `//', `^', and `,'. In particular, it does + not define a new quoting context. This is from Posix interpretation 221. + +cc. Fixed a bug that inadvertently allowed program names containing slashes + to be entered into the command hash table. + +dd. Fixed a bug that caused the select builtin to incorrectly compute the + display width of the arguments in the presence of multibyte characters. + +ee. Fixed a bug that caused bash to not change the xtrace file descriptor if + BASH_XTRACEFD was found in the shell environment at startup. + +ff. Fixed a memory leak in the pattern removal parameter expansion. + +gg. Fixed a bug that caused SIGINT to fail to interrupt a nested loop if the + loop was in a pipeline. + +hh. Fixed a problem in $(...) parsing that caused the parser to add an extra + space to a here-document delimiter if the first word contained a `/'. + +ii. Fixed a bug that caused functions defined with the `function' reserved + word to require braces around the function body. + +jj. Fixed a bug that caused bash to dump core when a variable expansion being + used as an array subscript failed. + +kk. Fixed a bug that caused bash to dump core if the case-modification + expansions were used on a variable with a null value. + +ll. Fixed a bug that caused partially-quoted strings to be split incorrectly + if a variable with a null value was expanded within double quotes. + +mm. The pattern substitution word expansion has been sped up dramatically + when running in a locale with multibyte characters. + +nn. Fixed a bug that caused history -a to not write the correct lines to + the history file if all the new lines in the history list were added + since the last time the history file was read or written. + +oo. Fixed a bug that caused completion of a word with an unclosed `` command + substitution to set the prompt incorrectly. + +pp. Fixed a bug that caused extended globbing patterns in $HISTIGNORE or + $GLOBIGNORE to be incorrectly scanned. + +qq. Fixed a bug caused by closing file descriptors 3-20 on shell startup. The + shell now sets them to close-on-exec. + +rr. Fixed a bug that caused the exit status of `exec file' to be set incorrectly + if `file' was a directory. + +ss. Fixed a bug in the `.' builtin to make a non-interactive posix-mode shell + exit if the file argument to `.' is not found. Prefixing exec with + `command' makes the shell not exit. Posix requires this behavior. + +tt. Fixed a bug that caused `sh -c 'command exec; exit 1' to hang. + +uu. Fixed a bug in $(...) command substitution parsing that caused the shell + to treat backslash-newline incorrectly when parsing a comment. + +vv. Fixed bug that caused brace expansion sequence generation to misbehave + when supplied integers greater than 2**31 - 1. + +ww. Fixed a bug that caused failure to save file descriptors for redirections + to corrupt shell file descriptors. + +xx. Fixed a bug that caused bash-forward-shellword to not correctly handle + quoted strings. + +2. Changes to Readline + +a. Fixed a bug that caused the unconverted filename to be added to the list of + completions when the application specified filename conversion functions. + +b. Fixed a bug that caused the wrong filename to be passed to opendir when the + application has specified a filename dequoting function. + +c. Fixed a bug when repeating a character search in vi mode in the case where + there was no search to repeat. + +d. When show-all-if-ambiguous is set, the completion routines no longer insert + a common match prefix that is shorter than the text being completed. + +e. The full set of vi editing commands may now be used in callback mode. + +f. Fixed a bug that caused readline to not update its idea of the terminal + dimensions while running in `no-echo' mode. + +h. Fixed a bug that caused readline to dump core if an application called + rl_prep_terminal without setting rl_instream. + +i. Fixed a bug that caused meta-prefixed characters bound to incremental + search forward or backward to not be recognized if they were typed + subsequently. + +j. The incremental search code treats key sequences that map to the same + functions as (default) ^G, ^W, and ^Y as equivalent to those characters. + +k. Fixed a bug in menu-complete that caused it to misbehave with large + negative argument. + +l. Fixed a bug that caused vi-mode yank-last-arg to ring the bell when invoked + at the end of the line. + +3. New Features in Bash + +a. `exec -a foo' now sets $0 to `foo' in an executable shell script without a + leading #!. + +b. Subshells begun to execute command substitutions or run shell functions or + builtins in subshells do not reset trap strings until a new trap is + specified. This allows $(trap) to display the caller's traps and the + trap strings to persist until a new trap is set. + +c. `trap -p' will now show signals ignored at shell startup, though their + disposition still cannot be modified. + +d. $'...', echo, and printf understand \uXXXX and \UXXXXXXXX escape sequences. + +e. declare/typeset has a new `-g' option, which creates variables in the + global scope even when run in a shell function. + +f. test/[/[[ have a new -v variable unary operator, which returns success if + `variable' has been set. + +g. Posix parsing changes to allow `! time command' and multiple consecutive + instances of `!' (which toggle) and `time' (which have no cumulative + effect). + +h. Posix change to allow `time' as a command by itself to print the elapsed + user, system, and real times for the shell and its children. + +j. $((...)) is always parsed as an arithmetic expansion first, instead of as + a potential nested command substitution, as Posix requires. + +k. A new FUNCNEST variable to allow the user to control the maximum shell + function nesting (recursive execution) level. + +l. The mapfile builtin now supplies a third argument to the callback command: + the line about to be assigned to the supplied array index. + +m. The printf builtin has a new %(fmt)T specifier, which allows time values + to use strftime-like formatting. + +n. There is a new `compat41' shell option. + +o. The cd builtin has a new Posix-mandated `-e' option. + +p. Negative subscripts to indexed arrays, previously errors, now are treated + as offsets from the maximum assigned index + 1. + +q. Negative length specifications in the ${var:offset:length} expansion, + previously errors, are now treated as offsets from the end of the variable. + +r. Parsing change to allow `time -p --'. + +s. Posix-mode parsing change to not recognize `time' as a keyword if the + following token begins with a `-'. This means no more Posix-mode + `time -p'. Posix interpretation 267. + +t. There is a new `lastpipe' shell option that runs the last command of a + pipeline in the current shell context. The lastpipe option has no + effect if job control is enabled. + +u. History expansion no longer expands the `$!' variable expansion. + +v. Posix mode shells no longer exit if a variable assignment error occurs + with an assignment preceding a command that is not a special builtin. + +w. Non-interactive mode shells exit if -u is enabled and an attempt is made + to use an unset variable with the % or # expansions, the `//', `^', or + `,' expansions, or the parameter length expansion. + +x. Posix-mode shells use the argument passed to `.' as-is if a $PATH search + fails, effectively searching the current directory. Posix-2008 change. + +4. New Features in Readline + +a. The history library does not try to write the history filename in the + current directory if $HOME is unset. This closes a potential security + problem if the application does not specify a history filename. + +b. New bindable variable `completion-display-width' to set the number of + columns used when displaying completions. + +c. New bindable variable `completion-case-map' to cause case-insensitive + completion to treat `-' and `_' as identical. + +d. There are new bindable vi-mode command names to avoid readline's case- + insensitive matching not allowing them to be bound separately. + +e. New bindable variable `menu-complete-display-prefix' causes the menu + completion code to display the common prefix of the possible completions + before cycling through the list, instead of after. + +------------------------------------------------------------------------------ This document details the changes between this version, bash-4.1-rc, and the previous version, bash-4.1-beta. diff --git a/COMPAT b/COMPAT index 3210ccac..5b63b9c3 100644 --- a/COMPAT +++ b/COMPAT @@ -295,7 +295,8 @@ version and versions 2.0 and above. 37. Bash-4.0 now allows SIGCHLD to interrupt the wait builtin, as Posix specifies, so the SIGCHLD trap is no longer always invoked once per - exiting child if you are using `wait' to wait for all children. + exiting child if you are using `wait' to wait for all children. As + of bash-4.2, this is the status quo only when in posix mode. 38. Since bash-4.0 now follows Posix rules for finding the closing delimiter of a $() command substitution, it will not behave as previous versions @@ -330,35 +331,58 @@ version and versions 2.0 and above. 44. Bash-4.1 uses the current locale when comparing strings using the < and > operators to the `[[' command. This can be reverted to the previous - behavior by setting one of the `compatNN' shopt options. + behavior (ASCII collating and strcmp(3)) by setting one of the + `compatNN' shopt options, where NN is less than 41. + +45. Command substitutions now remove the caller's trap strings when trap is + run to set a new trap in the subshell. Previous to bash-4.2, the old + trap strings persisted even though the actual signal handlers were reset. + +46. When in Posix mode, a single quote is not treated specially in a + double-quoted ${...} expansion, unless the expansion operator is + # or % or the new `//', `^', or `,' expansions. In particular, it + does not define a new quoting context. This is from Posix interpretation + 221. + +47. Posix mode shells no longer exit if a variable assignment error occurs + with an assignment preceding a command that is not a special builtin. + Shell Compatibility Level ========================= Bash-4.0 introduced the concept of a `shell compatibility level', specified -as a set of options to the shopt builtin (compat31, compat32, compat40 at -this writing). There is only one current compatibility level -- each -option is mutually exclusive. This list does not mention behavior that is -standard for a particular version (e.g., setting compat32 means that quoting -the rhs of the regexp matching operator quotes special regexp characters in -the word, which is default behavior in bash-3.2 and above). +as a set of options to the shopt builtin (compat31, compat32, compat40, and +compat41 at this writing). There is only one current compatibility level -- +each option is mutually exclusive. This list does not mention behavior +that is standard for a particular version (e.g., setting compat32 means that +quoting the rhs of the regexp matching operator quotes special regexp +characters in the word, which is default behavior in bash-3.2 and above). compat31 set - the < and > operators to the [[ command do not consider the current - locale when comparing strings + locale when comparing strings; they use ASCII ordering - quoting the rhs of the regexp matching operator (=~) has no special effect compat32 set - the < and > operators to the [[ command do not consider the current - locale when comparing strings + locale when comparing strings; they use ASCII ordering compat40 set - the < and > operators to the [[ command do not consider the current - locale when comparing strings + locale when comparing strings; they use ASCII ordering - interrupting a command list such as "a ; b ; c" causes the execution - of the entire list to be aborted + of the entire list to be aborted (in versions before bash-4.0, + interrupting one command in a list caused the next to be executed) +compat41 set + - interrupting a command list such as "a ; b ; c" causes the execution + of the entire list to be aborted (in versions before bash-4.0, + interrupting one command in a list caused the next to be executed) + - when in posix mode, single quotes in the `word' portion of a + double-quoted parameter expansion define a new quoting context and + are treated specially ------------------------------------------------------------------------------- Copying and distribution of this file, with or without modification, diff --git a/CWRU/changelog b/CWRU/changelog index 085fdbd7..bcc66573 100644 --- a/CWRU/changelog +++ b/CWRU/changelog @@ -6088,7 +6088,8 @@ lib/readline/complete.c - new variable, rl_menu_completion_entry_function, generator for rl_menu_complete - new menu completion `browsing' implementation, with several - improvements over the old code. Inspired by Sami + improvements over the old code. Inspired by Sami Pietila + lib/readline/readline.h - extern declaration for rl_menu_completion_entry_function @@ -9324,3 +9325,1487 @@ doc/bash.1 [bash-4.1 frozen] + + 12/31 + ----- +[bash-4.1 released] + + 1/5/2010 + -------- +doc/bashref.texi + - document compat32 and compat40 shopt options. Omission pointed out + by Dilyan Palauzov + + 1/6 + --- +lib/readline/complete.c + - use `convfn' (converted filename) instead of entry->d_name (filename + read from file system) when adding partial or full completions to + the command line. Bug and fix from Guillaume Outters + + + 1/7 + --- +builtins/printf.def + - fix prototype in extern declaration for vsnprintf. Fix for bug + reported by Yann Rouillard + + 1/9 + --- +parse.y + - fix shell_getc to handle alias expansions containing quoted + newlines. Problems in bash-4.1 with aliases containing quoted + newlines in the middle of and at the end of their expansion. + Fix for bug reported by Jonathan Claggett + + - change mk_alexpansion to not append a space to an alias + expansion ending with a newline. Works with shell_getc + + 1/11 + ---- +lib/glob/Makefile.in + - add dependencies on shell.h and pathnames.h. From Mike Frysinger + + + 1/15 + ---- +doc/{bash.1,{bashref,version}.texi},lib/readine/doc/rluser.texi + - some typo fixes from Aharon Robbins + - added descriptions of ENV, COPROC, and MAPFILE variables + - added descriptions of READLINE_LINE and READLINE_POINT + + 1/21 + ---- +arrayfunc.c + - free `akey', the word-expanded index into the assoc array to avoid + mem leak in array_value_internal + - free index into assoc array in unbind_array_element + - change array_value_internal to take an additional argument: an + arrayind_t *. If not null, an index to an indexed array is + returned there. If not an indexed array or subscript is @ or + *, the value is unchanged + + 1/22 + ---- +builtins/ulimit.def + - include if we found it during configure and we don't + have resources. Fixes omission reported by Joachim Schmitz + + +{configure,config.h}.in + - check for , define HAVE_ULIMIT_H if found + +lib/sh/oslib.c + - include for extern declaration for kill(2) if + HAVE_KILLPG not defined + +jobs.c + - if HAVE_KILLPG is not defined, add an extern prototype decl for + killpg() + + 1/24 + ---- +print_cmd.c + - when printing here-string redirections, don't quote the string. The + original quotes, if any, are still in place and don't need to be + requoted. Fixes bug reported by Arfrever Frehtes Taifersar Arahesis + + +subst.c + - fix array_length_reference to return 0 for variables that have not + been assigned a value. Fixes bug reported by Mart Frauenlab + , but is not backwards compatible + +arrayfunc.[ch] + - change array_value to take a new arrayind_t *indp parameter like + get_array_value; changed extern prototype declaration + +subst.c + - changed callers of array_value to add extra parameter + +expr.c + - change expr_streval to set a new `lvalue' parameter with information + about the string being evaluated: string, value, array index (if + any), variable evaluated (if set). + - saving and restoring current context now saves and restores the + current `lvalue' + - new function expr_bind_array_element, binds an array element with an + already-computed index to a specified value + - anywhere we set the current token to a string (STR), save and set + the current lvalue + - change calls to expr_bind_variable to check whether or not the + current lvalue indicates an indexed array was evaluated, and, if so, + call expr_bind_array_element using the already-computed index + (curlval.ind). Fixes problems with dynamic variables (e.g., RANDOM) + in array indices with {pre,post}-{inc,dec}rement and op= + operators reported by + + 1/25 + ---- +expr.c + - fix subexpr() to initialize curlval and lastlval when resetting all + of the rest of the expression-parsing variables + + 1/26 + ---- +builtins/setattr.def + - in show_var_attributes, if the variable is not set (value == 0), + don't print `name=""', just print `name'. Pointed out by + Mart Frauenlab + +arrayfunc.c + - fix array_keys to return NULL if the variable is not set or + invisible. Pointed out by Mart Frauenlab + - change array_value_internal to return NULL for variable which has + not been set + + 1/30 + ---- +bashline.c + - in command_word_completion_function, don't call glob_pattern_p + on hint -- use the already-computed `globpat'. At this point, + hint might contain an already-dequoted globbing character, but + glob_matches will be NULL. Fixes bug reported by + coyote@wariat.org.pl + + 2/5 + --- +builtins/exec.def + - set extern variable "exec_argv0" to the argument to -a + +shell.c + - if exec_argv0 is set, set dollar_vars[0] to it and set it to NULL, + assuming it was set by `exec -a'. `exec -a foo' now sets $0 to + foo in an executable shell script without a leading `#!' (fixes + longstanding bug) + + 2/8 + --- +variables.c + - in push_func_var, if a variable is in a special builtin's temporary + environment and needs to be propagated because we're in Posix mode, + or we just need to propagate a variable, and we are executing in a + function without any local variables (so the function-local variable + context has no variable hash table), make sure we create a hash + table so we have a place to save the variable to be propagated. + Fixes bug reported by Crestez Dan Leonard . + + 2/18 + ---- +builtins/hash.def + - change add_hashed_command to remove the command being looked up from + the hash table before trying to add it. That way, if it's not found, + there won't be anything remaining in the hash table + + 2/26 + ---- +trap.[ch] + - move IMPOSSIBLE_TRAP_HANDLER define to trap.h so other parts of the + shell can use it + +parse.y + - change yy_readline_get to use IMPOSSIBLE_TRAP_HANDER instead of NULL + as a sentinel value for the SIGINT signal handler + - make sure yy_readline_get resets interrupt_immediately to 0 after + calling readline() using the same criteria it used to set it to 1 + before the call -- make the code symmetric. Suggested by Werner + Fink + +builtins/read.def + - move assignment to `retval' before decrement of interrupt_immediately + and terminate_immediately and call to discard_unwind_frame + - move assign_vars label before decrement of interrupt_immediately and + terminate_immediately so those variables get reset appropriately + if read -t times out + +subst.h + - new define for Q_DOLBRACE, indicates double-quoted ${...} + +subst.c + - in parameter_brace_expand, before calling parameter_brace_expand_rhs, + add Q_DOLBRACE to `quoted' if we're within double quotes. + - in expand_word_internal, if the Q_DOLBRACE flag is set, remove a + backslash escaping a }. Result of a Posix discussion on the + austin-group list + + 2/27 + ---- +variables.c + - new functions to save and restore the PIPESTATUS variable's internal + array: save_pipestatus_array and restore_pipestatus_array + +variables.h + - new extern declarations for save_pipestatus_array and + restore_pipestatus_array + +trap.c + - in run_pending_traps, _run_trap_internal, and run_exit_trap, save + and restore $PIPESTATUS while traps are running. Fixes bug + reported by Florian Bruhin + +parse.y + - use save_pipestatus_array and restore_pipestatus_array in + save_parser_state and restore_parser_state, respectively, replacing + inline code + +lib/readline/histfile.c + - fix callers of history_filename to be prepared to cope with it + returning NULL + - change history_filename to return NULL if $HOME is not set, rather + than trying to write the history file in the current directory. + This is the default directory, used only if the application does + not specify a history filename. Changed due to long-ago (unsent) + bug report from OpenBSD + +{Makefile,config.h,configure}.in,externs.h,lib/sh/{dprintf.c,Makefile.in} + - change fdprintf to dprintf, which is the Posix standard interface, + look for it with configure, replace it if not available + + 2/28 + ---- +command.h + - add new subshell flag, SUBSHELL_RESETTRAP. Indicates to the trap + builtin that the shell is executing a command substitution and + should free the trap strings we left unfreed by reset_signal_handlers() + +trap.c + - free_trap_string() and free_trap_strings() are now compiled in + +builtins/trap.def + - if changing a signal disposition and the SUBSHELL_RESETTRAP flag is + set in subshell_environment, free the trap strings left unfreed by + reset_signal_handlers + +subst.c + - in command_substitute, set the SUBSHELL_RESETTRAP flag. This change + is for Austin Group Posix interpretation 53 + (http://austingroupbugs.net/view.php?id=53) + + 3/7 + --- +lib/sh/{Makefile.in,strchrnul.c},Makefile.in + - implementation of strchrnul, from gnulib + +configure.in,config.h.in + - look for strchrnul and compile in version in lib/sh/strchrnul.c if + not available + - look for mbsnrtowcs and define HAVE_MBSNRTOWCS if available + +lib/sh/xmbsrtowcs.c + - new function, xdupmbstowcs2, fast version of xdupmbstowcs used when + mbsnrtowcs is available and the indices are not required. Called + from xdupmbstowcs as required. Initial patch from + <0xe2.0x9a.0x9b@gmail.com> + + 3/22 + ---- +print_cmd.c + - call print_deferred_heredocs virtually every time a recursive call + to make_command_string_internal is made so here documents get + printed correctly when they are attached to commands inside compound + commands such as for and while. Fixes bug reported by Mike + Frysinger + + 3/25 + ---- +builtins/printf.def + - fix have_precision case in PF macro to call printf with precision + instead of fieldwidth argument. Fixes bug reported by Rob Robason + + + 3/26 + ---- +trap.[ch] + - new function, signal_is_hard_ignored, returns true if the shell + inherited SIG_IGN as a signal's disposition + - new function, set_original_signal (sig, handler), provides interface + for rest of shell to set original_signals[sig] = handler + +execute_cmd.c + - execute_disk_command needs to call reset_terminating_signals in the + child process before resetting traps with restore_original_signals + +builtins/trap.def + - call initialize_terminating_signals before calling display_traps for + trap -p or trap without any other arguments. Possible future use + +lib/readline/complete.c + - rl_filename_completion_function needs to call + rl_filename_dequoting_function with `dirname' (which has already + been tilde-expanded) instead of `users_dirname', because it calls + opendir with `dirname'. Fixes bug reported by Stefan H. Holek + + + 3/27 + ---- +sig.c + - experimental change to set_signal_handler: when setting the SIGCHLD + handler, set the SA_RESTART flag so that interruptible system calls + get restarted after a child dies. Fixes bug reported by Tomas + Trnka , but needs further evaluation + +lib/sh/eaccess.c + - eaccess(2) apparently does only half the job: it does not check that + the permission bits on a file actually allow, for instance, execution. + Need to augment with a call to sh_stataccess if eaccess returns + success on FreeBSD. Fixes FreeBSD problem reported by Jonan Hattne + + + 3/28 + ---- +parse.y,bashline.c,externs.h + - history_delimiting_chars now takes a const char * as an argument: + the line being added to the history. Changed callers + +parse.y + - bash_add_history should not add a semicolon separator if the current + history entry already ends in a newline. It can introduce syntax + errors (e.g., when it results in a null command before a close brace). + Fixes bug reported by Andreas Schwab + +parse.y + - history_delimiting_chars needs to return a newline instead of a + semicolon if it thinks the current line starts a here document + (if it contains `<<'). Also keeps track of the fact with a new + static variable, LAST_WAS_HEREDOC, so it can return the right + sequence of newlines later for the here-document body. Fixes bug + reported by Andreas Schwab + + 3/29 + ---- +lib/sh/eaccess.c + - if the system has faccessat, sh_eaccess will now use it in + preference to all other options + + 3/30 + ---- +subst.h + - new string_extract and extract_dollar_brace_string flag value: + SX_POSIXEXP, set if the shell is expanding one of the new Posix + pattern removal word expansions + +parser.h + - new definitions for "word expansion state", shared between parse.y + and subst.c + +subst.c + - include parser.h + + 4/9 + --- +builtins/declare.def + - make sure declare_internal calls bind_assoc_variable with newly- + allocated memory for the key argument when using an implicit key + of "0". Bug report and fix from Andreas Schwab + + + 4/14 + ---- +lib/readline/input.c + - restructure the rl_event_hook loop in rl_read_key to call the + event hook after rl_gather_tyi() returns and rl_get_char has + a chance to collect the input. Previous behavior was to call + the event hook before attempting to read input. Problem + reported by Anant Shankar + + 4/15 + ---- +builtins/fc.def + - fc_builtin needs to check whether the calculation of last_hist + leaves hlist[last_hist] == 0, and keep decrementing it until it + leaves a non-null history entry or goes < 0. Currently only + does this if saved_command_line_count > 0, indicating we're + trying to edit a multi-line command. Fixes bug reported by + Roman Rakus + + 4/17 + ---- +subst.c + - new process substitution helper functions: + unlink_fifo - closes a single FD or FIFO + num_fifos - returns number of open FDs or active FIFOs + copy_fifo_list - returns a bitmap of open FDs or active FIFOs + by index into appropriate list (dev_fd_list or fifo_list) + close_new_fifos - take a bitmap saved by copy_fifo_list and + call unlink_fifo on any FD or FIFO open at the time of the + call that is not marked as active in list + +execute_cmd.c + - execute_builtin_or_function: use new framework to close process + substitution FDs or FIFOs created by a shell builtin or shell + function. Fixes bug reported by Charles Duffy + +doc/{bash.1,bashref.texi} + - document 'C and "C constants for printf builtin + + 4/22 + ---- +lib/readline/complete.c + - new function to return screenwidth for use when displaying possible + matches: complete_get_screenwidth; changed uses of _rl_screenwidth + to use complete_get_screenwidth(). + - change complete_get_screenwidth to query (readline-private) + _rl_completion_colums, $COLUMNS, then _rl_screenwidth in that order + - change rl_display_match_list to deal with limit < 0 (which implies + that cols == 0) when _rl_screenwidth > 0 + +lib/readline/bind.c + - new bindable variable: completion-display-width, controls the + number of columns used when displaying completions with new + sv_compwidth function to call when value is set or unset + +lib/readline/doc/{readline.3,rltech.texi} + - documented completion-display-width variable + + 4/23 + ---- +execute_cmd.c + - change execute_in_subshell to reset trap handlers without freeing + the trap strings and set SUBSHELL_RESETTRAP. In line with Austin + Group interp #53 (trap in a subshell). + - ditto for execute_simple_command where it can be determined that + the shell is going to run a builtin or function in a subshell + +trap.c + - new function, get_all_original_signals, retrieves the original + signal disposition for all signals + +trap.h + - extern declaration for get_all_original_signals + +builtins/trap.def + - change showtrap to display signals that are "hard ignored" as + trap commands to ignore them, even though that trap command would + be a no-op. Partial fix for feature request from Siddhesh + Poyarekar + - change trap_builtin to call get_all_original_signals before displaying + traps. This will show inherited ignored signals. Rest of feature + request from Siddhesh Poyarekar + +lib/readline/histexpand.c + - fix history_tokenize_word so that it understands $(...) and the + <(...) and >(...) expansions as a single word + - change history_tokenize_word so that it understands extended shell + globbing patterns as a single word. Code is very similar to + $(...) code above. Bug reported by Rajeev V. Pillai + + + 4/24 + ---- +lib/readline/vi_mode.c + - add checks to rl_vi_char_search to make sure we've already done a + search if the command is `;' or `,', and return immediately if we + have not. Fixes bug reported by Eric Ho + +lib/readline/text.c + - make sure `dir' is in the valid range before searching in + _rl_char_search_internal. Range checks in the code depend on it + being non-zero + + 5/3 + --- +lib/readline/complete.c + - in rl_complete_internal, if show-all-if-ambiguous or + show-all-if-unmodified are set (what_to_do == '!' or '@', + respectively), and the common match prefix is shorter than the + text being completed, inhibit inserting the match. + The guess is that replacing text with a shorter match will not + be wanted + + 5/20 + ---- +lib/sh/unicode.c + - new file, with unicode character conversion-related code. Will be + used to implement \u and \U escapes where appropriate, and for + other unicode-related functions in the future + + 5/21 + ---- +builtins/printf.def + - add code to handle \u and \U escapes in format strings and arguments + processed by the %b format specifier + +lib/sh/strtrans.c + - add code to handle \u and \U escapes as unicode characters, works for + both `echo -e' and $'...' + +doc/{bash.1,bashref.texi} + - document new \u and \U escape sequences for $'...' and echo (printf + defers to the system's man page or Posix) + + 5/24 + ---- +execute_cmd.c + - change execute_disk_command to return a status, instead of just + leaving it in `last_command_exit_value', since the parent's return + value is sometimes used (e.g., when a restricted shell refuses to + run a command with a `/'). Fixes bug reported by David Pitt + + + 5/25 + ---- +bashline.c + - change bash completion functions to save and restore the value of + rl_ignore_some_completions_function, and set it to the bash default + of filename_completion_ignore where appropriate. Fixes bug + reported by Henning Bekel + +variables.c + - new convenience function: find_global_variable (name). Looks for + NAME in the global variables table, skipping any local and + temporary environment variables + +builtins/declare.def + - add new -g option to declare/typeset/local, forces variables to be + created or modified at the global scope when executing inside a + shell function. Requested by many, most recently by + konsolebox@gmail.com + + 5/27 + ---- +test.c + - added new `-v var' unary test operator; returns TRUE if var is set + (i.e., has been assigned a value). Works in both test builtin and + [[ conditional command + +doc/{bash.1,bashref.texi} + - documented new `-v var' unary conditional operator + +tests/test.tests + - added tests for new -v var operator + +builtins/kill.def + - change kill builtin so -PID (pgrp specification) following a + -s sig or -n sig option is not interpreted as a signal specification. + Fixes bug reported by Roman Rakus + +builtins/evalstring.c + - in parse_and_execute, if parse_command() returns non-zero, + indicating a parse error, exit the shell if the conditions require + a posix-mode non-interactive shell to abort (parse error in a `.' + script or eval string). Bash-4.1 only printed a warning. This is + from Austin Group interp 114 + +doc/bashref.texi + - add note to the posix mode section of the texinfo manual noting + the changed behavior for `.' and `eval' + +parse.y + - change time_command_acceptable to allow TIME token to appear after + BANG token (to allow `! time foo', which is supposed to be valid) + - change pipeline_command production to allow multiple instances of + `!' (which toggle inverting the return status) and `time' (which + have no effect) + +execute_cmd.c + - In posix mode, `time' without a following pipeline prints the + elapsed user, system, and real time for the shell and its + children since the shell was invoked. + It's like `times' but obeys the setting of TIMEFORMAT. A future + revision of Posix will require this + +doc/{bashref.texi,bash.1} + - document new posix mode use of `time' + +parse.y + - add production to pipeline_command that permits `!' by itself to + be equivalent to `false' (and, with the changes above, permits + `! !' to be roughly equivalent to `true'). A future revision of + Posix will require this + + 5/28 + ---- +parse.y + - fix \W prompt expansion to use memmove instead of strcpy, since the + source and target strings overlap (though you think it wouldn't + matter, since the overlapping regions are never touched at the same + time). Fixes bug reported by Stéphane Jourdoi + + +parse.y + - Posix interp 217 states that $(( must be parsed first as an + arithmetic expansion, so avoid attempting to parse it as a nested + command substitution. Fixes bug reported by several, most recently + + +subst.c + - change extract_delimited_string to process nested $( as a possible + command substitution, but only if already parsing an arithmetic + expansion. Rest of fix for Posix interp 217 + - change parameter_brace_expand_rhs to make the := expansion operator + perform quote removal and both assign the result to the variable and + return it as the result of the expansion, rather than assign the + value after quote removal but return the value before quote removal. + Posix interp 221 + - introduce new internal quoting flag: Q_DOLBRACE. Denotes a double- + quoted ${...} expansion. In this case, Posix interp 221 requires + that a backslash quoting an embedded `}' be removed, even though it's + not one of the characters marked as special inside double quotes. + Set in parameter_brace_expand, used by expand_word_internal. + +parse.y + - introduce new parsing state, P_DOLBRACE, set when parsing a ${...} + expansion + - set a "dolbrace operator state" in parse_matched_pair to decide + whether the lexer is reading the param, op, or word in + ${paramOPword}. Will be used to decide whether or not to treat + single quotes specially in a double-quoted "${...} + + 5/29 + ---- +parse.y + - change parse_matched_pair so that a single quote appearing in a + double-quoted ${...} expansion is not special unless the expansion + operator is `#[#]' or `%[%]'. Posix interp 221 + +subst.c + - change string_extract_double_quoted so that a single quote appearing + in a double-quoted ${...} expansion is not special unless the + expansion operator is `#[#]' or `%[%]'. Posix interp 221 + +doc/bashref.texi + - document posix-mode effects of Posix interp 221 + - add section describing GNU parallel as requested by Stallman + +lib/readline/complete.c + - broke code that compares filenames read from the file system (and + possibly converted) to words being completed out into a separate + function: complete_fncmp + - augment complete_fncmp to treat hyphen and underscore as equivalent + when comparing filenames if _rl_completion_case_map is set + +lib/readline/rlprivate.h + - new extern declaration for _rl_completion_case_map + +lib/readline/util.c + - change _rl_strnicmp to return the difference between the characters, + like strcasecmp, and not modify the pointers it is passed + - change _rl_stricmp to not modify the pointers it is passed + +lib/readline/bind.c + - new bindable variable, "completion-case-map", toggles value of + _rl_completion_case_map + +lib/readline/doc/{rluser.texi,readline.3} + - document new bindable readline variable "completion-case-map" + +execute_cmd.c + - change execute_function to reset funcnest and jump back to top level + if funcnest exceeds funcnest_max + - use funcnest_max as a max function nesting level, if set to numeric + value greater than 0 (defaults to 0, so inactive) + +variables.c + - new variable FUNCNEST, controls funcnest_max value if set to numeric + value > 0 +sig.c + - reset funcnest to 0 when throw_to_top_level occurs + +doc/{bash.1,bashref.texi} + - document FUNCNEST variable and its effect on function execution + +lib/readline/funmap.c + - add new bindable command names to avoid case-insensitive matching + problems between, for instance, vi-fword and vi-fWord: + + vi-forward-word + vi-forward-bigword + vi-backward-word + vi-backward-bigword + vi-end-word + vi-end-bigword + + Suggested in a different form in 2006 (!) by Servatius Brandt + + +builtins/mapfile.def + - run_callback now takes a new third argument: curline, the line + currently being read and about to be assigned + - the callback function/command now takes an additional argument: + the line to be assigned to the array index. Feature suggested by + Dennis Williamson + +doc/{bash.1,bashref.texi} + - document new additional `line' argument to mapfile callback + + 5/30 + ---- +builtins/printf.def + - add new %(fmt)T format specifier, where FMT is a strftime format. + Argument is number of seconds since the epoch, with -1 meaning + current time (roughly date +%s) and -2 meaning shell start time + (roughly $SECONDS, unless it's been assigned a value or unset). + Fieldwidth and precision are preserved, strftime result is printed + as with %[-][[fieldwidth][.[precision]]]s + +doc/{bash.1,bashref.texi} + - document new %(datefmt)T printf format specifier and special + arguments + +builtins/hash.def + - don't permit programs with slashes to be entered into the hash table + at all, even with the -p option. Inconsistency pointed out by + Jan Schampera + +builtins/shopt.def + - add `compat41' option in preparation for bash-4.2 + + 6/6 + --- +lib/readline/vi_mode.c + - finish restructuring rl_vi_domove and the functions that call it so + it works in callback mode, including numeric arguments. Requested + a long time ago by Bob Rossi + +lib/readline/callback.c + - arrange to call appropriate callback when readline state indicates + RL_STATE_VIMOTION, so vi motion commands like `cw' and `d2w' are + handled in callback mode + +lib/sh/wcswidth.c + - replacement wcswidth implementation + +aclocal.m4 + - add REPLACE_FUNCS(wcswidth) to BASH_CHECK_MULTIBYTE + +execute_cmd.c + - fix select_query and print_index_and_element to compute correct + display width of select list elements in presence of multibyte + characters. Bug reported by Bernd Eggink + +builtins/cd.def + - add posix-mandated -e option; currently ignored in most circumstances + +doc/{bash.1,bashref.texi} + - document new `cd -e' option + + 6/12 + ---- +arrayfunc.c + - change array_value_internal to treat negative subscripts to indexed + arrays, offset from array_max_index(x) + 1, so foo[-1] is the last + element of $foo + +subst.c + - Change verify_substring_values to allow negative length specifications + when using string variables or array members. Negative lengths + mean to return characters from OFFSET until (${#var} - N) for + {var:offset:-N}. Feature requested by Richard Neill + + +doc/{bash.1,bashref.texi} + - document new behavior of negative subscripts to indexed arrays + - document new behavior of negative LENGTH in substring expansion + +configure.in + - change version to bash-4.2-devel + +variables.c + - make sure initialize_shell_variables calls sv_xtracefd if + BASH_XTRACEFD is inherited in the shell environment. Fixes but + reported by + + 6/13 + ---- +lib/readline/complete.c + - change get_y_or_n to always return 1 when in callback mode, so we + don't do a blocking read. Have to wait until readline-7.0 to add + a state so we can use callbacks, since that will change public + interface + + 6/17 + ---- +subst.c + - fix memory leak in parameter_brace_expand: when performing pattern + removal with parameter_brace_remove_pattern, make sure `name' is + freed. Fixes bug reported by oyvindh@dhampir.no + + 6/23 + ---- +{parse.y,subst.c} + - make the ${param//pat/rep}, ${param^pat}, and ${param,pat} expansions + require single quotes and double quotes to match when within double + quotes. This way every expansion except the Posix ones behaves as + bash has always behaved + +subst.c + - change remove_upattern and remove_wpattern to return their first + argument if nothing matches, change callers to allocate memory + appropriately + - change remove_pattern to short-circuit and return copy of PARAM + if remove_wpattern returns its first argument (indicating no match) + rather than convert back to multibyte string, allocating new memory + twice and calling wcsrtombs + + 6/24 + ---- +execute_cmd.c + - add missing initializers for sh_coproc to eliminate a compiler + warning. Patch from Werner Fink + + 6/27 + ---- +parse.y + - add `TIMEIGN' token to handle `time -p -- ...'. Pointed out by + Laszlo Ersek on austin-group list + + 6/28 + ---- +jobs.c + - treat a shell with (subshell_environment&SUBSHELL_PIPE) != 0 like + a command substitution in wait_for and act like we received a + SIGINT if a job we're waiting for dies of SIGINT. Fixes bug + reported by Ilya Basin + + 7/2 + --- +jobs.c + - if fork() fails in make_child, try to reap some dead children before + retrying + +execute_cmd.c + - change execute_pipeline to run the last command of a non-asynchronous + pipeline in the current shell environment if the `lastpipe' shell + option is enabled and job control is not active. Code from + Werner Fink + +parse.y + - Posix says (issue 267) that time is not recognized as a keyword + if the next token begins with a `-' + +doc/{bash.1,bashref.texi} + - changed the descriptions of BASH_SOURCE, BASH_LINENO, and FUNCNAME + as proposed in Ubuntu bug 591677. + - document new `lastpipe' shell option that runs last command of a + pipeline in the current shell environment + - document new posix-mode behavior with `time -p' + + 7/5 + --- +aclocal.m4 + - new autoconf test WEXITSTATUS_OFFSET, bit offset in status word + returned by wait() of the process's exit status + +jobs.[ch] + - change stop_pipeline to return the actual index of the job just + created and added to the jobs table, instead of the current job + - job_exit_status and job_exit_signal are now global functions, with + extern declarations in jobs.h + - append_process: new utility function for use by the lastpipe code, + takes info, creates a PROCESS from them, and adds it to the end of + the passed job id's pipeline. lastpipe code uses it to add a dummy + process for the last command in the pipeline + - freeze_jobs_list: new utility function so rest of shell can freeze + the jobs list. Used by the lastpipe code + +execute_cmd.c + - changes to lastpipe code to make `pipefail' option, $PIPESTATUS, and + $? work correctly. Uses append_process and job_exit_status + + 7/10 + ---- +subst.c + - when performing pattern substitution word expansions, a `&' in the + replacement string is replaced by the text matched by the pattern. + The `&' can be quoted with a backslash to inhibit the expansion. + CURRENTLY DISABLED + + 7/13 + ---- +pcomplib.[ch] + - new member for struct compspec: lcommand. for future use + + 7/15 + ---- +parse.y + - fix problem in parse_comsub where extra space was added to here-doc + delimiter if the first word in the comsub contained a `/'. Fixes + bug reported by Alex Khesin + + 7/20 + ---- +parse.y + - change reserved_word_acceptable to return success if the last two + tokens read were `function WORD'. Allows function definitions like + function good [[ -x foo ]];. Fixes bug reported by Linda Walsh + + +doc/{bash.1,bashref.texi} + - change function definition meta-syntax to make it clearer, rather + than let the text note the optional portions + + 7/24 + ---- +bashhist.c + - change bash_history_inhibit_expansion() to suppress history expansion + for $! parameter expansion. Fixes debian bug #589745 submitted by + Frank Heckenbach + +lib/readline/terminal.c + - change rl_resize_terminal to always fetch the new terminal size and + only force the redisplay if _rl_echoing_p is non-zero. Fixes bug + reported by Balazs Kezes + + 7/25 + ---- +lib/readline/xfree.c + - new file, contains definition of xfree moved from xmalloc.c + + 7/28 + ---- +variables.c + - check suspect return values from bind_variable before trying to use + the returned SHELL_VAR *. Changes to: initialize_shell_variables, + bind_int_variable, FIND_OR_MAKE_VARIABLE. Fixes bug reported by + Roman Rakus + + 7/31 + ---- +lib/readline/rltty.c + - fix rl_prep_terminal and rl_deprep_terminal to use fileno(stdout) + if rl_instream is NULL. Fixes bug reported by Otto Allmendinger + otto.allmendinger@googlemail.com + + 8/2 + --- +lib/sh/casemod.c + - if the passed string is NULL or empty, return it immediately. Fixes + bug reported by Dennis Williamson + +subst.c + - fix pat_subst to cope with the passed string being NULL + +arrayfunc.h + - added flag values for array_value_internal and its callers; converted + array_value_internal `allow_all' parameter into a general flags word + - get_array_value now takes a flags value + - changed array_value internal to use *indp as an index to use if the + AV_USEIND flag is set, rather than recomputing it + +subst.c + - get_var_and_type takes two new parameters: a flags word and an index + that represents an already-computed index for an array reference + (just indexed arrays so far). Index is used and passed to array_value + if flags includes AV_USEIND + - parameter_brace_expand_word takes a new argument: the already- + computed index; returns W_ARRAYIND if word expanded is being used + as an array index + - changed parameter_brace_casemod, parameter_brace_patsub, + parameter_brace_substring, parameter_brace_remove_pattern to take new + flags and index arguments from parameter_brace_expand_word. They + pass the new parameters along to get_var_and_type to use an + already-computed array index if necessary. Fixes bug where array + indexes are computed twice reported by Andrew Benton + + +doc/bash.1,lib/readline/doc/{history.3,hsuser.texi} + - modified description of history event designators to clarify that + all non-absolute event designators are relative to the current + position in the history list. Question raised by Frank + Heckenbach as debian bash bug 590012 + + 8/5 + --- +subst.c + - remove code that does not add a quoted null when the input string + is partially quoted; subsequent word splitting may require it. + Fixes bug reported by Eric Blake + + 8/12 + ---- +lib/glob/gmisc.c + - move match_pattern_wchar and match_pattern_char to new file in + glob library + - new functions: wmatchlen(pat, max) and umatchlen(pat, max), computes + number of characters PAT will match. Returns the number of chars + that will be matched or -1 if the match length is indeterminate + (i.e., contains a `*') + +subst.c + - use umatchlen/wmatchlen in match_upattern/match_wpattern to bound + the number of match attempts in large strings to (usually) one, + depending on match length. Fixes performance problems with + pattern substitution in large strings noted by Yi Yan + . Can be applied to remove_[uw]pattern also + + 8/13 + ---- +bashhist.c + - in maybe_append_history, change check for history_lines_this_session + so that we append the lines to the file if it's equal to the value + returned by where_history(). This means that without this change, + the history won't be appended if all the lines in the history list + were added in the current session since the last time the history + file was read or written. Fixes bug reported by Bruce Korb + + +shell.h,parse.y + - add prompt_string_pointer to the parser_state struct saved and + restored by {save,restore}_parser_state. Fixes both bugs exposed + by bash_completion and completion of open backquotes reported by + Egmont Koblinger + +subst.h + - new flag for skip_to_delim: SD_EXTGLOB. Skip extended globbing + patterns while looking for ending delimiter + +subst.c + - when passed the SD_EXTGLOB flag, skip_to_delim skips over extended + globbing patterns (when extended_glob is set) while looking for a + character in the delimiter set + +pathexp.c + - split_ignorespec: new function to replace calls to extract_colon_unit + in setup_ignore_patterns. uses skip_to_delim with the SD_EXTGLOB + flag to skip over extended globbing patterns in variables like + HISTIGNORE and GLOBIGNORE. Fixes bug reported by Dimitar DIMITROV + and Greg Wooledge + + 8/28 + ---- +lib/readline/rlprivate.h + - add members to search_cxt to save _rl_keymap + - new flag for isearch context: SF_CHGKMAP, set if we changed the + keymap while reading a character for the search string that + translated to a command + +lib/readline/isearch.c + - save current readline keymap in cxt->keymap and cxt->okeymap + in _rl_scxt_alloc + - in _rl_isearch_dispatch, only check for cxt->lastc as a member of + cxt->search_terminators if it's > 0 (i.e., not an isearch opcode) + + 9/3 + --- +support/signames.c + - add Solaris SIGJVM1 and SIGJVM2. Update from Stefan Teleman + + +shell.c + - instead of closing all fds 3-20 at shell startup, just set them to + be close-on-exec. Report from Rainer Müller + +lib/readline/isearch.c + - in _rl_isearch_dispatch, if the current character maps to ISKMAP, + move to the indicated keymap (using cxt->keymap) and go on to + read another character. Fixes problem reported by Davor + Cubranic + - in _rl_isearch_dispatch, after translating key to possible opcode, + restore _rl_keymap from cxt->okeymap if necessary + - in _rl_isearch_dispatch, use key sequences that map to default + functions that ^G, ^W, and ^Y map to as equivalent to those chars + +lib/readline/complete.c + - new variable, _rl_menu_complete_prefix_first, zero by default + - change menu_complete to display common prefix (matches[0]) first + before cycling through rest of match list if + _rl_menu_complete_prefix_first is non-zero. Suggested by Sami + Pietila + +lib/readline/bind.c + - new bindable readline variable, "menu-complete-display-prefix", + controls setting of _rl_menu_complete_prefix_first + +doc/{bash.1,bashref.texi},lib/readline/doc/{readline.3,rluser.texi} + - added description of menu-complete-display-prefix bindable + readline variable + + 9/17 + ---- +configure.in + - remove AM_PATH_LISPDIR call since we don't use that bash debugger + any more. Suggested by Mike Frysinger + + 10/6 + ---- +findcmd.c + - change executable_file to set errno to EISDIR if the passed name + is a directory + +builtins/exec.def + - change exec_builtin to report appropriate error message if the + file argument is a directory. Noted by Eric Blake + in a message to austin-group + +builtins/source.def + - change source_builtin to make sure the shell exits if the file is + not found when in a non-interactive shell running in posix mode + and source_searches_cwd == 0 (as posix mode makes it by default). + Pointed out in http://thread.gmane.org/gmane.comp.shells.dash/291/focus=392 + by Jilles Tjoelker + +execute_cmd.c + - set executing_command_builtin in execute_builtin if the builtin is + command_builtin. Unwind-protected in execute_function_or_builtin + (like executing_builtin variable). Available for rest of shell + +builtins/{source.def,evalfile.c} + - make sure that non-interactive posix mode shells exit if the file + argument to `.' is not found only if they are not being executed + by the command builtin (executing_command_builtin == 0). This is + how `command' can cancel effects of special builtin exit properties + in the case of `dot file not found' + + 10/13 + ----- +lib/sh/strtrans.c + - pass \c through unchanged if not escaping for `echo -e' and they are + the final two characters in the string + + 10/15 + ----- +subst.c + - extract_dollar_brace_string: fix problem with single quotes + in unquoted ${...} for Posix compliance + + 10/16 + ----- +builtins/exec.def + - catch return value from shell_execve; don't print duplicate error + message if return value is EX_NOTFOUND. Make sure exit status + from exec is 127 if command is not found + +execute_cmd.c + - fix typo (`saved_redirects' should be `saved redirects') in + execute_function_or_builtin `command exec' case. Typo caused + too much of the unwind-protect stack to be discarded + - in same execute_function_or_builtin case, don't discard the + `saved redirects' frame unconditionally; only discard it if + saved_redirects is non-null in the `command exec' case. Fixes + sh -c 'command exec; exit 1' hanging bug uncovered by FreeBSD + sh test cases + + 10/18 + ----- +subst.c + - when in posix mode, shell should not exit if a variable assignment + error (e.g., assigning to readonly variable) occurs preceding a + command that is not a special builtin. Fixes bug uncovered by + FreeBSD sh test cases + - when in posix mode, the ${!?} and ${!#} expansions are not indirect + expansions, but posix word expansions involving the `!' variable + +parse.y + - fix parse_comsub so that it does not skip backslash-newline when + parsing a comment + + 10/19 + ----- +subst.c + - fix parameter_brace_expand so that an attempt to use the % or # + expansions on an unset variable with -u set will cause a non- + interactive shell to abort. Posix change + - fix parameter_brace_expand so that an attempt to use pattern + substitution or case modification expansions on an unset variable + with -u set will cause and unbound variable error and make a + non-interactive shell abort + - change parameter_brace_expand_length to return INTMAX_MIN if a + positional parameter is unset and -u is set + - if parameter_brace_expand_length returns INTMAX_MIN when -u is set, + treat it as an unbound variable error and make a non-interactive + shell abort. Posix change + - change parameter_brace_expand_length to return INTMAX_MIN if an + implicit reference to array[0] is made ${#array} and array[0] is + not set when -u is set + + 10/20 + ----- +builtins/cd.def + - Posix 2008 says that if no matching directories are found in $CDPATH, + use the directory name passed as an operand and go on. Posix change + +doc/bashref.texi + - change Posix mode section with latest additions and removals + + 11/4 + ---- +lib/readline/complete.c + - fix rl_menu_complete and rl_old_menu_complete to keep incrementing + match_list_index by match_list_size as long as it's < 0. Fixes + bug reported by jeenuv@gmail.com + +braces.c + - make mkseq() take intmax_t arguments for sequence start and end + and make sure it's passed intmax_t values. Fixes bug reported by + Pete Gregory + +sig.c + - if termsig_handler is called when terminate_immediately == 1, + assume we're being called as a signal handler and set + history_lines_this_session to 0 to inhibit history file being + written on shell exit. Fixes long-standing bug most recently + observed by Andreas Schwab + + 11/5 + ---- +redir.c + - add_undo_close_redirect now returns int, 0 on success, non-zero on + failure. Currently always succeeds + - new macro REDIRECTION_ERROR to make do_redirection_internal return + value of errno + - change do_redirection_internal to call REDIRECTION_ERROR after + saving file descriptor and make do_redirection_internal return error + if add_undo_redirect or add_undo_close redirect fails. This makes + failure to save a file descriptor a redirection error and the shell + behaves appropriately. Fixes bug reported by Eric Blake + + +bashline.c + - modify bash_forward_shellword to correctly handle quoted strings, + especially if point is in a quoted string when function is invoked. + Fixes bug reported by Daniel Colascione + +configure.in + - change version to 4.2-alpha + + 11/7 + ---- +lib/readline/text.c + - in rl_insert, if we're not in the multibyte code path, don't try to + optimize and insert all of the available typeahead input if we're + reading input from a macro. Fixes bug reported by Andre Majorel + + +lib/readline/text.c + - break out multibyte guts of rl_forward_char into a separate function + _rl_forward_char_internal that does nothing but calculate the new + value of point + - change rl_forward_char to call _rl_forward_char_internal instead of + having equivalent code inline + +lib/readline/rlprivate.h + - new extern declaration for _rl_forward_char_internal + +lib/readline/vi_mode.c + - change _rl_vi_append_forward to call _rl_forward_char_internal to + set rl_point, instead of calling rl_forward_char. When at the end + of the line, rl_forward_char will ring the bell. Fixes debian + bash bug 601042, reported by Alan J. Greenberger + + 11/14 + ----- +subst.c + - fix match_upattern to use correct test to immediately break out of + loop (when potential match length is greater than number of chars + remaining in the string) in MATCH_ANY case + + 11/15 + ----- +subst.c + - include "typemax.h" to make sure we have a definition of INTMAX_MIN + + 11/16 + ----- +lib/sh/unicode.c + - make sure `localconv' isn't declared on machines without iconv + - add stub_charset for systems that don't have locale_charset: looks + up LC_CTYPE, returns everything after last `.', "UTF-8" if the + value is exactly "UTF-8", and "ASCII" otherwise + + 11/20 + ----- +lib/readline/vi_mode.c + - in rl_domove_motion_callback, make sure to use m->key instead of + key, which is not initialized and should not be used. Bug report + from Andreas Schwab + - in rl_vi_domove, make assignment to `m' explicit instead of + relying on evaluation order semantics, since the C standard leaves + them unspecified. Bug report from Andreas Schwab + + + 11/21 + ----- +lib/sh/shquote.c + - sh_single_quote and sh_double_quote now take a const char * + argument. Fixes problem pointed out by Joachim Schmitz + + +externs.h + - change extern declarations for sh_single_quote and sh_double_quote + +lib/sh/strchrnul.c + - make sure that return value is cast to (char *) if we're using a + part of the passed (const char *) argument. Fixes problem pointed + out by Joachim Schmitz + +lib/glob/gmisc.c + - fix a typo that mixed up defines for LPAREN and RPAREN. Bug and + fix from Andreas Schwab + - use WLPAREN and WRPAREN in multibyte character environments + - fixed typos using L'cc' in a non-wide-char environment + +lib/readline/complete.c + - fix rl_filename_completion_function to dequote users_dirname if + there is a filename dequoting function (as well as dirname), since + users_dirname gets tacked back onto the beginning of the possible + completions and then requoted. Bug reported by Andreas Schwab + + + 11/22 + ----- +lib/readline/parens.c + - the `blink-matching-paren' variable should default to off + + 11/23 + ----- +subst.h + - add extern declaration for close_new_fifos() + +lib/sh/fnxform.c + - fix curencoding to return the character past the `.', not a string + beginning with `.' + +lib/sh/unicode.c + - fix stub_charset to do the same cut-off at `@' as curencoding(). + These two functions should be combined + +builtins/printf.def + - document new %(datefmt)T modifier in help text + + 11/24 + ----- +parse.y + - fix `W' case in decode_prompt_string: memmove was copying one too + few bytes and missed the closing NUL. Bug report from Tim Mooney + + + 11/26 + ----- +subst.c + - in expand_word_internal, don't add quoted nulls to partially- + quoted strings if the word will not be subjected to word splitting + later (which will remove the quoted null). Fixes bug reported by + Rocky Bernstein + + 11/28 + ----- +subst.c + - change multibyte case of match_pattern to revert to match_upattern + if neither the pattern nor the string has any multibyte characters + +alias.c + - fix tests of backslash-escaped characters in skipquotes, skipws, + rd_token to check for backslash at EOS and not go past the end. + Fixes debian bug 603696 reported by Tim Small + +include/shmbchar.h + - new file, mbchar.h from gnulib minus the include + +lib/sh/shmbchar.c + - new file, mbchar.c from gnulib with additions + - moved mbstrlen from subst.c to here, changed initialization of mbs + - change mbstrlen to use is_basic to avoid calls to mbrlen for ASCII + chars; code hints from gnulib + - don't copy mbs and mbsbak if we're not calling mbrlen + + 11/29 + ----- +lib/glob/smatch.c + - change xstrmatch to use internal_strmatch() if the pattern and + string don't have any multibyte characters + + 11/30 + ----- +include/shmbutil.h + - change ADVANCE_CHAR and ADVANCE_CHAR_P macros to use is_basic and + only call mbrlen and copy state and state_bak if is_basic returns + false (non-ASCII). Called all over the place. + - change rest of macros except BACKUP_CHAR and BACKUP_CHAR_P in the + same way + + 12/2 + ---- +subst.c + - audit all calls to string_list and make sure caller can handle a + NULL return value. Fixes bug reported by David Rochberg + + +general.h + - change sh_wassign_func_t to take an additional argument: an int + flags word + +subst.c + - change do_word_assignment to take an additional argument to match + wassign_func_t; change callers + - change call to (*assign_func) in expand_word_list_internal to match + new wassign_func_t prototype + - (*assign_func) passes 1 as additional arg if the simple command is + a builtin or function, in which case the assignment to the + temporary env should take effect + +variables.c + - change assign_in_env to take an additional argument to match + wassign_func_t; change callers + - move call to sv_ifs from dispose_temporary_env to + dispose_used_env_vars; we don't need to do it if called from + merge_temporary_env + + 12/3 + ---- +variables.c + - change dispose_temporary_env to maintain a list (tempvar_list) of + variables that need to be handled specially. If a variable that + gets freed by push_temp_var or propagate_temp_var is one of the + variables that the shell handles specially (IFS, LANG, etc.), it's + stored on the list. For each variable in this list, + dispose_temp_var calls stupidly_hack_special_variables. + - assign_in_env calls stupidly_hack_special_variables if flags arg + is non-zero, so variable assignments affect current shell + execution environment if a builtin or function is being executed. + Fixes bug reported by Bruno Haible + + 12/5 + ---- +subst.c + - use mbsmbchar on both string and pattern in match_pattern instead + of strlen and mbstrlen; only go through the strings once + + 12/6 + ---- +lib/readline/kill.c + - in rl_yank_last_arg, only switch directions if the `count' + argument is < 0, not < 1. This makes explicit count arguments of + 0 work as expected. Fixes bug reported by Dennis Williamson + + +doc/bash.1,lib/readline/doc/{readline.3,rluser.texi} + - fix documentation for yank-last-arg to make it clear how the count + argument is set and how second and subsequent calls treat any + numeric argument + +doc/{bash.1,bashref.texi} + - slight changes to the description of test + - change \(bv to `|'; it seems that many `internationalized' versions + of groff don't render that as a vertical bar. Fixes Debian bug + 603805 + + 12/10 + ----- +configure.in + - changed release status to 4.2-beta + +[bash-4.2-beta frozen] + + 12/18 + ----- +redir.c + - change REDIRECTION_ERROR macro to accept a third argument: an + additional file descriptor to close before returning and error (pass + -1 to do nothing) + - change calls to REDIRECTION_ERROR to close appropriate file + descriptors. Fixes bug reported by Andreas Schwab + + - make sure to close any file descriptors opened for REDIR_VARASSIGN + before returning an error + + 12/19 + ----- +expr.c + - move processing of unary `-' and `+' to exp1 from exp0 to avoid + precedence problems. Fixes bug reported by <12bric@gmail.com> + + 12/21 + ----- +lib/sh/unicode.c + - fixed reversed arguments to wctomb. Reported by Andreas Schwab + diff --git a/CWRU/misc/sigs.c b/CWRU/misc/sigs.c index 097ab317..bae93f8a 100644 --- a/CWRU/misc/sigs.c +++ b/CWRU/misc/sigs.c @@ -1,6 +1,6 @@ /* sigs - print signal dispositions for a process */ -/* Copyright (C) 1990-2009 Free Software Foundation, Inc. +/* Copyright (C) 1990-2010 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. @@ -21,7 +21,7 @@ #include #include -extern char *sys_siglist[]; +extern const char * const sys_siglist[]; typedef void sighandler(); diff --git a/ChangeLog b/ChangeLog new file mode 120000 index 00000000..12c9a285 --- /dev/null +++ b/ChangeLog @@ -0,0 +1 @@ +CWRU/changelog \ No newline at end of file diff --git a/INSTALL b/INSTALL index b6293fce..16fa6851 100644 --- a/INSTALL +++ b/INSTALL @@ -376,8 +376,8 @@ does not provide the necessary support. The Restricted Shell::, for a description of restricted mode. `--enable-select' - Include the `select' builtin, which allows the generation of simple - menus (*note Conditional Constructs::). + Include the `select' compound command, which allows the generation + of simple menus (*note Conditional Constructs::). `--enable-separate-helpfiles' Use external files for the documentation displayed by the `help' diff --git a/MANIFEST b/MANIFEST index e42d7d70..11fd2757 100644 --- a/MANIFEST +++ b/MANIFEST @@ -220,6 +220,7 @@ include/posixselect.h f include/posixstat.h f include/posixtime.h f include/posixwait.h f +include/shmbchar.h f include/shmbutil.h f include/shtty.h f include/stdc.h f @@ -234,6 +235,7 @@ lib/glob/strmatch.h f lib/glob/glob.c f lib/glob/glob.h f lib/glob/glob_loop.c f +lib/glob/gmisc.c f lib/glob/xmbsrtowcs.c f lib/glob/collsyms.h f lib/glob/doc/Makefile f @@ -315,6 +317,7 @@ lib/readline/funmap.c f lib/readline/keymaps.c f lib/readline/util.c f lib/readline/terminal.c f +lib/readline/xfree.c f lib/readline/xmalloc.c f lib/readline/search.c f lib/readline/isearch.c f @@ -382,8 +385,8 @@ lib/sh/Makefile.in f lib/sh/casemod.c f lib/sh/clktck.c f lib/sh/clock.c f +lib/sh/dprintf.c f lib/sh/eaccess.c f -lib/sh/fdprintf.c f lib/sh/fmtullong.c f lib/sh/fmtulong.c f lib/sh/fmtumax.c f @@ -409,12 +412,14 @@ lib/sh/pathphys.c f lib/sh/rename.c f lib/sh/setlinebuf.c f lib/sh/shmatch.c f +lib/sh/shmbchar.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/strcasestr.c f +lib/sh/strchrnul.c f lib/sh/strerror.c f lib/sh/strftime.c f lib/sh/stringlist.c f @@ -435,8 +440,10 @@ lib/sh/timeval.c f lib/sh/tmpfile.c f lib/sh/uconvert.c f lib/sh/ufuncs.c f +lib/sh/unicode.c f lib/sh/vprint.c f lib/sh/wcsdup.c f +lib/sh/wcswidth.c f lib/sh/winsize.c f lib/sh/zcatfd.c f lib/sh/zgetline.c f @@ -515,8 +522,12 @@ po/sv.gmo f po/sv.po f po/tr.gmo f po/tr.po f +po/uk.gmo f +po/uk.po f po/vi.gmo f po/vi.po f +po/zh_CN.gmo f +po/zh_CN.po f po/zh_TW.gmo f po/zh_TW.po f po/insert-header.sin f @@ -685,6 +696,7 @@ examples/functions/which f examples/functions/xalias.bash f examples/functions/xfind.bash f examples/scripts/adventure.sh f +examples/scripts/bash-hexdump.sh f examples/scripts/bcsh.sh f examples/scripts/cat.sh f examples/scripts/center f @@ -742,6 +754,8 @@ tests/arith.tests f tests/arith.right f tests/arith1.sub f tests/arith2.sub f +tests/arith3.sub f +tests/arith4.sub f tests/array.tests f tests/array.right f tests/array1.sub f @@ -753,6 +767,7 @@ tests/array6.sub f tests/array7.sub f tests/array8.sub f tests/array9.sub f +tests/array10.sub f tests/array-at-star f tests/array2.right f tests/assoc.tests f @@ -769,6 +784,7 @@ tests/builtins.tests f tests/builtins.right f tests/builtins1.sub f tests/builtins2.sub f +tests/builtins3.sub f tests/source1.sub f tests/source2.sub f tests/source3.sub f @@ -793,6 +809,8 @@ tests/comsub-eof.right f tests/comsub-posix.tests f tests/comsub-posix.right f tests/comsub-posix1.sub f +tests/comsub-posix2.sub f +tests/comsub-posix3.sub f tests/cond.tests f tests/cond.right f tests/cond-regexp.sub f @@ -832,11 +850,13 @@ tests/exec5.sub f tests/exec6.sub f tests/exec7.sub f tests/exec8.sub f +tests/exec9.sub f tests/exp.tests f tests/exp.right f tests/exp1.sub f tests/exp2.sub f tests/exp3.sub f +tests/exp4.sub f tests/extglob.tests f tests/extglob.right f tests/extglob1.sub f @@ -849,6 +869,7 @@ tests/func.right f tests/func1.sub f tests/func2.sub f tests/func3.sub f +tests/func4.sub f tests/getopts.tests f tests/getopts.right f tests/getopts1.sub f @@ -885,6 +906,7 @@ tests/input-line.sub f tests/input.right f tests/intl.tests f tests/intl1.sub f +tests/intl2.sub f tests/intl.right f tests/iquote.tests f tests/iquote.right f @@ -896,6 +918,9 @@ tests/jobs2.sub f tests/jobs3.sub f tests/jobs4.sub f tests/jobs.right f +tests/lastpipe.right f +tests/lastpipe.tests f +tests/lastpipe1.sub f tests/mapfile.data f tests/mapfile.right f tests/mapfile.tests f @@ -910,6 +935,7 @@ tests/new-exp4.sub f tests/new-exp5.sub f tests/new-exp6.sub f tests/new-exp7.sub f +tests/new-exp8.sub f tests/new-exp.right f tests/nquote.tests f tests/nquote.right f @@ -926,13 +952,23 @@ tests/nquote5.tests f tests/nquote5.right f tests/posix2.tests f tests/posix2.right f +tests/posixexp.tests f +tests/posixexp.right f +tests/posixexp1.sub f +tests/posixexp2.sub f +tests/posixexp2.tests f +tests/posixexp2.right f tests/posixpat.tests f tests/posixpat.right f +tests/posixpipe.tests f +tests/posixpipe.right f tests/prec.right f tests/precedence f tests/printf.tests f tests/printf.right f +tests/printf1.sub f tests/printf2.sub f +tests/printf3.sub f tests/quote.tests f tests/quote.right f tests/read.tests f @@ -1005,6 +1041,7 @@ tests/run-intl f tests/run-iquote f tests/run-invert f tests/run-jobs f +tests/run-lastpipe f tests/run-mapfile f tests/run-more-exp f tests/run-new-exp f @@ -1015,7 +1052,10 @@ tests/run-nquote3 f tests/run-nquote4 f tests/run-nquote5 f tests/run-posix2 f +tests/run-posixexp f +tests/run-posixexp2 f tests/run-posixpat f +tests/run-posixpipe f tests/run-precedence f tests/run-printf f tests/run-quote f @@ -1061,6 +1101,7 @@ tests/type.tests f tests/type.right f tests/type1.sub f tests/type2.sub f +tests/type3.sub f tests/varenv.right f tests/varenv.sh f tests/varenv1.sub f @@ -1074,6 +1115,7 @@ tests/vredir2.sub f tests/vredir3.sub f tests/vredir4.sub f tests/vredir5.sub f +tests/vredir6.sub f tests/misc/dev-tcp.tests f tests/misc/perf-script f tests/misc/perftest f diff --git a/Makefile.in b/Makefile.in index f01d49c7..9f9276d4 100644 --- a/Makefile.in +++ b/Makefile.in @@ -1,6 +1,6 @@ -# Makefile for bash-4.0, version 3.5 +# Makefile for bash-4.2, version 4.4 # -# Copyright (C) 1996-2009 Free Software Foundation, Inc. +# Copyright (C) 1996-2010 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 @@ -185,7 +185,7 @@ SH_ABSSRC = ${topdir}/${SH_LIBSRC} SHLIB_SOURCE = ${SH_LIBSRC}/clktck.c ${SH_LIBSRC}/getcwd.c \ ${SH_LIBSRC}/getenv.c ${SH_LIBSRC}/oslib.c \ - ${SH_LIBSRC}/setlinebuf.c \ + ${SH_LIBSRC}/setlinebuf.c ${SH_LIBSRC}/strchrnul.c \ ${SH_LIBSRC}/strcasecmp.c ${SH_LIBSRC}/strerror.c \ ${SH_LIBSRC}/strtod.c ${SH_LIBSRC}/strtol.c \ ${SH_LIBSRC}/strtoul.c ${SH_LIBSRC}/vprint.c \ @@ -212,9 +212,10 @@ SHLIB_SOURCE = ${SH_LIBSRC}/clktck.c ${SH_LIBSRC}/getcwd.c \ ${SH_LIBSRC}/zmapfd.c ${SH_LIBSRC}/fpurge.c \ ${SH_LIBSRC}/zgetline.c ${SH_LIBSRC}/mbscmp.c \ ${SH_LIBSRC}/casemod.c ${SH_LIBSRC}/uconvert.c \ - ${SH_LIBSRC}/ufuncs.c ${SH_LIBSRC}/fdprintf.c \ + ${SH_LIBSRC}/ufuncs.c ${SH_LIBSRC}/dprintf.c \ ${SH_LIBSRC}/input_avail.c ${SH_LIBSRC}/mbscasecmp.c \ - ${SH_LIBSRC}/fnxform.c + ${SH_LIBSRC}/fnxform.c ${SH_LIBSRC}/unicode.c \ + ${SH_LIBSRC}/wcswidth.c ${SH_LIBSRC}/shmbchar.c SHLIB_LIB = -lsh SHLIB_LIBNAME = libsh.a @@ -318,9 +319,11 @@ GLOB_DEP = $(GLOB_LIBRARY) GLOB_SOURCE = $(GLOB_LIBSRC)/glob.c $(GLOB_LIBSRC)/strmatch.c \ $(GLOB_LIBSRC)/smatch.c $(GLOB_LIBSRC)/xmbsrtowcs.c \ $(GLOB_LIBSRC)/glob_loop.c $(GLOB_LIBSRC)/sm_loop.c \ + $(GLOB_LIBSRC)/gmisc.c \ $(GLOB_LIBSRC)/glob.h $(GLOB_LIBSRC)/strmatch.h GLOB_OBJ = $(GLOB_LIBDIR)/glob.o $(GLOB_LIBDIR)/strmatch.o \ - $(GLOB_LIBDIR)/smatch.o $(GLOB_LIBDIR)/xmbsrtowcs.o + $(GLOB_LIBDIR)/smatch.o $(GLOB_LIBDIR)/xmbsrtowcs.o \ + $(GLOB_LIBDIR)/gmisc.o # The source, object and documentation for the GNU Tilde library. TILDE_LIBSRC = $(LIBSRC)/tilde @@ -519,7 +522,7 @@ CREATED_SUPPORT = signames.h recho$(EXEEXT) zecho$(EXEEXT) printenv$(EXEEXT) \ mksyntax${EXEEXT} syntax.c $(VERSPROG) $(VERSOBJ) \ buildversion.o mksignames.o signames.o buildsignames.o CREATED_CONFIGURE = config.h config.cache config.status config.log \ - stamp-h po/POTFILES + stamp-h po/POTFILES config.status.lineno CREATED_MAKEFILES = Makefile builtins/Makefile doc/Makefile \ lib/readline/Makefile lib/glob/Makefile \ lib/sh/Makefile lib/tilde/Makefile lib/malloc/Makefile \ @@ -564,7 +567,7 @@ strip: $(Program) .made lint: ${MAKE} ${MFLAGS} CFLAGS='${GCC_LINT_FLAGS}' .made -version.h: $(SOURCES) config.h Makefile +version.h: $(SOURCES) config.h Makefile patchlevel.h $(SHELL) $(SUPPORT_SRC)mkversion.sh -b -S ${topdir} -s $(RELSTATUS) -d $(Version) -o newversion.h \ && mv newversion.h version.h @@ -969,8 +972,8 @@ mailcheck.o: execute_cmd.h mailcheck.h make_cmd.o: config.h bashtypes.h ${BASHINCDIR}/filecntl.h bashansi.h make_cmd.o: command.h ${BASHINCDIR}/stdc.h general.h xmalloc.h error.h flags.h make_cmd.h make_cmd.o: variables.h arrayfunc.h conftypes.h array.h hashlib.h subst.h input.h externs.h -make_cmd.o: jobs.h quit.h siglist.h syntax.h dispose_cmd.h -make_cmd.o: ${BASHINCDIR}/shmbutil.h ${BASHINCDIR}/ocache.h +make_cmd.o: jobs.h quit.h siglist.h syntax.h dispose_cmd.h parser.h +make_cmd.o: ${BASHINCDIR}/shmbutil.h ${BASHINCDIR}/shmbchar.h ${BASHINCDIR}/ocache.h y.tab.o: config.h bashtypes.h bashansi.h ${BASHINCDIR}/ansi_stdlib.h ${BASHINCDIR}/memalloc.h y.tab.o: shell.h syntax.h config.h bashjmp.h ${BASHINCDIR}/posixjmp.h command.h ${BASHINCDIR}/stdc.h error.h y.tab.o: general.h xmalloc.h bashtypes.h variables.h arrayfunc.h conftypes.h array.h hashlib.h @@ -985,7 +988,7 @@ pathexp.o: quit.h ${BASHINCDIR}/maxpath.h unwind_prot.h dispose_cmd.h pathexp.o: make_cmd.h subst.h sig.h pathnames.h externs.h pathexp.o: pathexp.h flags.h pathexp.o: $(GLOB_LIBSRC)/glob.h $(GLOB_LIBSRC)/strmatch.h -pathexp.o: ${BASHINCDIR}/shmbutil.h +pathexp.o: ${BASHINCDIR}/shmbutil.h ${BASHINCDIR}/shmbchar.h print_cmd.o: config.h bashansi.h ${BASHINCDIR}/ansi_stdlib.h print_cmd.o: shell.h syntax.h config.h bashjmp.h ${BASHINCDIR}/posixjmp.h command.h ${BASHINCDIR}/stdc.h error.h print_cmd.o: general.h xmalloc.h bashtypes.h variables.h arrayfunc.h conftypes.h array.h hashlib.h @@ -1022,12 +1025,12 @@ subst.o: config.h bashtypes.h bashansi.h ${BASHINCDIR}/ansi_stdlib.h ${BASHINCDI subst.o: shell.h syntax.h config.h bashjmp.h ${BASHINCDIR}/posixjmp.h command.h ${BASHINCDIR}/stdc.h error.h subst.o: general.h xmalloc.h bashtypes.h variables.h arrayfunc.h conftypes.h array.h hashlib.h subst.o: quit.h ${BASHINCDIR}/maxpath.h unwind_prot.h dispose_cmd.h -subst.o: make_cmd.h subst.h sig.h pathnames.h externs.h +subst.o: make_cmd.h subst.h sig.h pathnames.h externs.h parser.h subst.o: flags.h jobs.h siglist.h execute_cmd.h ${BASHINCDIR}/filecntl.h trap.h pathexp.h subst.o: mailcheck.h input.h $(DEFSRC)/getopt.h $(DEFSRC)/common.h subst.o: bashline.h bashhist.h ${GLOB_LIBSRC}/strmatch.h subst.o: ${BASHINCDIR}/chartypes.h -subst.o: ${BASHINCDIR}/shmbutil.h +subst.o: ${BASHINCDIR}/shmbutil.h ${BASHINCDIR}/shmbchar.h subst.o: ${DEFDIR}/builtext.h test.o: bashtypes.h ${BASHINCDIR}/posixstat.h ${BASHINCDIR}/filecntl.h test.o: shell.h syntax.h config.h bashjmp.h ${BASHINCDIR}/posixjmp.h command.h ${BASHINCDIR}/stdc.h error.h @@ -1086,7 +1089,7 @@ arrayfunc.o: general.h xmalloc.h bashtypes.h variables.h arrayfunc.h conftypes.h arrayfunc.o: quit.h ${BASHINCDIR}/maxpath.h unwind_prot.h dispose_cmd.h arrayfunc.o: make_cmd.h subst.h sig.h pathnames.h externs.h pathexp.h arrayfunc.o: $(DEFSRC)/common.h -arrayfunc.o: ${BASHINCDIR}/shmbutil.h +arrayfunc.o: ${BASHINCDIR}/shmbutil.h ${BASHINCDIR}/shmbchar.h assoc.o: config.h bashansi.h ${BASHINCDIR}/ansi_stdlib.h assoc.o: shell.h syntax.h config.h bashjmp.h ${BASHINCDIR}/posixjmp.h assoc.o: command.h ${BASHINCDIR}/stdc.h error.h @@ -1100,7 +1103,7 @@ braces.o: shell.h syntax.h config.h bashjmp.h ${BASHINCDIR}/posixjmp.h command.h braces.o: general.h xmalloc.h bashtypes.h variables.h arrayfunc.h conftypes.h array.h hashlib.h braces.o: quit.h ${BASHINCDIR}/maxpath.h unwind_prot.h dispose_cmd.h braces.o: make_cmd.h subst.h sig.h pathnames.h externs.h -braces.o: ${BASHINCDIR}/shmbutil.h +braces.o: ${BASHINCDIR}/shmbutil.h ${BASHINCDIR}/shmbchar.h alias.o: config.h bashansi.h ${BASHINCDIR}/ansi_stdlib.h command.h ${BASHINCDIR}/stdc.h alias.o: general.h xmalloc.h bashtypes.h externs.h alias.h alias.o: pcomplete.h @@ -1184,7 +1187,7 @@ 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 +y.tab.o: 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 diff --git a/NEWS b/NEWS index 8b1b7bcd..028ba42a 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,99 @@ +This is a terse description of the new features added to bash-4.2 since +the release of bash-4.1. As always, the manual page (doc/bash.1) is +the place to look for complete descriptions. + +1. New Features in Bash + +a. `exec -a foo' now sets $0 to `foo' in an executable shell script without a + leading #!. + +b. Subshells begun to execute command substitutions or run shell functions or + builtins in subshells do not reset trap strings until a new trap is + specified. This allows $(trap) to display the caller's traps and the + trap strings to persist until a new trap is set. + +c. `trap -p' will now show signals ignored at shell startup, though their + disposition still cannot be modified. + +d. $'...', echo, and printf understand \uXXXX and \UXXXXXXXX escape sequences. + +e. declare/typeset has a new `-g' option, which creates variables in the + global scope even when run in a shell function. + +f. test/[/[[ have a new -v variable unary operator, which returns success if + `variable' has been set. + +g. Posix parsing changes to allow `! time command' and multiple consecutive + instances of `!' (which toggle) and `time' (which have no cumulative + effect). + +h. Posix change to allow `time' as a command by itself to print the elapsed + user, system, and real times for the shell and its children. + +j. $((...)) is always parsed as an arithmetic expansion first, instead of as + a potential nested command substitution, as Posix requires. + +k. A new FUNCNEST variable to allow the user to control the maximum shell + function nesting (recursive execution) level. + +l. The mapfile builtin now supplies a third argument to the callback command: + the line about to be assigned to the supplied array index. + +m. The printf builtin has a new %(fmt)T specifier, which allows time values + to use strftime-like formatting. + +n. There is a new `compat41' shell option. + +o. The cd builtin has a new Posix-mandated `-e' option. + +p. Negative subscripts to indexed arrays, previously errors, now are treated + as offsets from the maximum assigned index + 1. + +q. Negative length specifications in the ${var:offset:length} expansion, + previously errors, are now treated as offsets from the end of the variable. + +r. Parsing change to allow `time -p --'. + +s. Posix-mode parsing change to not recognize `time' as a keyword if the + following token begins with a `-'. This means no more Posix-mode + `time -p'. Posix interpretation 267. + +t. There is a new `lastpipe' shell option that runs the last command of a + pipeline in the current shell context. The lastpipe option has no + effect if job control is enabled. + +u. History expansion no longer expands the `$!' variable expansion. + +v. Posix mode shells no longer exit if a variable assignment error occurs + with an assignment preceding a command that is not a special builtin. + +w. Non-interactive mode shells exit if -u is enabled and an attempt is made + to use an unset variable with the % or # expansions, the `//', `^', or + `,' expansions, or the parameter length expansion. + +x. Posix-mode shells use the argument passed to `.' as-is if a $PATH search + fails, effectively searching the current directory. Posix-2008 change. + +2. New Features in Readline + +a. The history library does not try to write the history filename in the + current directory if $HOME is unset. This closes a potential security + problem if the application does not specify a history filename. + +b. New bindable variable `completion-display-width' to set the number of + columns used when displaying completions. + +c. New bindable variable `completion-case-map' to cause case-insensitive + completion to treat `-' and `_' as identical. + +d. There are new bindable vi-mode command names to avoid readline's case- + insensitive matching not allowing them to be bound separately. + +e. New bindable variable `menu-complete-display-prefix' causes the menu + completion code to display the common prefix of the possible completions + before cycling through the list, instead of after. + +------------------------------------------------------------------------------- This is a terse description of the new features added to bash-4.1 since the release of bash-4.0. As always, the manual page (doc/bash.1) is the place to look for complete descriptions. diff --git a/POSIX b/POSIX index 6c57b876..406676e5 100644 --- a/POSIX +++ b/POSIX @@ -55,116 +55,129 @@ The following list is what's changed when `POSIX mode' is in effect: 13. Non-interactive shells exit if a syntax error in an arithmetic expansion results in an invalid expression. - 14. Redirection operators do not perform filename expansion on the word + 14. Non-interactive shells exit if there is a syntax error in a script + read with the `.' or `source' builtins, or in a string processed by + the `eval' builtin. + + 15. Redirection operators do not perform filename expansion on the word in the redirection unless the shell is interactive. - 15. Redirection operators do not perform word splitting on the word in + 16. Redirection operators do not perform word splitting on the word in the redirection. - 16. Function names must be valid shell `name's. That is, they may not + 17. Function names must be valid shell `name's. That is, they may not contain characters other than letters, digits, and underscores, and may not start with a digit. Declaring a function with an invalid name causes a fatal syntax error in non-interactive shells. - 17. POSIX special builtins are found before shell functions during + 18. POSIX special builtins are found before shell functions during command lookup. - 18. If a POSIX special builtin returns an error status, a + 19. The `time' reserved word may be used by itself as a command. When + used in this way, it displays timing statistics for the shell and + its completed children. The `TIMEFORMAT' variable controls the + format of the timing information. + + 20. When parsing and expanding a ${...} expansion that appears within + double quotes, single quotes are no longer special and cannot be + used to quote a closing brace or other special character, unless + the operator is one of those defined to perform pattern removal. + In this case, they do not have to appear as matched pairs. + + 21. The parser does not recognize `time' as a reserved word if the next + token begins with a `-'. + + 22. If a POSIX special builtin returns an error status, a non-interactive shell exits. The fatal errors are those listed in the POSIX standard, and include things like passing incorrect options, redirection errors, variable assignment errors for assignments preceding the command name, and so on. - 19. If `CDPATH' is set, the `cd' builtin will not implicitly append - the current directory to it. This means that `cd' will fail if no - valid directory name can be constructed from any of the entries in - `$CDPATH', even if the a directory with the same name as the name - given as an argument to `cd' exists in the current directory. - - 20. A non-interactive shell exits with an error status if a variable + 23. A non-interactive shell exits with an error status if a variable assignment error occurs when no command name follows the assignment statements. A variable assignment error occurs, for example, when trying to assign a value to a readonly variable. - 21. A non-interactive shell exits with an error status if the iteration + 24. A non-interactive shell exists with an error status if a variable + assignment error occurs in an assignment statement preceding a + special builtin, but not with any other simple command. + + 25. A non-interactive shell exits with an error status if the iteration variable in a `for' statement or the selection variable in a `select' statement is a readonly variable. - 22. Process substitution is not available. + 26. Process substitution is not available. - 23. Assignment statements preceding POSIX special builtins persist in + 27. Assignment statements preceding POSIX special builtins persist in the shell environment after the builtin completes. - 24. Assignment statements preceding shell function calls persist in the + 28. Assignment statements preceding shell function calls persist in the shell environment after the function returns, as if a POSIX special builtin command had been executed. - 25. The `export' and `readonly' builtin commands display their output + 29. The `export' and `readonly' builtin commands display their output in the format required by POSIX. - 26. The `trap' builtin displays signal names without the leading `SIG'. + 30. The `trap' builtin displays signal names without the leading `SIG'. - 27. The `trap' builtin doesn't check the first argument for a possible + 31. The `trap' builtin doesn't check the first argument for a possible signal specification and revert the signal handling to the original disposition if it is, unless that argument consists solely of digits and is a valid signal number. If users want to reset the handler for a given signal to the original disposition, they should use `-' as the first argument. - 28. The `.' and `source' builtins do not search the current directory + 32. The `.' and `source' builtins do not search the current directory for the filename argument if it is not found by searching `PATH'. - 29. Subshells spawned to execute command substitutions inherit the + 33. Subshells spawned to execute command substitutions inherit the value of the `-e' option from the parent shell. When not in POSIX mode, Bash clears the `-e' option in such subshells. - 30. Alias expansion is always enabled, even in non-interactive shells. + 34. Alias expansion is always enabled, even in non-interactive shells. - 31. When the `alias' builtin displays alias definitions, it does not + 35. When the `alias' builtin displays alias definitions, it does not display them with a leading `alias ' unless the `-p' option is supplied. - 32. When the `set' builtin is invoked without options, it does not + 36. When the `set' builtin is invoked without options, it does not display shell function names and definitions. - 33. When the `set' builtin is invoked without options, it displays + 37. When the `set' builtin is invoked without options, it displays variable values without quotes, unless they contain shell metacharacters, even if the result contains nonprinting characters. - 34. When the `cd' builtin is invoked in LOGICAL mode, and the pathname + 38. When the `cd' builtin is invoked in LOGICAL mode, and the pathname constructed from `$PWD' and the directory name supplied as an argument does not refer to an existing directory, `cd' will fail instead of falling back to PHYSICAL mode. - 35. When the `pwd' builtin is supplied the `-P' option, it resets - `$PWD' to a pathname containing no symlinks. - - 36. The `pwd' builtin verifies that the value it prints is the same as + 39. The `pwd' builtin verifies that the value it prints is the same as the current directory, even if it is not asked to check the file system with the `-P' option. - 37. When listing the history, the `fc' builtin does not include an + 40. When listing the history, the `fc' builtin does not include an indication of whether or not a history entry has been modified. - 38. The default editor used by `fc' is `ed'. + 41. The default editor used by `fc' is `ed'. - 39. The `type' and `command' builtins will not report a non-executable + 42. The `type' and `command' builtins will not report a non-executable file as having been found, though the shell will attempt to execute such a file if it is the only so-named file found in `$PATH'. - 40. The `vi' editing mode will invoke the `vi' editor directly when + 43. The `vi' editing mode will invoke the `vi' editor directly when the `v' command is run, instead of checking `$VISUAL' and `$EDITOR'. - 41. When the `xpg_echo' option is enabled, Bash does not attempt to + 44. When the `xpg_echo' option is enabled, Bash does not attempt to interpret any arguments to `echo' as options. Each argument is displayed, after escape characters are converted. - 42. The `ulimit' builtin uses a block size of 512 bytes for the `-c' + 45. The `ulimit' builtin uses a block size of 512 bytes for the `-c' and `-f' options. - 43. The arrival of `SIGCHLD' when a trap is set on `SIGCHLD' does not + 46. The arrival of `SIGCHLD' when a trap is set on `SIGCHLD' does not interrupt the `wait' builtin and cause it to return immediately. The trap command is run once for each child that exits. diff --git a/README b/README index c5c71590..8d86c579 100644 --- a/README +++ b/README @@ -1,8 +1,8 @@ Introduction ============ -This is GNU Bash, version 4.1. Bash is the GNU Project's Bourne -Again SHell, a complete implementation of the POSIX.2 shell spec, +This is GNU Bash, version 4.2. Bash is the GNU Project's Bourne +Again SHell, a complete implementation of the POSIX shell spec, but also with interactive command line editing, job control on architectures that support it, csh-like features such as history substitution and brace expansion, and a slew of other features. @@ -12,11 +12,11 @@ large Unix-style man page. The man page is the definitive description of the shell's features. See the file POSIX for a discussion of how the Bash defaults differ -from the POSIX.2 spec and a description of the Bash `posix mode'. +from the POSIX spec and a description of the Bash `posix mode'. There are some user-visible incompatibilities between this version -of Bash and previous widely-distributed versions, bash-3.2 and -bash-4.0. For details, see the file COMPAT. The NEWS file tersely +of Bash and previous widely-distributed versions, bash-4.0 and +bash-4.1. For details, see the file COMPAT. The NEWS file tersely lists features that are new in this release. Bash is free software, distributed under the terms of the [GNU] General @@ -27,10 +27,10 @@ see the file COPYING. A number of frequently-asked questions are answered in the file `doc/FAQ'. -To compile Bash, try typing `./configure', then `make'. Bash -auto-configures the build process, so no further intervention -should be necessary. Bash builds with `gcc' by default if it is -available. If you want to use `cc' instead, type +To compile Bash, type `./configure', then `make'. Bash auto-configures +the build process, so no further intervention should be necessary. Bash +builds with `gcc' by default if it is available. If you want to use `cc' +instead, type CC=cc ./configure diff --git a/aclocal.m4 b/aclocal.m4 index 10a4741e..716a0436 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -1695,8 +1695,10 @@ AC_CHECK_HEADERS(langinfo.h) AC_CHECK_FUNC(mbrlen, AC_DEFINE(HAVE_MBRLEN)) AC_CHECK_FUNC(mbscasecmp, AC_DEFINE(HAVE_MBSCMP)) AC_CHECK_FUNC(mbscmp, AC_DEFINE(HAVE_MBSCMP)) +AC_CHECK_FUNC(mbsnrtowcs, AC_DEFINE(HAVE_MBSNRTOWCS)) AC_CHECK_FUNC(mbsrtowcs, AC_DEFINE(HAVE_MBSRTOWCS)) + AC_REPLACE_FUNCS(mbschr) AC_CHECK_FUNC(wcrtomb, AC_DEFINE(HAVE_WCRTOMB)) @@ -1705,6 +1707,8 @@ AC_CHECK_FUNC(wcsdup, AC_DEFINE(HAVE_WCSDUP)) AC_CHECK_FUNC(wcwidth, AC_DEFINE(HAVE_WCWIDTH)) AC_CHECK_FUNC(wctype, AC_DEFINE(HAVE_WCTYPE)) +AC_REPLACE_FUNCS(wcswidth) + dnl checks for both mbrtowc and mbstate_t AC_FUNC_MBRTOWC if test $ac_cv_func_mbrtowc = yes; then @@ -4115,3 +4119,51 @@ main() [Define if you have a standard-conformant vsnprintf function.]) fi ]) + +AC_DEFUN(BASH_STRUCT_WEXITSTATUS_OFFSET, +[AC_MSG_CHECKING(for offset of exit status in return status from wait) +AC_CACHE_VAL(bash_cv_wexitstatus_offset, +[AC_RUN_IFELSE([ +#include +#include + +#include + +main(c, v) + int c; + char **v; +{ + pid_t pid, p; + int s, i, n; + + s = 0; + pid = fork(); + if (pid == 0) + exit (42); + + /* wait for the process */ + p = wait(&s); + if (p != pid) + exit (255); + + /* crack s */ + for (i = 0; i < (sizeof(s) - 8); i++) + { + n = (s >> i) & 0xff; + if (n == 42) + exit (i); + } + + exit (254); +} +], bash_cv_wexitstatus_offset=0, bash_cv_wexitstatus_offset=$?, + [AC_MSG_WARN(cannot check WEXITSTATUS offset if cross compiling -- defaulting to 0) + bash_cv_wexitstatus_offset=0] +)]) +if test "$bash_cv_wexitstatus_offset" -gt 32 ; then + AC_MSG_WARN(bad exit status from test program -- defaulting to 0) + bash_cv_wexitstatus_offset=0 +fi +AC_MSG_RESULT($bash_cv_wexitstatus_offset) +AC_DEFINE_UNQUOTED([WEXITSTATUS_OFFSET], [$bash_cv_wexitstatus_offset], [Offset of exit status in wait status word]) +]) diff --git a/alias.c b/alias.c index 558665e5..6c953760 100644 --- a/alias.c +++ b/alias.c @@ -319,6 +319,8 @@ skipquotes (string, start) if (string[i] == '\\') { i++; /* skip backslash-quoted quote characters, too */ + if (string[i] == 0) + break; continue; } @@ -364,6 +366,8 @@ skipws (string, start) if (string[i] == '\\') { peekc = string[i+1]; + if (peekc == 0) + break; if (ISLETTER (peekc)) backslash_quoted_word++; /* this is a backslash-quoted word */ else @@ -429,6 +433,8 @@ rd_token (string, start) if (string[i] == '\\') { i++; /* skip backslash-escaped character */ + if (string[i] == 0) + break; continue; } diff --git a/arrayfunc.c b/arrayfunc.c index 218faf3d..21eb4cd7 100644 --- a/arrayfunc.c +++ b/arrayfunc.c @@ -1,6 +1,6 @@ /* arrayfunc.c -- High-level array functions used by other parts of the shell. */ -/* Copyright (C) 2001-2009 Free Software Foundation, Inc. +/* Copyright (C) 2001-2010 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. @@ -44,7 +44,7 @@ static SHELL_VAR *bind_array_var_internal __P((SHELL_VAR *, arrayind_t, char *, static char *quote_assign __P((const char *)); static void quote_array_assignment_chars __P((WORD_LIST *)); -static char *array_value_internal __P((char *, int, int, int *)); +static char *array_value_internal __P((char *, int, int, int *, arrayind_t *)); /* Standard error message to use when encountering an invalid array subscript */ const char * const bash_badsub_errmsg = N_("bad array subscript"); @@ -658,6 +658,7 @@ unbind_array_element (var, sub) return -1; } assoc_remove (assoc_cell (var), akey); + free (akey); } else { @@ -842,15 +843,31 @@ array_variable_part (s, subp, lenp) return (var == 0 || invisible_p (var)) ? (SHELL_VAR *)0 : var; } +#define INDEX_ERROR() \ + do \ + { \ + if (var) \ + err_badarraysub (var->name); \ + else \ + { \ + t[-1] = '\0'; \ + err_badarraysub (s); \ + t[-1] = '['; /* ] */\ + } \ + return ((char *)NULL); \ + } \ + while (0) + /* Return a string containing the elements in the array and subscript described by S. If the subscript is * or @, obeys quoting rules akin to the expansion of $* and $@ including double quoting. If RTYPE is non-null it gets 1 if the array reference is name[*], 2 if the reference is name[@], and 0 otherwise. */ static char * -array_value_internal (s, quoted, allow_all, rtype) +array_value_internal (s, quoted, flags, rtype, indp) char *s; - int quoted, allow_all, *rtype; + int quoted, flags, *rtype; + arrayind_t *indp; { int len; arrayind_t ind; @@ -876,12 +893,12 @@ array_value_internal (s, quoted, allow_all, rtype) { if (rtype) *rtype = (t[0] == '*') ? 1 : 2; - if (allow_all == 0) + if ((flags & AV_ALLOWALL) == 0) { err_badarraysub (s); return ((char *)NULL); } - else if (var == 0 || value_cell (var) == 0) + else if (var == 0 || value_cell (var) == 0) /* XXX - check for invisible_p(var) ? */ return ((char *)NULL); else if (array_p (var) == 0 && assoc_p (var) == 0) l = add_string_to_list (value_cell (var), (WORD_LIST *)NULL); @@ -915,20 +932,22 @@ array_value_internal (s, quoted, allow_all, rtype) *rtype = 0; if (var == 0 || array_p (var) || assoc_p (var) == 0) { - ind = array_expand_index (t, len); - if (ind < 0) + if ((flags & AV_USEIND) == 0 || indp == 0) { -index_error: - if (var) - err_badarraysub (var->name); - else + ind = array_expand_index (t, len); + if (ind < 0) { - t[-1] = '\0'; - err_badarraysub (s); - t[-1] = '['; /* ] */ + /* negative subscripts to indexed arrays count back from end */ + if (var && array_p (var)) + ind = array_max_index (array_cell (var)) + 1 + ind; + if (ind < 0) + INDEX_ERROR(); } - return ((char *)NULL); + if (indp) + *indp = ind; } + else if (indp) + ind = *indp; } else if (assoc_p (var)) { @@ -936,15 +955,18 @@ index_error: akey = expand_assignment_string_to_string (t, 0); /* [ */ t[len - 1] = ']'; if (akey == 0 || *akey == 0) - goto index_error; + INDEX_ERROR(); } - if (var == 0) + if (var == 0 || value_cell (var) == 0) /* XXX - check invisible_p(var) ? */ return ((char *)NULL); if (array_p (var) == 0 && assoc_p (var) == 0) return (ind == 0 ? value_cell (var) : (char *)NULL); else if (assoc_p (var)) - retval = assoc_reference (assoc_cell (var), akey); + { + retval = assoc_reference (assoc_cell (var), akey); + free (akey); + } else retval = array_reference (array_cell (var), ind); } @@ -955,23 +977,25 @@ index_error: /* Return a string containing the elements described by the array and subscript contained in S, obeying quoting for subscripts * and @. */ char * -array_value (s, quoted, rtype) +array_value (s, quoted, flags, rtype, indp) char *s; - int quoted, *rtype; + int quoted, flags, *rtype; + arrayind_t *indp; { - return (array_value_internal (s, quoted, 1, rtype)); + return (array_value_internal (s, quoted, flags|AV_ALLOWALL, rtype, indp)); } /* Return the value of the array indexing expression S as a single string. - If ALLOW_ALL is 0, do not allow `@' and `*' subscripts. This is used - by other parts of the shell such as the arithmetic expression evaluator - in expr.c. */ + If (FLAGS & AV_ALLOWALL) is 0, do not allow `@' and `*' subscripts. This + is used by other parts of the shell such as the arithmetic expression + evaluator in expr.c. */ char * -get_array_value (s, allow_all, rtype) +get_array_value (s, flags, rtype, indp) char *s; - int allow_all, *rtype; + int flags, *rtype; + arrayind_t *indp; { - return (array_value_internal (s, 0, allow_all, rtype)); + return (array_value_internal (s, 0, flags, rtype, indp)); } char * @@ -990,6 +1014,9 @@ array_keys (s, quoted) if (var == 0 || ALL_ELEMENT_SUB (t[0]) == 0 || t[1] != ']') return (char *)NULL; + if (var_isset (var) == 0 || invisible_p (var)) + return (char *)NULL; + if (array_p (var) == 0 && assoc_p (var) == 0) l = add_string_to_list ("0", (WORD_LIST *)NULL); else if (assoc_p (var)) diff --git a/arrayfunc.h b/arrayfunc.h index c12fc993..8363d16b 100644 --- a/arrayfunc.h +++ b/arrayfunc.h @@ -1,6 +1,6 @@ /* arrayfunc.h -- declarations for miscellaneous array functions in arrayfunc.c */ -/* Copyright (C) 2001-2009 Free Software Foundation, Inc. +/* Copyright (C) 2001-2010 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. @@ -25,6 +25,11 @@ #if defined (ARRAY_VARS) +/* Flags for array_value_internal and callers array_value/get_array_value */ +#define AV_ALLOWALL 0x001 +#define AV_QUOTED 0x002 +#define AV_USEIND 0x004 + extern SHELL_VAR *convert_var_to_array __P((SHELL_VAR *)); extern SHELL_VAR *convert_var_to_assoc __P((SHELL_VAR *)); @@ -51,8 +56,8 @@ extern void print_assoc_assignment __P((SHELL_VAR *, int)); extern arrayind_t array_expand_index __P((char *, int)); extern int valid_array_reference __P((char *)); -extern char *array_value __P((char *, int, int *)); -extern char *get_array_value __P((char *, int, int *)); +extern char *array_value __P((char *, int, int, int *, arrayind_t *)); +extern char *get_array_value __P((char *, int, int *, arrayind_t *)); extern char *array_keys __P((char *, int)); diff --git a/autom4te.cache/output.0 b/autom4te.cache/output.0 new file mode 100644 index 00000000..5ddaaa6e --- /dev/null +++ b/autom4te.cache/output.0 @@ -0,0 +1,31473 @@ +@%:@! /bin/sh +@%:@ From configure.in for Bash 4.0, version 4.013. +@%:@ Guess values for system-dependent variables and create Makefiles. +@%:@ Generated by GNU Autoconf 2.63 for bash 4.0-release. +@%:@ +@%:@ Report bugs to . +@%:@ +@%:@ Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, +@%:@ 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +@%:@ This configure script is free software; the Free Software Foundation +@%:@ gives unlimited permission to copy, distribute and modify it. +## --------------------- ## +## M4sh Initialization. ## +## --------------------- ## + +# Be more Bourne compatible +DUALCASE=1; export DUALCASE # for MKS sh +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in + *posix*) set -o posix ;; +esac + +fi + + + + +# PATH needs CR +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits + +as_nl=' +' +export as_nl +# Printing a long string crashes Solaris 7 /usr/bin/printf. +as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo +if (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='printf %s\n' + as_echo_n='printf %s' +else + if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then + as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' + as_echo_n='/usr/ucb/echo -n' + else + as_echo_body='eval expr "X$1" : "X\\(.*\\)"' + as_echo_n_body='eval + arg=$1; + case $arg in + *"$as_nl"*) + expr "X$arg" : "X\\(.*\\)$as_nl"; + arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; + esac; + expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" + ' + export as_echo_n_body + as_echo_n='sh -c $as_echo_n_body as_echo' + fi + export as_echo_body + as_echo='sh -c $as_echo_body as_echo' +fi + +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { + (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || + PATH_SEPARATOR=';' + } +fi + +# Support unset when possible. +if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then + as_unset=unset +else + as_unset=false +fi + + +# IFS +# We need space, tab and new line, in precisely that order. Quoting is +# there to prevent editors from complaining about space-tab. +# (If _AS_PATH_WALK were called with IFS unset, it would disable word +# splitting by setting IFS to empty value.) +IFS=" "" $as_nl" + +# Find who we are. Look in the path if we contain no directory separator. +case $0 in + *[\\/]* ) as_myself=$0 ;; + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break +done +IFS=$as_save_IFS + + ;; +esac +# We did not find ourselves, most probably we were run as `sh COMMAND' +# in which case we are not to be found in the path. +if test "x$as_myself" = x; then + as_myself=$0 +fi +if test ! -f "$as_myself"; then + $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + { (exit 1); exit 1; } +fi + +# Work around bugs in pre-3.0 UWIN ksh. +for as_var in ENV MAIL MAILPATH +do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var +done +PS1='$ ' +PS2='> ' +PS4='+ ' + +# NLS nuisances. +LC_ALL=C +export LC_ALL +LANGUAGE=C +export LANGUAGE + +# Required to use basename. +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr +else + as_expr=false +fi + +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then + as_basename=basename +else + as_basename=false +fi + + +# Name of the executable. +as_me=`$as_basename -- "$0" || +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + +# CDPATH. +$as_unset CDPATH + + +if test "x$CONFIG_SHELL" = x; then + if (eval ":") 2>/dev/null; then + as_have_required=yes +else + as_have_required=no +fi + + if test $as_have_required = yes && (eval ": +(as_func_return () { + (exit \$1) +} +as_func_success () { + as_func_return 0 +} +as_func_failure () { + as_func_return 1 +} +as_func_ret_success () { + return 0 +} +as_func_ret_failure () { + return 1 +} + +exitcode=0 +if as_func_success; then + : +else + exitcode=1 + echo as_func_success failed. +fi + +if as_func_failure; then + exitcode=1 + echo as_func_failure succeeded. +fi + +if as_func_ret_success; then + : +else + exitcode=1 + echo as_func_ret_success failed. +fi + +if as_func_ret_failure; then + exitcode=1 + echo as_func_ret_failure succeeded. +fi + +if ( set x; as_func_ret_success y && test x = \"\$1\" ); then + : +else + exitcode=1 + echo positional parameters were not saved. +fi + +test \$exitcode = 0) || { (exit 1); exit 1; } + +( + as_lineno_1=\$LINENO + as_lineno_2=\$LINENO + test \"x\$as_lineno_1\" != \"x\$as_lineno_2\" && + test \"x\`expr \$as_lineno_1 + 1\`\" = \"x\$as_lineno_2\") || { (exit 1); exit 1; } +") 2> /dev/null; then + : +else + as_candidate_shells= + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + case $as_dir in + /*) + for as_base in sh bash ksh sh5; do + as_candidate_shells="$as_candidate_shells $as_dir/$as_base" + done;; + esac +done +IFS=$as_save_IFS + + + for as_shell in $as_candidate_shells $SHELL; do + # Try only shells that exist, to save several forks. + if { test -f "$as_shell" || test -f "$as_shell.exe"; } && + { ("$as_shell") 2> /dev/null <<\_ASEOF +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in + *posix*) set -o posix ;; +esac + +fi + + +: +_ASEOF +}; then + CONFIG_SHELL=$as_shell + as_have_required=yes + if { "$as_shell" 2> /dev/null <<\_ASEOF +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in + *posix*) set -o posix ;; +esac + +fi + + +: +(as_func_return () { + (exit $1) +} +as_func_success () { + as_func_return 0 +} +as_func_failure () { + as_func_return 1 +} +as_func_ret_success () { + return 0 +} +as_func_ret_failure () { + return 1 +} + +exitcode=0 +if as_func_success; then + : +else + exitcode=1 + echo as_func_success failed. +fi + +if as_func_failure; then + exitcode=1 + echo as_func_failure succeeded. +fi + +if as_func_ret_success; then + : +else + exitcode=1 + echo as_func_ret_success failed. +fi + +if as_func_ret_failure; then + exitcode=1 + echo as_func_ret_failure succeeded. +fi + +if ( set x; as_func_ret_success y && test x = "$1" ); then + : +else + exitcode=1 + echo positional parameters were not saved. +fi + +test $exitcode = 0) || { (exit 1); exit 1; } + +( + as_lineno_1=$LINENO + as_lineno_2=$LINENO + test "x$as_lineno_1" != "x$as_lineno_2" && + test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2") || { (exit 1); exit 1; } + +_ASEOF +}; then + break +fi + +fi + + done + + if test "x$CONFIG_SHELL" != x; then + for as_var in BASH_ENV ENV + do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var + done + export CONFIG_SHELL + exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"} +fi + + + if test $as_have_required = no; then + echo This script requires a shell more modern than all the + echo shells that I found on your system. Please install a + echo modern shell, or manually run the script under such a + echo shell if you do have one. + { (exit 1); exit 1; } +fi + + +fi + +fi + + + +(eval "as_func_return () { + (exit \$1) +} +as_func_success () { + as_func_return 0 +} +as_func_failure () { + as_func_return 1 +} +as_func_ret_success () { + return 0 +} +as_func_ret_failure () { + return 1 +} + +exitcode=0 +if as_func_success; then + : +else + exitcode=1 + echo as_func_success failed. +fi + +if as_func_failure; then + exitcode=1 + echo as_func_failure succeeded. +fi + +if as_func_ret_success; then + : +else + exitcode=1 + echo as_func_ret_success failed. +fi + +if as_func_ret_failure; then + exitcode=1 + echo as_func_ret_failure succeeded. +fi + +if ( set x; as_func_ret_success y && test x = \"\$1\" ); then + : +else + exitcode=1 + echo positional parameters were not saved. +fi + +test \$exitcode = 0") || { + echo No shell found that supports shell functions. + echo Please tell bug-autoconf@gnu.org about your system, + echo including any error possibly output before this message. + echo This can help us improve future autoconf versions. + echo Configuration will now proceed without shell functions. +} + + + + as_lineno_1=$LINENO + as_lineno_2=$LINENO + test "x$as_lineno_1" != "x$as_lineno_2" && + test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || { + + # Create $as_me.lineno as a copy of $as_myself, but with $LINENO + # uniformly replaced by the line number. The first 'sed' inserts a + # line-number line after each line using $LINENO; the second 'sed' + # does the real work. The second script uses 'N' to pair each + # line-number line with the line containing $LINENO, and appends + # trailing '-' during substitution so that $LINENO is not a special + # case at line end. + # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the + # scripts with optimization help from Paolo Bonzini. Blame Lee + # E. McMahon (1931-1989) for sed's syntax. :-) + sed -n ' + p + /[$]LINENO/= + ' <$as_myself | + sed ' + s/[$]LINENO.*/&-/ + t lineno + b + :lineno + N + :loop + s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ + t loop + s/-\n.*// + ' >$as_me.lineno && + chmod +x "$as_me.lineno" || + { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 + { (exit 1); exit 1; }; } + + # Don't try to exec as it changes $[0], causing all sort of problems + # (the dirname of $[0] is not the place where we might find the + # original and so on. Autoconf is especially sensitive to this). + . "./$as_me.lineno" + # Exit status is that of the last command. + exit +} + + +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname +else + as_dirname=false +fi + +ECHO_C= ECHO_N= ECHO_T= +case `echo -n x` in +-n*) + case `echo 'x\c'` in + *c*) ECHO_T=' ';; # ECHO_T is single tab character. + *) ECHO_C='\c';; + esac;; +*) + ECHO_N='-n';; +esac +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr +else + as_expr=false +fi + +rm -f conf$$ conf$$.exe conf$$.file +if test -d conf$$.dir; then + rm -f conf$$.dir/conf$$.file +else + rm -f conf$$.dir + mkdir conf$$.dir 2>/dev/null +fi +if (echo >conf$$.file) 2>/dev/null; then + if ln -s conf$$.file conf$$ 2>/dev/null; then + as_ln_s='ln -s' + # ... but there are two gotchas: + # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. + # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. + # In both cases, we have to default to `cp -p'. + ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || + as_ln_s='cp -p' + elif ln conf$$.file conf$$ 2>/dev/null; then + as_ln_s=ln + else + as_ln_s='cp -p' + fi +else + as_ln_s='cp -p' +fi +rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file +rmdir conf$$.dir 2>/dev/null + +if mkdir -p . 2>/dev/null; then + as_mkdir_p=: +else + test -d ./-p && rmdir ./-p + as_mkdir_p=false +fi + +if test -x / >/dev/null 2>&1; then + as_test_x='test -x' +else + if ls -dL / >/dev/null 2>&1; then + as_ls_L_option=L + else + as_ls_L_option= + fi + as_test_x=' + eval sh -c '\'' + if test -d "$1"; then + test -d "$1/."; + else + case $1 in + -*)set "./$1";; + esac; + case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in + ???[sx]*):;;*)false;;esac;fi + '\'' sh + ' +fi +as_executable_p=$as_test_x + +# Sed expression to map a string onto a valid CPP name. +as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" + +# Sed expression to map a string onto a valid variable name. +as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" + + + +exec 7<&0 &1 + +# Name of the host. +# hostname on some systems (SVR3.2, Linux) returns a bogus exit status, +# so uname gets run too. +ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` + +# +# Initializations. +# +ac_default_prefix=/usr/local +ac_clean_files= +ac_config_libobj_dir=. +LIB@&t@OBJS= +cross_compiling=no +subdirs= +MFLAGS= +MAKEFLAGS= +SHELL=${CONFIG_SHELL-/bin/sh} + +# Identity of this package. +PACKAGE_NAME='bash' +PACKAGE_TARNAME='bash' +PACKAGE_VERSION='4.0-release' +PACKAGE_STRING='bash 4.0-release' +PACKAGE_BUGREPORT='bug-bash@gnu.org' + +ac_unique_file="shell.h" +# Factoring default headers for most tests. +ac_includes_default="\ +#include +#ifdef HAVE_SYS_TYPES_H +# include +#endif +#ifdef HAVE_SYS_STAT_H +# include +#endif +#ifdef STDC_HEADERS +# include +# include +#else +# ifdef HAVE_STDLIB_H +# include +# endif +#endif +#ifdef HAVE_STRING_H +# if !defined STDC_HEADERS && defined HAVE_MEMORY_H +# include +# endif +# include +#endif +#ifdef HAVE_STRINGS_H +# include +#endif +#ifdef HAVE_INTTYPES_H +# include +#endif +#ifdef HAVE_STDINT_H +# include +#endif +#ifdef HAVE_UNISTD_H +# include +#endif" + +ac_header_list= +ac_func_list= +ac_subst_vars='LTLIBOBJS +LOCAL_DEFS +LOCAL_LDFLAGS +LOCAL_CFLAGS +LOCAL_LIBS +MALLOC_DEBUG +DEBUG +RELSTATUS +BASHVERS +ARFLAGS +BUILD_DIR +incdir +PROFILE_FLAGS +SHOBJ_STATUS +SHOBJ_LIBS +SHOBJ_XLDFLAGS +SHOBJ_LDFLAGS +SHOBJ_LD +SHOBJ_CFLAGS +SHOBJ_CC +JOBS_O +TERMCAP_DEP +TERMCAP_LIB +SIGLIST_O +LIBINTL_H +INTL_INC +INTL_DEP +LIB@&t@OBJS +POSUB +LTLIBINTL +LIBINTL +INTLLIBS +INTL_LIBTOOL_SUFFIX_PREFIX +INTLOBJS +GENCAT +INSTOBJEXT +DATADIRNAME +CATOBJEXT +USE_INCLUDED_LIBINTL +BUILD_INCLUDED_LIBINTL +INTLBISON +LTLIBICONV +LIBICONV +GLIBC21 +ALLOCA +MSGMERGE +XGETTEXT +GMSGFMT +MSGFMT +USE_NLS +MKINSTALLDIRS +SIZE +MAKE_SHELL +SET_MAKE +YFLAGS +YACC +RANLIB +AR +INSTALL_DATA +INSTALL_SCRIPT +INSTALL_PROGRAM +TILDE_LIB +HIST_LIBDIR +HISTORY_DEP +HISTORY_LIB +RL_INCLUDE +RL_INCLUDEDIR +RL_LIBDIR +READLINE_DEP +READLINE_LIB +RL_MINOR +RL_MAJOR +RL_VERSION +LDFLAGS_FOR_BUILD +CPPFLAGS_FOR_BUILD +CFLAGS_FOR_BUILD +STATIC_LD +CC_FOR_BUILD +SIGNAMES_O +SIGNAMES_H +CROSS_COMPILE +EGREP +GREP +CPP +OBJEXT +EXEEXT +ac_ct_CC +CPPFLAGS +LDFLAGS +CFLAGS +CC +HELPSTRINGS +HELPINSTALL +HELPDIRDEFINE +HELPDIR +MALLOC_DEP +MALLOC_LDFLAGS +MALLOC_LIBRARY +MALLOC_LIB +MALLOC_SRC +MALLOC_TARGET +PURIFY +TESTSCRIPT +DEBUGGER_START_FILE +lispdir +EMACS +host_os +host_vendor +host_cpu +host +build_os +build_vendor +build_cpu +build +target_alias +host_alias +build_alias +LIBS +ECHO_T +ECHO_N +ECHO_C +DEFS +mandir +localedir +libdir +psdir +pdfdir +dvidir +htmldir +infodir +docdir +oldincludedir +includedir +localstatedir +sharedstatedir +sysconfdir +datadir +datarootdir +libexecdir +sbindir +bindir +program_transform_name +prefix +exec_prefix +PACKAGE_BUGREPORT +PACKAGE_STRING +PACKAGE_VERSION +PACKAGE_TARNAME +PACKAGE_NAME +PATH_SEPARATOR +SHELL' +ac_subst_files='' +ac_user_opts=' +enable_option_checking +with_lispdir +with_afs +with_bash_malloc +with_curses +with_gnu_malloc +with_installed_readline +with_purecov +with_purify +enable_minimal_config +enable_alias +enable_arith_for_command +enable_array_variables +enable_bang_history +enable_brace_expansion +enable_casemod_attributes +enable_casemod_expansions +enable_command_timing +enable_cond_command +enable_cond_regexp +enable_coprocesses +enable_debugger +enable_directory_stack +enable_disabled_builtins +enable_dparen_arithmetic +enable_extended_glob +enable_help_builtin +enable_history +enable_job_control +enable_multibyte +enable_net_redirections +enable_process_substitution +enable_progcomp +enable_prompt_string_decoding +enable_readline +enable_restricted +enable_select +enable_separate_helpfiles +enable_single_help_strings +enable_strict_posix_default +enable_usg_echo_default +enable_xpg_echo_default +enable_mem_scramble +enable_profiling +enable_static_link +enable_largefile +enable_nls +with_gnu_ld +enable_rpath +with_libiconv_prefix +with_included_gettext +with_libintl_prefix +' + ac_precious_vars='build_alias +host_alias +target_alias +DEBUGGER_START_FILE +CC +CFLAGS +LDFLAGS +LIBS +CPPFLAGS +CPP +YACC +YFLAGS' + + +# Initialize some variables set by options. +ac_init_help= +ac_init_version=false +ac_unrecognized_opts= +ac_unrecognized_sep= +# The variables have the same names as the options, with +# dashes changed to underlines. +cache_file=/dev/null +exec_prefix=NONE +no_create= +no_recursion= +prefix=NONE +program_prefix=NONE +program_suffix=NONE +program_transform_name=s,x,x, +silent= +site= +srcdir= +verbose= +x_includes=NONE +x_libraries=NONE + +# Installation directory options. +# These are left unexpanded so users can "make install exec_prefix=/foo" +# and all the variables that are supposed to be based on exec_prefix +# by default will actually change. +# Use braces instead of parens because sh, perl, etc. also accept them. +# (The list follows the same order as the GNU Coding Standards.) +bindir='${exec_prefix}/bin' +sbindir='${exec_prefix}/sbin' +libexecdir='${exec_prefix}/libexec' +datarootdir='${prefix}/share' +datadir='${datarootdir}' +sysconfdir='${prefix}/etc' +sharedstatedir='${prefix}/com' +localstatedir='${prefix}/var' +includedir='${prefix}/include' +oldincludedir='/usr/include' +docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' +infodir='${datarootdir}/info' +htmldir='${docdir}' +dvidir='${docdir}' +pdfdir='${docdir}' +psdir='${docdir}' +libdir='${exec_prefix}/lib' +localedir='${datarootdir}/locale' +mandir='${datarootdir}/man' + +ac_prev= +ac_dashdash= +for ac_option +do + # If the previous option needs an argument, assign it. + if test -n "$ac_prev"; then + eval $ac_prev=\$ac_option + ac_prev= + continue + fi + + case $ac_option in + *=*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; + *) ac_optarg=yes ;; + esac + + # Accept the important Cygnus configure options, so we can diagnose typos. + + case $ac_dashdash$ac_option in + --) + ac_dashdash=yes ;; + + -bindir | --bindir | --bindi | --bind | --bin | --bi) + ac_prev=bindir ;; + -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) + bindir=$ac_optarg ;; + + -build | --build | --buil | --bui | --bu) + ac_prev=build_alias ;; + -build=* | --build=* | --buil=* | --bui=* | --bu=*) + build_alias=$ac_optarg ;; + + -cache-file | --cache-file | --cache-fil | --cache-fi \ + | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) + ac_prev=cache_file ;; + -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ + | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) + cache_file=$ac_optarg ;; + + --config-cache | -C) + cache_file=config.cache ;; + + -datadir | --datadir | --datadi | --datad) + ac_prev=datadir ;; + -datadir=* | --datadir=* | --datadi=* | --datad=*) + datadir=$ac_optarg ;; + + -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \ + | --dataroo | --dataro | --datar) + ac_prev=datarootdir ;; + -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \ + | --dataroot=* | --dataroo=* | --dataro=* | --datar=*) + datarootdir=$ac_optarg ;; + + -disable-* | --disable-*) + ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && + { $as_echo "$as_me: error: invalid feature name: $ac_useropt" >&2 + { (exit 1); exit 1; }; } + ac_useropt_orig=$ac_useropt + ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + case $ac_user_opts in + *" +"enable_$ac_useropt" +"*) ;; + *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig" + ac_unrecognized_sep=', ';; + esac + eval enable_$ac_useropt=no ;; + + -docdir | --docdir | --docdi | --doc | --do) + ac_prev=docdir ;; + -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*) + docdir=$ac_optarg ;; + + -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv) + ac_prev=dvidir ;; + -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*) + dvidir=$ac_optarg ;; + + -enable-* | --enable-*) + ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && + { $as_echo "$as_me: error: invalid feature name: $ac_useropt" >&2 + { (exit 1); exit 1; }; } + ac_useropt_orig=$ac_useropt + ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + case $ac_user_opts in + *" +"enable_$ac_useropt" +"*) ;; + *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig" + ac_unrecognized_sep=', ';; + esac + eval enable_$ac_useropt=\$ac_optarg ;; + + -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ + | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ + | --exec | --exe | --ex) + ac_prev=exec_prefix ;; + -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ + | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ + | --exec=* | --exe=* | --ex=*) + exec_prefix=$ac_optarg ;; + + -gas | --gas | --ga | --g) + # Obsolete; use --with-gas. + with_gas=yes ;; + + -help | --help | --hel | --he | -h) + ac_init_help=long ;; + -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) + ac_init_help=recursive ;; + -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) + ac_init_help=short ;; + + -host | --host | --hos | --ho) + ac_prev=host_alias ;; + -host=* | --host=* | --hos=* | --ho=*) + host_alias=$ac_optarg ;; + + -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht) + ac_prev=htmldir ;; + -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \ + | --ht=*) + htmldir=$ac_optarg ;; + + -includedir | --includedir | --includedi | --included | --include \ + | --includ | --inclu | --incl | --inc) + ac_prev=includedir ;; + -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ + | --includ=* | --inclu=* | --incl=* | --inc=*) + includedir=$ac_optarg ;; + + -infodir | --infodir | --infodi | --infod | --info | --inf) + ac_prev=infodir ;; + -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) + infodir=$ac_optarg ;; + + -libdir | --libdir | --libdi | --libd) + ac_prev=libdir ;; + -libdir=* | --libdir=* | --libdi=* | --libd=*) + libdir=$ac_optarg ;; + + -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ + | --libexe | --libex | --libe) + ac_prev=libexecdir ;; + -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ + | --libexe=* | --libex=* | --libe=*) + libexecdir=$ac_optarg ;; + + -localedir | --localedir | --localedi | --localed | --locale) + ac_prev=localedir ;; + -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*) + localedir=$ac_optarg ;; + + -localstatedir | --localstatedir | --localstatedi | --localstated \ + | --localstate | --localstat | --localsta | --localst | --locals) + ac_prev=localstatedir ;; + -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ + | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*) + localstatedir=$ac_optarg ;; + + -mandir | --mandir | --mandi | --mand | --man | --ma | --m) + ac_prev=mandir ;; + -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) + mandir=$ac_optarg ;; + + -nfp | --nfp | --nf) + # Obsolete; use --without-fp. + with_fp=no ;; + + -no-create | --no-create | --no-creat | --no-crea | --no-cre \ + | --no-cr | --no-c | -n) + no_create=yes ;; + + -no-recursion | --no-recursion | --no-recursio | --no-recursi \ + | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) + no_recursion=yes ;; + + -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ + | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ + | --oldin | --oldi | --old | --ol | --o) + ac_prev=oldincludedir ;; + -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ + | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ + | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) + oldincludedir=$ac_optarg ;; + + -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) + ac_prev=prefix ;; + -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) + prefix=$ac_optarg ;; + + -program-prefix | --program-prefix | --program-prefi | --program-pref \ + | --program-pre | --program-pr | --program-p) + ac_prev=program_prefix ;; + -program-prefix=* | --program-prefix=* | --program-prefi=* \ + | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) + program_prefix=$ac_optarg ;; + + -program-suffix | --program-suffix | --program-suffi | --program-suff \ + | --program-suf | --program-su | --program-s) + ac_prev=program_suffix ;; + -program-suffix=* | --program-suffix=* | --program-suffi=* \ + | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) + program_suffix=$ac_optarg ;; + + -program-transform-name | --program-transform-name \ + | --program-transform-nam | --program-transform-na \ + | --program-transform-n | --program-transform- \ + | --program-transform | --program-transfor \ + | --program-transfo | --program-transf \ + | --program-trans | --program-tran \ + | --progr-tra | --program-tr | --program-t) + ac_prev=program_transform_name ;; + -program-transform-name=* | --program-transform-name=* \ + | --program-transform-nam=* | --program-transform-na=* \ + | --program-transform-n=* | --program-transform-=* \ + | --program-transform=* | --program-transfor=* \ + | --program-transfo=* | --program-transf=* \ + | --program-trans=* | --program-tran=* \ + | --progr-tra=* | --program-tr=* | --program-t=*) + program_transform_name=$ac_optarg ;; + + -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd) + ac_prev=pdfdir ;; + -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*) + pdfdir=$ac_optarg ;; + + -psdir | --psdir | --psdi | --psd | --ps) + ac_prev=psdir ;; + -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*) + psdir=$ac_optarg ;; + + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil) + silent=yes ;; + + -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) + ac_prev=sbindir ;; + -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ + | --sbi=* | --sb=*) + sbindir=$ac_optarg ;; + + -sharedstatedir | --sharedstatedir | --sharedstatedi \ + | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ + | --sharedst | --shareds | --shared | --share | --shar \ + | --sha | --sh) + ac_prev=sharedstatedir ;; + -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ + | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ + | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ + | --sha=* | --sh=*) + sharedstatedir=$ac_optarg ;; + + -site | --site | --sit) + ac_prev=site ;; + -site=* | --site=* | --sit=*) + site=$ac_optarg ;; + + -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) + ac_prev=srcdir ;; + -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) + srcdir=$ac_optarg ;; + + -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ + | --syscon | --sysco | --sysc | --sys | --sy) + ac_prev=sysconfdir ;; + -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ + | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) + sysconfdir=$ac_optarg ;; + + -target | --target | --targe | --targ | --tar | --ta | --t) + ac_prev=target_alias ;; + -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) + target_alias=$ac_optarg ;; + + -v | -verbose | --verbose | --verbos | --verbo | --verb) + verbose=yes ;; + + -version | --version | --versio | --versi | --vers | -V) + ac_init_version=: ;; + + -with-* | --with-*) + ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && + { $as_echo "$as_me: error: invalid package name: $ac_useropt" >&2 + { (exit 1); exit 1; }; } + ac_useropt_orig=$ac_useropt + ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + case $ac_user_opts in + *" +"with_$ac_useropt" +"*) ;; + *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig" + ac_unrecognized_sep=', ';; + esac + eval with_$ac_useropt=\$ac_optarg ;; + + -without-* | --without-*) + ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && + { $as_echo "$as_me: error: invalid package name: $ac_useropt" >&2 + { (exit 1); exit 1; }; } + ac_useropt_orig=$ac_useropt + ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + case $ac_user_opts in + *" +"with_$ac_useropt" +"*) ;; + *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig" + ac_unrecognized_sep=', ';; + esac + eval with_$ac_useropt=no ;; + + --x) + # Obsolete; use --with-x. + with_x=yes ;; + + -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ + | --x-incl | --x-inc | --x-in | --x-i) + ac_prev=x_includes ;; + -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ + | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) + x_includes=$ac_optarg ;; + + -x-libraries | --x-libraries | --x-librarie | --x-librari \ + | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) + ac_prev=x_libraries ;; + -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ + | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) + x_libraries=$ac_optarg ;; + + -*) { $as_echo "$as_me: error: unrecognized option: $ac_option +Try \`$0 --help' for more information." >&2 + { (exit 1); exit 1; }; } + ;; + + *=*) + ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` + # Reject names that are not valid shell variable names. + expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null && + { $as_echo "$as_me: error: invalid variable name: $ac_envvar" >&2 + { (exit 1); exit 1; }; } + eval $ac_envvar=\$ac_optarg + export $ac_envvar ;; + + *) + # FIXME: should be removed in autoconf 3.0. + $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2 + expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && + $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2 + : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option} + ;; + + esac +done + +if test -n "$ac_prev"; then + ac_option=--`echo $ac_prev | sed 's/_/-/g'` + { $as_echo "$as_me: error: missing argument to $ac_option" >&2 + { (exit 1); exit 1; }; } +fi + +if test -n "$ac_unrecognized_opts"; then + case $enable_option_checking in + no) ;; + fatal) { $as_echo "$as_me: error: unrecognized options: $ac_unrecognized_opts" >&2 + { (exit 1); exit 1; }; } ;; + *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;; + esac +fi + +# Check all directory arguments for consistency. +for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ + datadir sysconfdir sharedstatedir localstatedir includedir \ + oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ + libdir localedir mandir +do + eval ac_val=\$$ac_var + # Remove trailing slashes. + case $ac_val in + */ ) + ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'` + eval $ac_var=\$ac_val;; + esac + # Be sure to have absolute directory names. + case $ac_val in + [\\/$]* | ?:[\\/]* ) continue;; + NONE | '' ) case $ac_var in *prefix ) continue;; esac;; + esac + { $as_echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 + { (exit 1); exit 1; }; } +done + +# There might be people who depend on the old broken behavior: `$host' +# used to hold the argument of --host etc. +# FIXME: To remove some day. +build=$build_alias +host=$host_alias +target=$target_alias + +# FIXME: To remove some day. +if test "x$host_alias" != x; then + if test "x$build_alias" = x; then + cross_compiling=maybe + $as_echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host. + If a cross compiler is detected then cross compile mode will be used." >&2 + elif test "x$build_alias" != "x$host_alias"; then + cross_compiling=yes + fi +fi + +ac_tool_prefix= +test -n "$host_alias" && ac_tool_prefix=$host_alias- + +test "$silent" = yes && exec 6>/dev/null + + +ac_pwd=`pwd` && test -n "$ac_pwd" && +ac_ls_di=`ls -di .` && +ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || + { $as_echo "$as_me: error: working directory cannot be determined" >&2 + { (exit 1); exit 1; }; } +test "X$ac_ls_di" = "X$ac_pwd_ls_di" || + { $as_echo "$as_me: error: pwd does not report name of working directory" >&2 + { (exit 1); exit 1; }; } + + +# Find the source files, if location was not specified. +if test -z "$srcdir"; then + ac_srcdir_defaulted=yes + # Try the directory containing this script, then the parent directory. + ac_confdir=`$as_dirname -- "$as_myself" || +$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_myself" : 'X\(//\)[^/]' \| \ + X"$as_myself" : 'X\(//\)$' \| \ + X"$as_myself" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$as_myself" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + srcdir=$ac_confdir + if test ! -r "$srcdir/$ac_unique_file"; then + srcdir=.. + fi +else + ac_srcdir_defaulted=no +fi +if test ! -r "$srcdir/$ac_unique_file"; then + test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." + { $as_echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 + { (exit 1); exit 1; }; } +fi +ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" +ac_abs_confdir=`( + cd "$srcdir" && test -r "./$ac_unique_file" || { $as_echo "$as_me: error: $ac_msg" >&2 + { (exit 1); exit 1; }; } + pwd)` +# When building in place, set srcdir=. +if test "$ac_abs_confdir" = "$ac_pwd"; then + srcdir=. +fi +# Remove unnecessary trailing slashes from srcdir. +# Double slashes in file names in object file debugging info +# mess up M-x gdb in Emacs. +case $srcdir in +*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;; +esac +for ac_var in $ac_precious_vars; do + eval ac_env_${ac_var}_set=\${${ac_var}+set} + eval ac_env_${ac_var}_value=\$${ac_var} + eval ac_cv_env_${ac_var}_set=\${${ac_var}+set} + eval ac_cv_env_${ac_var}_value=\$${ac_var} +done + +# +# Report the --help message. +# +if test "$ac_init_help" = "long"; then + # Omit some internal or obsolete options to make the list less imposing. + # This message is too long to be a string in the A/UX 3.1 sh. + cat <<_ACEOF +\`configure' configures bash 4.0-release to adapt to many kinds of systems. + +Usage: $0 [OPTION]... [VAR=VALUE]... + +To assign environment variables (e.g., CC, CFLAGS...), specify them as +VAR=VALUE. See below for descriptions of some of the useful variables. + +Defaults for the options are specified in brackets. + +Configuration: + -h, --help display this help and exit + --help=short display options specific to this package + --help=recursive display the short help of all the included packages + -V, --version display version information and exit + -q, --quiet, --silent do not print \`checking...' messages + --cache-file=FILE cache test results in FILE [disabled] + -C, --config-cache alias for \`--cache-file=config.cache' + -n, --no-create do not create output files + --srcdir=DIR find the sources in DIR [configure dir or \`..'] + +Installation directories: + --prefix=PREFIX install architecture-independent files in PREFIX + [$ac_default_prefix] + --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX + [PREFIX] + +By default, \`make install' will install all the files in +\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify +an installation prefix other than \`$ac_default_prefix' using \`--prefix', +for instance \`--prefix=\$HOME'. + +For better control, use the options below. + +Fine tuning of the installation directories: + --bindir=DIR user executables [EPREFIX/bin] + --sbindir=DIR system admin executables [EPREFIX/sbin] + --libexecdir=DIR program executables [EPREFIX/libexec] + --sysconfdir=DIR read-only single-machine data [PREFIX/etc] + --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] + --localstatedir=DIR modifiable single-machine data [PREFIX/var] + --libdir=DIR object code libraries [EPREFIX/lib] + --includedir=DIR C header files [PREFIX/include] + --oldincludedir=DIR C header files for non-gcc [/usr/include] + --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] + --datadir=DIR read-only architecture-independent data [DATAROOTDIR] + --infodir=DIR info documentation [DATAROOTDIR/info] + --localedir=DIR locale-dependent data [DATAROOTDIR/locale] + --mandir=DIR man documentation [DATAROOTDIR/man] + --docdir=DIR documentation root @<:@DATAROOTDIR/doc/bash@:>@ + --htmldir=DIR html documentation [DOCDIR] + --dvidir=DIR dvi documentation [DOCDIR] + --pdfdir=DIR pdf documentation [DOCDIR] + --psdir=DIR ps documentation [DOCDIR] +_ACEOF + + cat <<\_ACEOF + +System types: + --build=BUILD configure for building on BUILD [guessed] + --host=HOST cross-compile to build programs to run on HOST [BUILD] +_ACEOF +fi + +if test -n "$ac_init_help"; then + case $ac_init_help in + short | recursive ) echo "Configuration of bash 4.0-release:";; + esac + cat <<\_ACEOF + +Optional Features: + --disable-option-checking ignore unrecognized --enable/--with options + --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) + --enable-FEATURE[=ARG] include FEATURE [ARG=yes] + --enable-minimal-config a minimal sh-like configuration + --enable-alias enable shell aliases + --enable-arith-for-command + enable arithmetic for command + --enable-array-variables + include shell array variables + --enable-bang-history turn on csh-style history substitution + --enable-brace-expansion + include brace expansion + --enable-casemod-attributes + include case-modifying variable attributes + --enable-casemod-expansions + include case-modifying word expansions + --enable-command-timing enable the time reserved word and command timing + --enable-cond-command enable the conditional command + --enable-cond-regexp enable extended regular expression matching in + conditional commands + --enable-coprocesses enable coprocess support and the coproc reserved + word + --enable-debugger enable support for bash debugger + --enable-directory-stack + enable builtins pushd/popd/dirs + --enable-disabled-builtins + allow disabled builtins to still be invoked + --enable-dparen-arithmetic + include ((...)) command + --enable-extended-glob include ksh-style extended pattern matching + --enable-help-builtin include the help builtin + --enable-history turn on command history + --enable-job-control enable job control features + --enable-multibyte enable multibyte characters if OS supports them + --enable-net-redirections + enable /dev/tcp/host/port redirection + --enable-process-substitution + enable process substitution + --enable-progcomp enable programmable completion and the complete + builtin + --enable-prompt-string-decoding + turn on escape character decoding in prompts + --enable-readline turn on command line editing + --enable-restricted enable a restricted shell + --enable-select include select command + --enable-separate-helpfiles + use external files for help builtin documentation + --enable-single-help-strings + store help documentation as a single string to ease + translation + --enable-strict-posix-default + configure bash to be posix-conformant by default + --enable-usg-echo-default + a synonym for --enable-xpg-echo-default + --enable-xpg-echo-default + make the echo builtin expand escape sequences by + default + --enable-mem-scramble scramble memory on calls to malloc and free + --enable-profiling allow profiling with gprof + --enable-static-link link bash statically, for use as a root shell + --disable-largefile omit support for large files + --disable-nls do not use Native Language Support + --disable-rpath do not hardcode runtime library paths + +Optional Packages: + --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] + --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) + --with-lispdir override the default lisp directory + --with-afs if you are running AFS + --with-bash-malloc use the Bash version of malloc + --with-curses use the curses library instead of the termcap + library + --with-gnu-malloc synonym for --with-bash-malloc + --with-installed-readline + use a version of the readline library that is + already installed + --with-purecov configure to postprocess with pure coverage + --with-purify configure to postprocess with purify + --with-gnu-ld assume the C compiler uses GNU ld default=no + --with-libiconv-prefix[=DIR] search for libiconv in DIR/include and DIR/lib + --without-libiconv-prefix don't search for libiconv in includedir and libdir + --with-included-gettext use the GNU gettext library included here + --with-libintl-prefix[=DIR] search for libintl in DIR/include and DIR/lib + --without-libintl-prefix don't search for libintl in includedir and libdir + +Some influential environment variables: + DEBUGGER_START_FILE + location of bash debugger initialization file + CC C compiler command + CFLAGS C compiler flags + LDFLAGS linker flags, e.g. -L if you have libraries in a + nonstandard directory + LIBS libraries to pass to the linker, e.g. -l + CPPFLAGS C/C++/Objective C preprocessor flags, e.g. -I if + you have headers in a nonstandard directory + CPP C preprocessor + YACC The `Yet Another C Compiler' implementation to use. Defaults to + the first program found out of: `bison -y', `byacc', `yacc'. + YFLAGS The list of arguments that will be passed by default to $YACC. + This script will default YFLAGS to the empty string to avoid a + default value of `-d' given by some make applications. + +Use these variables to override the choices made by `configure' or to help +it to find libraries and programs with nonstandard names/locations. + +Report bugs to . +_ACEOF +ac_status=$? +fi + +if test "$ac_init_help" = "recursive"; then + # If there are subdirs, report their specific --help. + for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue + test -d "$ac_dir" || + { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } || + continue + ac_builddir=. + +case "$ac_dir" in +.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; +*) + ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` + # A ".." for each directory in $ac_dir_suffix. + ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` + case $ac_top_builddir_sub in + "") ac_top_builddir_sub=. ac_top_build_prefix= ;; + *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; + esac ;; +esac +ac_abs_top_builddir=$ac_pwd +ac_abs_builddir=$ac_pwd$ac_dir_suffix +# for backward compatibility: +ac_top_builddir=$ac_top_build_prefix + +case $srcdir in + .) # We are building in place. + ac_srcdir=. + ac_top_srcdir=$ac_top_builddir_sub + ac_abs_top_srcdir=$ac_pwd ;; + [\\/]* | ?:[\\/]* ) # Absolute name. + ac_srcdir=$srcdir$ac_dir_suffix; + ac_top_srcdir=$srcdir + ac_abs_top_srcdir=$srcdir ;; + *) # Relative name. + ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_build_prefix$srcdir + ac_abs_top_srcdir=$ac_pwd/$srcdir ;; +esac +ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix + + cd "$ac_dir" || { ac_status=$?; continue; } + # Check for guested configure. + if test -f "$ac_srcdir/configure.gnu"; then + echo && + $SHELL "$ac_srcdir/configure.gnu" --help=recursive + elif test -f "$ac_srcdir/configure"; then + echo && + $SHELL "$ac_srcdir/configure" --help=recursive + else + $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 + fi || ac_status=$? + cd "$ac_pwd" || { ac_status=$?; break; } + done +fi + +test -n "$ac_init_help" && exit $ac_status +if $ac_init_version; then + cat <<\_ACEOF +bash configure 4.0-release +generated by GNU Autoconf 2.63 + +Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, +2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +This configure script is free software; the Free Software Foundation +gives unlimited permission to copy, distribute and modify it. +_ACEOF + exit +fi +cat >config.log <<_ACEOF +This file contains any messages produced by compilers while +running configure, to aid debugging if configure makes a mistake. + +It was created by bash $as_me 4.0-release, which was +generated by GNU Autoconf 2.63. Invocation command line was + + $ $0 $@ + +_ACEOF +exec 5>>config.log +{ +cat <<_ASUNAME +@%:@@%:@ --------- @%:@@%:@ +@%:@@%:@ Platform. @%:@@%:@ +@%:@@%:@ --------- @%:@@%:@ + +hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` +uname -m = `(uname -m) 2>/dev/null || echo unknown` +uname -r = `(uname -r) 2>/dev/null || echo unknown` +uname -s = `(uname -s) 2>/dev/null || echo unknown` +uname -v = `(uname -v) 2>/dev/null || echo unknown` + +/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` +/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` + +/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` +/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` +/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` +/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown` +/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` +/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` +/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` + +_ASUNAME + +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + $as_echo "PATH: $as_dir" +done +IFS=$as_save_IFS + +} >&5 + +cat >&5 <<_ACEOF + + +@%:@@%:@ ----------- @%:@@%:@ +@%:@@%:@ Core tests. @%:@@%:@ +@%:@@%:@ ----------- @%:@@%:@ + +_ACEOF + + +# Keep a trace of the command line. +# Strip out --no-create and --no-recursion so they do not pile up. +# Strip out --silent because we don't want to record it for future runs. +# Also quote any args containing shell meta-characters. +# Make two passes to allow for proper duplicate-argument suppression. +ac_configure_args= +ac_configure_args0= +ac_configure_args1= +ac_must_keep_next=false +for ac_pass in 1 2 +do + for ac_arg + do + case $ac_arg in + -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil) + continue ;; + *\'*) + ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; + esac + case $ac_pass in + 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;; + 2) + ac_configure_args1="$ac_configure_args1 '$ac_arg'" + if test $ac_must_keep_next = true; then + ac_must_keep_next=false # Got value, back to normal. + else + case $ac_arg in + *=* | --config-cache | -C | -disable-* | --disable-* \ + | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ + | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ + | -with-* | --with-* | -without-* | --without-* | --x) + case "$ac_configure_args0 " in + "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; + esac + ;; + -* ) ac_must_keep_next=true ;; + esac + fi + ac_configure_args="$ac_configure_args '$ac_arg'" + ;; + esac + done +done +$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; } +$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; } + +# When interrupted or exit'd, cleanup temporary files, and complete +# config.log. We remove comments because anyway the quotes in there +# would cause problems or look ugly. +# WARNING: Use '\'' to represent an apostrophe within the trap. +# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug. +trap 'exit_status=$? + # Save into config.log some information that might help in debugging. + { + echo + + cat <<\_ASBOX +@%:@@%:@ ---------------- @%:@@%:@ +@%:@@%:@ Cache variables. @%:@@%:@ +@%:@@%:@ ---------------- @%:@@%:@ +_ASBOX + echo + # The following way of writing the cache mishandles newlines in values, +( + for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do + eval ac_val=\$$ac_var + case $ac_val in #( + *${as_nl}*) + case $ac_var in #( + *_cv_*) { $as_echo "$as_me:$LINENO: WARNING: cache variable $ac_var contains a newline" >&5 +$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; + esac + case $ac_var in #( + _ | IFS | as_nl) ;; #( + BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( + *) $as_unset $ac_var ;; + esac ;; + esac + done + (set) 2>&1 | + case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #( + *${as_nl}ac_space=\ *) + sed -n \ + "s/'\''/'\''\\\\'\'''\''/g; + s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p" + ;; #( + *) + sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" + ;; + esac | + sort +) + echo + + cat <<\_ASBOX +@%:@@%:@ ----------------- @%:@@%:@ +@%:@@%:@ Output variables. @%:@@%:@ +@%:@@%:@ ----------------- @%:@@%:@ +_ASBOX + echo + for ac_var in $ac_subst_vars + do + eval ac_val=\$$ac_var + case $ac_val in + *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; + esac + $as_echo "$ac_var='\''$ac_val'\''" + done | sort + echo + + if test -n "$ac_subst_files"; then + cat <<\_ASBOX +@%:@@%:@ ------------------- @%:@@%:@ +@%:@@%:@ File substitutions. @%:@@%:@ +@%:@@%:@ ------------------- @%:@@%:@ +_ASBOX + echo + for ac_var in $ac_subst_files + do + eval ac_val=\$$ac_var + case $ac_val in + *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; + esac + $as_echo "$ac_var='\''$ac_val'\''" + done | sort + echo + fi + + if test -s confdefs.h; then + cat <<\_ASBOX +@%:@@%:@ ----------- @%:@@%:@ +@%:@@%:@ confdefs.h. @%:@@%:@ +@%:@@%:@ ----------- @%:@@%:@ +_ASBOX + echo + cat confdefs.h + echo + fi + test "$ac_signal" != 0 && + $as_echo "$as_me: caught signal $ac_signal" + $as_echo "$as_me: exit $exit_status" + } >&5 + rm -f core *.core core.conftest.* && + rm -f -r conftest* confdefs* conf$$* $ac_clean_files && + exit $exit_status +' 0 +for ac_signal in 1 2 13 15; do + trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal +done +ac_signal=0 + +# confdefs.h avoids OS command line length limits that DEFS can exceed. +rm -f -r conftest* confdefs.h + +# Predefined preprocessor variables. + +cat >>confdefs.h <<_ACEOF +@%:@define PACKAGE_NAME "$PACKAGE_NAME" +_ACEOF + + +cat >>confdefs.h <<_ACEOF +@%:@define PACKAGE_TARNAME "$PACKAGE_TARNAME" +_ACEOF + + +cat >>confdefs.h <<_ACEOF +@%:@define PACKAGE_VERSION "$PACKAGE_VERSION" +_ACEOF + + +cat >>confdefs.h <<_ACEOF +@%:@define PACKAGE_STRING "$PACKAGE_STRING" +_ACEOF + + +cat >>confdefs.h <<_ACEOF +@%:@define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" +_ACEOF + + +# Let the site file select an alternate cache file if it wants to. +# Prefer an explicitly selected file to automatically selected ones. +ac_site_file1=NONE +ac_site_file2=NONE +if test -n "$CONFIG_SITE"; then + ac_site_file1=$CONFIG_SITE +elif test "x$prefix" != xNONE; then + ac_site_file1=$prefix/share/config.site + ac_site_file2=$prefix/etc/config.site +else + ac_site_file1=$ac_default_prefix/share/config.site + ac_site_file2=$ac_default_prefix/etc/config.site +fi +for ac_site_file in "$ac_site_file1" "$ac_site_file2" +do + test "x$ac_site_file" = xNONE && continue + if test -r "$ac_site_file"; then + { $as_echo "$as_me:$LINENO: loading site script $ac_site_file" >&5 +$as_echo "$as_me: loading site script $ac_site_file" >&6;} + sed 's/^/| /' "$ac_site_file" >&5 + . "$ac_site_file" + fi +done + +if test -r "$cache_file"; then + # Some versions of bash will fail to source /dev/null (special + # files actually), so we avoid doing that. + if test -f "$cache_file"; then + { $as_echo "$as_me:$LINENO: loading cache $cache_file" >&5 +$as_echo "$as_me: loading cache $cache_file" >&6;} + case $cache_file in + [\\/]* | ?:[\\/]* ) . "$cache_file";; + *) . "./$cache_file";; + esac + fi +else + { $as_echo "$as_me:$LINENO: creating cache $cache_file" >&5 +$as_echo "$as_me: creating cache $cache_file" >&6;} + >$cache_file +fi + +ac_header_list="$ac_header_list sys/time.h" +ac_header_list="$ac_header_list unistd.h" +ac_func_list="$ac_func_list alarm" +ac_func_list="$ac_func_list fpurge" +ac_func_list="$ac_func_list __fpurge" +# Check that the precious variables saved in the cache have kept the same +# value. +ac_cache_corrupted=false +for ac_var in $ac_precious_vars; do + eval ac_old_set=\$ac_cv_env_${ac_var}_set + eval ac_new_set=\$ac_env_${ac_var}_set + eval ac_old_val=\$ac_cv_env_${ac_var}_value + eval ac_new_val=\$ac_env_${ac_var}_value + case $ac_old_set,$ac_new_set in + set,) + { $as_echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 +$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} + ac_cache_corrupted=: ;; + ,set) + { $as_echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5 +$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} + ac_cache_corrupted=: ;; + ,);; + *) + if test "x$ac_old_val" != "x$ac_new_val"; then + # differences in whitespace do not lead to failure. + ac_old_val_w=`echo x $ac_old_val` + ac_new_val_w=`echo x $ac_new_val` + if test "$ac_old_val_w" != "$ac_new_val_w"; then + { $as_echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 +$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} + ac_cache_corrupted=: + else + { $as_echo "$as_me:$LINENO: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 +$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;} + eval $ac_var=\$ac_old_val + fi + { $as_echo "$as_me:$LINENO: former value: \`$ac_old_val'" >&5 +$as_echo "$as_me: former value: \`$ac_old_val'" >&2;} + { $as_echo "$as_me:$LINENO: current value: \`$ac_new_val'" >&5 +$as_echo "$as_me: current value: \`$ac_new_val'" >&2;} + fi;; + esac + # Pass precious variables to config.status. + if test "$ac_new_set" = set; then + case $ac_new_val in + *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; + *) ac_arg=$ac_var=$ac_new_val ;; + esac + case " $ac_configure_args " in + *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. + *) ac_configure_args="$ac_configure_args '$ac_arg'" ;; + esac + fi +done +if $ac_cache_corrupted; then + { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} + { $as_echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5 +$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;} + { { $as_echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 +$as_echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;} + { (exit 1); exit 1; }; } +fi + + + + + + + + + + + + + + + + + + + + + + + + + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + + + + + +ac_aux_dir= +for ac_dir in ./support "$srcdir"/./support; do + if test -f "$ac_dir/install-sh"; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/install-sh -c" + break + elif test -f "$ac_dir/install.sh"; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/install.sh -c" + break + elif test -f "$ac_dir/shtool"; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/shtool install -c" + break + fi +done +if test -z "$ac_aux_dir"; then + { { $as_echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in ./support \"$srcdir\"/./support" >&5 +$as_echo "$as_me: error: cannot find install-sh or install.sh in ./support \"$srcdir\"/./support" >&2;} + { (exit 1); exit 1; }; } +fi + +# These three variables are undocumented and unsupported, +# and are intended to be withdrawn in a future Autoconf release. +# They can cause serious problems if a builder's source tree is in a directory +# whose full name contains unusual characters. +ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var. +ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var. +ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. + + +ac_config_headers="$ac_config_headers config.h" + + +BASHVERS=4.0 +RELSTATUS=release + +case "$RELSTATUS" in +alp*|bet*|dev*|rc*|maint*) DEBUG='-DDEBUG' MALLOC_DEBUG='-DMALLOC_DEBUG' ;; +*) DEBUG= MALLOC_DEBUG= ;; +esac + +# Make sure we can run config.sub. +$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 || + { { $as_echo "$as_me:$LINENO: error: cannot run $SHELL $ac_aux_dir/config.sub" >&5 +$as_echo "$as_me: error: cannot run $SHELL $ac_aux_dir/config.sub" >&2;} + { (exit 1); exit 1; }; } + +{ $as_echo "$as_me:$LINENO: checking build system type" >&5 +$as_echo_n "checking build system type... " >&6; } +if test "${ac_cv_build+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_build_alias=$build_alias +test "x$ac_build_alias" = x && + ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"` +test "x$ac_build_alias" = x && + { { $as_echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5 +$as_echo "$as_me: error: cannot guess build type; you must specify one" >&2;} + { (exit 1); exit 1; }; } +ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` || + { { $as_echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&5 +$as_echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&2;} + { (exit 1); exit 1; }; } + +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_build" >&5 +$as_echo "$ac_cv_build" >&6; } +case $ac_cv_build in +*-*-*) ;; +*) { { $as_echo "$as_me:$LINENO: error: invalid value of canonical build" >&5 +$as_echo "$as_me: error: invalid value of canonical build" >&2;} + { (exit 1); exit 1; }; };; +esac +build=$ac_cv_build +ac_save_IFS=$IFS; IFS='-' +set x $ac_cv_build +shift +build_cpu=$1 +build_vendor=$2 +shift; shift +# Remember, the first character of IFS is used to create $*, +# except with old shells: +build_os=$* +IFS=$ac_save_IFS +case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac + + +{ $as_echo "$as_me:$LINENO: checking host system type" >&5 +$as_echo_n "checking host system type... " >&6; } +if test "${ac_cv_host+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "x$host_alias" = x; then + ac_cv_host=$ac_cv_build +else + ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` || + { { $as_echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&5 +$as_echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&2;} + { (exit 1); exit 1; }; } +fi + +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_host" >&5 +$as_echo "$ac_cv_host" >&6; } +case $ac_cv_host in +*-*-*) ;; +*) { { $as_echo "$as_me:$LINENO: error: invalid value of canonical host" >&5 +$as_echo "$as_me: error: invalid value of canonical host" >&2;} + { (exit 1); exit 1; }; };; +esac +host=$ac_cv_host +ac_save_IFS=$IFS; IFS='-' +set x $ac_cv_host +shift +host_cpu=$1 +host_vendor=$2 +shift; shift +# Remember, the first character of IFS is used to create $*, +# except with old shells: +host_os=$* +IFS=$ac_save_IFS +case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac + + + +opt_bash_malloc=yes +opt_purify=no +opt_purecov=no +opt_afs=no +opt_curses=no +opt_with_installed_readline=no + +#htmldir= + +case "${host_cpu}-${host_os}" in +alpha*-*) opt_bash_malloc=no ;; # alpha running osf/1 or linux +*[Cc]ray*-*) opt_bash_malloc=no ;; # Crays +*-osf1*) opt_bash_malloc=no ;; # other osf/1 machines +sparc-svr4*) opt_bash_malloc=no ;; # sparc SVR4, SVR4.2 +sparc-netbsd*) opt_bash_malloc=no ;; # needs 8-byte alignment +mips-irix6*) opt_bash_malloc=no ;; # needs 8-byte alignment +m68k-sysv) opt_bash_malloc=no ;; # fixes file descriptor leak in closedir +sparc-linux*) opt_bash_malloc=no ;; # sparc running linux; requires ELF +#*-freebsd*-gnu) opt_bash_malloc=no ;; # there's some undetermined problem here +#*-freebsd*) opt_bash_malloc=no ;; # they claim it's better; I disagree +*-openbsd*) opt_bash_malloc=no ;; # they claim it needs eight-bit alignment +*-aix*) opt_bash_malloc=no ;; # AIX machines +*-nextstep*) opt_bash_malloc=no ;; # NeXT machines running NeXTstep +*-macos*) opt_bash_malloc=no ;; # Apple MacOS X +*-rhapsody*) opt_bash_malloc=no ;; # Apple Rhapsody (MacOS X) +*-darwin*) opt_bash_malloc=no ;; # Apple Darwin (MacOS X) +*-dgux*) opt_bash_malloc=no ;; # DG/UX machines +*-qnx*) opt_bash_malloc=no ;; # QNX 4.2, QNX 6.x +*-machten4) opt_bash_malloc=no ;; # MachTen 4.x +*-bsdi2.1|*-bsdi3.?) opt_bash_malloc=no ; : ${CC:=shlicc2} ;; # for loadable builtins +*-beos*) opt_bash_malloc=no ;; # they say it's suitable +*-cygwin*) opt_bash_malloc=no ;; # Cygnus's CYGWIN environment +*-opennt*|*-interix*) opt_bash_malloc=no ;; # Interix, now owned by Microsoft +esac + +# memory scrambling on free() +case "${host_os}" in +sco3.2v5*|sco3.2v4*) opt_memscramble=no ;; +*) opt_memscramble=yes ;; +esac + + +@%:@ Check whether --with-lispdir was given. +if test "${with_lispdir+set}" = set; then + withval=$with_lispdir; lispdir="$withval" + { $as_echo "$as_me:$LINENO: checking where .elc files should go" >&5 +$as_echo_n "checking where .elc files should go... " >&6; } + { $as_echo "$as_me:$LINENO: result: $lispdir" >&5 +$as_echo "$lispdir" >&6; } +else + + # If set to t, that means we are running in a shell under Emacs. + # If you have an Emacs named "t", then use the full path. + test x"$EMACS" = xt && EMACS= + for ac_prog in emacs xemacs +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_prog_EMACS+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test -n "$EMACS"; then + ac_cv_prog_EMACS="$EMACS" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_EMACS="$ac_prog" + $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done +IFS=$as_save_IFS + +fi +fi +EMACS=$ac_cv_prog_EMACS +if test -n "$EMACS"; then + { $as_echo "$as_me:$LINENO: result: $EMACS" >&5 +$as_echo "$EMACS" >&6; } +else + { $as_echo "$as_me:$LINENO: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$EMACS" && break +done +test -n "$EMACS" || EMACS="no" + + if test $EMACS != "no"; then + if test x${lispdir+set} != xset; then + { $as_echo "$as_me:$LINENO: checking where .elc files should go" >&5 +$as_echo_n "checking where .elc files should go... " >&6; } +if test "${am_cv_lispdir+set}" = set; then + $as_echo_n "(cached) " >&6 +else + am_cv_lispdir=`$EMACS -batch -q -eval '(while load-path (princ (concat (car load-path) "\n")) (setq load-path (cdr load-path)))' | sed -n -e 's,/$,,' -e '/.*\/lib\/\(x\?emacs\/site-lisp\)$/{s,,${libdir}/\1,;p;q;}' -e '/.*\/share\/\(x\?emacs\/site-lisp\)$/{s,,${datadir}/\1,;p;q;}'` + if test -z "$am_cv_lispdir"; then + am_cv_lispdir='${datadir}/emacs/site-lisp' + fi + +fi +{ $as_echo "$as_me:$LINENO: result: $am_cv_lispdir" >&5 +$as_echo "$am_cv_lispdir" >&6; } + lispdir="$am_cv_lispdir" + fi + fi + +fi + + + + + + +@%:@ Check whether --with-afs was given. +if test "${with_afs+set}" = set; then + withval=$with_afs; opt_afs=$withval +fi + + +@%:@ Check whether --with-bash-malloc was given. +if test "${with_bash_malloc+set}" = set; then + withval=$with_bash_malloc; opt_bash_malloc=$withval +fi + + +@%:@ Check whether --with-curses was given. +if test "${with_curses+set}" = set; then + withval=$with_curses; opt_curses=$withval +fi + + +@%:@ Check whether --with-gnu-malloc was given. +if test "${with_gnu_malloc+set}" = set; then + withval=$with_gnu_malloc; opt_bash_malloc=$withval +fi + + +@%:@ Check whether --with-installed-readline was given. +if test "${with_installed_readline+set}" = set; then + withval=$with_installed_readline; opt_with_installed_readline=$withval +fi + + +@%:@ Check whether --with-purecov was given. +if test "${with_purecov+set}" = set; then + withval=$with_purecov; opt_purecov=$withval +fi + + +@%:@ Check whether --with-purify was given. +if test "${with_purify+set}" = set; then + withval=$with_purify; opt_purify=$withval +fi + + +if test "$opt_bash_malloc" = yes; then + MALLOC_TARGET=malloc + MALLOC_SRC=malloc.c + + MALLOC_LIB='-lmalloc' + MALLOC_LIBRARY='$(ALLOC_LIBDIR)/libmalloc.a' + MALLOC_LDFLAGS='-L$(ALLOC_LIBDIR)' + MALLOC_DEP='$(MALLOC_LIBRARY)' + + cat >>confdefs.h <<\_ACEOF +@%:@define USING_BASH_MALLOC 1 +_ACEOF + +else + MALLOC_LIB= + MALLOC_LIBRARY= + MALLOC_LDFLAGS= + MALLOC_DEP= +fi + +if test "$opt_purify" = yes; then + PURIFY="purify " + cat >>confdefs.h <<\_ACEOF +@%:@define DISABLE_MALLOC_WRAPPERS 1 +_ACEOF + +else + PURIFY= +fi + +if test "$opt_purecov" = yes; then + PURIFY="${PURIFY}purecov" +fi + +if test "$opt_afs" = yes; then + cat >>confdefs.h <<\_ACEOF +@%:@define AFS 1 +_ACEOF + +fi + +if test "$opt_curses" = yes; then + prefer_curses=yes +fi + +if test -z "${DEBUGGER_START_FILE}"; then + DEBUGGER_START_FILE='${datadir}/bashdb/bashdb-main.inc' +fi + +opt_minimal_config=no + +opt_job_control=yes +opt_alias=yes +opt_readline=yes +opt_history=yes +opt_bang_history=yes +opt_dirstack=yes +opt_restricted=yes +opt_process_subst=yes +opt_prompt_decoding=yes +opt_select=yes +opt_help=yes +opt_array_variables=yes +opt_dparen_arith=yes +opt_extended_glob=yes +opt_brace_expansion=yes +opt_disabled_builtins=no +opt_command_timing=yes +opt_xpg_echo=no +opt_strict_posix=no +opt_cond_command=yes +opt_cond_regexp=yes +opt_coproc=yes +opt_arith_for_command=yes +opt_net_redirs=yes +opt_progcomp=yes +opt_separate_help=no +opt_multibyte=yes +opt_debugger=yes +opt_single_longdoc_strings=yes +opt_casemod_attrs=yes +opt_casemod_expansions=yes + +opt_static_link=no +opt_profiling=no + +@%:@ Check whether --enable-minimal-config was given. +if test "${enable_minimal_config+set}" = set; then + enableval=$enable_minimal_config; opt_minimal_config=$enableval +fi + + +if test $opt_minimal_config = yes; then + opt_job_control=no opt_alias=no opt_readline=no + opt_history=no opt_bang_history=no opt_dirstack=no + opt_restricted=no opt_process_subst=no opt_prompt_decoding=no + opt_select=no opt_help=no opt_array_variables=no opt_dparen_arith=no + opt_brace_expansion=no opt_disabled_builtins=no opt_command_timing=no + opt_extended_glob=no opt_cond_command=no opt_arith_for_command=no + opt_net_redirs=no opt_progcomp=no opt_separate_help=no + opt_multibyte=yes opt_cond_regexp=no opt_coproc=no + opt_casemod_attrs=no opt_casemod_expansions=no +fi + +@%:@ Check whether --enable-alias was given. +if test "${enable_alias+set}" = set; then + enableval=$enable_alias; opt_alias=$enableval +fi + +@%:@ Check whether --enable-arith-for-command was given. +if test "${enable_arith_for_command+set}" = set; then + enableval=$enable_arith_for_command; opt_arith_for_command=$enableval +fi + +@%:@ Check whether --enable-array-variables was given. +if test "${enable_array_variables+set}" = set; then + enableval=$enable_array_variables; opt_array_variables=$enableval +fi + +@%:@ Check whether --enable-bang-history was given. +if test "${enable_bang_history+set}" = set; then + enableval=$enable_bang_history; opt_bang_history=$enableval +fi + +@%:@ Check whether --enable-brace-expansion was given. +if test "${enable_brace_expansion+set}" = set; then + enableval=$enable_brace_expansion; opt_brace_expansion=$enableval +fi + +@%:@ Check whether --enable-casemod-attributes was given. +if test "${enable_casemod_attributes+set}" = set; then + enableval=$enable_casemod_attributes; opt_casemod_attrs=$enableval +fi + +@%:@ Check whether --enable-casemod-expansions was given. +if test "${enable_casemod_expansions+set}" = set; then + enableval=$enable_casemod_expansions; opt_casemod_expansions=$enableval +fi + +@%:@ Check whether --enable-command-timing was given. +if test "${enable_command_timing+set}" = set; then + enableval=$enable_command_timing; opt_command_timing=$enableval +fi + +@%:@ Check whether --enable-cond-command was given. +if test "${enable_cond_command+set}" = set; then + enableval=$enable_cond_command; opt_cond_command=$enableval +fi + +@%:@ Check whether --enable-cond-regexp was given. +if test "${enable_cond_regexp+set}" = set; then + enableval=$enable_cond_regexp; opt_cond_regexp=$enableval +fi + +@%:@ Check whether --enable-coprocesses was given. +if test "${enable_coprocesses+set}" = set; then + enableval=$enable_coprocesses; opt_coproc=$enableval +fi + +@%:@ Check whether --enable-debugger was given. +if test "${enable_debugger+set}" = set; then + enableval=$enable_debugger; opt_debugger=$enableval +fi + +@%:@ Check whether --enable-directory-stack was given. +if test "${enable_directory_stack+set}" = set; then + enableval=$enable_directory_stack; opt_dirstack=$enableval +fi + +@%:@ Check whether --enable-disabled-builtins was given. +if test "${enable_disabled_builtins+set}" = set; then + enableval=$enable_disabled_builtins; opt_disabled_builtins=$enableval +fi + +@%:@ Check whether --enable-dparen-arithmetic was given. +if test "${enable_dparen_arithmetic+set}" = set; then + enableval=$enable_dparen_arithmetic; opt_dparen_arith=$enableval +fi + +@%:@ Check whether --enable-extended-glob was given. +if test "${enable_extended_glob+set}" = set; then + enableval=$enable_extended_glob; opt_extended_glob=$enableval +fi + +@%:@ Check whether --enable-help-builtin was given. +if test "${enable_help_builtin+set}" = set; then + enableval=$enable_help_builtin; opt_help=$enableval +fi + +@%:@ Check whether --enable-history was given. +if test "${enable_history+set}" = set; then + enableval=$enable_history; opt_history=$enableval +fi + +@%:@ Check whether --enable-job-control was given. +if test "${enable_job_control+set}" = set; then + enableval=$enable_job_control; opt_job_control=$enableval +fi + +@%:@ Check whether --enable-multibyte was given. +if test "${enable_multibyte+set}" = set; then + enableval=$enable_multibyte; opt_multibyte=$enableval +fi + +@%:@ Check whether --enable-net-redirections was given. +if test "${enable_net_redirections+set}" = set; then + enableval=$enable_net_redirections; opt_net_redirs=$enableval +fi + +@%:@ Check whether --enable-process-substitution was given. +if test "${enable_process_substitution+set}" = set; then + enableval=$enable_process_substitution; opt_process_subst=$enableval +fi + +@%:@ Check whether --enable-progcomp was given. +if test "${enable_progcomp+set}" = set; then + enableval=$enable_progcomp; opt_progcomp=$enableval +fi + +@%:@ Check whether --enable-prompt-string-decoding was given. +if test "${enable_prompt_string_decoding+set}" = set; then + enableval=$enable_prompt_string_decoding; opt_prompt_decoding=$enableval +fi + +@%:@ Check whether --enable-readline was given. +if test "${enable_readline+set}" = set; then + enableval=$enable_readline; opt_readline=$enableval +fi + +@%:@ Check whether --enable-restricted was given. +if test "${enable_restricted+set}" = set; then + enableval=$enable_restricted; opt_restricted=$enableval +fi + +@%:@ Check whether --enable-select was given. +if test "${enable_select+set}" = set; then + enableval=$enable_select; opt_select=$enableval +fi + +@%:@ Check whether --enable-separate-helpfiles was given. +if test "${enable_separate_helpfiles+set}" = set; then + enableval=$enable_separate_helpfiles; opt_separate_help=$enableval +fi + +@%:@ Check whether --enable-single-help-strings was given. +if test "${enable_single_help_strings+set}" = set; then + enableval=$enable_single_help_strings; opt_single_longdoc_strings=$enableval +fi + +@%:@ Check whether --enable-strict-posix-default was given. +if test "${enable_strict_posix_default+set}" = set; then + enableval=$enable_strict_posix_default; opt_strict_posix=$enableval +fi + +@%:@ Check whether --enable-usg-echo-default was given. +if test "${enable_usg_echo_default+set}" = set; then + enableval=$enable_usg_echo_default; opt_xpg_echo=$enableval +fi + +@%:@ Check whether --enable-xpg-echo-default was given. +if test "${enable_xpg_echo_default+set}" = set; then + enableval=$enable_xpg_echo_default; opt_xpg_echo=$enableval +fi + + +@%:@ Check whether --enable-mem-scramble was given. +if test "${enable_mem_scramble+set}" = set; then + enableval=$enable_mem_scramble; opt_memscramble=$enableval +fi + +@%:@ Check whether --enable-profiling was given. +if test "${enable_profiling+set}" = set; then + enableval=$enable_profiling; opt_profiling=$enableval +fi + +@%:@ Check whether --enable-static-link was given. +if test "${enable_static_link+set}" = set; then + enableval=$enable_static_link; opt_static_link=$enableval +fi + + + + +if test $opt_alias = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define ALIAS 1 +_ACEOF + +fi +if test $opt_dirstack = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define PUSHD_AND_POPD 1 +_ACEOF + +fi +if test $opt_restricted = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define RESTRICTED_SHELL 1 +_ACEOF + +fi +if test $opt_process_subst = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define PROCESS_SUBSTITUTION 1 +_ACEOF + +fi +if test $opt_prompt_decoding = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define PROMPT_STRING_DECODE 1 +_ACEOF + +fi +if test $opt_select = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define SELECT_COMMAND 1 +_ACEOF + +fi +if test $opt_help = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define HELP_BUILTIN 1 +_ACEOF + +fi +if test $opt_array_variables = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define ARRAY_VARS 1 +_ACEOF + +fi +if test $opt_dparen_arith = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define DPAREN_ARITHMETIC 1 +_ACEOF + +fi +if test $opt_brace_expansion = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define BRACE_EXPANSION 1 +_ACEOF + +fi +if test $opt_disabled_builtins = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define DISABLED_BUILTINS 1 +_ACEOF + +fi +if test $opt_command_timing = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define COMMAND_TIMING 1 +_ACEOF + +fi +if test $opt_xpg_echo = yes ; then +cat >>confdefs.h <<\_ACEOF +@%:@define DEFAULT_ECHO_TO_XPG 1 +_ACEOF + +fi +if test $opt_strict_posix = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define STRICT_POSIX 1 +_ACEOF + +fi +if test $opt_extended_glob = yes ; then +cat >>confdefs.h <<\_ACEOF +@%:@define EXTENDED_GLOB 1 +_ACEOF + +fi +if test $opt_cond_command = yes ; then +cat >>confdefs.h <<\_ACEOF +@%:@define COND_COMMAND 1 +_ACEOF + +fi +if test $opt_cond_regexp = yes ; then +cat >>confdefs.h <<\_ACEOF +@%:@define COND_REGEXP 1 +_ACEOF + +fi +if test $opt_coproc = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define COPROCESS_SUPPORT 1 +_ACEOF + +fi +if test $opt_arith_for_command = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define ARITH_FOR_COMMAND 1 +_ACEOF + +fi +if test $opt_net_redirs = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define NETWORK_REDIRECTIONS 1 +_ACEOF + +fi +if test $opt_progcomp = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define PROGRAMMABLE_COMPLETION 1 +_ACEOF + +fi +if test $opt_multibyte = no; then +cat >>confdefs.h <<\_ACEOF +@%:@define NO_MULTIBYTE_SUPPORT 1 +_ACEOF + +fi +if test $opt_debugger = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define DEBUGGER 1 +_ACEOF + +fi +if test $opt_casemod_attrs = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define CASEMOD_ATTRS 1 +_ACEOF + +fi +if test $opt_casemod_expansions = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define CASEMOD_EXPANSIONS 1 +_ACEOF + +fi + +if test $opt_memscramble = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define MEMSCRAMBLE 1 +_ACEOF + +fi + +if test "$opt_minimal_config" = yes; then + TESTSCRIPT=run-minimal +else + TESTSCRIPT=run-all +fi + +HELPDIR= HELPDIRDEFINE= HELPINSTALL= +if test "$opt_separate_help" != no; then + if test "$opt_separate_help" = "yes" ; then + HELPDIR='${datadir}/bash' + else + HELPDIR=$opt_separate_help + fi + HELPDIRDEFINE='-H ${HELPDIR}' + HELPINSTALL='install-help' +fi +HELPSTRINGS= +if test "$opt_single_longdoc_strings" != "yes"; then + HELPSTRINGS='-S' +fi + + + + + + + + + + + + + + + + + + +echo "" +echo "Beginning configuration for bash-$BASHVERS-$RELSTATUS for ${host_cpu}-${host_vendor}-${host_os}" +echo "" + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu +if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. +set dummy ${ac_tool_prefix}gcc; ac_word=$2 +{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_prog_CC+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_CC="${ac_tool_prefix}gcc" + $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done +IFS=$as_save_IFS + +fi +fi +CC=$ac_cv_prog_CC +if test -n "$CC"; then + { $as_echo "$as_me:$LINENO: result: $CC" >&5 +$as_echo "$CC" >&6; } +else + { $as_echo "$as_me:$LINENO: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_CC"; then + ac_ct_CC=$CC + # Extract the first word of "gcc", so it can be a program name with args. +set dummy gcc; ac_word=$2 +{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_prog_ac_ct_CC+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_CC"; then + ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_ac_ct_CC="gcc" + $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done +IFS=$as_save_IFS + +fi +fi +ac_ct_CC=$ac_cv_prog_ac_ct_CC +if test -n "$ac_ct_CC"; then + { $as_echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 +$as_echo "$ac_ct_CC" >&6; } +else + { $as_echo "$as_me:$LINENO: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_CC" = x; then + CC="" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + CC=$ac_ct_CC + fi +else + CC="$ac_cv_prog_CC" +fi + +if test -z "$CC"; then + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. +set dummy ${ac_tool_prefix}cc; ac_word=$2 +{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_prog_CC+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_CC="${ac_tool_prefix}cc" + $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done +IFS=$as_save_IFS + +fi +fi +CC=$ac_cv_prog_CC +if test -n "$CC"; then + { $as_echo "$as_me:$LINENO: result: $CC" >&5 +$as_echo "$CC" >&6; } +else + { $as_echo "$as_me:$LINENO: result: no" >&5 +$as_echo "no" >&6; } +fi + + + fi +fi +if test -z "$CC"; then + # Extract the first word of "cc", so it can be a program name with args. +set dummy cc; ac_word=$2 +{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_prog_CC+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else + ac_prog_rejected=no +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then + ac_prog_rejected=yes + continue + fi + ac_cv_prog_CC="cc" + $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done +IFS=$as_save_IFS + +if test $ac_prog_rejected = yes; then + # We found a bogon in the path, so make sure we never use it. + set dummy $ac_cv_prog_CC + shift + if test $@%:@ != 0; then + # We chose a different compiler from the bogus one. + # However, it has the same basename, so the bogon will be chosen + # first if we set CC to just the basename; use the full file name. + shift + ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" + fi +fi +fi +fi +CC=$ac_cv_prog_CC +if test -n "$CC"; then + { $as_echo "$as_me:$LINENO: result: $CC" >&5 +$as_echo "$CC" >&6; } +else + { $as_echo "$as_me:$LINENO: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$CC"; then + if test -n "$ac_tool_prefix"; then + for ac_prog in cl.exe + do + # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. +set dummy $ac_tool_prefix$ac_prog; ac_word=$2 +{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_prog_CC+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_CC="$ac_tool_prefix$ac_prog" + $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done +IFS=$as_save_IFS + +fi +fi +CC=$ac_cv_prog_CC +if test -n "$CC"; then + { $as_echo "$as_me:$LINENO: result: $CC" >&5 +$as_echo "$CC" >&6; } +else + { $as_echo "$as_me:$LINENO: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$CC" && break + done +fi +if test -z "$CC"; then + ac_ct_CC=$CC + for ac_prog in cl.exe +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_prog_ac_ct_CC+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_CC"; then + ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_ac_ct_CC="$ac_prog" + $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done +IFS=$as_save_IFS + +fi +fi +ac_ct_CC=$ac_cv_prog_ac_ct_CC +if test -n "$ac_ct_CC"; then + { $as_echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 +$as_echo "$ac_ct_CC" >&6; } +else + { $as_echo "$as_me:$LINENO: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$ac_ct_CC" && break +done + + if test "x$ac_ct_CC" = x; then + CC="" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + CC=$ac_ct_CC + fi +fi + +fi + + +test -z "$CC" && { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +{ { $as_echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH +See \`config.log' for more details." >&5 +$as_echo "$as_me: error: no acceptable C compiler found in \$PATH +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; }; } + +# Provide some information about the compiler. +$as_echo "$as_me:$LINENO: checking for C compiler version" >&5 +set X $ac_compile +ac_compiler=$2 +{ (ac_try="$ac_compiler --version >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compiler --version >&5") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } +{ (ac_try="$ac_compiler -v >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compiler -v >&5") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } +{ (ac_try="$ac_compiler -V >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compiler -V >&5") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } + +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +ac_clean_files_save=$ac_clean_files +ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out" +# Try to create an executable without -o first, disregard a.out. +# It will help us diagnose broken compilers, and finding out an intuition +# of exeext. +{ $as_echo "$as_me:$LINENO: checking for C compiler default output file name" >&5 +$as_echo_n "checking for C compiler default output file name... " >&6; } +ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` + +# The possible output files: +ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*" + +ac_rmfiles= +for ac_file in $ac_files +do + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; + * ) ac_rmfiles="$ac_rmfiles $ac_file";; + esac +done +rm -f $ac_rmfiles + +if { (ac_try="$ac_link_default" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link_default") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; then + # Autoconf-2.13 could set the ac_cv_exeext variable to `no'. +# So ignore a value of `no', otherwise this would lead to `EXEEXT = no' +# in a Makefile. We should not override ac_cv_exeext if it was cached, +# so that the user can short-circuit this test for compilers unknown to +# Autoconf. +for ac_file in $ac_files '' +do + test -f "$ac_file" || continue + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) + ;; + [ab].out ) + # We found the default executable, but exeext='' is most + # certainly right. + break;; + *.* ) + if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; + then :; else + ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` + fi + # We set ac_cv_exeext here because the later test for it is not + # safe: cross compilers may not add the suffix if given an `-o' + # argument, so we may need to know it at that point already. + # Even if this section looks crufty: it has the advantage of + # actually working. + break;; + * ) + break;; + esac +done +test "$ac_cv_exeext" = no && ac_cv_exeext= + +else + ac_file='' +fi + +{ $as_echo "$as_me:$LINENO: result: $ac_file" >&5 +$as_echo "$ac_file" >&6; } +if test -z "$ac_file"; then + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +{ { $as_echo "$as_me:$LINENO: error: C compiler cannot create executables +See \`config.log' for more details." >&5 +$as_echo "$as_me: error: C compiler cannot create executables +See \`config.log' for more details." >&2;} + { (exit 77); exit 77; }; }; } +fi + +ac_exeext=$ac_cv_exeext + +# Check that the compiler produces executables we can run. If not, either +# the compiler is broken, or we cross compile. +{ $as_echo "$as_me:$LINENO: checking whether the C compiler works" >&5 +$as_echo_n "checking whether the C compiler works... " >&6; } +# FIXME: These cross compiler hacks should be removed for Autoconf 3.0 +# If not cross compiling, check that we can run a simple program. +if test "$cross_compiling" != yes; then + if { ac_try='./$ac_file' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + cross_compiling=no + else + if test "$cross_compiling" = maybe; then + cross_compiling=yes + else + { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +{ { $as_echo "$as_me:$LINENO: error: cannot run C compiled programs. +If you meant to cross compile, use \`--host'. +See \`config.log' for more details." >&5 +$as_echo "$as_me: error: cannot run C compiled programs. +If you meant to cross compile, use \`--host'. +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; }; } + fi + fi +fi +{ $as_echo "$as_me:$LINENO: result: yes" >&5 +$as_echo "yes" >&6; } + +rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out +ac_clean_files=$ac_clean_files_save +# Check that the compiler produces executables we can run. If not, either +# the compiler is broken, or we cross compile. +{ $as_echo "$as_me:$LINENO: checking whether we are cross compiling" >&5 +$as_echo_n "checking whether we are cross compiling... " >&6; } +{ $as_echo "$as_me:$LINENO: result: $cross_compiling" >&5 +$as_echo "$cross_compiling" >&6; } + +{ $as_echo "$as_me:$LINENO: checking for suffix of executables" >&5 +$as_echo_n "checking for suffix of executables... " >&6; } +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; then + # If both `conftest.exe' and `conftest' are `present' (well, observable) +# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will +# work properly (i.e., refer to `conftest.exe'), while it won't with +# `rm'. +for ac_file in conftest.exe conftest conftest.*; do + test -f "$ac_file" || continue + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; + *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` + break;; + * ) break;; + esac +done +else + { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +{ { $as_echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link +See \`config.log' for more details." >&5 +$as_echo "$as_me: error: cannot compute suffix of executables: cannot compile and link +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; }; } +fi + +rm -f conftest$ac_cv_exeext +{ $as_echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5 +$as_echo "$ac_cv_exeext" >&6; } + +rm -f conftest.$ac_ext +EXEEXT=$ac_cv_exeext +ac_exeext=$EXEEXT +{ $as_echo "$as_me:$LINENO: checking for suffix of object files" >&5 +$as_echo_n "checking for suffix of object files... " >&6; } +if test "${ac_cv_objext+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.o conftest.obj +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; then + for ac_file in conftest.o conftest.obj conftest.*; do + test -f "$ac_file" || continue; + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;; + *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` + break;; + esac +done +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +{ { $as_echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile +See \`config.log' for more details." >&5 +$as_echo "$as_me: error: cannot compute suffix of object files: cannot compile +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; }; } +fi + +rm -f conftest.$ac_cv_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_objext" >&5 +$as_echo "$ac_cv_objext" >&6; } +OBJEXT=$ac_cv_objext +ac_objext=$OBJEXT +{ $as_echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 +$as_echo_n "checking whether we are using the GNU C compiler... " >&6; } +if test "${ac_cv_c_compiler_gnu+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +int +main () +{ +#ifndef __GNUC__ + choke me +#endif + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_compiler_gnu=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_compiler_gnu=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +ac_cv_c_compiler_gnu=$ac_compiler_gnu + +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5 +$as_echo "$ac_cv_c_compiler_gnu" >&6; } +if test $ac_compiler_gnu = yes; then + GCC=yes +else + GCC= +fi +ac_test_CFLAGS=${CFLAGS+set} +ac_save_CFLAGS=$CFLAGS +{ $as_echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 +$as_echo_n "checking whether $CC accepts -g... " >&6; } +if test "${ac_cv_prog_cc_g+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_save_c_werror_flag=$ac_c_werror_flag + ac_c_werror_flag=yes + ac_cv_prog_cc_g=no + CFLAGS="-g" + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_prog_cc_g=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + CFLAGS="" + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_c_werror_flag=$ac_save_c_werror_flag + CFLAGS="-g" + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_prog_cc_g=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ac_c_werror_flag=$ac_save_c_werror_flag +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 +$as_echo "$ac_cv_prog_cc_g" >&6; } +if test "$ac_test_CFLAGS" = set; then + CFLAGS=$ac_save_CFLAGS +elif test $ac_cv_prog_cc_g = yes; then + if test "$GCC" = yes; then + CFLAGS="-g -O2" + else + CFLAGS="-g" + fi +else + if test "$GCC" = yes; then + CFLAGS="-O2" + else + CFLAGS= + fi +fi +{ $as_echo "$as_me:$LINENO: checking for $CC option to accept ISO C89" >&5 +$as_echo_n "checking for $CC option to accept ISO C89... " >&6; } +if test "${ac_cv_prog_cc_c89+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_prog_cc_c89=no +ac_save_CC=$CC +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#include +#include +#include +/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ +struct buf { int x; }; +FILE * (*rcsopen) (struct buf *, struct stat *, int); +static char *e (p, i) + char **p; + int i; +{ + return p[i]; +} +static char *f (char * (*g) (char **, int), char **p, ...) +{ + char *s; + va_list v; + va_start (v,p); + s = g (p, va_arg (v,int)); + va_end (v); + return s; +} + +/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has + function prototypes and stuff, but not '\xHH' hex character constants. + These don't provoke an error unfortunately, instead are silently treated + as 'x'. The following induces an error, until -std is added to get + proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an + array size at least. It's necessary to write '\x00'==0 to get something + that's true only with -std. */ +int osf4_cc_array ['\x00' == 0 ? 1 : -1]; + +/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters + inside strings and character constants. */ +#define FOO(x) 'x' +int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; + +int test (int i, double x); +struct s1 {int (*f) (int a);}; +struct s2 {int (*f) (double a);}; +int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); +int argc; +char **argv; +int +main () +{ +return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; + ; + return 0; +} +_ACEOF +for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \ + -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" +do + CC="$ac_save_CC $ac_arg" + rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_prog_cc_c89=$ac_arg +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext + test "x$ac_cv_prog_cc_c89" != "xno" && break +done +rm -f conftest.$ac_ext +CC=$ac_save_CC + +fi +# AC_CACHE_VAL +case "x$ac_cv_prog_cc_c89" in + x) + { $as_echo "$as_me:$LINENO: result: none needed" >&5 +$as_echo "none needed" >&6; } ;; + xno) + { $as_echo "$as_me:$LINENO: result: unsupported" >&5 +$as_echo "unsupported" >&6; } ;; + *) + CC="$CC $ac_cv_prog_cc_c89" + { $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c89" >&5 +$as_echo "$ac_cv_prog_cc_c89" >&6; } ;; +esac + + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + + + + { $as_echo "$as_me:$LINENO: checking for strerror in -lcposix" >&5 +$as_echo_n "checking for strerror in -lcposix... " >&6; } +if test "${ac_cv_lib_cposix_strerror+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lcposix $LIBS" +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char strerror (); +int +main () +{ +return strerror (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_lib_cposix_strerror=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_lib_cposix_strerror=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_cposix_strerror" >&5 +$as_echo "$ac_cv_lib_cposix_strerror" >&6; } +if test "x$ac_cv_lib_cposix_strerror" = x""yes; then + LIBS="$LIBS -lcposix" +fi + + + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu +{ $as_echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5 +$as_echo_n "checking how to run the C preprocessor... " >&6; } +# On Suns, sometimes $CPP names a directory. +if test -n "$CPP" && test -d "$CPP"; then + CPP= +fi +if test -z "$CPP"; then + if test "${ac_cv_prog_CPP+set}" = set; then + $as_echo_n "(cached) " >&6 +else + # Double quotes because CPP needs to be expanded + for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" + do + ac_preproc_ok=false +for ac_c_preproc_warn_flag in '' yes +do + # Use a header file that comes with gcc, so configuring glibc + # with a fresh cross-compiler works. + # Prefer to if __STDC__ is defined, since + # exists even on freestanding compilers. + # On the NeXT, cc -E runs the code through the compiler's parser, + # not just through cpp. "Syntax error" is here to catch this case. + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +@%:@ifdef __STDC__ +@%:@ include +@%:@else +@%:@ include +@%:@endif + Syntax error +_ACEOF +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + # Broken: fails on valid input. +continue +fi + +rm -f conftest.err conftest.$ac_ext + + # OK, works on sane cases. Now check whether nonexistent headers + # can be detected and how. + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +@%:@include +_ACEOF +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then + # Broken: success on invalid input. +continue +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + # Passes both tests. +ac_preproc_ok=: +break +fi + +rm -f conftest.err conftest.$ac_ext + +done +# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. +rm -f conftest.err conftest.$ac_ext +if $ac_preproc_ok; then + break +fi + + done + ac_cv_prog_CPP=$CPP + +fi + CPP=$ac_cv_prog_CPP +else + ac_cv_prog_CPP=$CPP +fi +{ $as_echo "$as_me:$LINENO: result: $CPP" >&5 +$as_echo "$CPP" >&6; } +ac_preproc_ok=false +for ac_c_preproc_warn_flag in '' yes +do + # Use a header file that comes with gcc, so configuring glibc + # with a fresh cross-compiler works. + # Prefer to if __STDC__ is defined, since + # exists even on freestanding compilers. + # On the NeXT, cc -E runs the code through the compiler's parser, + # not just through cpp. "Syntax error" is here to catch this case. + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +@%:@ifdef __STDC__ +@%:@ include +@%:@else +@%:@ include +@%:@endif + Syntax error +_ACEOF +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + # Broken: fails on valid input. +continue +fi + +rm -f conftest.err conftest.$ac_ext + + # OK, works on sane cases. Now check whether nonexistent headers + # can be detected and how. + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +@%:@include +_ACEOF +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then + # Broken: success on invalid input. +continue +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + # Passes both tests. +ac_preproc_ok=: +break +fi + +rm -f conftest.err conftest.$ac_ext + +done +# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. +rm -f conftest.err conftest.$ac_ext +if $ac_preproc_ok; then + : +else + { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +{ { $as_echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check +See \`config.log' for more details." >&5 +$as_echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; }; } +fi + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + +{ $as_echo "$as_me:$LINENO: checking for grep that handles long lines and -e" >&5 +$as_echo_n "checking for grep that handles long lines and -e... " >&6; } +if test "${ac_cv_path_GREP+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test -z "$GREP"; then + ac_path_GREP_found=false + # Loop through the user's path and test for each of PROGNAME-LIST + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in grep ggrep; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" + { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue +# Check for GNU ac_path_GREP and select it if it is found. + # Check for GNU $ac_path_GREP +case `"$ac_path_GREP" --version 2>&1` in +*GNU*) + ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; +*) + ac_count=0 + $as_echo_n 0123456789 >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + $as_echo 'GREP' >> "conftest.nl" + "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + ac_count=`expr $ac_count + 1` + if test $ac_count -gt ${ac_path_GREP_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_GREP="$ac_path_GREP" + ac_path_GREP_max=$ac_count + fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac + + $ac_path_GREP_found && break 3 + done + done +done +IFS=$as_save_IFS + if test -z "$ac_cv_path_GREP"; then + { { $as_echo "$as_me:$LINENO: error: no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5 +$as_echo "$as_me: error: no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;} + { (exit 1); exit 1; }; } + fi +else + ac_cv_path_GREP=$GREP +fi + +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_path_GREP" >&5 +$as_echo "$ac_cv_path_GREP" >&6; } + GREP="$ac_cv_path_GREP" + + +{ $as_echo "$as_me:$LINENO: checking for egrep" >&5 +$as_echo_n "checking for egrep... " >&6; } +if test "${ac_cv_path_EGREP+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 + then ac_cv_path_EGREP="$GREP -E" + else + if test -z "$EGREP"; then + ac_path_EGREP_found=false + # Loop through the user's path and test for each of PROGNAME-LIST + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in egrep; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" + { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue +# Check for GNU ac_path_EGREP and select it if it is found. + # Check for GNU $ac_path_EGREP +case `"$ac_path_EGREP" --version 2>&1` in +*GNU*) + ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; +*) + ac_count=0 + $as_echo_n 0123456789 >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + $as_echo 'EGREP' >> "conftest.nl" + "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + ac_count=`expr $ac_count + 1` + if test $ac_count -gt ${ac_path_EGREP_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_EGREP="$ac_path_EGREP" + ac_path_EGREP_max=$ac_count + fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac + + $ac_path_EGREP_found && break 3 + done + done +done +IFS=$as_save_IFS + if test -z "$ac_cv_path_EGREP"; then + { { $as_echo "$as_me:$LINENO: error: no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5 +$as_echo "$as_me: error: no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;} + { (exit 1); exit 1; }; } + fi +else + ac_cv_path_EGREP=$EGREP +fi + + fi +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_path_EGREP" >&5 +$as_echo "$ac_cv_path_EGREP" >&6; } + EGREP="$ac_cv_path_EGREP" + + +{ $as_echo "$as_me:$LINENO: checking for ANSI C header files" >&5 +$as_echo_n "checking for ANSI C header files... " >&6; } +if test "${ac_cv_header_stdc+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#include +#include +#include + +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_header_stdc=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_header_stdc=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +if test $ac_cv_header_stdc = yes; then + # SunOS 4.x string.h does not declare mem*, contrary to ANSI. + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "memchr" >/dev/null 2>&1; then + : +else + ac_cv_header_stdc=no +fi +rm -f conftest* + +fi + +if test $ac_cv_header_stdc = yes; then + # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "free" >/dev/null 2>&1; then + : +else + ac_cv_header_stdc=no +fi +rm -f conftest* + +fi + +if test $ac_cv_header_stdc = yes; then + # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. + if test "$cross_compiling" = yes; then + : +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#include +#if ((' ' & 0x0FF) == 0x020) +# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') +# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) +#else +# define ISLOWER(c) \ + (('a' <= (c) && (c) <= 'i') \ + || ('j' <= (c) && (c) <= 'r') \ + || ('s' <= (c) && (c) <= 'z')) +# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) +#endif + +#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) +int +main () +{ + int i; + for (i = 0; i < 256; i++) + if (XOR (islower (i), ISLOWER (i)) + || toupper (i) != TOUPPER (i)) + return 2; + return 0; +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + : +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +ac_cv_header_stdc=no +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + +fi +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 +$as_echo "$ac_cv_header_stdc" >&6; } +if test $ac_cv_header_stdc = yes; then + +cat >>confdefs.h <<\_ACEOF +@%:@define STDC_HEADERS 1 +_ACEOF + +fi + +# On IRIX 5.3, sys/types and inttypes.h are conflicting. + + + + + + + + + +for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ + inttypes.h stdint.h unistd.h +do +as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 +$as_echo_n "checking for $ac_header... " >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default + +@%:@include <$ac_header> +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + eval "$as_ac_Header=yes" +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_ac_Header=no" +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +ac_res=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +as_val=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF + +fi + +done + + + + if test "${ac_cv_header_minix_config_h+set}" = set; then + { $as_echo "$as_me:$LINENO: checking for minix/config.h" >&5 +$as_echo_n "checking for minix/config.h... " >&6; } +if test "${ac_cv_header_minix_config_h+set}" = set; then + $as_echo_n "(cached) " >&6 +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_minix_config_h" >&5 +$as_echo "$ac_cv_header_minix_config_h" >&6; } +else + # Is the header compilable? +{ $as_echo "$as_me:$LINENO: checking minix/config.h usability" >&5 +$as_echo_n "checking minix/config.h usability... " >&6; } +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +@%:@include +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_header_compiler=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_compiler=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 +$as_echo "$ac_header_compiler" >&6; } + +# Is the header present? +{ $as_echo "$as_me:$LINENO: checking minix/config.h presence" >&5 +$as_echo_n "checking minix/config.h presence... " >&6; } +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +@%:@include +_ACEOF +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then + ac_header_preproc=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_preproc=no +fi + +rm -f conftest.err conftest.$ac_ext +{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 +$as_echo "$ac_header_preproc" >&6; } + +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in + yes:no: ) + { $as_echo "$as_me:$LINENO: WARNING: minix/config.h: accepted by the compiler, rejected by the preprocessor!" >&5 +$as_echo "$as_me: WARNING: minix/config.h: accepted by the compiler, rejected by the preprocessor!" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: minix/config.h: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: minix/config.h: proceeding with the compiler's result" >&2;} + ac_header_preproc=yes + ;; + no:yes:* ) + { $as_echo "$as_me:$LINENO: WARNING: minix/config.h: present but cannot be compiled" >&5 +$as_echo "$as_me: WARNING: minix/config.h: present but cannot be compiled" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: minix/config.h: check for missing prerequisite headers?" >&5 +$as_echo "$as_me: WARNING: minix/config.h: check for missing prerequisite headers?" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: minix/config.h: see the Autoconf documentation" >&5 +$as_echo "$as_me: WARNING: minix/config.h: see the Autoconf documentation" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: minix/config.h: section \"Present But Cannot Be Compiled\"" >&5 +$as_echo "$as_me: WARNING: minix/config.h: section \"Present But Cannot Be Compiled\"" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: minix/config.h: proceeding with the preprocessor's result" >&5 +$as_echo "$as_me: WARNING: minix/config.h: proceeding with the preprocessor's result" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: minix/config.h: in the future, the compiler will take precedence" >&5 +$as_echo "$as_me: WARNING: minix/config.h: in the future, the compiler will take precedence" >&2;} + ( cat <<\_ASBOX +@%:@@%:@ ------------------------------- @%:@@%:@ +@%:@@%:@ Report this to bug-bash@gnu.org @%:@@%:@ +@%:@@%:@ ------------------------------- @%:@@%:@ +_ASBOX + ) | sed "s/^/$as_me: WARNING: /" >&2 + ;; +esac +{ $as_echo "$as_me:$LINENO: checking for minix/config.h" >&5 +$as_echo_n "checking for minix/config.h... " >&6; } +if test "${ac_cv_header_minix_config_h+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_header_minix_config_h=$ac_header_preproc +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_minix_config_h" >&5 +$as_echo "$ac_cv_header_minix_config_h" >&6; } + +fi +if test "x$ac_cv_header_minix_config_h" = x""yes; then + MINIX=yes +else + MINIX= +fi + + + if test "$MINIX" = yes; then + +cat >>confdefs.h <<\_ACEOF +@%:@define _POSIX_SOURCE 1 +_ACEOF + + +cat >>confdefs.h <<\_ACEOF +@%:@define _POSIX_1_SOURCE 2 +_ACEOF + + +cat >>confdefs.h <<\_ACEOF +@%:@define _MINIX 1 +_ACEOF + + fi + + + + { $as_echo "$as_me:$LINENO: checking whether it is safe to define __EXTENSIONS__" >&5 +$as_echo_n "checking whether it is safe to define __EXTENSIONS__... " >&6; } +if test "${ac_cv_safe_to_define___extensions__+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +# define __EXTENSIONS__ 1 + $ac_includes_default +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_safe_to_define___extensions__=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_safe_to_define___extensions__=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_safe_to_define___extensions__" >&5 +$as_echo "$ac_cv_safe_to_define___extensions__" >&6; } + test $ac_cv_safe_to_define___extensions__ = yes && + cat >>confdefs.h <<\_ACEOF +@%:@define __EXTENSIONS__ 1 +_ACEOF + + cat >>confdefs.h <<\_ACEOF +@%:@define _ALL_SOURCE 1 +_ACEOF + + cat >>confdefs.h <<\_ACEOF +@%:@define _GNU_SOURCE 1 +_ACEOF + + cat >>confdefs.h <<\_ACEOF +@%:@define _POSIX_PTHREAD_SEMANTICS 1 +_ACEOF + + cat >>confdefs.h <<\_ACEOF +@%:@define _TANDEM_SOURCE 1 +_ACEOF + + + +@%:@ Check whether --enable-largefile was given. +if test "${enable_largefile+set}" = set; then + enableval=$enable_largefile; +fi + +if test "$enable_largefile" != no; then + + { $as_echo "$as_me:$LINENO: checking for special C compiler options needed for large files" >&5 +$as_echo_n "checking for special C compiler options needed for large files... " >&6; } +if test "${ac_cv_sys_largefile_CC+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_sys_largefile_CC=no + if test "$GCC" != yes; then + ac_save_CC=$CC + while :; do + # IRIX 6.2 and later do not support large files by default, + # so use the C compiler's -n32 option if that helps. + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +@%:@include + /* Check that off_t can represent 2**63 - 1 correctly. + We can't simply define LARGE_OFF_T to be 9223372036854775807, + since some C++ compilers masquerading as C compilers + incorrectly reject 9223372036854775807. */ +@%:@define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) + int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 + && LARGE_OFF_T % 2147483647 == 1) + ? 1 : -1]; +int +main () +{ + + ; + return 0; +} +_ACEOF + rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + break +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext + CC="$CC -n32" + rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_sys_largefile_CC=' -n32'; break +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext + break + done + CC=$ac_save_CC + rm -f conftest.$ac_ext + fi +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_sys_largefile_CC" >&5 +$as_echo "$ac_cv_sys_largefile_CC" >&6; } + if test "$ac_cv_sys_largefile_CC" != no; then + CC=$CC$ac_cv_sys_largefile_CC + fi + + { $as_echo "$as_me:$LINENO: checking for _FILE_OFFSET_BITS value needed for large files" >&5 +$as_echo_n "checking for _FILE_OFFSET_BITS value needed for large files... " >&6; } +if test "${ac_cv_sys_file_offset_bits+set}" = set; then + $as_echo_n "(cached) " >&6 +else + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +@%:@include + /* Check that off_t can represent 2**63 - 1 correctly. + We can't simply define LARGE_OFF_T to be 9223372036854775807, + since some C++ compilers masquerading as C compilers + incorrectly reject 9223372036854775807. */ +@%:@define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) + int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 + && LARGE_OFF_T % 2147483647 == 1) + ? 1 : -1]; +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_sys_file_offset_bits=no; break +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +@%:@define _FILE_OFFSET_BITS 64 +@%:@include + /* Check that off_t can represent 2**63 - 1 correctly. + We can't simply define LARGE_OFF_T to be 9223372036854775807, + since some C++ compilers masquerading as C compilers + incorrectly reject 9223372036854775807. */ +@%:@define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) + int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 + && LARGE_OFF_T % 2147483647 == 1) + ? 1 : -1]; +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_sys_file_offset_bits=64; break +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ac_cv_sys_file_offset_bits=unknown + break +done +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_sys_file_offset_bits" >&5 +$as_echo "$ac_cv_sys_file_offset_bits" >&6; } +case $ac_cv_sys_file_offset_bits in #( + no | unknown) ;; + *) +cat >>confdefs.h <<_ACEOF +@%:@define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits +_ACEOF +;; +esac +rm -rf conftest* + if test $ac_cv_sys_file_offset_bits = unknown; then + { $as_echo "$as_me:$LINENO: checking for _LARGE_FILES value needed for large files" >&5 +$as_echo_n "checking for _LARGE_FILES value needed for large files... " >&6; } +if test "${ac_cv_sys_large_files+set}" = set; then + $as_echo_n "(cached) " >&6 +else + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +@%:@include + /* Check that off_t can represent 2**63 - 1 correctly. + We can't simply define LARGE_OFF_T to be 9223372036854775807, + since some C++ compilers masquerading as C compilers + incorrectly reject 9223372036854775807. */ +@%:@define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) + int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 + && LARGE_OFF_T % 2147483647 == 1) + ? 1 : -1]; +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_sys_large_files=no; break +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +@%:@define _LARGE_FILES 1 +@%:@include + /* Check that off_t can represent 2**63 - 1 correctly. + We can't simply define LARGE_OFF_T to be 9223372036854775807, + since some C++ compilers masquerading as C compilers + incorrectly reject 9223372036854775807. */ +@%:@define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) + int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 + && LARGE_OFF_T % 2147483647 == 1) + ? 1 : -1]; +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_sys_large_files=1; break +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ac_cv_sys_large_files=unknown + break +done +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_sys_large_files" >&5 +$as_echo "$ac_cv_sys_large_files" >&6; } +case $ac_cv_sys_large_files in #( + no | unknown) ;; + *) +cat >>confdefs.h <<_ACEOF +@%:@define _LARGE_FILES $ac_cv_sys_large_files +_ACEOF +;; +esac +rm -rf conftest* + fi +fi + + + +SIGNAMES_O= +SIGNAMES_H=lsignames.h + + + +CROSS_COMPILE= +if test "x$cross_compiling" = "xyes"; then + case "${host}" in + *-cygwin*) + cross_cache=${srcdir}/cross-build/cygwin32.cache + ;; + *-mingw*) + cross_cache=${srcdir}/cross-build/cygwin32.cache + ;; + i[3456]86-*-beos*) + cross_cache=${srcdir}/cross-build/x86-beos.cache + ;; + *) echo "configure: cross-compiling for $host is not supported" >&2 + ;; + esac + if test -n "${cross_cache}" && test -r "${cross_cache}"; then + echo "loading cross-build cache file ${cross_cache}" + . ${cross_cache} + fi + unset cross_cache + SIGNAMES_O='signames.o' + CROSS_COMPILE='-DCROSS_COMPILING' + +fi + + + +if test -z "$CC_FOR_BUILD"; then + if test "x$cross_compiling" = "xno"; then + CC_FOR_BUILD='$(CC)' + else + CC_FOR_BUILD=gcc + fi +fi + + + +test -z "$CFLAGS" && CFLAGS=-g auto_cflags=1 + +test -n "$GCC" && test -n "$auto_cflags" && CFLAGS="$CFLAGS -O2" + +if test "$opt_profiling" = "yes"; then + PROFILE_FLAGS=-pg + case "$host_os" in + solaris2*) ;; + *) opt_static_link=yes ;; + esac + DEBUG= MALLOC_DEBUG= +fi + +if test "$opt_static_link" = yes; then + # if we're using gcc, add `-static' to LDFLAGS, except on Solaris >= 2 + if test -n "$GCC" || test "$ac_cv_c_compiler_gnu" = "yes"; then + STATIC_LD="-static" + case "$host_os" in + solaris2*) ;; + *) LDFLAGS="$LDFLAGS -static" ;; # XXX experimental + esac + fi +fi + +if test "X$cross_compiling" = "Xno"; then + CPPFLAGS_FOR_BUILD=${CPPFLAGS_FOR_BUILD-"$CPPFLAGS"} + LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-'$(LDFLAGS)'} +else + CPPFLAGS_FOR_BUILD=${CPPFLAGS_FOR_BUILD-""} + LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-""} +fi + +test -z "$CFLAGS_FOR_BUILD" && CFLAGS_FOR_BUILD="-g" + + + + + + + + + + +if test $ac_cv_c_compiler_gnu = yes; then + { $as_echo "$as_me:$LINENO: checking whether $CC needs -traditional" >&5 +$as_echo_n "checking whether $CC needs -traditional... " >&6; } +if test "${ac_cv_prog_gcc_traditional+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_pattern="Autoconf.*'x'" + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +Autoconf TIOCGETP +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "$ac_pattern" >/dev/null 2>&1; then + ac_cv_prog_gcc_traditional=yes +else + ac_cv_prog_gcc_traditional=no +fi +rm -f conftest* + + + if test $ac_cv_prog_gcc_traditional = no; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +Autoconf TCGETA +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "$ac_pattern" >/dev/null 2>&1; then + ac_cv_prog_gcc_traditional=yes +fi +rm -f conftest* + + fi +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_prog_gcc_traditional" >&5 +$as_echo "$ac_cv_prog_gcc_traditional" >&6; } + if test $ac_cv_prog_gcc_traditional = yes; then + CC="$CC -traditional" + fi +fi + + + +if test "$opt_readline" = yes && test "$opt_with_installed_readline" != "no" +then + # If the user specified --with-installed-readline=PREFIX and PREFIX + # is not `yes', set ac_cv_rl_prefix to PREFIX + test $opt_with_installed_readline != "yes" && ac_cv_rl_prefix=$opt_with_installed_readline + + +if test "X$bash_cv_termcap_lib" = "X"; then +_bash_needmsg=yes +else +{ $as_echo "$as_me:$LINENO: checking which library has the termcap functions" >&5 +$as_echo_n "checking which library has the termcap functions... " >&6; } +_bash_needmsg= +fi +if test "${bash_cv_termcap_lib+set}" = set; then + $as_echo_n "(cached) " >&6 +else + { $as_echo "$as_me:$LINENO: checking for tgetent" >&5 +$as_echo_n "checking for tgetent... " >&6; } +if test "${ac_cv_func_tgetent+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define tgetent to an innocuous variant, in case declares tgetent. + For example, HP-UX 11i declares gettimeofday. */ +#define tgetent innocuous_tgetent + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char tgetent (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef tgetent + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char tgetent (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_tgetent || defined __stub___tgetent +choke me +#endif + +int +main () +{ +return tgetent (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_func_tgetent=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_func_tgetent=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_tgetent" >&5 +$as_echo "$ac_cv_func_tgetent" >&6; } +if test "x$ac_cv_func_tgetent" = x""yes; then + bash_cv_termcap_lib=libc +else + { $as_echo "$as_me:$LINENO: checking for tgetent in -ltermcap" >&5 +$as_echo_n "checking for tgetent in -ltermcap... " >&6; } +if test "${ac_cv_lib_termcap_tgetent+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ltermcap $LIBS" +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char tgetent (); +int +main () +{ +return tgetent (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_lib_termcap_tgetent=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_lib_termcap_tgetent=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_termcap_tgetent" >&5 +$as_echo "$ac_cv_lib_termcap_tgetent" >&6; } +if test "x$ac_cv_lib_termcap_tgetent" = x""yes; then + bash_cv_termcap_lib=libtermcap +else + { $as_echo "$as_me:$LINENO: checking for tgetent in -ltinfo" >&5 +$as_echo_n "checking for tgetent in -ltinfo... " >&6; } +if test "${ac_cv_lib_tinfo_tgetent+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ltinfo $LIBS" +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char tgetent (); +int +main () +{ +return tgetent (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_lib_tinfo_tgetent=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_lib_tinfo_tgetent=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_tinfo_tgetent" >&5 +$as_echo "$ac_cv_lib_tinfo_tgetent" >&6; } +if test "x$ac_cv_lib_tinfo_tgetent" = x""yes; then + bash_cv_termcap_lib=libtinfo +else + { $as_echo "$as_me:$LINENO: checking for tgetent in -lcurses" >&5 +$as_echo_n "checking for tgetent in -lcurses... " >&6; } +if test "${ac_cv_lib_curses_tgetent+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lcurses $LIBS" +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char tgetent (); +int +main () +{ +return tgetent (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_lib_curses_tgetent=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_lib_curses_tgetent=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_curses_tgetent" >&5 +$as_echo "$ac_cv_lib_curses_tgetent" >&6; } +if test "x$ac_cv_lib_curses_tgetent" = x""yes; then + bash_cv_termcap_lib=libcurses +else + { $as_echo "$as_me:$LINENO: checking for tgetent in -lncurses" >&5 +$as_echo_n "checking for tgetent in -lncurses... " >&6; } +if test "${ac_cv_lib_ncurses_tgetent+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lncurses $LIBS" +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char tgetent (); +int +main () +{ +return tgetent (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_lib_ncurses_tgetent=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_lib_ncurses_tgetent=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_ncurses_tgetent" >&5 +$as_echo "$ac_cv_lib_ncurses_tgetent" >&6; } +if test "x$ac_cv_lib_ncurses_tgetent" = x""yes; then + bash_cv_termcap_lib=libncurses +else + bash_cv_termcap_lib=gnutermcap +fi + +fi + +fi + +fi + +fi + +fi + +if test "X$_bash_needmsg" = "Xyes"; then +{ $as_echo "$as_me:$LINENO: checking which library has the termcap functions" >&5 +$as_echo_n "checking which library has the termcap functions... " >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: using $bash_cv_termcap_lib" >&5 +$as_echo "using $bash_cv_termcap_lib" >&6; } +if test $bash_cv_termcap_lib = gnutermcap && test -z "$prefer_curses"; then +LDFLAGS="$LDFLAGS -L./lib/termcap" +TERMCAP_LIB="./lib/termcap/libtermcap.a" +TERMCAP_DEP="./lib/termcap/libtermcap.a" +elif test $bash_cv_termcap_lib = libtermcap && test -z "$prefer_curses"; then +TERMCAP_LIB=-ltermcap +TERMCAP_DEP= +elif test $bash_cv_termcap_lib = libtinfo; then +TERMCAP_LIB=-ltinfo +TERMCAP_DEP= +elif test $bash_cv_termcap_lib = libncurses; then +TERMCAP_LIB=-lncurses +TERMCAP_DEP= +elif test $bash_cv_termcap_lib = libc; then +TERMCAP_LIB= +TERMCAP_DEP= +else +TERMCAP_LIB=-lcurses +TERMCAP_DEP= +fi + + + + +{ $as_echo "$as_me:$LINENO: checking version of installed readline library" >&5 +$as_echo_n "checking version of installed readline library... " >&6; } + +# What a pain in the ass this is. + +# save cpp and ld options +_save_CFLAGS="$CFLAGS" +_save_LDFLAGS="$LDFLAGS" +_save_LIBS="$LIBS" + +# Don't set ac_cv_rl_prefix if the caller has already assigned a value. This +# allows the caller to do something like $_rl_prefix=$withval if the user +# specifies --with-installed-readline=PREFIX as an argument to configure + +if test -z "$ac_cv_rl_prefix"; then +test "x$prefix" = xNONE && ac_cv_rl_prefix=$ac_default_prefix || ac_cv_rl_prefix=${prefix} +fi + +eval ac_cv_rl_includedir=${ac_cv_rl_prefix}/include +eval ac_cv_rl_libdir=${ac_cv_rl_prefix}/lib + +LIBS="$LIBS -lreadline ${TERMCAP_LIB}" +CFLAGS="$CFLAGS -I${ac_cv_rl_includedir}" +LDFLAGS="$LDFLAGS -L${ac_cv_rl_libdir}" + +if test "${ac_cv_rl_version+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + ac_cv_rl_version='4.2' +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#include + +extern int rl_gnu_readline_p; + +main() +{ + FILE *fp; + fp = fopen("conftest.rlv", "w"); + if (fp == 0) + exit(1); + if (rl_gnu_readline_p != 1) + fprintf(fp, "0.0\n"); + else + fprintf(fp, "%s\n", rl_library_version ? rl_library_version : "0.0"); + fclose(fp); + exit(0); +} + +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_rl_version=`cat conftest.rlv` +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +ac_cv_rl_version='0.0' +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + +fi + + +CFLAGS="$_save_CFLAGS" +LDFLAGS="$_save_LDFLAGS" +LIBS="$_save_LIBS" + +RL_MAJOR=0 +RL_MINOR=0 + +# ( +case "$ac_cv_rl_version" in +2*|3*|4*|5*|6*|7*|8*|9*) + RL_MAJOR=`echo $ac_cv_rl_version | sed 's:\..*$::'` + RL_MINOR=`echo $ac_cv_rl_version | sed -e 's:^.*\.::' -e 's:[a-zA-Z]*$::'` + ;; +esac + +# ((( +case $RL_MAJOR in +[0-9][0-9]) _RL_MAJOR=$RL_MAJOR ;; +[0-9]) _RL_MAJOR=0$RL_MAJOR ;; +*) _RL_MAJOR=00 ;; +esac + +# ((( +case $RL_MINOR in +[0-9][0-9]) _RL_MINOR=$RL_MINOR ;; +[0-9]) _RL_MINOR=0$RL_MINOR ;; +*) _RL_MINOR=00 ;; +esac + +RL_VERSION="0x${_RL_MAJOR}${_RL_MINOR}" + +# Readline versions greater than 4.2 have these defines in readline.h + +if test $ac_cv_rl_version = '0.0' ; then + { $as_echo "$as_me:$LINENO: WARNING: Could not test version of installed readline library." >&5 +$as_echo "$as_me: WARNING: Could not test version of installed readline library." >&2;} +elif test $RL_MAJOR -gt 4 || { test $RL_MAJOR = 4 && test $RL_MINOR -gt 2 ; } ; then + # set these for use by the caller + RL_PREFIX=$ac_cv_rl_prefix + RL_LIBDIR=$ac_cv_rl_libdir + RL_INCLUDEDIR=$ac_cv_rl_includedir + { $as_echo "$as_me:$LINENO: result: $ac_cv_rl_version" >&5 +$as_echo "$ac_cv_rl_version" >&6; } +else + + +cat >>confdefs.h <<_ACEOF +@%:@define RL_READLINE_VERSION $RL_VERSION +_ACEOF + + +cat >>confdefs.h <<_ACEOF +@%:@define RL_VERSION_MAJOR $RL_MAJOR +_ACEOF + + +cat >>confdefs.h <<_ACEOF +@%:@define RL_VERSION_MINOR $RL_MINOR +_ACEOF + + + + + + +# set these for use by the caller +RL_PREFIX=$ac_cv_rl_prefix +RL_LIBDIR=$ac_cv_rl_libdir +RL_INCLUDEDIR=$ac_cv_rl_includedir + +{ $as_echo "$as_me:$LINENO: result: $ac_cv_rl_version" >&5 +$as_echo "$ac_cv_rl_version" >&6; } + +fi + + + case "$ac_cv_rl_version" in + 5*|6*|7*|8*|9*) ;; + *) opt_with_installed_readline=no + { $as_echo "$as_me:$LINENO: WARNING: installed readline library is too old to be linked with bash" >&5 +$as_echo "$as_me: WARNING: installed readline library is too old to be linked with bash" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: using private bash version" >&5 +$as_echo "$as_me: WARNING: using private bash version" >&2;} + ;; + esac +fi + +TILDE_LIB=-ltilde +if test $opt_readline = yes; then + cat >>confdefs.h <<\_ACEOF +@%:@define READLINE 1 +_ACEOF + + if test "$opt_with_installed_readline" != "no" ; then + case "$opt_with_installed_readline" in + yes) RL_INCLUDE= ;; + *) case "$RL_INCLUDEDIR" in + /usr/include) ;; + *) RL_INCLUDE='-I${RL_INCLUDEDIR}' ;; + esac + ;; + esac + READLINE_DEP= + READLINE_LIB=-lreadline + # section for OS versions that don't allow unresolved symbols + # to be compiled into dynamic libraries. + case "$host_os" in + cygwin*) TILDE_LIB= ;; + esac + else + RL_LIBDIR='$(dot)/$(LIBSUBDIR)/readline' + READLINE_DEP='$(READLINE_LIBRARY)' + # section for OS versions that ship an older/broken version of + # readline as a standard dynamic library and don't allow a + # static version specified as -llibname to override the + # dynamic version + case "${host_os}" in + darwin[89]*|darwin10*) READLINE_LIB='${READLINE_LIBRARY}' ;; + *) READLINE_LIB=-lreadline ;; + esac + fi +else + RL_LIBDIR='$(dot)/$(LIBSUBDIR)/readline' + READLINE_LIB= READLINE_DEP= +fi +if test $opt_history = yes || test $opt_bang_history = yes; then + if test $opt_history = yes; then + cat >>confdefs.h <<\_ACEOF +@%:@define HISTORY 1 +_ACEOF + + fi + if test $opt_bang_history = yes; then + cat >>confdefs.h <<\_ACEOF +@%:@define BANG_HISTORY 1 +_ACEOF + + fi + if test "$opt_with_installed_readline" != "no"; then + HIST_LIBDIR=$RL_LIBDIR + HISTORY_DEP= + HISTORY_LIB=-lhistory + case "$opt_with_installed_readline" in + yes) RL_INCLUDE= ;; + *) case "$RL_INCLUDEDIR" in + /usr/include) ;; + *) RL_INCLUDE='-I${RL_INCLUDEDIR}' ;; + esac + ;; + esac + else + HIST_LIBDIR='$(dot)/$(LIBSUBDIR)/readline' + HISTORY_DEP='$(HISTORY_LIBRARY)' + # section for OS versions that ship an older version of + # readline as a standard dynamic library and don't allow a + # static version specified as -llibname to override the + # dynamic version + case "${host_os}" in + darwin[89]*|darwin10*) HISTORY_LIB='${HISTORY_LIBRARY}' ;; + *) HISTORY_LIB=-lhistory ;; + esac + fi +else + HIST_LIBDIR='$(dot)/$(LIBSUBDIR)/readline' + HISTORY_LIB= HISTORY_DEP= +fi + + + + + + + + + + + +# Find a good install program. We prefer a C program (faster), +# so one script is as good as another. But avoid the broken or +# incompatible versions: +# SysV /etc/install, /usr/sbin/install +# SunOS /usr/etc/install +# IRIX /sbin/install +# AIX /bin/install +# AmigaOS /C/install, which installs bootblocks on floppy discs +# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag +# AFS /usr/afsws/bin/install, which mishandles nonexistent args +# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" +# OS/2's system install, which has a completely different semantic +# ./install, which can be erroneously created by make from ./install.sh. +# Reject install programs that cannot install multiple files. +{ $as_echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5 +$as_echo_n "checking for a BSD-compatible install... " >&6; } +if test -z "$INSTALL"; then +if test "${ac_cv_path_install+set}" = set; then + $as_echo_n "(cached) " >&6 +else + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + # Account for people who put trailing slashes in PATH elements. +case $as_dir/ in + ./ | .// | /cC/* | \ + /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ + ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \ + /usr/ucb/* ) ;; + *) + # OSF1 and SCO ODT 3.0 have their own names for install. + # Don't use installbsd from OSF since it installs stuff as root + # by default. + for ac_prog in ginstall scoinst install; do + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then + if test $ac_prog = install && + grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then + # AIX install. It has an incompatible calling convention. + : + elif test $ac_prog = install && + grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then + # program-specific install script used by HP pwplus--don't use. + : + else + rm -rf conftest.one conftest.two conftest.dir + echo one > conftest.one + echo two > conftest.two + mkdir conftest.dir + if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" && + test -s conftest.one && test -s conftest.two && + test -s conftest.dir/conftest.one && + test -s conftest.dir/conftest.two + then + ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" + break 3 + fi + fi + fi + done + done + ;; +esac + +done +IFS=$as_save_IFS + +rm -rf conftest.one conftest.two conftest.dir + +fi + if test "${ac_cv_path_install+set}" = set; then + INSTALL=$ac_cv_path_install + else + # As a last resort, use the slow shell script. Don't cache a + # value for INSTALL within a source directory, because that will + # break other packages using the cache if that directory is + # removed, or if the value is a relative name. + INSTALL=$ac_install_sh + fi +fi +{ $as_echo "$as_me:$LINENO: result: $INSTALL" >&5 +$as_echo "$INSTALL" >&6; } + +# Use test -z because SunOS4 sh mishandles braces in ${var-val}. +# It thinks the first close brace ends the variable substitution. +test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' + +test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' + +test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' + +# Extract the first word of "ar", so it can be a program name with args. +set dummy ar; ac_word=$2 +{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_prog_AR+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test -n "$AR"; then + ac_cv_prog_AR="$AR" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_AR="" + $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done +IFS=$as_save_IFS + + test -z "$ac_cv_prog_AR" && ac_cv_prog_AR="ar" +fi +fi +AR=$ac_cv_prog_AR +if test -n "$AR"; then + { $as_echo "$as_me:$LINENO: result: $AR" >&5 +$as_echo "$AR" >&6; } +else + { $as_echo "$as_me:$LINENO: result: no" >&5 +$as_echo "no" >&6; } +fi + + +test -n "$ARFLAGS" || ARFLAGS="cr" +if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. +set dummy ${ac_tool_prefix}ranlib; ac_word=$2 +{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_prog_RANLIB+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test -n "$RANLIB"; then + ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" + $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done +IFS=$as_save_IFS + +fi +fi +RANLIB=$ac_cv_prog_RANLIB +if test -n "$RANLIB"; then + { $as_echo "$as_me:$LINENO: result: $RANLIB" >&5 +$as_echo "$RANLIB" >&6; } +else + { $as_echo "$as_me:$LINENO: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_RANLIB"; then + ac_ct_RANLIB=$RANLIB + # Extract the first word of "ranlib", so it can be a program name with args. +set dummy ranlib; ac_word=$2 +{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_RANLIB"; then + ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_ac_ct_RANLIB="ranlib" + $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done +IFS=$as_save_IFS + +fi +fi +ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB +if test -n "$ac_ct_RANLIB"; then + { $as_echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5 +$as_echo "$ac_ct_RANLIB" >&6; } +else + { $as_echo "$as_me:$LINENO: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_RANLIB" = x; then + RANLIB=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + RANLIB=$ac_ct_RANLIB + fi +else + RANLIB="$ac_cv_prog_RANLIB" +fi + +for ac_prog in 'bison -y' byacc +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_prog_YACC+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test -n "$YACC"; then + ac_cv_prog_YACC="$YACC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_YACC="$ac_prog" + $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done +IFS=$as_save_IFS + +fi +fi +YACC=$ac_cv_prog_YACC +if test -n "$YACC"; then + { $as_echo "$as_me:$LINENO: result: $YACC" >&5 +$as_echo "$YACC" >&6; } +else + { $as_echo "$as_me:$LINENO: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$YACC" && break +done +test -n "$YACC" || YACC="yacc" + +{ $as_echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5 +$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } +set x ${MAKE-make} +ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` +if { as_var=ac_cv_prog_make_${ac_make}_set; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.make <<\_ACEOF +SHELL = /bin/sh +all: + @echo '@@@%%%=$(MAKE)=@@@%%%' +_ACEOF +# GNU make sometimes prints "make[1]: Entering...", which would confuse us. +case `${MAKE-make} -f conftest.make 2>/dev/null` in + *@@@%%%=?*=@@@%%%*) + eval ac_cv_prog_make_${ac_make}_set=yes;; + *) + eval ac_cv_prog_make_${ac_make}_set=no;; +esac +rm -f conftest.make +fi +if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then + { $as_echo "$as_me:$LINENO: result: yes" >&5 +$as_echo "yes" >&6; } + SET_MAKE= +else + { $as_echo "$as_me:$LINENO: result: no" >&5 +$as_echo "no" >&6; } + SET_MAKE="MAKE=${MAKE-make}" +fi + + +case "$host_os" in +opennt*|interix*) MAKE_SHELL="$INTERIX_ROOT/bin/sh" ;; +*) MAKE_SHELL=/bin/sh ;; +esac + + +if test x$SIZE = x; then + if test x$ac_tool_prefix = x; then + SIZE=size + else + SIZE=${ac_tool_prefix}size + save_IFS=$IFS ; IFS=: + size_found=0 + for dir in $PATH; do + if test -x $dir/$SIZE ; then + size_found=1 + break + fi + done + if test $size_found -eq 0; then + SIZE=: + fi + IFS=$save_IFS + fi +fi + + +cat >>confdefs.h <<\_ACEOF +@%:@define _GNU_SOURCE 1 +_ACEOF + + +{ $as_echo "$as_me:$LINENO: checking for an ANSI C-conforming const" >&5 +$as_echo_n "checking for an ANSI C-conforming const... " >&6; } +if test "${ac_cv_c_const+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +int +main () +{ +/* FIXME: Include the comments suggested by Paul. */ +#ifndef __cplusplus + /* Ultrix mips cc rejects this. */ + typedef int charset[2]; + const charset cs; + /* SunOS 4.1.1 cc rejects this. */ + char const *const *pcpcc; + char **ppc; + /* NEC SVR4.0.2 mips cc rejects this. */ + struct point {int x, y;}; + static struct point const zero = {0,0}; + /* AIX XL C 1.02.0.0 rejects this. + It does not let you subtract one const X* pointer from another in + an arm of an if-expression whose if-part is not a constant + expression */ + const char *g = "string"; + pcpcc = &g + (g ? g-g : 0); + /* HPUX 7.0 cc rejects these. */ + ++pcpcc; + ppc = (char**) pcpcc; + pcpcc = (char const *const *) ppc; + { /* SCO 3.2v4 cc rejects this. */ + char *t; + char const *s = 0 ? (char *) 0 : (char const *) 0; + + *t++ = 0; + if (s) return 0; + } + { /* Someone thinks the Sun supposedly-ANSI compiler will reject this. */ + int x[] = {25, 17}; + const int *foo = &x[0]; + ++foo; + } + { /* Sun SC1.0 ANSI compiler rejects this -- but not the above. */ + typedef const int *iptr; + iptr p = 0; + ++p; + } + { /* AIX XL C 1.02.0.0 rejects this saying + "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */ + struct s { int j; const int *ap[3]; }; + struct s *b; b->j = 5; + } + { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */ + const int foo = 10; + if (!foo) return 0; + } + return !cs[0] && !zero.x; +#endif + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_c_const=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_c_const=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_c_const" >&5 +$as_echo "$ac_cv_c_const" >&6; } +if test $ac_cv_c_const = no; then + +cat >>confdefs.h <<\_ACEOF +@%:@define const /**/ +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for inline" >&5 +$as_echo_n "checking for inline... " >&6; } +if test "${ac_cv_c_inline+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_c_inline=no +for ac_kw in inline __inline__ __inline; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#ifndef __cplusplus +typedef int foo_t; +static $ac_kw foo_t static_foo () {return 0; } +$ac_kw foo_t foo () {return 0; } +#endif + +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_c_inline=$ac_kw +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + test "$ac_cv_c_inline" != no && break +done + +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_c_inline" >&5 +$as_echo "$ac_cv_c_inline" >&6; } + + +case $ac_cv_c_inline in + inline | yes) ;; + *) + case $ac_cv_c_inline in + no) ac_val=;; + *) ac_val=$ac_cv_c_inline;; + esac + cat >>confdefs.h <<_ACEOF +#ifndef __cplusplus +#define inline $ac_val +#endif +_ACEOF + ;; +esac + + + { $as_echo "$as_me:$LINENO: checking whether byte ordering is bigendian" >&5 +$as_echo_n "checking whether byte ordering is bigendian... " >&6; } +if test "${ac_cv_c_bigendian+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_c_bigendian=unknown + # See if we're dealing with a universal compiler. + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#ifndef __APPLE_CC__ + not a universal capable compiler + #endif + typedef int dummy; + +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + + # Check for potential -arch flags. It is not universal unless + # there are some -arch flags. Note that *ppc* also matches + # ppc64. This check is also rather less than ideal. + case "${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS}" in #( + *-arch*ppc*|*-arch*i386*|*-arch*x86_64*) ac_cv_c_bigendian=universal;; + esac +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + if test $ac_cv_c_bigendian = unknown; then + # See if sys/param.h defines the BYTE_ORDER macro. + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + #include + +int +main () +{ +#if ! (defined BYTE_ORDER && defined BIG_ENDIAN \ + && defined LITTLE_ENDIAN && BYTE_ORDER && BIG_ENDIAN \ + && LITTLE_ENDIAN) + bogus endian macros + #endif + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + # It does; now see whether it defined to BIG_ENDIAN or not. + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + #include + +int +main () +{ +#if BYTE_ORDER != BIG_ENDIAN + not big endian + #endif + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_c_bigendian=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_c_bigendian=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + fi + if test $ac_cv_c_bigendian = unknown; then + # See if defines _LITTLE_ENDIAN or _BIG_ENDIAN (e.g., Solaris). + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + +int +main () +{ +#if ! (defined _LITTLE_ENDIAN || defined _BIG_ENDIAN) + bogus endian macros + #endif + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + # It does; now see whether it defined to _BIG_ENDIAN or not. + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + +int +main () +{ +#ifndef _BIG_ENDIAN + not big endian + #endif + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_c_bigendian=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_c_bigendian=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + fi + if test $ac_cv_c_bigendian = unknown; then + # Compile a test program. + if test "$cross_compiling" = yes; then + # Try to guess by grepping values from an object file. + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +short int ascii_mm[] = + { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 }; + short int ascii_ii[] = + { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 }; + int use_ascii (int i) { + return ascii_mm[i] + ascii_ii[i]; + } + short int ebcdic_ii[] = + { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 }; + short int ebcdic_mm[] = + { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 }; + int use_ebcdic (int i) { + return ebcdic_mm[i] + ebcdic_ii[i]; + } + extern int foo; + +int +main () +{ +return use_ascii (foo) == use_ebcdic (foo); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + if grep BIGenDianSyS conftest.$ac_objext >/dev/null; then + ac_cv_c_bigendian=yes + fi + if grep LiTTleEnDian conftest.$ac_objext >/dev/null ; then + if test "$ac_cv_c_bigendian" = unknown; then + ac_cv_c_bigendian=no + else + # finding both strings is unlikely to happen, but who knows? + ac_cv_c_bigendian=unknown + fi + fi +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ + + /* Are we little or big endian? From Harbison&Steele. */ + union + { + long int l; + char c[sizeof (long int)]; + } u; + u.l = 1; + return u.c[sizeof (long int) - 1] == 1; + + ; + return 0; +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_c_bigendian=no +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +ac_cv_c_bigendian=yes +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + + fi +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_c_bigendian" >&5 +$as_echo "$ac_cv_c_bigendian" >&6; } + case $ac_cv_c_bigendian in #( + yes) + cat >>confdefs.h <<\_ACEOF +@%:@define WORDS_BIGENDIAN 1 +_ACEOF +;; #( + no) + ;; #( + universal) + +cat >>confdefs.h <<\_ACEOF +@%:@define AC_APPLE_UNIVERSAL_BUILD 1 +_ACEOF + + ;; #( + *) + { { $as_echo "$as_me:$LINENO: error: unknown endianness + presetting ac_cv_c_bigendian=no (or yes) will help" >&5 +$as_echo "$as_me: error: unknown endianness + presetting ac_cv_c_bigendian=no (or yes) will help" >&2;} + { (exit 1); exit 1; }; } ;; + esac + +{ $as_echo "$as_me:$LINENO: checking for preprocessor stringizing operator" >&5 +$as_echo_n "checking for preprocessor stringizing operator... " >&6; } +if test "${ac_cv_c_stringize+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +@%:@define x(y) #y + +char *s = x(teststring); +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "@%:@teststring" >/dev/null 2>&1; then + ac_cv_c_stringize=no +else + ac_cv_c_stringize=yes +fi +rm -f conftest* + +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_c_stringize" >&5 +$as_echo "$ac_cv_c_stringize" >&6; } +if test $ac_cv_c_stringize = yes; then + +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_STRINGIZE 1 +_ACEOF + +fi + + + + { $as_echo "$as_me:$LINENO: checking for long double with more range or precision than double" >&5 +$as_echo_n "checking for long double with more range or precision than double... " >&6; } +if test "${ac_cv_type_long_double_wider+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + long double const a[] = + { + 0.0L, DBL_MIN, DBL_MAX, DBL_EPSILON, + LDBL_MIN, LDBL_MAX, LDBL_EPSILON + }; + long double + f (long double x) + { + return ((x + (unsigned long int) 10) * (-1 / x) + a[0] + + (x ? f (x) : 'c')); + } + +int +main () +{ +static int test_array @<:@1 - 2 * !((0 < ((DBL_MAX_EXP < LDBL_MAX_EXP) + + (DBL_MANT_DIG < LDBL_MANT_DIG) + - (LDBL_MAX_EXP < DBL_MAX_EXP) + - (LDBL_MANT_DIG < DBL_MANT_DIG))) + && (int) LDBL_EPSILON == 0 + )@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_type_long_double_wider=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_long_double_wider=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_long_double_wider" >&5 +$as_echo "$ac_cv_type_long_double_wider" >&6; } + if test $ac_cv_type_long_double_wider = yes; then + +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_LONG_DOUBLE_WIDER 1 +_ACEOF + + fi + + ac_cv_c_long_double=$ac_cv_type_long_double_wider + if test $ac_cv_c_long_double = yes; then + +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_LONG_DOUBLE 1 +_ACEOF + + fi + +{ $as_echo "$as_me:$LINENO: checking for function prototypes" >&5 +$as_echo_n "checking for function prototypes... " >&6; } +if test "$ac_cv_prog_cc_c89" != no; then + { $as_echo "$as_me:$LINENO: result: yes" >&5 +$as_echo "yes" >&6; } + +cat >>confdefs.h <<\_ACEOF +@%:@define PROTOTYPES 1 +_ACEOF + + +cat >>confdefs.h <<\_ACEOF +@%:@define __PROTOTYPES 1 +_ACEOF + +else + { $as_echo "$as_me:$LINENO: result: no" >&5 +$as_echo "no" >&6; } +fi + + +{ $as_echo "$as_me:$LINENO: checking whether char is unsigned" >&5 +$as_echo_n "checking whether char is unsigned... " >&6; } +if test "${ac_cv_c_char_unsigned+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((char) -1) < 0)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_c_char_unsigned=no +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_c_char_unsigned=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_c_char_unsigned" >&5 +$as_echo "$ac_cv_c_char_unsigned" >&6; } +if test $ac_cv_c_char_unsigned = yes && test "$GCC" != yes; then + cat >>confdefs.h <<\_ACEOF +@%:@define __CHAR_UNSIGNED__ 1 +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for working volatile" >&5 +$as_echo_n "checking for working volatile... " >&6; } +if test "${ac_cv_c_volatile+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +int +main () +{ + +volatile int x; +int * volatile y = (int *) 0; +return !x && !y; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_c_volatile=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_c_volatile=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_c_volatile" >&5 +$as_echo "$ac_cv_c_volatile" >&6; } +if test $ac_cv_c_volatile = no; then + +cat >>confdefs.h <<\_ACEOF +@%:@define volatile /**/ +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for C/C++ restrict keyword" >&5 +$as_echo_n "checking for C/C++ restrict keyword... " >&6; } +if test "${ac_cv_c_restrict+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_c_restrict=no + # The order here caters to the fact that C++ does not require restrict. + for ac_kw in __restrict __restrict__ _Restrict restrict; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +typedef int * int_ptr; + int foo (int_ptr $ac_kw ip) { + return ip[0]; + } +int +main () +{ +int s[1]; + int * $ac_kw t = s; + t[0] = 0; + return foo(t) + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_c_restrict=$ac_kw +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + test "$ac_cv_c_restrict" != no && break + done + +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_c_restrict" >&5 +$as_echo "$ac_cv_c_restrict" >&6; } + + + case $ac_cv_c_restrict in + restrict) ;; + no) cat >>confdefs.h <<\_ACEOF +@%:@define restrict /**/ +_ACEOF + ;; + *) cat >>confdefs.h <<_ACEOF +@%:@define restrict $ac_cv_c_restrict +_ACEOF + ;; + esac + + + + MKINSTALLDIRS= + if test -n "$ac_aux_dir"; then + case "$ac_aux_dir" in + /*) MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs" ;; + *) MKINSTALLDIRS="\$(top_builddir)/$ac_aux_dir/mkinstalldirs" ;; + esac + fi + if test -z "$MKINSTALLDIRS"; then + MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs" + fi + + + + { $as_echo "$as_me:$LINENO: checking whether NLS is requested" >&5 +$as_echo_n "checking whether NLS is requested... " >&6; } + @%:@ Check whether --enable-nls was given. +if test "${enable_nls+set}" = set; then + enableval=$enable_nls; USE_NLS=$enableval +else + USE_NLS=yes +fi + + { $as_echo "$as_me:$LINENO: result: $USE_NLS" >&5 +$as_echo "$USE_NLS" >&6; } + + + + + + +# Prepare PATH_SEPARATOR. +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + echo "#! /bin/sh" >conf$$.sh + echo "exit 0" >>conf$$.sh + chmod +x conf$$.sh + if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then + PATH_SEPARATOR=';' + else + PATH_SEPARATOR=: + fi + rm -f conf$$.sh +fi + +# Find out how to test for executable files. Don't use a zero-byte file, +# as systems may use methods other than mode bits to determine executability. +cat >conf$$.file <<_ASEOF +#! /bin/sh +exit 0 +_ASEOF +chmod +x conf$$.file +if test -x conf$$.file >/dev/null 2>&1; then + ac_executable_p="test -x" +else + ac_executable_p="test -f" +fi +rm -f conf$$.file + +# Extract the first word of "msgfmt", so it can be a program name with args. +set dummy msgfmt; ac_word=$2 +{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_path_MSGFMT+set}" = set; then + $as_echo_n "(cached) " >&6 +else + case "$MSGFMT" in + [\\/]* | ?:[\\/]*) + ac_cv_path_MSGFMT="$MSGFMT" # Let the user override the test with a path. + ;; + *) + ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR + for ac_dir in $PATH; do + IFS="$ac_save_IFS" + test -z "$ac_dir" && ac_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then + if $ac_dir/$ac_word --statistics /dev/null >/dev/null 2>&1 && + (if $ac_dir/$ac_word --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then + ac_cv_path_MSGFMT="$ac_dir/$ac_word$ac_exec_ext" + break 2 + fi + fi + done + done + IFS="$ac_save_IFS" + test -z "$ac_cv_path_MSGFMT" && ac_cv_path_MSGFMT=":" + ;; +esac +fi +MSGFMT="$ac_cv_path_MSGFMT" +if test "$MSGFMT" != ":"; then + { $as_echo "$as_me:$LINENO: result: $MSGFMT" >&5 +$as_echo "$MSGFMT" >&6; } +else + { $as_echo "$as_me:$LINENO: result: no" >&5 +$as_echo "no" >&6; } +fi + + # Extract the first word of "gmsgfmt", so it can be a program name with args. +set dummy gmsgfmt; ac_word=$2 +{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_path_GMSGFMT+set}" = set; then + $as_echo_n "(cached) " >&6 +else + case $GMSGFMT in + [\\/]* | ?:[\\/]*) + ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_path_GMSGFMT="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done +IFS=$as_save_IFS + + test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT" + ;; +esac +fi +GMSGFMT=$ac_cv_path_GMSGFMT +if test -n "$GMSGFMT"; then + { $as_echo "$as_me:$LINENO: result: $GMSGFMT" >&5 +$as_echo "$GMSGFMT" >&6; } +else + { $as_echo "$as_me:$LINENO: result: no" >&5 +$as_echo "no" >&6; } +fi + + + + +# Prepare PATH_SEPARATOR. +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + echo "#! /bin/sh" >conf$$.sh + echo "exit 0" >>conf$$.sh + chmod +x conf$$.sh + if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then + PATH_SEPARATOR=';' + else + PATH_SEPARATOR=: + fi + rm -f conf$$.sh +fi + +# Find out how to test for executable files. Don't use a zero-byte file, +# as systems may use methods other than mode bits to determine executability. +cat >conf$$.file <<_ASEOF +#! /bin/sh +exit 0 +_ASEOF +chmod +x conf$$.file +if test -x conf$$.file >/dev/null 2>&1; then + ac_executable_p="test -x" +else + ac_executable_p="test -f" +fi +rm -f conf$$.file + +# Extract the first word of "xgettext", so it can be a program name with args. +set dummy xgettext; ac_word=$2 +{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_path_XGETTEXT+set}" = set; then + $as_echo_n "(cached) " >&6 +else + case "$XGETTEXT" in + [\\/]* | ?:[\\/]*) + ac_cv_path_XGETTEXT="$XGETTEXT" # Let the user override the test with a path. + ;; + *) + ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR + for ac_dir in $PATH; do + IFS="$ac_save_IFS" + test -z "$ac_dir" && ac_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then + if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >/dev/null 2>&1 && + (if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then + ac_cv_path_XGETTEXT="$ac_dir/$ac_word$ac_exec_ext" + break 2 + fi + fi + done + done + IFS="$ac_save_IFS" + test -z "$ac_cv_path_XGETTEXT" && ac_cv_path_XGETTEXT=":" + ;; +esac +fi +XGETTEXT="$ac_cv_path_XGETTEXT" +if test "$XGETTEXT" != ":"; then + { $as_echo "$as_me:$LINENO: result: $XGETTEXT" >&5 +$as_echo "$XGETTEXT" >&6; } +else + { $as_echo "$as_me:$LINENO: result: no" >&5 +$as_echo "no" >&6; } +fi + + rm -f messages.po + + +# Prepare PATH_SEPARATOR. +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + echo "#! /bin/sh" >conf$$.sh + echo "exit 0" >>conf$$.sh + chmod +x conf$$.sh + if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then + PATH_SEPARATOR=';' + else + PATH_SEPARATOR=: + fi + rm -f conf$$.sh +fi + +# Find out how to test for executable files. Don't use a zero-byte file, +# as systems may use methods other than mode bits to determine executability. +cat >conf$$.file <<_ASEOF +#! /bin/sh +exit 0 +_ASEOF +chmod +x conf$$.file +if test -x conf$$.file >/dev/null 2>&1; then + ac_executable_p="test -x" +else + ac_executable_p="test -f" +fi +rm -f conf$$.file + +# Extract the first word of "msgmerge", so it can be a program name with args. +set dummy msgmerge; ac_word=$2 +{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_path_MSGMERGE+set}" = set; then + $as_echo_n "(cached) " >&6 +else + case "$MSGMERGE" in + [\\/]* | ?:[\\/]*) + ac_cv_path_MSGMERGE="$MSGMERGE" # Let the user override the test with a path. + ;; + *) + ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR + for ac_dir in $PATH; do + IFS="$ac_save_IFS" + test -z "$ac_dir" && ac_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then + if $ac_dir/$ac_word --update -q /dev/null /dev/null >/dev/null 2>&1; then + ac_cv_path_MSGMERGE="$ac_dir/$ac_word$ac_exec_ext" + break 2 + fi + fi + done + done + IFS="$ac_save_IFS" + test -z "$ac_cv_path_MSGMERGE" && ac_cv_path_MSGMERGE=":" + ;; +esac +fi +MSGMERGE="$ac_cv_path_MSGMERGE" +if test "$MSGMERGE" != ":"; then + { $as_echo "$as_me:$LINENO: result: $MSGMERGE" >&5 +$as_echo "$MSGMERGE" >&6; } +else + { $as_echo "$as_me:$LINENO: result: no" >&5 +$as_echo "no" >&6; } +fi + + + if test "$GMSGFMT" != ":"; then + if $GMSGFMT --statistics /dev/null >/dev/null 2>&1 && + (if $GMSGFMT --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then + : ; + else + GMSGFMT=`echo "$GMSGFMT" | sed -e 's,^.*/,,'` + { $as_echo "$as_me:$LINENO: result: found $GMSGFMT program is not GNU msgfmt; ignore it" >&5 +$as_echo "found $GMSGFMT program is not GNU msgfmt; ignore it" >&6; } + GMSGFMT=":" + fi + fi + + if test "$XGETTEXT" != ":"; then + if $XGETTEXT --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >/dev/null 2>&1 && + (if $XGETTEXT --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then + : ; + else + { $as_echo "$as_me:$LINENO: result: found xgettext program is not GNU xgettext; ignore it" >&5 +$as_echo "found xgettext program is not GNU xgettext; ignore it" >&6; } + XGETTEXT=":" + fi + rm -f messages.po + fi + + ac_config_commands="$ac_config_commands default-1" + + +{ $as_echo "$as_me:$LINENO: checking for off_t" >&5 +$as_echo_n "checking for off_t... " >&6; } +if test "${ac_cv_type_off_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type_off_t=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (off_t)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((off_t))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_off_t=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_off_t" >&5 +$as_echo "$ac_cv_type_off_t" >&6; } +if test "x$ac_cv_type_off_t" = x""yes; then + : +else + +cat >>confdefs.h <<_ACEOF +@%:@define off_t long int +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for size_t" >&5 +$as_echo_n "checking for size_t... " >&6; } +if test "${ac_cv_type_size_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type_size_t=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (size_t)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((size_t))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_size_t=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_size_t" >&5 +$as_echo "$ac_cv_type_size_t" >&6; } +if test "x$ac_cv_type_size_t" = x""yes; then + : +else + +cat >>confdefs.h <<_ACEOF +@%:@define size_t unsigned int +_ACEOF + +fi + +# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works +# for constant arguments. Useless! +{ $as_echo "$as_me:$LINENO: checking for working alloca.h" >&5 +$as_echo_n "checking for working alloca.h... " >&6; } +if test "${ac_cv_working_alloca_h+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +@%:@include +int +main () +{ +char *p = (char *) alloca (2 * sizeof (int)); + if (p) return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_working_alloca_h=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_working_alloca_h=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_working_alloca_h" >&5 +$as_echo "$ac_cv_working_alloca_h" >&6; } +if test $ac_cv_working_alloca_h = yes; then + +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_ALLOCA_H 1 +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for alloca" >&5 +$as_echo_n "checking for alloca... " >&6; } +if test "${ac_cv_func_alloca_works+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#ifdef __GNUC__ +# define alloca __builtin_alloca +#else +# ifdef _MSC_VER +# include +# define alloca _alloca +# else +# ifdef HAVE_ALLOCA_H +# include +# else +# ifdef _AIX + #pragma alloca +# else +# ifndef alloca /* predefined by HP cc +Olibcalls */ +char *alloca (); +# endif +# endif +# endif +# endif +#endif + +int +main () +{ +char *p = (char *) alloca (1); + if (p) return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_func_alloca_works=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_func_alloca_works=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_alloca_works" >&5 +$as_echo "$ac_cv_func_alloca_works" >&6; } + +if test $ac_cv_func_alloca_works = yes; then + +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_ALLOCA 1 +_ACEOF + +else + # The SVR3 libPW and SVR4 libucb both contain incompatible functions +# that cause trouble. Some versions do not even contain alloca or +# contain a buggy version. If you still want to use their alloca, +# use ar to extract alloca.o from them instead of compiling alloca.c. + +ALLOCA=\${LIBOBJDIR}alloca.$ac_objext + +cat >>confdefs.h <<\_ACEOF +@%:@define C_ALLOCA 1 +_ACEOF + + +{ $as_echo "$as_me:$LINENO: checking whether \`alloca.c' needs Cray hooks" >&5 +$as_echo_n "checking whether \`alloca.c' needs Cray hooks... " >&6; } +if test "${ac_cv_os_cray+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#if defined CRAY && ! defined CRAY2 +webecray +#else +wenotbecray +#endif + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "webecray" >/dev/null 2>&1; then + ac_cv_os_cray=yes +else + ac_cv_os_cray=no +fi +rm -f conftest* + +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_os_cray" >&5 +$as_echo "$ac_cv_os_cray" >&6; } +if test $ac_cv_os_cray = yes; then + for ac_func in _getb67 GETB67 getb67; do + as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 +$as_echo_n "checking for $ac_func... " >&6; } +if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define $ac_func to an innocuous variant, in case declares $ac_func. + For example, HP-UX 11i declares gettimeofday. */ +#define $ac_func innocuous_$ac_func + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $ac_func (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $ac_func + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $ac_func (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$ac_func || defined __stub___$ac_func +choke me +#endif + +int +main () +{ +return $ac_func (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + eval "$as_ac_var=yes" +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_ac_var=no" +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +ac_res=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +as_val=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + +cat >>confdefs.h <<_ACEOF +@%:@define CRAY_STACKSEG_END $ac_func +_ACEOF + + break +fi + + done +fi + +{ $as_echo "$as_me:$LINENO: checking stack direction for C alloca" >&5 +$as_echo_n "checking stack direction for C alloca... " >&6; } +if test "${ac_cv_c_stack_direction+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + ac_cv_c_stack_direction=0 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +find_stack_direction () +{ + static char *addr = 0; + auto char dummy; + if (addr == 0) + { + addr = &dummy; + return find_stack_direction (); + } + else + return (&dummy > addr) ? 1 : -1; +} + +int +main () +{ + return find_stack_direction () < 0; +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_c_stack_direction=1 +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +ac_cv_c_stack_direction=-1 +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_c_stack_direction" >&5 +$as_echo "$ac_cv_c_stack_direction" >&6; } + +cat >>confdefs.h <<_ACEOF +@%:@define STACK_DIRECTION $ac_cv_c_stack_direction +_ACEOF + + +fi + + + +for ac_header in stdlib.h unistd.h +do +as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 +$as_echo_n "checking for $ac_header... " >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +fi +ac_res=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +else + # Is the header compilable? +{ $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5 +$as_echo_n "checking $ac_header usability... " >&6; } +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +@%:@include <$ac_header> +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_header_compiler=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_compiler=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 +$as_echo "$ac_header_compiler" >&6; } + +# Is the header present? +{ $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5 +$as_echo_n "checking $ac_header presence... " >&6; } +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +@%:@include <$ac_header> +_ACEOF +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then + ac_header_preproc=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_preproc=no +fi + +rm -f conftest.err conftest.$ac_ext +{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 +$as_echo "$ac_header_preproc" >&6; } + +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in + yes:no: ) + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 +$as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} + ac_header_preproc=yes + ;; + no:yes:* ) + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 +$as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 +$as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 +$as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 +$as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 +$as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 +$as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} + ( cat <<\_ASBOX +@%:@@%:@ ------------------------------- @%:@@%:@ +@%:@@%:@ Report this to bug-bash@gnu.org @%:@@%:@ +@%:@@%:@ ------------------------------- @%:@@%:@ +_ASBOX + ) | sed "s/^/$as_me: WARNING: /" >&2 + ;; +esac +{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 +$as_echo_n "checking for $ac_header... " >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + eval "$as_ac_Header=\$ac_header_preproc" +fi +ac_res=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + +fi +as_val=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF + +fi + +done + + +for ac_func in getpagesize +do +as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 +$as_echo_n "checking for $ac_func... " >&6; } +if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define $ac_func to an innocuous variant, in case declares $ac_func. + For example, HP-UX 11i declares gettimeofday. */ +#define $ac_func innocuous_$ac_func + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $ac_func (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $ac_func + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $ac_func (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$ac_func || defined __stub___$ac_func +choke me +#endif + +int +main () +{ +return $ac_func (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + eval "$as_ac_var=yes" +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_ac_var=no" +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +ac_res=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +as_val=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF + +fi +done + +{ $as_echo "$as_me:$LINENO: checking for working mmap" >&5 +$as_echo_n "checking for working mmap... " >&6; } +if test "${ac_cv_func_mmap_fixed_mapped+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + ac_cv_func_mmap_fixed_mapped=no +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +/* malloc might have been renamed as rpl_malloc. */ +#undef malloc + +/* Thanks to Mike Haertel and Jim Avera for this test. + Here is a matrix of mmap possibilities: + mmap private not fixed + mmap private fixed at somewhere currently unmapped + mmap private fixed at somewhere already mapped + mmap shared not fixed + mmap shared fixed at somewhere currently unmapped + mmap shared fixed at somewhere already mapped + For private mappings, we should verify that changes cannot be read() + back from the file, nor mmap's back from the file at a different + address. (There have been systems where private was not correctly + implemented like the infamous i386 svr4.0, and systems where the + VM page cache was not coherent with the file system buffer cache + like early versions of FreeBSD and possibly contemporary NetBSD.) + For shared mappings, we should conversely verify that changes get + propagated back to all the places they're supposed to be. + + Grep wants private fixed already mapped. + The main things grep needs to know about mmap are: + * does it exist and is it safe to write into the mmap'd area + * how to use it (BSD variants) */ + +#include +#include + +#if !defined STDC_HEADERS && !defined HAVE_STDLIB_H +char *malloc (); +#endif + +/* This mess was copied from the GNU getpagesize.h. */ +#ifndef HAVE_GETPAGESIZE +/* Assume that all systems that can run configure have sys/param.h. */ +# ifndef HAVE_SYS_PARAM_H +# define HAVE_SYS_PARAM_H 1 +# endif + +# ifdef _SC_PAGESIZE +# define getpagesize() sysconf(_SC_PAGESIZE) +# else /* no _SC_PAGESIZE */ +# ifdef HAVE_SYS_PARAM_H +# include +# ifdef EXEC_PAGESIZE +# define getpagesize() EXEC_PAGESIZE +# else /* no EXEC_PAGESIZE */ +# ifdef NBPG +# define getpagesize() NBPG * CLSIZE +# ifndef CLSIZE +# define CLSIZE 1 +# endif /* no CLSIZE */ +# else /* no NBPG */ +# ifdef NBPC +# define getpagesize() NBPC +# else /* no NBPC */ +# ifdef PAGESIZE +# define getpagesize() PAGESIZE +# endif /* PAGESIZE */ +# endif /* no NBPC */ +# endif /* no NBPG */ +# endif /* no EXEC_PAGESIZE */ +# else /* no HAVE_SYS_PARAM_H */ +# define getpagesize() 8192 /* punt totally */ +# endif /* no HAVE_SYS_PARAM_H */ +# endif /* no _SC_PAGESIZE */ + +#endif /* no HAVE_GETPAGESIZE */ + +int +main () +{ + char *data, *data2, *data3; + int i, pagesize; + int fd; + + pagesize = getpagesize (); + + /* First, make a file with some known garbage in it. */ + data = (char *) malloc (pagesize); + if (!data) + return 1; + for (i = 0; i < pagesize; ++i) + *(data + i) = rand (); + umask (0); + fd = creat ("conftest.mmap", 0600); + if (fd < 0) + return 1; + if (write (fd, data, pagesize) != pagesize) + return 1; + close (fd); + + /* Next, try to mmap the file at a fixed address which already has + something else allocated at it. If we can, also make sure that + we see the same garbage. */ + fd = open ("conftest.mmap", O_RDWR); + if (fd < 0) + return 1; + data2 = (char *) malloc (2 * pagesize); + if (!data2) + return 1; + data2 += (pagesize - ((long int) data2 & (pagesize - 1))) & (pagesize - 1); + if (data2 != mmap (data2, pagesize, PROT_READ | PROT_WRITE, + MAP_PRIVATE | MAP_FIXED, fd, 0L)) + return 1; + for (i = 0; i < pagesize; ++i) + if (*(data + i) != *(data2 + i)) + return 1; + + /* Finally, make sure that changes to the mapped area do not + percolate back to the file as seen by read(). (This is a bug on + some variants of i386 svr4.0.) */ + for (i = 0; i < pagesize; ++i) + *(data2 + i) = *(data2 + i) + 1; + data3 = (char *) malloc (pagesize); + if (!data3) + return 1; + if (read (fd, data3, pagesize) != pagesize) + return 1; + for (i = 0; i < pagesize; ++i) + if (*(data + i) != *(data3 + i)) + return 1; + close (fd); + return 0; +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_func_mmap_fixed_mapped=yes +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +ac_cv_func_mmap_fixed_mapped=no +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_mmap_fixed_mapped" >&5 +$as_echo "$ac_cv_func_mmap_fixed_mapped" >&6; } +if test $ac_cv_func_mmap_fixed_mapped = yes; then + +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_MMAP 1 +_ACEOF + +fi +rm -f conftest.mmap + + + { $as_echo "$as_me:$LINENO: checking whether we are using the GNU C Library 2.1 or newer" >&5 +$as_echo_n "checking whether we are using the GNU C Library 2.1 or newer... " >&6; } +if test "${ac_cv_gnu_library_2_1+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#ifdef __GNU_LIBRARY__ + #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) || (__GLIBC__ > 2) + Lucky GNU user + #endif +#endif + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "Lucky GNU user" >/dev/null 2>&1; then + ac_cv_gnu_library_2_1=yes +else + ac_cv_gnu_library_2_1=no +fi +rm -f conftest* + + + +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_gnu_library_2_1" >&5 +$as_echo "$ac_cv_gnu_library_2_1" >&6; } + + GLIBC21="$ac_cv_gnu_library_2_1" + + + + + { $as_echo "$as_me:$LINENO: checking whether integer division by zero raises SIGFPE" >&5 +$as_echo_n "checking whether integer division by zero raises SIGFPE... " >&6; } +if test "${gt_cv_int_divbyzero_sigfpe+set}" = set; then + $as_echo_n "(cached) " >&6 +else + + if test "$cross_compiling" = yes; then + + # Guess based on the CPU. + case "$host_cpu" in + alpha* | i3456786 | m68k | s390*) + gt_cv_int_divbyzero_sigfpe="guessing yes";; + *) + gt_cv_int_divbyzero_sigfpe="guessing no";; + esac + +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#include + +static void +#ifdef __cplusplus +sigfpe_handler (int sig) +#else +sigfpe_handler (sig) int sig; +#endif +{ + /* Exit with code 0 if SIGFPE, with code 1 if any other signal. */ + exit (sig != SIGFPE); +} + +int x = 1; +int y = 0; +int z; +int nan; + +int main () +{ + signal (SIGFPE, sigfpe_handler); +/* IRIX and AIX (when "xlc -qcheck" is used) yield signal SIGTRAP. */ +#if (defined (__sgi) || defined (_AIX)) && defined (SIGTRAP) + signal (SIGTRAP, sigfpe_handler); +#endif +/* Linux/SPARC yields signal SIGILL. */ +#if defined (__sparc__) && defined (__linux__) + signal (SIGILL, sigfpe_handler); +#endif + + z = x / y; + nan = y / y; + exit (1); +} + +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + gt_cv_int_divbyzero_sigfpe=yes +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +gt_cv_int_divbyzero_sigfpe=no +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + + +fi +{ $as_echo "$as_me:$LINENO: result: $gt_cv_int_divbyzero_sigfpe" >&5 +$as_echo "$gt_cv_int_divbyzero_sigfpe" >&6; } + case "$gt_cv_int_divbyzero_sigfpe" in + *yes) value=1;; + *) value=0;; + esac + +cat >>confdefs.h <<_ACEOF +@%:@define INTDIV0_RAISES_SIGFPE $value +_ACEOF + + + + { $as_echo "$as_me:$LINENO: checking for inttypes.h" >&5 +$as_echo_n "checking for inttypes.h... " >&6; } +if test "${jm_ac_cv_header_inttypes_h+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#include +int +main () +{ +uintmax_t i = (uintmax_t) -1; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + jm_ac_cv_header_inttypes_h=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + jm_ac_cv_header_inttypes_h=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $jm_ac_cv_header_inttypes_h" >&5 +$as_echo "$jm_ac_cv_header_inttypes_h" >&6; } + if test $jm_ac_cv_header_inttypes_h = yes; then + +cat >>confdefs.h <<_ACEOF +@%:@define HAVE_INTTYPES_H_WITH_UINTMAX 1 +_ACEOF + + fi + + + { $as_echo "$as_me:$LINENO: checking for stdint.h" >&5 +$as_echo_n "checking for stdint.h... " >&6; } +if test "${jm_ac_cv_header_stdint_h+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#include +int +main () +{ +uintmax_t i = (uintmax_t) -1; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + jm_ac_cv_header_stdint_h=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + jm_ac_cv_header_stdint_h=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $jm_ac_cv_header_stdint_h" >&5 +$as_echo "$jm_ac_cv_header_stdint_h" >&6; } + if test $jm_ac_cv_header_stdint_h = yes; then + +cat >>confdefs.h <<_ACEOF +@%:@define HAVE_STDINT_H_WITH_UINTMAX 1 +_ACEOF + + fi + + + { $as_echo "$as_me:$LINENO: checking for unsigned long long" >&5 +$as_echo_n "checking for unsigned long long... " >&6; } +if test "${ac_cv_type_unsigned_long_long+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +unsigned long long ull = 1; int i = 63; +int +main () +{ +unsigned long long ullmax = (unsigned long long) -1; + return ull << i | ull >> i | ullmax / ull | ullmax % ull; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_type_unsigned_long_long=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_unsigned_long_long=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_unsigned_long_long" >&5 +$as_echo "$ac_cv_type_unsigned_long_long" >&6; } + if test $ac_cv_type_unsigned_long_long = yes; then + +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_UNSIGNED_LONG_LONG 1 +_ACEOF + + fi + + + + + if test $jm_ac_cv_header_inttypes_h = no && test $jm_ac_cv_header_stdint_h = no; then + + test $ac_cv_type_unsigned_long_long = yes \ + && ac_type='unsigned long long' \ + || ac_type='unsigned long' + +cat >>confdefs.h <<_ACEOF +@%:@define uintmax_t $ac_type +_ACEOF + + else + +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_UINTMAX_T 1 +_ACEOF + + fi + + + { $as_echo "$as_me:$LINENO: checking for inttypes.h" >&5 +$as_echo_n "checking for inttypes.h... " >&6; } +if test "${gt_cv_header_inttypes_h+set}" = set; then + $as_echo_n "(cached) " >&6 +else + + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#include +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + gt_cv_header_inttypes_h=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + gt_cv_header_inttypes_h=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +fi +{ $as_echo "$as_me:$LINENO: result: $gt_cv_header_inttypes_h" >&5 +$as_echo "$gt_cv_header_inttypes_h" >&6; } + if test $gt_cv_header_inttypes_h = yes; then + +cat >>confdefs.h <<_ACEOF +@%:@define HAVE_INTTYPES_H 1 +_ACEOF + + fi + + + + if test $gt_cv_header_inttypes_h = yes; then + { $as_echo "$as_me:$LINENO: checking whether the inttypes.h PRIxNN macros are broken" >&5 +$as_echo_n "checking whether the inttypes.h PRIxNN macros are broken... " >&6; } +if test "${gt_cv_inttypes_pri_broken+set}" = set; then + $as_echo_n "(cached) " >&6 +else + + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#ifdef PRId32 +char *p = PRId32; +#endif + +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + gt_cv_inttypes_pri_broken=no +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + gt_cv_inttypes_pri_broken=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +fi +{ $as_echo "$as_me:$LINENO: result: $gt_cv_inttypes_pri_broken" >&5 +$as_echo "$gt_cv_inttypes_pri_broken" >&6; } + fi + if test "$gt_cv_inttypes_pri_broken" = yes; then + +cat >>confdefs.h <<_ACEOF +@%:@define PRI_MACROS_BROKEN 1 +_ACEOF + + fi + + + if test "X$prefix" = "XNONE"; then + acl_final_prefix="$ac_default_prefix" + else + acl_final_prefix="$prefix" + fi + if test "X$exec_prefix" = "XNONE"; then + acl_final_exec_prefix='${prefix}' + else + acl_final_exec_prefix="$exec_prefix" + fi + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + eval acl_final_exec_prefix=\"$acl_final_exec_prefix\" + prefix="$acl_save_prefix" + + +@%:@ Check whether --with-gnu-ld was given. +if test "${with_gnu_ld+set}" = set; then + withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes +else + with_gnu_ld=no +fi + +# Prepare PATH_SEPARATOR. +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + echo "#! /bin/sh" >conf$$.sh + echo "exit 0" >>conf$$.sh + chmod +x conf$$.sh + if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then + PATH_SEPARATOR=';' + else + PATH_SEPARATOR=: + fi + rm -f conf$$.sh +fi +ac_prog=ld +if test "$GCC" = yes; then + # Check if gcc -print-prog-name=ld gives a path. + { $as_echo "$as_me:$LINENO: checking for ld used by GCC" >&5 +$as_echo_n "checking for ld used by GCC... " >&6; } + case $host in + *-*-mingw*) + # gcc leaves a trailing carriage return which upsets mingw + ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; + *) + ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; + esac + case $ac_prog in + # Accept absolute paths. + [\\/]* | [A-Za-z]:[\\/]*) + re_direlt='/[^/][^/]*/\.\./' + # Canonicalize the path of ld + ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` + while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do + ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` + done + test -z "$LD" && LD="$ac_prog" + ;; + "") + # If it fails, then pretend we aren't using GCC. + ac_prog=ld + ;; + *) + # If it is relative, then search for the first ld in PATH. + with_gnu_ld=unknown + ;; + esac +elif test "$with_gnu_ld" = yes; then + { $as_echo "$as_me:$LINENO: checking for GNU ld" >&5 +$as_echo_n "checking for GNU ld... " >&6; } +else + { $as_echo "$as_me:$LINENO: checking for non-GNU ld" >&5 +$as_echo_n "checking for non-GNU ld... " >&6; } +fi +if test "${acl_cv_path_LD+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test -z "$LD"; then + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then + acl_cv_path_LD="$ac_dir/$ac_prog" + # Check to see if the program is GNU ld. I'd rather use --version, + # but apparently some GNU ld's only accept -v. + # Break only if it was the GNU/non-GNU ld that we prefer. + if "$acl_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then + test "$with_gnu_ld" != no && break + else + test "$with_gnu_ld" != yes && break + fi + fi + done + IFS="$ac_save_ifs" +else + acl_cv_path_LD="$LD" # Let the user override the test with a path. +fi +fi + +LD="$acl_cv_path_LD" +if test -n "$LD"; then + { $as_echo "$as_me:$LINENO: result: $LD" >&5 +$as_echo "$LD" >&6; } +else + { $as_echo "$as_me:$LINENO: result: no" >&5 +$as_echo "no" >&6; } +fi +test -z "$LD" && { { $as_echo "$as_me:$LINENO: error: no acceptable ld found in \$PATH" >&5 +$as_echo "$as_me: error: no acceptable ld found in \$PATH" >&2;} + { (exit 1); exit 1; }; } +{ $as_echo "$as_me:$LINENO: checking if the linker ($LD) is GNU ld" >&5 +$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; } +if test "${acl_cv_prog_gnu_ld+set}" = set; then + $as_echo_n "(cached) " >&6 +else + # I'd rather use --version here, but apparently some GNU ld's only accept -v. +if $LD -v 2>&1 &5; then + acl_cv_prog_gnu_ld=yes +else + acl_cv_prog_gnu_ld=no +fi +fi +{ $as_echo "$as_me:$LINENO: result: $acl_cv_prog_gnu_ld" >&5 +$as_echo "$acl_cv_prog_gnu_ld" >&6; } +with_gnu_ld=$acl_cv_prog_gnu_ld + + + + { $as_echo "$as_me:$LINENO: checking for shared library run path origin" >&5 +$as_echo_n "checking for shared library run path origin... " >&6; } +if test "${acl_cv_rpath+set}" = set; then + $as_echo_n "(cached) " >&6 +else + + CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \ + ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh + . ./conftest.sh + rm -f ./conftest.sh + acl_cv_rpath=done + +fi +{ $as_echo "$as_me:$LINENO: result: $acl_cv_rpath" >&5 +$as_echo "$acl_cv_rpath" >&6; } + wl="$acl_cv_wl" + libext="$acl_cv_libext" + shlibext="$acl_cv_shlibext" + hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec" + hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator" + hardcode_direct="$acl_cv_hardcode_direct" + hardcode_minus_L="$acl_cv_hardcode_minus_L" + @%:@ Check whether --enable-rpath was given. +if test "${enable_rpath+set}" = set; then + enableval=$enable_rpath; : +else + enable_rpath=yes +fi + + + + + + + + + use_additional=yes + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + + eval additional_includedir=\"$includedir\" + eval additional_libdir=\"$libdir\" + + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + +@%:@ Check whether --with-libiconv-prefix was given. +if test "${with_libiconv_prefix+set}" = set; then + withval=$with_libiconv_prefix; + if test "X$withval" = "Xno"; then + use_additional=no + else + if test "X$withval" = "X"; then + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + + eval additional_includedir=\"$includedir\" + eval additional_libdir=\"$libdir\" + + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + else + additional_includedir="$withval/include" + additional_libdir="$withval/lib" + fi + fi + +fi + + LIBICONV= + LTLIBICONV= + INCICONV= + rpathdirs= + ltrpathdirs= + names_already_handled= + names_next_round='iconv ' + while test -n "$names_next_round"; do + names_this_round="$names_next_round" + names_next_round= + for name in $names_this_round; do + already_handled= + for n in $names_already_handled; do + if test "$n" = "$name"; then + already_handled=yes + break + fi + done + if test -z "$already_handled"; then + names_already_handled="$names_already_handled $name" + uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'` + eval value=\"\$HAVE_LIB$uppername\" + if test -n "$value"; then + if test "$value" = yes; then + eval value=\"\$LIB$uppername\" + test -z "$value" || LIBICONV="${LIBICONV}${LIBICONV:+ }$value" + eval value=\"\$LTLIB$uppername\" + test -z "$value" || LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }$value" + else + : + fi + else + found_dir= + found_la= + found_so= + found_a= + if test $use_additional = yes; then + if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then + found_dir="$additional_libdir" + found_so="$additional_libdir/lib$name.$shlibext" + if test -f "$additional_libdir/lib$name.la"; then + found_la="$additional_libdir/lib$name.la" + fi + else + if test -f "$additional_libdir/lib$name.$libext"; then + found_dir="$additional_libdir" + found_a="$additional_libdir/lib$name.$libext" + if test -f "$additional_libdir/lib$name.la"; then + found_la="$additional_libdir/lib$name.la" + fi + fi + fi + fi + if test "X$found_dir" = "X"; then + for x in $LDFLAGS $LTLIBICONV; do + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + case "$x" in + -L*) + dir=`echo "X$x" | sed -e 's/^X-L//'` + if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then + found_dir="$dir" + found_so="$dir/lib$name.$shlibext" + if test -f "$dir/lib$name.la"; then + found_la="$dir/lib$name.la" + fi + else + if test -f "$dir/lib$name.$libext"; then + found_dir="$dir" + found_a="$dir/lib$name.$libext" + if test -f "$dir/lib$name.la"; then + found_la="$dir/lib$name.la" + fi + fi + fi + ;; + esac + if test "X$found_dir" != "X"; then + break + fi + done + fi + if test "X$found_dir" != "X"; then + LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-L$found_dir -l$name" + if test "X$found_so" != "X"; then + if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then + LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" + else + haveit= + for x in $ltrpathdirs; do + if test "X$x" = "X$found_dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + ltrpathdirs="$ltrpathdirs $found_dir" + fi + if test "$hardcode_direct" = yes; then + LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" + else + if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then + LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" + haveit= + for x in $rpathdirs; do + if test "X$x" = "X$found_dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + rpathdirs="$rpathdirs $found_dir" + fi + else + haveit= + for x in $LDFLAGS $LIBICONV; do + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + if test "X$x" = "X-L$found_dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + LIBICONV="${LIBICONV}${LIBICONV:+ }-L$found_dir" + fi + if test "$hardcode_minus_L" != no; then + LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" + else + LIBICONV="${LIBICONV}${LIBICONV:+ }-l$name" + fi + fi + fi + fi + else + if test "X$found_a" != "X"; then + LIBICONV="${LIBICONV}${LIBICONV:+ }$found_a" + else + LIBICONV="${LIBICONV}${LIBICONV:+ }-L$found_dir -l$name" + fi + fi + additional_includedir= + case "$found_dir" in + */lib | */lib/) + basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'` + additional_includedir="$basedir/include" + ;; + esac + if test "X$additional_includedir" != "X"; then + if test "X$additional_includedir" != "X/usr/include"; then + haveit= + if test "X$additional_includedir" = "X/usr/local/include"; then + if test -n "$GCC"; then + case $host_os in + linux*) haveit=yes;; + esac + fi + fi + if test -z "$haveit"; then + for x in $CPPFLAGS $INCICONV; do + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + if test "X$x" = "X-I$additional_includedir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + if test -d "$additional_includedir"; then + INCICONV="${INCICONV}${INCICONV:+ }-I$additional_includedir" + fi + fi + fi + fi + fi + if test -n "$found_la"; then + save_libdir="$libdir" + case "$found_la" in + */* | *\\*) . "$found_la" ;; + *) . "./$found_la" ;; + esac + libdir="$save_libdir" + for dep in $dependency_libs; do + case "$dep" in + -L*) + additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` + if test "X$additional_libdir" != "X/usr/lib"; then + haveit= + if test "X$additional_libdir" = "X/usr/local/lib"; then + if test -n "$GCC"; then + case $host_os in + linux*) haveit=yes;; + esac + fi + fi + if test -z "$haveit"; then + haveit= + for x in $LDFLAGS $LIBICONV; do + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + if test "X$x" = "X-L$additional_libdir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + if test -d "$additional_libdir"; then + LIBICONV="${LIBICONV}${LIBICONV:+ }-L$additional_libdir" + fi + fi + haveit= + for x in $LDFLAGS $LTLIBICONV; do + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + if test "X$x" = "X-L$additional_libdir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + if test -d "$additional_libdir"; then + LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-L$additional_libdir" + fi + fi + fi + fi + ;; + -R*) + dir=`echo "X$dep" | sed -e 's/^X-R//'` + if test "$enable_rpath" != no; then + haveit= + for x in $rpathdirs; do + if test "X$x" = "X$dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + rpathdirs="$rpathdirs $dir" + fi + haveit= + for x in $ltrpathdirs; do + if test "X$x" = "X$dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + ltrpathdirs="$ltrpathdirs $dir" + fi + fi + ;; + -l*) + names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'` + ;; + *.la) + names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` + ;; + *) + LIBICONV="${LIBICONV}${LIBICONV:+ }$dep" + LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }$dep" + ;; + esac + done + fi + else + LIBICONV="${LIBICONV}${LIBICONV:+ }-l$name" + LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-l$name" + fi + fi + fi + done + done + if test "X$rpathdirs" != "X"; then + if test -n "$hardcode_libdir_separator"; then + alldirs= + for found_dir in $rpathdirs; do + alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir" + done + acl_save_libdir="$libdir" + libdir="$alldirs" + eval flag=\"$hardcode_libdir_flag_spec\" + libdir="$acl_save_libdir" + LIBICONV="${LIBICONV}${LIBICONV:+ }$flag" + else + for found_dir in $rpathdirs; do + acl_save_libdir="$libdir" + libdir="$found_dir" + eval flag=\"$hardcode_libdir_flag_spec\" + libdir="$acl_save_libdir" + LIBICONV="${LIBICONV}${LIBICONV:+ }$flag" + done + fi + fi + if test "X$ltrpathdirs" != "X"; then + for found_dir in $ltrpathdirs; do + LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-R$found_dir" + done + fi + + + + + + + + + + + + + + +for ac_header in argz.h limits.h locale.h nl_types.h malloc.h stddef.h \ +stdlib.h string.h unistd.h sys/param.h +do +as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 +$as_echo_n "checking for $ac_header... " >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +fi +ac_res=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +else + # Is the header compilable? +{ $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5 +$as_echo_n "checking $ac_header usability... " >&6; } +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +@%:@include <$ac_header> +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_header_compiler=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_compiler=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 +$as_echo "$ac_header_compiler" >&6; } + +# Is the header present? +{ $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5 +$as_echo_n "checking $ac_header presence... " >&6; } +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +@%:@include <$ac_header> +_ACEOF +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then + ac_header_preproc=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_preproc=no +fi + +rm -f conftest.err conftest.$ac_ext +{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 +$as_echo "$ac_header_preproc" >&6; } + +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in + yes:no: ) + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 +$as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} + ac_header_preproc=yes + ;; + no:yes:* ) + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 +$as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 +$as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 +$as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 +$as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 +$as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 +$as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} + ( cat <<\_ASBOX +@%:@@%:@ ------------------------------- @%:@@%:@ +@%:@@%:@ Report this to bug-bash@gnu.org @%:@@%:@ +@%:@@%:@ ------------------------------- @%:@@%:@ +_ASBOX + ) | sed "s/^/$as_me: WARNING: /" >&2 + ;; +esac +{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 +$as_echo_n "checking for $ac_header... " >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + eval "$as_ac_Header=\$ac_header_preproc" +fi +ac_res=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + +fi +as_val=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF + +fi + +done + + + + + + + + + + + + + + + + + + + + + + + + +for ac_func in feof_unlocked fgets_unlocked getc_unlocked getcwd getegid \ +geteuid getgid getuid mempcpy munmap putenv setenv setlocale localeconv stpcpy \ +strcasecmp strdup strtoul tsearch __argz_count __argz_stringify __argz_next \ +__fsetlocking +do +as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 +$as_echo_n "checking for $ac_func... " >&6; } +if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define $ac_func to an innocuous variant, in case declares $ac_func. + For example, HP-UX 11i declares gettimeofday. */ +#define $ac_func innocuous_$ac_func + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $ac_func (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $ac_func + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $ac_func (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$ac_func || defined __stub___$ac_func +choke me +#endif + +int +main () +{ +return $ac_func (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + eval "$as_ac_var=yes" +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_ac_var=no" +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +ac_res=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +as_val=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF + +fi +done + + + + + + + + am_save_CPPFLAGS="$CPPFLAGS" + + for element in $INCICONV; do + haveit= + for x in $CPPFLAGS; do + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + if test "X$x" = "X$element"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" + fi + done + + + { $as_echo "$as_me:$LINENO: checking for iconv" >&5 +$as_echo_n "checking for iconv... " >&6; } +if test "${am_cv_func_iconv+set}" = set; then + $as_echo_n "(cached) " >&6 +else + + am_cv_func_iconv="no, consider installing GNU libiconv" + am_cv_lib_iconv=no + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#include +int +main () +{ +iconv_t cd = iconv_open("",""); + iconv(cd,NULL,NULL,NULL,NULL); + iconv_close(cd); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + am_cv_func_iconv=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext + if test "$am_cv_func_iconv" != yes; then + am_save_LIBS="$LIBS" + LIBS="$LIBS $LIBICONV" + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#include +int +main () +{ +iconv_t cd = iconv_open("",""); + iconv(cd,NULL,NULL,NULL,NULL); + iconv_close(cd); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + am_cv_lib_iconv=yes + am_cv_func_iconv=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext + LIBS="$am_save_LIBS" + fi + +fi +{ $as_echo "$as_me:$LINENO: result: $am_cv_func_iconv" >&5 +$as_echo "$am_cv_func_iconv" >&6; } + if test "$am_cv_func_iconv" = yes; then + +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_ICONV 1 +_ACEOF + + fi + if test "$am_cv_lib_iconv" = yes; then + { $as_echo "$as_me:$LINENO: checking how to link with libiconv" >&5 +$as_echo_n "checking how to link with libiconv... " >&6; } + { $as_echo "$as_me:$LINENO: result: $LIBICONV" >&5 +$as_echo "$LIBICONV" >&6; } + else + CPPFLAGS="$am_save_CPPFLAGS" + LIBICONV= + LTLIBICONV= + fi + + + + if test "$am_cv_func_iconv" = yes; then + { $as_echo "$as_me:$LINENO: checking for iconv declaration" >&5 +$as_echo_n "checking for iconv declaration... " >&6; } + if test "${am_cv_proto_iconv+set}" = set; then + $as_echo_n "(cached) " >&6 +else + + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#include +extern +#ifdef __cplusplus +"C" +#endif +#if defined(__STDC__) || defined(__cplusplus) +size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft); +#else +size_t iconv(); +#endif + +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + am_cv_proto_iconv_arg1="" +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + am_cv_proto_iconv_arg1="const" +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + am_cv_proto_iconv="extern size_t iconv (iconv_t cd, $am_cv_proto_iconv_arg1 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);" +fi + + am_cv_proto_iconv=`echo "$am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'` + { $as_echo "$as_me:$LINENO: result: ${ac_t:- + }$am_cv_proto_iconv" >&5 +$as_echo "${ac_t:- + }$am_cv_proto_iconv" >&6; } + +cat >>confdefs.h <<_ACEOF +@%:@define ICONV_CONST $am_cv_proto_iconv_arg1 +_ACEOF + + fi + + + { $as_echo "$as_me:$LINENO: checking for nl_langinfo and CODESET" >&5 +$as_echo_n "checking for nl_langinfo and CODESET... " >&6; } +if test "${am_cv_langinfo_codeset+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +int +main () +{ +char* cs = nl_langinfo(CODESET); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + am_cv_langinfo_codeset=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + am_cv_langinfo_codeset=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext + +fi +{ $as_echo "$as_me:$LINENO: result: $am_cv_langinfo_codeset" >&5 +$as_echo "$am_cv_langinfo_codeset" >&6; } + if test $am_cv_langinfo_codeset = yes; then + +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_LANGINFO_CODESET 1 +_ACEOF + + fi + + if test $ac_cv_header_locale_h = yes; then + + { $as_echo "$as_me:$LINENO: checking for LC_MESSAGES" >&5 +$as_echo_n "checking for LC_MESSAGES... " >&6; } +if test "${am_cv_val_LC_MESSAGES+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +int +main () +{ +return LC_MESSAGES + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + am_cv_val_LC_MESSAGES=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + am_cv_val_LC_MESSAGES=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $am_cv_val_LC_MESSAGES" >&5 +$as_echo "$am_cv_val_LC_MESSAGES" >&6; } + if test $am_cv_val_LC_MESSAGES = yes; then + +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_LC_MESSAGES 1 +_ACEOF + + fi + + fi + + for ac_prog in bison +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_prog_INTLBISON+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test -n "$INTLBISON"; then + ac_cv_prog_INTLBISON="$INTLBISON" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_INTLBISON="$ac_prog" + $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done +IFS=$as_save_IFS + +fi +fi +INTLBISON=$ac_cv_prog_INTLBISON +if test -n "$INTLBISON"; then + { $as_echo "$as_me:$LINENO: result: $INTLBISON" >&5 +$as_echo "$INTLBISON" >&6; } +else + { $as_echo "$as_me:$LINENO: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$INTLBISON" && break +done + + if test -z "$INTLBISON"; then + ac_verc_fail=yes + else + { $as_echo "$as_me:$LINENO: checking version of bison" >&5 +$as_echo_n "checking version of bison... " >&6; } + ac_prog_version=`$INTLBISON --version 2>&1 | sed -n 's/^.*GNU Bison.* \([0-9]*\.[0-9.]*\).*$/\1/p'` + case $ac_prog_version in + '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; + 1.2[6-9]* | 1.[3-9][0-9]* | [2-9].*) + ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; + *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; + esac + { $as_echo "$as_me:$LINENO: result: $ac_prog_version" >&5 +$as_echo "$ac_prog_version" >&6; } + fi + if test $ac_verc_fail = yes; then + INTLBISON=: + fi + + + + + + + + + + + + + + + + + { $as_echo "$as_me:$LINENO: checking whether NLS is requested" >&5 +$as_echo_n "checking whether NLS is requested... " >&6; } + @%:@ Check whether --enable-nls was given. +if test "${enable_nls+set}" = set; then + enableval=$enable_nls; USE_NLS=$enableval +else + USE_NLS=yes +fi + + { $as_echo "$as_me:$LINENO: result: $USE_NLS" >&5 +$as_echo "$USE_NLS" >&6; } + + + + + BUILD_INCLUDED_LIBINTL=no + USE_INCLUDED_LIBINTL=no + + LIBINTL= + LTLIBINTL= + POSUB= + + if test "$USE_NLS" = "yes"; then + gt_use_preinstalled_gnugettext=no + + { $as_echo "$as_me:$LINENO: checking whether included gettext is requested" >&5 +$as_echo_n "checking whether included gettext is requested... " >&6; } + +@%:@ Check whether --with-included-gettext was given. +if test "${with_included_gettext+set}" = set; then + withval=$with_included_gettext; nls_cv_force_use_gnu_gettext=$withval +else + nls_cv_force_use_gnu_gettext=no +fi + + { $as_echo "$as_me:$LINENO: result: $nls_cv_force_use_gnu_gettext" >&5 +$as_echo "$nls_cv_force_use_gnu_gettext" >&6; } + + nls_cv_use_gnu_gettext="$nls_cv_force_use_gnu_gettext" + if test "$nls_cv_force_use_gnu_gettext" != "yes"; then + + + + + + + { $as_echo "$as_me:$LINENO: checking for GNU gettext in libc" >&5 +$as_echo_n "checking for GNU gettext in libc... " >&6; } +if test "${gt_cv_func_gnugettext2_libc+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +extern int _nl_msg_cat_cntr; +extern int *_nl_domain_bindings; +int +main () +{ +bindtextdomain ("", ""); +return (int) gettext ("") + (int) ngettext ("", "", 0) + _nl_msg_cat_cntr + *_nl_domain_bindings + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + gt_cv_func_gnugettext2_libc=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + gt_cv_func_gnugettext2_libc=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $gt_cv_func_gnugettext2_libc" >&5 +$as_echo "$gt_cv_func_gnugettext2_libc" >&6; } + + if test "$gt_cv_func_gnugettext2_libc" != "yes"; then + + + + use_additional=yes + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + + eval additional_includedir=\"$includedir\" + eval additional_libdir=\"$libdir\" + + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + +@%:@ Check whether --with-libintl-prefix was given. +if test "${with_libintl_prefix+set}" = set; then + withval=$with_libintl_prefix; + if test "X$withval" = "Xno"; then + use_additional=no + else + if test "X$withval" = "X"; then + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + + eval additional_includedir=\"$includedir\" + eval additional_libdir=\"$libdir\" + + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + else + additional_includedir="$withval/include" + additional_libdir="$withval/lib" + fi + fi + +fi + + LIBINTL= + LTLIBINTL= + INCINTL= + rpathdirs= + ltrpathdirs= + names_already_handled= + names_next_round='intl ' + while test -n "$names_next_round"; do + names_this_round="$names_next_round" + names_next_round= + for name in $names_this_round; do + already_handled= + for n in $names_already_handled; do + if test "$n" = "$name"; then + already_handled=yes + break + fi + done + if test -z "$already_handled"; then + names_already_handled="$names_already_handled $name" + uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'` + eval value=\"\$HAVE_LIB$uppername\" + if test -n "$value"; then + if test "$value" = yes; then + eval value=\"\$LIB$uppername\" + test -z "$value" || LIBINTL="${LIBINTL}${LIBINTL:+ }$value" + eval value=\"\$LTLIB$uppername\" + test -z "$value" || LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }$value" + else + : + fi + else + found_dir= + found_la= + found_so= + found_a= + if test $use_additional = yes; then + if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then + found_dir="$additional_libdir" + found_so="$additional_libdir/lib$name.$shlibext" + if test -f "$additional_libdir/lib$name.la"; then + found_la="$additional_libdir/lib$name.la" + fi + else + if test -f "$additional_libdir/lib$name.$libext"; then + found_dir="$additional_libdir" + found_a="$additional_libdir/lib$name.$libext" + if test -f "$additional_libdir/lib$name.la"; then + found_la="$additional_libdir/lib$name.la" + fi + fi + fi + fi + if test "X$found_dir" = "X"; then + for x in $LDFLAGS $LTLIBINTL; do + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + case "$x" in + -L*) + dir=`echo "X$x" | sed -e 's/^X-L//'` + if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then + found_dir="$dir" + found_so="$dir/lib$name.$shlibext" + if test -f "$dir/lib$name.la"; then + found_la="$dir/lib$name.la" + fi + else + if test -f "$dir/lib$name.$libext"; then + found_dir="$dir" + found_a="$dir/lib$name.$libext" + if test -f "$dir/lib$name.la"; then + found_la="$dir/lib$name.la" + fi + fi + fi + ;; + esac + if test "X$found_dir" != "X"; then + break + fi + done + fi + if test "X$found_dir" != "X"; then + LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-L$found_dir -l$name" + if test "X$found_so" != "X"; then + if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then + LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so" + else + haveit= + for x in $ltrpathdirs; do + if test "X$x" = "X$found_dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + ltrpathdirs="$ltrpathdirs $found_dir" + fi + if test "$hardcode_direct" = yes; then + LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so" + else + if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then + LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so" + haveit= + for x in $rpathdirs; do + if test "X$x" = "X$found_dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + rpathdirs="$rpathdirs $found_dir" + fi + else + haveit= + for x in $LDFLAGS $LIBINTL; do + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + if test "X$x" = "X-L$found_dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + LIBINTL="${LIBINTL}${LIBINTL:+ }-L$found_dir" + fi + if test "$hardcode_minus_L" != no; then + LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so" + else + LIBINTL="${LIBINTL}${LIBINTL:+ }-l$name" + fi + fi + fi + fi + else + if test "X$found_a" != "X"; then + LIBINTL="${LIBINTL}${LIBINTL:+ }$found_a" + else + LIBINTL="${LIBINTL}${LIBINTL:+ }-L$found_dir -l$name" + fi + fi + additional_includedir= + case "$found_dir" in + */lib | */lib/) + basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'` + additional_includedir="$basedir/include" + ;; + esac + if test "X$additional_includedir" != "X"; then + if test "X$additional_includedir" != "X/usr/include"; then + haveit= + if test "X$additional_includedir" = "X/usr/local/include"; then + if test -n "$GCC"; then + case $host_os in + linux*) haveit=yes;; + esac + fi + fi + if test -z "$haveit"; then + for x in $CPPFLAGS $INCINTL; do + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + if test "X$x" = "X-I$additional_includedir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + if test -d "$additional_includedir"; then + INCINTL="${INCINTL}${INCINTL:+ }-I$additional_includedir" + fi + fi + fi + fi + fi + if test -n "$found_la"; then + save_libdir="$libdir" + case "$found_la" in + */* | *\\*) . "$found_la" ;; + *) . "./$found_la" ;; + esac + libdir="$save_libdir" + for dep in $dependency_libs; do + case "$dep" in + -L*) + additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` + if test "X$additional_libdir" != "X/usr/lib"; then + haveit= + if test "X$additional_libdir" = "X/usr/local/lib"; then + if test -n "$GCC"; then + case $host_os in + linux*) haveit=yes;; + esac + fi + fi + if test -z "$haveit"; then + haveit= + for x in $LDFLAGS $LIBINTL; do + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + if test "X$x" = "X-L$additional_libdir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + if test -d "$additional_libdir"; then + LIBINTL="${LIBINTL}${LIBINTL:+ }-L$additional_libdir" + fi + fi + haveit= + for x in $LDFLAGS $LTLIBINTL; do + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + if test "X$x" = "X-L$additional_libdir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + if test -d "$additional_libdir"; then + LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-L$additional_libdir" + fi + fi + fi + fi + ;; + -R*) + dir=`echo "X$dep" | sed -e 's/^X-R//'` + if test "$enable_rpath" != no; then + haveit= + for x in $rpathdirs; do + if test "X$x" = "X$dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + rpathdirs="$rpathdirs $dir" + fi + haveit= + for x in $ltrpathdirs; do + if test "X$x" = "X$dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + ltrpathdirs="$ltrpathdirs $dir" + fi + fi + ;; + -l*) + names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'` + ;; + *.la) + names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` + ;; + *) + LIBINTL="${LIBINTL}${LIBINTL:+ }$dep" + LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }$dep" + ;; + esac + done + fi + else + LIBINTL="${LIBINTL}${LIBINTL:+ }-l$name" + LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-l$name" + fi + fi + fi + done + done + if test "X$rpathdirs" != "X"; then + if test -n "$hardcode_libdir_separator"; then + alldirs= + for found_dir in $rpathdirs; do + alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir" + done + acl_save_libdir="$libdir" + libdir="$alldirs" + eval flag=\"$hardcode_libdir_flag_spec\" + libdir="$acl_save_libdir" + LIBINTL="${LIBINTL}${LIBINTL:+ }$flag" + else + for found_dir in $rpathdirs; do + acl_save_libdir="$libdir" + libdir="$found_dir" + eval flag=\"$hardcode_libdir_flag_spec\" + libdir="$acl_save_libdir" + LIBINTL="${LIBINTL}${LIBINTL:+ }$flag" + done + fi + fi + if test "X$ltrpathdirs" != "X"; then + for found_dir in $ltrpathdirs; do + LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-R$found_dir" + done + fi + + { $as_echo "$as_me:$LINENO: checking for GNU gettext in libintl" >&5 +$as_echo_n "checking for GNU gettext in libintl... " >&6; } +if test "${gt_cv_func_gnugettext2_libintl+set}" = set; then + $as_echo_n "(cached) " >&6 +else + gt_save_CPPFLAGS="$CPPFLAGS" + CPPFLAGS="$CPPFLAGS $INCINTL" + gt_save_LIBS="$LIBS" + LIBS="$LIBS $LIBINTL" + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +extern int _nl_msg_cat_cntr; +extern +#ifdef __cplusplus +"C" +#endif +const char *_nl_expand_alias (); +int +main () +{ +bindtextdomain ("", ""); +return (int) gettext ("") + (int) ngettext ("", "", 0) + _nl_msg_cat_cntr + *_nl_expand_alias (0) + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + gt_cv_func_gnugettext2_libintl=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + gt_cv_func_gnugettext2_libintl=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext + if test "$gt_cv_func_gnugettext2_libintl" != yes && test -n "$LIBICONV"; then + LIBS="$LIBS $LIBICONV" + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +extern int _nl_msg_cat_cntr; +extern +#ifdef __cplusplus +"C" +#endif +const char *_nl_expand_alias (); +int +main () +{ +bindtextdomain ("", ""); +return (int) gettext ("") + (int) ngettext ("", "", 0) + _nl_msg_cat_cntr + *_nl_expand_alias (0) + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + LIBINTL="$LIBINTL $LIBICONV" + LTLIBINTL="$LTLIBINTL $LTLIBICONV" + gt_cv_func_gnugettext2_libintl=yes + +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext + fi + CPPFLAGS="$gt_save_CPPFLAGS" + LIBS="$gt_save_LIBS" +fi +{ $as_echo "$as_me:$LINENO: result: $gt_cv_func_gnugettext2_libintl" >&5 +$as_echo "$gt_cv_func_gnugettext2_libintl" >&6; } + fi + + if test "$gt_cv_func_gnugettext2_libc" = "yes" \ + || { test "$gt_cv_func_gnugettext2_libintl" = "yes" \ + && test "$PACKAGE" != gettext-runtime \ + && test "$PACKAGE" != gettext-tools; }; then + gt_use_preinstalled_gnugettext=yes + else + LIBINTL= + LTLIBINTL= + INCINTL= + fi + + + if test "$gt_use_preinstalled_gnugettext" != "yes"; then + nls_cv_use_gnu_gettext=yes + fi + fi + + if test "$nls_cv_use_gnu_gettext" = "yes"; then + BUILD_INCLUDED_LIBINTL=yes + USE_INCLUDED_LIBINTL=yes + LIBINTL="lib/intl/libintl.a $LIBICONV" + LTLIBINTL="lib/intl/libintl.a $LTLIBICONV" + LIBS=`echo " $LIBS " | sed -e 's/ -lintl / /' -e 's/^ //' -e 's/ $//'` + fi + + if test "$gt_use_preinstalled_gnugettext" = "yes" \ + || test "$nls_cv_use_gnu_gettext" = "yes"; then + CATOBJEXT=.gmo + fi + + + if test "$gt_use_preinstalled_gnugettext" = "yes" \ + || test "$nls_cv_use_gnu_gettext" = "yes"; then + +cat >>confdefs.h <<\_ACEOF +@%:@define ENABLE_NLS 1 +_ACEOF + + else + USE_NLS=no + fi + fi + + { $as_echo "$as_me:$LINENO: checking whether to use NLS" >&5 +$as_echo_n "checking whether to use NLS... " >&6; } + { $as_echo "$as_me:$LINENO: result: $USE_NLS" >&5 +$as_echo "$USE_NLS" >&6; } + if test "$USE_NLS" = "yes"; then + { $as_echo "$as_me:$LINENO: checking where the gettext function comes from" >&5 +$as_echo_n "checking where the gettext function comes from... " >&6; } + if test "$gt_use_preinstalled_gnugettext" = "yes"; then + if test "$gt_cv_func_gnugettext2_libintl" = "yes"; then + gt_source="external libintl" + else + gt_source="libc" + fi + else + gt_source="included intl directory" + fi + { $as_echo "$as_me:$LINENO: result: $gt_source" >&5 +$as_echo "$gt_source" >&6; } + fi + + if test "$USE_NLS" = "yes"; then + + if test "$gt_use_preinstalled_gnugettext" = "yes"; then + if test "$gt_cv_func_gnugettext2_libintl" = "yes"; then + { $as_echo "$as_me:$LINENO: checking how to link with libintl" >&5 +$as_echo_n "checking how to link with libintl... " >&6; } + { $as_echo "$as_me:$LINENO: result: $LIBINTL" >&5 +$as_echo "$LIBINTL" >&6; } + + for element in $INCINTL; do + haveit= + for x in $CPPFLAGS; do + + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + + if test "X$x" = "X$element"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" + fi + done + + fi + + +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_GETTEXT 1 +_ACEOF + + +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_DCGETTEXT 1 +_ACEOF + + fi + + POSUB=po + fi + + + if test "$PACKAGE" = gettext-runtime || test "$PACKAGE" = gettext-tools; then + BUILD_INCLUDED_LIBINTL=yes + fi + + + + + + nls_cv_header_intl= + nls_cv_header_libgt= + + DATADIRNAME=share + + + INSTOBJEXT=.mo + + + GENCAT=gencat + + + if test "$USE_INCLUDED_LIBINTL" = yes; then + INTLOBJS="\$(GETTOBJS)" + fi + + + INTL_LIBTOOL_SUFFIX_PREFIX= + + + + INTLLIBS="$LIBINTL" + + + + + + + + + + + + +ac_header_dirent=no +for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h; do + as_ac_Header=`$as_echo "ac_cv_header_dirent_$ac_hdr" | $as_tr_sh` +{ $as_echo "$as_me:$LINENO: checking for $ac_hdr that defines DIR" >&5 +$as_echo_n "checking for $ac_hdr that defines DIR... " >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#include <$ac_hdr> + +int +main () +{ +if ((DIR *) 0) +return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + eval "$as_ac_Header=yes" +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_ac_Header=no" +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +ac_res=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +as_val=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_hdr" | $as_tr_cpp` 1 +_ACEOF + +ac_header_dirent=$ac_hdr; break +fi + +done +# Two versions of opendir et al. are in -ldir and -lx on SCO Xenix. +if test $ac_header_dirent = dirent.h; then + { $as_echo "$as_me:$LINENO: checking for library containing opendir" >&5 +$as_echo_n "checking for library containing opendir... " >&6; } +if test "${ac_cv_search_opendir+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_func_search_save_LIBS=$LIBS +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char opendir (); +int +main () +{ +return opendir (); + ; + return 0; +} +_ACEOF +for ac_lib in '' dir; do + if test -z "$ac_lib"; then + ac_res="none required" + else + ac_res=-l$ac_lib + LIBS="-l$ac_lib $ac_func_search_save_LIBS" + fi + rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_search_opendir=$ac_res +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext + if test "${ac_cv_search_opendir+set}" = set; then + break +fi +done +if test "${ac_cv_search_opendir+set}" = set; then + : +else + ac_cv_search_opendir=no +fi +rm conftest.$ac_ext +LIBS=$ac_func_search_save_LIBS +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_search_opendir" >&5 +$as_echo "$ac_cv_search_opendir" >&6; } +ac_res=$ac_cv_search_opendir +if test "$ac_res" != no; then + test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" + +fi + +else + { $as_echo "$as_me:$LINENO: checking for library containing opendir" >&5 +$as_echo_n "checking for library containing opendir... " >&6; } +if test "${ac_cv_search_opendir+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_func_search_save_LIBS=$LIBS +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char opendir (); +int +main () +{ +return opendir (); + ; + return 0; +} +_ACEOF +for ac_lib in '' x; do + if test -z "$ac_lib"; then + ac_res="none required" + else + ac_res=-l$ac_lib + LIBS="-l$ac_lib $ac_func_search_save_LIBS" + fi + rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_search_opendir=$ac_res +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext + if test "${ac_cv_search_opendir+set}" = set; then + break +fi +done +if test "${ac_cv_search_opendir+set}" = set; then + : +else + ac_cv_search_opendir=no +fi +rm conftest.$ac_ext +LIBS=$ac_func_search_save_LIBS +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_search_opendir" >&5 +$as_echo "$ac_cv_search_opendir" >&6; } +ac_res=$ac_cv_search_opendir +if test "$ac_res" != no; then + test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" + +fi + +fi + +{ $as_echo "$as_me:$LINENO: checking whether time.h and sys/time.h may both be included" >&5 +$as_echo_n "checking whether time.h and sys/time.h may both be included... " >&6; } +if test "${ac_cv_header_time+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#include +#include + +int +main () +{ +if ((struct tm *) 0) +return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_header_time=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_header_time=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_time" >&5 +$as_echo "$ac_cv_header_time" >&6; } +if test $ac_cv_header_time = yes; then + +cat >>confdefs.h <<\_ACEOF +@%:@define TIME_WITH_SYS_TIME 1 +_ACEOF + +fi + + + + +for ac_header in inttypes.h +do +as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 +$as_echo_n "checking for $ac_header... " >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +fi +ac_res=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +else + # Is the header compilable? +{ $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5 +$as_echo_n "checking $ac_header usability... " >&6; } +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +@%:@include <$ac_header> +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_header_compiler=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_compiler=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 +$as_echo "$ac_header_compiler" >&6; } + +# Is the header present? +{ $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5 +$as_echo_n "checking $ac_header presence... " >&6; } +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +@%:@include <$ac_header> +_ACEOF +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then + ac_header_preproc=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_preproc=no +fi + +rm -f conftest.err conftest.$ac_ext +{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 +$as_echo "$ac_header_preproc" >&6; } + +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in + yes:no: ) + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 +$as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} + ac_header_preproc=yes + ;; + no:yes:* ) + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 +$as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 +$as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 +$as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 +$as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 +$as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 +$as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} + ( cat <<\_ASBOX +@%:@@%:@ ------------------------------- @%:@@%:@ +@%:@@%:@ Report this to bug-bash@gnu.org @%:@@%:@ +@%:@@%:@ ------------------------------- @%:@@%:@ +_ASBOX + ) | sed "s/^/$as_me: WARNING: /" >&2 + ;; +esac +{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 +$as_echo_n "checking for $ac_header... " >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + eval "$as_ac_Header=\$ac_header_preproc" +fi +ac_res=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + +fi +as_val=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF + +fi + +done + + + + + + + + + + + + + + + + + + + + + + +for ac_header in unistd.h stdlib.h stdarg.h varargs.h limits.h string.h \ + memory.h locale.h termcap.h termio.h termios.h dlfcn.h \ + stddef.h stdint.h netdb.h pwd.h grp.h strings.h regex.h +do +as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 +$as_echo_n "checking for $ac_header... " >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +fi +ac_res=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +else + # Is the header compilable? +{ $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5 +$as_echo_n "checking $ac_header usability... " >&6; } +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +@%:@include <$ac_header> +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_header_compiler=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_compiler=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 +$as_echo "$ac_header_compiler" >&6; } + +# Is the header present? +{ $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5 +$as_echo_n "checking $ac_header presence... " >&6; } +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +@%:@include <$ac_header> +_ACEOF +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then + ac_header_preproc=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_preproc=no +fi + +rm -f conftest.err conftest.$ac_ext +{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 +$as_echo "$ac_header_preproc" >&6; } + +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in + yes:no: ) + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 +$as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} + ac_header_preproc=yes + ;; + no:yes:* ) + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 +$as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 +$as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 +$as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 +$as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 +$as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 +$as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} + ( cat <<\_ASBOX +@%:@@%:@ ------------------------------- @%:@@%:@ +@%:@@%:@ Report this to bug-bash@gnu.org @%:@@%:@ +@%:@@%:@ ------------------------------- @%:@@%:@ +_ASBOX + ) | sed "s/^/$as_me: WARNING: /" >&2 + ;; +esac +{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 +$as_echo_n "checking for $ac_header... " >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + eval "$as_ac_Header=\$ac_header_preproc" +fi +ac_res=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + +fi +as_val=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF + +fi + +done + + + + + + + + + + + + + +for ac_header in sys/pte.h sys/stream.h sys/select.h sys/file.h \ + sys/resource.h sys/param.h sys/socket.h sys/stat.h \ + sys/time.h sys/times.h sys/types.h sys/wait.h +do +as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 +$as_echo_n "checking for $ac_header... " >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +fi +ac_res=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +else + # Is the header compilable? +{ $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5 +$as_echo_n "checking $ac_header usability... " >&6; } +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +@%:@include <$ac_header> +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_header_compiler=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_compiler=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 +$as_echo "$ac_header_compiler" >&6; } + +# Is the header present? +{ $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5 +$as_echo_n "checking $ac_header presence... " >&6; } +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +@%:@include <$ac_header> +_ACEOF +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then + ac_header_preproc=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_preproc=no +fi + +rm -f conftest.err conftest.$ac_ext +{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 +$as_echo "$ac_header_preproc" >&6; } + +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in + yes:no: ) + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 +$as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} + ac_header_preproc=yes + ;; + no:yes:* ) + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 +$as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 +$as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 +$as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 +$as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 +$as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 +$as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} + ( cat <<\_ASBOX +@%:@@%:@ ------------------------------- @%:@@%:@ +@%:@@%:@ Report this to bug-bash@gnu.org @%:@@%:@ +@%:@@%:@ ------------------------------- @%:@@%:@ +_ASBOX + ) | sed "s/^/$as_me: WARNING: /" >&2 + ;; +esac +{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 +$as_echo_n "checking for $ac_header... " >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + eval "$as_ac_Header=\$ac_header_preproc" +fi +ac_res=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + +fi +as_val=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF + +fi + +done + + + +for ac_header in netinet/in.h arpa/inet.h +do +as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 +$as_echo_n "checking for $ac_header... " >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +fi +ac_res=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +else + # Is the header compilable? +{ $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5 +$as_echo_n "checking $ac_header usability... " >&6; } +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +@%:@include <$ac_header> +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_header_compiler=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_compiler=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 +$as_echo "$ac_header_compiler" >&6; } + +# Is the header present? +{ $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5 +$as_echo_n "checking $ac_header presence... " >&6; } +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +@%:@include <$ac_header> +_ACEOF +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then + ac_header_preproc=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_preproc=no +fi + +rm -f conftest.err conftest.$ac_ext +{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 +$as_echo "$ac_header_preproc" >&6; } + +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in + yes:no: ) + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 +$as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} + ac_header_preproc=yes + ;; + no:yes:* ) + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 +$as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 +$as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 +$as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 +$as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 +$as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 +$as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} + ( cat <<\_ASBOX +@%:@@%:@ ------------------------------- @%:@@%:@ +@%:@@%:@ Report this to bug-bash@gnu.org @%:@@%:@ +@%:@@%:@ ------------------------------- @%:@@%:@ +_ASBOX + ) | sed "s/^/$as_me: WARNING: /" >&2 + ;; +esac +{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 +$as_echo_n "checking for $ac_header... " >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + eval "$as_ac_Header=\$ac_header_preproc" +fi +ac_res=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + +fi +as_val=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF + +fi + +done + + +{ $as_echo "$as_me:$LINENO: checking for sys/ptem.h" >&5 +$as_echo_n "checking for sys/ptem.h... " >&6; } +if test "${ac_cv_header_sys_ptem_h+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#if HAVE_SYS_STREAM_H +# include +#endif + + +@%:@include +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_header_sys_ptem_h=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_header_sys_ptem_h=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_sys_ptem_h" >&5 +$as_echo "$ac_cv_header_sys_ptem_h" >&6; } + + + +# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works +# for constant arguments. Useless! +{ $as_echo "$as_me:$LINENO: checking for working alloca.h" >&5 +$as_echo_n "checking for working alloca.h... " >&6; } +if test "${ac_cv_working_alloca_h+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +@%:@include +int +main () +{ +char *p = (char *) alloca (2 * sizeof (int)); + if (p) return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_working_alloca_h=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_working_alloca_h=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_working_alloca_h" >&5 +$as_echo "$ac_cv_working_alloca_h" >&6; } +if test $ac_cv_working_alloca_h = yes; then + +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_ALLOCA_H 1 +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for alloca" >&5 +$as_echo_n "checking for alloca... " >&6; } +if test "${ac_cv_func_alloca_works+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#ifdef __GNUC__ +# define alloca __builtin_alloca +#else +# ifdef _MSC_VER +# include +# define alloca _alloca +# else +# ifdef HAVE_ALLOCA_H +# include +# else +# ifdef _AIX + #pragma alloca +# else +# ifndef alloca /* predefined by HP cc +Olibcalls */ +char *alloca (); +# endif +# endif +# endif +# endif +#endif + +int +main () +{ +char *p = (char *) alloca (1); + if (p) return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_func_alloca_works=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_func_alloca_works=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_alloca_works" >&5 +$as_echo "$ac_cv_func_alloca_works" >&6; } + +if test $ac_cv_func_alloca_works = yes; then + +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_ALLOCA 1 +_ACEOF + +else + # The SVR3 libPW and SVR4 libucb both contain incompatible functions +# that cause trouble. Some versions do not even contain alloca or +# contain a buggy version. If you still want to use their alloca, +# use ar to extract alloca.o from them instead of compiling alloca.c. + +ALLOCA=\${LIBOBJDIR}alloca.$ac_objext + +cat >>confdefs.h <<\_ACEOF +@%:@define C_ALLOCA 1 +_ACEOF + + +{ $as_echo "$as_me:$LINENO: checking whether \`alloca.c' needs Cray hooks" >&5 +$as_echo_n "checking whether \`alloca.c' needs Cray hooks... " >&6; } +if test "${ac_cv_os_cray+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#if defined CRAY && ! defined CRAY2 +webecray +#else +wenotbecray +#endif + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "webecray" >/dev/null 2>&1; then + ac_cv_os_cray=yes +else + ac_cv_os_cray=no +fi +rm -f conftest* + +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_os_cray" >&5 +$as_echo "$ac_cv_os_cray" >&6; } +if test $ac_cv_os_cray = yes; then + for ac_func in _getb67 GETB67 getb67; do + as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 +$as_echo_n "checking for $ac_func... " >&6; } +if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define $ac_func to an innocuous variant, in case declares $ac_func. + For example, HP-UX 11i declares gettimeofday. */ +#define $ac_func innocuous_$ac_func + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $ac_func (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $ac_func + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $ac_func (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$ac_func || defined __stub___$ac_func +choke me +#endif + +int +main () +{ +return $ac_func (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + eval "$as_ac_var=yes" +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_ac_var=no" +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +ac_res=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +as_val=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + +cat >>confdefs.h <<_ACEOF +@%:@define CRAY_STACKSEG_END $ac_func +_ACEOF + + break +fi + + done +fi + +{ $as_echo "$as_me:$LINENO: checking stack direction for C alloca" >&5 +$as_echo_n "checking stack direction for C alloca... " >&6; } +if test "${ac_cv_c_stack_direction+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + ac_cv_c_stack_direction=0 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +find_stack_direction () +{ + static char *addr = 0; + auto char dummy; + if (addr == 0) + { + addr = &dummy; + return find_stack_direction (); + } + else + return (&dummy > addr) ? 1 : -1; +} + +int +main () +{ + return find_stack_direction () < 0; +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_c_stack_direction=1 +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +ac_cv_c_stack_direction=-1 +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_c_stack_direction" >&5 +$as_echo "$ac_cv_c_stack_direction" >&6; } + +cat >>confdefs.h <<_ACEOF +@%:@define STACK_DIRECTION $ac_cv_c_stack_direction +_ACEOF + + +fi + +{ $as_echo "$as_me:$LINENO: checking whether getpgrp requires zero arguments" >&5 +$as_echo_n "checking whether getpgrp requires zero arguments... " >&6; } +if test "${ac_cv_func_getpgrp_void+set}" = set; then + $as_echo_n "(cached) " >&6 +else + # Use it with a single arg. +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +getpgrp (0); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_func_getpgrp_void=no +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_func_getpgrp_void=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_getpgrp_void" >&5 +$as_echo "$ac_cv_func_getpgrp_void" >&6; } +if test $ac_cv_func_getpgrp_void = yes; then + +cat >>confdefs.h <<\_ACEOF +@%:@define GETPGRP_VOID 1 +_ACEOF + +fi + +if test "${ac_cv_func_setvbuf_reversed+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_func_setvbuf_reversed=no +fi + + + +for ac_func in vprintf +do +as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 +$as_echo_n "checking for $ac_func... " >&6; } +if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define $ac_func to an innocuous variant, in case declares $ac_func. + For example, HP-UX 11i declares gettimeofday. */ +#define $ac_func innocuous_$ac_func + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $ac_func (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $ac_func + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $ac_func (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$ac_func || defined __stub___$ac_func +choke me +#endif + +int +main () +{ +return $ac_func (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + eval "$as_ac_var=yes" +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_ac_var=no" +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +ac_res=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +as_val=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF + +{ $as_echo "$as_me:$LINENO: checking for _doprnt" >&5 +$as_echo_n "checking for _doprnt... " >&6; } +if test "${ac_cv_func__doprnt+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define _doprnt to an innocuous variant, in case declares _doprnt. + For example, HP-UX 11i declares gettimeofday. */ +#define _doprnt innocuous__doprnt + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char _doprnt (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef _doprnt + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char _doprnt (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub__doprnt || defined __stub____doprnt +choke me +#endif + +int +main () +{ +return _doprnt (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_func__doprnt=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_func__doprnt=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_func__doprnt" >&5 +$as_echo "$ac_cv_func__doprnt" >&6; } +if test "x$ac_cv_func__doprnt" = x""yes; then + +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_DOPRNT 1 +_ACEOF + +fi + +fi +done + + +{ $as_echo "$as_me:$LINENO: checking for working strcoll" >&5 +$as_echo_n "checking for working strcoll... " >&6; } +if test "${ac_cv_func_strcoll_works+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + ac_cv_func_strcoll_works=no +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +return (strcoll ("abc", "def") >= 0 || + strcoll ("ABC", "DEF") >= 0 || + strcoll ("123", "456") >= 0) + ; + return 0; +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_func_strcoll_works=yes +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +ac_cv_func_strcoll_works=no +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_strcoll_works" >&5 +$as_echo "$ac_cv_func_strcoll_works" >&6; } +if test $ac_cv_func_strcoll_works = yes; then + +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_STRCOLL 1 +_ACEOF + +fi + + + +if test "$ac_cv_func_alloca_works" = "no" && test "$opt_bash_malloc" = "no"; then + MALLOC_TARGET=alloca + MALLOC_SRC=alloca.c + + MALLOC_LIB='-lmalloc' + MALLOC_LIBRARY='$(ALLOC_LIBDIR)/libmalloc.a' + MALLOC_LDFLAGS='-L$(ALLOC_LIBDIR)' + MALLOC_DEP='$(MALLOC_LIBRARY)' +fi + +if test "$ac_cv_func_vprintf" = no; then + { $as_echo "$as_me:$LINENO: checking for declaration of vprintf in stdio.h" >&5 +$as_echo_n "checking for declaration of vprintf in stdio.h... " >&6; } + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "[int[ ]*vprintf[^a-zA-Z0-9]]" >/dev/null 2>&1; then + ac_cv_func_vprintf=yes +fi +rm -f conftest* + + { $as_echo "$as_me:$LINENO: result: $ac_cv_func_vprintf" >&5 +$as_echo "$ac_cv_func_vprintf" >&6; } + if test $ac_cv_func_vprintf = yes; then + cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_VPRINTF 1 +_ACEOF + + fi +fi + +if test "$ac_cv_func_vprintf" = no && test "$ac_cv_func__doprnt" = "yes"; then + case " $LIB@&t@OBJS " in + *" vprint.$ac_objext "* ) ;; + *) LIB@&t@OBJS="$LIB@&t@OBJS vprint.$ac_objext" + ;; +esac + +fi + +{ $as_echo "$as_me:$LINENO: checking return type of signal handlers" >&5 +$as_echo_n "checking return type of signal handlers... " >&6; } +if test "${ac_cv_type_signal+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#include + +int +main () +{ +return *(signal (0, 0)) (0) == 1; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_type_signal=int +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_signal=void +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_signal" >&5 +$as_echo "$ac_cv_type_signal" >&6; } + +cat >>confdefs.h <<_ACEOF +@%:@define RETSIGTYPE $ac_cv_type_signal +_ACEOF + + + +{ $as_echo "$as_me:$LINENO: checking for __setostype" >&5 +$as_echo_n "checking for __setostype... " >&6; } +if test "${ac_cv_func___setostype+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define __setostype to an innocuous variant, in case declares __setostype. + For example, HP-UX 11i declares gettimeofday. */ +#define __setostype innocuous___setostype + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char __setostype (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef __setostype + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char __setostype (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub___setostype || defined __stub_____setostype +choke me +#endif + +int +main () +{ +return __setostype (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_func___setostype=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_func___setostype=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_func___setostype" >&5 +$as_echo "$ac_cv_func___setostype" >&6; } +if test "x$ac_cv_func___setostype" = x""yes; then + cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_SETOSTYPE 1 +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for wait3" >&5 +$as_echo_n "checking for wait3... " >&6; } +if test "${ac_cv_func_wait3+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define wait3 to an innocuous variant, in case declares wait3. + For example, HP-UX 11i declares gettimeofday. */ +#define wait3 innocuous_wait3 + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char wait3 (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef wait3 + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char wait3 (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_wait3 || defined __stub___wait3 +choke me +#endif + +int +main () +{ +return wait3 (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_func_wait3=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_func_wait3=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_wait3" >&5 +$as_echo "$ac_cv_func_wait3" >&6; } +if test "x$ac_cv_func_wait3" = x""yes; then + cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_WAIT3 1 +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for isinf" >&5 +$as_echo_n "checking for isinf... " >&6; } +if test "${ac_cv_func_isinf+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define isinf to an innocuous variant, in case declares isinf. + For example, HP-UX 11i declares gettimeofday. */ +#define isinf innocuous_isinf + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char isinf (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef isinf + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char isinf (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_isinf || defined __stub___isinf +choke me +#endif + +int +main () +{ +return isinf (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_func_isinf=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_func_isinf=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_isinf" >&5 +$as_echo "$ac_cv_func_isinf" >&6; } +if test "x$ac_cv_func_isinf" = x""yes; then + cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_ISINF_IN_LIBC 1 +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for isnan" >&5 +$as_echo_n "checking for isnan... " >&6; } +if test "${ac_cv_func_isnan+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define isnan to an innocuous variant, in case declares isnan. + For example, HP-UX 11i declares gettimeofday. */ +#define isnan innocuous_isnan + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char isnan (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef isnan + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char isnan (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_isnan || defined __stub___isnan +choke me +#endif + +int +main () +{ +return isnan (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_func_isnan=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_func_isnan=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_isnan" >&5 +$as_echo "$ac_cv_func_isnan" >&6; } +if test "x$ac_cv_func_isnan" = x""yes; then + cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_ISNAN_IN_LIBC 1 +_ACEOF + +fi + + +{ $as_echo "$as_me:$LINENO: checking for mkfifo" >&5 +$as_echo_n "checking for mkfifo... " >&6; } +if test "${ac_cv_func_mkfifo+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define mkfifo to an innocuous variant, in case declares mkfifo. + For example, HP-UX 11i declares gettimeofday. */ +#define mkfifo innocuous_mkfifo + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char mkfifo (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef mkfifo + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char mkfifo (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_mkfifo || defined __stub___mkfifo +choke me +#endif + +int +main () +{ +return mkfifo (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_func_mkfifo=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_func_mkfifo=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_mkfifo" >&5 +$as_echo "$ac_cv_func_mkfifo" >&6; } +if test "x$ac_cv_func_mkfifo" = x""yes; then + cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_MKFIFO 1 +_ACEOF + +else + cat >>confdefs.h <<\_ACEOF +@%:@define MKFIFO_MISSING 1 +_ACEOF + +fi + + + + + + + + + + + + + + + + + + + + + + + + + +for ac_func in dup2 eaccess fcntl getdtablesize getgroups gethostname \ + getpagesize getpeername getrlimit getrusage gettimeofday \ + kill killpg lstat readlink sbrk select setdtablesize \ + setitimer tcgetpgrp uname ulimit waitpid +do +as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 +$as_echo_n "checking for $ac_func... " >&6; } +if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define $ac_func to an innocuous variant, in case declares $ac_func. + For example, HP-UX 11i declares gettimeofday. */ +#define $ac_func innocuous_$ac_func + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $ac_func (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $ac_func + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $ac_func (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$ac_func || defined __stub___$ac_func +choke me +#endif + +int +main () +{ +return $ac_func (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + eval "$as_ac_var=yes" +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_ac_var=no" +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +ac_res=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +as_val=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF + +fi +done + + +for ac_func in rename +do +as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 +$as_echo_n "checking for $ac_func... " >&6; } +if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define $ac_func to an innocuous variant, in case declares $ac_func. + For example, HP-UX 11i declares gettimeofday. */ +#define $ac_func innocuous_$ac_func + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $ac_func (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $ac_func + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $ac_func (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$ac_func || defined __stub___$ac_func +choke me +#endif + +int +main () +{ +return $ac_func (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + eval "$as_ac_var=yes" +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_ac_var=no" +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +ac_res=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +as_val=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF + +else + case " $LIB@&t@OBJS " in + *" $ac_func.$ac_objext "* ) ;; + *) LIB@&t@OBJS="$LIB@&t@OBJS $ac_func.$ac_objext" + ;; +esac + +fi +done + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +for ac_func in bcopy bzero confstr fnmatch \ + getaddrinfo gethostbyname getservbyname getservent inet_aton \ + memmove pathconf putenv raise regcomp regexec \ + setenv setlinebuf setlocale setvbuf siginterrupt strchr \ + sysconf tcgetattr times ttyname tzset unsetenv +do +as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 +$as_echo_n "checking for $ac_func... " >&6; } +if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define $ac_func to an innocuous variant, in case declares $ac_func. + For example, HP-UX 11i declares gettimeofday. */ +#define $ac_func innocuous_$ac_func + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $ac_func (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $ac_func + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $ac_func (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$ac_func || defined __stub___$ac_func +choke me +#endif + +int +main () +{ +return $ac_func (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + eval "$as_ac_var=yes" +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_ac_var=no" +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +ac_res=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +as_val=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF + +fi +done + + + + + + +for ac_func in vsnprintf snprintf vasprintf asprintf +do +as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 +$as_echo_n "checking for $ac_func... " >&6; } +if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define $ac_func to an innocuous variant, in case declares $ac_func. + For example, HP-UX 11i declares gettimeofday. */ +#define $ac_func innocuous_$ac_func + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $ac_func (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $ac_func + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $ac_func (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$ac_func || defined __stub___$ac_func +choke me +#endif + +int +main () +{ +return $ac_func (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + eval "$as_ac_var=yes" +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_ac_var=no" +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +ac_res=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +as_val=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF + +fi +done + + + + + + + +for ac_func in isascii isblank isgraph isprint isspace isxdigit +do +as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 +$as_echo_n "checking for $ac_func... " >&6; } +if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define $ac_func to an innocuous variant, in case declares $ac_func. + For example, HP-UX 11i declares gettimeofday. */ +#define $ac_func innocuous_$ac_func + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $ac_func (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $ac_func + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $ac_func (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$ac_func || defined __stub___$ac_func +choke me +#endif + +int +main () +{ +return $ac_func (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + eval "$as_ac_var=yes" +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_ac_var=no" +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +ac_res=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +as_val=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF + +fi +done + + + + +for ac_func in getpwent getpwnam getpwuid +do +as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 +$as_echo_n "checking for $ac_func... " >&6; } +if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define $ac_func to an innocuous variant, in case declares $ac_func. + For example, HP-UX 11i declares gettimeofday. */ +#define $ac_func innocuous_$ac_func + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $ac_func (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $ac_func + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $ac_func (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$ac_func || defined __stub___$ac_func +choke me +#endif + +int +main () +{ +return $ac_func (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + eval "$as_ac_var=yes" +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_ac_var=no" +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +ac_res=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +as_val=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF + +fi +done + + + + + + + + + +for ac_func in getcwd memset strcasecmp strerror strftime strnlen strpbrk strstr +do +as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 +$as_echo_n "checking for $ac_func... " >&6; } +if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define $ac_func to an innocuous variant, in case declares $ac_func. + For example, HP-UX 11i declares gettimeofday. */ +#define $ac_func innocuous_$ac_func + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $ac_func (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $ac_func + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $ac_func (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$ac_func || defined __stub___$ac_func +choke me +#endif + +int +main () +{ +return $ac_func (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + eval "$as_ac_var=yes" +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_ac_var=no" +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +ac_res=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +as_val=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF + +else + case " $LIB@&t@OBJS " in + *" $ac_func.$ac_objext "* ) ;; + *) LIB@&t@OBJS="$LIB@&t@OBJS $ac_func.$ac_objext" + ;; +esac + +fi +done + + + + + + + + + +for ac_func in strtod strtol strtoul strtoll strtoull strtoimax strtoumax +do +as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 +$as_echo_n "checking for $ac_func... " >&6; } +if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define $ac_func to an innocuous variant, in case declares $ac_func. + For example, HP-UX 11i declares gettimeofday. */ +#define $ac_func innocuous_$ac_func + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $ac_func (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $ac_func + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $ac_func (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$ac_func || defined __stub___$ac_func +choke me +#endif + +int +main () +{ +return $ac_func (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + eval "$as_ac_var=yes" +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_ac_var=no" +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +ac_res=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +as_val=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF + +else + case " $LIB@&t@OBJS " in + *" $ac_func.$ac_objext "* ) ;; + *) LIB@&t@OBJS="$LIB@&t@OBJS $ac_func.$ac_objext" + ;; +esac + +fi +done + + + +for ac_func in fdprintf +do +as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 +$as_echo_n "checking for $ac_func... " >&6; } +if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define $ac_func to an innocuous variant, in case declares $ac_func. + For example, HP-UX 11i declares gettimeofday. */ +#define $ac_func innocuous_$ac_func + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $ac_func (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $ac_func + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $ac_func (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$ac_func || defined __stub___$ac_func +choke me +#endif + +int +main () +{ +return $ac_func (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + eval "$as_ac_var=yes" +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_ac_var=no" +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +ac_res=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +as_val=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF + +else + case " $LIB@&t@OBJS " in + *" $ac_func.$ac_objext "* ) ;; + *) LIB@&t@OBJS="$LIB@&t@OBJS $ac_func.$ac_objext" + ;; +esac + +fi +done + + + +{ $as_echo "$as_me:$LINENO: checking whether confstr is declared" >&5 +$as_echo_n "checking whether confstr is declared... " >&6; } +if test "${ac_cv_have_decl_confstr+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +#ifndef confstr + (void) confstr; +#endif + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_have_decl_confstr=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_have_decl_confstr=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_have_decl_confstr" >&5 +$as_echo "$ac_cv_have_decl_confstr" >&6; } +if test "x$ac_cv_have_decl_confstr" = x""yes; then + +cat >>confdefs.h <<_ACEOF +@%:@define HAVE_DECL_CONFSTR 1 +_ACEOF + + +else + cat >>confdefs.h <<_ACEOF +@%:@define HAVE_DECL_CONFSTR 0 +_ACEOF + + +fi + + +{ $as_echo "$as_me:$LINENO: checking whether printf is declared" >&5 +$as_echo_n "checking whether printf is declared... " >&6; } +if test "${ac_cv_have_decl_printf+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +#ifndef printf + (void) printf; +#endif + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_have_decl_printf=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_have_decl_printf=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_have_decl_printf" >&5 +$as_echo "$ac_cv_have_decl_printf" >&6; } +if test "x$ac_cv_have_decl_printf" = x""yes; then + +cat >>confdefs.h <<_ACEOF +@%:@define HAVE_DECL_PRINTF 1 +_ACEOF + + +else + cat >>confdefs.h <<_ACEOF +@%:@define HAVE_DECL_PRINTF 0 +_ACEOF + + +fi + + +{ $as_echo "$as_me:$LINENO: checking whether sbrk is declared" >&5 +$as_echo_n "checking whether sbrk is declared... " >&6; } +if test "${ac_cv_have_decl_sbrk+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +#ifndef sbrk + (void) sbrk; +#endif + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_have_decl_sbrk=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_have_decl_sbrk=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_have_decl_sbrk" >&5 +$as_echo "$ac_cv_have_decl_sbrk" >&6; } +if test "x$ac_cv_have_decl_sbrk" = x""yes; then + +cat >>confdefs.h <<_ACEOF +@%:@define HAVE_DECL_SBRK 1 +_ACEOF + + +else + cat >>confdefs.h <<_ACEOF +@%:@define HAVE_DECL_SBRK 0 +_ACEOF + + +fi + + +{ $as_echo "$as_me:$LINENO: checking whether setregid is declared" >&5 +$as_echo_n "checking whether setregid is declared... " >&6; } +if test "${ac_cv_have_decl_setregid+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +#ifndef setregid + (void) setregid; +#endif + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_have_decl_setregid=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_have_decl_setregid=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_have_decl_setregid" >&5 +$as_echo "$ac_cv_have_decl_setregid" >&6; } +if test "x$ac_cv_have_decl_setregid" = x""yes; then + +cat >>confdefs.h <<_ACEOF +@%:@define HAVE_DECL_SETREGID 1 +_ACEOF + + +else + cat >>confdefs.h <<_ACEOF +@%:@define HAVE_DECL_SETREGID 0 +_ACEOF + + +fi + + +{ $as_echo "$as_me:$LINENO: checking whether strcpy is declared" >&5 +$as_echo_n "checking whether strcpy is declared... " >&6; } +if test "${ac_cv_have_decl_strcpy+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +#ifndef strcpy + (void) strcpy; +#endif + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_have_decl_strcpy=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_have_decl_strcpy=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_have_decl_strcpy" >&5 +$as_echo "$ac_cv_have_decl_strcpy" >&6; } +if test "x$ac_cv_have_decl_strcpy" = x""yes; then + +cat >>confdefs.h <<_ACEOF +@%:@define HAVE_DECL_STRCPY 1 +_ACEOF + + +else + cat >>confdefs.h <<_ACEOF +@%:@define HAVE_DECL_STRCPY 0 +_ACEOF + + +fi + + +{ $as_echo "$as_me:$LINENO: checking whether strsignal is declared" >&5 +$as_echo_n "checking whether strsignal is declared... " >&6; } +if test "${ac_cv_have_decl_strsignal+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +#ifndef strsignal + (void) strsignal; +#endif + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_have_decl_strsignal=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_have_decl_strsignal=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_have_decl_strsignal" >&5 +$as_echo "$ac_cv_have_decl_strsignal" >&6; } +if test "x$ac_cv_have_decl_strsignal" = x""yes; then + +cat >>confdefs.h <<_ACEOF +@%:@define HAVE_DECL_STRSIGNAL 1 +_ACEOF + + +else + cat >>confdefs.h <<_ACEOF +@%:@define HAVE_DECL_STRSIGNAL 0 +_ACEOF + + +fi + + + +{ $as_echo "$as_me:$LINENO: checking whether strtold is declared" >&5 +$as_echo_n "checking whether strtold is declared... " >&6; } +if test "${ac_cv_have_decl_strtold+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +#ifndef strtold + (void) strtold; +#endif + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_have_decl_strtold=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_have_decl_strtold=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_have_decl_strtold" >&5 +$as_echo "$ac_cv_have_decl_strtold" >&6; } +if test "x$ac_cv_have_decl_strtold" = x""yes; then + +cat >>confdefs.h <<_ACEOF +@%:@define HAVE_DECL_STRTOLD 1 +_ACEOF + + + { $as_echo "$as_me:$LINENO: checking for broken strtold" >&5 +$as_echo_n "checking for broken strtold... " >&6; } + if test "${bash_cv_strtold_broken+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +int +main () +{ +int main() { long double r; char *foo, bar; r = strtold(foo, &bar);} + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + bash_cv_strtold_broken=no +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + bash_cv_strtold_broken=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + + +fi + + { $as_echo "$as_me:$LINENO: result: $bash_cv_strtold_broken" >&5 +$as_echo "$bash_cv_strtold_broken" >&6; } + if test "$bash_cv_strtold_broken" = "yes" ; then + cat >>confdefs.h <<\_ACEOF +@%:@define STRTOLD_BROKEN 1 +_ACEOF + + fi + +else + cat >>confdefs.h <<_ACEOF +@%:@define HAVE_DECL_STRTOLD 0 +_ACEOF + + +fi + + + + + + + +{ $as_echo "$as_me:$LINENO: checking for declaration of strtoimax" >&5 +$as_echo_n "checking for declaration of strtoimax... " >&6; } +if test "${bash_cv_decl_strtoimax+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#if STDC_HEADERS +# include +#endif +#if HAVE_INTTYPES_H +# include +#endif + +int +main () +{ +return !strtoimax; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + bash_cv_decl_strtoimax=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + bash_cv_decl_strtoimax=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $bash_cv_decl_strtoimax" >&5 +$as_echo "$bash_cv_decl_strtoimax" >&6; } +bash_tr_func=HAVE_DECL_`echo strtoimax | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'` +if test $bash_cv_decl_strtoimax = yes; then + cat >>confdefs.h <<_ACEOF +@%:@define $bash_tr_func 1 +_ACEOF + +else + cat >>confdefs.h <<_ACEOF +@%:@define $bash_tr_func 0 +_ACEOF + +fi + + + + +{ $as_echo "$as_me:$LINENO: checking for declaration of strtol" >&5 +$as_echo_n "checking for declaration of strtol... " >&6; } +if test "${bash_cv_decl_strtol+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#if STDC_HEADERS +# include +#endif +#if HAVE_INTTYPES_H +# include +#endif + +int +main () +{ +return !strtol; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + bash_cv_decl_strtol=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + bash_cv_decl_strtol=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $bash_cv_decl_strtol" >&5 +$as_echo "$bash_cv_decl_strtol" >&6; } +bash_tr_func=HAVE_DECL_`echo strtol | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'` +if test $bash_cv_decl_strtol = yes; then + cat >>confdefs.h <<_ACEOF +@%:@define $bash_tr_func 1 +_ACEOF + +else + cat >>confdefs.h <<_ACEOF +@%:@define $bash_tr_func 0 +_ACEOF + +fi + + + + +{ $as_echo "$as_me:$LINENO: checking for declaration of strtoll" >&5 +$as_echo_n "checking for declaration of strtoll... " >&6; } +if test "${bash_cv_decl_strtoll+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#if STDC_HEADERS +# include +#endif +#if HAVE_INTTYPES_H +# include +#endif + +int +main () +{ +return !strtoll; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + bash_cv_decl_strtoll=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + bash_cv_decl_strtoll=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $bash_cv_decl_strtoll" >&5 +$as_echo "$bash_cv_decl_strtoll" >&6; } +bash_tr_func=HAVE_DECL_`echo strtoll | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'` +if test $bash_cv_decl_strtoll = yes; then + cat >>confdefs.h <<_ACEOF +@%:@define $bash_tr_func 1 +_ACEOF + +else + cat >>confdefs.h <<_ACEOF +@%:@define $bash_tr_func 0 +_ACEOF + +fi + + + + +{ $as_echo "$as_me:$LINENO: checking for declaration of strtoul" >&5 +$as_echo_n "checking for declaration of strtoul... " >&6; } +if test "${bash_cv_decl_strtoul+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#if STDC_HEADERS +# include +#endif +#if HAVE_INTTYPES_H +# include +#endif + +int +main () +{ +return !strtoul; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + bash_cv_decl_strtoul=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + bash_cv_decl_strtoul=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $bash_cv_decl_strtoul" >&5 +$as_echo "$bash_cv_decl_strtoul" >&6; } +bash_tr_func=HAVE_DECL_`echo strtoul | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'` +if test $bash_cv_decl_strtoul = yes; then + cat >>confdefs.h <<_ACEOF +@%:@define $bash_tr_func 1 +_ACEOF + +else + cat >>confdefs.h <<_ACEOF +@%:@define $bash_tr_func 0 +_ACEOF + +fi + + + + +{ $as_echo "$as_me:$LINENO: checking for declaration of strtoull" >&5 +$as_echo_n "checking for declaration of strtoull... " >&6; } +if test "${bash_cv_decl_strtoull+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#if STDC_HEADERS +# include +#endif +#if HAVE_INTTYPES_H +# include +#endif + +int +main () +{ +return !strtoull; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + bash_cv_decl_strtoull=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + bash_cv_decl_strtoull=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $bash_cv_decl_strtoull" >&5 +$as_echo "$bash_cv_decl_strtoull" >&6; } +bash_tr_func=HAVE_DECL_`echo strtoull | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'` +if test $bash_cv_decl_strtoull = yes; then + cat >>confdefs.h <<_ACEOF +@%:@define $bash_tr_func 1 +_ACEOF + +else + cat >>confdefs.h <<_ACEOF +@%:@define $bash_tr_func 0 +_ACEOF + +fi + + + + +{ $as_echo "$as_me:$LINENO: checking for declaration of strtoumax" >&5 +$as_echo_n "checking for declaration of strtoumax... " >&6; } +if test "${bash_cv_decl_strtoumax+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#if STDC_HEADERS +# include +#endif +#if HAVE_INTTYPES_H +# include +#endif + +int +main () +{ +return !strtoumax; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + bash_cv_decl_strtoumax=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + bash_cv_decl_strtoumax=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $bash_cv_decl_strtoumax" >&5 +$as_echo "$bash_cv_decl_strtoumax" >&6; } +bash_tr_func=HAVE_DECL_`echo strtoumax | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'` +if test $bash_cv_decl_strtoumax = yes; then + cat >>confdefs.h <<_ACEOF +@%:@define $bash_tr_func 1 +_ACEOF + +else + cat >>confdefs.h <<_ACEOF +@%:@define $bash_tr_func 0 +_ACEOF + +fi + + + + + + +for ac_header in $ac_header_list +do +as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 +$as_echo_n "checking for $ac_header... " >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +fi +ac_res=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +else + # Is the header compilable? +{ $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5 +$as_echo_n "checking $ac_header usability... " >&6; } +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +@%:@include <$ac_header> +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_header_compiler=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_compiler=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 +$as_echo "$ac_header_compiler" >&6; } + +# Is the header present? +{ $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5 +$as_echo_n "checking $ac_header presence... " >&6; } +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +@%:@include <$ac_header> +_ACEOF +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then + ac_header_preproc=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_preproc=no +fi + +rm -f conftest.err conftest.$ac_ext +{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 +$as_echo "$ac_header_preproc" >&6; } + +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in + yes:no: ) + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 +$as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} + ac_header_preproc=yes + ;; + no:yes:* ) + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 +$as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 +$as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 +$as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 +$as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 +$as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 +$as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} + ( cat <<\_ASBOX +@%:@@%:@ ------------------------------- @%:@@%:@ +@%:@@%:@ Report this to bug-bash@gnu.org @%:@@%:@ +@%:@@%:@ ------------------------------- @%:@@%:@ +_ASBOX + ) | sed "s/^/$as_me: WARNING: /" >&2 + ;; +esac +{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 +$as_echo_n "checking for $ac_header... " >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + eval "$as_ac_Header=\$ac_header_preproc" +fi +ac_res=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + +fi +as_val=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF + +fi + +done + + + + + + + + + +for ac_func in $ac_func_list +do +as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 +$as_echo_n "checking for $ac_func... " >&6; } +if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define $ac_func to an innocuous variant, in case declares $ac_func. + For example, HP-UX 11i declares gettimeofday. */ +#define $ac_func innocuous_$ac_func + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $ac_func (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $ac_func + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $ac_func (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$ac_func || defined __stub___$ac_func +choke me +#endif + +int +main () +{ +return $ac_func (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + eval "$as_ac_var=yes" +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_ac_var=no" +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +ac_res=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +as_val=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF + +fi +done + + + + + + + + + + + + + + + + + +{ $as_echo "$as_me:$LINENO: checking for working mktime" >&5 +$as_echo_n "checking for working mktime... " >&6; } +if test "${ac_cv_func_working_mktime+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + ac_cv_func_working_mktime=no +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Test program from Paul Eggert and Tony Leneis. */ +#ifdef TIME_WITH_SYS_TIME +# include +# include +#else +# ifdef HAVE_SYS_TIME_H +# include +# else +# include +# endif +#endif + +#include +#include + +#ifdef HAVE_UNISTD_H +# include +#endif + +#ifndef HAVE_ALARM +# define alarm(X) /* empty */ +#endif + +/* Work around redefinition to rpl_putenv by other config tests. */ +#undef putenv + +static time_t time_t_max; +static time_t time_t_min; + +/* Values we'll use to set the TZ environment variable. */ +static char *tz_strings[] = { + (char *) 0, "TZ=GMT0", "TZ=JST-9", + "TZ=EST+3EDT+2,M10.1.0/00:00:00,M2.3.0/00:00:00" +}; +#define N_STRINGS (sizeof (tz_strings) / sizeof (tz_strings[0])) + +/* Return 0 if mktime fails to convert a date in the spring-forward gap. + Based on a problem report from Andreas Jaeger. */ +static int +spring_forward_gap () +{ + /* glibc (up to about 1998-10-07) failed this test. */ + struct tm tm; + + /* Use the portable POSIX.1 specification "TZ=PST8PDT,M4.1.0,M10.5.0" + instead of "TZ=America/Vancouver" in order to detect the bug even + on systems that don't support the Olson extension, or don't have the + full zoneinfo tables installed. */ + putenv ("TZ=PST8PDT,M4.1.0,M10.5.0"); + + tm.tm_year = 98; + tm.tm_mon = 3; + tm.tm_mday = 5; + tm.tm_hour = 2; + tm.tm_min = 0; + tm.tm_sec = 0; + tm.tm_isdst = -1; + return mktime (&tm) != (time_t) -1; +} + +static int +mktime_test1 (now) + time_t now; +{ + struct tm *lt; + return ! (lt = localtime (&now)) || mktime (lt) == now; +} + +static int +mktime_test (now) + time_t now; +{ + return (mktime_test1 (now) + && mktime_test1 ((time_t) (time_t_max - now)) + && mktime_test1 ((time_t) (time_t_min + now))); +} + +static int +irix_6_4_bug () +{ + /* Based on code from Ariel Faigon. */ + struct tm tm; + tm.tm_year = 96; + tm.tm_mon = 3; + tm.tm_mday = 0; + tm.tm_hour = 0; + tm.tm_min = 0; + tm.tm_sec = 0; + tm.tm_isdst = -1; + mktime (&tm); + return tm.tm_mon == 2 && tm.tm_mday == 31; +} + +static int +bigtime_test (j) + int j; +{ + struct tm tm; + time_t now; + tm.tm_year = tm.tm_mon = tm.tm_mday = tm.tm_hour = tm.tm_min = tm.tm_sec = j; + now = mktime (&tm); + if (now != (time_t) -1) + { + struct tm *lt = localtime (&now); + if (! (lt + && lt->tm_year == tm.tm_year + && lt->tm_mon == tm.tm_mon + && lt->tm_mday == tm.tm_mday + && lt->tm_hour == tm.tm_hour + && lt->tm_min == tm.tm_min + && lt->tm_sec == tm.tm_sec + && lt->tm_yday == tm.tm_yday + && lt->tm_wday == tm.tm_wday + && ((lt->tm_isdst < 0 ? -1 : 0 < lt->tm_isdst) + == (tm.tm_isdst < 0 ? -1 : 0 < tm.tm_isdst)))) + return 0; + } + return 1; +} + +static int +year_2050_test () +{ + /* The correct answer for 2050-02-01 00:00:00 in Pacific time, + ignoring leap seconds. */ + unsigned long int answer = 2527315200UL; + + struct tm tm; + time_t t; + tm.tm_year = 2050 - 1900; + tm.tm_mon = 2 - 1; + tm.tm_mday = 1; + tm.tm_hour = tm.tm_min = tm.tm_sec = 0; + tm.tm_isdst = -1; + + /* Use the portable POSIX.1 specification "TZ=PST8PDT,M4.1.0,M10.5.0" + instead of "TZ=America/Vancouver" in order to detect the bug even + on systems that don't support the Olson extension, or don't have the + full zoneinfo tables installed. */ + putenv ("TZ=PST8PDT,M4.1.0,M10.5.0"); + + t = mktime (&tm); + + /* Check that the result is either a failure, or close enough + to the correct answer that we can assume the discrepancy is + due to leap seconds. */ + return (t == (time_t) -1 + || (0 < t && answer - 120 <= t && t <= answer + 120)); +} + +int +main () +{ + time_t t, delta; + int i, j; + + /* This test makes some buggy mktime implementations loop. + Give up after 60 seconds; a mktime slower than that + isn't worth using anyway. */ + alarm (60); + + for (;;) + { + t = (time_t_max << 1) + 1; + if (t <= time_t_max) + break; + time_t_max = t; + } + time_t_min = - ((time_t) ~ (time_t) 0 == (time_t) -1) - time_t_max; + + delta = time_t_max / 997; /* a suitable prime number */ + for (i = 0; i < N_STRINGS; i++) + { + if (tz_strings[i]) + putenv (tz_strings[i]); + + for (t = 0; t <= time_t_max - delta; t += delta) + if (! mktime_test (t)) + return 1; + if (! (mktime_test ((time_t) 1) + && mktime_test ((time_t) (60 * 60)) + && mktime_test ((time_t) (60 * 60 * 24)))) + return 1; + + for (j = 1; ; j <<= 1) + if (! bigtime_test (j)) + return 1; + else if (INT_MAX / 2 < j) + break; + if (! bigtime_test (INT_MAX)) + return 1; + } + return ! (irix_6_4_bug () && spring_forward_gap () && year_2050_test ()); +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_func_working_mktime=yes +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +ac_cv_func_working_mktime=no +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_working_mktime" >&5 +$as_echo "$ac_cv_func_working_mktime" >&6; } +if test $ac_cv_func_working_mktime = no; then + case " $LIB@&t@OBJS " in + *" mktime.$ac_objext "* ) ;; + *) LIB@&t@OBJS="$LIB@&t@OBJS mktime.$ac_objext" + ;; +esac + +fi + + + + + + + + +for ac_header in argz.h errno.h fcntl.h malloc.h stdio_ext.h +do +as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 +$as_echo_n "checking for $ac_header... " >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +fi +ac_res=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +else + # Is the header compilable? +{ $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5 +$as_echo_n "checking $ac_header usability... " >&6; } +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +@%:@include <$ac_header> +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_header_compiler=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_compiler=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 +$as_echo "$ac_header_compiler" >&6; } + +# Is the header present? +{ $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5 +$as_echo_n "checking $ac_header presence... " >&6; } +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +@%:@include <$ac_header> +_ACEOF +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then + ac_header_preproc=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_preproc=no +fi + +rm -f conftest.err conftest.$ac_ext +{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 +$as_echo "$ac_header_preproc" >&6; } + +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in + yes:no: ) + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 +$as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} + ac_header_preproc=yes + ;; + no:yes:* ) + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 +$as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 +$as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 +$as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 +$as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 +$as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 +$as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} + ( cat <<\_ASBOX +@%:@@%:@ ------------------------------- @%:@@%:@ +@%:@@%:@ Report this to bug-bash@gnu.org @%:@@%:@ +@%:@@%:@ ------------------------------- @%:@@%:@ +_ASBOX + ) | sed "s/^/$as_me: WARNING: /" >&2 + ;; +esac +{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 +$as_echo_n "checking for $ac_header... " >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + eval "$as_ac_Header=\$ac_header_preproc" +fi +ac_res=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + +fi +as_val=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF + +fi + +done + + + + +for ac_header in stdlib.h unistd.h +do +as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 +$as_echo_n "checking for $ac_header... " >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +fi +ac_res=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +else + # Is the header compilable? +{ $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5 +$as_echo_n "checking $ac_header usability... " >&6; } +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +@%:@include <$ac_header> +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_header_compiler=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_compiler=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 +$as_echo "$ac_header_compiler" >&6; } + +# Is the header present? +{ $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5 +$as_echo_n "checking $ac_header presence... " >&6; } +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +@%:@include <$ac_header> +_ACEOF +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then + ac_header_preproc=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_preproc=no +fi + +rm -f conftest.err conftest.$ac_ext +{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 +$as_echo "$ac_header_preproc" >&6; } + +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in + yes:no: ) + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 +$as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} + ac_header_preproc=yes + ;; + no:yes:* ) + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 +$as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 +$as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 +$as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 +$as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 +$as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 +$as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} + ( cat <<\_ASBOX +@%:@@%:@ ------------------------------- @%:@@%:@ +@%:@@%:@ Report this to bug-bash@gnu.org @%:@@%:@ +@%:@@%:@ ------------------------------- @%:@@%:@ +_ASBOX + ) | sed "s/^/$as_me: WARNING: /" >&2 + ;; +esac +{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 +$as_echo_n "checking for $ac_header... " >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + eval "$as_ac_Header=\$ac_header_preproc" +fi +ac_res=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + +fi +as_val=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF + +fi + +done + + +for ac_func in getpagesize +do +as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 +$as_echo_n "checking for $ac_func... " >&6; } +if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define $ac_func to an innocuous variant, in case declares $ac_func. + For example, HP-UX 11i declares gettimeofday. */ +#define $ac_func innocuous_$ac_func + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $ac_func (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $ac_func + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $ac_func (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$ac_func || defined __stub___$ac_func +choke me +#endif + +int +main () +{ +return $ac_func (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + eval "$as_ac_var=yes" +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_ac_var=no" +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +ac_res=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +as_val=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF + +fi +done + +{ $as_echo "$as_me:$LINENO: checking for working mmap" >&5 +$as_echo_n "checking for working mmap... " >&6; } +if test "${ac_cv_func_mmap_fixed_mapped+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + ac_cv_func_mmap_fixed_mapped=no +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +/* malloc might have been renamed as rpl_malloc. */ +#undef malloc + +/* Thanks to Mike Haertel and Jim Avera for this test. + Here is a matrix of mmap possibilities: + mmap private not fixed + mmap private fixed at somewhere currently unmapped + mmap private fixed at somewhere already mapped + mmap shared not fixed + mmap shared fixed at somewhere currently unmapped + mmap shared fixed at somewhere already mapped + For private mappings, we should verify that changes cannot be read() + back from the file, nor mmap's back from the file at a different + address. (There have been systems where private was not correctly + implemented like the infamous i386 svr4.0, and systems where the + VM page cache was not coherent with the file system buffer cache + like early versions of FreeBSD and possibly contemporary NetBSD.) + For shared mappings, we should conversely verify that changes get + propagated back to all the places they're supposed to be. + + Grep wants private fixed already mapped. + The main things grep needs to know about mmap are: + * does it exist and is it safe to write into the mmap'd area + * how to use it (BSD variants) */ + +#include +#include + +#if !defined STDC_HEADERS && !defined HAVE_STDLIB_H +char *malloc (); +#endif + +/* This mess was copied from the GNU getpagesize.h. */ +#ifndef HAVE_GETPAGESIZE +/* Assume that all systems that can run configure have sys/param.h. */ +# ifndef HAVE_SYS_PARAM_H +# define HAVE_SYS_PARAM_H 1 +# endif + +# ifdef _SC_PAGESIZE +# define getpagesize() sysconf(_SC_PAGESIZE) +# else /* no _SC_PAGESIZE */ +# ifdef HAVE_SYS_PARAM_H +# include +# ifdef EXEC_PAGESIZE +# define getpagesize() EXEC_PAGESIZE +# else /* no EXEC_PAGESIZE */ +# ifdef NBPG +# define getpagesize() NBPG * CLSIZE +# ifndef CLSIZE +# define CLSIZE 1 +# endif /* no CLSIZE */ +# else /* no NBPG */ +# ifdef NBPC +# define getpagesize() NBPC +# else /* no NBPC */ +# ifdef PAGESIZE +# define getpagesize() PAGESIZE +# endif /* PAGESIZE */ +# endif /* no NBPC */ +# endif /* no NBPG */ +# endif /* no EXEC_PAGESIZE */ +# else /* no HAVE_SYS_PARAM_H */ +# define getpagesize() 8192 /* punt totally */ +# endif /* no HAVE_SYS_PARAM_H */ +# endif /* no _SC_PAGESIZE */ + +#endif /* no HAVE_GETPAGESIZE */ + +int +main () +{ + char *data, *data2, *data3; + int i, pagesize; + int fd; + + pagesize = getpagesize (); + + /* First, make a file with some known garbage in it. */ + data = (char *) malloc (pagesize); + if (!data) + return 1; + for (i = 0; i < pagesize; ++i) + *(data + i) = rand (); + umask (0); + fd = creat ("conftest.mmap", 0600); + if (fd < 0) + return 1; + if (write (fd, data, pagesize) != pagesize) + return 1; + close (fd); + + /* Next, try to mmap the file at a fixed address which already has + something else allocated at it. If we can, also make sure that + we see the same garbage. */ + fd = open ("conftest.mmap", O_RDWR); + if (fd < 0) + return 1; + data2 = (char *) malloc (2 * pagesize); + if (!data2) + return 1; + data2 += (pagesize - ((long int) data2 & (pagesize - 1))) & (pagesize - 1); + if (data2 != mmap (data2, pagesize, PROT_READ | PROT_WRITE, + MAP_PRIVATE | MAP_FIXED, fd, 0L)) + return 1; + for (i = 0; i < pagesize; ++i) + if (*(data + i) != *(data2 + i)) + return 1; + + /* Finally, make sure that changes to the mapped area do not + percolate back to the file as seen by read(). (This is a bug on + some variants of i386 svr4.0.) */ + for (i = 0; i < pagesize; ++i) + *(data2 + i) = *(data2 + i) + 1; + data3 = (char *) malloc (pagesize); + if (!data3) + return 1; + if (read (fd, data3, pagesize) != pagesize) + return 1; + for (i = 0; i < pagesize; ++i) + if (*(data + i) != *(data3 + i)) + return 1; + close (fd); + return 0; +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_func_mmap_fixed_mapped=yes +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +ac_cv_func_mmap_fixed_mapped=no +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_mmap_fixed_mapped" >&5 +$as_echo "$ac_cv_func_mmap_fixed_mapped" >&6; } +if test $ac_cv_func_mmap_fixed_mapped = yes; then + +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_MMAP 1 +_ACEOF + +fi +rm -f conftest.mmap + + + + + + + + + + +for ac_func in __argz_count __argz_next __argz_stringify dcgettext mempcpy \ + munmap stpcpy strcspn strdup +do +as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 +$as_echo_n "checking for $ac_func... " >&6; } +if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define $ac_func to an innocuous variant, in case declares $ac_func. + For example, HP-UX 11i declares gettimeofday. */ +#define $ac_func innocuous_$ac_func + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $ac_func (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $ac_func + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $ac_func (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$ac_func || defined __stub___$ac_func +choke me +#endif + +int +main () +{ +return $ac_func (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + eval "$as_ac_var=yes" +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_ac_var=no" +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +ac_res=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +as_val=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF + +fi +done + + +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} -I${INTL_BUILDDIR}' + LIBINTL_H='${INTL_BUILDDIR}/libintl.h' +fi + + + + + + + +for ac_header in wctype.h +do +as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 +$as_echo_n "checking for $ac_header... " >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +fi +ac_res=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +else + # Is the header compilable? +{ $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5 +$as_echo_n "checking $ac_header usability... " >&6; } +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +@%:@include <$ac_header> +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_header_compiler=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_compiler=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 +$as_echo "$ac_header_compiler" >&6; } + +# Is the header present? +{ $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5 +$as_echo_n "checking $ac_header presence... " >&6; } +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +@%:@include <$ac_header> +_ACEOF +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then + ac_header_preproc=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_preproc=no +fi + +rm -f conftest.err conftest.$ac_ext +{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 +$as_echo "$ac_header_preproc" >&6; } + +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in + yes:no: ) + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 +$as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} + ac_header_preproc=yes + ;; + no:yes:* ) + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 +$as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 +$as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 +$as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 +$as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 +$as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 +$as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} + ( cat <<\_ASBOX +@%:@@%:@ ------------------------------- @%:@@%:@ +@%:@@%:@ Report this to bug-bash@gnu.org @%:@@%:@ +@%:@@%:@ ------------------------------- @%:@@%:@ +_ASBOX + ) | sed "s/^/$as_me: WARNING: /" >&2 + ;; +esac +{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 +$as_echo_n "checking for $ac_header... " >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + eval "$as_ac_Header=\$ac_header_preproc" +fi +ac_res=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + +fi +as_val=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF + +fi + +done + + +for ac_header in wchar.h +do +as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 +$as_echo_n "checking for $ac_header... " >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +fi +ac_res=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +else + # Is the header compilable? +{ $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5 +$as_echo_n "checking $ac_header usability... " >&6; } +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +@%:@include <$ac_header> +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_header_compiler=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_compiler=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 +$as_echo "$ac_header_compiler" >&6; } + +# Is the header present? +{ $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5 +$as_echo_n "checking $ac_header presence... " >&6; } +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +@%:@include <$ac_header> +_ACEOF +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then + ac_header_preproc=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_preproc=no +fi + +rm -f conftest.err conftest.$ac_ext +{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 +$as_echo "$ac_header_preproc" >&6; } + +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in + yes:no: ) + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 +$as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} + ac_header_preproc=yes + ;; + no:yes:* ) + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 +$as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 +$as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 +$as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 +$as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 +$as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 +$as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} + ( cat <<\_ASBOX +@%:@@%:@ ------------------------------- @%:@@%:@ +@%:@@%:@ Report this to bug-bash@gnu.org @%:@@%:@ +@%:@@%:@ ------------------------------- @%:@@%:@ +_ASBOX + ) | sed "s/^/$as_me: WARNING: /" >&2 + ;; +esac +{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 +$as_echo_n "checking for $ac_header... " >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + eval "$as_ac_Header=\$ac_header_preproc" +fi +ac_res=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + +fi +as_val=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF + +fi + +done + + +for ac_header in langinfo.h +do +as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 +$as_echo_n "checking for $ac_header... " >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +fi +ac_res=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +else + # Is the header compilable? +{ $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5 +$as_echo_n "checking $ac_header usability... " >&6; } +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +@%:@include <$ac_header> +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_header_compiler=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_compiler=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 +$as_echo "$ac_header_compiler" >&6; } + +# Is the header present? +{ $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5 +$as_echo_n "checking $ac_header presence... " >&6; } +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +@%:@include <$ac_header> +_ACEOF +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then + ac_header_preproc=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_preproc=no +fi + +rm -f conftest.err conftest.$ac_ext +{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 +$as_echo "$ac_header_preproc" >&6; } + +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in + yes:no: ) + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 +$as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} + ac_header_preproc=yes + ;; + no:yes:* ) + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 +$as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 +$as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 +$as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 +$as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 +$as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} + { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 +$as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} + ( cat <<\_ASBOX +@%:@@%:@ ------------------------------- @%:@@%:@ +@%:@@%:@ Report this to bug-bash@gnu.org @%:@@%:@ +@%:@@%:@ ------------------------------- @%:@@%:@ +_ASBOX + ) | sed "s/^/$as_me: WARNING: /" >&2 + ;; +esac +{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 +$as_echo_n "checking for $ac_header... " >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + eval "$as_ac_Header=\$ac_header_preproc" +fi +ac_res=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + +fi +as_val=`eval 'as_val=${'$as_ac_Header'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF + +fi + +done + + +{ $as_echo "$as_me:$LINENO: checking for mbrlen" >&5 +$as_echo_n "checking for mbrlen... " >&6; } +if test "${ac_cv_func_mbrlen+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define mbrlen to an innocuous variant, in case declares mbrlen. + For example, HP-UX 11i declares gettimeofday. */ +#define mbrlen innocuous_mbrlen + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char mbrlen (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef mbrlen + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char mbrlen (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_mbrlen || defined __stub___mbrlen +choke me +#endif + +int +main () +{ +return mbrlen (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_func_mbrlen=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_func_mbrlen=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_mbrlen" >&5 +$as_echo "$ac_cv_func_mbrlen" >&6; } +if test "x$ac_cv_func_mbrlen" = x""yes; then + cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_MBRLEN 1 +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for mbscmp" >&5 +$as_echo_n "checking for mbscmp... " >&6; } +if test "${ac_cv_func_mbscmp+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define mbscmp to an innocuous variant, in case declares mbscmp. + For example, HP-UX 11i declares gettimeofday. */ +#define mbscmp innocuous_mbscmp + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char mbscmp (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef mbscmp + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char mbscmp (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_mbscmp || defined __stub___mbscmp +choke me +#endif + +int +main () +{ +return mbscmp (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_func_mbscmp=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_func_mbscmp=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_mbscmp" >&5 +$as_echo "$ac_cv_func_mbscmp" >&6; } +if test "x$ac_cv_func_mbscmp" = x""yes; then + cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_MBSCMP 1 +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for mbsrtowcs" >&5 +$as_echo_n "checking for mbsrtowcs... " >&6; } +if test "${ac_cv_func_mbsrtowcs+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define mbsrtowcs to an innocuous variant, in case declares mbsrtowcs. + For example, HP-UX 11i declares gettimeofday. */ +#define mbsrtowcs innocuous_mbsrtowcs + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char mbsrtowcs (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef mbsrtowcs + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char mbsrtowcs (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_mbsrtowcs || defined __stub___mbsrtowcs +choke me +#endif + +int +main () +{ +return mbsrtowcs (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_func_mbsrtowcs=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_func_mbsrtowcs=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_mbsrtowcs" >&5 +$as_echo "$ac_cv_func_mbsrtowcs" >&6; } +if test "x$ac_cv_func_mbsrtowcs" = x""yes; then + cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_MBSRTOWCS 1 +_ACEOF + +fi + + +{ $as_echo "$as_me:$LINENO: checking for wcrtomb" >&5 +$as_echo_n "checking for wcrtomb... " >&6; } +if test "${ac_cv_func_wcrtomb+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define wcrtomb to an innocuous variant, in case declares wcrtomb. + For example, HP-UX 11i declares gettimeofday. */ +#define wcrtomb innocuous_wcrtomb + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char wcrtomb (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef wcrtomb + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char wcrtomb (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_wcrtomb || defined __stub___wcrtomb +choke me +#endif + +int +main () +{ +return wcrtomb (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_func_wcrtomb=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_func_wcrtomb=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_wcrtomb" >&5 +$as_echo "$ac_cv_func_wcrtomb" >&6; } +if test "x$ac_cv_func_wcrtomb" = x""yes; then + cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_WCRTOMB 1 +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for wcscoll" >&5 +$as_echo_n "checking for wcscoll... " >&6; } +if test "${ac_cv_func_wcscoll+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define wcscoll to an innocuous variant, in case declares wcscoll. + For example, HP-UX 11i declares gettimeofday. */ +#define wcscoll innocuous_wcscoll + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char wcscoll (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef wcscoll + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char wcscoll (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_wcscoll || defined __stub___wcscoll +choke me +#endif + +int +main () +{ +return wcscoll (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_func_wcscoll=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_func_wcscoll=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_wcscoll" >&5 +$as_echo "$ac_cv_func_wcscoll" >&6; } +if test "x$ac_cv_func_wcscoll" = x""yes; then + cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_WCSCOLL 1 +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for wcsdup" >&5 +$as_echo_n "checking for wcsdup... " >&6; } +if test "${ac_cv_func_wcsdup+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define wcsdup to an innocuous variant, in case declares wcsdup. + For example, HP-UX 11i declares gettimeofday. */ +#define wcsdup innocuous_wcsdup + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char wcsdup (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef wcsdup + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char wcsdup (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_wcsdup || defined __stub___wcsdup +choke me +#endif + +int +main () +{ +return wcsdup (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_func_wcsdup=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_func_wcsdup=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_wcsdup" >&5 +$as_echo "$ac_cv_func_wcsdup" >&6; } +if test "x$ac_cv_func_wcsdup" = x""yes; then + cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_WCSDUP 1 +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for wcwidth" >&5 +$as_echo_n "checking for wcwidth... " >&6; } +if test "${ac_cv_func_wcwidth+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define wcwidth to an innocuous variant, in case declares wcwidth. + For example, HP-UX 11i declares gettimeofday. */ +#define wcwidth innocuous_wcwidth + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char wcwidth (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef wcwidth + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char wcwidth (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_wcwidth || defined __stub___wcwidth +choke me +#endif + +int +main () +{ +return wcwidth (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_func_wcwidth=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_func_wcwidth=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_wcwidth" >&5 +$as_echo "$ac_cv_func_wcwidth" >&6; } +if test "x$ac_cv_func_wcwidth" = x""yes; then + cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_WCWIDTH 1 +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for wctype" >&5 +$as_echo_n "checking for wctype... " >&6; } +if test "${ac_cv_func_wctype+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define wctype to an innocuous variant, in case declares wctype. + For example, HP-UX 11i declares gettimeofday. */ +#define wctype innocuous_wctype + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char wctype (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef wctype + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char wctype (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_wctype || defined __stub___wctype +choke me +#endif + +int +main () +{ +return wctype (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_func_wctype=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_func_wctype=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_wctype" >&5 +$as_echo "$ac_cv_func_wctype" >&6; } +if test "x$ac_cv_func_wctype" = x""yes; then + cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_WCTYPE 1 +_ACEOF + +fi + + + + { $as_echo "$as_me:$LINENO: checking whether mbrtowc and mbstate_t are properly declared" >&5 +$as_echo_n "checking whether mbrtowc and mbstate_t are properly declared... " >&6; } +if test "${ac_cv_func_mbrtowc+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +@%:@include +int +main () +{ +wchar_t wc; + char const s[] = ""; + size_t n = 1; + mbstate_t state; + return ! (sizeof state && (mbrtowc) (&wc, s, n, &state)); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_func_mbrtowc=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_func_mbrtowc=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_mbrtowc" >&5 +$as_echo "$ac_cv_func_mbrtowc" >&6; } + if test $ac_cv_func_mbrtowc = yes; then + +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_MBRTOWC 1 +_ACEOF + + fi + +if test $ac_cv_func_mbrtowc = yes; then + cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_MBSTATE_T 1 +_ACEOF + +fi + + + + + + +for ac_func in iswlower iswupper towlower towupper iswctype +do +as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 +$as_echo_n "checking for $ac_func... " >&6; } +if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define $ac_func to an innocuous variant, in case declares $ac_func. + For example, HP-UX 11i declares gettimeofday. */ +#define $ac_func innocuous_$ac_func + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $ac_func (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $ac_func + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $ac_func (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$ac_func || defined __stub___$ac_func +choke me +#endif + +int +main () +{ +return $ac_func (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + eval "$as_ac_var=yes" +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_ac_var=no" +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +ac_res=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +as_val=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF + +fi +done + + +{ $as_echo "$as_me:$LINENO: checking for nl_langinfo and CODESET" >&5 +$as_echo_n "checking for nl_langinfo and CODESET... " >&6; } +if test "${bash_cv_langinfo_codeset+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +int +main () +{ +char* cs = nl_langinfo(CODESET); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + bash_cv_langinfo_codeset=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + bash_cv_langinfo_codeset=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $bash_cv_langinfo_codeset" >&5 +$as_echo "$bash_cv_langinfo_codeset" >&6; } +if test $bash_cv_langinfo_codeset = yes; then + cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_LANGINFO_CODESET 1 +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for wchar_t in wchar.h" >&5 +$as_echo_n "checking for wchar_t in wchar.h... " >&6; } +if test "${bash_cv_type_wchar_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + +int +main () +{ + + wchar_t foo; + foo = 0; + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + bash_cv_type_wchar_t=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + bash_cv_type_wchar_t=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $bash_cv_type_wchar_t" >&5 +$as_echo "$bash_cv_type_wchar_t" >&6; } +if test $bash_cv_type_wchar_t = yes; then + +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_WCHAR_T 1 +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for wctype_t in wctype.h" >&5 +$as_echo_n "checking for wctype_t in wctype.h... " >&6; } +if test "${bash_cv_type_wctype_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +int +main () +{ + + wctype_t foo; + foo = 0; + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + bash_cv_type_wctype_t=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + bash_cv_type_wctype_t=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $bash_cv_type_wctype_t" >&5 +$as_echo "$bash_cv_type_wctype_t" >&6; } +if test $bash_cv_type_wctype_t = yes; then + +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_WCTYPE_T 1 +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for wint_t in wctype.h" >&5 +$as_echo_n "checking for wint_t in wctype.h... " >&6; } +if test "${bash_cv_type_wint_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +int +main () +{ + + wint_t foo; + foo = 0; + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + bash_cv_type_wint_t=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + bash_cv_type_wint_t=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $bash_cv_type_wint_t" >&5 +$as_echo "$bash_cv_type_wint_t" >&6; } +if test $bash_cv_type_wint_t = yes; then + +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_WINT_T 1 +_ACEOF + +fi + + + +if test "$opt_static_link" != yes; then + +{ $as_echo "$as_me:$LINENO: checking for dlopen in -ldl" >&5 +$as_echo_n "checking for dlopen in -ldl... " >&6; } +if test "${ac_cv_lib_dl_dlopen+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ldl $LIBS" +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char dlopen (); +int +main () +{ +return dlopen (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_lib_dl_dlopen=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_lib_dl_dlopen=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_dl_dlopen" >&5 +$as_echo "$ac_cv_lib_dl_dlopen" >&6; } +if test "x$ac_cv_lib_dl_dlopen" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define HAVE_LIBDL 1 +_ACEOF + + LIBS="-ldl $LIBS" + +fi + + + + +for ac_func in dlopen dlclose dlsym +do +as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 +$as_echo_n "checking for $ac_func... " >&6; } +if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define $ac_func to an innocuous variant, in case declares $ac_func. + For example, HP-UX 11i declares gettimeofday. */ +#define $ac_func innocuous_$ac_func + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $ac_func (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $ac_func + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $ac_func (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$ac_func || defined __stub___$ac_func +choke me +#endif + +int +main () +{ +return $ac_func (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + eval "$as_ac_var=yes" +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_ac_var=no" +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +ac_res=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +as_val=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF + +fi +done + +fi + +{ $as_echo "$as_me:$LINENO: checking whether sys_siglist is declared" >&5 +$as_echo_n "checking whether sys_siglist is declared... " >&6; } +if test "${ac_cv_have_decl_sys_siglist+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +/* NetBSD declares sys_siglist in unistd.h. */ +#ifdef HAVE_UNISTD_H +# include +#endif + + +int +main () +{ +#ifndef sys_siglist + (void) sys_siglist; +#endif + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_have_decl_sys_siglist=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_have_decl_sys_siglist=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_have_decl_sys_siglist" >&5 +$as_echo "$ac_cv_have_decl_sys_siglist" >&6; } +if test "x$ac_cv_have_decl_sys_siglist" = x""yes; then + +cat >>confdefs.h <<_ACEOF +@%:@define HAVE_DECL_SYS_SIGLIST 1 +_ACEOF + + +else + cat >>confdefs.h <<_ACEOF +@%:@define HAVE_DECL_SYS_SIGLIST 0 +_ACEOF + + +fi + + + + +if test "$ac_cv_func_inet_aton" != 'yes'; then + +{ $as_echo "$as_me:$LINENO: checking for inet_aton" >&5 +$as_echo_n "checking for inet_aton... " >&6; } +if test "${bash_cv_func_inet_aton+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#include +#include +struct in_addr ap; +int +main () +{ + inet_aton("127.0.0.1", &ap); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + bash_cv_func_inet_aton=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + bash_cv_func_inet_aton=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $bash_cv_func_inet_aton" >&5 +$as_echo "$bash_cv_func_inet_aton" >&6; } +if test $bash_cv_func_inet_aton = yes; then + cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_INET_ATON 1 +_ACEOF + +else + case " $LIB@&t@OBJS " in + *" inet_aton.$ac_objext "* ) ;; + *) LIB@&t@OBJS="$LIB@&t@OBJS inet_aton.$ac_objext" + ;; +esac + +fi + +fi + +case "$host_os" in +irix4*) +{ $as_echo "$as_me:$LINENO: checking for getpwent in -lsun" >&5 +$as_echo_n "checking for getpwent in -lsun... " >&6; } +if test "${ac_cv_lib_sun_getpwent+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lsun $LIBS" +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char getpwent (); +int +main () +{ +return getpwent (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_lib_sun_getpwent=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_lib_sun_getpwent=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_sun_getpwent" >&5 +$as_echo "$ac_cv_lib_sun_getpwent" >&6; } +if test "x$ac_cv_lib_sun_getpwent" = x""yes; then + cat >>confdefs.h <<_ACEOF +@%:@define HAVE_LIBSUN 1 +_ACEOF + + LIBS="-lsun $LIBS" + +fi + ;; +esac + +if test "$ac_cv_func_getpeername" = no; then + +if test "X$bash_cv_have_socklib" = "X"; then +_bash_needmsg= +else +{ $as_echo "$as_me:$LINENO: checking for socket library" >&5 +$as_echo_n "checking for socket library... " >&6; } +_bash_needmsg=yes +fi +if test "${bash_cv_have_socklib+set}" = set; then + $as_echo_n "(cached) " >&6 +else + { $as_echo "$as_me:$LINENO: checking for getpeername in -lsocket" >&5 +$as_echo_n "checking for getpeername in -lsocket... " >&6; } +if test "${ac_cv_lib_socket_getpeername+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lsocket -lnsl $LIBS" +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char getpeername (); +int +main () +{ +return getpeername (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_lib_socket_getpeername=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_lib_socket_getpeername=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_socket_getpeername" >&5 +$as_echo "$ac_cv_lib_socket_getpeername" >&6; } +if test "x$ac_cv_lib_socket_getpeername" = x""yes; then + bash_cv_have_socklib=yes +else + bash_cv_have_socklib=no +fi + +fi + +if test "X$_bash_needmsg" = Xyes; then + { $as_echo "$as_me:$LINENO: result: $bash_cv_have_socklib" >&5 +$as_echo "$bash_cv_have_socklib" >&6; } + _bash_needmsg= +fi +if test $bash_cv_have_socklib = yes; then + # check for libnsl, add it to LIBS if present + if test "X$bash_cv_have_libnsl" = "X"; then + _bash_needmsg= + else + { $as_echo "$as_me:$LINENO: checking for libnsl" >&5 +$as_echo_n "checking for libnsl... " >&6; } + _bash_needmsg=yes + fi + if test "${bash_cv_have_libnsl+set}" = set; then + $as_echo_n "(cached) " >&6 +else + { $as_echo "$as_me:$LINENO: checking for t_open in -lnsl" >&5 +$as_echo_n "checking for t_open in -lnsl... " >&6; } +if test "${ac_cv_lib_nsl_t_open+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lnsl $LIBS" +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char t_open (); +int +main () +{ +return t_open (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_lib_nsl_t_open=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_lib_nsl_t_open=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_nsl_t_open" >&5 +$as_echo "$ac_cv_lib_nsl_t_open" >&6; } +if test "x$ac_cv_lib_nsl_t_open" = x""yes; then + bash_cv_have_libnsl=yes +else + bash_cv_have_libnsl=no +fi + +fi + + if test "X$_bash_needmsg" = Xyes; then + { $as_echo "$as_me:$LINENO: result: $bash_cv_have_libnsl" >&5 +$as_echo "$bash_cv_have_libnsl" >&6; } + _bash_needmsg= + fi + if test $bash_cv_have_libnsl = yes; then + LIBS="-lsocket -lnsl $LIBS" + else + LIBS="-lsocket $LIBS" + fi + cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_LIBSOCKET 1 +_ACEOF + + cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_GETPEERNAME 1 +_ACEOF + +fi + +fi +if test "$ac_cv_func_gethostbyname" = no; then + if test "X$bash_cv_have_gethostbyname" = "X"; then +_bash_needmsg=yes +else +{ $as_echo "$as_me:$LINENO: checking for gethostbyname in socket library" >&5 +$as_echo_n "checking for gethostbyname in socket library... " >&6; } +_bash_needmsg= +fi +if test "${bash_cv_have_gethostbyname+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +int +main () +{ + struct hostent *hp; + hp = gethostbyname("localhost"); + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + bash_cv_have_gethostbyname=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + bash_cv_have_gethostbyname=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext + +fi + +if test "X$_bash_needmsg" = Xyes; then + { $as_echo "$as_me:$LINENO: checking for gethostbyname in socket library" >&5 +$as_echo_n "checking for gethostbyname in socket library... " >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $bash_cv_have_gethostbyname" >&5 +$as_echo "$bash_cv_have_gethostbyname" >&6; } +if test "$bash_cv_have_gethostbyname" = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_GETHOSTBYNAME 1 +_ACEOF + +fi + +fi + +{ $as_echo "$as_me:$LINENO: checking for uid_t in sys/types.h" >&5 +$as_echo_n "checking for uid_t in sys/types.h... " >&6; } +if test "${ac_cv_type_uid_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "uid_t" >/dev/null 2>&1; then + ac_cv_type_uid_t=yes +else + ac_cv_type_uid_t=no +fi +rm -f conftest* + +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_uid_t" >&5 +$as_echo "$ac_cv_type_uid_t" >&6; } +if test $ac_cv_type_uid_t = no; then + +cat >>confdefs.h <<\_ACEOF +@%:@define uid_t int +_ACEOF + + +cat >>confdefs.h <<\_ACEOF +@%:@define gid_t int +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking type of array argument to getgroups" >&5 +$as_echo_n "checking type of array argument to getgroups... " >&6; } +if test "${ac_cv_type_getgroups+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + ac_cv_type_getgroups=cross +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Thanks to Mike Rendell for this test. */ +$ac_includes_default +#define NGID 256 +#undef MAX +#define MAX(x, y) ((x) > (y) ? (x) : (y)) + +int +main () +{ + gid_t gidset[NGID]; + int i, n; + union { gid_t gval; long int lval; } val; + + val.lval = -1; + for (i = 0; i < NGID; i++) + gidset[i] = val.gval; + n = getgroups (sizeof (gidset) / MAX (sizeof (int), sizeof (gid_t)) - 1, + gidset); + /* Exit non-zero if getgroups seems to require an array of ints. This + happens when gid_t is short int but getgroups modifies an array + of ints. */ + return n > 0 && gidset[n] != val.gval; +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_type_getgroups=gid_t +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +ac_cv_type_getgroups=int +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + +if test $ac_cv_type_getgroups = cross; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "getgroups.*int.*gid_t" >/dev/null 2>&1; then + ac_cv_type_getgroups=gid_t +else + ac_cv_type_getgroups=int +fi +rm -f conftest* + +fi +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_getgroups" >&5 +$as_echo "$ac_cv_type_getgroups" >&6; } + +cat >>confdefs.h <<_ACEOF +@%:@define GETGROUPS_T $ac_cv_type_getgroups +_ACEOF + + +{ $as_echo "$as_me:$LINENO: checking for off_t" >&5 +$as_echo_n "checking for off_t... " >&6; } +if test "${ac_cv_type_off_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type_off_t=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (off_t)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((off_t))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_off_t=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_off_t" >&5 +$as_echo "$ac_cv_type_off_t" >&6; } +if test "x$ac_cv_type_off_t" = x""yes; then + : +else + +cat >>confdefs.h <<_ACEOF +@%:@define off_t long int +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for mode_t" >&5 +$as_echo_n "checking for mode_t... " >&6; } +if test "${ac_cv_type_mode_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type_mode_t=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (mode_t)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((mode_t))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_mode_t=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_mode_t" >&5 +$as_echo "$ac_cv_type_mode_t" >&6; } +if test "x$ac_cv_type_mode_t" = x""yes; then + : +else + +cat >>confdefs.h <<_ACEOF +@%:@define mode_t int +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for uid_t in sys/types.h" >&5 +$as_echo_n "checking for uid_t in sys/types.h... " >&6; } +if test "${ac_cv_type_uid_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "uid_t" >/dev/null 2>&1; then + ac_cv_type_uid_t=yes +else + ac_cv_type_uid_t=no +fi +rm -f conftest* + +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_uid_t" >&5 +$as_echo "$ac_cv_type_uid_t" >&6; } +if test $ac_cv_type_uid_t = no; then + +cat >>confdefs.h <<\_ACEOF +@%:@define uid_t int +_ACEOF + + +cat >>confdefs.h <<\_ACEOF +@%:@define gid_t int +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for pid_t" >&5 +$as_echo_n "checking for pid_t... " >&6; } +if test "${ac_cv_type_pid_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type_pid_t=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (pid_t)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((pid_t))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_pid_t=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_pid_t" >&5 +$as_echo "$ac_cv_type_pid_t" >&6; } +if test "x$ac_cv_type_pid_t" = x""yes; then + : +else + +cat >>confdefs.h <<_ACEOF +@%:@define pid_t int +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for size_t" >&5 +$as_echo_n "checking for size_t... " >&6; } +if test "${ac_cv_type_size_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type_size_t=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (size_t)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((size_t))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_size_t=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_size_t" >&5 +$as_echo "$ac_cv_type_size_t" >&6; } +if test "x$ac_cv_type_size_t" = x""yes; then + : +else + +cat >>confdefs.h <<_ACEOF +@%:@define size_t unsigned int +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for ssize_t" >&5 +$as_echo_n "checking for ssize_t... " >&6; } +if test "${ac_cv_type_ssize_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type_ssize_t=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (ssize_t)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((ssize_t))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_ssize_t=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_ssize_t" >&5 +$as_echo "$ac_cv_type_ssize_t" >&6; } +if test "x$ac_cv_type_ssize_t" = x""yes; then + : +else + +cat >>confdefs.h <<_ACEOF +@%:@define ssize_t int +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for time_t" >&5 +$as_echo_n "checking for time_t... " >&6; } +if test "${ac_cv_type_time_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type_time_t=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (time_t)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((time_t))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_time_t=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_time_t" >&5 +$as_echo "$ac_cv_type_time_t" >&6; } +if test "x$ac_cv_type_time_t" = x""yes; then + : +else + +cat >>confdefs.h <<_ACEOF +@%:@define time_t long +_ACEOF + +fi + + + +{ $as_echo "$as_me:$LINENO: checking for long long" >&5 +$as_echo_n "checking for long long... " >&6; } +if test "${bash_cv_type_long_long+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +long long ll = 1; int i = 63; +int +main () +{ + +long long llm = (long long) -1; +return ll << i | ll >> i | llm / ll | llm % ll; + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + bash_cv_type_long_long='long long' +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + bash_cv_type_long_long='long' +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $bash_cv_type_long_long" >&5 +$as_echo "$bash_cv_type_long_long" >&6; } +if test "$bash_cv_type_long_long" = 'long long'; then + cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_LONG_LONG 1 +_ACEOF + +fi + + +{ $as_echo "$as_me:$LINENO: checking for unsigned long long" >&5 +$as_echo_n "checking for unsigned long long... " >&6; } +if test "${bash_cv_type_unsigned_long_long+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +unsigned long long ull = 1; int i = 63; +int +main () +{ + +unsigned long long ullmax = (unsigned long long) -1; +return ull << i | ull >> i | ullmax / ull | ullmax % ull; + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + bash_cv_type_unsigned_long_long='unsigned long long' +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + bash_cv_type_unsigned_long_long='unsigned long' +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $bash_cv_type_unsigned_long_long" >&5 +$as_echo "$bash_cv_type_unsigned_long_long" >&6; } +if test "$bash_cv_type_unsigned_long_long" = 'unsigned long long'; then + cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_UNSIGNED_LONG_LONG 1 +_ACEOF + +fi + + +{ $as_echo "$as_me:$LINENO: checking return type of signal handlers" >&5 +$as_echo_n "checking return type of signal handlers... " >&6; } +if test "${ac_cv_type_signal+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#include + +int +main () +{ +return *(signal (0, 0)) (0) == 1; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_type_signal=int +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_signal=void +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_signal" >&5 +$as_echo "$ac_cv_type_signal" >&6; } + +cat >>confdefs.h <<_ACEOF +@%:@define RETSIGTYPE $ac_cv_type_signal +_ACEOF + + +{ $as_echo "$as_me:$LINENO: checking for sig_atomic_t in signal.h" >&5 +$as_echo_n "checking for sig_atomic_t in signal.h... " >&6; } +if test "${ac_cv_have_sig_atomic_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include + +int +main () +{ + sig_atomic_t x; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_have_sig_atomic_t=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_have_sig_atomic_t=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_have_sig_atomic_t" >&5 +$as_echo "$ac_cv_have_sig_atomic_t" >&6; } +if test "$ac_cv_have_sig_atomic_t" = "no" +then + { $as_echo "$as_me:$LINENO: checking for sig_atomic_t" >&5 +$as_echo_n "checking for sig_atomic_t... " >&6; } +if test "${ac_cv_type_sig_atomic_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type_sig_atomic_t=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (sig_atomic_t)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((sig_atomic_t))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_sig_atomic_t=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_sig_atomic_t" >&5 +$as_echo "$ac_cv_type_sig_atomic_t" >&6; } +if test "x$ac_cv_type_sig_atomic_t" = x""yes; then + : +else + +cat >>confdefs.h <<_ACEOF +@%:@define sig_atomic_t int +_ACEOF + +fi + +fi + + +# The cast to long int works around a bug in the HP C Compiler +# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects +# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. +# This bug is HP SR number 8606223364. +{ $as_echo "$as_me:$LINENO: checking size of char" >&5 +$as_echo_n "checking size of char... " >&6; } +if test "${ac_cv_sizeof_char+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + # Depending upon the size, compute the lo and hi bounds. +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (char))) >= 0)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_lo=0 ac_mid=0 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (char))) <= $ac_mid)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=$ac_mid; break +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_lo=`expr $ac_mid + 1` + if test $ac_lo -le $ac_mid; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid + 1` +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + done +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (char))) < 0)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=-1 ac_mid=-1 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (char))) >= $ac_mid)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_lo=$ac_mid; break +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_hi=`expr '(' $ac_mid ')' - 1` + if test $ac_mid -le $ac_hi; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid` +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + done +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_lo= ac_hi= +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +# Binary search between lo and hi bounds. +while test "x$ac_lo" != "x$ac_hi"; do + ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo` + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (char))) <= $ac_mid)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=$ac_mid +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_lo=`expr '(' $ac_mid ')' + 1` +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +done +case $ac_lo in +?*) ac_cv_sizeof_char=$ac_lo;; +'') if test "$ac_cv_type_char" = yes; then + { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +{ { $as_echo "$as_me:$LINENO: error: cannot compute sizeof (char) +See \`config.log' for more details." >&5 +$as_echo "$as_me: error: cannot compute sizeof (char) +See \`config.log' for more details." >&2;} + { (exit 77); exit 77; }; }; } + else + ac_cv_sizeof_char=0 + fi ;; +esac +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +static long int longval () { return (long int) (sizeof (char)); } +static unsigned long int ulongval () { return (long int) (sizeof (char)); } +@%:@include +@%:@include +int +main () +{ + + FILE *f = fopen ("conftest.val", "w"); + if (! f) + return 1; + if (((long int) (sizeof (char))) < 0) + { + long int i = longval (); + if (i != ((long int) (sizeof (char)))) + return 1; + fprintf (f, "%ld", i); + } + else + { + unsigned long int i = ulongval (); + if (i != ((long int) (sizeof (char)))) + return 1; + fprintf (f, "%lu", i); + } + /* Do not output a trailing newline, as this causes \r\n confusion + on some platforms. */ + return ferror (f) || fclose (f) != 0; + + ; + return 0; +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_sizeof_char=`cat conftest.val` +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +if test "$ac_cv_type_char" = yes; then + { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +{ { $as_echo "$as_me:$LINENO: error: cannot compute sizeof (char) +See \`config.log' for more details." >&5 +$as_echo "$as_me: error: cannot compute sizeof (char) +See \`config.log' for more details." >&2;} + { (exit 77); exit 77; }; }; } + else + ac_cv_sizeof_char=0 + fi +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi +rm -f conftest.val +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_sizeof_char" >&5 +$as_echo "$ac_cv_sizeof_char" >&6; } + + + +cat >>confdefs.h <<_ACEOF +@%:@define SIZEOF_CHAR $ac_cv_sizeof_char +_ACEOF + + +# The cast to long int works around a bug in the HP C Compiler +# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects +# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. +# This bug is HP SR number 8606223364. +{ $as_echo "$as_me:$LINENO: checking size of short" >&5 +$as_echo_n "checking size of short... " >&6; } +if test "${ac_cv_sizeof_short+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + # Depending upon the size, compute the lo and hi bounds. +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (short))) >= 0)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_lo=0 ac_mid=0 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (short))) <= $ac_mid)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=$ac_mid; break +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_lo=`expr $ac_mid + 1` + if test $ac_lo -le $ac_mid; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid + 1` +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + done +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (short))) < 0)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=-1 ac_mid=-1 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (short))) >= $ac_mid)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_lo=$ac_mid; break +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_hi=`expr '(' $ac_mid ')' - 1` + if test $ac_mid -le $ac_hi; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid` +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + done +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_lo= ac_hi= +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +# Binary search between lo and hi bounds. +while test "x$ac_lo" != "x$ac_hi"; do + ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo` + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (short))) <= $ac_mid)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=$ac_mid +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_lo=`expr '(' $ac_mid ')' + 1` +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +done +case $ac_lo in +?*) ac_cv_sizeof_short=$ac_lo;; +'') if test "$ac_cv_type_short" = yes; then + { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +{ { $as_echo "$as_me:$LINENO: error: cannot compute sizeof (short) +See \`config.log' for more details." >&5 +$as_echo "$as_me: error: cannot compute sizeof (short) +See \`config.log' for more details." >&2;} + { (exit 77); exit 77; }; }; } + else + ac_cv_sizeof_short=0 + fi ;; +esac +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +static long int longval () { return (long int) (sizeof (short)); } +static unsigned long int ulongval () { return (long int) (sizeof (short)); } +@%:@include +@%:@include +int +main () +{ + + FILE *f = fopen ("conftest.val", "w"); + if (! f) + return 1; + if (((long int) (sizeof (short))) < 0) + { + long int i = longval (); + if (i != ((long int) (sizeof (short)))) + return 1; + fprintf (f, "%ld", i); + } + else + { + unsigned long int i = ulongval (); + if (i != ((long int) (sizeof (short)))) + return 1; + fprintf (f, "%lu", i); + } + /* Do not output a trailing newline, as this causes \r\n confusion + on some platforms. */ + return ferror (f) || fclose (f) != 0; + + ; + return 0; +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_sizeof_short=`cat conftest.val` +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +if test "$ac_cv_type_short" = yes; then + { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +{ { $as_echo "$as_me:$LINENO: error: cannot compute sizeof (short) +See \`config.log' for more details." >&5 +$as_echo "$as_me: error: cannot compute sizeof (short) +See \`config.log' for more details." >&2;} + { (exit 77); exit 77; }; }; } + else + ac_cv_sizeof_short=0 + fi +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi +rm -f conftest.val +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_sizeof_short" >&5 +$as_echo "$ac_cv_sizeof_short" >&6; } + + + +cat >>confdefs.h <<_ACEOF +@%:@define SIZEOF_SHORT $ac_cv_sizeof_short +_ACEOF + + +# The cast to long int works around a bug in the HP C Compiler +# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects +# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. +# This bug is HP SR number 8606223364. +{ $as_echo "$as_me:$LINENO: checking size of int" >&5 +$as_echo_n "checking size of int... " >&6; } +if test "${ac_cv_sizeof_int+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + # Depending upon the size, compute the lo and hi bounds. +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (int))) >= 0)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_lo=0 ac_mid=0 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (int))) <= $ac_mid)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=$ac_mid; break +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_lo=`expr $ac_mid + 1` + if test $ac_lo -le $ac_mid; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid + 1` +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + done +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (int))) < 0)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=-1 ac_mid=-1 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (int))) >= $ac_mid)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_lo=$ac_mid; break +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_hi=`expr '(' $ac_mid ')' - 1` + if test $ac_mid -le $ac_hi; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid` +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + done +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_lo= ac_hi= +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +# Binary search between lo and hi bounds. +while test "x$ac_lo" != "x$ac_hi"; do + ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo` + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (int))) <= $ac_mid)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=$ac_mid +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_lo=`expr '(' $ac_mid ')' + 1` +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +done +case $ac_lo in +?*) ac_cv_sizeof_int=$ac_lo;; +'') if test "$ac_cv_type_int" = yes; then + { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +{ { $as_echo "$as_me:$LINENO: error: cannot compute sizeof (int) +See \`config.log' for more details." >&5 +$as_echo "$as_me: error: cannot compute sizeof (int) +See \`config.log' for more details." >&2;} + { (exit 77); exit 77; }; }; } + else + ac_cv_sizeof_int=0 + fi ;; +esac +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +static long int longval () { return (long int) (sizeof (int)); } +static unsigned long int ulongval () { return (long int) (sizeof (int)); } +@%:@include +@%:@include +int +main () +{ + + FILE *f = fopen ("conftest.val", "w"); + if (! f) + return 1; + if (((long int) (sizeof (int))) < 0) + { + long int i = longval (); + if (i != ((long int) (sizeof (int)))) + return 1; + fprintf (f, "%ld", i); + } + else + { + unsigned long int i = ulongval (); + if (i != ((long int) (sizeof (int)))) + return 1; + fprintf (f, "%lu", i); + } + /* Do not output a trailing newline, as this causes \r\n confusion + on some platforms. */ + return ferror (f) || fclose (f) != 0; + + ; + return 0; +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_sizeof_int=`cat conftest.val` +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +if test "$ac_cv_type_int" = yes; then + { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +{ { $as_echo "$as_me:$LINENO: error: cannot compute sizeof (int) +See \`config.log' for more details." >&5 +$as_echo "$as_me: error: cannot compute sizeof (int) +See \`config.log' for more details." >&2;} + { (exit 77); exit 77; }; }; } + else + ac_cv_sizeof_int=0 + fi +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi +rm -f conftest.val +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_sizeof_int" >&5 +$as_echo "$ac_cv_sizeof_int" >&6; } + + + +cat >>confdefs.h <<_ACEOF +@%:@define SIZEOF_INT $ac_cv_sizeof_int +_ACEOF + + +# The cast to long int works around a bug in the HP C Compiler +# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects +# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. +# This bug is HP SR number 8606223364. +{ $as_echo "$as_me:$LINENO: checking size of long" >&5 +$as_echo_n "checking size of long... " >&6; } +if test "${ac_cv_sizeof_long+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + # Depending upon the size, compute the lo and hi bounds. +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (long))) >= 0)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_lo=0 ac_mid=0 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (long))) <= $ac_mid)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=$ac_mid; break +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_lo=`expr $ac_mid + 1` + if test $ac_lo -le $ac_mid; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid + 1` +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + done +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (long))) < 0)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=-1 ac_mid=-1 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (long))) >= $ac_mid)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_lo=$ac_mid; break +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_hi=`expr '(' $ac_mid ')' - 1` + if test $ac_mid -le $ac_hi; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid` +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + done +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_lo= ac_hi= +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +# Binary search between lo and hi bounds. +while test "x$ac_lo" != "x$ac_hi"; do + ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo` + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (long))) <= $ac_mid)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=$ac_mid +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_lo=`expr '(' $ac_mid ')' + 1` +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +done +case $ac_lo in +?*) ac_cv_sizeof_long=$ac_lo;; +'') if test "$ac_cv_type_long" = yes; then + { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +{ { $as_echo "$as_me:$LINENO: error: cannot compute sizeof (long) +See \`config.log' for more details." >&5 +$as_echo "$as_me: error: cannot compute sizeof (long) +See \`config.log' for more details." >&2;} + { (exit 77); exit 77; }; }; } + else + ac_cv_sizeof_long=0 + fi ;; +esac +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +static long int longval () { return (long int) (sizeof (long)); } +static unsigned long int ulongval () { return (long int) (sizeof (long)); } +@%:@include +@%:@include +int +main () +{ + + FILE *f = fopen ("conftest.val", "w"); + if (! f) + return 1; + if (((long int) (sizeof (long))) < 0) + { + long int i = longval (); + if (i != ((long int) (sizeof (long)))) + return 1; + fprintf (f, "%ld", i); + } + else + { + unsigned long int i = ulongval (); + if (i != ((long int) (sizeof (long)))) + return 1; + fprintf (f, "%lu", i); + } + /* Do not output a trailing newline, as this causes \r\n confusion + on some platforms. */ + return ferror (f) || fclose (f) != 0; + + ; + return 0; +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_sizeof_long=`cat conftest.val` +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +if test "$ac_cv_type_long" = yes; then + { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +{ { $as_echo "$as_me:$LINENO: error: cannot compute sizeof (long) +See \`config.log' for more details." >&5 +$as_echo "$as_me: error: cannot compute sizeof (long) +See \`config.log' for more details." >&2;} + { (exit 77); exit 77; }; }; } + else + ac_cv_sizeof_long=0 + fi +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi +rm -f conftest.val +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_sizeof_long" >&5 +$as_echo "$ac_cv_sizeof_long" >&6; } + + + +cat >>confdefs.h <<_ACEOF +@%:@define SIZEOF_LONG $ac_cv_sizeof_long +_ACEOF + + +# The cast to long int works around a bug in the HP C Compiler +# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects +# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. +# This bug is HP SR number 8606223364. +{ $as_echo "$as_me:$LINENO: checking size of char *" >&5 +$as_echo_n "checking size of char *... " >&6; } +if test "${ac_cv_sizeof_char_p+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + # Depending upon the size, compute the lo and hi bounds. +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (char *))) >= 0)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_lo=0 ac_mid=0 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (char *))) <= $ac_mid)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=$ac_mid; break +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_lo=`expr $ac_mid + 1` + if test $ac_lo -le $ac_mid; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid + 1` +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + done +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (char *))) < 0)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=-1 ac_mid=-1 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (char *))) >= $ac_mid)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_lo=$ac_mid; break +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_hi=`expr '(' $ac_mid ')' - 1` + if test $ac_mid -le $ac_hi; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid` +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + done +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_lo= ac_hi= +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +# Binary search between lo and hi bounds. +while test "x$ac_lo" != "x$ac_hi"; do + ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo` + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (char *))) <= $ac_mid)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=$ac_mid +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_lo=`expr '(' $ac_mid ')' + 1` +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +done +case $ac_lo in +?*) ac_cv_sizeof_char_p=$ac_lo;; +'') if test "$ac_cv_type_char_p" = yes; then + { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +{ { $as_echo "$as_me:$LINENO: error: cannot compute sizeof (char *) +See \`config.log' for more details." >&5 +$as_echo "$as_me: error: cannot compute sizeof (char *) +See \`config.log' for more details." >&2;} + { (exit 77); exit 77; }; }; } + else + ac_cv_sizeof_char_p=0 + fi ;; +esac +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +static long int longval () { return (long int) (sizeof (char *)); } +static unsigned long int ulongval () { return (long int) (sizeof (char *)); } +@%:@include +@%:@include +int +main () +{ + + FILE *f = fopen ("conftest.val", "w"); + if (! f) + return 1; + if (((long int) (sizeof (char *))) < 0) + { + long int i = longval (); + if (i != ((long int) (sizeof (char *)))) + return 1; + fprintf (f, "%ld", i); + } + else + { + unsigned long int i = ulongval (); + if (i != ((long int) (sizeof (char *)))) + return 1; + fprintf (f, "%lu", i); + } + /* Do not output a trailing newline, as this causes \r\n confusion + on some platforms. */ + return ferror (f) || fclose (f) != 0; + + ; + return 0; +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_sizeof_char_p=`cat conftest.val` +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +if test "$ac_cv_type_char_p" = yes; then + { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +{ { $as_echo "$as_me:$LINENO: error: cannot compute sizeof (char *) +See \`config.log' for more details." >&5 +$as_echo "$as_me: error: cannot compute sizeof (char *) +See \`config.log' for more details." >&2;} + { (exit 77); exit 77; }; }; } + else + ac_cv_sizeof_char_p=0 + fi +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi +rm -f conftest.val +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_sizeof_char_p" >&5 +$as_echo "$ac_cv_sizeof_char_p" >&6; } + + + +cat >>confdefs.h <<_ACEOF +@%:@define SIZEOF_CHAR_P $ac_cv_sizeof_char_p +_ACEOF + + +# The cast to long int works around a bug in the HP C Compiler +# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects +# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. +# This bug is HP SR number 8606223364. +{ $as_echo "$as_me:$LINENO: checking size of double" >&5 +$as_echo_n "checking size of double... " >&6; } +if test "${ac_cv_sizeof_double+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + # Depending upon the size, compute the lo and hi bounds. +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (double))) >= 0)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_lo=0 ac_mid=0 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (double))) <= $ac_mid)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=$ac_mid; break +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_lo=`expr $ac_mid + 1` + if test $ac_lo -le $ac_mid; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid + 1` +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + done +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (double))) < 0)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=-1 ac_mid=-1 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (double))) >= $ac_mid)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_lo=$ac_mid; break +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_hi=`expr '(' $ac_mid ')' - 1` + if test $ac_mid -le $ac_hi; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid` +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + done +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_lo= ac_hi= +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +# Binary search between lo and hi bounds. +while test "x$ac_lo" != "x$ac_hi"; do + ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo` + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (double))) <= $ac_mid)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=$ac_mid +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_lo=`expr '(' $ac_mid ')' + 1` +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +done +case $ac_lo in +?*) ac_cv_sizeof_double=$ac_lo;; +'') if test "$ac_cv_type_double" = yes; then + { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +{ { $as_echo "$as_me:$LINENO: error: cannot compute sizeof (double) +See \`config.log' for more details." >&5 +$as_echo "$as_me: error: cannot compute sizeof (double) +See \`config.log' for more details." >&2;} + { (exit 77); exit 77; }; }; } + else + ac_cv_sizeof_double=0 + fi ;; +esac +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +static long int longval () { return (long int) (sizeof (double)); } +static unsigned long int ulongval () { return (long int) (sizeof (double)); } +@%:@include +@%:@include +int +main () +{ + + FILE *f = fopen ("conftest.val", "w"); + if (! f) + return 1; + if (((long int) (sizeof (double))) < 0) + { + long int i = longval (); + if (i != ((long int) (sizeof (double)))) + return 1; + fprintf (f, "%ld", i); + } + else + { + unsigned long int i = ulongval (); + if (i != ((long int) (sizeof (double)))) + return 1; + fprintf (f, "%lu", i); + } + /* Do not output a trailing newline, as this causes \r\n confusion + on some platforms. */ + return ferror (f) || fclose (f) != 0; + + ; + return 0; +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_sizeof_double=`cat conftest.val` +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +if test "$ac_cv_type_double" = yes; then + { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +{ { $as_echo "$as_me:$LINENO: error: cannot compute sizeof (double) +See \`config.log' for more details." >&5 +$as_echo "$as_me: error: cannot compute sizeof (double) +See \`config.log' for more details." >&2;} + { (exit 77); exit 77; }; }; } + else + ac_cv_sizeof_double=0 + fi +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi +rm -f conftest.val +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_sizeof_double" >&5 +$as_echo "$ac_cv_sizeof_double" >&6; } + + + +cat >>confdefs.h <<_ACEOF +@%:@define SIZEOF_DOUBLE $ac_cv_sizeof_double +_ACEOF + + +# The cast to long int works around a bug in the HP C Compiler +# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects +# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. +# This bug is HP SR number 8606223364. +{ $as_echo "$as_me:$LINENO: checking size of long long" >&5 +$as_echo_n "checking size of long long... " >&6; } +if test "${ac_cv_sizeof_long_long+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + # Depending upon the size, compute the lo and hi bounds. +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (long long))) >= 0)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_lo=0 ac_mid=0 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (long long))) <= $ac_mid)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=$ac_mid; break +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_lo=`expr $ac_mid + 1` + if test $ac_lo -le $ac_mid; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid + 1` +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + done +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (long long))) < 0)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=-1 ac_mid=-1 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (long long))) >= $ac_mid)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_lo=$ac_mid; break +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_hi=`expr '(' $ac_mid ')' - 1` + if test $ac_mid -le $ac_hi; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid` +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + done +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_lo= ac_hi= +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +# Binary search between lo and hi bounds. +while test "x$ac_lo" != "x$ac_hi"; do + ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo` + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array @<:@1 - 2 * !(((long int) (sizeof (long long))) <= $ac_mid)@:>@; +test_array @<:@0@:>@ = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=$ac_mid +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_lo=`expr '(' $ac_mid ')' + 1` +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +done +case $ac_lo in +?*) ac_cv_sizeof_long_long=$ac_lo;; +'') if test "$ac_cv_type_long_long" = yes; then + { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +{ { $as_echo "$as_me:$LINENO: error: cannot compute sizeof (long long) +See \`config.log' for more details." >&5 +$as_echo "$as_me: error: cannot compute sizeof (long long) +See \`config.log' for more details." >&2;} + { (exit 77); exit 77; }; }; } + else + ac_cv_sizeof_long_long=0 + fi ;; +esac +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +static long int longval () { return (long int) (sizeof (long long)); } +static unsigned long int ulongval () { return (long int) (sizeof (long long)); } +@%:@include +@%:@include +int +main () +{ + + FILE *f = fopen ("conftest.val", "w"); + if (! f) + return 1; + if (((long int) (sizeof (long long))) < 0) + { + long int i = longval (); + if (i != ((long int) (sizeof (long long)))) + return 1; + fprintf (f, "%ld", i); + } + else + { + unsigned long int i = ulongval (); + if (i != ((long int) (sizeof (long long)))) + return 1; + fprintf (f, "%lu", i); + } + /* Do not output a trailing newline, as this causes \r\n confusion + on some platforms. */ + return ferror (f) || fclose (f) != 0; + + ; + return 0; +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_sizeof_long_long=`cat conftest.val` +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +if test "$ac_cv_type_long_long" = yes; then + { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +{ { $as_echo "$as_me:$LINENO: error: cannot compute sizeof (long long) +See \`config.log' for more details." >&5 +$as_echo "$as_me: error: cannot compute sizeof (long long) +See \`config.log' for more details." >&2;} + { (exit 77); exit 77; }; }; } + else + ac_cv_sizeof_long_long=0 + fi +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi +rm -f conftest.val +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_sizeof_long_long" >&5 +$as_echo "$ac_cv_sizeof_long_long" >&6; } + + + +cat >>confdefs.h <<_ACEOF +@%:@define SIZEOF_LONG_LONG $ac_cv_sizeof_long_long +_ACEOF + + + +{ $as_echo "$as_me:$LINENO: checking for u_int" >&5 +$as_echo_n "checking for u_int... " >&6; } +if test "${ac_cv_type_u_int+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type_u_int=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (u_int)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((u_int))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_u_int=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_u_int" >&5 +$as_echo "$ac_cv_type_u_int" >&6; } +if test "x$ac_cv_type_u_int" = x""yes; then + : +else + +cat >>confdefs.h <<_ACEOF +@%:@define u_int unsigned int +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for u_long" >&5 +$as_echo_n "checking for u_long... " >&6; } +if test "${ac_cv_type_u_long+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type_u_long=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (u_long)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((u_long))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_u_long=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_u_long" >&5 +$as_echo "$ac_cv_type_u_long" >&6; } +if test "x$ac_cv_type_u_long" = x""yes; then + : +else + +cat >>confdefs.h <<_ACEOF +@%:@define u_long unsigned long +_ACEOF + +fi + + + +if test "$ac_cv_sizeof_short" = 2; then + { $as_echo "$as_me:$LINENO: checking for bits16_t" >&5 +$as_echo_n "checking for bits16_t... " >&6; } +if test "${ac_cv_type_bits16_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type_bits16_t=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (bits16_t)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((bits16_t))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_bits16_t=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_bits16_t" >&5 +$as_echo "$ac_cv_type_bits16_t" >&6; } +if test "x$ac_cv_type_bits16_t" = x""yes; then + : +else + +cat >>confdefs.h <<_ACEOF +@%:@define bits16_t short +_ACEOF + +fi + +elif test "$ac_cv_sizeof_char" = 2; then + { $as_echo "$as_me:$LINENO: checking for bits16_t" >&5 +$as_echo_n "checking for bits16_t... " >&6; } +if test "${ac_cv_type_bits16_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type_bits16_t=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (bits16_t)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((bits16_t))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_bits16_t=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_bits16_t" >&5 +$as_echo "$ac_cv_type_bits16_t" >&6; } +if test "x$ac_cv_type_bits16_t" = x""yes; then + : +else + +cat >>confdefs.h <<_ACEOF +@%:@define bits16_t char +_ACEOF + +fi + +else + { $as_echo "$as_me:$LINENO: checking for bits16_t" >&5 +$as_echo_n "checking for bits16_t... " >&6; } +if test "${ac_cv_type_bits16_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type_bits16_t=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (bits16_t)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((bits16_t))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_bits16_t=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_bits16_t" >&5 +$as_echo "$ac_cv_type_bits16_t" >&6; } +if test "x$ac_cv_type_bits16_t" = x""yes; then + : +else + +cat >>confdefs.h <<_ACEOF +@%:@define bits16_t short +_ACEOF + +fi + +fi + + +if test "$ac_cv_sizeof_short" = 2; then + { $as_echo "$as_me:$LINENO: checking for u_bits16_t" >&5 +$as_echo_n "checking for u_bits16_t... " >&6; } +if test "${ac_cv_type_u_bits16_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type_u_bits16_t=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (u_bits16_t)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((u_bits16_t))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_u_bits16_t=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_u_bits16_t" >&5 +$as_echo "$ac_cv_type_u_bits16_t" >&6; } +if test "x$ac_cv_type_u_bits16_t" = x""yes; then + : +else + +cat >>confdefs.h <<_ACEOF +@%:@define u_bits16_t unsigned short +_ACEOF + +fi + +elif test "$ac_cv_sizeof_char" = 2; then + { $as_echo "$as_me:$LINENO: checking for u_bits16_t" >&5 +$as_echo_n "checking for u_bits16_t... " >&6; } +if test "${ac_cv_type_u_bits16_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type_u_bits16_t=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (u_bits16_t)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((u_bits16_t))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_u_bits16_t=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_u_bits16_t" >&5 +$as_echo "$ac_cv_type_u_bits16_t" >&6; } +if test "x$ac_cv_type_u_bits16_t" = x""yes; then + : +else + +cat >>confdefs.h <<_ACEOF +@%:@define u_bits16_t unsigned char +_ACEOF + +fi + +else + { $as_echo "$as_me:$LINENO: checking for u_bits16_t" >&5 +$as_echo_n "checking for u_bits16_t... " >&6; } +if test "${ac_cv_type_u_bits16_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type_u_bits16_t=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (u_bits16_t)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((u_bits16_t))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_u_bits16_t=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_u_bits16_t" >&5 +$as_echo "$ac_cv_type_u_bits16_t" >&6; } +if test "x$ac_cv_type_u_bits16_t" = x""yes; then + : +else + +cat >>confdefs.h <<_ACEOF +@%:@define u_bits16_t unsigned short +_ACEOF + +fi + +fi + + +if test "$ac_cv_sizeof_int" = 4; then + { $as_echo "$as_me:$LINENO: checking for bits32_t" >&5 +$as_echo_n "checking for bits32_t... " >&6; } +if test "${ac_cv_type_bits32_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type_bits32_t=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (bits32_t)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((bits32_t))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_bits32_t=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_bits32_t" >&5 +$as_echo "$ac_cv_type_bits32_t" >&6; } +if test "x$ac_cv_type_bits32_t" = x""yes; then + : +else + +cat >>confdefs.h <<_ACEOF +@%:@define bits32_t int +_ACEOF + +fi + +elif test "$ac_cv_sizeof_long" = 4; then + { $as_echo "$as_me:$LINENO: checking for bits32_t" >&5 +$as_echo_n "checking for bits32_t... " >&6; } +if test "${ac_cv_type_bits32_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type_bits32_t=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (bits32_t)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((bits32_t))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_bits32_t=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_bits32_t" >&5 +$as_echo "$ac_cv_type_bits32_t" >&6; } +if test "x$ac_cv_type_bits32_t" = x""yes; then + : +else + +cat >>confdefs.h <<_ACEOF +@%:@define bits32_t long +_ACEOF + +fi + +else + { $as_echo "$as_me:$LINENO: checking for bits32_t" >&5 +$as_echo_n "checking for bits32_t... " >&6; } +if test "${ac_cv_type_bits32_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type_bits32_t=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (bits32_t)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((bits32_t))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_bits32_t=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_bits32_t" >&5 +$as_echo "$ac_cv_type_bits32_t" >&6; } +if test "x$ac_cv_type_bits32_t" = x""yes; then + : +else + +cat >>confdefs.h <<_ACEOF +@%:@define bits32_t int +_ACEOF + +fi + +fi + + +if test "$ac_cv_sizeof_int" = 4; then + { $as_echo "$as_me:$LINENO: checking for u_bits32_t" >&5 +$as_echo_n "checking for u_bits32_t... " >&6; } +if test "${ac_cv_type_u_bits32_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type_u_bits32_t=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (u_bits32_t)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((u_bits32_t))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_u_bits32_t=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_u_bits32_t" >&5 +$as_echo "$ac_cv_type_u_bits32_t" >&6; } +if test "x$ac_cv_type_u_bits32_t" = x""yes; then + : +else + +cat >>confdefs.h <<_ACEOF +@%:@define u_bits32_t unsigned int +_ACEOF + +fi + +elif test "$ac_cv_sizeof_long" = 4; then + { $as_echo "$as_me:$LINENO: checking for u_bits32_t" >&5 +$as_echo_n "checking for u_bits32_t... " >&6; } +if test "${ac_cv_type_u_bits32_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type_u_bits32_t=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (u_bits32_t)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((u_bits32_t))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_u_bits32_t=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_u_bits32_t" >&5 +$as_echo "$ac_cv_type_u_bits32_t" >&6; } +if test "x$ac_cv_type_u_bits32_t" = x""yes; then + : +else + +cat >>confdefs.h <<_ACEOF +@%:@define u_bits32_t unsigned long +_ACEOF + +fi + +else + { $as_echo "$as_me:$LINENO: checking for u_bits32_t" >&5 +$as_echo_n "checking for u_bits32_t... " >&6; } +if test "${ac_cv_type_u_bits32_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type_u_bits32_t=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (u_bits32_t)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((u_bits32_t))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_u_bits32_t=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_u_bits32_t" >&5 +$as_echo "$ac_cv_type_u_bits32_t" >&6; } +if test "x$ac_cv_type_u_bits32_t" = x""yes; then + : +else + +cat >>confdefs.h <<_ACEOF +@%:@define u_bits32_t unsigned int +_ACEOF + +fi + +fi + + +if test "$ac_cv_sizeof_char_p" = 8; then + { $as_echo "$as_me:$LINENO: checking for bits64_t" >&5 +$as_echo_n "checking for bits64_t... " >&6; } +if test "${ac_cv_type_bits64_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type_bits64_t=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (bits64_t)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((bits64_t))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_bits64_t=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_bits64_t" >&5 +$as_echo "$ac_cv_type_bits64_t" >&6; } +if test "x$ac_cv_type_bits64_t" = x""yes; then + : +else + +cat >>confdefs.h <<_ACEOF +@%:@define bits64_t char * +_ACEOF + +fi + +elif test "$ac_cv_sizeof_double" = 8; then + { $as_echo "$as_me:$LINENO: checking for bits64_t" >&5 +$as_echo_n "checking for bits64_t... " >&6; } +if test "${ac_cv_type_bits64_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type_bits64_t=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (bits64_t)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((bits64_t))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_bits64_t=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_bits64_t" >&5 +$as_echo "$ac_cv_type_bits64_t" >&6; } +if test "x$ac_cv_type_bits64_t" = x""yes; then + : +else + +cat >>confdefs.h <<_ACEOF +@%:@define bits64_t double +_ACEOF + +fi + +elif test -n "$ac_cv_type_long_long" && test "$ac_cv_sizeof_long_long" = 8; then + { $as_echo "$as_me:$LINENO: checking for bits64_t" >&5 +$as_echo_n "checking for bits64_t... " >&6; } +if test "${ac_cv_type_bits64_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type_bits64_t=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (bits64_t)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((bits64_t))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_bits64_t=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_bits64_t" >&5 +$as_echo "$ac_cv_type_bits64_t" >&6; } +if test "x$ac_cv_type_bits64_t" = x""yes; then + : +else + +cat >>confdefs.h <<_ACEOF +@%:@define bits64_t long long +_ACEOF + +fi + +elif test "$ac_cv_sizeof_long" = 8; then + { $as_echo "$as_me:$LINENO: checking for bits64_t" >&5 +$as_echo_n "checking for bits64_t... " >&6; } +if test "${ac_cv_type_bits64_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type_bits64_t=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (bits64_t)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((bits64_t))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_bits64_t=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_bits64_t" >&5 +$as_echo "$ac_cv_type_bits64_t" >&6; } +if test "x$ac_cv_type_bits64_t" = x""yes; then + : +else + +cat >>confdefs.h <<_ACEOF +@%:@define bits64_t long +_ACEOF + +fi + +else + { $as_echo "$as_me:$LINENO: checking for bits64_t" >&5 +$as_echo_n "checking for bits64_t... " >&6; } +if test "${ac_cv_type_bits64_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type_bits64_t=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (bits64_t)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((bits64_t))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_bits64_t=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_bits64_t" >&5 +$as_echo "$ac_cv_type_bits64_t" >&6; } +if test "x$ac_cv_type_bits64_t" = x""yes; then + : +else + +cat >>confdefs.h <<_ACEOF +@%:@define bits64_t double +_ACEOF + +fi + +fi + + + +if test "$ac_cv_sizeof_int" = "$ac_cv_sizeof_char_p"; then + { $as_echo "$as_me:$LINENO: checking for ptrdiff_t" >&5 +$as_echo_n "checking for ptrdiff_t... " >&6; } +if test "${ac_cv_type_ptrdiff_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type_ptrdiff_t=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (ptrdiff_t)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((ptrdiff_t))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_ptrdiff_t=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_ptrdiff_t" >&5 +$as_echo "$ac_cv_type_ptrdiff_t" >&6; } +if test "x$ac_cv_type_ptrdiff_t" = x""yes; then + : +else + +cat >>confdefs.h <<_ACEOF +@%:@define ptrdiff_t int +_ACEOF + +fi + +elif test "$ac_cv_sizeof_long" = "$ac_cv_sizeof_char_p"; then + { $as_echo "$as_me:$LINENO: checking for ptrdiff_t" >&5 +$as_echo_n "checking for ptrdiff_t... " >&6; } +if test "${ac_cv_type_ptrdiff_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type_ptrdiff_t=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (ptrdiff_t)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((ptrdiff_t))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_ptrdiff_t=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_ptrdiff_t" >&5 +$as_echo "$ac_cv_type_ptrdiff_t" >&6; } +if test "x$ac_cv_type_ptrdiff_t" = x""yes; then + : +else + +cat >>confdefs.h <<_ACEOF +@%:@define ptrdiff_t long +_ACEOF + +fi + +elif test "$ac_cv_type_long_long" = yes && test "$ac_cv_sizeof_long_long" = "$ac_cv_sizeof_char_p"; then + { $as_echo "$as_me:$LINENO: checking for ptrdiff_t" >&5 +$as_echo_n "checking for ptrdiff_t... " >&6; } +if test "${ac_cv_type_ptrdiff_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type_ptrdiff_t=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (ptrdiff_t)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((ptrdiff_t))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_ptrdiff_t=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_ptrdiff_t" >&5 +$as_echo "$ac_cv_type_ptrdiff_t" >&6; } +if test "x$ac_cv_type_ptrdiff_t" = x""yes; then + : +else + +cat >>confdefs.h <<_ACEOF +@%:@define ptrdiff_t long long +_ACEOF + +fi + +else + { $as_echo "$as_me:$LINENO: checking for ptrdiff_t" >&5 +$as_echo_n "checking for ptrdiff_t... " >&6; } +if test "${ac_cv_type_ptrdiff_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_type_ptrdiff_t=no +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof (ptrdiff_t)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +if (sizeof ((ptrdiff_t))) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_ptrdiff_t=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_ptrdiff_t" >&5 +$as_echo "$ac_cv_type_ptrdiff_t" >&6; } +if test "x$ac_cv_type_ptrdiff_t" = x""yes; then + : +else + +cat >>confdefs.h <<_ACEOF +@%:@define ptrdiff_t int +_ACEOF + +fi + +fi + + +{ $as_echo "$as_me:$LINENO: checking whether stat file-mode macros are broken" >&5 +$as_echo_n "checking whether stat file-mode macros are broken... " >&6; } +if test "${ac_cv_header_stat_broken+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#include + +#if defined S_ISBLK && defined S_IFDIR +extern char c1[S_ISBLK (S_IFDIR) ? -1 : 1]; +#endif + +#if defined S_ISBLK && defined S_IFCHR +extern char c2[S_ISBLK (S_IFCHR) ? -1 : 1]; +#endif + +#if defined S_ISLNK && defined S_IFREG +extern char c3[S_ISLNK (S_IFREG) ? -1 : 1]; +#endif + +#if defined S_ISSOCK && defined S_IFREG +extern char c4[S_ISSOCK (S_IFREG) ? -1 : 1]; +#endif + +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_header_stat_broken=no +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_header_stat_broken=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_stat_broken" >&5 +$as_echo "$ac_cv_header_stat_broken" >&6; } +if test $ac_cv_header_stat_broken = yes; then + +cat >>confdefs.h <<\_ACEOF +@%:@define STAT_MACROS_BROKEN 1 +_ACEOF + +fi + + +{ $as_echo "$as_me:$LINENO: checking whether @%:@! works in shell scripts" >&5 +$as_echo_n "checking whether @%:@! works in shell scripts... " >&6; } +if test "${ac_cv_sys_interpreter+set}" = set; then + $as_echo_n "(cached) " >&6 +else + echo '#! /bin/cat +exit 69 +' >conftest +chmod u+x conftest +(SHELL=/bin/sh; export SHELL; ./conftest >/dev/null 2>&1) +if test $? -ne 69; then + ac_cv_sys_interpreter=yes +else + ac_cv_sys_interpreter=no +fi +rm -f conftest +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_sys_interpreter" >&5 +$as_echo "$ac_cv_sys_interpreter" >&6; } +interpval=$ac_cv_sys_interpreter + +if test $ac_cv_sys_interpreter = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_HASH_BANG_EXEC 1 +_ACEOF + +fi + +if test "$ac_cv_func_lstat" = "no"; then +{ $as_echo "$as_me:$LINENO: checking for lstat" >&5 +$as_echo_n "checking for lstat... " >&6; } +if test "${bash_cv_func_lstat+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#include + +int +main () +{ + lstat(".",(struct stat *)0); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + bash_cv_func_lstat=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + bash_cv_func_lstat=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $bash_cv_func_lstat" >&5 +$as_echo "$bash_cv_func_lstat" >&6; } +if test $bash_cv_func_lstat = yes; then + cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_LSTAT 1 +_ACEOF + +fi + +fi + + +{ $as_echo "$as_me:$LINENO: checking whether the ctype macros accept non-ascii characters" >&5 +$as_echo_n "checking whether the ctype macros accept non-ascii characters... " >&6; } +if test "${bash_cv_func_ctype_nonascii+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + { $as_echo "$as_me:$LINENO: WARNING: cannot check ctype macros if cross compiling -- defaulting to no" >&5 +$as_echo "$as_me: WARNING: cannot check ctype macros if cross compiling -- defaulting to no" >&2;} + bash_cv_func_ctype_nonascii=no + +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#ifdef HAVE_LOCALE_H +#include +#endif +#include +#include + +main(c, v) +int c; +char *v[]; +{ + char *deflocale; + unsigned char x; + int r1, r2; + +#ifdef HAVE_SETLOCALE + /* We take a shot here. If that locale is not known, try the + system default. We try this one because '\342' (226) is + known to be a printable character in that locale. */ + deflocale = setlocale(LC_ALL, "en_US.ISO8859-1"); + if (deflocale == 0) + deflocale = setlocale(LC_ALL, ""); +#endif + + x = '\342'; + r1 = isprint(x); + x -= 128; + r2 = isprint(x); + exit (r1 == 0 || r2 == 0); +} + +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + bash_cv_func_ctype_nonascii=yes +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +bash_cv_func_ctype_nonascii=no +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_func_ctype_nonascii" >&5 +$as_echo "$bash_cv_func_ctype_nonascii" >&6; } +if test $bash_cv_func_ctype_nonascii = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define CTYPE_NON_ASCII 1 +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking if dup2 fails to clear the close-on-exec flag" >&5 +$as_echo_n "checking if dup2 fails to clear the close-on-exec flag... " >&6; } +if test "${bash_cv_dup2_broken+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + { $as_echo "$as_me:$LINENO: WARNING: cannot check dup2 if cross compiling -- defaulting to no" >&5 +$as_echo "$as_me: WARNING: cannot check dup2 if cross compiling -- defaulting to no" >&2;} + bash_cv_dup2_broken=no +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#include +main() +{ + int fd1, fd2, fl; + fd1 = open("/dev/null", 2); + if (fcntl(fd1, 2, 1) < 0) + exit(1); + fd2 = dup2(fd1, 1); + if (fd2 < 0) + exit(2); + fl = fcntl(fd2, 1, 0); + /* fl will be 1 if dup2 did not reset the close-on-exec flag. */ + exit(fl != 1); +} + +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + bash_cv_dup2_broken=yes +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +bash_cv_dup2_broken=no +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + + +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_dup2_broken" >&5 +$as_echo "$bash_cv_dup2_broken" >&6; } +if test $bash_cv_dup2_broken = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define DUP2_BROKEN 1 +_ACEOF + +fi + + +{ $as_echo "$as_me:$LINENO: checking whether pgrps need synchronization" >&5 +$as_echo_n "checking whether pgrps need synchronization... " >&6; } +if test "${bash_cv_pgrp_pipe+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + { $as_echo "$as_me:$LINENO: WARNING: cannot check pgrp synchronization if cross compiling -- defaulting to no" >&5 +$as_echo "$as_me: WARNING: cannot check pgrp synchronization if cross compiling -- defaulting to no" >&2;} + bash_cv_pgrp_pipe=no +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#ifdef HAVE_UNISTD_H +# include +#endif +main() +{ +# ifdef GETPGRP_VOID +# define getpgID() getpgrp() +# else +# define getpgID() getpgrp(0) +# define setpgid(x,y) setpgrp(x,y) +# endif + int pid1, pid2, fds[2]; + int status; + char ok; + + switch (pid1 = fork()) { + case -1: + exit(1); + case 0: + setpgid(0, getpid()); + exit(0); + } + setpgid(pid1, pid1); + + sleep(2); /* let first child die */ + + if (pipe(fds) < 0) + exit(2); + + switch (pid2 = fork()) { + case -1: + exit(3); + case 0: + setpgid(0, pid1); + ok = getpgID() == pid1; + write(fds[1], &ok, 1); + exit(0); + } + setpgid(pid2, pid1); + + close(fds[1]); + if (read(fds[0], &ok, 1) != 1) + exit(4); + wait(&status); + wait(&status); + exit(ok ? 0 : 5); +} + +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + bash_cv_pgrp_pipe=no +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +bash_cv_pgrp_pipe=yes +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + + +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_pgrp_pipe" >&5 +$as_echo "$bash_cv_pgrp_pipe" >&6; } +if test $bash_cv_pgrp_pipe = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define PGRP_PIPE 1 +_ACEOF + +fi + + +{ $as_echo "$as_me:$LINENO: checking for type of signal functions" >&5 +$as_echo_n "checking for type of signal functions... " >&6; } +if test "${bash_cv_signal_vintage+set}" = set; then + $as_echo_n "(cached) " >&6 +else + + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +int +main () +{ + + sigset_t ss; + struct sigaction sa; + sigemptyset(&ss); sigsuspend(&ss); + sigaction(SIGINT, &sa, (struct sigaction *) 0); + sigprocmask(SIG_BLOCK, &ss, (sigset_t *) 0); + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + bash_cv_signal_vintage=posix +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +int +main () +{ + + int mask = sigmask(SIGINT); + sigsetmask(mask); sigblock(mask); sigpause(mask); + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + bash_cv_signal_vintage=4.2bsd +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + + #include + RETSIGTYPE foo() { } +int +main () +{ + + int mask = sigmask(SIGINT); + sigset(SIGINT, foo); sigrelse(SIGINT); + sighold(SIGINT); sigpause(SIGINT); + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + bash_cv_signal_vintage=svr3 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + bash_cv_signal_vintage=v7 + +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext + +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext + +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext + +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_signal_vintage" >&5 +$as_echo "$bash_cv_signal_vintage" >&6; } +if test "$bash_cv_signal_vintage" = posix; then +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_POSIX_SIGNALS 1 +_ACEOF + +elif test "$bash_cv_signal_vintage" = "4.2bsd"; then +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_BSD_SIGNALS 1 +_ACEOF + +elif test "$bash_cv_signal_vintage" = svr3; then +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_USG_SIGHOLD 1 +_ACEOF + +fi + + +{ $as_echo "$as_me:$LINENO: checking for sys_errlist and sys_nerr" >&5 +$as_echo_n "checking for sys_errlist and sys_nerr... " >&6; } +if test "${bash_cv_sys_errlist+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +int +main () +{ +extern char *sys_errlist[]; + extern int sys_nerr; + char *msg = sys_errlist[sys_nerr - 1]; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + bash_cv_sys_errlist=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + bash_cv_sys_errlist=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $bash_cv_sys_errlist" >&5 +$as_echo "$bash_cv_sys_errlist" >&6; } +if test $bash_cv_sys_errlist = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_SYS_ERRLIST 1 +_ACEOF + +fi + + +{ $as_echo "$as_me:$LINENO: checking for sys_siglist in system C library" >&5 +$as_echo_n "checking for sys_siglist in system C library... " >&6; } +if test "${bash_cv_sys_siglist+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + { $as_echo "$as_me:$LINENO: WARNING: cannot check for sys_siglist if cross compiling -- defaulting to no" >&5 +$as_echo "$as_me: WARNING: cannot check for sys_siglist if cross compiling -- defaulting to no" >&2;} + bash_cv_sys_siglist=no +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#include +#ifdef HAVE_UNISTD_H +#include +#endif +#if !HAVE_DECL_SYS_SIGLIST +extern char *sys_siglist[]; +#endif +main() +{ +char *msg = sys_siglist[2]; +exit(msg == 0); +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + bash_cv_sys_siglist=yes +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +bash_cv_sys_siglist=no +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_sys_siglist" >&5 +$as_echo "$bash_cv_sys_siglist" >&6; } +if test $bash_cv_sys_siglist = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_SYS_SIGLIST 1 +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for _sys_siglist in signal.h or unistd.h" >&5 +$as_echo_n "checking for _sys_siglist in signal.h or unistd.h... " >&6; } +if test "${bash_cv_decl_under_sys_siglist+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#include +#ifdef HAVE_UNISTD_H +#include +#endif +int +main () +{ + char *msg = _sys_siglist[2]; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + bash_cv_decl_under_sys_siglist=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + bash_cv_decl_under_sys_siglist=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $bash_cv_decl_under_sys_siglist" >&5 +$as_echo "$bash_cv_decl_under_sys_siglist" >&6; } +if test $bash_cv_decl_under_sys_siglist = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define UNDER_SYS_SIGLIST_DECLARED 1 +_ACEOF + +fi + + +{ $as_echo "$as_me:$LINENO: checking for _sys_siglist in system C library" >&5 +$as_echo_n "checking for _sys_siglist in system C library... " >&6; } +if test "${bash_cv_under_sys_siglist+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + { $as_echo "$as_me:$LINENO: WARNING: cannot check for _sys_siglist if cross compiling -- defaulting to no" >&5 +$as_echo "$as_me: WARNING: cannot check for _sys_siglist if cross compiling -- defaulting to no" >&2;} + bash_cv_under_sys_siglist=no +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#include +#ifdef HAVE_UNISTD_H +#include +#endif +#ifndef UNDER_SYS_SIGLIST_DECLARED +extern char *_sys_siglist[]; +#endif +main() +{ +char *msg = (char *)_sys_siglist[2]; +exit(msg == 0); +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + bash_cv_under_sys_siglist=yes +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +bash_cv_under_sys_siglist=no +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_under_sys_siglist" >&5 +$as_echo "$bash_cv_under_sys_siglist" >&6; } +if test $bash_cv_under_sys_siglist = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_UNDER_SYS_SIGLIST 1 +_ACEOF + +fi + + +{ $as_echo "$as_me:$LINENO: checking whether signal handlers are of type void" >&5 +$as_echo_n "checking whether signal handlers are of type void... " >&6; } +if test "${bash_cv_void_sighandler+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#include +#ifdef signal +#undef signal +#endif +#ifdef __cplusplus +extern "C" +#endif +void (*signal ()) (); +int +main () +{ +int i; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + bash_cv_void_sighandler=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + bash_cv_void_sighandler=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $bash_cv_void_sighandler" >&5 +$as_echo "$bash_cv_void_sighandler" >&6; } +if test $bash_cv_void_sighandler = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define VOID_SIGHANDLER 1 +_ACEOF + +fi + + + +{ $as_echo "$as_me:$LINENO: checking for clock_t" >&5 +$as_echo_n "checking for clock_t... " >&6; } +if test "${bash_cv_type_clock_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#if STDC_HEADERS +#include +#include +#endif +#if HAVE_INTTYPES_H +#include +#endif +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "clock_t" >/dev/null 2>&1; then + bash_cv_type_clock_t=yes +else + bash_cv_type_clock_t=no +fi +rm -f conftest* + +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_type_clock_t" >&5 +$as_echo "$bash_cv_type_clock_t" >&6; } + +if test $bash_cv_type_clock_t = no; then + cat >>confdefs.h <<_ACEOF +@%:@define clock_t long +_ACEOF + +fi + + + +{ $as_echo "$as_me:$LINENO: checking for sigset_t" >&5 +$as_echo_n "checking for sigset_t... " >&6; } +if test "${bash_cv_type_sigset_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#if STDC_HEADERS +#include +#include +#endif +#if HAVE_INTTYPES_H +#include +#endif +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "sigset_t" >/dev/null 2>&1; then + bash_cv_type_sigset_t=yes +else + bash_cv_type_sigset_t=no +fi +rm -f conftest* + +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_type_sigset_t" >&5 +$as_echo "$bash_cv_type_sigset_t" >&6; } + +if test $bash_cv_type_sigset_t = no; then + cat >>confdefs.h <<_ACEOF +@%:@define sigset_t int +_ACEOF + +fi + + + +{ $as_echo "$as_me:$LINENO: checking for quad_t" >&5 +$as_echo_n "checking for quad_t... " >&6; } +if test "${bash_cv_type_quad_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#if STDC_HEADERS +#include +#include +#endif +#if HAVE_INTTYPES_H +#include +#endif + + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "quad_t" >/dev/null 2>&1; then + bash_cv_type_quad_t=yes +else + bash_cv_type_quad_t=no +fi +rm -f conftest* + +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_type_quad_t" >&5 +$as_echo "$bash_cv_type_quad_t" >&6; } +if test $bash_cv_type_quad_t = yes; then + cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_QUAD_T 1 +_ACEOF + + fi +if test $bash_cv_type_quad_t = no; then + cat >>confdefs.h <<_ACEOF +@%:@define quad_t long +_ACEOF + +fi + + + +{ $as_echo "$as_me:$LINENO: checking for intmax_t" >&5 +$as_echo_n "checking for intmax_t... " >&6; } +if test "${bash_cv_type_intmax_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#if STDC_HEADERS +#include +#include +#endif +#if HAVE_INTTYPES_H +#include +#endif + + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "intmax_t" >/dev/null 2>&1; then + bash_cv_type_intmax_t=yes +else + bash_cv_type_intmax_t=no +fi +rm -f conftest* + +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_type_intmax_t" >&5 +$as_echo "$bash_cv_type_intmax_t" >&6; } + +if test $bash_cv_type_intmax_t = no; then + cat >>confdefs.h <<_ACEOF +@%:@define intmax_t $bash_cv_type_long_long +_ACEOF + +fi + + + +{ $as_echo "$as_me:$LINENO: checking for uintmax_t" >&5 +$as_echo_n "checking for uintmax_t... " >&6; } +if test "${bash_cv_type_uintmax_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#if STDC_HEADERS +#include +#include +#endif +#if HAVE_INTTYPES_H +#include +#endif + + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "uintmax_t" >/dev/null 2>&1; then + bash_cv_type_uintmax_t=yes +else + bash_cv_type_uintmax_t=no +fi +rm -f conftest* + +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_type_uintmax_t" >&5 +$as_echo "$bash_cv_type_uintmax_t" >&6; } + +if test $bash_cv_type_uintmax_t = no; then + cat >>confdefs.h <<_ACEOF +@%:@define uintmax_t $bash_cv_type_unsigned_long_long +_ACEOF + +fi + +if test "$ac_cv_header_sys_socket_h" = "yes"; then + + +{ $as_echo "$as_me:$LINENO: checking for socklen_t" >&5 +$as_echo_n "checking for socklen_t... " >&6; } +if test "${bash_cv_type_socklen_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#if STDC_HEADERS +#include +#include +#endif +#if HAVE_INTTYPES_H +#include +#endif +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "socklen_t" >/dev/null 2>&1; then + bash_cv_type_socklen_t=yes +else + bash_cv_type_socklen_t=no +fi +rm -f conftest* + +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_type_socklen_t" >&5 +$as_echo "$bash_cv_type_socklen_t" >&6; } +if test $bash_cv_type_socklen_t = yes; then + cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_SOCKLEN_T 1 +_ACEOF + + fi +if test $bash_cv_type_socklen_t = no; then + cat >>confdefs.h <<_ACEOF +@%:@define socklen_t int +_ACEOF + +fi + +fi +{ $as_echo "$as_me:$LINENO: checking for size and type of struct rlimit fields" >&5 +$as_echo_n "checking for size and type of struct rlimit fields... " >&6; } +if test "${bash_cv_type_rlimit+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#include +int +main () +{ +rlim_t xxx; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + bash_cv_type_rlimit=rlim_t +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +if test "$cross_compiling" = yes; then + { $as_echo "$as_me:$LINENO: WARNING: cannot check quad_t if cross compiling -- defaulting to long" >&5 +$as_echo "$as_me: WARNING: cannot check quad_t if cross compiling -- defaulting to long" >&2;} + bash_cv_type_rlimit=long +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#include +#include +main() +{ +#ifdef HAVE_QUAD_T + struct rlimit rl; + if (sizeof(rl.rlim_cur) == sizeof(quad_t)) + exit(0); +#endif + exit(1); +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + bash_cv_type_rlimit=quad_t +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +bash_cv_type_rlimit=long +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_type_rlimit" >&5 +$as_echo "$bash_cv_type_rlimit" >&6; } +if test $bash_cv_type_rlimit = quad_t; then +cat >>confdefs.h <<\_ACEOF +@%:@define RLIMTYPE quad_t +_ACEOF + +elif test $bash_cv_type_rlimit = rlim_t; then +cat >>confdefs.h <<\_ACEOF +@%:@define RLIMTYPE rlim_t +_ACEOF + +fi + + + +{ $as_echo "$as_me:$LINENO: checking for struct termios.c_line" >&5 +$as_echo_n "checking for struct termios.c_line... " >&6; } +if test "${ac_cv_member_struct_termios_c_line+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#include + + +int +main () +{ +static struct termios ac_aggr; +if (ac_aggr.c_line) +return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_member_struct_termios_c_line=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#include + + +int +main () +{ +static struct termios ac_aggr; +if (sizeof ac_aggr.c_line) +return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_member_struct_termios_c_line=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_member_struct_termios_c_line=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_member_struct_termios_c_line" >&5 +$as_echo "$ac_cv_member_struct_termios_c_line" >&6; } +if test "x$ac_cv_member_struct_termios_c_line" = x""yes; then + cat >>confdefs.h <<\_ACEOF +@%:@define TERMIOS_LDISC 1 +_ACEOF + +fi + + + +{ $as_echo "$as_me:$LINENO: checking for struct termio.c_line" >&5 +$as_echo_n "checking for struct termio.c_line... " >&6; } +if test "${ac_cv_member_struct_termio_c_line+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#include + + +int +main () +{ +static struct termio ac_aggr; +if (ac_aggr.c_line) +return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_member_struct_termio_c_line=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#include + + +int +main () +{ +static struct termio ac_aggr; +if (sizeof ac_aggr.c_line) +return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_member_struct_termio_c_line=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_member_struct_termio_c_line=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_member_struct_termio_c_line" >&5 +$as_echo "$ac_cv_member_struct_termio_c_line" >&6; } +if test "x$ac_cv_member_struct_termio_c_line" = x""yes; then + cat >>confdefs.h <<\_ACEOF +@%:@define TERMIO_LDISC 1 +_ACEOF + +fi + + + +{ $as_echo "$as_me:$LINENO: checking for struct dirent.d_ino" >&5 +$as_echo_n "checking for struct dirent.d_ino... " >&6; } +if test "${bash_cv_dirent_has_dino+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#include +#ifdef HAVE_UNISTD_H +# include +#endif /* HAVE_UNISTD_H */ +#if defined(HAVE_DIRENT_H) +# include +#else +# define dirent direct +# ifdef HAVE_SYS_NDIR_H +# include +# endif /* SYSNDIR */ +# ifdef HAVE_SYS_DIR_H +# include +# endif /* SYSDIR */ +# ifdef HAVE_NDIR_H +# include +# endif +#endif /* HAVE_DIRENT_H */ + +int +main () +{ + +struct dirent d; int z; z = d.d_ino; + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + bash_cv_dirent_has_dino=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + bash_cv_dirent_has_dino=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_dirent_has_dino" >&5 +$as_echo "$bash_cv_dirent_has_dino" >&6; } +if test $bash_cv_dirent_has_dino = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_STRUCT_DIRENT_D_INO 1 +_ACEOF + +fi + + +{ $as_echo "$as_me:$LINENO: checking for struct dirent.d_fileno" >&5 +$as_echo_n "checking for struct dirent.d_fileno... " >&6; } +if test "${bash_cv_dirent_has_d_fileno+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#include +#ifdef HAVE_UNISTD_H +# include +#endif /* HAVE_UNISTD_H */ +#if defined(HAVE_DIRENT_H) +# include +#else +# define dirent direct +# ifdef HAVE_SYS_NDIR_H +# include +# endif /* SYSNDIR */ +# ifdef HAVE_SYS_DIR_H +# include +# endif /* SYSDIR */ +# ifdef HAVE_NDIR_H +# include +# endif +#endif /* HAVE_DIRENT_H */ + +int +main () +{ + +struct dirent d; int z; z = d.d_fileno; + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + bash_cv_dirent_has_d_fileno=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + bash_cv_dirent_has_d_fileno=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_dirent_has_d_fileno" >&5 +$as_echo "$bash_cv_dirent_has_d_fileno" >&6; } +if test $bash_cv_dirent_has_d_fileno = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_STRUCT_DIRENT_D_FILENO 1 +_ACEOF + +fi + + +{ $as_echo "$as_me:$LINENO: checking for struct dirent.d_namlen" >&5 +$as_echo_n "checking for struct dirent.d_namlen... " >&6; } +if test "${bash_cv_dirent_has_d_namlen+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#include +#ifdef HAVE_UNISTD_H +# include +#endif /* HAVE_UNISTD_H */ +#if defined(HAVE_DIRENT_H) +# include +#else +# define dirent direct +# ifdef HAVE_SYS_NDIR_H +# include +# endif /* SYSNDIR */ +# ifdef HAVE_SYS_DIR_H +# include +# endif /* SYSDIR */ +# ifdef HAVE_NDIR_H +# include +# endif +#endif /* HAVE_DIRENT_H */ + +int +main () +{ + +struct dirent d; int z; z = d.d_namlen; + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + bash_cv_dirent_has_d_namlen=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + bash_cv_dirent_has_d_namlen=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_dirent_has_d_namlen" >&5 +$as_echo "$bash_cv_dirent_has_d_namlen" >&6; } +if test $bash_cv_dirent_has_d_namlen = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_STRUCT_DIRENT_D_NAMLEN 1 +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for struct winsize in sys/ioctl.h and termios.h" >&5 +$as_echo_n "checking for struct winsize in sys/ioctl.h and termios.h... " >&6; } +if test "${bash_cv_struct_winsize_header+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#include +int +main () +{ +struct winsize x; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + bash_cv_struct_winsize_header=ioctl_h +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#include +int +main () +{ +struct winsize x; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + bash_cv_struct_winsize_header=termios_h +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + bash_cv_struct_winsize_header=other +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +if test $bash_cv_struct_winsize_header = ioctl_h; then + { $as_echo "$as_me:$LINENO: result: sys/ioctl.h" >&5 +$as_echo "sys/ioctl.h" >&6; } + cat >>confdefs.h <<\_ACEOF +@%:@define STRUCT_WINSIZE_IN_SYS_IOCTL 1 +_ACEOF + +elif test $bash_cv_struct_winsize_header = termios_h; then + { $as_echo "$as_me:$LINENO: result: termios.h" >&5 +$as_echo "termios.h" >&6; } + cat >>confdefs.h <<\_ACEOF +@%:@define STRUCT_WINSIZE_IN_TERMIOS 1 +_ACEOF + +else + { $as_echo "$as_me:$LINENO: result: not found" >&5 +$as_echo "not found" >&6; } +fi + +{ $as_echo "$as_me:$LINENO: checking for struct timeval in sys/time.h and time.h" >&5 +$as_echo_n "checking for struct timeval in sys/time.h and time.h... " >&6; } +if test "${bash_cv_struct_timeval+set}" = set; then + $as_echo_n "(cached) " >&6 +else + +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "struct timeval" >/dev/null 2>&1; then + bash_cv_struct_timeval=yes +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "struct timeval" >/dev/null 2>&1; then + bash_cv_struct_timeval=yes +else + bash_cv_struct_timeval=no +fi +rm -f conftest* + +fi +rm -f conftest* + + +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_struct_timeval" >&5 +$as_echo "$bash_cv_struct_timeval" >&6; } +if test $bash_cv_struct_timeval = yes; then + cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_TIMEVAL 1 +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for struct stat.st_blocks" >&5 +$as_echo_n "checking for struct stat.st_blocks... " >&6; } +if test "${ac_cv_member_struct_stat_st_blocks+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static struct stat ac_aggr; +if (ac_aggr.st_blocks) +return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_member_struct_stat_st_blocks=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static struct stat ac_aggr; +if (sizeof ac_aggr.st_blocks) +return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_member_struct_stat_st_blocks=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_member_struct_stat_st_blocks=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_member_struct_stat_st_blocks" >&5 +$as_echo "$ac_cv_member_struct_stat_st_blocks" >&6; } +if test "x$ac_cv_member_struct_stat_st_blocks" = x""yes; then + +cat >>confdefs.h <<_ACEOF +@%:@define HAVE_STRUCT_STAT_ST_BLOCKS 1 +_ACEOF + + +fi + +{ $as_echo "$as_me:$LINENO: checking whether struct tm is in sys/time.h or time.h" >&5 +$as_echo_n "checking whether struct tm is in sys/time.h or time.h... " >&6; } +if test "${ac_cv_struct_tm+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#include + +int +main () +{ +struct tm tm; + int *p = &tm.tm_sec; + return !p; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_struct_tm=time.h +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_struct_tm=sys/time.h +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_struct_tm" >&5 +$as_echo "$ac_cv_struct_tm" >&6; } +if test $ac_cv_struct_tm = sys/time.h; then + +cat >>confdefs.h <<\_ACEOF +@%:@define TM_IN_SYS_TIME 1 +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for struct tm.tm_zone" >&5 +$as_echo_n "checking for struct tm.tm_zone... " >&6; } +if test "${ac_cv_member_struct_tm_tm_zone+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#include <$ac_cv_struct_tm> + + +int +main () +{ +static struct tm ac_aggr; +if (ac_aggr.tm_zone) +return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_member_struct_tm_tm_zone=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#include <$ac_cv_struct_tm> + + +int +main () +{ +static struct tm ac_aggr; +if (sizeof ac_aggr.tm_zone) +return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_member_struct_tm_tm_zone=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_member_struct_tm_tm_zone=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_member_struct_tm_tm_zone" >&5 +$as_echo "$ac_cv_member_struct_tm_tm_zone" >&6; } +if test "x$ac_cv_member_struct_tm_tm_zone" = x""yes; then + +cat >>confdefs.h <<_ACEOF +@%:@define HAVE_STRUCT_TM_TM_ZONE 1 +_ACEOF + + +fi + +if test "$ac_cv_member_struct_tm_tm_zone" = yes; then + +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_TM_ZONE 1 +_ACEOF + +else + { $as_echo "$as_me:$LINENO: checking whether tzname is declared" >&5 +$as_echo_n "checking whether tzname is declared... " >&6; } +if test "${ac_cv_have_decl_tzname+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + +int +main () +{ +#ifndef tzname + (void) tzname; +#endif + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_have_decl_tzname=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_have_decl_tzname=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_have_decl_tzname" >&5 +$as_echo "$ac_cv_have_decl_tzname" >&6; } +if test "x$ac_cv_have_decl_tzname" = x""yes; then + +cat >>confdefs.h <<_ACEOF +@%:@define HAVE_DECL_TZNAME 1 +_ACEOF + + +else + cat >>confdefs.h <<_ACEOF +@%:@define HAVE_DECL_TZNAME 0 +_ACEOF + + +fi + + + { $as_echo "$as_me:$LINENO: checking for tzname" >&5 +$as_echo_n "checking for tzname... " >&6; } +if test "${ac_cv_var_tzname+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#if !HAVE_DECL_TZNAME +extern char *tzname[]; +#endif + +int +main () +{ +return tzname[0][0]; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_var_tzname=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_var_tzname=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_var_tzname" >&5 +$as_echo "$ac_cv_var_tzname" >&6; } + if test $ac_cv_var_tzname = yes; then + +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_TZNAME 1 +_ACEOF + + fi +fi + +{ $as_echo "$as_me:$LINENO: checking for struct timezone in sys/time.h and time.h" >&5 +$as_echo_n "checking for struct timezone in sys/time.h and time.h... " >&6; } +if test "${bash_cv_struct_timezone+set}" = set; then + $as_echo_n "(cached) " >&6 +else + +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "struct timezone" >/dev/null 2>&1; then + bash_cv_struct_timezone=yes +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "struct timezone" >/dev/null 2>&1; then + bash_cv_struct_timezone=yes +else + bash_cv_struct_timezone=no +fi +rm -f conftest* + +fi +rm -f conftest* + + +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_struct_timezone" >&5 +$as_echo "$bash_cv_struct_timezone" >&6; } +if test $bash_cv_struct_timezone = yes; then + cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_STRUCT_TIMEZONE 1 +_ACEOF + +fi + + +{ $as_echo "$as_me:$LINENO: checking for the existence of strsignal" >&5 +$as_echo_n "checking for the existence of strsignal... " >&6; } +if test "${bash_cv_have_strsignal+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#include +int +main () +{ +char *s = (char *)strsignal(2); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + bash_cv_have_strsignal=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + bash_cv_have_strsignal=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_have_strsignal" >&5 +$as_echo "$bash_cv_have_strsignal" >&6; } +if test $bash_cv_have_strsignal = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_STRSIGNAL 1 +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking if opendir() opens non-directories" >&5 +$as_echo_n "checking if opendir() opens non-directories... " >&6; } +if test "${bash_cv_opendir_not_robust+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + { $as_echo "$as_me:$LINENO: WARNING: cannot check opendir if cross compiling -- defaulting to no" >&5 +$as_echo "$as_me: WARNING: cannot check opendir if cross compiling -- defaulting to no" >&2;} + bash_cv_opendir_not_robust=no + +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#include +#include +#ifdef HAVE_UNISTD_H +# include +#endif /* HAVE_UNISTD_H */ +#if defined(HAVE_DIRENT_H) +# include +#else +# define dirent direct +# ifdef HAVE_SYS_NDIR_H +# include +# endif /* SYSNDIR */ +# ifdef HAVE_SYS_DIR_H +# include +# endif /* SYSDIR */ +# ifdef HAVE_NDIR_H +# include +# endif +#endif /* HAVE_DIRENT_H */ +main() +{ +DIR *dir; +int fd, err; +err = mkdir("bash-aclocal", 0700); +if (err < 0) { + perror("mkdir"); + exit(1); +} +unlink("bash-aclocal/not_a_directory"); +fd = open("bash-aclocal/not_a_directory", O_WRONLY|O_CREAT|O_EXCL, 0666); +write(fd, "\n", 1); +close(fd); +dir = opendir("bash-aclocal/not_a_directory"); +unlink("bash-aclocal/not_a_directory"); +rmdir("bash-aclocal"); +exit (dir == 0); +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + bash_cv_opendir_not_robust=yes +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +bash_cv_opendir_not_robust=no +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_opendir_not_robust" >&5 +$as_echo "$bash_cv_opendir_not_robust" >&6; } +if test $bash_cv_opendir_not_robust = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define OPENDIR_NOT_ROBUST 1 +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking whether ulimit can substitute for getdtablesize" >&5 +$as_echo_n "checking whether ulimit can substitute for getdtablesize... " >&6; } +if test "${bash_cv_ulimit_maxfds+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + { $as_echo "$as_me:$LINENO: WARNING: cannot check ulimit if cross compiling -- defaulting to no" >&5 +$as_echo "$as_me: WARNING: cannot check ulimit if cross compiling -- defaulting to no" >&2;} + bash_cv_ulimit_maxfds=no + +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +main() +{ +long maxfds = ulimit(4, 0L); +exit (maxfds == -1L); +} + +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + bash_cv_ulimit_maxfds=yes +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +bash_cv_ulimit_maxfds=no +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_ulimit_maxfds" >&5 +$as_echo "$bash_cv_ulimit_maxfds" >&6; } +if test $bash_cv_ulimit_maxfds = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define ULIMIT_MAXFDS 1 +_ACEOF + +fi + + + + + + + + + + + + + + + + + + + { $as_echo "$as_me:$LINENO: checking whether fpurge is declared" >&5 +$as_echo_n "checking whether fpurge is declared... " >&6; } +if test "${ac_cv_have_decl_fpurge+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include + +int +main () +{ +#ifndef fpurge + (void) fpurge; +#endif + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_have_decl_fpurge=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_have_decl_fpurge=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_have_decl_fpurge" >&5 +$as_echo "$ac_cv_have_decl_fpurge" >&6; } +if test "x$ac_cv_have_decl_fpurge" = x""yes; then + +cat >>confdefs.h <<_ACEOF +@%:@define HAVE_DECL_FPURGE 1 +_ACEOF + + +else + cat >>confdefs.h <<_ACEOF +@%:@define HAVE_DECL_FPURGE 0 +_ACEOF + + +fi + + + +{ $as_echo "$as_me:$LINENO: checking to see if getenv can be redefined" >&5 +$as_echo_n "checking to see if getenv can be redefined... " >&6; } +if test "${bash_cv_getenv_redef+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + { $as_echo "$as_me:$LINENO: WARNING: cannot check getenv redefinition if cross compiling -- defaulting to yes" >&5 +$as_echo "$as_me: WARNING: cannot check getenv redefinition if cross compiling -- defaulting to yes" >&2;} + bash_cv_getenv_redef=yes + +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#ifdef HAVE_UNISTD_H +# include +#endif +#ifndef __STDC__ +# ifndef const +# define const +# endif +#endif +char * +getenv (name) +#if defined (__linux__) || defined (__bsdi__) || defined (convex) + const char *name; +#else + char const *name; +#endif /* !__linux__ && !__bsdi__ && !convex */ +{ +return "42"; +} +main() +{ +char *s; +/* The next allows this program to run, but does not allow bash to link + when it redefines getenv. I'm not really interested in figuring out + why not. */ +#if defined (NeXT) +exit(1); +#endif +s = getenv("ABCDE"); +exit(s == 0); /* force optimizer to leave getenv in */ +} + +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + bash_cv_getenv_redef=yes +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +bash_cv_getenv_redef=no +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_getenv_redef" >&5 +$as_echo "$bash_cv_getenv_redef" >&6; } +if test $bash_cv_getenv_redef = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define CAN_REDEFINE_GETENV 1 +_ACEOF + +fi + +if test "$ac_cv_func_getcwd" = "yes"; then +{ $as_echo "$as_me:$LINENO: checking if getcwd() will dynamically allocate memory with 0 size" >&5 +$as_echo_n "checking if getcwd() will dynamically allocate memory with 0 size... " >&6; } +if test "${bash_cv_getcwd_malloc+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + { $as_echo "$as_me:$LINENO: WARNING: cannot check whether getcwd allocates memory when cross-compiling -- defaulting to no" >&5 +$as_echo "$as_me: WARNING: cannot check whether getcwd allocates memory when cross-compiling -- defaulting to no" >&2;} + bash_cv_getcwd_malloc=no + +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#ifdef HAVE_UNISTD_H +#include +#endif + +main() +{ + char *xpwd; + xpwd = getcwd(0, 0); + exit (xpwd == 0); +} + +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + bash_cv_getcwd_malloc=yes +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +bash_cv_getcwd_malloc=no +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_getcwd_malloc" >&5 +$as_echo "$bash_cv_getcwd_malloc" >&6; } +if test $bash_cv_getcwd_malloc = no; then +cat >>confdefs.h <<\_ACEOF +@%:@define GETCWD_BROKEN 1 +_ACEOF + +case " $LIB@&t@OBJS " in + *" getcwd.$ac_objext "* ) ;; + *) LIB@&t@OBJS="$LIB@&t@OBJS getcwd.$ac_objext" + ;; +esac + +fi + +fi + +{ $as_echo "$as_me:$LINENO: checking for presence of POSIX-style sigsetjmp/siglongjmp" >&5 +$as_echo_n "checking for presence of POSIX-style sigsetjmp/siglongjmp... " >&6; } +if test "${bash_cv_func_sigsetjmp+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + { $as_echo "$as_me:$LINENO: WARNING: cannot check for sigsetjmp/siglongjmp if cross-compiling -- defaulting to missing" >&5 +$as_echo "$as_me: WARNING: cannot check for sigsetjmp/siglongjmp if cross-compiling -- defaulting to missing" >&2;} + bash_cv_func_sigsetjmp=missing + +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#ifdef HAVE_UNISTD_H +#include +#endif +#include +#include +#include + +main() +{ +#if !defined (_POSIX_VERSION) || !defined (HAVE_POSIX_SIGNALS) +exit (1); +#else + +int code; +sigset_t set, oset; +sigjmp_buf xx; + +/* get the mask */ +sigemptyset(&set); +sigemptyset(&oset); +sigprocmask(SIG_BLOCK, (sigset_t *)NULL, &set); +sigprocmask(SIG_BLOCK, (sigset_t *)NULL, &oset); + +/* save it */ +code = sigsetjmp(xx, 1); +if (code) + exit(0); /* could get sigmask and compare to oset here. */ + +/* change it */ +sigaddset(&set, SIGINT); +sigprocmask(SIG_BLOCK, &set, (sigset_t *)NULL); + +/* and siglongjmp */ +siglongjmp(xx, 10); +exit(1); +#endif +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + bash_cv_func_sigsetjmp=present +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +bash_cv_func_sigsetjmp=missing +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_func_sigsetjmp" >&5 +$as_echo "$bash_cv_func_sigsetjmp" >&6; } +if test $bash_cv_func_sigsetjmp = present; then +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_POSIX_SIGSETJMP 1 +_ACEOF + +fi + + +{ $as_echo "$as_me:$LINENO: checking whether or not strcoll and strcmp differ" >&5 +$as_echo_n "checking whether or not strcoll and strcmp differ... " >&6; } +if test "${bash_cv_func_strcoll_broken+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + { $as_echo "$as_me:$LINENO: WARNING: cannot check strcoll if cross compiling -- defaulting to no" >&5 +$as_echo "$as_me: WARNING: cannot check strcoll if cross compiling -- defaulting to no" >&2;} + bash_cv_func_strcoll_broken=no + +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#if defined (HAVE_LOCALE_H) +#include +#endif + +main(c, v) +int c; +char *v[]; +{ + int r1, r2; + char *deflocale, *defcoll; + +#ifdef HAVE_SETLOCALE + deflocale = setlocale(LC_ALL, ""); + defcoll = setlocale(LC_COLLATE, ""); +#endif + +#ifdef HAVE_STRCOLL + /* These two values are taken from tests/glob-test. */ + r1 = strcoll("abd", "aXd"); +#else + r1 = 0; +#endif + r2 = strcmp("abd", "aXd"); + + /* These two should both be greater than 0. It is permissible for + a system to return different values, as long as the sign is the + same. */ + + /* Exit with 1 (failure) if these two values are both > 0, since + this tests whether strcoll(3) is broken with respect to strcmp(3) + in the default locale. */ + exit (r1 > 0 && r2 > 0); +} + +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + bash_cv_func_strcoll_broken=yes +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +bash_cv_func_strcoll_broken=no +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_func_strcoll_broken" >&5 +$as_echo "$bash_cv_func_strcoll_broken" >&6; } +if test $bash_cv_func_strcoll_broken = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define STRCOLL_BROKEN 1 +_ACEOF + +fi + + + +if test "$ac_cv_func_putenv" = "yes"; then + + + +{ $as_echo "$as_me:$LINENO: checking for standard-conformant putenv declaration" >&5 +$as_echo_n "checking for standard-conformant putenv declaration... " >&6; } +if test "${bash_cv_std_putenv+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#if STDC_HEADERS +#include +#include +#endif +#ifndef __STDC__ +# ifndef const +# define const +# endif +#endif +#ifdef PROTOTYPES +extern int putenv (char *); +#else +extern int putenv (); +#endif + +int +main () +{ +return (putenv == 0); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + bash_cv_std_putenv=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + bash_cv_std_putenv=no + +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $bash_cv_std_putenv" >&5 +$as_echo "$bash_cv_std_putenv" >&6; } +if test $bash_cv_std_putenv = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_STD_PUTENV 1 +_ACEOF + +fi + +else +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_STD_PUTENV 1 +_ACEOF + +fi +if test "$ac_cv_func_unsetenv" = "yes"; then + + + +{ $as_echo "$as_me:$LINENO: checking for standard-conformant unsetenv declaration" >&5 +$as_echo_n "checking for standard-conformant unsetenv declaration... " >&6; } +if test "${bash_cv_std_unsetenv+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#if STDC_HEADERS +#include +#include +#endif +#ifndef __STDC__ +# ifndef const +# define const +# endif +#endif +#ifdef PROTOTYPES +extern int unsetenv (const char *); +#else +extern int unsetenv (); +#endif + +int +main () +{ +return (unsetenv == 0); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + bash_cv_std_unsetenv=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + bash_cv_std_unsetenv=no + +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $bash_cv_std_unsetenv" >&5 +$as_echo "$bash_cv_std_unsetenv" >&6; } +if test $bash_cv_std_unsetenv = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_STD_UNSETENV 1 +_ACEOF + +fi + +else +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_STD_UNSETENV 1 +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for printf floating point output in hex notation" >&5 +$as_echo_n "checking for printf floating point output in hex notation... " >&6; } +if test "${bash_cv_printf_a_format+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + { $as_echo "$as_me:$LINENO: WARNING: cannot check printf if cross compiling -- defaulting to no" >&5 +$as_echo "$as_me: WARNING: cannot check printf if cross compiling -- defaulting to no" >&2;} + bash_cv_printf_a_format=no + +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#include + +int +main() +{ + double y = 0.0; + char abuf[1024]; + + sprintf(abuf, "%A", y); + exit(strchr(abuf, 'P') == (char *)0); +} + +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + bash_cv_printf_a_format=yes +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +bash_cv_printf_a_format=no +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_printf_a_format" >&5 +$as_echo "$bash_cv_printf_a_format" >&6; } +if test $bash_cv_printf_a_format = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_PRINTF_A_FORMAT 1 +_ACEOF + +fi + + + + +{ $as_echo "$as_me:$LINENO: checking if signal handlers must be reinstalled when invoked" >&5 +$as_echo_n "checking if signal handlers must be reinstalled when invoked... " >&6; } +if test "${bash_cv_must_reinstall_sighandlers+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + { $as_echo "$as_me:$LINENO: WARNING: cannot check signal handling if cross compiling -- defaulting to no" >&5 +$as_echo "$as_me: WARNING: cannot check signal handling if cross compiling -- defaulting to no" >&2;} + bash_cv_must_reinstall_sighandlers=no + +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#ifdef HAVE_UNISTD_H +#include +#endif + +typedef RETSIGTYPE sigfunc(); + +int nsigint; + +#ifdef HAVE_POSIX_SIGNALS +sigfunc * +set_signal_handler(sig, handler) + int sig; + sigfunc *handler; +{ + struct sigaction act, oact; + act.sa_handler = handler; + act.sa_flags = 0; + sigemptyset (&act.sa_mask); + sigemptyset (&oact.sa_mask); + sigaction (sig, &act, &oact); + return (oact.sa_handler); +} +#else +#define set_signal_handler(s, h) signal(s, h) +#endif + +RETSIGTYPE +sigint(s) +int s; +{ + nsigint++; +} + +main() +{ + nsigint = 0; + set_signal_handler(SIGINT, sigint); + kill((int)getpid(), SIGINT); + kill((int)getpid(), SIGINT); + exit(nsigint != 2); +} + +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + bash_cv_must_reinstall_sighandlers=no +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +bash_cv_must_reinstall_sighandlers=yes +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_must_reinstall_sighandlers" >&5 +$as_echo "$bash_cv_must_reinstall_sighandlers" >&6; } +if test $bash_cv_must_reinstall_sighandlers = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define MUST_REINSTALL_SIGHANDLERS 1 +_ACEOF + +fi + + +{ $as_echo "$as_me:$LINENO: checking for presence of necessary job control definitions" >&5 +$as_echo_n "checking for presence of necessary job control definitions... " >&6; } +if test "${bash_cv_job_control_missing+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + { $as_echo "$as_me:$LINENO: WARNING: cannot check job control if cross-compiling -- defaulting to missing" >&5 +$as_echo "$as_me: WARNING: cannot check job control if cross-compiling -- defaulting to missing" >&2;} + bash_cv_job_control_missing=missing + +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#ifdef HAVE_SYS_WAIT_H +#include +#endif +#ifdef HAVE_UNISTD_H +#include +#endif +#include + +/* Add more tests in here as appropriate. */ +main() +{ +/* signal type */ +#if !defined (HAVE_POSIX_SIGNALS) && !defined (HAVE_BSD_SIGNALS) +exit(1); +#endif + +/* signals and tty control. */ +#if !defined (SIGTSTP) || !defined (SIGSTOP) || !defined (SIGCONT) +exit (1); +#endif + +/* process control */ +#if !defined (WNOHANG) || !defined (WUNTRACED) +exit(1); +#endif + +/* Posix systems have tcgetpgrp and waitpid. */ +#if defined (_POSIX_VERSION) && !defined (HAVE_TCGETPGRP) +exit(1); +#endif + +#if defined (_POSIX_VERSION) && !defined (HAVE_WAITPID) +exit(1); +#endif + +/* Other systems have TIOCSPGRP/TIOCGPRGP and wait3. */ +#if !defined (_POSIX_VERSION) && !defined (HAVE_WAIT3) +exit(1); +#endif + +exit(0); +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + bash_cv_job_control_missing=present +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +bash_cv_job_control_missing=missing +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_job_control_missing" >&5 +$as_echo "$bash_cv_job_control_missing" >&6; } +if test $bash_cv_job_control_missing = missing; then +cat >>confdefs.h <<\_ACEOF +@%:@define JOB_CONTROL_MISSING 1 +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for presence of named pipes" >&5 +$as_echo_n "checking for presence of named pipes... " >&6; } +if test "${bash_cv_sys_named_pipes+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + { $as_echo "$as_me:$LINENO: WARNING: cannot check for named pipes if cross-compiling -- defaulting to missing" >&5 +$as_echo "$as_me: WARNING: cannot check for named pipes if cross-compiling -- defaulting to missing" >&2;} + bash_cv_sys_named_pipes=missing + +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#include +#ifdef HAVE_UNISTD_H +#include +#endif + +/* Add more tests in here as appropriate. */ +main() +{ +int fd, err; + +#if defined (HAVE_MKFIFO) +exit (0); +#endif + +#if !defined (S_IFIFO) && (defined (_POSIX_VERSION) && !defined (S_ISFIFO)) +exit (1); +#endif + +#if defined (NeXT) +exit (1); +#endif +err = mkdir("bash-aclocal", 0700); +if (err < 0) { + perror ("mkdir"); + exit(1); +} +fd = mknod ("bash-aclocal/sh-np-autoconf", 0666 | S_IFIFO, 0); +if (fd == -1) { + rmdir ("bash-aclocal"); + exit (1); +} +close(fd); +unlink ("bash-aclocal/sh-np-autoconf"); +rmdir ("bash-aclocal"); +exit(0); +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + bash_cv_sys_named_pipes=present +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +bash_cv_sys_named_pipes=missing +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_sys_named_pipes" >&5 +$as_echo "$bash_cv_sys_named_pipes" >&6; } +if test $bash_cv_sys_named_pipes = missing; then +cat >>confdefs.h <<\_ACEOF +@%:@define NAMED_PIPES_MISSING 1 +_ACEOF + +fi + + +{ $as_echo "$as_me:$LINENO: checking whether termios.h defines TIOCGWINSZ" >&5 +$as_echo_n "checking whether termios.h defines TIOCGWINSZ... " >&6; } +if test "${ac_cv_sys_tiocgwinsz_in_termios_h+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#include +#ifdef TIOCGWINSZ + yes +#endif + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "yes" >/dev/null 2>&1; then + ac_cv_sys_tiocgwinsz_in_termios_h=yes +else + ac_cv_sys_tiocgwinsz_in_termios_h=no +fi +rm -f conftest* + +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_sys_tiocgwinsz_in_termios_h" >&5 +$as_echo "$ac_cv_sys_tiocgwinsz_in_termios_h" >&6; } + +if test $ac_cv_sys_tiocgwinsz_in_termios_h != yes; then + { $as_echo "$as_me:$LINENO: checking whether sys/ioctl.h defines TIOCGWINSZ" >&5 +$as_echo_n "checking whether sys/ioctl.h defines TIOCGWINSZ... " >&6; } +if test "${ac_cv_sys_tiocgwinsz_in_sys_ioctl_h+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#include +#ifdef TIOCGWINSZ + yes +#endif + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "yes" >/dev/null 2>&1; then + ac_cv_sys_tiocgwinsz_in_sys_ioctl_h=yes +else + ac_cv_sys_tiocgwinsz_in_sys_ioctl_h=no +fi +rm -f conftest* + +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_sys_tiocgwinsz_in_sys_ioctl_h" >&5 +$as_echo "$ac_cv_sys_tiocgwinsz_in_sys_ioctl_h" >&6; } + + if test $ac_cv_sys_tiocgwinsz_in_sys_ioctl_h = yes; then + +cat >>confdefs.h <<\_ACEOF +@%:@define GWINSZ_IN_SYS_IOCTL 1 +_ACEOF + + fi +fi + +{ $as_echo "$as_me:$LINENO: checking for TIOCSTAT in sys/ioctl.h" >&5 +$as_echo_n "checking for TIOCSTAT in sys/ioctl.h... " >&6; } +if test "${bash_cv_tiocstat_in_ioctl+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#include +int +main () +{ +int x = TIOCSTAT; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + bash_cv_tiocstat_in_ioctl=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + bash_cv_tiocstat_in_ioctl=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_tiocstat_in_ioctl" >&5 +$as_echo "$bash_cv_tiocstat_in_ioctl" >&6; } +if test $bash_cv_tiocstat_in_ioctl = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define TIOCSTAT_IN_SYS_IOCTL 1 +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for FIONREAD in sys/ioctl.h" >&5 +$as_echo_n "checking for FIONREAD in sys/ioctl.h... " >&6; } +if test "${bash_cv_fionread_in_ioctl+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +#include +int +main () +{ +int x = FIONREAD; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + bash_cv_fionread_in_ioctl=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + bash_cv_fionread_in_ioctl=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_fionread_in_ioctl" >&5 +$as_echo "$bash_cv_fionread_in_ioctl" >&6; } +if test $bash_cv_fionread_in_ioctl = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define FIONREAD_IN_SYS_IOCTL 1 +_ACEOF + +fi + + + +{ $as_echo "$as_me:$LINENO: checking whether WCONTINUED flag to waitpid is unavailable or available but broken" >&5 +$as_echo_n "checking whether WCONTINUED flag to waitpid is unavailable or available but broken... " >&6; } +if test "${bash_cv_wcontinued_broken+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + { $as_echo "$as_me:$LINENO: WARNING: cannot check WCONTINUED if cross compiling -- defaulting to no" >&5 +$as_echo "$as_me: WARNING: cannot check WCONTINUED if cross compiling -- defaulting to no" >&2;} + bash_cv_wcontinued_broken=no + +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#include +#include +#include + +#ifndef errno +extern int errno; +#endif +main() +{ + int x; + + x = waitpid(-1, (int *)0, WNOHANG|WCONTINUED); + if (x == -1 && errno == EINVAL) + exit (1); + else + exit (0); +} + +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + bash_cv_wcontinued_broken=no +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +bash_cv_wcontinued_broken=yes +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_wcontinued_broken" >&5 +$as_echo "$bash_cv_wcontinued_broken" >&6; } +if test $bash_cv_wcontinued_broken = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define WCONTINUED_BROKEN 1 +_ACEOF + +fi + + +{ $as_echo "$as_me:$LINENO: checking for speed_t in sys/types.h" >&5 +$as_echo_n "checking for speed_t in sys/types.h... " >&6; } +if test "${bash_cv_speed_t_in_sys_types+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +int +main () +{ +speed_t x; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + bash_cv_speed_t_in_sys_types=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + bash_cv_speed_t_in_sys_types=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_speed_t_in_sys_types" >&5 +$as_echo "$bash_cv_speed_t_in_sys_types" >&6; } +if test $bash_cv_speed_t_in_sys_types = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define SPEED_T_IN_SYS_TYPES 1 +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking whether getpw functions are declared in pwd.h" >&5 +$as_echo_n "checking whether getpw functions are declared in pwd.h... " >&6; } +if test "${bash_cv_getpw_declared+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#ifdef HAVE_UNISTD_H +# include +#endif +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "getpwuid" >/dev/null 2>&1; then + bash_cv_getpw_declared=yes +else + bash_cv_getpw_declared=no +fi +rm -f conftest* + +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_getpw_declared" >&5 +$as_echo "$bash_cv_getpw_declared" >&6; } +if test $bash_cv_getpw_declared = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_GETPW_DECLS 1 +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for unusable real-time signals due to large values" >&5 +$as_echo_n "checking for unusable real-time signals due to large values... " >&6; } +if test "${bash_cv_unusable_rtsigs+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + { $as_echo "$as_me:$LINENO: WARNING: cannot check real-time signals if cross compiling -- defaulting to yes" >&5 +$as_echo "$as_me: WARNING: cannot check real-time signals if cross compiling -- defaulting to yes" >&2;} + bash_cv_unusable_rtsigs=yes + +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#include + +#ifndef NSIG +# define NSIG 64 +#endif + +main () +{ + int n_sigs = 2 * NSIG; +#ifdef SIGRTMIN + int rtmin = SIGRTMIN; +#else + int rtmin = 0; +#endif + + exit(rtmin < n_sigs); +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + bash_cv_unusable_rtsigs=yes +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +bash_cv_unusable_rtsigs=no +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_unusable_rtsigs" >&5 +$as_echo "$bash_cv_unusable_rtsigs" >&6; } +if test $bash_cv_unusable_rtsigs = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define UNUSABLE_RT_SIGNALS 1 +_ACEOF + +fi + + + + + +if test "$bash_cv_sys_siglist" = no && test "$bash_cv_under_sys_siglist" = no && test "$bash_cv_have_strsignal" = no; then + SIGLIST_O=siglist.o +else + SIGLIST_O= +fi + + + +case "$host_os" in +hpux*) { $as_echo "$as_me:$LINENO: checking whether $host_os needs _KERNEL for RLIMIT defines" >&5 +$as_echo_n "checking whether $host_os needs _KERNEL for RLIMIT defines... " >&6; } +if test "${bash_cv_kernel_rlimit+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#include + +int +main () +{ + + int f; + f = RLIMIT_DATA; + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + bash_cv_kernel_rlimit=no +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#define _KERNEL +#include +#undef _KERNEL + +int +main () +{ + + int f; + f = RLIMIT_DATA; + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + bash_cv_kernel_rlimit=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + bash_cv_kernel_rlimit=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_kernel_rlimit" >&5 +$as_echo "$bash_cv_kernel_rlimit" >&6; } +if test $bash_cv_kernel_rlimit = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define RLIMIT_NEEDS_KERNEL 1 +_ACEOF + +fi + ;; +esac + +if test "$opt_readline" = yes; then +case "$host_os" in +aix*) prefer_curses=yes ;; +esac + +if test "X$bash_cv_termcap_lib" = "X"; then +_bash_needmsg=yes +else +{ $as_echo "$as_me:$LINENO: checking which library has the termcap functions" >&5 +$as_echo_n "checking which library has the termcap functions... " >&6; } +_bash_needmsg= +fi +if test "${bash_cv_termcap_lib+set}" = set; then + $as_echo_n "(cached) " >&6 +else + { $as_echo "$as_me:$LINENO: checking for tgetent" >&5 +$as_echo_n "checking for tgetent... " >&6; } +if test "${ac_cv_func_tgetent+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define tgetent to an innocuous variant, in case declares tgetent. + For example, HP-UX 11i declares gettimeofday. */ +#define tgetent innocuous_tgetent + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char tgetent (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef tgetent + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char tgetent (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_tgetent || defined __stub___tgetent +choke me +#endif + +int +main () +{ +return tgetent (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_func_tgetent=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_func_tgetent=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_tgetent" >&5 +$as_echo "$ac_cv_func_tgetent" >&6; } +if test "x$ac_cv_func_tgetent" = x""yes; then + bash_cv_termcap_lib=libc +else + { $as_echo "$as_me:$LINENO: checking for tgetent in -ltermcap" >&5 +$as_echo_n "checking for tgetent in -ltermcap... " >&6; } +if test "${ac_cv_lib_termcap_tgetent+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ltermcap $LIBS" +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char tgetent (); +int +main () +{ +return tgetent (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_lib_termcap_tgetent=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_lib_termcap_tgetent=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_termcap_tgetent" >&5 +$as_echo "$ac_cv_lib_termcap_tgetent" >&6; } +if test "x$ac_cv_lib_termcap_tgetent" = x""yes; then + bash_cv_termcap_lib=libtermcap +else + { $as_echo "$as_me:$LINENO: checking for tgetent in -ltinfo" >&5 +$as_echo_n "checking for tgetent in -ltinfo... " >&6; } +if test "${ac_cv_lib_tinfo_tgetent+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ltinfo $LIBS" +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char tgetent (); +int +main () +{ +return tgetent (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_lib_tinfo_tgetent=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_lib_tinfo_tgetent=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_tinfo_tgetent" >&5 +$as_echo "$ac_cv_lib_tinfo_tgetent" >&6; } +if test "x$ac_cv_lib_tinfo_tgetent" = x""yes; then + bash_cv_termcap_lib=libtinfo +else + { $as_echo "$as_me:$LINENO: checking for tgetent in -lcurses" >&5 +$as_echo_n "checking for tgetent in -lcurses... " >&6; } +if test "${ac_cv_lib_curses_tgetent+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lcurses $LIBS" +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char tgetent (); +int +main () +{ +return tgetent (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_lib_curses_tgetent=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_lib_curses_tgetent=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_curses_tgetent" >&5 +$as_echo "$ac_cv_lib_curses_tgetent" >&6; } +if test "x$ac_cv_lib_curses_tgetent" = x""yes; then + bash_cv_termcap_lib=libcurses +else + { $as_echo "$as_me:$LINENO: checking for tgetent in -lncurses" >&5 +$as_echo_n "checking for tgetent in -lncurses... " >&6; } +if test "${ac_cv_lib_ncurses_tgetent+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lncurses $LIBS" +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char tgetent (); +int +main () +{ +return tgetent (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_lib_ncurses_tgetent=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_lib_ncurses_tgetent=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_ncurses_tgetent" >&5 +$as_echo "$ac_cv_lib_ncurses_tgetent" >&6; } +if test "x$ac_cv_lib_ncurses_tgetent" = x""yes; then + bash_cv_termcap_lib=libncurses +else + bash_cv_termcap_lib=gnutermcap +fi + +fi + +fi + +fi + +fi + +fi + +if test "X$_bash_needmsg" = "Xyes"; then +{ $as_echo "$as_me:$LINENO: checking which library has the termcap functions" >&5 +$as_echo_n "checking which library has the termcap functions... " >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: using $bash_cv_termcap_lib" >&5 +$as_echo "using $bash_cv_termcap_lib" >&6; } +if test $bash_cv_termcap_lib = gnutermcap && test -z "$prefer_curses"; then +LDFLAGS="$LDFLAGS -L./lib/termcap" +TERMCAP_LIB="./lib/termcap/libtermcap.a" +TERMCAP_DEP="./lib/termcap/libtermcap.a" +elif test $bash_cv_termcap_lib = libtermcap && test -z "$prefer_curses"; then +TERMCAP_LIB=-ltermcap +TERMCAP_DEP= +elif test $bash_cv_termcap_lib = libtinfo; then +TERMCAP_LIB=-ltinfo +TERMCAP_DEP= +elif test $bash_cv_termcap_lib = libncurses; then +TERMCAP_LIB=-lncurses +TERMCAP_DEP= +elif test $bash_cv_termcap_lib = libc; then +TERMCAP_LIB= +TERMCAP_DEP= +else +TERMCAP_LIB=-lcurses +TERMCAP_DEP= +fi + +fi + + + +{ $as_echo "$as_me:$LINENO: checking whether /dev/fd is available" >&5 +$as_echo_n "checking whether /dev/fd is available... " >&6; } +if test "${bash_cv_dev_fd+set}" = set; then + $as_echo_n "(cached) " >&6 +else + bash_cv_dev_fd="" +if test -d /dev/fd && (exec test -r /dev/fd/0 < /dev/null) ; then +# check for systems like FreeBSD 5 that only provide /dev/fd/[012] + if (exec test -r /dev/fd/3 3&5 +$as_echo "$bash_cv_dev_fd" >&6; } +if test $bash_cv_dev_fd = "standard"; then + cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_DEV_FD 1 +_ACEOF + + cat >>confdefs.h <<\_ACEOF +@%:@define DEV_FD_PREFIX "/dev/fd/" +_ACEOF + +elif test $bash_cv_dev_fd = "whacky"; then + cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_DEV_FD 1 +_ACEOF + + cat >>confdefs.h <<\_ACEOF +@%:@define DEV_FD_PREFIX "/proc/self/fd/" +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking whether /dev/stdin stdout stderr are available" >&5 +$as_echo_n "checking whether /dev/stdin stdout stderr are available... " >&6; } +if test "${bash_cv_dev_stdin+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test -d /dev/fd && (exec test -r /dev/stdin < /dev/null) ; then + bash_cv_dev_stdin=present + elif test -d /proc/self/fd && (exec test -r /dev/stdin < /dev/null) ; then + bash_cv_dev_stdin=present + else + bash_cv_dev_stdin=absent + fi + +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_dev_stdin" >&5 +$as_echo "$bash_cv_dev_stdin" >&6; } +if test $bash_cv_dev_stdin = "present"; then + cat >>confdefs.h <<\_ACEOF +@%:@define HAVE_DEV_STDIN 1 +_ACEOF + +fi + +{ $as_echo "$as_me:$LINENO: checking for default mail directory" >&5 +$as_echo_n "checking for default mail directory... " >&6; } +if test "${bash_cv_mail_dir+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test -d /var/mail; then + bash_cv_mail_dir=/var/mail + elif test -d /var/spool/mail; then + bash_cv_mail_dir=/var/spool/mail + elif test -d /usr/mail; then + bash_cv_mail_dir=/usr/mail + elif test -d /usr/spool/mail; then + bash_cv_mail_dir=/usr/spool/mail + else + bash_cv_mail_dir=unknown + fi + +fi + +{ $as_echo "$as_me:$LINENO: result: $bash_cv_mail_dir" >&5 +$as_echo "$bash_cv_mail_dir" >&6; } +cat >>confdefs.h <<_ACEOF +@%:@define DEFAULT_MAIL_DIRECTORY "$bash_cv_mail_dir" +_ACEOF + + + +if test "$bash_cv_job_control_missing" = missing; then + opt_job_control=no +fi + +if test "$opt_job_control" = yes; then +cat >>confdefs.h <<\_ACEOF +@%:@define JOB_CONTROL 1 +_ACEOF + +JOBS_O=jobs.o +else +JOBS_O=nojobs.o +fi + + + + +LOCAL_DEFS=-DSHELL + + +case "${host_os}" in +sysv4.2*) cat >>confdefs.h <<\_ACEOF +@%:@define SVR4_2 1 +_ACEOF + + cat >>confdefs.h <<\_ACEOF +@%:@define SVR4 1 +_ACEOF + ;; +sysv4*) cat >>confdefs.h <<\_ACEOF +@%:@define SVR4 1 +_ACEOF + ;; +sysv5*) cat >>confdefs.h <<\_ACEOF +@%:@define SVR5 1 +_ACEOF + ;; +hpux9*) LOCAL_CFLAGS="-DHPUX9 -DHPUX" ;; +hpux*) LOCAL_CFLAGS=-DHPUX ;; +dgux*) LOCAL_CFLAGS=-D_DGUX_SOURCE; LOCAL_LIBS=-ldgc ;; +isc*) LOCAL_CFLAGS=-Disc386 ;; +rhapsody*) LOCAL_CFLAGS=-DRHAPSODY ;; +darwin*) LOCAL_CFLAGS=-DMACOSX ;; +sco3.2v5*) LOCAL_CFLAGS="-b elf -DWAITPID_BROKEN -DPATH_MAX=1024" ;; +sco3.2v4*) LOCAL_CFLAGS="-DMUST_UNBLOCK_CHLD -DPATH_MAX=1024" ;; +sco3.2*) LOCAL_CFLAGS=-DMUST_UNBLOCK_CHLD ;; +sunos4*) LOCAL_CFLAGS=-DSunOS4 ;; +solaris2.5*) LOCAL_CFLAGS="-DSunOS5 -DSOLARIS" ;; +solaris2.8*) LOCAL_CFLAGS=-DSOLARIS ;; +solaris2.9*) LOCAL_CFLAGS=-DSOLARIS ;; +solaris2.10*) LOCAL_CFLAGS=-DSOLARIS ;; +solaris2*) LOCAL_CFLAGS=-DSOLARIS ;; +lynxos*) LOCAL_CFLAGS=-DRECYCLES_PIDS ;; +linux*) LOCAL_LDFLAGS=-rdynamic # allow dynamic loading + case "`uname -r`" in + 2.[456789]*|3*) cat >>confdefs.h <<\_ACEOF +@%:@define PGRP_PIPE 1 +_ACEOF + ;; + esac ;; +*qnx6*) LOCAL_CFLAGS="-Dqnx -Dqnx6" LOCAL_LIBS="-lncurses" ;; +*qnx*) LOCAL_CFLAGS="-Dqnx -F -3s" LOCAL_LDFLAGS="-3s" LOCAL_LIBS="-lunix -lncurses" ;; +powerux*) LOCAL_LIBS="-lgen" ;; +cygwin*) LOCAL_CFLAGS=-DRECYCLES_PIDS ;; +opennt*|interix*) LOCAL_CFLAGS="-DNO_MAIN_ENV_ARG -DBROKEN_DIRENT_D_INO -D_POSIX_SOURCE" ;; +esac + +case "${host_os}-${CC}" in +aix4.2*-*gcc*) LOCAL_LDFLAGS="-Xlinker -bexpall -Xlinker -brtl" ;; +aix4.2*) LOCAL_LDFLAGS="-bexpall -brtl" ;; +bsdi4*-*gcc*) LOCAL_LDFLAGS="-rdynamic" ;; # allow dynamic loading, like Linux +esac + +case "${host_os}" in +freebsd[3-9]*) + if test -x /usr/bin/objformat && test "`/usr/bin/objformat`" = "elf" ; then + LOCAL_LDFLAGS=-rdynamic # allow dynamic loading + fi ;; +freebsdelf*) LOCAL_LDFLAGS=-rdynamic ;; # allow dynamic loading +dragonfly*) LOCAL_LDFLAGS=-rdynamic ;; # allow dynamic loading +esac + +case "$host_cpu" in +*cray*) LOCAL_CFLAGS="-DCRAY" ;; # shell var so config.h can use it +esac + +case "$host_cpu-$host_os" in +ibmrt-*bsd4*) LOCAL_CFLAGS="-ma -U__STDC__" ;; +esac + +case "$host_cpu-$host_vendor-$host_os" in +m88k-motorola-sysv3) LOCAL_CFLAGS=-DWAITPID_BROKEN ;; +mips-pyramid-sysv4) LOCAL_CFLAGS=-Xa ;; +esac + +# +# Shared object configuration section. These values are generated by +# ${srcdir}/support/shobj-conf +# +if test "$ac_cv_func_dlopen" = "yes" && test -f ${srcdir}/support/shobj-conf +then + { $as_echo "$as_me:$LINENO: checking shared object configuration for loadable builtins" >&5 +$as_echo_n "checking shared object configuration for loadable builtins... " >&6; } + eval `${CONFIG_SHELL-/bin/sh} ${srcdir}/support/shobj-conf -C "${CC}" -c "${host_cpu}" -o "${host_os}" -v "${host_vendor}"` + + + + + + + + { $as_echo "$as_me:$LINENO: result: $SHOBJ_STATUS" >&5 +$as_echo "$SHOBJ_STATUS" >&6; } +fi + +# try to create a directory tree if the source is elsewhere +# this should be packaged into a script accessible via ${srcdir}/support +case "$srcdir" in +.) ;; +*) for d in doc tests support lib examples; do # dirs + test -d $d || mkdir $d + done + for ld in readline glob tilde malloc sh termcap; do # libdirs + test -d lib/$ld || mkdir lib/$ld + done + test -d examples/loadables || mkdir examples/loadables # loadable builtins + test -d examples/loadables/perl || mkdir examples/loadables/perl + ;; +esac + +BUILD_DIR=`pwd` +case "$BUILD_DIR" in +*\ *) BUILD_DIR=`echo "$BUILD_DIR" | sed 's: :\\\\ :g'` ;; +*) ;; +esac + +if test -z "$localedir"; then + localedir='${datarootdir}/locale' +fi +if test -z "$datarootdir"; then + datarootdir='${prefix}/share' +fi + + + + + + +# Some versions of autoconf don't substitute these automatically + + + + + + + + + + + + + + + + + + + + + +#AC_SUBST(ALLOCA_SOURCE) +#AC_SUBST(ALLOCA_OBJECT) + +ac_config_files="$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" + +ac_config_commands="$ac_config_commands default" + +cat >confcache <<\_ACEOF +# This file is a shell script that caches the results of configure +# tests run on this system so they can be shared between configure +# scripts and configure runs, see configure's option --config-cache. +# It is not useful on other systems. If it contains results you don't +# want to keep, you may remove or edit it. +# +# config.status only pays attention to the cache file if you give it +# the --recheck option to rerun configure. +# +# `ac_cv_env_foo' variables (set or unset) will be overridden when +# loading this file, other *unset* `ac_cv_foo' will be assigned the +# following values. + +_ACEOF + +# The following way of writing the cache mishandles newlines in values, +# but we know of no workaround that is simple, portable, and efficient. +# So, we kill variables containing newlines. +# Ultrix sh set writes to stderr and can't be redirected directly, +# and sets the high bit in the cache file unless we assign to the vars. +( + for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do + eval ac_val=\$$ac_var + case $ac_val in #( + *${as_nl}*) + case $ac_var in #( + *_cv_*) { $as_echo "$as_me:$LINENO: WARNING: cache variable $ac_var contains a newline" >&5 +$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; + esac + case $ac_var in #( + _ | IFS | as_nl) ;; #( + BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( + *) $as_unset $ac_var ;; + esac ;; + esac + done + + (set) 2>&1 | + case $as_nl`(ac_space=' '; set) 2>&1` in #( + *${as_nl}ac_space=\ *) + # `set' does not quote correctly, so add quotes (double-quote + # substitution turns \\\\ into \\, and sed turns \\ into \). + sed -n \ + "s/'/'\\\\''/g; + s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" + ;; #( + *) + # `set' quotes correctly as required by POSIX, so do not add quotes. + sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" + ;; + esac | + sort +) | + sed ' + /^ac_cv_env_/b end + t clear + :clear + s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ + t end + s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ + :end' >>confcache +if diff "$cache_file" confcache >/dev/null 2>&1; then :; else + if test -w "$cache_file"; then + test "x$cache_file" != "x/dev/null" && + { $as_echo "$as_me:$LINENO: updating cache $cache_file" >&5 +$as_echo "$as_me: updating cache $cache_file" >&6;} + cat confcache >$cache_file + else + { $as_echo "$as_me:$LINENO: not updating unwritable cache $cache_file" >&5 +$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;} + fi +fi +rm -f confcache + +test "x$prefix" = xNONE && prefix=$ac_default_prefix +# Let make expand exec_prefix. +test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' + +DEFS=-DHAVE_CONFIG_H + +ac_libobjs= +ac_ltlibobjs= +for ac_i in : $LIB@&t@OBJS; do test "x$ac_i" = x: && continue + # 1. Remove the extension, and $U if already installed. + ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' + ac_i=`$as_echo "$ac_i" | sed "$ac_script"` + # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR + # will be set to the directory where LIBOBJS objects are built. + ac_libobjs="$ac_libobjs \${LIBOBJDIR}$ac_i\$U.$ac_objext" + ac_ltlibobjs="$ac_ltlibobjs \${LIBOBJDIR}$ac_i"'$U.lo' +done +LIB@&t@OBJS=$ac_libobjs + +LTLIBOBJS=$ac_ltlibobjs + + + + +: ${CONFIG_STATUS=./config.status} +ac_write_fail=0 +ac_clean_files_save=$ac_clean_files +ac_clean_files="$ac_clean_files $CONFIG_STATUS" +{ $as_echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5 +$as_echo "$as_me: creating $CONFIG_STATUS" >&6;} +cat >$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +#! $SHELL +# Generated by $as_me. +# Run this file to recreate the current configuration. +# Compiler output produced by configure, useful for debugging +# configure, is in config.log if it exists. + +debug=false +ac_cs_recheck=false +ac_cs_silent=false +SHELL=\${CONFIG_SHELL-$SHELL} +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +## --------------------- ## +## M4sh Initialization. ## +## --------------------- ## + +# Be more Bourne compatible +DUALCASE=1; export DUALCASE # for MKS sh +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in + *posix*) set -o posix ;; +esac + +fi + + + + +# PATH needs CR +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits + +as_nl=' +' +export as_nl +# Printing a long string crashes Solaris 7 /usr/bin/printf. +as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo +if (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='printf %s\n' + as_echo_n='printf %s' +else + if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then + as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' + as_echo_n='/usr/ucb/echo -n' + else + as_echo_body='eval expr "X$1" : "X\\(.*\\)"' + as_echo_n_body='eval + arg=$1; + case $arg in + *"$as_nl"*) + expr "X$arg" : "X\\(.*\\)$as_nl"; + arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; + esac; + expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" + ' + export as_echo_n_body + as_echo_n='sh -c $as_echo_n_body as_echo' + fi + export as_echo_body + as_echo='sh -c $as_echo_body as_echo' +fi + +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { + (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || + PATH_SEPARATOR=';' + } +fi + +# Support unset when possible. +if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then + as_unset=unset +else + as_unset=false +fi + + +# IFS +# We need space, tab and new line, in precisely that order. Quoting is +# there to prevent editors from complaining about space-tab. +# (If _AS_PATH_WALK were called with IFS unset, it would disable word +# splitting by setting IFS to empty value.) +IFS=" "" $as_nl" + +# Find who we are. Look in the path if we contain no directory separator. +case $0 in + *[\\/]* ) as_myself=$0 ;; + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break +done +IFS=$as_save_IFS + + ;; +esac +# We did not find ourselves, most probably we were run as `sh COMMAND' +# in which case we are not to be found in the path. +if test "x$as_myself" = x; then + as_myself=$0 +fi +if test ! -f "$as_myself"; then + $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + { (exit 1); exit 1; } +fi + +# Work around bugs in pre-3.0 UWIN ksh. +for as_var in ENV MAIL MAILPATH +do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var +done +PS1='$ ' +PS2='> ' +PS4='+ ' + +# NLS nuisances. +LC_ALL=C +export LC_ALL +LANGUAGE=C +export LANGUAGE + +# Required to use basename. +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr +else + as_expr=false +fi + +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then + as_basename=basename +else + as_basename=false +fi + + +# Name of the executable. +as_me=`$as_basename -- "$0" || +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + +# CDPATH. +$as_unset CDPATH + + + + as_lineno_1=$LINENO + as_lineno_2=$LINENO + test "x$as_lineno_1" != "x$as_lineno_2" && + test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || { + + # Create $as_me.lineno as a copy of $as_myself, but with $LINENO + # uniformly replaced by the line number. The first 'sed' inserts a + # line-number line after each line using $LINENO; the second 'sed' + # does the real work. The second script uses 'N' to pair each + # line-number line with the line containing $LINENO, and appends + # trailing '-' during substitution so that $LINENO is not a special + # case at line end. + # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the + # scripts with optimization help from Paolo Bonzini. Blame Lee + # E. McMahon (1931-1989) for sed's syntax. :-) + sed -n ' + p + /[$]LINENO/= + ' <$as_myself | + sed ' + s/[$]LINENO.*/&-/ + t lineno + b + :lineno + N + :loop + s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ + t loop + s/-\n.*// + ' >$as_me.lineno && + chmod +x "$as_me.lineno" || + { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 + { (exit 1); exit 1; }; } + + # Don't try to exec as it changes $[0], causing all sort of problems + # (the dirname of $[0] is not the place where we might find the + # original and so on. Autoconf is especially sensitive to this). + . "./$as_me.lineno" + # Exit status is that of the last command. + exit +} + + +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname +else + as_dirname=false +fi + +ECHO_C= ECHO_N= ECHO_T= +case `echo -n x` in +-n*) + case `echo 'x\c'` in + *c*) ECHO_T=' ';; # ECHO_T is single tab character. + *) ECHO_C='\c';; + esac;; +*) + ECHO_N='-n';; +esac +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr +else + as_expr=false +fi + +rm -f conf$$ conf$$.exe conf$$.file +if test -d conf$$.dir; then + rm -f conf$$.dir/conf$$.file +else + rm -f conf$$.dir + mkdir conf$$.dir 2>/dev/null +fi +if (echo >conf$$.file) 2>/dev/null; then + if ln -s conf$$.file conf$$ 2>/dev/null; then + as_ln_s='ln -s' + # ... but there are two gotchas: + # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. + # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. + # In both cases, we have to default to `cp -p'. + ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || + as_ln_s='cp -p' + elif ln conf$$.file conf$$ 2>/dev/null; then + as_ln_s=ln + else + as_ln_s='cp -p' + fi +else + as_ln_s='cp -p' +fi +rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file +rmdir conf$$.dir 2>/dev/null + +if mkdir -p . 2>/dev/null; then + as_mkdir_p=: +else + test -d ./-p && rmdir ./-p + as_mkdir_p=false +fi + +if test -x / >/dev/null 2>&1; then + as_test_x='test -x' +else + if ls -dL / >/dev/null 2>&1; then + as_ls_L_option=L + else + as_ls_L_option= + fi + as_test_x=' + eval sh -c '\'' + if test -d "$1"; then + test -d "$1/."; + else + case $1 in + -*)set "./$1";; + esac; + case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in + ???[sx]*):;;*)false;;esac;fi + '\'' sh + ' +fi +as_executable_p=$as_test_x + +# Sed expression to map a string onto a valid CPP name. +as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" + +# Sed expression to map a string onto a valid variable name. +as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" + + +exec 6>&1 + +# Save the log message, to keep $[0] and so on meaningful, and to +# report actual input values of CONFIG_FILES etc. instead of their +# values after options handling. +ac_log=" +This file was extended by bash $as_me 4.0-release, which was +generated by GNU Autoconf 2.63. Invocation command line was + + CONFIG_FILES = $CONFIG_FILES + CONFIG_HEADERS = $CONFIG_HEADERS + CONFIG_LINKS = $CONFIG_LINKS + CONFIG_COMMANDS = $CONFIG_COMMANDS + $ $0 $@ + +on `(hostname || uname -n) 2>/dev/null | sed 1q` +" + +_ACEOF + +case $ac_config_files in *" +"*) set x $ac_config_files; shift; ac_config_files=$*;; +esac + +case $ac_config_headers in *" +"*) set x $ac_config_headers; shift; ac_config_headers=$*;; +esac + + +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +# Files that config.status was made for. +config_files="$ac_config_files" +config_headers="$ac_config_headers" +config_commands="$ac_config_commands" + +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +ac_cs_usage="\ +\`$as_me' instantiates files from templates according to the +current configuration. + +Usage: $0 [OPTION]... [FILE]... + + -h, --help print this help, then exit + -V, --version print version number and configuration settings, then exit + -q, --quiet, --silent + do not print progress messages + -d, --debug don't remove temporary files + --recheck update $as_me by reconfiguring in the same conditions + --file=FILE[:TEMPLATE] + instantiate the configuration file FILE + --header=FILE[:TEMPLATE] + instantiate the configuration header FILE + +Configuration files: +$config_files + +Configuration headers: +$config_headers + +Configuration commands: +$config_commands + +Report bugs to ." + +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +ac_cs_version="\\ +bash config.status 4.0-release +configured by $0, generated by GNU Autoconf 2.63, + with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" + +Copyright (C) 2008 Free Software Foundation, Inc. +This config.status script is free software; the Free Software Foundation +gives unlimited permission to copy, distribute and modify it." + +ac_pwd='$ac_pwd' +srcdir='$srcdir' +INSTALL='$INSTALL' +test -n "\$AWK" || AWK=awk +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +# The default lists apply if the user does not specify any file. +ac_need_defaults=: +while test $# != 0 +do + case $1 in + --*=*) + ac_option=`expr "X$1" : 'X\([^=]*\)='` + ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` + ac_shift=: + ;; + *) + ac_option=$1 + ac_optarg=$2 + ac_shift=shift + ;; + esac + + case $ac_option in + # Handling of the options. + -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) + ac_cs_recheck=: ;; + --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) + $as_echo "$ac_cs_version"; exit ;; + --debug | --debu | --deb | --de | --d | -d ) + debug=: ;; + --file | --fil | --fi | --f ) + $ac_shift + case $ac_optarg in + *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; + esac + CONFIG_FILES="$CONFIG_FILES '$ac_optarg'" + ac_need_defaults=false;; + --header | --heade | --head | --hea ) + $ac_shift + case $ac_optarg in + *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; + esac + CONFIG_HEADERS="$CONFIG_HEADERS '$ac_optarg'" + ac_need_defaults=false;; + --he | --h) + # Conflict between --help and --header + { $as_echo "$as_me: error: ambiguous option: $1 +Try \`$0 --help' for more information." >&2 + { (exit 1); exit 1; }; };; + --help | --hel | -h ) + $as_echo "$ac_cs_usage"; exit ;; + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil | --si | --s) + ac_cs_silent=: ;; + + # This is an error. + -*) { $as_echo "$as_me: error: unrecognized option: $1 +Try \`$0 --help' for more information." >&2 + { (exit 1); exit 1; }; } ;; + + *) ac_config_targets="$ac_config_targets $1" + ac_need_defaults=false ;; + + esac + shift +done + +ac_configure_extra_args= + +if $ac_cs_silent; then + exec 6>/dev/null + ac_configure_extra_args="$ac_configure_extra_args --silent" +fi + +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +if \$ac_cs_recheck; then + set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion + shift + \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6 + CONFIG_SHELL='$SHELL' + export CONFIG_SHELL + exec "\$@" +fi + +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +exec 5>>config.log +{ + echo + sed 'h;s/./-/g;s/^.../@%:@@%:@ /;s/...$/ @%:@@%:@/;p;x;p;x' <<_ASBOX +@%:@@%:@ Running $as_me. @%:@@%:@ +_ASBOX + $as_echo "$ac_log" +} >&5 + +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +# +# INIT-COMMANDS +# +# Capture the value of obsolete ALL_LINGUAS because we need it to compute + # POFILES, GMOFILES, UPDATEPOFILES, DUMMYPOFILES, CATALOGS. But hide it + # from automake. + eval 'OBSOLETE_ALL_LINGUAS''="$ALL_LINGUAS"' + # Capture the value of LINGUAS because we need it to compute CATALOGS. + LINGUAS="${LINGUAS-%UNSET%}" + + +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 + +# Handling of arguments. +for ac_config_target in $ac_config_targets +do + case $ac_config_target in + "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; + "default-1") CONFIG_COMMANDS="$CONFIG_COMMANDS default-1" ;; + "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; + "builtins/Makefile") CONFIG_FILES="$CONFIG_FILES builtins/Makefile" ;; + "lib/readline/Makefile") CONFIG_FILES="$CONFIG_FILES lib/readline/Makefile" ;; + "lib/glob/Makefile") CONFIG_FILES="$CONFIG_FILES lib/glob/Makefile" ;; + "lib/intl/Makefile") CONFIG_FILES="$CONFIG_FILES lib/intl/Makefile" ;; + "lib/malloc/Makefile") CONFIG_FILES="$CONFIG_FILES lib/malloc/Makefile" ;; + "lib/sh/Makefile") CONFIG_FILES="$CONFIG_FILES lib/sh/Makefile" ;; + "lib/termcap/Makefile") CONFIG_FILES="$CONFIG_FILES lib/termcap/Makefile" ;; + "lib/tilde/Makefile") CONFIG_FILES="$CONFIG_FILES lib/tilde/Makefile" ;; + "doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;; + "support/Makefile") CONFIG_FILES="$CONFIG_FILES support/Makefile" ;; + "po/Makefile.in") CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;; + "examples/loadables/Makefile") CONFIG_FILES="$CONFIG_FILES examples/loadables/Makefile" ;; + "examples/loadables/perl/Makefile") CONFIG_FILES="$CONFIG_FILES examples/loadables/perl/Makefile" ;; + "default") CONFIG_COMMANDS="$CONFIG_COMMANDS default" ;; + + *) { { $as_echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 +$as_echo "$as_me: error: invalid argument: $ac_config_target" >&2;} + { (exit 1); exit 1; }; };; + esac +done + + +# If the user did not use the arguments to specify the items to instantiate, +# then the envvar interface is used. Set only those that are not. +# We use the long form for the default assignment because of an extremely +# bizarre bug on SunOS 4.1.3. +if $ac_need_defaults; then + test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files + test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers + test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands +fi + +# Have a temporary directory for convenience. Make it in the build tree +# simply because there is no reason against having it here, and in addition, +# creating and moving files from /tmp can sometimes cause problems. +# Hook for its removal unless debugging. +# Note that there is a small window in which the directory will not be cleaned: +# after its creation but before its name has been assigned to `$tmp'. +$debug || +{ + tmp= + trap 'exit_status=$? + { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status +' 0 + trap '{ (exit 1); exit 1; }' 1 2 13 15 +} +# Create a (secure) tmp directory for tmp files. + +{ + tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && + test -n "$tmp" && test -d "$tmp" +} || +{ + tmp=./conf$$-$RANDOM + (umask 077 && mkdir "$tmp") +} || +{ + $as_echo "$as_me: cannot create a temporary directory in ." >&2 + { (exit 1); exit 1; } +} + +# Set up the scripts for CONFIG_FILES section. +# No need to generate them if there are no CONFIG_FILES. +# This happens for instance with `./config.status config.h'. +if test -n "$CONFIG_FILES"; then + + +ac_cr=' ' +ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` +if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then + ac_cs_awk_cr='\\r' +else + ac_cs_awk_cr=$ac_cr +fi + +echo 'BEGIN {' >"$tmp/subs1.awk" && +_ACEOF + + +{ + echo "cat >conf$$subs.awk <<_ACEOF" && + echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' && + echo "_ACEOF" +} >conf$$subs.sh || + { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 +$as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;} + { (exit 1); exit 1; }; } +ac_delim_num=`echo "$ac_subst_vars" | grep -c '$'` +ac_delim='%!_!# ' +for ac_last_try in false false false false false :; do + . ./conf$$subs.sh || + { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 +$as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;} + { (exit 1); exit 1; }; } + + ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X` + if test $ac_delim_n = $ac_delim_num; then + break + elif $ac_last_try; then + { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 +$as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;} + { (exit 1); exit 1; }; } + else + ac_delim="$ac_delim!$ac_delim _$ac_delim!! " + fi +done +rm -f conf$$subs.sh + +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +cat >>"\$tmp/subs1.awk" <<\\_ACAWK && +_ACEOF +sed -n ' +h +s/^/S["/; s/!.*/"]=/ +p +g +s/^[^!]*!// +:repl +t repl +s/'"$ac_delim"'$// +t delim +:nl +h +s/\(.\{148\}\).*/\1/ +t more1 +s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/ +p +n +b repl +:more1 +s/["\\]/\\&/g; s/^/"/; s/$/"\\/ +p +g +s/.\{148\}// +t nl +:delim +h +s/\(.\{148\}\).*/\1/ +t more2 +s/["\\]/\\&/g; s/^/"/; s/$/"/ +p +b +:more2 +s/["\\]/\\&/g; s/^/"/; s/$/"\\/ +p +g +s/.\{148\}// +t delim +' >$CONFIG_STATUS || ac_write_fail=1 +rm -f conf$$subs.awk +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +_ACAWK +cat >>"\$tmp/subs1.awk" <<_ACAWK && + for (key in S) S_is_set[key] = 1 + FS = "" + +} +{ + line = $ 0 + nfields = split(line, field, "@") + substed = 0 + len = length(field[1]) + for (i = 2; i < nfields; i++) { + key = field[i] + keylen = length(key) + if (S_is_set[key]) { + value = S[key] + line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) + len += length(value) + length(field[++i]) + substed = 1 + } else + len += 1 + keylen + } + + print line +} + +_ACAWK +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then + sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" +else + cat +fi < "$tmp/subs1.awk" > "$tmp/subs.awk" \ + || { { $as_echo "$as_me:$LINENO: error: could not setup config files machinery" >&5 +$as_echo "$as_me: error: could not setup config files machinery" >&2;} + { (exit 1); exit 1; }; } +_ACEOF + +# VPATH may cause trouble with some makes, so we remove $(srcdir), +# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and +# trailing colons and then remove the whole line if VPATH becomes empty +# (actually we leave an empty line to preserve line numbers). +if test "x$srcdir" = x.; then + ac_vpsub='/^[ ]*VPATH[ ]*=/{ +s/:*\$(srcdir):*/:/ +s/:*\${srcdir}:*/:/ +s/:*@srcdir@:*/:/ +s/^\([^=]*=[ ]*\):*/\1/ +s/:*$// +s/^[^=]*=[ ]*$// +}' +fi + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +fi # test -n "$CONFIG_FILES" + +# Set up the scripts for CONFIG_HEADERS section. +# No need to generate them if there are no CONFIG_HEADERS. +# This happens for instance with `./config.status Makefile'. +if test -n "$CONFIG_HEADERS"; then +cat >"$tmp/defines.awk" <<\_ACAWK || +BEGIN { +_ACEOF + +# Transform confdefs.h into an awk script `defines.awk', embedded as +# here-document in config.status, that substitutes the proper values into +# config.h.in to produce config.h. + +# Create a delimiter string that does not exist in confdefs.h, to ease +# handling of long lines. +ac_delim='%!_!# ' +for ac_last_try in false false :; do + ac_t=`sed -n "/$ac_delim/p" confdefs.h` + if test -z "$ac_t"; then + break + elif $ac_last_try; then + { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_HEADERS" >&5 +$as_echo "$as_me: error: could not make $CONFIG_HEADERS" >&2;} + { (exit 1); exit 1; }; } + else + ac_delim="$ac_delim!$ac_delim _$ac_delim!! " + fi +done + +# For the awk script, D is an array of macro values keyed by name, +# likewise P contains macro parameters if any. Preserve backslash +# newline sequences. + +ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]* +sed -n ' +s/.\{148\}/&'"$ac_delim"'/g +t rset +:rset +s/^[ ]*#[ ]*define[ ][ ]*/ / +t def +d +:def +s/\\$// +t bsnl +s/["\\]/\\&/g +s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ +D["\1"]=" \3"/p +s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p +d +:bsnl +s/["\\]/\\&/g +s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ +D["\1"]=" \3\\\\\\n"\\/p +t cont +s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p +t cont +d +:cont +n +s/.\{148\}/&'"$ac_delim"'/g +t clear +:clear +s/\\$// +t bsnlc +s/["\\]/\\&/g; s/^/"/; s/$/"/p +d +:bsnlc +s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p +b cont +' >$CONFIG_STATUS || ac_write_fail=1 + +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 + for (key in D) D_is_set[key] = 1 + FS = "" +} +/^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ { + line = \$ 0 + split(line, arg, " ") + if (arg[1] == "#") { + defundef = arg[2] + mac1 = arg[3] + } else { + defundef = substr(arg[1], 2) + mac1 = arg[2] + } + split(mac1, mac2, "(") #) + macro = mac2[1] + prefix = substr(line, 1, index(line, defundef) - 1) + if (D_is_set[macro]) { + # Preserve the white space surrounding the "#". + print prefix "define", macro P[macro] D[macro] + next + } else { + # Replace #undef with comments. This is necessary, for example, + # in the case of _POSIX_SOURCE, which is predefined and required + # on some systems where configure will not decide to define it. + if (defundef == "undef") { + print "/*", prefix defundef, macro, "*/" + next + } + } +} +{ print } +_ACAWK +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 + { { $as_echo "$as_me:$LINENO: error: could not setup config headers machinery" >&5 +$as_echo "$as_me: error: could not setup config headers machinery" >&2;} + { (exit 1); exit 1; }; } +fi # test -n "$CONFIG_HEADERS" + + +eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS" +shift +for ac_tag +do + case $ac_tag in + :[FHLC]) ac_mode=$ac_tag; continue;; + esac + case $ac_mode$ac_tag in + :[FHL]*:*);; + :L* | :C*:*) { { $as_echo "$as_me:$LINENO: error: invalid tag $ac_tag" >&5 +$as_echo "$as_me: error: invalid tag $ac_tag" >&2;} + { (exit 1); exit 1; }; };; + :[FH]-) ac_tag=-:-;; + :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; + esac + ac_save_IFS=$IFS + IFS=: + set x $ac_tag + IFS=$ac_save_IFS + shift + ac_file=$1 + shift + + case $ac_mode in + :L) ac_source=$1;; + :[FH]) + ac_file_inputs= + for ac_f + do + case $ac_f in + -) ac_f="$tmp/stdin";; + *) # Look for the file first in the build tree, then in the source tree + # (if the path is not absolute). The absolute path cannot be DOS-style, + # because $ac_f cannot contain `:'. + test -f "$ac_f" || + case $ac_f in + [\\/$]*) false;; + *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; + esac || + { { $as_echo "$as_me:$LINENO: error: cannot find input file: $ac_f" >&5 +$as_echo "$as_me: error: cannot find input file: $ac_f" >&2;} + { (exit 1); exit 1; }; };; + esac + case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac + ac_file_inputs="$ac_file_inputs '$ac_f'" + done + + # Let's still pretend it is `configure' which instantiates (i.e., don't + # use $as_me), people would be surprised to read: + # /* config.h. Generated by config.status. */ + configure_input='Generated from '` + $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' + `' by configure.' + if test x"$ac_file" != x-; then + configure_input="$ac_file. $configure_input" + { $as_echo "$as_me:$LINENO: creating $ac_file" >&5 +$as_echo "$as_me: creating $ac_file" >&6;} + fi + # Neutralize special characters interpreted by sed in replacement strings. + case $configure_input in #( + *\&* | *\|* | *\\* ) + ac_sed_conf_input=`$as_echo "$configure_input" | + sed 's/[\\\\&|]/\\\\&/g'`;; #( + *) ac_sed_conf_input=$configure_input;; + esac + + case $ac_tag in + *:-:* | *:-) cat >"$tmp/stdin" \ + || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5 +$as_echo "$as_me: error: could not create $ac_file" >&2;} + { (exit 1); exit 1; }; } ;; + esac + ;; + esac + + ac_dir=`$as_dirname -- "$ac_file" || +$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$ac_file" : 'X\(//\)[^/]' \| \ + X"$ac_file" : 'X\(//\)$' \| \ + X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$ac_file" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + { as_dir="$ac_dir" + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || { + as_dirs= + while :; do + case $as_dir in #( + *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break + done + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || { { $as_echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5 +$as_echo "$as_me: error: cannot create directory $as_dir" >&2;} + { (exit 1); exit 1; }; }; } + ac_builddir=. + +case "$ac_dir" in +.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; +*) + ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` + # A ".." for each directory in $ac_dir_suffix. + ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` + case $ac_top_builddir_sub in + "") ac_top_builddir_sub=. ac_top_build_prefix= ;; + *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; + esac ;; +esac +ac_abs_top_builddir=$ac_pwd +ac_abs_builddir=$ac_pwd$ac_dir_suffix +# for backward compatibility: +ac_top_builddir=$ac_top_build_prefix + +case $srcdir in + .) # We are building in place. + ac_srcdir=. + ac_top_srcdir=$ac_top_builddir_sub + ac_abs_top_srcdir=$ac_pwd ;; + [\\/]* | ?:[\\/]* ) # Absolute name. + ac_srcdir=$srcdir$ac_dir_suffix; + ac_top_srcdir=$srcdir + ac_abs_top_srcdir=$srcdir ;; + *) # Relative name. + ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_build_prefix$srcdir + ac_abs_top_srcdir=$ac_pwd/$srcdir ;; +esac +ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix + + + case $ac_mode in + :F) + # + # CONFIG_FILE + # + + case $INSTALL in + [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; + *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; + esac +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +# If the template does not know about datarootdir, expand it. +# FIXME: This hack should be removed a few years after 2.60. +ac_datarootdir_hack=; ac_datarootdir_seen= + +ac_sed_dataroot=' +/datarootdir/ { + p + q +} +/@datadir@/p +/@docdir@/p +/@infodir@/p +/@localedir@/p +/@mandir@/p +' +case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in +*datarootdir*) ac_datarootdir_seen=yes;; +*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) + { $as_echo "$as_me:$LINENO: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 +$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 + ac_datarootdir_hack=' + s&@datadir@&$datadir&g + s&@docdir@&$docdir&g + s&@infodir@&$infodir&g + s&@localedir@&$localedir&g + s&@mandir@&$mandir&g + s&\\\${datarootdir}&$datarootdir&g' ;; +esac +_ACEOF + +# Neutralize VPATH when `$srcdir' = `.'. +# Shell code in configure.ac might set extrasub. +# FIXME: do we really want to maintain this feature? +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +ac_sed_extra="$ac_vpsub +$extrasub +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +:t +/@[a-zA-Z_][a-zA-Z_0-9]*@/!b +s|@configure_input@|$ac_sed_conf_input|;t t +s&@top_builddir@&$ac_top_builddir_sub&;t t +s&@top_build_prefix@&$ac_top_build_prefix&;t t +s&@srcdir@&$ac_srcdir&;t t +s&@abs_srcdir@&$ac_abs_srcdir&;t t +s&@top_srcdir@&$ac_top_srcdir&;t t +s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t +s&@builddir@&$ac_builddir&;t t +s&@abs_builddir@&$ac_abs_builddir&;t t +s&@abs_top_builddir@&$ac_abs_top_builddir&;t t +s&@INSTALL@&$ac_INSTALL&;t t +$ac_datarootdir_hack +" +eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$tmp/subs.awk" >$tmp/out \ + || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5 +$as_echo "$as_me: error: could not create $ac_file" >&2;} + { (exit 1); exit 1; }; } + +test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && + { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } && + { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } && + { $as_echo "$as_me:$LINENO: WARNING: $ac_file contains a reference to the variable \`datarootdir' +which seems to be undefined. Please make sure it is defined." >&5 +$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' +which seems to be undefined. Please make sure it is defined." >&2;} + + rm -f "$tmp/stdin" + case $ac_file in + -) cat "$tmp/out" && rm -f "$tmp/out";; + *) rm -f "$ac_file" && mv "$tmp/out" "$ac_file";; + esac \ + || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5 +$as_echo "$as_me: error: could not create $ac_file" >&2;} + { (exit 1); exit 1; }; } + ;; + :H) + # + # CONFIG_HEADER + # + if test x"$ac_file" != x-; then + { + $as_echo "/* $configure_input */" \ + && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" + } >"$tmp/config.h" \ + || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5 +$as_echo "$as_me: error: could not create $ac_file" >&2;} + { (exit 1); exit 1; }; } + if diff "$ac_file" "$tmp/config.h" >/dev/null 2>&1; then + { $as_echo "$as_me:$LINENO: $ac_file is unchanged" >&5 +$as_echo "$as_me: $ac_file is unchanged" >&6;} + else + rm -f "$ac_file" + mv "$tmp/config.h" "$ac_file" \ + || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5 +$as_echo "$as_me: error: could not create $ac_file" >&2;} + { (exit 1); exit 1; }; } + fi + else + $as_echo "/* $configure_input */" \ + && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" \ + || { { $as_echo "$as_me:$LINENO: error: could not create -" >&5 +$as_echo "$as_me: error: could not create -" >&2;} + { (exit 1); exit 1; }; } + fi + ;; + + :C) { $as_echo "$as_me:$LINENO: executing $ac_file commands" >&5 +$as_echo "$as_me: executing $ac_file commands" >&6;} + ;; + esac + + + case $ac_file$ac_mode in + "default-1":C) + for ac_file in $CONFIG_FILES; do + # Support "outfile[:infile[:infile...]]" + case "$ac_file" in + *:*) ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; + esac + # PO directories have a Makefile.in generated from Makefile.in.in. + case "$ac_file" in */Makefile.in) + # Adjust a relative srcdir. + ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'` + ac_dir_suffix="/`echo "$ac_dir"|sed 's%^\./%%'`" + ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'` + # In autoconf-2.13 it is called $ac_given_srcdir. + # In autoconf-2.50 it is called $srcdir. + test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir" + case "$ac_given_srcdir" in + .) top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;; + /*) top_srcdir="$ac_given_srcdir" ;; + *) top_srcdir="$ac_dots$ac_given_srcdir" ;; + esac + if test -f "$ac_given_srcdir/$ac_dir/POTFILES.in"; then + rm -f "$ac_dir/POTFILES" + test -n "$as_me" && echo "$as_me: creating $ac_dir/POTFILES" || echo "creating $ac_dir/POTFILES" + cat "$ac_given_srcdir/$ac_dir/POTFILES.in" | sed -e "/^#/d" -e "/^[ ]*\$/d" -e "s,.*, $top_srcdir/& \\\\," | sed -e "\$s/\(.*\) \\\\/\1/" > "$ac_dir/POTFILES" + POMAKEFILEDEPS="POTFILES.in" + # ALL_LINGUAS, POFILES, GMOFILES, UPDATEPOFILES, DUMMYPOFILES depend + # on $ac_dir but don't depend on user-specified configuration + # parameters. + if test -f "$ac_given_srcdir/$ac_dir/LINGUAS"; then + # The LINGUAS file contains the set of available languages. + if test -n "$OBSOLETE_ALL_LINGUAS"; then + test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete" + fi + ALL_LINGUAS_=`sed -e "/^#/d" "$ac_given_srcdir/$ac_dir/LINGUAS"` + # Hide the ALL_LINGUAS assigment from automake. + eval 'ALL_LINGUAS''=$ALL_LINGUAS_' + POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS" + else + # The set of available languages was given in configure.in. + eval 'ALL_LINGUAS''=$OBSOLETE_ALL_LINGUAS' + fi + case "$ac_given_srcdir" in + .) srcdirpre= ;; + *) srcdirpre='$(srcdir)/' ;; + esac + POFILES= + GMOFILES= + UPDATEPOFILES= + DUMMYPOFILES= + for lang in $ALL_LINGUAS; do + POFILES="$POFILES $srcdirpre$lang.po" + GMOFILES="$GMOFILES $srcdirpre$lang.gmo" + UPDATEPOFILES="$UPDATEPOFILES $lang.po-update" + DUMMYPOFILES="$DUMMYPOFILES $lang.nop" + done + # CATALOGS depends on both $ac_dir and the user's LINGUAS + # environment variable. + INST_LINGUAS= + if test -n "$ALL_LINGUAS"; then + for presentlang in $ALL_LINGUAS; do + useit=no + if test "%UNSET%" != "$LINGUAS"; then + desiredlanguages="$LINGUAS" + else + desiredlanguages="$ALL_LINGUAS" + fi + for desiredlang in $desiredlanguages; do + # Use the presentlang catalog if desiredlang is + # a. equal to presentlang, or + # b. a variant of presentlang (because in this case, + # presentlang can be used as a fallback for messages + # which are not translated in the desiredlang catalog). + case "$desiredlang" in + "$presentlang"*) useit=yes;; + esac + done + if test $useit = yes; then + INST_LINGUAS="$INST_LINGUAS $presentlang" + fi + done + fi + CATALOGS= + if test -n "$INST_LINGUAS"; then + for lang in $INST_LINGUAS; do + CATALOGS="$CATALOGS $lang.gmo" + done + fi + test -n "$as_me" && echo "$as_me: creating $ac_dir/Makefile" || echo "creating $ac_dir/Makefile" + sed -e "/^POTFILES =/r $ac_dir/POTFILES" -e "/^# Makevars/r $ac_given_srcdir/$ac_dir/Makevars" -e "s|@POFILES@|$POFILES|g" -e "s|@GMOFILES@|$GMOFILES|g" -e "s|@UPDATEPOFILES@|$UPDATEPOFILES|g" -e "s|@DUMMYPOFILES@|$DUMMYPOFILES|g" -e "s|@CATALOGS@|$CATALOGS|g" -e "s|@POMAKEFILEDEPS@|$POMAKEFILEDEPS|g" "$ac_dir/Makefile.in" > "$ac_dir/Makefile" + for f in "$ac_given_srcdir/$ac_dir"/Rules-*; do + if test -f "$f"; then + case "$f" in + *.orig | *.bak | *~) ;; + *) cat "$f" >> "$ac_dir/Makefile" ;; + esac + fi + done + fi + ;; + esac + done ;; + "default":C) +# Makefile uses this timestamp file to record whether config.h is up to date. +echo timestamp > stamp-h + ;; + + esac +done # for ac_tag + + +{ (exit 0); exit 0; } +_ACEOF +chmod +x $CONFIG_STATUS +ac_clean_files=$ac_clean_files_save + +test $ac_write_fail = 0 || + { { $as_echo "$as_me:$LINENO: error: write failure creating $CONFIG_STATUS" >&5 +$as_echo "$as_me: error: write failure creating $CONFIG_STATUS" >&2;} + { (exit 1); exit 1; }; } + + +# configure is writing to config.log, and then calls config.status. +# config.status does its own redirection, appending to config.log. +# Unfortunately, on DOS this fails, as config.log is still kept open +# by configure, so config.status won't be able to write to it; its +# output is simply discarded. So we exec the FD to /dev/null, +# effectively closing config.log, so it can be properly (re)opened and +# appended to by config.status. When coming back to configure, we +# need to make the FD available again. +if test "$no_create" != yes; then + ac_cs_success=: + ac_config_status_args= + test "$silent" = yes && + ac_config_status_args="$ac_config_status_args --quiet" + exec 5>/dev/null + $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false + exec 5>>config.log + # Use ||, not &&, to avoid exiting from the if with $? = 1, which + # would make configure fail if this is the last instruction. + $ac_cs_success || { (exit 1); exit 1; } +fi +if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then + { $as_echo "$as_me:$LINENO: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 +$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} +fi + diff --git a/autom4te.cache/requests b/autom4te.cache/requests new file mode 100644 index 00000000..4a5e08c9 --- /dev/null +++ b/autom4te.cache/requests @@ -0,0 +1,67 @@ +# This file was generated. +# It contains the lists of macros which have been traced. +# It can be safely removed. + +@request = ( + bless( [ + '0', + 1, + [ + '/sw/share/autoconf' + ], + [ + '/sw/share/autoconf/autoconf/autoconf.m4f', + 'aclocal.m4', + 'configure.in' + ], + { + '_LT_AC_TAGCONFIG' => 1, + 'AM_PROG_F77_C_O' => 1, + 'AC_INIT' => 1, + 'm4_pattern_forbid' => 1, + '_AM_COND_IF' => 1, + 'AC_CANONICAL_TARGET' => 1, + 'AC_SUBST' => 1, + 'AC_CONFIG_LIBOBJ_DIR' => 1, + 'AC_FC_SRCEXT' => 1, + 'AC_CANONICAL_HOST' => 1, + 'AC_PROG_LIBTOOL' => 1, + 'AM_INIT_AUTOMAKE' => 1, + 'AC_CONFIG_SUBDIRS' => 1, + 'AM_AUTOMAKE_VERSION' => 1, + 'LT_CONFIG_LTDL_DIR' => 1, + 'AC_REQUIRE_AUX_FILE' => 1, + 'AC_CONFIG_LINKS' => 1, + 'm4_sinclude' => 1, + 'LT_SUPPORTED_TAG' => 1, + 'AM_MAINTAINER_MODE' => 1, + 'AM_GNU_GETTEXT_INTL_SUBDIR' => 1, + '_m4_warn' => 1, + 'AM_PROG_CXX_C_O' => 1, + '_AM_COND_ENDIF' => 1, + 'AM_ENABLE_MULTILIB' => 1, + 'AC_CONFIG_FILES' => 1, + 'include' => 1, + 'LT_INIT' => 1, + 'AM_GNU_GETTEXT' => 1, + 'AC_LIBSOURCE' => 1, + 'AM_PROG_FC_C_O' => 1, + 'AC_CANONICAL_BUILD' => 1, + 'AC_FC_FREEFORM' => 1, + 'AH_OUTPUT' => 1, + '_AM_SUBST_NOTMAKE' => 1, + 'AC_CONFIG_AUX_DIR' => 1, + 'sinclude' => 1, + 'm4_pattern_allow' => 1, + 'AM_PROG_CC_C_O' => 1, + 'AC_CANONICAL_SYSTEM' => 1, + 'AM_CONDITIONAL' => 1, + 'AC_CONFIG_HEADERS' => 1, + 'AC_DEFINE_TRACE_LITERAL' => 1, + 'm4_include' => 1, + '_AM_COND_ELSE' => 1, + 'AC_SUBST_TRACE' => 1 + } + ], 'Autom4te::Request' ) + ); + diff --git a/autom4te.cache/traces.0 b/autom4te.cache/traces.0 new file mode 100644 index 00000000..c0da51e5 --- /dev/null +++ b/autom4te.cache/traces.0 @@ -0,0 +1,2515 @@ +m4trace:configure.in:29: -1- AC_INIT([bash], [4.0-release], [bug-bash@gnu.org]) +m4trace:configure.in:29: -1- m4_pattern_forbid([^_?A[CHUM]_]) +m4trace:configure.in:29: -1- m4_pattern_forbid([_AC_]) +m4trace:configure.in:29: -1- m4_pattern_forbid([^LIBOBJS$], [do not use LIBOBJS directly, use AC_LIBOBJ (see section `AC_LIBOBJ vs LIBOBJS']) +m4trace:configure.in:29: -1- m4_pattern_allow([^AS_FLAGS$]) +m4trace:configure.in:29: -1- m4_pattern_forbid([^_?m4_]) +m4trace:configure.in:29: -1- m4_pattern_forbid([^dnl$]) +m4trace:configure.in:29: -1- m4_pattern_forbid([^_?AS_]) +m4trace:configure.in:29: -1- AC_SUBST([SHELL], [${CONFIG_SHELL-/bin/sh}]) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([SHELL]) +m4trace:configure.in:29: -1- m4_pattern_allow([^SHELL$]) +m4trace:configure.in:29: -1- AC_SUBST([PATH_SEPARATOR]) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([PATH_SEPARATOR]) +m4trace:configure.in:29: -1- m4_pattern_allow([^PATH_SEPARATOR$]) +m4trace:configure.in:29: -1- AC_SUBST([PACKAGE_NAME], [m4_ifdef([AC_PACKAGE_NAME], ['AC_PACKAGE_NAME'])]) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([PACKAGE_NAME]) +m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_NAME$]) +m4trace:configure.in:29: -1- AC_SUBST([PACKAGE_TARNAME], [m4_ifdef([AC_PACKAGE_TARNAME], ['AC_PACKAGE_TARNAME'])]) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([PACKAGE_TARNAME]) +m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_TARNAME$]) +m4trace:configure.in:29: -1- AC_SUBST([PACKAGE_VERSION], [m4_ifdef([AC_PACKAGE_VERSION], ['AC_PACKAGE_VERSION'])]) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([PACKAGE_VERSION]) +m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_VERSION$]) +m4trace:configure.in:29: -1- AC_SUBST([PACKAGE_STRING], [m4_ifdef([AC_PACKAGE_STRING], ['AC_PACKAGE_STRING'])]) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([PACKAGE_STRING]) +m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_STRING$]) +m4trace:configure.in:29: -1- AC_SUBST([PACKAGE_BUGREPORT], [m4_ifdef([AC_PACKAGE_BUGREPORT], ['AC_PACKAGE_BUGREPORT'])]) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([PACKAGE_BUGREPORT]) +m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_BUGREPORT$]) +m4trace:configure.in:29: -1- AC_SUBST([exec_prefix], [NONE]) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([exec_prefix]) +m4trace:configure.in:29: -1- m4_pattern_allow([^exec_prefix$]) +m4trace:configure.in:29: -1- AC_SUBST([prefix], [NONE]) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([prefix]) +m4trace:configure.in:29: -1- m4_pattern_allow([^prefix$]) +m4trace:configure.in:29: -1- AC_SUBST([program_transform_name], [s,x,x,]) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([program_transform_name]) +m4trace:configure.in:29: -1- m4_pattern_allow([^program_transform_name$]) +m4trace:configure.in:29: -1- AC_SUBST([bindir], ['${exec_prefix}/bin']) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([bindir]) +m4trace:configure.in:29: -1- m4_pattern_allow([^bindir$]) +m4trace:configure.in:29: -1- AC_SUBST([sbindir], ['${exec_prefix}/sbin']) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([sbindir]) +m4trace:configure.in:29: -1- m4_pattern_allow([^sbindir$]) +m4trace:configure.in:29: -1- AC_SUBST([libexecdir], ['${exec_prefix}/libexec']) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([libexecdir]) +m4trace:configure.in:29: -1- m4_pattern_allow([^libexecdir$]) +m4trace:configure.in:29: -1- AC_SUBST([datarootdir], ['${prefix}/share']) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([datarootdir]) +m4trace:configure.in:29: -1- m4_pattern_allow([^datarootdir$]) +m4trace:configure.in:29: -1- AC_SUBST([datadir], ['${datarootdir}']) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([datadir]) +m4trace:configure.in:29: -1- m4_pattern_allow([^datadir$]) +m4trace:configure.in:29: -1- AC_SUBST([sysconfdir], ['${prefix}/etc']) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([sysconfdir]) +m4trace:configure.in:29: -1- m4_pattern_allow([^sysconfdir$]) +m4trace:configure.in:29: -1- AC_SUBST([sharedstatedir], ['${prefix}/com']) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([sharedstatedir]) +m4trace:configure.in:29: -1- m4_pattern_allow([^sharedstatedir$]) +m4trace:configure.in:29: -1- AC_SUBST([localstatedir], ['${prefix}/var']) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([localstatedir]) +m4trace:configure.in:29: -1- m4_pattern_allow([^localstatedir$]) +m4trace:configure.in:29: -1- AC_SUBST([includedir], ['${prefix}/include']) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([includedir]) +m4trace:configure.in:29: -1- m4_pattern_allow([^includedir$]) +m4trace:configure.in:29: -1- AC_SUBST([oldincludedir], ['/usr/include']) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([oldincludedir]) +m4trace:configure.in:29: -1- m4_pattern_allow([^oldincludedir$]) +m4trace:configure.in:29: -1- AC_SUBST([docdir], [m4_ifset([AC_PACKAGE_TARNAME], + ['${datarootdir}/doc/${PACKAGE_TARNAME}'], + ['${datarootdir}/doc/${PACKAGE}'])]) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([docdir]) +m4trace:configure.in:29: -1- m4_pattern_allow([^docdir$]) +m4trace:configure.in:29: -1- AC_SUBST([infodir], ['${datarootdir}/info']) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([infodir]) +m4trace:configure.in:29: -1- m4_pattern_allow([^infodir$]) +m4trace:configure.in:29: -1- AC_SUBST([htmldir], ['${docdir}']) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([htmldir]) +m4trace:configure.in:29: -1- m4_pattern_allow([^htmldir$]) +m4trace:configure.in:29: -1- AC_SUBST([dvidir], ['${docdir}']) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([dvidir]) +m4trace:configure.in:29: -1- m4_pattern_allow([^dvidir$]) +m4trace:configure.in:29: -1- AC_SUBST([pdfdir], ['${docdir}']) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([pdfdir]) +m4trace:configure.in:29: -1- m4_pattern_allow([^pdfdir$]) +m4trace:configure.in:29: -1- AC_SUBST([psdir], ['${docdir}']) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([psdir]) +m4trace:configure.in:29: -1- m4_pattern_allow([^psdir$]) +m4trace:configure.in:29: -1- AC_SUBST([libdir], ['${exec_prefix}/lib']) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([libdir]) +m4trace:configure.in:29: -1- m4_pattern_allow([^libdir$]) +m4trace:configure.in:29: -1- AC_SUBST([localedir], ['${datarootdir}/locale']) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([localedir]) +m4trace:configure.in:29: -1- m4_pattern_allow([^localedir$]) +m4trace:configure.in:29: -1- AC_SUBST([mandir], ['${datarootdir}/man']) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([mandir]) +m4trace:configure.in:29: -1- m4_pattern_allow([^mandir$]) +m4trace:configure.in:29: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_NAME]) +m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_NAME$]) +m4trace:configure.in:29: -1- AH_OUTPUT([PACKAGE_NAME], [/* Define to the full name of this package. */ +#undef PACKAGE_NAME]) +m4trace:configure.in:29: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_TARNAME]) +m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_TARNAME$]) +m4trace:configure.in:29: -1- AH_OUTPUT([PACKAGE_TARNAME], [/* Define to the one symbol short name of this package. */ +#undef PACKAGE_TARNAME]) +m4trace:configure.in:29: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_VERSION]) +m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_VERSION$]) +m4trace:configure.in:29: -1- AH_OUTPUT([PACKAGE_VERSION], [/* Define to the version of this package. */ +#undef PACKAGE_VERSION]) +m4trace:configure.in:29: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_STRING]) +m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_STRING$]) +m4trace:configure.in:29: -1- AH_OUTPUT([PACKAGE_STRING], [/* Define to the full name and version of this package. */ +#undef PACKAGE_STRING]) +m4trace:configure.in:29: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_BUGREPORT]) +m4trace:configure.in:29: -1- m4_pattern_allow([^PACKAGE_BUGREPORT$]) +m4trace:configure.in:29: -1- AH_OUTPUT([PACKAGE_BUGREPORT], [/* Define to the address where bug reports for this package should be sent. */ +#undef PACKAGE_BUGREPORT]) +m4trace:configure.in:29: -1- AC_SUBST([DEFS]) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([DEFS]) +m4trace:configure.in:29: -1- m4_pattern_allow([^DEFS$]) +m4trace:configure.in:29: -1- AC_SUBST([ECHO_C]) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([ECHO_C]) +m4trace:configure.in:29: -1- m4_pattern_allow([^ECHO_C$]) +m4trace:configure.in:29: -1- AC_SUBST([ECHO_N]) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([ECHO_N]) +m4trace:configure.in:29: -1- m4_pattern_allow([^ECHO_N$]) +m4trace:configure.in:29: -1- AC_SUBST([ECHO_T]) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([ECHO_T]) +m4trace:configure.in:29: -1- m4_pattern_allow([^ECHO_T$]) +m4trace:configure.in:29: -1- AC_SUBST([LIBS]) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([LIBS]) +m4trace:configure.in:29: -1- m4_pattern_allow([^LIBS$]) +m4trace:configure.in:29: -1- AC_SUBST([build_alias]) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([build_alias]) +m4trace:configure.in:29: -1- m4_pattern_allow([^build_alias$]) +m4trace:configure.in:29: -1- AC_SUBST([host_alias]) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([host_alias]) +m4trace:configure.in:29: -1- m4_pattern_allow([^host_alias$]) +m4trace:configure.in:29: -1- AC_SUBST([target_alias]) +m4trace:configure.in:29: -1- AC_SUBST_TRACE([target_alias]) +m4trace:configure.in:29: -1- m4_pattern_allow([^target_alias$]) +m4trace:configure.in:36: -1- AC_CONFIG_AUX_DIR([./support]) +m4trace:configure.in:37: -1- AC_CONFIG_HEADERS([config.h]) +m4trace:configure.in:51: -1- AC_CANONICAL_HOST +m4trace:configure.in:51: -1- AC_CANONICAL_BUILD +m4trace:configure.in:51: -1- AC_REQUIRE_AUX_FILE([config.sub]) +m4trace:configure.in:51: -1- AC_REQUIRE_AUX_FILE([config.guess]) +m4trace:configure.in:51: -1- AC_SUBST([build], [$ac_cv_build]) +m4trace:configure.in:51: -1- AC_SUBST_TRACE([build]) +m4trace:configure.in:51: -1- m4_pattern_allow([^build$]) +m4trace:configure.in:51: -1- AC_SUBST([build_cpu], [$[1]]) +m4trace:configure.in:51: -1- AC_SUBST_TRACE([build_cpu]) +m4trace:configure.in:51: -1- m4_pattern_allow([^build_cpu$]) +m4trace:configure.in:51: -1- AC_SUBST([build_vendor], [$[2]]) +m4trace:configure.in:51: -1- AC_SUBST_TRACE([build_vendor]) +m4trace:configure.in:51: -1- m4_pattern_allow([^build_vendor$]) +m4trace:configure.in:51: -1- AC_SUBST([build_os]) +m4trace:configure.in:51: -1- AC_SUBST_TRACE([build_os]) +m4trace:configure.in:51: -1- m4_pattern_allow([^build_os$]) +m4trace:configure.in:51: -1- AC_SUBST([host], [$ac_cv_host]) +m4trace:configure.in:51: -1- AC_SUBST_TRACE([host]) +m4trace:configure.in:51: -1- m4_pattern_allow([^host$]) +m4trace:configure.in:51: -1- AC_SUBST([host_cpu], [$[1]]) +m4trace:configure.in:51: -1- AC_SUBST_TRACE([host_cpu]) +m4trace:configure.in:51: -1- m4_pattern_allow([^host_cpu$]) +m4trace:configure.in:51: -1- AC_SUBST([host_vendor], [$[2]]) +m4trace:configure.in:51: -1- AC_SUBST_TRACE([host_vendor]) +m4trace:configure.in:51: -1- m4_pattern_allow([^host_vendor$]) +m4trace:configure.in:51: -1- AC_SUBST([host_os]) +m4trace:configure.in:51: -1- AC_SUBST_TRACE([host_os]) +m4trace:configure.in:51: -1- m4_pattern_allow([^host_os$]) +m4trace:configure.in:101: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +aclocal.m4:1959: AM_PATH_LISPDIR is expanded from... +configure.in:101: the top level]) +m4trace:configure.in:101: -1- AC_SUBST([EMACS]) +m4trace:configure.in:101: -1- AC_SUBST_TRACE([EMACS]) +m4trace:configure.in:101: -1- m4_pattern_allow([^EMACS$]) +m4trace:configure.in:101: -1- AC_SUBST([lispdir]) +m4trace:configure.in:101: -1- AC_SUBST_TRACE([lispdir]) +m4trace:configure.in:101: -1- m4_pattern_allow([^lispdir$]) +m4trace:configure.in:102: -1- AC_SUBST([DEBUGGER_START_FILE]) +m4trace:configure.in:102: -1- AC_SUBST_TRACE([DEBUGGER_START_FILE]) +m4trace:configure.in:102: -1- m4_pattern_allow([^DEBUGGER_START_FILE$]) +m4trace:configure.in:106: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:106: the top level]) +m4trace:configure.in:107: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:107: the top level]) +m4trace:configure.in:108: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:108: the top level]) +m4trace:configure.in:109: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:109: the top level]) +m4trace:configure.in:110: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:110: the top level]) +m4trace:configure.in:111: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:111: the top level]) +m4trace:configure.in:112: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:112: the top level]) +m4trace:configure.in:123: -1- AC_DEFINE_TRACE_LITERAL([USING_BASH_MALLOC]) +m4trace:configure.in:123: -1- m4_pattern_allow([^USING_BASH_MALLOC$]) +m4trace:configure.in:133: -1- AC_DEFINE_TRACE_LITERAL([DISABLE_MALLOC_WRAPPERS]) +m4trace:configure.in:133: -1- m4_pattern_allow([^DISABLE_MALLOC_WRAPPERS$]) +m4trace:configure.in:143: -1- AC_DEFINE_TRACE_LITERAL([AFS]) +m4trace:configure.in:143: -1- m4_pattern_allow([^AFS$]) +m4trace:configure.in:194: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:194: the top level]) +m4trace:configure.in:210: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:210: the top level]) +m4trace:configure.in:211: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:211: the top level]) +m4trace:configure.in:212: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:212: the top level]) +m4trace:configure.in:213: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:213: the top level]) +m4trace:configure.in:214: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:214: the top level]) +m4trace:configure.in:215: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:215: the top level]) +m4trace:configure.in:216: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:216: the top level]) +m4trace:configure.in:217: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:217: the top level]) +m4trace:configure.in:218: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:218: the top level]) +m4trace:configure.in:219: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:219: the top level]) +m4trace:configure.in:220: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:220: the top level]) +m4trace:configure.in:221: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:221: the top level]) +m4trace:configure.in:222: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:222: the top level]) +m4trace:configure.in:223: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:223: the top level]) +m4trace:configure.in:224: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:224: the top level]) +m4trace:configure.in:225: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:225: the top level]) +m4trace:configure.in:226: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:226: the top level]) +m4trace:configure.in:227: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:227: the top level]) +m4trace:configure.in:228: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:228: the top level]) +m4trace:configure.in:229: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:229: the top level]) +m4trace:configure.in:230: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:230: the top level]) +m4trace:configure.in:231: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:231: the top level]) +m4trace:configure.in:232: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:232: the top level]) +m4trace:configure.in:233: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:233: the top level]) +m4trace:configure.in:234: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:234: the top level]) +m4trace:configure.in:235: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:235: the top level]) +m4trace:configure.in:236: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:236: the top level]) +m4trace:configure.in:237: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:237: the top level]) +m4trace:configure.in:238: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:238: the top level]) +m4trace:configure.in:239: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:239: the top level]) +m4trace:configure.in:240: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:240: the top level]) +m4trace:configure.in:241: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:241: the top level]) +m4trace:configure.in:244: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:244: the top level]) +m4trace:configure.in:245: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:245: the top level]) +m4trace:configure.in:246: -2- _m4_warn([obsolete], [The macro `AC_HELP_STRING' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:209: AC_HELP_STRING is expanded from... +configure.in:246: the top level]) +m4trace:configure.in:255: -1- AC_DEFINE_TRACE_LITERAL([ALIAS]) +m4trace:configure.in:255: -1- m4_pattern_allow([^ALIAS$]) +m4trace:configure.in:258: -1- AC_DEFINE_TRACE_LITERAL([PUSHD_AND_POPD]) +m4trace:configure.in:258: -1- m4_pattern_allow([^PUSHD_AND_POPD$]) +m4trace:configure.in:261: -1- AC_DEFINE_TRACE_LITERAL([RESTRICTED_SHELL]) +m4trace:configure.in:261: -1- m4_pattern_allow([^RESTRICTED_SHELL$]) +m4trace:configure.in:264: -1- AC_DEFINE_TRACE_LITERAL([PROCESS_SUBSTITUTION]) +m4trace:configure.in:264: -1- m4_pattern_allow([^PROCESS_SUBSTITUTION$]) +m4trace:configure.in:267: -1- AC_DEFINE_TRACE_LITERAL([PROMPT_STRING_DECODE]) +m4trace:configure.in:267: -1- m4_pattern_allow([^PROMPT_STRING_DECODE$]) +m4trace:configure.in:270: -1- AC_DEFINE_TRACE_LITERAL([SELECT_COMMAND]) +m4trace:configure.in:270: -1- m4_pattern_allow([^SELECT_COMMAND$]) +m4trace:configure.in:273: -1- AC_DEFINE_TRACE_LITERAL([HELP_BUILTIN]) +m4trace:configure.in:273: -1- m4_pattern_allow([^HELP_BUILTIN$]) +m4trace:configure.in:276: -1- AC_DEFINE_TRACE_LITERAL([ARRAY_VARS]) +m4trace:configure.in:276: -1- m4_pattern_allow([^ARRAY_VARS$]) +m4trace:configure.in:279: -1- AC_DEFINE_TRACE_LITERAL([DPAREN_ARITHMETIC]) +m4trace:configure.in:279: -1- m4_pattern_allow([^DPAREN_ARITHMETIC$]) +m4trace:configure.in:282: -1- AC_DEFINE_TRACE_LITERAL([BRACE_EXPANSION]) +m4trace:configure.in:282: -1- m4_pattern_allow([^BRACE_EXPANSION$]) +m4trace:configure.in:285: -1- AC_DEFINE_TRACE_LITERAL([DISABLED_BUILTINS]) +m4trace:configure.in:285: -1- m4_pattern_allow([^DISABLED_BUILTINS$]) +m4trace:configure.in:288: -1- AC_DEFINE_TRACE_LITERAL([COMMAND_TIMING]) +m4trace:configure.in:288: -1- m4_pattern_allow([^COMMAND_TIMING$]) +m4trace:configure.in:291: -1- AC_DEFINE_TRACE_LITERAL([DEFAULT_ECHO_TO_XPG]) +m4trace:configure.in:291: -1- m4_pattern_allow([^DEFAULT_ECHO_TO_XPG$]) +m4trace:configure.in:294: -1- AC_DEFINE_TRACE_LITERAL([STRICT_POSIX]) +m4trace:configure.in:294: -1- m4_pattern_allow([^STRICT_POSIX$]) +m4trace:configure.in:297: -1- AC_DEFINE_TRACE_LITERAL([EXTENDED_GLOB]) +m4trace:configure.in:297: -1- m4_pattern_allow([^EXTENDED_GLOB$]) +m4trace:configure.in:300: -1- AC_DEFINE_TRACE_LITERAL([COND_COMMAND]) +m4trace:configure.in:300: -1- m4_pattern_allow([^COND_COMMAND$]) +m4trace:configure.in:303: -1- AC_DEFINE_TRACE_LITERAL([COND_REGEXP]) +m4trace:configure.in:303: -1- m4_pattern_allow([^COND_REGEXP$]) +m4trace:configure.in:306: -1- AC_DEFINE_TRACE_LITERAL([COPROCESS_SUPPORT]) +m4trace:configure.in:306: -1- m4_pattern_allow([^COPROCESS_SUPPORT$]) +m4trace:configure.in:309: -1- AC_DEFINE_TRACE_LITERAL([ARITH_FOR_COMMAND]) +m4trace:configure.in:309: -1- m4_pattern_allow([^ARITH_FOR_COMMAND$]) +m4trace:configure.in:312: -1- AC_DEFINE_TRACE_LITERAL([NETWORK_REDIRECTIONS]) +m4trace:configure.in:312: -1- m4_pattern_allow([^NETWORK_REDIRECTIONS$]) +m4trace:configure.in:315: -1- AC_DEFINE_TRACE_LITERAL([PROGRAMMABLE_COMPLETION]) +m4trace:configure.in:315: -1- m4_pattern_allow([^PROGRAMMABLE_COMPLETION$]) +m4trace:configure.in:318: -1- AC_DEFINE_TRACE_LITERAL([NO_MULTIBYTE_SUPPORT]) +m4trace:configure.in:318: -1- m4_pattern_allow([^NO_MULTIBYTE_SUPPORT$]) +m4trace:configure.in:321: -1- AC_DEFINE_TRACE_LITERAL([DEBUGGER]) +m4trace:configure.in:321: -1- m4_pattern_allow([^DEBUGGER$]) +m4trace:configure.in:324: -1- AC_DEFINE_TRACE_LITERAL([CASEMOD_ATTRS]) +m4trace:configure.in:324: -1- m4_pattern_allow([^CASEMOD_ATTRS$]) +m4trace:configure.in:327: -1- AC_DEFINE_TRACE_LITERAL([CASEMOD_EXPANSIONS]) +m4trace:configure.in:327: -1- m4_pattern_allow([^CASEMOD_EXPANSIONS$]) +m4trace:configure.in:331: -1- AC_DEFINE_TRACE_LITERAL([MEMSCRAMBLE]) +m4trace:configure.in:331: -1- m4_pattern_allow([^MEMSCRAMBLE$]) +m4trace:configure.in:356: -1- AC_SUBST([TESTSCRIPT]) +m4trace:configure.in:356: -1- AC_SUBST_TRACE([TESTSCRIPT]) +m4trace:configure.in:356: -1- m4_pattern_allow([^TESTSCRIPT$]) +m4trace:configure.in:357: -1- AC_SUBST([PURIFY]) +m4trace:configure.in:357: -1- AC_SUBST_TRACE([PURIFY]) +m4trace:configure.in:357: -1- m4_pattern_allow([^PURIFY$]) +m4trace:configure.in:358: -1- AC_SUBST([MALLOC_TARGET]) +m4trace:configure.in:358: -1- AC_SUBST_TRACE([MALLOC_TARGET]) +m4trace:configure.in:358: -1- m4_pattern_allow([^MALLOC_TARGET$]) +m4trace:configure.in:359: -1- AC_SUBST([MALLOC_SRC]) +m4trace:configure.in:359: -1- AC_SUBST_TRACE([MALLOC_SRC]) +m4trace:configure.in:359: -1- m4_pattern_allow([^MALLOC_SRC$]) +m4trace:configure.in:361: -1- AC_SUBST([MALLOC_LIB]) +m4trace:configure.in:361: -1- AC_SUBST_TRACE([MALLOC_LIB]) +m4trace:configure.in:361: -1- m4_pattern_allow([^MALLOC_LIB$]) +m4trace:configure.in:362: -1- AC_SUBST([MALLOC_LIBRARY]) +m4trace:configure.in:362: -1- AC_SUBST_TRACE([MALLOC_LIBRARY]) +m4trace:configure.in:362: -1- m4_pattern_allow([^MALLOC_LIBRARY$]) +m4trace:configure.in:363: -1- AC_SUBST([MALLOC_LDFLAGS]) +m4trace:configure.in:363: -1- AC_SUBST_TRACE([MALLOC_LDFLAGS]) +m4trace:configure.in:363: -1- m4_pattern_allow([^MALLOC_LDFLAGS$]) +m4trace:configure.in:364: -1- AC_SUBST([MALLOC_DEP]) +m4trace:configure.in:364: -1- AC_SUBST_TRACE([MALLOC_DEP]) +m4trace:configure.in:364: -1- m4_pattern_allow([^MALLOC_DEP$]) +m4trace:configure.in:366: -1- AC_SUBST([htmldir]) +m4trace:configure.in:366: -1- AC_SUBST_TRACE([htmldir]) +m4trace:configure.in:366: -1- m4_pattern_allow([^htmldir$]) +m4trace:configure.in:368: -1- AC_SUBST([HELPDIR]) +m4trace:configure.in:368: -1- AC_SUBST_TRACE([HELPDIR]) +m4trace:configure.in:368: -1- m4_pattern_allow([^HELPDIR$]) +m4trace:configure.in:369: -1- AC_SUBST([HELPDIRDEFINE]) +m4trace:configure.in:369: -1- AC_SUBST_TRACE([HELPDIRDEFINE]) +m4trace:configure.in:369: -1- m4_pattern_allow([^HELPDIRDEFINE$]) +m4trace:configure.in:370: -1- AC_SUBST([HELPINSTALL]) +m4trace:configure.in:370: -1- AC_SUBST_TRACE([HELPINSTALL]) +m4trace:configure.in:370: -1- m4_pattern_allow([^HELPINSTALL$]) +m4trace:configure.in:371: -1- AC_SUBST([HELPSTRINGS]) +m4trace:configure.in:371: -1- AC_SUBST_TRACE([HELPSTRINGS]) +m4trace:configure.in:371: -1- m4_pattern_allow([^HELPSTRINGS$]) +m4trace:configure.in:380: -1- AC_SUBST([CC]) +m4trace:configure.in:380: -1- AC_SUBST_TRACE([CC]) +m4trace:configure.in:380: -1- m4_pattern_allow([^CC$]) +m4trace:configure.in:380: -1- AC_SUBST([CFLAGS]) +m4trace:configure.in:380: -1- AC_SUBST_TRACE([CFLAGS]) +m4trace:configure.in:380: -1- m4_pattern_allow([^CFLAGS$]) +m4trace:configure.in:380: -1- AC_SUBST([LDFLAGS]) +m4trace:configure.in:380: -1- AC_SUBST_TRACE([LDFLAGS]) +m4trace:configure.in:380: -1- m4_pattern_allow([^LDFLAGS$]) +m4trace:configure.in:380: -1- AC_SUBST([LIBS]) +m4trace:configure.in:380: -1- AC_SUBST_TRACE([LIBS]) +m4trace:configure.in:380: -1- m4_pattern_allow([^LIBS$]) +m4trace:configure.in:380: -1- AC_SUBST([CPPFLAGS]) +m4trace:configure.in:380: -1- AC_SUBST_TRACE([CPPFLAGS]) +m4trace:configure.in:380: -1- m4_pattern_allow([^CPPFLAGS$]) +m4trace:configure.in:380: -1- AC_SUBST([CC]) +m4trace:configure.in:380: -1- AC_SUBST_TRACE([CC]) +m4trace:configure.in:380: -1- m4_pattern_allow([^CC$]) +m4trace:configure.in:380: -1- AC_SUBST([CC]) +m4trace:configure.in:380: -1- AC_SUBST_TRACE([CC]) +m4trace:configure.in:380: -1- m4_pattern_allow([^CC$]) +m4trace:configure.in:380: -1- AC_SUBST([CC]) +m4trace:configure.in:380: -1- AC_SUBST_TRACE([CC]) +m4trace:configure.in:380: -1- m4_pattern_allow([^CC$]) +m4trace:configure.in:380: -1- AC_SUBST([CC]) +m4trace:configure.in:380: -1- AC_SUBST_TRACE([CC]) +m4trace:configure.in:380: -1- m4_pattern_allow([^CC$]) +m4trace:configure.in:380: -1- AC_SUBST([ac_ct_CC]) +m4trace:configure.in:380: -1- AC_SUBST_TRACE([ac_ct_CC]) +m4trace:configure.in:380: -1- m4_pattern_allow([^ac_ct_CC$]) +m4trace:configure.in:380: -1- AC_SUBST([EXEEXT], [$ac_cv_exeext]) +m4trace:configure.in:380: -1- AC_SUBST_TRACE([EXEEXT]) +m4trace:configure.in:380: -1- m4_pattern_allow([^EXEEXT$]) +m4trace:configure.in:380: -1- AC_SUBST([OBJEXT], [$ac_cv_objext]) +m4trace:configure.in:380: -1- AC_SUBST_TRACE([OBJEXT]) +m4trace:configure.in:380: -1- m4_pattern_allow([^OBJEXT$]) +m4trace:configure.in:384: -1- _m4_warn([obsolete], [The macro `AC_MINIX' is obsolete. +You should run autoupdate.], [../../lib/autoconf/specific.m4:459: AC_MINIX is expanded from... +configure.in:384: the top level]) +m4trace:configure.in:384: -1- AC_SUBST([CPP]) +m4trace:configure.in:384: -1- AC_SUBST_TRACE([CPP]) +m4trace:configure.in:384: -1- m4_pattern_allow([^CPP$]) +m4trace:configure.in:384: -1- AC_SUBST([CPPFLAGS]) +m4trace:configure.in:384: -1- AC_SUBST_TRACE([CPPFLAGS]) +m4trace:configure.in:384: -1- m4_pattern_allow([^CPPFLAGS$]) +m4trace:configure.in:384: -1- AC_SUBST([CPP]) +m4trace:configure.in:384: -1- AC_SUBST_TRACE([CPP]) +m4trace:configure.in:384: -1- m4_pattern_allow([^CPP$]) +m4trace:configure.in:384: -1- AC_SUBST([GREP]) +m4trace:configure.in:384: -1- AC_SUBST_TRACE([GREP]) +m4trace:configure.in:384: -1- m4_pattern_allow([^GREP$]) +m4trace:configure.in:384: -1- AC_SUBST([EGREP]) +m4trace:configure.in:384: -1- AC_SUBST_TRACE([EGREP]) +m4trace:configure.in:384: -1- m4_pattern_allow([^EGREP$]) +m4trace:configure.in:384: -1- AC_DEFINE_TRACE_LITERAL([STDC_HEADERS]) +m4trace:configure.in:384: -1- m4_pattern_allow([^STDC_HEADERS$]) +m4trace:configure.in:384: -1- AH_OUTPUT([STDC_HEADERS], [/* Define to 1 if you have the ANSI C header files. */ +#undef STDC_HEADERS]) +m4trace:configure.in:384: -1- AH_OUTPUT([HAVE_SYS_TYPES_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_TYPES_H]) +m4trace:configure.in:384: -1- AH_OUTPUT([HAVE_SYS_STAT_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_STAT_H]) +m4trace:configure.in:384: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_STDLIB_H]) +m4trace:configure.in:384: -1- AH_OUTPUT([HAVE_STRING_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_STRING_H]) +m4trace:configure.in:384: -1- AH_OUTPUT([HAVE_MEMORY_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_MEMORY_H]) +m4trace:configure.in:384: -1- AH_OUTPUT([HAVE_STRINGS_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_STRINGS_H]) +m4trace:configure.in:384: -1- AH_OUTPUT([HAVE_INTTYPES_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_INTTYPES_H]) +m4trace:configure.in:384: -1- AH_OUTPUT([HAVE_STDINT_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_STDINT_H]) +m4trace:configure.in:384: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_UNISTD_H]) +m4trace:configure.in:384: -1- AC_DEFINE_TRACE_LITERAL([_POSIX_SOURCE]) +m4trace:configure.in:384: -1- m4_pattern_allow([^_POSIX_SOURCE$]) +m4trace:configure.in:384: -1- AH_OUTPUT([_POSIX_SOURCE], [/* Define to 1 if you need to in order for `stat\' and other things to work. */ +#undef _POSIX_SOURCE]) +m4trace:configure.in:384: -1- AC_DEFINE_TRACE_LITERAL([_POSIX_1_SOURCE]) +m4trace:configure.in:384: -1- m4_pattern_allow([^_POSIX_1_SOURCE$]) +m4trace:configure.in:384: -1- AH_OUTPUT([_POSIX_1_SOURCE], [/* Define to 2 if the system does not provide POSIX.1 features except with + this defined. */ +#undef _POSIX_1_SOURCE]) +m4trace:configure.in:384: -1- AC_DEFINE_TRACE_LITERAL([_MINIX]) +m4trace:configure.in:384: -1- m4_pattern_allow([^_MINIX$]) +m4trace:configure.in:384: -1- AH_OUTPUT([_MINIX], [/* Define to 1 if on MINIX. */ +#undef _MINIX]) +m4trace:configure.in:384: -1- AH_OUTPUT([USE_SYSTEM_EXTENSIONS], [/* Enable extensions on AIX 3, Interix. */ +#ifndef _ALL_SOURCE +# undef _ALL_SOURCE +#endif +/* Enable GNU extensions on systems that have them. */ +#ifndef _GNU_SOURCE +# undef _GNU_SOURCE +#endif +/* Enable threading extensions on Solaris. */ +#ifndef _POSIX_PTHREAD_SEMANTICS +# undef _POSIX_PTHREAD_SEMANTICS +#endif +/* Enable extensions on HP NonStop. */ +#ifndef _TANDEM_SOURCE +# undef _TANDEM_SOURCE +#endif +/* Enable general extensions on Solaris. */ +#ifndef __EXTENSIONS__ +# undef __EXTENSIONS__ +#endif +]) +m4trace:configure.in:384: -1- AC_DEFINE_TRACE_LITERAL([__EXTENSIONS__]) +m4trace:configure.in:384: -1- m4_pattern_allow([^__EXTENSIONS__$]) +m4trace:configure.in:384: -1- AC_DEFINE_TRACE_LITERAL([_ALL_SOURCE]) +m4trace:configure.in:384: -1- m4_pattern_allow([^_ALL_SOURCE$]) +m4trace:configure.in:384: -1- AC_DEFINE_TRACE_LITERAL([_GNU_SOURCE]) +m4trace:configure.in:384: -1- m4_pattern_allow([^_GNU_SOURCE$]) +m4trace:configure.in:384: -1- AC_DEFINE_TRACE_LITERAL([_POSIX_PTHREAD_SEMANTICS]) +m4trace:configure.in:384: -1- m4_pattern_allow([^_POSIX_PTHREAD_SEMANTICS$]) +m4trace:configure.in:384: -1- AC_DEFINE_TRACE_LITERAL([_TANDEM_SOURCE]) +m4trace:configure.in:384: -1- m4_pattern_allow([^_TANDEM_SOURCE$]) +m4trace:configure.in:386: -1- AC_DEFINE_TRACE_LITERAL([_FILE_OFFSET_BITS]) +m4trace:configure.in:386: -1- m4_pattern_allow([^_FILE_OFFSET_BITS$]) +m4trace:configure.in:386: -1- AH_OUTPUT([_FILE_OFFSET_BITS], [/* Number of bits in a file offset, on hosts where this is settable. */ +#undef _FILE_OFFSET_BITS]) +m4trace:configure.in:386: -1- AC_DEFINE_TRACE_LITERAL([_LARGE_FILES]) +m4trace:configure.in:386: -1- m4_pattern_allow([^_LARGE_FILES$]) +m4trace:configure.in:386: -1- AH_OUTPUT([_LARGE_FILES], [/* Define for large files, on AIX-style hosts. */ +#undef _LARGE_FILES]) +m4trace:configure.in:423: -1- AC_SUBST([CROSS_COMPILE]) +m4trace:configure.in:423: -1- AC_SUBST_TRACE([CROSS_COMPILE]) +m4trace:configure.in:423: -1- m4_pattern_allow([^CROSS_COMPILE$]) +m4trace:configure.in:425: -1- AC_SUBST([SIGNAMES_H]) +m4trace:configure.in:425: -1- AC_SUBST_TRACE([SIGNAMES_H]) +m4trace:configure.in:425: -1- m4_pattern_allow([^SIGNAMES_H$]) +m4trace:configure.in:426: -1- AC_SUBST([SIGNAMES_O]) +m4trace:configure.in:426: -1- AC_SUBST_TRACE([SIGNAMES_O]) +m4trace:configure.in:426: -1- m4_pattern_allow([^SIGNAMES_O$]) +m4trace:configure.in:435: -1- AC_SUBST([CC_FOR_BUILD]) +m4trace:configure.in:435: -1- AC_SUBST_TRACE([CC_FOR_BUILD]) +m4trace:configure.in:435: -1- m4_pattern_allow([^CC_FOR_BUILD$]) +m4trace:configure.in:458: -1- _m4_warn([obsolete], [The macro `ac_cv_prog_gcc' is obsolete. +You should run autoupdate.], [../../lib/autoconf/c.m4:538: ac_cv_prog_gcc is expanded from... +configure.in:458: the top level]) +m4trace:configure.in:477: -1- AC_SUBST([CFLAGS]) +m4trace:configure.in:477: -1- AC_SUBST_TRACE([CFLAGS]) +m4trace:configure.in:477: -1- m4_pattern_allow([^CFLAGS$]) +m4trace:configure.in:478: -1- AC_SUBST([CPPFLAGS]) +m4trace:configure.in:478: -1- AC_SUBST_TRACE([CPPFLAGS]) +m4trace:configure.in:478: -1- m4_pattern_allow([^CPPFLAGS$]) +m4trace:configure.in:479: -1- AC_SUBST([LDFLAGS]) +m4trace:configure.in:479: -1- AC_SUBST_TRACE([LDFLAGS]) +m4trace:configure.in:479: -1- m4_pattern_allow([^LDFLAGS$]) +m4trace:configure.in:480: -1- AC_SUBST([STATIC_LD]) +m4trace:configure.in:480: -1- AC_SUBST_TRACE([STATIC_LD]) +m4trace:configure.in:480: -1- m4_pattern_allow([^STATIC_LD$]) +m4trace:configure.in:482: -1- AC_SUBST([CFLAGS_FOR_BUILD]) +m4trace:configure.in:482: -1- AC_SUBST_TRACE([CFLAGS_FOR_BUILD]) +m4trace:configure.in:482: -1- m4_pattern_allow([^CFLAGS_FOR_BUILD$]) +m4trace:configure.in:483: -1- AC_SUBST([CPPFLAGS_FOR_BUILD]) +m4trace:configure.in:483: -1- AC_SUBST_TRACE([CPPFLAGS_FOR_BUILD]) +m4trace:configure.in:483: -1- m4_pattern_allow([^CPPFLAGS_FOR_BUILD$]) +m4trace:configure.in:484: -1- AC_SUBST([LDFLAGS_FOR_BUILD]) +m4trace:configure.in:484: -1- AC_SUBST_TRACE([LDFLAGS_FOR_BUILD]) +m4trace:configure.in:484: -1- m4_pattern_allow([^LDFLAGS_FOR_BUILD$]) +m4trace:configure.in:498: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2592: AC_TRY_RUN is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:1763: RL_LIB_READLINE_VERSION is expanded from... +configure.in:498: the top level]) +m4trace:configure.in:498: -1- AC_DEFINE_TRACE_LITERAL([RL_READLINE_VERSION]) +m4trace:configure.in:498: -1- m4_pattern_allow([^RL_READLINE_VERSION$]) +m4trace:configure.in:498: -1- AH_OUTPUT([RL_READLINE_VERSION], [/* encoded version of the installed readline library */ +#undef RL_READLINE_VERSION]) +m4trace:configure.in:498: -1- AC_DEFINE_TRACE_LITERAL([RL_VERSION_MAJOR]) +m4trace:configure.in:498: -1- m4_pattern_allow([^RL_VERSION_MAJOR$]) +m4trace:configure.in:498: -1- AH_OUTPUT([RL_VERSION_MAJOR], [/* major version of installed readline library */ +#undef RL_VERSION_MAJOR]) +m4trace:configure.in:498: -1- AC_DEFINE_TRACE_LITERAL([RL_VERSION_MINOR]) +m4trace:configure.in:498: -1- m4_pattern_allow([^RL_VERSION_MINOR$]) +m4trace:configure.in:498: -1- AH_OUTPUT([RL_VERSION_MINOR], [/* minor version of installed readline library */ +#undef RL_VERSION_MINOR]) +m4trace:configure.in:498: -1- AC_SUBST([RL_VERSION]) +m4trace:configure.in:498: -1- AC_SUBST_TRACE([RL_VERSION]) +m4trace:configure.in:498: -1- m4_pattern_allow([^RL_VERSION$]) +m4trace:configure.in:498: -1- AC_SUBST([RL_MAJOR]) +m4trace:configure.in:498: -1- AC_SUBST_TRACE([RL_MAJOR]) +m4trace:configure.in:498: -1- m4_pattern_allow([^RL_MAJOR$]) +m4trace:configure.in:498: -1- AC_SUBST([RL_MINOR]) +m4trace:configure.in:498: -1- AC_SUBST_TRACE([RL_MINOR]) +m4trace:configure.in:498: -1- m4_pattern_allow([^RL_MINOR$]) +m4trace:configure.in:511: -1- AC_DEFINE_TRACE_LITERAL([READLINE]) +m4trace:configure.in:511: -1- m4_pattern_allow([^READLINE$]) +m4trace:configure.in:546: -1- AC_DEFINE_TRACE_LITERAL([HISTORY]) +m4trace:configure.in:546: -1- m4_pattern_allow([^HISTORY$]) +m4trace:configure.in:549: -1- AC_DEFINE_TRACE_LITERAL([BANG_HISTORY]) +m4trace:configure.in:549: -1- m4_pattern_allow([^BANG_HISTORY$]) +m4trace:configure.in:579: -1- AC_SUBST([READLINE_LIB]) +m4trace:configure.in:579: -1- AC_SUBST_TRACE([READLINE_LIB]) +m4trace:configure.in:579: -1- m4_pattern_allow([^READLINE_LIB$]) +m4trace:configure.in:580: -1- AC_SUBST([READLINE_DEP]) +m4trace:configure.in:580: -1- AC_SUBST_TRACE([READLINE_DEP]) +m4trace:configure.in:580: -1- m4_pattern_allow([^READLINE_DEP$]) +m4trace:configure.in:581: -1- AC_SUBST([RL_LIBDIR]) +m4trace:configure.in:581: -1- AC_SUBST_TRACE([RL_LIBDIR]) +m4trace:configure.in:581: -1- m4_pattern_allow([^RL_LIBDIR$]) +m4trace:configure.in:582: -1- AC_SUBST([RL_INCLUDEDIR]) +m4trace:configure.in:582: -1- AC_SUBST_TRACE([RL_INCLUDEDIR]) +m4trace:configure.in:582: -1- m4_pattern_allow([^RL_INCLUDEDIR$]) +m4trace:configure.in:583: -1- AC_SUBST([RL_INCLUDE]) +m4trace:configure.in:583: -1- AC_SUBST_TRACE([RL_INCLUDE]) +m4trace:configure.in:583: -1- m4_pattern_allow([^RL_INCLUDE$]) +m4trace:configure.in:584: -1- AC_SUBST([HISTORY_LIB]) +m4trace:configure.in:584: -1- AC_SUBST_TRACE([HISTORY_LIB]) +m4trace:configure.in:584: -1- m4_pattern_allow([^HISTORY_LIB$]) +m4trace:configure.in:585: -1- AC_SUBST([HISTORY_DEP]) +m4trace:configure.in:585: -1- AC_SUBST_TRACE([HISTORY_DEP]) +m4trace:configure.in:585: -1- m4_pattern_allow([^HISTORY_DEP$]) +m4trace:configure.in:586: -1- AC_SUBST([HIST_LIBDIR]) +m4trace:configure.in:586: -1- AC_SUBST_TRACE([HIST_LIBDIR]) +m4trace:configure.in:586: -1- m4_pattern_allow([^HIST_LIBDIR$]) +m4trace:configure.in:587: -1- AC_SUBST([TILDE_LIB]) +m4trace:configure.in:587: -1- AC_SUBST_TRACE([TILDE_LIB]) +m4trace:configure.in:587: -1- m4_pattern_allow([^TILDE_LIB$]) +m4trace:configure.in:592: -1- AC_REQUIRE_AUX_FILE([install-sh]) +m4trace:configure.in:592: -1- AC_SUBST([INSTALL_PROGRAM]) +m4trace:configure.in:592: -1- AC_SUBST_TRACE([INSTALL_PROGRAM]) +m4trace:configure.in:592: -1- m4_pattern_allow([^INSTALL_PROGRAM$]) +m4trace:configure.in:592: -1- AC_SUBST([INSTALL_SCRIPT]) +m4trace:configure.in:592: -1- AC_SUBST_TRACE([INSTALL_SCRIPT]) +m4trace:configure.in:592: -1- m4_pattern_allow([^INSTALL_SCRIPT$]) +m4trace:configure.in:592: -1- AC_SUBST([INSTALL_DATA]) +m4trace:configure.in:592: -1- AC_SUBST_TRACE([INSTALL_DATA]) +m4trace:configure.in:592: -1- m4_pattern_allow([^INSTALL_DATA$]) +m4trace:configure.in:593: -1- AC_SUBST([AR]) +m4trace:configure.in:593: -1- AC_SUBST_TRACE([AR]) +m4trace:configure.in:593: -1- m4_pattern_allow([^AR$]) +m4trace:configure.in:597: -1- AC_SUBST([RANLIB]) +m4trace:configure.in:597: -1- AC_SUBST_TRACE([RANLIB]) +m4trace:configure.in:597: -1- m4_pattern_allow([^RANLIB$]) +m4trace:configure.in:598: -1- AC_SUBST([YACC]) +m4trace:configure.in:598: -1- AC_SUBST_TRACE([YACC]) +m4trace:configure.in:598: -1- m4_pattern_allow([^YACC$]) +m4trace:configure.in:598: -1- AC_SUBST([YACC]) +m4trace:configure.in:598: -1- AC_SUBST_TRACE([YACC]) +m4trace:configure.in:598: -1- m4_pattern_allow([^YACC$]) +m4trace:configure.in:598: -1- AC_SUBST([YFLAGS]) +m4trace:configure.in:598: -1- AC_SUBST_TRACE([YFLAGS]) +m4trace:configure.in:598: -1- m4_pattern_allow([^YFLAGS$]) +m4trace:configure.in:599: -1- AC_SUBST([SET_MAKE]) +m4trace:configure.in:599: -1- AC_SUBST_TRACE([SET_MAKE]) +m4trace:configure.in:599: -1- m4_pattern_allow([^SET_MAKE$]) +m4trace:configure.in:605: -1- AC_SUBST([MAKE_SHELL]) +m4trace:configure.in:605: -1- AC_SUBST_TRACE([MAKE_SHELL]) +m4trace:configure.in:605: -1- m4_pattern_allow([^MAKE_SHELL$]) +m4trace:configure.in:627: -1- AC_SUBST([SIZE]) +m4trace:configure.in:627: -1- AC_SUBST_TRACE([SIZE]) +m4trace:configure.in:627: -1- m4_pattern_allow([^SIZE$]) +m4trace:configure.in:630: -1- AC_DEFINE_TRACE_LITERAL([_GNU_SOURCE]) +m4trace:configure.in:630: -1- m4_pattern_allow([^_GNU_SOURCE$]) +m4trace:configure.in:633: -1- AC_DEFINE_TRACE_LITERAL([const]) +m4trace:configure.in:633: -1- m4_pattern_allow([^const$]) +m4trace:configure.in:633: -1- AH_OUTPUT([const], [/* Define to empty if `const\' does not conform to ANSI C. */ +#undef const]) +m4trace:configure.in:634: -1- AH_OUTPUT([inline], [/* Define to `__inline__\' or `__inline\' if that\'s what the C compiler + calls it, or to nothing if \'inline\' is not supported under any name. */ +#ifndef __cplusplus +#undef inline +#endif]) +m4trace:configure.in:635: -1- AH_OUTPUT([WORDS_BIGENDIAN], [/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most + significant byte first (like Motorola and SPARC, unlike Intel). */ +#if defined AC_APPLE_UNIVERSAL_BUILD +# if defined __BIG_ENDIAN__ +# define WORDS_BIGENDIAN 1 +# endif +#else +# ifndef WORDS_BIGENDIAN +# undef WORDS_BIGENDIAN +# endif +#endif]) +m4trace:configure.in:635: -1- AC_DEFINE_TRACE_LITERAL([WORDS_BIGENDIAN]) +m4trace:configure.in:635: -1- m4_pattern_allow([^WORDS_BIGENDIAN$]) +m4trace:configure.in:635: -1- AC_DEFINE_TRACE_LITERAL([AC_APPLE_UNIVERSAL_BUILD]) +m4trace:configure.in:635: -1- m4_pattern_allow([^AC_APPLE_UNIVERSAL_BUILD$]) +m4trace:configure.in:635: -1- AH_OUTPUT([AC_APPLE_UNIVERSAL_BUILD], [/* Define if building universal (internal helper macro) */ +#undef AC_APPLE_UNIVERSAL_BUILD]) +m4trace:configure.in:636: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRINGIZE]) +m4trace:configure.in:636: -1- m4_pattern_allow([^HAVE_STRINGIZE$]) +m4trace:configure.in:636: -1- AH_OUTPUT([HAVE_STRINGIZE], [/* Define to 1 if cpp supports the ANSI @%:@ stringizing operator. */ +#undef HAVE_STRINGIZE]) +m4trace:configure.in:637: -1- _m4_warn([obsolete], [The macro `AC_C_LONG_DOUBLE' is obsolete. +You should run autoupdate.], [../../lib/autoconf/types.m4:455: AC_C_LONG_DOUBLE is expanded from... +configure.in:637: the top level]) +m4trace:configure.in:637: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LONG_DOUBLE_WIDER]) +m4trace:configure.in:637: -1- m4_pattern_allow([^HAVE_LONG_DOUBLE_WIDER$]) +m4trace:configure.in:637: -1- AH_OUTPUT([HAVE_LONG_DOUBLE_WIDER], [/* Define to 1 if the type `long double\' works and has more range or precision + than `double\'. */ +#undef HAVE_LONG_DOUBLE_WIDER]) +m4trace:configure.in:637: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LONG_DOUBLE]) +m4trace:configure.in:637: -1- m4_pattern_allow([^HAVE_LONG_DOUBLE$]) +m4trace:configure.in:637: -1- AH_OUTPUT([HAVE_LONG_DOUBLE], [/* Define to 1 if the type `long double\' works and has more range or precision + than `double\'. */ +#undef HAVE_LONG_DOUBLE]) +m4trace:configure.in:638: -1- AC_DEFINE_TRACE_LITERAL([PROTOTYPES]) +m4trace:configure.in:638: -1- m4_pattern_allow([^PROTOTYPES$]) +m4trace:configure.in:638: -1- AH_OUTPUT([PROTOTYPES], [/* Define to 1 if the C compiler supports function prototypes. */ +#undef PROTOTYPES]) +m4trace:configure.in:638: -1- AC_DEFINE_TRACE_LITERAL([__PROTOTYPES]) +m4trace:configure.in:638: -1- m4_pattern_allow([^__PROTOTYPES$]) +m4trace:configure.in:638: -1- AH_OUTPUT([__PROTOTYPES], [/* Define like PROTOTYPES; this can be used by system headers. */ +#undef __PROTOTYPES]) +m4trace:configure.in:639: -1- AH_OUTPUT([__CHAR_UNSIGNED__], [/* Define to 1 if type `char\' is unsigned and you are not using gcc. */ +#ifndef __CHAR_UNSIGNED__ +# undef __CHAR_UNSIGNED__ +#endif]) +m4trace:configure.in:639: -1- AC_DEFINE_TRACE_LITERAL([__CHAR_UNSIGNED__]) +m4trace:configure.in:639: -1- m4_pattern_allow([^__CHAR_UNSIGNED__$]) +m4trace:configure.in:640: -1- AC_DEFINE_TRACE_LITERAL([volatile]) +m4trace:configure.in:640: -1- m4_pattern_allow([^volatile$]) +m4trace:configure.in:640: -1- AH_OUTPUT([volatile], [/* Define to empty if the keyword `volatile\' does not work. Warning: valid + code using `volatile\' can become incorrect without. Disable with care. */ +#undef volatile]) +m4trace:configure.in:641: -1- AH_OUTPUT([restrict], [/* Define to the equivalent of the C99 \'restrict\' keyword, or to + nothing if this is not supported. Do not define if restrict is + supported directly. */ +#undef restrict +/* Work around a bug in Sun C++: it does not support _Restrict, even + though the corresponding Sun C compiler does, which causes + "#define restrict _Restrict" in the previous line. Perhaps some future + version of Sun C++ will work with _Restrict; if so, it\'ll probably + define __RESTRICT, just as Sun C does. */ +#if defined __SUNPRO_CC && !defined __RESTRICT +# define _Restrict +#endif]) +m4trace:configure.in:641: -1- AC_DEFINE_TRACE_LITERAL([restrict]) +m4trace:configure.in:641: -1- m4_pattern_allow([^restrict$]) +m4trace:configure.in:641: -1- AC_DEFINE_TRACE_LITERAL([restrict]) +m4trace:configure.in:641: -1- m4_pattern_allow([^restrict$]) +m4trace:configure.in:644: -1- AM_GNU_GETTEXT([no-libtool], [need-ngettext], [lib/intl]) +m4trace:configure.in:644: -1- AC_SUBST([MKINSTALLDIRS]) +m4trace:configure.in:644: -1- AC_SUBST_TRACE([MKINSTALLDIRS]) +m4trace:configure.in:644: -1- m4_pattern_allow([^MKINSTALLDIRS$]) +m4trace:configure.in:644: -1- AC_SUBST([USE_NLS]) +m4trace:configure.in:644: -1- AC_SUBST_TRACE([USE_NLS]) +m4trace:configure.in:644: -1- m4_pattern_allow([^USE_NLS$]) +m4trace:configure.in:644: -1- AC_SUBST([MSGFMT]) +m4trace:configure.in:644: -1- AC_SUBST_TRACE([MSGFMT]) +m4trace:configure.in:644: -1- m4_pattern_allow([^MSGFMT$]) +m4trace:configure.in:644: -1- AC_SUBST([GMSGFMT]) +m4trace:configure.in:644: -1- AC_SUBST_TRACE([GMSGFMT]) +m4trace:configure.in:644: -1- m4_pattern_allow([^GMSGFMT$]) +m4trace:configure.in:644: -1- AC_SUBST([XGETTEXT]) +m4trace:configure.in:644: -1- AC_SUBST_TRACE([XGETTEXT]) +m4trace:configure.in:644: -1- m4_pattern_allow([^XGETTEXT$]) +m4trace:configure.in:644: -1- AC_SUBST([MSGMERGE]) +m4trace:configure.in:644: -1- AC_SUBST_TRACE([MSGMERGE]) +m4trace:configure.in:644: -1- m4_pattern_allow([^MSGMERGE$]) +m4trace:configure.in:644: -1- _m4_warn([obsolete], [The macro `AC_OUTPUT_COMMANDS' is obsolete. +You should run autoupdate.], [../../lib/autoconf/status.m4:1022: AC_OUTPUT_COMMANDS is expanded from... +aclocal.m4:3664: AM_PO_SUBDIRS is expanded from... +aclocal.m4:2068: AM_GNU_GETTEXT is expanded from... +configure.in:644: the top level]) +m4trace:configure.in:644: -1- AC_DEFINE_TRACE_LITERAL([off_t]) +m4trace:configure.in:644: -1- m4_pattern_allow([^off_t$]) +m4trace:configure.in:644: -1- AH_OUTPUT([off_t], [/* Define to `long int\' if does not define. */ +#undef off_t]) +m4trace:configure.in:644: -1- AC_DEFINE_TRACE_LITERAL([size_t]) +m4trace:configure.in:644: -1- m4_pattern_allow([^size_t$]) +m4trace:configure.in:644: -1- AH_OUTPUT([size_t], [/* Define to `unsigned int\' if does not define. */ +#undef size_t]) +m4trace:configure.in:644: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ALLOCA_H]) +m4trace:configure.in:644: -1- m4_pattern_allow([^HAVE_ALLOCA_H$]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_ALLOCA_H], [/* Define to 1 if you have and it should be used (not on Ultrix). + */ +#undef HAVE_ALLOCA_H]) +m4trace:configure.in:644: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ALLOCA]) +m4trace:configure.in:644: -1- m4_pattern_allow([^HAVE_ALLOCA$]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_ALLOCA], [/* Define to 1 if you have `alloca\', as a function or macro. */ +#undef HAVE_ALLOCA]) +m4trace:configure.in:644: -1- AC_LIBSOURCE([alloca.c]) +m4trace:configure.in:644: -1- AC_SUBST([ALLOCA], [\${LIBOBJDIR}alloca.$ac_objext]) +m4trace:configure.in:644: -1- AC_SUBST_TRACE([ALLOCA]) +m4trace:configure.in:644: -1- m4_pattern_allow([^ALLOCA$]) +m4trace:configure.in:644: -1- AC_DEFINE_TRACE_LITERAL([C_ALLOCA]) +m4trace:configure.in:644: -1- m4_pattern_allow([^C_ALLOCA$]) +m4trace:configure.in:644: -1- AH_OUTPUT([C_ALLOCA], [/* Define to 1 if using `alloca.c\'. */ +#undef C_ALLOCA]) +m4trace:configure.in:644: -1- AC_DEFINE_TRACE_LITERAL([CRAY_STACKSEG_END]) +m4trace:configure.in:644: -1- m4_pattern_allow([^CRAY_STACKSEG_END$]) +m4trace:configure.in:644: -1- AH_OUTPUT([CRAY_STACKSEG_END], [/* Define to one of `_getb67\', `GETB67\', `getb67\' for Cray-2 and Cray-YMP + systems. This function is required for `alloca.c\' support on those systems. + */ +#undef CRAY_STACKSEG_END]) +m4trace:configure.in:644: -1- AH_OUTPUT([STACK_DIRECTION], [/* If using the C implementation of alloca, define if you know the + direction of stack growth for your system; otherwise it will be + automatically deduced at runtime. + STACK_DIRECTION > 0 => grows toward higher addresses + STACK_DIRECTION < 0 => grows toward lower addresses + STACK_DIRECTION = 0 => direction of growth unknown */ +@%:@undef STACK_DIRECTION]) +m4trace:configure.in:644: -1- AC_DEFINE_TRACE_LITERAL([STACK_DIRECTION]) +m4trace:configure.in:644: -1- m4_pattern_allow([^STACK_DIRECTION$]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_STDLIB_H]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_UNISTD_H]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_GETPAGESIZE], [/* Define to 1 if you have the `getpagesize\' function. */ +#undef HAVE_GETPAGESIZE]) +m4trace:configure.in:644: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MMAP]) +m4trace:configure.in:644: -1- m4_pattern_allow([^HAVE_MMAP$]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_MMAP], [/* Define to 1 if you have a working `mmap\' system call. */ +#undef HAVE_MMAP]) +m4trace:configure.in:644: -1- AC_SUBST([GLIBC21]) +m4trace:configure.in:644: -1- AC_SUBST_TRACE([GLIBC21]) +m4trace:configure.in:644: -1- m4_pattern_allow([^GLIBC21$]) +m4trace:configure.in:644: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2592: AC_TRY_RUN is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from... +aclocal.m4:2570: gt_INTDIV0 is expanded from... +aclocal.m4:2356: AM_INTL_SUBDIR is expanded from... +aclocal.m4:2068: AM_GNU_GETTEXT is expanded from... +configure.in:644: the top level]) +m4trace:configure.in:644: -1- AC_DEFINE_TRACE_LITERAL([INTDIV0_RAISES_SIGFPE]) +m4trace:configure.in:644: -1- m4_pattern_allow([^INTDIV0_RAISES_SIGFPE$]) +m4trace:configure.in:644: -1- AH_OUTPUT([INTDIV0_RAISES_SIGFPE], [/* Define if integer division by zero raises signal SIGFPE. */ +#undef INTDIV0_RAISES_SIGFPE]) +m4trace:configure.in:644: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2470: AC_TRY_COMPILE is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from... +aclocal.m4:2672: jm_AC_HEADER_INTTYPES_H is expanded from... +aclocal.m4:3973: jm_AC_TYPE_UINTMAX_T is expanded from... +aclocal.m4:2356: AM_INTL_SUBDIR is expanded from... +aclocal.m4:2068: AM_GNU_GETTEXT is expanded from... +configure.in:644: the top level]) +m4trace:configure.in:644: -1- AC_DEFINE_TRACE_LITERAL([HAVE_INTTYPES_H_WITH_UINTMAX]) +m4trace:configure.in:644: -1- m4_pattern_allow([^HAVE_INTTYPES_H_WITH_UINTMAX$]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_INTTYPES_H_WITH_UINTMAX], [/* Define if exists, doesn\'t clash with , and + declares uintmax_t. */ +#undef HAVE_INTTYPES_H_WITH_UINTMAX]) +m4trace:configure.in:644: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2470: AC_TRY_COMPILE is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from... +aclocal.m4:3943: jm_AC_HEADER_STDINT_H is expanded from... +aclocal.m4:3973: jm_AC_TYPE_UINTMAX_T is expanded from... +aclocal.m4:2356: AM_INTL_SUBDIR is expanded from... +aclocal.m4:2068: AM_GNU_GETTEXT is expanded from... +configure.in:644: the top level]) +m4trace:configure.in:644: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STDINT_H_WITH_UINTMAX]) +m4trace:configure.in:644: -1- m4_pattern_allow([^HAVE_STDINT_H_WITH_UINTMAX$]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_STDINT_H_WITH_UINTMAX], [/* Define if exists, doesn\'t clash with , and declares + uintmax_t. */ +#undef HAVE_STDINT_H_WITH_UINTMAX]) +m4trace:configure.in:644: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2527: AC_TRY_LINK is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from... +aclocal.m4:4000: jm_AC_TYPE_UNSIGNED_LONG_LONG is expanded from... +aclocal.m4:3973: jm_AC_TYPE_UINTMAX_T is expanded from... +aclocal.m4:2356: AM_INTL_SUBDIR is expanded from... +aclocal.m4:2068: AM_GNU_GETTEXT is expanded from... +configure.in:644: the top level]) +m4trace:configure.in:644: -1- AC_DEFINE_TRACE_LITERAL([HAVE_UNSIGNED_LONG_LONG]) +m4trace:configure.in:644: -1- m4_pattern_allow([^HAVE_UNSIGNED_LONG_LONG$]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_UNSIGNED_LONG_LONG], [/* Define if you have the unsigned long long type. */ +#undef HAVE_UNSIGNED_LONG_LONG]) +m4trace:configure.in:644: -1- AC_DEFINE_TRACE_LITERAL([uintmax_t]) +m4trace:configure.in:644: -1- m4_pattern_allow([^uintmax_t$]) +m4trace:configure.in:644: -1- AH_OUTPUT([uintmax_t], [/* Define to unsigned long or unsigned long long if and + don\'t define. */ +#undef uintmax_t]) +m4trace:configure.in:644: -1- AC_DEFINE_TRACE_LITERAL([HAVE_UINTMAX_T]) +m4trace:configure.in:644: -1- m4_pattern_allow([^HAVE_UINTMAX_T$]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_UINTMAX_T], [/* Define if you have the \'uintmax_t\' type in or . */ +#undef HAVE_UINTMAX_T]) +m4trace:configure.in:644: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2470: AC_TRY_COMPILE is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from... +aclocal.m4:2645: gt_HEADER_INTTYPES_H is expanded from... +aclocal.m4:2356: AM_INTL_SUBDIR is expanded from... +aclocal.m4:2068: AM_GNU_GETTEXT is expanded from... +configure.in:644: the top level]) +m4trace:configure.in:644: -1- AC_DEFINE_TRACE_LITERAL([HAVE_INTTYPES_H]) +m4trace:configure.in:644: -1- m4_pattern_allow([^HAVE_INTTYPES_H$]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_INTTYPES_H], [/* Define if exists and doesn\'t clash with . */ +#undef HAVE_INTTYPES_H]) +m4trace:configure.in:644: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2470: AC_TRY_COMPILE is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from... +aclocal.m4:2700: gt_INTTYPES_PRI is expanded from... +aclocal.m4:2356: AM_INTL_SUBDIR is expanded from... +aclocal.m4:2068: AM_GNU_GETTEXT is expanded from... +configure.in:644: the top level]) +m4trace:configure.in:644: -1- AC_DEFINE_TRACE_LITERAL([PRI_MACROS_BROKEN]) +m4trace:configure.in:644: -1- m4_pattern_allow([^PRI_MACROS_BROKEN$]) +m4trace:configure.in:644: -1- AH_OUTPUT([PRI_MACROS_BROKEN], [/* Define if exists and defines unusable PRI* macros. */ +#undef PRI_MACROS_BROKEN]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_ARGZ_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_ARGZ_H]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_LIMITS_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_LIMITS_H]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_LOCALE_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_LOCALE_H]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_NL_TYPES_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_NL_TYPES_H]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_MALLOC_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_MALLOC_H]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_STDDEF_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_STDDEF_H]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_STDLIB_H]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_STRING_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_STRING_H]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_UNISTD_H]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_SYS_PARAM_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_PARAM_H]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_FEOF_UNLOCKED], [/* Define to 1 if you have the `feof_unlocked\' function. */ +#undef HAVE_FEOF_UNLOCKED]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_FGETS_UNLOCKED], [/* Define to 1 if you have the `fgets_unlocked\' function. */ +#undef HAVE_FGETS_UNLOCKED]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_GETC_UNLOCKED], [/* Define to 1 if you have the `getc_unlocked\' function. */ +#undef HAVE_GETC_UNLOCKED]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_GETCWD], [/* Define to 1 if you have the `getcwd\' function. */ +#undef HAVE_GETCWD]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_GETEGID], [/* Define to 1 if you have the `getegid\' function. */ +#undef HAVE_GETEGID]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_GETEUID], [/* Define to 1 if you have the `geteuid\' function. */ +#undef HAVE_GETEUID]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_GETGID], [/* Define to 1 if you have the `getgid\' function. */ +#undef HAVE_GETGID]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_GETUID], [/* Define to 1 if you have the `getuid\' function. */ +#undef HAVE_GETUID]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_MEMPCPY], [/* Define to 1 if you have the `mempcpy\' function. */ +#undef HAVE_MEMPCPY]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_MUNMAP], [/* Define to 1 if you have the `munmap\' function. */ +#undef HAVE_MUNMAP]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_PUTENV], [/* Define to 1 if you have the `putenv\' function. */ +#undef HAVE_PUTENV]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_SETENV], [/* Define to 1 if you have the `setenv\' function. */ +#undef HAVE_SETENV]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_SETLOCALE], [/* Define to 1 if you have the `setlocale\' function. */ +#undef HAVE_SETLOCALE]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_LOCALECONV], [/* Define to 1 if you have the `localeconv\' function. */ +#undef HAVE_LOCALECONV]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_STPCPY], [/* Define to 1 if you have the `stpcpy\' function. */ +#undef HAVE_STPCPY]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_STRCASECMP], [/* Define to 1 if you have the `strcasecmp\' function. */ +#undef HAVE_STRCASECMP]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_STRDUP], [/* Define to 1 if you have the `strdup\' function. */ +#undef HAVE_STRDUP]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_STRTOUL], [/* Define to 1 if you have the `strtoul\' function. */ +#undef HAVE_STRTOUL]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_TSEARCH], [/* Define to 1 if you have the `tsearch\' function. */ +#undef HAVE_TSEARCH]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE___ARGZ_COUNT], [/* Define to 1 if you have the `__argz_count\' function. */ +#undef HAVE___ARGZ_COUNT]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE___ARGZ_STRINGIFY], [/* Define to 1 if you have the `__argz_stringify\' function. */ +#undef HAVE___ARGZ_STRINGIFY]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE___ARGZ_NEXT], [/* Define to 1 if you have the `__argz_next\' function. */ +#undef HAVE___ARGZ_NEXT]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE___FSETLOCKING], [/* Define to 1 if you have the `__fsetlocking\' function. */ +#undef HAVE___FSETLOCKING]) +m4trace:configure.in:644: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2527: AC_TRY_LINK is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from... +aclocal.m4:2478: AM_ICONV_LINK is expanded from... +aclocal.m4:2533: AM_ICONV is expanded from... +aclocal.m4:2356: AM_INTL_SUBDIR is expanded from... +aclocal.m4:2068: AM_GNU_GETTEXT is expanded from... +configure.in:644: the top level]) +m4trace:configure.in:644: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2527: AC_TRY_LINK is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from... +aclocal.m4:2478: AM_ICONV_LINK is expanded from... +aclocal.m4:2533: AM_ICONV is expanded from... +aclocal.m4:2356: AM_INTL_SUBDIR is expanded from... +aclocal.m4:2068: AM_GNU_GETTEXT is expanded from... +configure.in:644: the top level]) +m4trace:configure.in:644: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ICONV]) +m4trace:configure.in:644: -1- m4_pattern_allow([^HAVE_ICONV$]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_ICONV], [/* Define if you have the iconv() function. */ +#undef HAVE_ICONV]) +m4trace:configure.in:644: -1- AC_SUBST([LIBICONV]) +m4trace:configure.in:644: -1- AC_SUBST_TRACE([LIBICONV]) +m4trace:configure.in:644: -1- m4_pattern_allow([^LIBICONV$]) +m4trace:configure.in:644: -1- AC_SUBST([LTLIBICONV]) +m4trace:configure.in:644: -1- AC_SUBST_TRACE([LTLIBICONV]) +m4trace:configure.in:644: -1- m4_pattern_allow([^LTLIBICONV$]) +m4trace:configure.in:644: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2470: AC_TRY_COMPILE is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:2533: AM_ICONV is expanded from... +aclocal.m4:2356: AM_INTL_SUBDIR is expanded from... +aclocal.m4:2068: AM_GNU_GETTEXT is expanded from... +configure.in:644: the top level]) +m4trace:configure.in:644: -1- AC_DEFINE_TRACE_LITERAL([ICONV_CONST]) +m4trace:configure.in:644: -1- m4_pattern_allow([^ICONV_CONST$]) +m4trace:configure.in:644: -1- AH_OUTPUT([ICONV_CONST], [/* Define as const if the declaration of iconv() needs const. */ +#undef ICONV_CONST]) +m4trace:configure.in:644: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2527: AC_TRY_LINK is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from... +aclocal.m4:1997: AM_LANGINFO_CODESET is expanded from... +aclocal.m4:2356: AM_INTL_SUBDIR is expanded from... +aclocal.m4:2068: AM_GNU_GETTEXT is expanded from... +configure.in:644: the top level]) +m4trace:configure.in:644: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LANGINFO_CODESET]) +m4trace:configure.in:644: -1- m4_pattern_allow([^HAVE_LANGINFO_CODESET$]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_LANGINFO_CODESET], [/* Define if you have and nl_langinfo(CODESET). */ +#undef HAVE_LANGINFO_CODESET]) +m4trace:configure.in:644: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2527: AC_TRY_LINK is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from... +aclocal.m4:2767: AM_LC_MESSAGES is expanded from... +aclocal.m4:2356: AM_INTL_SUBDIR is expanded from... +aclocal.m4:2068: AM_GNU_GETTEXT is expanded from... +configure.in:644: the top level]) +m4trace:configure.in:644: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LC_MESSAGES]) +m4trace:configure.in:644: -1- m4_pattern_allow([^HAVE_LC_MESSAGES$]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_LC_MESSAGES], [/* Define if your file defines LC_MESSAGES. */ +#undef HAVE_LC_MESSAGES]) +m4trace:configure.in:644: -1- AC_SUBST([INTLBISON]) +m4trace:configure.in:644: -1- AC_SUBST_TRACE([INTLBISON]) +m4trace:configure.in:644: -1- m4_pattern_allow([^INTLBISON$]) +m4trace:configure.in:644: -1- AC_SUBST([USE_NLS]) +m4trace:configure.in:644: -1- AC_SUBST_TRACE([USE_NLS]) +m4trace:configure.in:644: -1- m4_pattern_allow([^USE_NLS$]) +m4trace:configure.in:644: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2527: AC_TRY_LINK is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from... +aclocal.m4:2068: AM_GNU_GETTEXT is expanded from... +configure.in:644: the top level]) +m4trace:configure.in:644: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2527: AC_TRY_LINK is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from... +aclocal.m4:2068: AM_GNU_GETTEXT is expanded from... +configure.in:644: the top level]) +m4trace:configure.in:644: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2527: AC_TRY_LINK is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from... +aclocal.m4:2068: AM_GNU_GETTEXT is expanded from... +configure.in:644: the top level]) +m4trace:configure.in:644: -1- AC_DEFINE_TRACE_LITERAL([ENABLE_NLS]) +m4trace:configure.in:644: -1- m4_pattern_allow([^ENABLE_NLS$]) +m4trace:configure.in:644: -1- AH_OUTPUT([ENABLE_NLS], [/* Define to 1 if translation of program messages to the user\'s native + language is requested. */ +#undef ENABLE_NLS]) +m4trace:configure.in:644: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETTEXT]) +m4trace:configure.in:644: -1- m4_pattern_allow([^HAVE_GETTEXT$]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_GETTEXT], [/* Define if the GNU gettext() function is already present or preinstalled. */ +#undef HAVE_GETTEXT]) +m4trace:configure.in:644: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DCGETTEXT]) +m4trace:configure.in:644: -1- m4_pattern_allow([^HAVE_DCGETTEXT$]) +m4trace:configure.in:644: -1- AH_OUTPUT([HAVE_DCGETTEXT], [/* Define if the GNU dcgettext() function is already present or preinstalled. + */ +#undef HAVE_DCGETTEXT]) +m4trace:configure.in:644: -1- AC_SUBST([BUILD_INCLUDED_LIBINTL]) +m4trace:configure.in:644: -1- AC_SUBST_TRACE([BUILD_INCLUDED_LIBINTL]) +m4trace:configure.in:644: -1- m4_pattern_allow([^BUILD_INCLUDED_LIBINTL$]) +m4trace:configure.in:644: -1- AC_SUBST([USE_INCLUDED_LIBINTL]) +m4trace:configure.in:644: -1- AC_SUBST_TRACE([USE_INCLUDED_LIBINTL]) +m4trace:configure.in:644: -1- m4_pattern_allow([^USE_INCLUDED_LIBINTL$]) +m4trace:configure.in:644: -1- AC_SUBST([CATOBJEXT]) +m4trace:configure.in:644: -1- AC_SUBST_TRACE([CATOBJEXT]) +m4trace:configure.in:644: -1- m4_pattern_allow([^CATOBJEXT$]) +m4trace:configure.in:644: -1- AC_SUBST([DATADIRNAME]) +m4trace:configure.in:644: -1- AC_SUBST_TRACE([DATADIRNAME]) +m4trace:configure.in:644: -1- m4_pattern_allow([^DATADIRNAME$]) +m4trace:configure.in:644: -1- AC_SUBST([INSTOBJEXT]) +m4trace:configure.in:644: -1- AC_SUBST_TRACE([INSTOBJEXT]) +m4trace:configure.in:644: -1- m4_pattern_allow([^INSTOBJEXT$]) +m4trace:configure.in:644: -1- AC_SUBST([GENCAT]) +m4trace:configure.in:644: -1- AC_SUBST_TRACE([GENCAT]) +m4trace:configure.in:644: -1- m4_pattern_allow([^GENCAT$]) +m4trace:configure.in:644: -1- AC_SUBST([INTLOBJS]) +m4trace:configure.in:644: -1- AC_SUBST_TRACE([INTLOBJS]) +m4trace:configure.in:644: -1- m4_pattern_allow([^INTLOBJS$]) +m4trace:configure.in:644: -1- AC_SUBST([INTL_LIBTOOL_SUFFIX_PREFIX]) +m4trace:configure.in:644: -1- AC_SUBST_TRACE([INTL_LIBTOOL_SUFFIX_PREFIX]) +m4trace:configure.in:644: -1- m4_pattern_allow([^INTL_LIBTOOL_SUFFIX_PREFIX$]) +m4trace:configure.in:644: -1- AC_SUBST([INTLLIBS]) +m4trace:configure.in:644: -1- AC_SUBST_TRACE([INTLLIBS]) +m4trace:configure.in:644: -1- m4_pattern_allow([^INTLLIBS$]) +m4trace:configure.in:644: -1- AC_SUBST([LIBINTL]) +m4trace:configure.in:644: -1- AC_SUBST_TRACE([LIBINTL]) +m4trace:configure.in:644: -1- m4_pattern_allow([^LIBINTL$]) +m4trace:configure.in:644: -1- AC_SUBST([LTLIBINTL]) +m4trace:configure.in:644: -1- AC_SUBST_TRACE([LTLIBINTL]) +m4trace:configure.in:644: -1- m4_pattern_allow([^LTLIBINTL$]) +m4trace:configure.in:644: -1- AC_SUBST([POSUB]) +m4trace:configure.in:644: -1- AC_SUBST_TRACE([POSUB]) +m4trace:configure.in:644: -1- m4_pattern_allow([^POSUB$]) +m4trace:configure.in:647: -1- AH_OUTPUT([HAVE_DIRENT_H], [/* Define to 1 if you have the header file, and it defines `DIR\'. + */ +#undef HAVE_DIRENT_H]) +m4trace:configure.in:647: -1- AH_OUTPUT([HAVE_SYS_NDIR_H], [/* Define to 1 if you have the header file, and it defines `DIR\'. + */ +#undef HAVE_SYS_NDIR_H]) +m4trace:configure.in:647: -1- AH_OUTPUT([HAVE_SYS_DIR_H], [/* Define to 1 if you have the header file, and it defines `DIR\'. + */ +#undef HAVE_SYS_DIR_H]) +m4trace:configure.in:647: -1- AH_OUTPUT([HAVE_NDIR_H], [/* Define to 1 if you have the header file, and it defines `DIR\'. */ +#undef HAVE_NDIR_H]) +m4trace:configure.in:648: -1- AC_DEFINE_TRACE_LITERAL([TIME_WITH_SYS_TIME]) +m4trace:configure.in:648: -1- m4_pattern_allow([^TIME_WITH_SYS_TIME$]) +m4trace:configure.in:648: -1- AH_OUTPUT([TIME_WITH_SYS_TIME], [/* Define to 1 if you can safely include both and . */ +#undef TIME_WITH_SYS_TIME]) +m4trace:configure.in:650: -1- AH_OUTPUT([HAVE_INTTYPES_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_INTTYPES_H]) +m4trace:configure.in:652: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_UNISTD_H]) +m4trace:configure.in:652: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_STDLIB_H]) +m4trace:configure.in:652: -1- AH_OUTPUT([HAVE_STDARG_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_STDARG_H]) +m4trace:configure.in:652: -1- AH_OUTPUT([HAVE_VARARGS_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_VARARGS_H]) +m4trace:configure.in:652: -1- AH_OUTPUT([HAVE_LIMITS_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_LIMITS_H]) +m4trace:configure.in:652: -1- AH_OUTPUT([HAVE_STRING_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_STRING_H]) +m4trace:configure.in:652: -1- AH_OUTPUT([HAVE_MEMORY_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_MEMORY_H]) +m4trace:configure.in:652: -1- AH_OUTPUT([HAVE_LOCALE_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_LOCALE_H]) +m4trace:configure.in:652: -1- AH_OUTPUT([HAVE_TERMCAP_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_TERMCAP_H]) +m4trace:configure.in:652: -1- AH_OUTPUT([HAVE_TERMIO_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_TERMIO_H]) +m4trace:configure.in:652: -1- AH_OUTPUT([HAVE_TERMIOS_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_TERMIOS_H]) +m4trace:configure.in:652: -1- AH_OUTPUT([HAVE_DLFCN_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_DLFCN_H]) +m4trace:configure.in:652: -1- AH_OUTPUT([HAVE_STDDEF_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_STDDEF_H]) +m4trace:configure.in:652: -1- AH_OUTPUT([HAVE_STDINT_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_STDINT_H]) +m4trace:configure.in:652: -1- AH_OUTPUT([HAVE_NETDB_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_NETDB_H]) +m4trace:configure.in:652: -1- AH_OUTPUT([HAVE_PWD_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_PWD_H]) +m4trace:configure.in:652: -1- AH_OUTPUT([HAVE_GRP_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_GRP_H]) +m4trace:configure.in:652: -1- AH_OUTPUT([HAVE_STRINGS_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_STRINGS_H]) +m4trace:configure.in:652: -1- AH_OUTPUT([HAVE_REGEX_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_REGEX_H]) +m4trace:configure.in:655: -1- AH_OUTPUT([HAVE_SYS_PTE_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_PTE_H]) +m4trace:configure.in:655: -1- AH_OUTPUT([HAVE_SYS_STREAM_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_STREAM_H]) +m4trace:configure.in:655: -1- AH_OUTPUT([HAVE_SYS_SELECT_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_SELECT_H]) +m4trace:configure.in:655: -1- AH_OUTPUT([HAVE_SYS_FILE_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_FILE_H]) +m4trace:configure.in:655: -1- AH_OUTPUT([HAVE_SYS_RESOURCE_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_RESOURCE_H]) +m4trace:configure.in:655: -1- AH_OUTPUT([HAVE_SYS_PARAM_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_PARAM_H]) +m4trace:configure.in:655: -1- AH_OUTPUT([HAVE_SYS_SOCKET_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_SOCKET_H]) +m4trace:configure.in:655: -1- AH_OUTPUT([HAVE_SYS_STAT_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_STAT_H]) +m4trace:configure.in:655: -1- AH_OUTPUT([HAVE_SYS_TIME_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_TIME_H]) +m4trace:configure.in:655: -1- AH_OUTPUT([HAVE_SYS_TIMES_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_TIMES_H]) +m4trace:configure.in:655: -1- AH_OUTPUT([HAVE_SYS_TYPES_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_TYPES_H]) +m4trace:configure.in:655: -1- AH_OUTPUT([HAVE_SYS_WAIT_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_WAIT_H]) +m4trace:configure.in:658: -1- AH_OUTPUT([HAVE_NETINET_IN_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_NETINET_IN_H]) +m4trace:configure.in:658: -1- AH_OUTPUT([HAVE_ARPA_INET_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_ARPA_INET_H]) +m4trace:configure.in:669: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ALLOCA_H]) +m4trace:configure.in:669: -1- m4_pattern_allow([^HAVE_ALLOCA_H$]) +m4trace:configure.in:669: -1- AH_OUTPUT([HAVE_ALLOCA_H], [/* Define to 1 if you have and it should be used (not on Ultrix). + */ +#undef HAVE_ALLOCA_H]) +m4trace:configure.in:669: -1- AC_DEFINE_TRACE_LITERAL([HAVE_ALLOCA]) +m4trace:configure.in:669: -1- m4_pattern_allow([^HAVE_ALLOCA$]) +m4trace:configure.in:669: -1- AH_OUTPUT([HAVE_ALLOCA], [/* Define to 1 if you have `alloca\', as a function or macro. */ +#undef HAVE_ALLOCA]) +m4trace:configure.in:669: -1- AC_LIBSOURCE([alloca.c]) +m4trace:configure.in:669: -1- AC_SUBST([ALLOCA], [\${LIBOBJDIR}alloca.$ac_objext]) +m4trace:configure.in:669: -1- AC_SUBST_TRACE([ALLOCA]) +m4trace:configure.in:669: -1- m4_pattern_allow([^ALLOCA$]) +m4trace:configure.in:669: -1- AC_DEFINE_TRACE_LITERAL([C_ALLOCA]) +m4trace:configure.in:669: -1- m4_pattern_allow([^C_ALLOCA$]) +m4trace:configure.in:669: -1- AH_OUTPUT([C_ALLOCA], [/* Define to 1 if using `alloca.c\'. */ +#undef C_ALLOCA]) +m4trace:configure.in:669: -1- AC_DEFINE_TRACE_LITERAL([CRAY_STACKSEG_END]) +m4trace:configure.in:669: -1- m4_pattern_allow([^CRAY_STACKSEG_END$]) +m4trace:configure.in:669: -1- AH_OUTPUT([CRAY_STACKSEG_END], [/* Define to one of `_getb67\', `GETB67\', `getb67\' for Cray-2 and Cray-YMP + systems. This function is required for `alloca.c\' support on those systems. + */ +#undef CRAY_STACKSEG_END]) +m4trace:configure.in:669: -1- AH_OUTPUT([STACK_DIRECTION], [/* If using the C implementation of alloca, define if you know the + direction of stack growth for your system; otherwise it will be + automatically deduced at runtime. + STACK_DIRECTION > 0 => grows toward higher addresses + STACK_DIRECTION < 0 => grows toward lower addresses + STACK_DIRECTION = 0 => direction of growth unknown */ +@%:@undef STACK_DIRECTION]) +m4trace:configure.in:669: -1- AC_DEFINE_TRACE_LITERAL([STACK_DIRECTION]) +m4trace:configure.in:669: -1- m4_pattern_allow([^STACK_DIRECTION$]) +m4trace:configure.in:670: -1- AC_DEFINE_TRACE_LITERAL([GETPGRP_VOID]) +m4trace:configure.in:670: -1- m4_pattern_allow([^GETPGRP_VOID$]) +m4trace:configure.in:670: -1- AH_OUTPUT([GETPGRP_VOID], [/* Define to 1 if the `getpgrp\' function requires zero arguments. */ +#undef GETPGRP_VOID]) +m4trace:configure.in:671: -1- _m4_warn([obsolete], [The macro `AC_FUNC_SETVBUF_REVERSED' is obsolete. Remove it and all references to SETVBUF_REVERSED.], [../../lib/autoconf/functions.m4:1680: AC_FUNC_SETVBUF_REVERSED is expanded from... +configure.in:671: the top level]) +m4trace:configure.in:672: -1- AH_OUTPUT([HAVE_VPRINTF], [/* Define to 1 if you have the `vprintf\' function. */ +#undef HAVE_VPRINTF]) +m4trace:configure.in:672: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DOPRNT]) +m4trace:configure.in:672: -1- m4_pattern_allow([^HAVE_DOPRNT$]) +m4trace:configure.in:672: -1- AH_OUTPUT([HAVE_DOPRNT], [/* Define to 1 if you don\'t have `vprintf\' but do have `_doprnt.\' */ +#undef HAVE_DOPRNT]) +m4trace:configure.in:673: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRCOLL]) +m4trace:configure.in:673: -1- m4_pattern_allow([^HAVE_STRCOLL$]) +m4trace:configure.in:673: -1- AH_OUTPUT([HAVE_STRCOLL], [/* Define to 1 if you have the `strcoll\' function and it is properly defined. + */ +#undef HAVE_STRCOLL]) +m4trace:configure.in:694: -1- AC_DEFINE_TRACE_LITERAL([HAVE_VPRINTF]) +m4trace:configure.in:694: -1- m4_pattern_allow([^HAVE_VPRINTF$]) +m4trace:configure.in:699: -1- AC_LIBSOURCE([vprint.c]) +m4trace:configure.in:699: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS vprint.$ac_objext"]) +m4trace:configure.in:699: -1- AC_SUBST_TRACE([LIB@&t@OBJS]) +m4trace:configure.in:699: -1- m4_pattern_allow([^LIB@&t@OBJS$]) +m4trace:configure.in:703: -1- _m4_warn([obsolete], [The macro `AC_TYPE_SIGNAL' is obsolete. +You should run autoupdate.], [../../lib/autoconf/types.m4:699: AC_TYPE_SIGNAL is expanded from... +configure.in:703: the top level]) +m4trace:configure.in:703: -1- AC_DEFINE_TRACE_LITERAL([RETSIGTYPE]) +m4trace:configure.in:703: -1- m4_pattern_allow([^RETSIGTYPE$]) +m4trace:configure.in:703: -1- AH_OUTPUT([RETSIGTYPE], [/* Define as the return type of signal handlers (`int\' or `void\'). */ +#undef RETSIGTYPE]) +m4trace:configure.in:706: -2- AC_DEFINE_TRACE_LITERAL([HAVE_SETOSTYPE]) +m4trace:configure.in:706: -2- m4_pattern_allow([^HAVE_SETOSTYPE$]) +m4trace:configure.in:707: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WAIT3]) +m4trace:configure.in:707: -2- m4_pattern_allow([^HAVE_WAIT3$]) +m4trace:configure.in:708: -2- AC_DEFINE_TRACE_LITERAL([HAVE_ISINF_IN_LIBC]) +m4trace:configure.in:708: -2- m4_pattern_allow([^HAVE_ISINF_IN_LIBC$]) +m4trace:configure.in:709: -2- AC_DEFINE_TRACE_LITERAL([HAVE_ISNAN_IN_LIBC]) +m4trace:configure.in:709: -2- m4_pattern_allow([^HAVE_ISNAN_IN_LIBC$]) +m4trace:configure.in:712: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MKFIFO]) +m4trace:configure.in:712: -2- m4_pattern_allow([^HAVE_MKFIFO$]) +m4trace:configure.in:712: -2- AC_DEFINE_TRACE_LITERAL([MKFIFO_MISSING]) +m4trace:configure.in:712: -2- m4_pattern_allow([^MKFIFO_MISSING$]) +m4trace:configure.in:715: -1- AH_OUTPUT([HAVE_DUP2], [/* Define to 1 if you have the `dup2\' function. */ +#undef HAVE_DUP2]) +m4trace:configure.in:715: -1- AH_OUTPUT([HAVE_EACCESS], [/* Define to 1 if you have the `eaccess\' function. */ +#undef HAVE_EACCESS]) +m4trace:configure.in:715: -1- AH_OUTPUT([HAVE_FCNTL], [/* Define to 1 if you have the `fcntl\' function. */ +#undef HAVE_FCNTL]) +m4trace:configure.in:715: -1- AH_OUTPUT([HAVE_GETDTABLESIZE], [/* Define to 1 if you have the `getdtablesize\' function. */ +#undef HAVE_GETDTABLESIZE]) +m4trace:configure.in:715: -1- AH_OUTPUT([HAVE_GETGROUPS], [/* Define to 1 if you have the `getgroups\' function. */ +#undef HAVE_GETGROUPS]) +m4trace:configure.in:715: -1- AH_OUTPUT([HAVE_GETHOSTNAME], [/* Define to 1 if you have the `gethostname\' function. */ +#undef HAVE_GETHOSTNAME]) +m4trace:configure.in:715: -1- AH_OUTPUT([HAVE_GETPAGESIZE], [/* Define to 1 if you have the `getpagesize\' function. */ +#undef HAVE_GETPAGESIZE]) +m4trace:configure.in:715: -1- AH_OUTPUT([HAVE_GETPEERNAME], [/* Define to 1 if you have the `getpeername\' function. */ +#undef HAVE_GETPEERNAME]) +m4trace:configure.in:715: -1- AH_OUTPUT([HAVE_GETRLIMIT], [/* Define to 1 if you have the `getrlimit\' function. */ +#undef HAVE_GETRLIMIT]) +m4trace:configure.in:715: -1- AH_OUTPUT([HAVE_GETRUSAGE], [/* Define to 1 if you have the `getrusage\' function. */ +#undef HAVE_GETRUSAGE]) +m4trace:configure.in:715: -1- AH_OUTPUT([HAVE_GETTIMEOFDAY], [/* Define to 1 if you have the `gettimeofday\' function. */ +#undef HAVE_GETTIMEOFDAY]) +m4trace:configure.in:715: -1- AH_OUTPUT([HAVE_KILL], [/* Define to 1 if you have the `kill\' function. */ +#undef HAVE_KILL]) +m4trace:configure.in:715: -1- AH_OUTPUT([HAVE_KILLPG], [/* Define to 1 if you have the `killpg\' function. */ +#undef HAVE_KILLPG]) +m4trace:configure.in:715: -1- AH_OUTPUT([HAVE_LSTAT], [/* Define to 1 if you have the `lstat\' function. */ +#undef HAVE_LSTAT]) +m4trace:configure.in:715: -1- AH_OUTPUT([HAVE_READLINK], [/* Define to 1 if you have the `readlink\' function. */ +#undef HAVE_READLINK]) +m4trace:configure.in:715: -1- AH_OUTPUT([HAVE_SBRK], [/* Define to 1 if you have the `sbrk\' function. */ +#undef HAVE_SBRK]) +m4trace:configure.in:715: -1- AH_OUTPUT([HAVE_SELECT], [/* Define to 1 if you have the `select\' function. */ +#undef HAVE_SELECT]) +m4trace:configure.in:715: -1- AH_OUTPUT([HAVE_SETDTABLESIZE], [/* Define to 1 if you have the `setdtablesize\' function. */ +#undef HAVE_SETDTABLESIZE]) +m4trace:configure.in:715: -1- AH_OUTPUT([HAVE_SETITIMER], [/* Define to 1 if you have the `setitimer\' function. */ +#undef HAVE_SETITIMER]) +m4trace:configure.in:715: -1- AH_OUTPUT([HAVE_TCGETPGRP], [/* Define to 1 if you have the `tcgetpgrp\' function. */ +#undef HAVE_TCGETPGRP]) +m4trace:configure.in:715: -1- AH_OUTPUT([HAVE_UNAME], [/* Define to 1 if you have the `uname\' function. */ +#undef HAVE_UNAME]) +m4trace:configure.in:715: -1- AH_OUTPUT([HAVE_ULIMIT], [/* Define to 1 if you have the `ulimit\' function. */ +#undef HAVE_ULIMIT]) +m4trace:configure.in:715: -1- AH_OUTPUT([HAVE_WAITPID], [/* Define to 1 if you have the `waitpid\' function. */ +#undef HAVE_WAITPID]) +m4trace:configure.in:719: -1- AC_LIBSOURCE([rename.c]) +m4trace:configure.in:719: -1- AH_OUTPUT([HAVE_RENAME], [/* Define to 1 if you have the `rename\' function. */ +#undef HAVE_RENAME]) +m4trace:configure.in:719: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS $ac_func.$ac_objext"]) +m4trace:configure.in:719: -1- AC_SUBST_TRACE([LIB@&t@OBJS]) +m4trace:configure.in:719: -1- m4_pattern_allow([^LIB@&t@OBJS$]) +m4trace:configure.in:722: -1- AH_OUTPUT([HAVE_BCOPY], [/* Define to 1 if you have the `bcopy\' function. */ +#undef HAVE_BCOPY]) +m4trace:configure.in:722: -1- AH_OUTPUT([HAVE_BZERO], [/* Define to 1 if you have the `bzero\' function. */ +#undef HAVE_BZERO]) +m4trace:configure.in:722: -1- AH_OUTPUT([HAVE_CONFSTR], [/* Define to 1 if you have the `confstr\' function. */ +#undef HAVE_CONFSTR]) +m4trace:configure.in:722: -1- AH_OUTPUT([HAVE_FNMATCH], [/* Define to 1 if you have the `fnmatch\' function. */ +#undef HAVE_FNMATCH]) +m4trace:configure.in:722: -1- AH_OUTPUT([HAVE_GETADDRINFO], [/* Define to 1 if you have the `getaddrinfo\' function. */ +#undef HAVE_GETADDRINFO]) +m4trace:configure.in:722: -1- AH_OUTPUT([HAVE_GETHOSTBYNAME], [/* Define to 1 if you have the `gethostbyname\' function. */ +#undef HAVE_GETHOSTBYNAME]) +m4trace:configure.in:722: -1- AH_OUTPUT([HAVE_GETSERVBYNAME], [/* Define to 1 if you have the `getservbyname\' function. */ +#undef HAVE_GETSERVBYNAME]) +m4trace:configure.in:722: -1- AH_OUTPUT([HAVE_GETSERVENT], [/* Define to 1 if you have the `getservent\' function. */ +#undef HAVE_GETSERVENT]) +m4trace:configure.in:722: -1- AH_OUTPUT([HAVE_INET_ATON], [/* Define to 1 if you have the `inet_aton\' function. */ +#undef HAVE_INET_ATON]) +m4trace:configure.in:722: -1- AH_OUTPUT([HAVE_MEMMOVE], [/* Define to 1 if you have the `memmove\' function. */ +#undef HAVE_MEMMOVE]) +m4trace:configure.in:722: -1- AH_OUTPUT([HAVE_PATHCONF], [/* Define to 1 if you have the `pathconf\' function. */ +#undef HAVE_PATHCONF]) +m4trace:configure.in:722: -1- AH_OUTPUT([HAVE_PUTENV], [/* Define to 1 if you have the `putenv\' function. */ +#undef HAVE_PUTENV]) +m4trace:configure.in:722: -1- AH_OUTPUT([HAVE_RAISE], [/* Define to 1 if you have the `raise\' function. */ +#undef HAVE_RAISE]) +m4trace:configure.in:722: -1- AH_OUTPUT([HAVE_REGCOMP], [/* Define to 1 if you have the `regcomp\' function. */ +#undef HAVE_REGCOMP]) +m4trace:configure.in:722: -1- AH_OUTPUT([HAVE_REGEXEC], [/* Define to 1 if you have the `regexec\' function. */ +#undef HAVE_REGEXEC]) +m4trace:configure.in:722: -1- AH_OUTPUT([HAVE_SETENV], [/* Define to 1 if you have the `setenv\' function. */ +#undef HAVE_SETENV]) +m4trace:configure.in:722: -1- AH_OUTPUT([HAVE_SETLINEBUF], [/* Define to 1 if you have the `setlinebuf\' function. */ +#undef HAVE_SETLINEBUF]) +m4trace:configure.in:722: -1- AH_OUTPUT([HAVE_SETLOCALE], [/* Define to 1 if you have the `setlocale\' function. */ +#undef HAVE_SETLOCALE]) +m4trace:configure.in:722: -1- AH_OUTPUT([HAVE_SETVBUF], [/* Define to 1 if you have the `setvbuf\' function. */ +#undef HAVE_SETVBUF]) +m4trace:configure.in:722: -1- AH_OUTPUT([HAVE_SIGINTERRUPT], [/* Define to 1 if you have the `siginterrupt\' function. */ +#undef HAVE_SIGINTERRUPT]) +m4trace:configure.in:722: -1- AH_OUTPUT([HAVE_STRCHR], [/* Define to 1 if you have the `strchr\' function. */ +#undef HAVE_STRCHR]) +m4trace:configure.in:722: -1- AH_OUTPUT([HAVE_SYSCONF], [/* Define to 1 if you have the `sysconf\' function. */ +#undef HAVE_SYSCONF]) +m4trace:configure.in:722: -1- AH_OUTPUT([HAVE_TCGETATTR], [/* Define to 1 if you have the `tcgetattr\' function. */ +#undef HAVE_TCGETATTR]) +m4trace:configure.in:722: -1- AH_OUTPUT([HAVE_TIMES], [/* Define to 1 if you have the `times\' function. */ +#undef HAVE_TIMES]) +m4trace:configure.in:722: -1- AH_OUTPUT([HAVE_TTYNAME], [/* Define to 1 if you have the `ttyname\' function. */ +#undef HAVE_TTYNAME]) +m4trace:configure.in:722: -1- AH_OUTPUT([HAVE_TZSET], [/* Define to 1 if you have the `tzset\' function. */ +#undef HAVE_TZSET]) +m4trace:configure.in:722: -1- AH_OUTPUT([HAVE_UNSETENV], [/* Define to 1 if you have the `unsetenv\' function. */ +#undef HAVE_UNSETENV]) +m4trace:configure.in:728: -1- AH_OUTPUT([HAVE_VSNPRINTF], [/* Define to 1 if you have the `vsnprintf\' function. */ +#undef HAVE_VSNPRINTF]) +m4trace:configure.in:728: -1- AH_OUTPUT([HAVE_SNPRINTF], [/* Define to 1 if you have the `snprintf\' function. */ +#undef HAVE_SNPRINTF]) +m4trace:configure.in:728: -1- AH_OUTPUT([HAVE_VASPRINTF], [/* Define to 1 if you have the `vasprintf\' function. */ +#undef HAVE_VASPRINTF]) +m4trace:configure.in:728: -1- AH_OUTPUT([HAVE_ASPRINTF], [/* Define to 1 if you have the `asprintf\' function. */ +#undef HAVE_ASPRINTF]) +m4trace:configure.in:729: -1- AH_OUTPUT([HAVE_ISASCII], [/* Define to 1 if you have the `isascii\' function. */ +#undef HAVE_ISASCII]) +m4trace:configure.in:729: -1- AH_OUTPUT([HAVE_ISBLANK], [/* Define to 1 if you have the `isblank\' function. */ +#undef HAVE_ISBLANK]) +m4trace:configure.in:729: -1- AH_OUTPUT([HAVE_ISGRAPH], [/* Define to 1 if you have the `isgraph\' function. */ +#undef HAVE_ISGRAPH]) +m4trace:configure.in:729: -1- AH_OUTPUT([HAVE_ISPRINT], [/* Define to 1 if you have the `isprint\' function. */ +#undef HAVE_ISPRINT]) +m4trace:configure.in:729: -1- AH_OUTPUT([HAVE_ISSPACE], [/* Define to 1 if you have the `isspace\' function. */ +#undef HAVE_ISSPACE]) +m4trace:configure.in:729: -1- AH_OUTPUT([HAVE_ISXDIGIT], [/* Define to 1 if you have the `isxdigit\' function. */ +#undef HAVE_ISXDIGIT]) +m4trace:configure.in:730: -1- AH_OUTPUT([HAVE_GETPWENT], [/* Define to 1 if you have the `getpwent\' function. */ +#undef HAVE_GETPWENT]) +m4trace:configure.in:730: -1- AH_OUTPUT([HAVE_GETPWNAM], [/* Define to 1 if you have the `getpwnam\' function. */ +#undef HAVE_GETPWNAM]) +m4trace:configure.in:730: -1- AH_OUTPUT([HAVE_GETPWUID], [/* Define to 1 if you have the `getpwuid\' function. */ +#undef HAVE_GETPWUID]) +m4trace:configure.in:731: -1- AC_LIBSOURCE([getcwd.c]) +m4trace:configure.in:731: -1- AC_LIBSOURCE([memset.c]) +m4trace:configure.in:731: -1- AC_LIBSOURCE([strcasecmp.c]) +m4trace:configure.in:731: -1- AC_LIBSOURCE([strerror.c]) +m4trace:configure.in:731: -1- AC_LIBSOURCE([strftime.c]) +m4trace:configure.in:731: -1- AC_LIBSOURCE([strnlen.c]) +m4trace:configure.in:731: -1- AC_LIBSOURCE([strpbrk.c]) +m4trace:configure.in:731: -1- AC_LIBSOURCE([strstr.c]) +m4trace:configure.in:731: -1- AH_OUTPUT([HAVE_GETCWD], [/* Define to 1 if you have the `getcwd\' function. */ +#undef HAVE_GETCWD]) +m4trace:configure.in:731: -1- AH_OUTPUT([HAVE_MEMSET], [/* Define to 1 if you have the `memset\' function. */ +#undef HAVE_MEMSET]) +m4trace:configure.in:731: -1- AH_OUTPUT([HAVE_STRCASECMP], [/* Define to 1 if you have the `strcasecmp\' function. */ +#undef HAVE_STRCASECMP]) +m4trace:configure.in:731: -1- AH_OUTPUT([HAVE_STRERROR], [/* Define to 1 if you have the `strerror\' function. */ +#undef HAVE_STRERROR]) +m4trace:configure.in:731: -1- AH_OUTPUT([HAVE_STRFTIME], [/* Define to 1 if you have the `strftime\' function. */ +#undef HAVE_STRFTIME]) +m4trace:configure.in:731: -1- AH_OUTPUT([HAVE_STRNLEN], [/* Define to 1 if you have the `strnlen\' function. */ +#undef HAVE_STRNLEN]) +m4trace:configure.in:731: -1- AH_OUTPUT([HAVE_STRPBRK], [/* Define to 1 if you have the `strpbrk\' function. */ +#undef HAVE_STRPBRK]) +m4trace:configure.in:731: -1- AH_OUTPUT([HAVE_STRSTR], [/* Define to 1 if you have the `strstr\' function. */ +#undef HAVE_STRSTR]) +m4trace:configure.in:731: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS $ac_func.$ac_objext"]) +m4trace:configure.in:731: -1- AC_SUBST_TRACE([LIB@&t@OBJS]) +m4trace:configure.in:731: -1- m4_pattern_allow([^LIB@&t@OBJS$]) +m4trace:configure.in:732: -1- AC_LIBSOURCE([strtod.c]) +m4trace:configure.in:732: -1- AC_LIBSOURCE([strtol.c]) +m4trace:configure.in:732: -1- AC_LIBSOURCE([strtoul.c]) +m4trace:configure.in:732: -1- AC_LIBSOURCE([strtoll.c]) +m4trace:configure.in:732: -1- AC_LIBSOURCE([strtoull.c]) +m4trace:configure.in:732: -1- AC_LIBSOURCE([strtoimax.c]) +m4trace:configure.in:732: -1- AC_LIBSOURCE([strtoumax.c]) +m4trace:configure.in:732: -1- AH_OUTPUT([HAVE_STRTOD], [/* Define to 1 if you have the `strtod\' function. */ +#undef HAVE_STRTOD]) +m4trace:configure.in:732: -1- AH_OUTPUT([HAVE_STRTOL], [/* Define to 1 if you have the `strtol\' function. */ +#undef HAVE_STRTOL]) +m4trace:configure.in:732: -1- AH_OUTPUT([HAVE_STRTOUL], [/* Define to 1 if you have the `strtoul\' function. */ +#undef HAVE_STRTOUL]) +m4trace:configure.in:732: -1- AH_OUTPUT([HAVE_STRTOLL], [/* Define to 1 if you have the `strtoll\' function. */ +#undef HAVE_STRTOLL]) +m4trace:configure.in:732: -1- AH_OUTPUT([HAVE_STRTOULL], [/* Define to 1 if you have the `strtoull\' function. */ +#undef HAVE_STRTOULL]) +m4trace:configure.in:732: -1- AH_OUTPUT([HAVE_STRTOIMAX], [/* Define to 1 if you have the `strtoimax\' function. */ +#undef HAVE_STRTOIMAX]) +m4trace:configure.in:732: -1- AH_OUTPUT([HAVE_STRTOUMAX], [/* Define to 1 if you have the `strtoumax\' function. */ +#undef HAVE_STRTOUMAX]) +m4trace:configure.in:732: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS $ac_func.$ac_objext"]) +m4trace:configure.in:732: -1- AC_SUBST_TRACE([LIB@&t@OBJS]) +m4trace:configure.in:732: -1- m4_pattern_allow([^LIB@&t@OBJS$]) +m4trace:configure.in:733: -1- AC_LIBSOURCE([fdprintf.c]) +m4trace:configure.in:733: -1- AH_OUTPUT([HAVE_FDPRINTF], [/* Define to 1 if you have the `fdprintf\' function. */ +#undef HAVE_FDPRINTF]) +m4trace:configure.in:733: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS $ac_func.$ac_objext"]) +m4trace:configure.in:733: -1- AC_SUBST_TRACE([LIB@&t@OBJS]) +m4trace:configure.in:733: -1- m4_pattern_allow([^LIB@&t@OBJS$]) +m4trace:configure.in:735: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_CONFSTR]) +m4trace:configure.in:735: -1- m4_pattern_allow([^HAVE_DECL_CONFSTR$]) +m4trace:configure.in:735: -1- AH_OUTPUT([HAVE_DECL_CONFSTR], [/* Define to 1 if you have the declaration of `confstr\', and to 0 if you + don\'t. */ +#undef HAVE_DECL_CONFSTR]) +m4trace:configure.in:735: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_CONFSTR]) +m4trace:configure.in:735: -1- m4_pattern_allow([^HAVE_DECL_CONFSTR$]) +m4trace:configure.in:736: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_PRINTF]) +m4trace:configure.in:736: -1- m4_pattern_allow([^HAVE_DECL_PRINTF$]) +m4trace:configure.in:736: -1- AH_OUTPUT([HAVE_DECL_PRINTF], [/* Define to 1 if you have the declaration of `printf\', and to 0 if you don\'t. + */ +#undef HAVE_DECL_PRINTF]) +m4trace:configure.in:736: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_PRINTF]) +m4trace:configure.in:736: -1- m4_pattern_allow([^HAVE_DECL_PRINTF$]) +m4trace:configure.in:737: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_SBRK]) +m4trace:configure.in:737: -1- m4_pattern_allow([^HAVE_DECL_SBRK$]) +m4trace:configure.in:737: -1- AH_OUTPUT([HAVE_DECL_SBRK], [/* Define to 1 if you have the declaration of `sbrk\', and to 0 if you don\'t. + */ +#undef HAVE_DECL_SBRK]) +m4trace:configure.in:737: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_SBRK]) +m4trace:configure.in:737: -1- m4_pattern_allow([^HAVE_DECL_SBRK$]) +m4trace:configure.in:738: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_SETREGID]) +m4trace:configure.in:738: -1- m4_pattern_allow([^HAVE_DECL_SETREGID$]) +m4trace:configure.in:738: -1- AH_OUTPUT([HAVE_DECL_SETREGID], [/* Define to 1 if you have the declaration of `setregid\', and to 0 if you + don\'t. */ +#undef HAVE_DECL_SETREGID]) +m4trace:configure.in:738: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_SETREGID]) +m4trace:configure.in:738: -1- m4_pattern_allow([^HAVE_DECL_SETREGID$]) +m4trace:configure.in:739: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_STRCPY]) +m4trace:configure.in:739: -1- m4_pattern_allow([^HAVE_DECL_STRCPY$]) +m4trace:configure.in:739: -1- AH_OUTPUT([HAVE_DECL_STRCPY], [/* Define to 1 if you have the declaration of `strcpy\', and to 0 if you don\'t. + */ +#undef HAVE_DECL_STRCPY]) +m4trace:configure.in:739: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_STRCPY]) +m4trace:configure.in:739: -1- m4_pattern_allow([^HAVE_DECL_STRCPY$]) +m4trace:configure.in:740: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_STRSIGNAL]) +m4trace:configure.in:740: -1- m4_pattern_allow([^HAVE_DECL_STRSIGNAL$]) +m4trace:configure.in:740: -1- AH_OUTPUT([HAVE_DECL_STRSIGNAL], [/* Define to 1 if you have the declaration of `strsignal\', and to 0 if you + don\'t. */ +#undef HAVE_DECL_STRSIGNAL]) +m4trace:configure.in:740: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_STRSIGNAL]) +m4trace:configure.in:740: -1- m4_pattern_allow([^HAVE_DECL_STRSIGNAL$]) +m4trace:configure.in:743: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_STRTOLD]) +m4trace:configure.in:743: -1- m4_pattern_allow([^HAVE_DECL_STRTOLD$]) +m4trace:configure.in:743: -1- AH_OUTPUT([HAVE_DECL_STRTOLD], [/* Define to 1 if you have the declaration of `strtold\', and to 0 if you + don\'t. */ +#undef HAVE_DECL_STRTOLD]) +m4trace:configure.in:743: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2470: AC_TRY_COMPILE is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:2644: AC_CHECK_DECL is expanded from... +../../lib/autoconf/general.m4:2666: AC_CHECK_DECLS is expanded from... +configure.in:743: the top level]) +m4trace:configure.in:743: -1- AC_DEFINE_TRACE_LITERAL([STRTOLD_BROKEN]) +m4trace:configure.in:743: -1- m4_pattern_allow([^STRTOLD_BROKEN$]) +m4trace:configure.in:743: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_STRTOLD]) +m4trace:configure.in:743: -1- m4_pattern_allow([^HAVE_DECL_STRTOLD$]) +m4trace:configure.in:760: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2527: AC_TRY_LINK is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from... +aclocal.m4:100: BASH_CHECK_DECL is expanded from... +configure.in:760: the top level]) +m4trace:configure.in:761: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2527: AC_TRY_LINK is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from... +aclocal.m4:100: BASH_CHECK_DECL is expanded from... +configure.in:761: the top level]) +m4trace:configure.in:762: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2527: AC_TRY_LINK is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from... +aclocal.m4:100: BASH_CHECK_DECL is expanded from... +configure.in:762: the top level]) +m4trace:configure.in:763: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2527: AC_TRY_LINK is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from... +aclocal.m4:100: BASH_CHECK_DECL is expanded from... +configure.in:763: the top level]) +m4trace:configure.in:764: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2527: AC_TRY_LINK is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from... +aclocal.m4:100: BASH_CHECK_DECL is expanded from... +configure.in:764: the top level]) +m4trace:configure.in:765: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2527: AC_TRY_LINK is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from... +aclocal.m4:100: BASH_CHECK_DECL is expanded from... +configure.in:765: the top level]) +m4trace:configure.in:767: -1- AH_OUTPUT([HAVE_SYS_TIME_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_TIME_H]) +m4trace:configure.in:767: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_UNISTD_H]) +m4trace:configure.in:767: -1- AH_OUTPUT([HAVE_ALARM], [/* Define to 1 if you have the `alarm\' function. */ +#undef HAVE_ALARM]) +m4trace:configure.in:767: -1- AC_LIBSOURCE([mktime.c]) +m4trace:configure.in:767: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS mktime.$ac_objext"]) +m4trace:configure.in:767: -1- AC_SUBST_TRACE([LIB@&t@OBJS]) +m4trace:configure.in:767: -1- m4_pattern_allow([^LIB@&t@OBJS$]) +m4trace:configure.in:774: -1- AH_OUTPUT([HAVE_ARGZ_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_ARGZ_H]) +m4trace:configure.in:774: -1- AH_OUTPUT([HAVE_ERRNO_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_ERRNO_H]) +m4trace:configure.in:774: -1- AH_OUTPUT([HAVE_FCNTL_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_FCNTL_H]) +m4trace:configure.in:774: -1- AH_OUTPUT([HAVE_MALLOC_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_MALLOC_H]) +m4trace:configure.in:774: -1- AH_OUTPUT([HAVE_STDIO_EXT_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_STDIO_EXT_H]) +m4trace:configure.in:777: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_STDLIB_H]) +m4trace:configure.in:777: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_UNISTD_H]) +m4trace:configure.in:777: -1- AH_OUTPUT([HAVE_GETPAGESIZE], [/* Define to 1 if you have the `getpagesize\' function. */ +#undef HAVE_GETPAGESIZE]) +m4trace:configure.in:777: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MMAP]) +m4trace:configure.in:777: -1- m4_pattern_allow([^HAVE_MMAP$]) +m4trace:configure.in:777: -1- AH_OUTPUT([HAVE_MMAP], [/* Define to 1 if you have a working `mmap\' system call. */ +#undef HAVE_MMAP]) +m4trace:configure.in:778: -1- AH_OUTPUT([HAVE___ARGZ_COUNT], [/* Define to 1 if you have the `__argz_count\' function. */ +#undef HAVE___ARGZ_COUNT]) +m4trace:configure.in:778: -1- AH_OUTPUT([HAVE___ARGZ_NEXT], [/* Define to 1 if you have the `__argz_next\' function. */ +#undef HAVE___ARGZ_NEXT]) +m4trace:configure.in:778: -1- AH_OUTPUT([HAVE___ARGZ_STRINGIFY], [/* Define to 1 if you have the `__argz_stringify\' function. */ +#undef HAVE___ARGZ_STRINGIFY]) +m4trace:configure.in:778: -1- AH_OUTPUT([HAVE_DCGETTEXT], [/* Define to 1 if you have the `dcgettext\' function. */ +#undef HAVE_DCGETTEXT]) +m4trace:configure.in:778: -1- AH_OUTPUT([HAVE_MEMPCPY], [/* Define to 1 if you have the `mempcpy\' function. */ +#undef HAVE_MEMPCPY]) +m4trace:configure.in:778: -1- AH_OUTPUT([HAVE_MUNMAP], [/* Define to 1 if you have the `munmap\' function. */ +#undef HAVE_MUNMAP]) +m4trace:configure.in:778: -1- AH_OUTPUT([HAVE_STPCPY], [/* Define to 1 if you have the `stpcpy\' function. */ +#undef HAVE_STPCPY]) +m4trace:configure.in:778: -1- AH_OUTPUT([HAVE_STRCSPN], [/* Define to 1 if you have the `strcspn\' function. */ +#undef HAVE_STRCSPN]) +m4trace:configure.in:778: -1- AH_OUTPUT([HAVE_STRDUP], [/* Define to 1 if you have the `strdup\' function. */ +#undef HAVE_STRDUP]) +m4trace:configure.in:787: -1- AC_SUBST([INTL_DEP]) +m4trace:configure.in:787: -1- AC_SUBST_TRACE([INTL_DEP]) +m4trace:configure.in:787: -1- m4_pattern_allow([^INTL_DEP$]) +m4trace:configure.in:788: -1- AC_SUBST([INTL_INC]) +m4trace:configure.in:788: -1- AC_SUBST_TRACE([INTL_INC]) +m4trace:configure.in:788: -1- m4_pattern_allow([^INTL_INC$]) +m4trace:configure.in:789: -1- AC_SUBST([LIBINTL_H]) +m4trace:configure.in:789: -1- AC_SUBST_TRACE([LIBINTL_H]) +m4trace:configure.in:789: -1- m4_pattern_allow([^LIBINTL_H$]) +m4trace:configure.in:795: -1- AH_OUTPUT([HAVE_WCTYPE_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_WCTYPE_H]) +m4trace:configure.in:795: -1- AH_OUTPUT([HAVE_WCHAR_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_WCHAR_H]) +m4trace:configure.in:795: -1- AH_OUTPUT([HAVE_LANGINFO_H], [/* Define to 1 if you have the header file. */ +#undef HAVE_LANGINFO_H]) +m4trace:configure.in:795: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MBRLEN]) +m4trace:configure.in:795: -2- m4_pattern_allow([^HAVE_MBRLEN$]) +m4trace:configure.in:795: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MBSCMP]) +m4trace:configure.in:795: -2- m4_pattern_allow([^HAVE_MBSCMP$]) +m4trace:configure.in:795: -2- AC_DEFINE_TRACE_LITERAL([HAVE_MBSRTOWCS]) +m4trace:configure.in:795: -2- m4_pattern_allow([^HAVE_MBSRTOWCS$]) +m4trace:configure.in:795: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WCRTOMB]) +m4trace:configure.in:795: -2- m4_pattern_allow([^HAVE_WCRTOMB$]) +m4trace:configure.in:795: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WCSCOLL]) +m4trace:configure.in:795: -2- m4_pattern_allow([^HAVE_WCSCOLL$]) +m4trace:configure.in:795: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WCSDUP]) +m4trace:configure.in:795: -2- m4_pattern_allow([^HAVE_WCSDUP$]) +m4trace:configure.in:795: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WCWIDTH]) +m4trace:configure.in:795: -2- m4_pattern_allow([^HAVE_WCWIDTH$]) +m4trace:configure.in:795: -2- AC_DEFINE_TRACE_LITERAL([HAVE_WCTYPE]) +m4trace:configure.in:795: -2- m4_pattern_allow([^HAVE_WCTYPE$]) +m4trace:configure.in:795: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MBRTOWC]) +m4trace:configure.in:795: -1- m4_pattern_allow([^HAVE_MBRTOWC$]) +m4trace:configure.in:795: -1- AH_OUTPUT([HAVE_MBRTOWC], [/* Define to 1 if mbrtowc and mbstate_t are properly declared. */ +#undef HAVE_MBRTOWC]) +m4trace:configure.in:795: -1- AC_DEFINE_TRACE_LITERAL([HAVE_MBSTATE_T]) +m4trace:configure.in:795: -1- m4_pattern_allow([^HAVE_MBSTATE_T$]) +m4trace:configure.in:795: -1- AH_OUTPUT([HAVE_ISWLOWER], [/* Define to 1 if you have the `iswlower\' function. */ +#undef HAVE_ISWLOWER]) +m4trace:configure.in:795: -1- AH_OUTPUT([HAVE_ISWUPPER], [/* Define to 1 if you have the `iswupper\' function. */ +#undef HAVE_ISWUPPER]) +m4trace:configure.in:795: -1- AH_OUTPUT([HAVE_TOWLOWER], [/* Define to 1 if you have the `towlower\' function. */ +#undef HAVE_TOWLOWER]) +m4trace:configure.in:795: -1- AH_OUTPUT([HAVE_TOWUPPER], [/* Define to 1 if you have the `towupper\' function. */ +#undef HAVE_TOWUPPER]) +m4trace:configure.in:795: -1- AH_OUTPUT([HAVE_ISWCTYPE], [/* Define to 1 if you have the `iswctype\' function. */ +#undef HAVE_ISWCTYPE]) +m4trace:configure.in:795: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2527: AC_TRY_LINK is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from... +aclocal.m4:1686: BASH_CHECK_MULTIBYTE is expanded from... +configure.in:795: the top level]) +m4trace:configure.in:795: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LANGINFO_CODESET]) +m4trace:configure.in:795: -1- m4_pattern_allow([^HAVE_LANGINFO_CODESET$]) +m4trace:configure.in:795: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2470: AC_TRY_COMPILE is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from... +aclocal.m4:1686: BASH_CHECK_MULTIBYTE is expanded from... +configure.in:795: the top level]) +m4trace:configure.in:795: -1- AC_DEFINE_TRACE_LITERAL([HAVE_WCHAR_T]) +m4trace:configure.in:795: -1- m4_pattern_allow([^HAVE_WCHAR_T$]) +m4trace:configure.in:795: -1- AH_OUTPUT([HAVE_WCHAR_T], [/* systems should define this type here */ +#undef HAVE_WCHAR_T]) +m4trace:configure.in:795: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2470: AC_TRY_COMPILE is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from... +aclocal.m4:1686: BASH_CHECK_MULTIBYTE is expanded from... +configure.in:795: the top level]) +m4trace:configure.in:795: -1- AC_DEFINE_TRACE_LITERAL([HAVE_WCTYPE_T]) +m4trace:configure.in:795: -1- m4_pattern_allow([^HAVE_WCTYPE_T$]) +m4trace:configure.in:795: -1- AH_OUTPUT([HAVE_WCTYPE_T], [/* systems should define this type here */ +#undef HAVE_WCTYPE_T]) +m4trace:configure.in:795: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2470: AC_TRY_COMPILE is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from... +aclocal.m4:1686: BASH_CHECK_MULTIBYTE is expanded from... +configure.in:795: the top level]) +m4trace:configure.in:795: -1- AC_DEFINE_TRACE_LITERAL([HAVE_WINT_T]) +m4trace:configure.in:795: -1- m4_pattern_allow([^HAVE_WINT_T$]) +m4trace:configure.in:795: -1- AH_OUTPUT([HAVE_WINT_T], [/* systems should define this type here */ +#undef HAVE_WINT_T]) +m4trace:configure.in:799: -1- AH_OUTPUT([HAVE_LIBDL], [/* Define to 1 if you have the `dl\' library (-ldl). */ +#undef HAVE_LIBDL]) +m4trace:configure.in:799: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBDL]) +m4trace:configure.in:799: -1- m4_pattern_allow([^HAVE_LIBDL$]) +m4trace:configure.in:800: -1- AH_OUTPUT([HAVE_DLOPEN], [/* Define to 1 if you have the `dlopen\' function. */ +#undef HAVE_DLOPEN]) +m4trace:configure.in:800: -1- AH_OUTPUT([HAVE_DLCLOSE], [/* Define to 1 if you have the `dlclose\' function. */ +#undef HAVE_DLCLOSE]) +m4trace:configure.in:800: -1- AH_OUTPUT([HAVE_DLSYM], [/* Define to 1 if you have the `dlsym\' function. */ +#undef HAVE_DLSYM]) +m4trace:configure.in:804: -1- _m4_warn([obsolete], [The macro `AC_DECL_SYS_SIGLIST' is obsolete. +You should run autoupdate.], [../../lib/autoconf/specific.m4:63: AC_DECL_SYS_SIGLIST is expanded from... +configure.in:804: the top level]) +m4trace:configure.in:804: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_SYS_SIGLIST]) +m4trace:configure.in:804: -1- m4_pattern_allow([^HAVE_DECL_SYS_SIGLIST$]) +m4trace:configure.in:804: -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:804: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_SYS_SIGLIST]) +m4trace:configure.in:804: -1- m4_pattern_allow([^HAVE_DECL_SYS_SIGLIST$]) +m4trace:configure.in:808: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2527: AC_TRY_LINK is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from... +aclocal.m4:560: BASH_FUNC_INET_ATON is expanded from... +configure.in:808: the top level]) +m4trace:configure.in:808: -1- AC_DEFINE_TRACE_LITERAL([HAVE_INET_ATON]) +m4trace:configure.in:808: -1- m4_pattern_allow([^HAVE_INET_ATON$]) +m4trace:configure.in:808: -1- AC_LIBSOURCE([inet_aton.c]) +m4trace:configure.in:808: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS inet_aton.$ac_objext"]) +m4trace:configure.in:808: -1- AC_SUBST_TRACE([LIB@&t@OBJS]) +m4trace:configure.in:808: -1- m4_pattern_allow([^LIB@&t@OBJS$]) +m4trace:configure.in:814: -1- AH_OUTPUT([HAVE_LIBSUN], [/* Define to 1 if you have the `sun\' library (-lsun). */ +#undef HAVE_LIBSUN]) +m4trace:configure.in:814: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBSUN]) +m4trace:configure.in:814: -1- m4_pattern_allow([^HAVE_LIBSUN$]) +m4trace:configure.in:819: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBSOCKET]) +m4trace:configure.in:819: -1- m4_pattern_allow([^HAVE_LIBSOCKET$]) +m4trace:configure.in:819: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETPEERNAME]) +m4trace:configure.in:819: -1- m4_pattern_allow([^HAVE_GETPEERNAME$]) +m4trace:configure.in:823: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2527: AC_TRY_LINK is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:729: BASH_FUNC_GETHOSTBYNAME is expanded from... +configure.in:823: the top level]) +m4trace:configure.in:823: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETHOSTBYNAME]) +m4trace:configure.in:823: -1- m4_pattern_allow([^HAVE_GETHOSTBYNAME$]) +m4trace:configure.in:827: -1- AC_DEFINE_TRACE_LITERAL([uid_t]) +m4trace:configure.in:827: -1- m4_pattern_allow([^uid_t$]) +m4trace:configure.in:827: -1- AH_OUTPUT([uid_t], [/* Define to `int\' if doesn\'t define. */ +#undef uid_t]) +m4trace:configure.in:827: -1- AC_DEFINE_TRACE_LITERAL([gid_t]) +m4trace:configure.in:827: -1- m4_pattern_allow([^gid_t$]) +m4trace:configure.in:827: -1- AH_OUTPUT([gid_t], [/* Define to `int\' if doesn\'t define. */ +#undef gid_t]) +m4trace:configure.in:827: -1- AC_DEFINE_TRACE_LITERAL([GETGROUPS_T]) +m4trace:configure.in:827: -1- m4_pattern_allow([^GETGROUPS_T$]) +m4trace:configure.in:827: -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:828: -1- AC_DEFINE_TRACE_LITERAL([off_t]) +m4trace:configure.in:828: -1- m4_pattern_allow([^off_t$]) +m4trace:configure.in:828: -1- AH_OUTPUT([off_t], [/* Define to `long int\' if does not define. */ +#undef off_t]) +m4trace:configure.in:829: -1- AC_DEFINE_TRACE_LITERAL([mode_t]) +m4trace:configure.in:829: -1- m4_pattern_allow([^mode_t$]) +m4trace:configure.in:829: -1- AH_OUTPUT([mode_t], [/* Define to `int\' if does not define. */ +#undef mode_t]) +m4trace:configure.in:830: -1- AC_DEFINE_TRACE_LITERAL([uid_t]) +m4trace:configure.in:830: -1- m4_pattern_allow([^uid_t$]) +m4trace:configure.in:830: -1- AH_OUTPUT([uid_t], [/* Define to `int\' if doesn\'t define. */ +#undef uid_t]) +m4trace:configure.in:830: -1- AC_DEFINE_TRACE_LITERAL([gid_t]) +m4trace:configure.in:830: -1- m4_pattern_allow([^gid_t$]) +m4trace:configure.in:830: -1- AH_OUTPUT([gid_t], [/* Define to `int\' if doesn\'t define. */ +#undef gid_t]) +m4trace:configure.in:831: -1- AC_DEFINE_TRACE_LITERAL([pid_t]) +m4trace:configure.in:831: -1- m4_pattern_allow([^pid_t$]) +m4trace:configure.in:831: -1- AH_OUTPUT([pid_t], [/* Define to `int\' if does not define. */ +#undef pid_t]) +m4trace:configure.in:832: -1- AC_DEFINE_TRACE_LITERAL([size_t]) +m4trace:configure.in:832: -1- m4_pattern_allow([^size_t$]) +m4trace:configure.in:832: -1- AH_OUTPUT([size_t], [/* Define to `unsigned int\' if does not define. */ +#undef size_t]) +m4trace:configure.in:833: -1- AC_DEFINE_TRACE_LITERAL([ssize_t]) +m4trace:configure.in:833: -1- m4_pattern_allow([^ssize_t$]) +m4trace:configure.in:833: -1- AH_OUTPUT([ssize_t], [/* Define to `int\' if does not define. */ +#undef ssize_t]) +m4trace:configure.in:834: -1- AC_DEFINE_TRACE_LITERAL([time_t]) +m4trace:configure.in:834: -1- m4_pattern_allow([^time_t$]) +m4trace:configure.in:834: -1- AH_OUTPUT([time_t], [/* Define to `long\' if does not define. */ +#undef time_t]) +m4trace:configure.in:836: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2527: AC_TRY_LINK is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from... +aclocal.m4:469: BASH_TYPE_LONG_LONG is expanded from... +configure.in:836: the top level]) +m4trace:configure.in:836: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LONG_LONG]) +m4trace:configure.in:836: -1- m4_pattern_allow([^HAVE_LONG_LONG$]) +m4trace:configure.in:837: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2527: AC_TRY_LINK is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from... +aclocal.m4:483: BASH_TYPE_UNSIGNED_LONG_LONG is expanded from... +configure.in:837: the top level]) +m4trace:configure.in:837: -1- AC_DEFINE_TRACE_LITERAL([HAVE_UNSIGNED_LONG_LONG]) +m4trace:configure.in:837: -1- m4_pattern_allow([^HAVE_UNSIGNED_LONG_LONG$]) +m4trace:configure.in:839: -1- _m4_warn([obsolete], [The macro `AC_TYPE_SIGNAL' is obsolete. +You should run autoupdate.], [../../lib/autoconf/types.m4:699: AC_TYPE_SIGNAL is expanded from... +configure.in:839: the top level]) +m4trace:configure.in:839: -1- AC_DEFINE_TRACE_LITERAL([RETSIGTYPE]) +m4trace:configure.in:839: -1- m4_pattern_allow([^RETSIGTYPE$]) +m4trace:configure.in:839: -1- AH_OUTPUT([RETSIGTYPE], [/* Define as the return type of signal handlers (`int\' or `void\'). */ +#undef RETSIGTYPE]) +m4trace:configure.in:840: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2527: AC_TRY_LINK is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from... +aclocal.m4:534: BASH_TYPE_SIG_ATOMIC_T is expanded from... +configure.in:840: the top level]) +m4trace:configure.in:840: -1- AC_DEFINE_TRACE_LITERAL([sig_atomic_t]) +m4trace:configure.in:840: -1- m4_pattern_allow([^sig_atomic_t$]) +m4trace:configure.in:840: -1- AH_OUTPUT([sig_atomic_t], [/* Define to `int\' if does not define. */ +#undef sig_atomic_t]) +m4trace:configure.in:842: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_CHAR]) +m4trace:configure.in:842: -1- m4_pattern_allow([^SIZEOF_CHAR$]) +m4trace:configure.in:842: -1- AH_OUTPUT([SIZEOF_CHAR], [/* The size of `char\', as computed by sizeof. */ +#undef SIZEOF_CHAR]) +m4trace:configure.in:843: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_SHORT]) +m4trace:configure.in:843: -1- m4_pattern_allow([^SIZEOF_SHORT$]) +m4trace:configure.in:843: -1- AH_OUTPUT([SIZEOF_SHORT], [/* The size of `short\', as computed by sizeof. */ +#undef SIZEOF_SHORT]) +m4trace:configure.in:844: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_INT]) +m4trace:configure.in:844: -1- m4_pattern_allow([^SIZEOF_INT$]) +m4trace:configure.in:844: -1- AH_OUTPUT([SIZEOF_INT], [/* The size of `int\', as computed by sizeof. */ +#undef SIZEOF_INT]) +m4trace:configure.in:845: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_LONG]) +m4trace:configure.in:845: -1- m4_pattern_allow([^SIZEOF_LONG$]) +m4trace:configure.in:845: -1- AH_OUTPUT([SIZEOF_LONG], [/* The size of `long\', as computed by sizeof. */ +#undef SIZEOF_LONG]) +m4trace:configure.in:846: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_CHAR_P]) +m4trace:configure.in:846: -1- m4_pattern_allow([^SIZEOF_CHAR_P$]) +m4trace:configure.in:846: -1- AH_OUTPUT([SIZEOF_CHAR_P], [/* The size of `char *\', as computed by sizeof. */ +#undef SIZEOF_CHAR_P]) +m4trace:configure.in:847: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_DOUBLE]) +m4trace:configure.in:847: -1- m4_pattern_allow([^SIZEOF_DOUBLE$]) +m4trace:configure.in:847: -1- AH_OUTPUT([SIZEOF_DOUBLE], [/* The size of `double\', as computed by sizeof. */ +#undef SIZEOF_DOUBLE]) +m4trace:configure.in:848: -1- AC_DEFINE_TRACE_LITERAL([SIZEOF_LONG_LONG]) +m4trace:configure.in:848: -1- m4_pattern_allow([^SIZEOF_LONG_LONG$]) +m4trace:configure.in:848: -1- AH_OUTPUT([SIZEOF_LONG_LONG], [/* The size of `long long\', as computed by sizeof. */ +#undef SIZEOF_LONG_LONG]) +m4trace:configure.in:850: -1- AC_DEFINE_TRACE_LITERAL([u_int]) +m4trace:configure.in:850: -1- m4_pattern_allow([^u_int$]) +m4trace:configure.in:850: -1- AH_OUTPUT([u_int], [/* Define to `unsigned int\' if does not define. */ +#undef u_int]) +m4trace:configure.in:851: -1- AC_DEFINE_TRACE_LITERAL([u_long]) +m4trace:configure.in:851: -1- m4_pattern_allow([^u_long$]) +m4trace:configure.in:851: -1- AH_OUTPUT([u_long], [/* Define to `unsigned long\' if does not define. */ +#undef u_long]) +m4trace:configure.in:853: -1- AC_DEFINE_TRACE_LITERAL([bits16_t]) +m4trace:configure.in:853: -1- m4_pattern_allow([^bits16_t$]) +m4trace:configure.in:853: -1- AH_OUTPUT([bits16_t], [/* Define to `short\' if does not define. */ +#undef bits16_t]) +m4trace:configure.in:853: -1- AC_DEFINE_TRACE_LITERAL([bits16_t]) +m4trace:configure.in:853: -1- m4_pattern_allow([^bits16_t$]) +m4trace:configure.in:853: -1- AH_OUTPUT([bits16_t], [/* Define to `char\' if does not define. */ +#undef bits16_t]) +m4trace:configure.in:853: -1- AC_DEFINE_TRACE_LITERAL([bits16_t]) +m4trace:configure.in:853: -1- m4_pattern_allow([^bits16_t$]) +m4trace:configure.in:853: -1- AH_OUTPUT([bits16_t], [/* Define to `short\' if does not define. */ +#undef bits16_t]) +m4trace:configure.in:854: -1- AC_DEFINE_TRACE_LITERAL([u_bits16_t]) +m4trace:configure.in:854: -1- m4_pattern_allow([^u_bits16_t$]) +m4trace:configure.in:854: -1- AH_OUTPUT([u_bits16_t], [/* Define to `unsigned short\' if does not define. */ +#undef u_bits16_t]) +m4trace:configure.in:854: -1- AC_DEFINE_TRACE_LITERAL([u_bits16_t]) +m4trace:configure.in:854: -1- m4_pattern_allow([^u_bits16_t$]) +m4trace:configure.in:854: -1- AH_OUTPUT([u_bits16_t], [/* Define to `unsigned char\' if does not define. */ +#undef u_bits16_t]) +m4trace:configure.in:854: -1- AC_DEFINE_TRACE_LITERAL([u_bits16_t]) +m4trace:configure.in:854: -1- m4_pattern_allow([^u_bits16_t$]) +m4trace:configure.in:854: -1- AH_OUTPUT([u_bits16_t], [/* Define to `unsigned short\' if does not define. */ +#undef u_bits16_t]) +m4trace:configure.in:855: -1- AC_DEFINE_TRACE_LITERAL([bits32_t]) +m4trace:configure.in:855: -1- m4_pattern_allow([^bits32_t$]) +m4trace:configure.in:855: -1- AH_OUTPUT([bits32_t], [/* Define to `int\' if does not define. */ +#undef bits32_t]) +m4trace:configure.in:855: -1- AC_DEFINE_TRACE_LITERAL([bits32_t]) +m4trace:configure.in:855: -1- m4_pattern_allow([^bits32_t$]) +m4trace:configure.in:855: -1- AH_OUTPUT([bits32_t], [/* Define to `long\' if does not define. */ +#undef bits32_t]) +m4trace:configure.in:855: -1- AC_DEFINE_TRACE_LITERAL([bits32_t]) +m4trace:configure.in:855: -1- m4_pattern_allow([^bits32_t$]) +m4trace:configure.in:855: -1- AH_OUTPUT([bits32_t], [/* Define to `int\' if does not define. */ +#undef bits32_t]) +m4trace:configure.in:856: -1- AC_DEFINE_TRACE_LITERAL([u_bits32_t]) +m4trace:configure.in:856: -1- m4_pattern_allow([^u_bits32_t$]) +m4trace:configure.in:856: -1- AH_OUTPUT([u_bits32_t], [/* Define to `unsigned int\' if does not define. */ +#undef u_bits32_t]) +m4trace:configure.in:856: -1- AC_DEFINE_TRACE_LITERAL([u_bits32_t]) +m4trace:configure.in:856: -1- m4_pattern_allow([^u_bits32_t$]) +m4trace:configure.in:856: -1- AH_OUTPUT([u_bits32_t], [/* Define to `unsigned long\' if does not define. */ +#undef u_bits32_t]) +m4trace:configure.in:856: -1- AC_DEFINE_TRACE_LITERAL([u_bits32_t]) +m4trace:configure.in:856: -1- m4_pattern_allow([^u_bits32_t$]) +m4trace:configure.in:856: -1- AH_OUTPUT([u_bits32_t], [/* Define to `unsigned int\' if does not define. */ +#undef u_bits32_t]) +m4trace:configure.in:857: -1- AC_DEFINE_TRACE_LITERAL([bits64_t]) +m4trace:configure.in:857: -1- m4_pattern_allow([^bits64_t$]) +m4trace:configure.in:857: -1- AH_OUTPUT([bits64_t], [/* Define to `char *\' if does not define. */ +#undef bits64_t]) +m4trace:configure.in:857: -1- AC_DEFINE_TRACE_LITERAL([bits64_t]) +m4trace:configure.in:857: -1- m4_pattern_allow([^bits64_t$]) +m4trace:configure.in:857: -1- AH_OUTPUT([bits64_t], [/* Define to `double\' if does not define. */ +#undef bits64_t]) +m4trace:configure.in:857: -1- AC_DEFINE_TRACE_LITERAL([bits64_t]) +m4trace:configure.in:857: -1- m4_pattern_allow([^bits64_t$]) +m4trace:configure.in:857: -1- AH_OUTPUT([bits64_t], [/* Define to `long long\' if does not define. */ +#undef bits64_t]) +m4trace:configure.in:857: -1- AC_DEFINE_TRACE_LITERAL([bits64_t]) +m4trace:configure.in:857: -1- m4_pattern_allow([^bits64_t$]) +m4trace:configure.in:857: -1- AH_OUTPUT([bits64_t], [/* Define to `long\' if does not define. */ +#undef bits64_t]) +m4trace:configure.in:857: -1- AC_DEFINE_TRACE_LITERAL([bits64_t]) +m4trace:configure.in:857: -1- m4_pattern_allow([^bits64_t$]) +m4trace:configure.in:857: -1- AH_OUTPUT([bits64_t], [/* Define to `double\' if does not define. */ +#undef bits64_t]) +m4trace:configure.in:859: -1- AC_DEFINE_TRACE_LITERAL([ptrdiff_t]) +m4trace:configure.in:859: -1- m4_pattern_allow([^ptrdiff_t$]) +m4trace:configure.in:859: -1- AH_OUTPUT([ptrdiff_t], [/* Define to `int\' if does not define. */ +#undef ptrdiff_t]) +m4trace:configure.in:859: -1- AC_DEFINE_TRACE_LITERAL([ptrdiff_t]) +m4trace:configure.in:859: -1- m4_pattern_allow([^ptrdiff_t$]) +m4trace:configure.in:859: -1- AH_OUTPUT([ptrdiff_t], [/* Define to `long\' if does not define. */ +#undef ptrdiff_t]) +m4trace:configure.in:859: -1- AC_DEFINE_TRACE_LITERAL([ptrdiff_t]) +m4trace:configure.in:859: -1- m4_pattern_allow([^ptrdiff_t$]) +m4trace:configure.in:859: -1- AH_OUTPUT([ptrdiff_t], [/* Define to `long long\' if does not define. */ +#undef ptrdiff_t]) +m4trace:configure.in:859: -1- AC_DEFINE_TRACE_LITERAL([ptrdiff_t]) +m4trace:configure.in:859: -1- m4_pattern_allow([^ptrdiff_t$]) +m4trace:configure.in:859: -1- AH_OUTPUT([ptrdiff_t], [/* Define to `int\' if does not define. */ +#undef ptrdiff_t]) +m4trace:configure.in:862: -1- AC_DEFINE_TRACE_LITERAL([STAT_MACROS_BROKEN]) +m4trace:configure.in:862: -1- m4_pattern_allow([^STAT_MACROS_BROKEN$]) +m4trace:configure.in:862: -1- AH_OUTPUT([STAT_MACROS_BROKEN], [/* Define to 1 if the `S_IS*\' macros in do not work properly. */ +#undef STAT_MACROS_BROKEN]) +m4trace:configure.in:867: -1- AC_DEFINE_TRACE_LITERAL([HAVE_HASH_BANG_EXEC]) +m4trace:configure.in:867: -1- m4_pattern_allow([^HAVE_HASH_BANG_EXEC$]) +m4trace:configure.in:872: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2527: AC_TRY_LINK is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from... +aclocal.m4:546: BASH_FUNC_LSTAT is expanded from... +configure.in:872: the top level]) +m4trace:configure.in:872: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LSTAT]) +m4trace:configure.in:872: -1- m4_pattern_allow([^HAVE_LSTAT$]) +m4trace:configure.in:876: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2592: AC_TRY_RUN is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:1877: BASH_FUNC_CTYPE_NONASCII is expanded from... +configure.in:876: the top level]) +m4trace:configure.in:876: -1- AC_DEFINE_TRACE_LITERAL([CTYPE_NON_ASCII]) +m4trace:configure.in:876: -1- m4_pattern_allow([^CTYPE_NON_ASCII$]) +m4trace:configure.in:877: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2592: AC_TRY_RUN is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:267: BASH_FUNC_DUP2_CLOEXEC_CHECK is expanded from... +configure.in:877: the top level]) +m4trace:configure.in:877: -1- AC_DEFINE_TRACE_LITERAL([DUP2_BROKEN]) +m4trace:configure.in:877: -1- m4_pattern_allow([^DUP2_BROKEN$]) +m4trace:configure.in:878: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2592: AC_TRY_RUN is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:1232: BASH_SYS_PGRP_SYNC is expanded from... +configure.in:878: the top level]) +m4trace:configure.in:878: -1- AC_DEFINE_TRACE_LITERAL([PGRP_PIPE]) +m4trace:configure.in:878: -1- m4_pattern_allow([^PGRP_PIPE$]) +m4trace:configure.in:879: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2527: AC_TRY_LINK is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:1192: BASH_SYS_SIGNAL_VINTAGE is expanded from... +configure.in:879: the top level]) +m4trace:configure.in:879: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2527: AC_TRY_LINK is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:2518: AC_LINK_IFELSE is expanded from... +../../lib/autoconf/general.m4:2527: AC_TRY_LINK is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:1192: BASH_SYS_SIGNAL_VINTAGE is expanded from... +configure.in:879: the top level]) +m4trace:configure.in:879: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2527: AC_TRY_LINK is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:2518: AC_LINK_IFELSE is expanded from... +../../lib/autoconf/general.m4:2527: AC_TRY_LINK is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:2518: AC_LINK_IFELSE is expanded from... +../../lib/autoconf/general.m4:2527: AC_TRY_LINK is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:1192: BASH_SYS_SIGNAL_VINTAGE is expanded from... +configure.in:879: the top level]) +m4trace:configure.in:879: -1- AC_DEFINE_TRACE_LITERAL([HAVE_POSIX_SIGNALS]) +m4trace:configure.in:879: -1- m4_pattern_allow([^HAVE_POSIX_SIGNALS$]) +m4trace:configure.in:879: -1- AC_DEFINE_TRACE_LITERAL([HAVE_BSD_SIGNALS]) +m4trace:configure.in:879: -1- m4_pattern_allow([^HAVE_BSD_SIGNALS$]) +m4trace:configure.in:879: -1- AC_DEFINE_TRACE_LITERAL([HAVE_USG_SIGHOLD]) +m4trace:configure.in:879: -1- m4_pattern_allow([^HAVE_USG_SIGHOLD$]) +m4trace:configure.in:882: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2527: AC_TRY_LINK is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:250: BASH_SYS_ERRLIST is expanded from... +configure.in:882: the top level]) +m4trace:configure.in:882: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SYS_ERRLIST]) +m4trace:configure.in:882: -1- m4_pattern_allow([^HAVE_SYS_ERRLIST$]) +m4trace:configure.in:883: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2592: AC_TRY_RUN is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:208: BASH_SYS_SIGLIST is expanded from... +configure.in:883: the top level]) +m4trace:configure.in:883: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SYS_SIGLIST]) +m4trace:configure.in:883: -1- m4_pattern_allow([^HAVE_SYS_SIGLIST$]) +m4trace:configure.in:884: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2470: AC_TRY_COMPILE is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:164: BASH_DECL_UNDER_SYS_SIGLIST is expanded from... +aclocal.m4:181: BASH_UNDER_SYS_SIGLIST is expanded from... +configure.in:884: the top level]) +m4trace:configure.in:884: -1- AC_DEFINE_TRACE_LITERAL([UNDER_SYS_SIGLIST_DECLARED]) +m4trace:configure.in:884: -1- m4_pattern_allow([^UNDER_SYS_SIGLIST_DECLARED$]) +m4trace:configure.in:884: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2592: AC_TRY_RUN is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:181: BASH_UNDER_SYS_SIGLIST is expanded from... +configure.in:884: the top level]) +m4trace:configure.in:884: -1- AC_DEFINE_TRACE_LITERAL([HAVE_UNDER_SYS_SIGLIST]) +m4trace:configure.in:884: -1- m4_pattern_allow([^HAVE_UNDER_SYS_SIGLIST$]) +m4trace:configure.in:887: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2470: AC_TRY_COMPILE is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:363: BASH_TYPE_SIGHANDLER is expanded from... +configure.in:887: the top level]) +m4trace:configure.in:887: -1- AC_DEFINE_TRACE_LITERAL([VOID_SIGHANDLER]) +m4trace:configure.in:887: -1- m4_pattern_allow([^VOID_SIGHANDLER$]) +m4trace:configure.in:888: -1- AC_DEFINE_TRACE_LITERAL([clock_t]) +m4trace:configure.in:888: -1- m4_pattern_allow([^clock_t$]) +m4trace:configure.in:889: -1- AC_DEFINE_TRACE_LITERAL([sigset_t]) +m4trace:configure.in:889: -1- m4_pattern_allow([^sigset_t$]) +m4trace:configure.in:890: -1- AC_DEFINE_TRACE_LITERAL([HAVE_QUAD_T]) +m4trace:configure.in:890: -1- m4_pattern_allow([^HAVE_QUAD_T$]) +m4trace:configure.in:890: -1- AC_DEFINE_TRACE_LITERAL([quad_t]) +m4trace:configure.in:890: -1- m4_pattern_allow([^quad_t$]) +m4trace:configure.in:891: -1- AC_DEFINE_TRACE_LITERAL([intmax_t]) +m4trace:configure.in:891: -1- m4_pattern_allow([^intmax_t$]) +m4trace:configure.in:892: -1- AC_DEFINE_TRACE_LITERAL([uintmax_t]) +m4trace:configure.in:892: -1- m4_pattern_allow([^uintmax_t$]) +m4trace:configure.in:894: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SOCKLEN_T]) +m4trace:configure.in:894: -1- m4_pattern_allow([^HAVE_SOCKLEN_T$]) +m4trace:configure.in:894: -1- AC_DEFINE_TRACE_LITERAL([socklen_t]) +m4trace:configure.in:894: -1- m4_pattern_allow([^socklen_t$]) +m4trace:configure.in:896: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2470: AC_TRY_COMPILE is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:504: BASH_TYPE_RLIMIT is expanded from... +configure.in:896: the top level]) +m4trace:configure.in:896: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2592: AC_TRY_RUN is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:2462: AC_COMPILE_IFELSE is expanded from... +../../lib/autoconf/general.m4:2470: AC_TRY_COMPILE is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:504: BASH_TYPE_RLIMIT is expanded from... +configure.in:896: the top level]) +m4trace:configure.in:896: -1- AC_DEFINE_TRACE_LITERAL([RLIMTYPE]) +m4trace:configure.in:896: -1- m4_pattern_allow([^RLIMTYPE$]) +m4trace:configure.in:896: -1- AC_DEFINE_TRACE_LITERAL([RLIMTYPE]) +m4trace:configure.in:896: -1- m4_pattern_allow([^RLIMTYPE$]) +m4trace:configure.in:899: -2- AC_DEFINE_TRACE_LITERAL([TERMIOS_LDISC]) +m4trace:configure.in:899: -2- m4_pattern_allow([^TERMIOS_LDISC$]) +m4trace:configure.in:900: -2- AC_DEFINE_TRACE_LITERAL([TERMIO_LDISC]) +m4trace:configure.in:900: -2- m4_pattern_allow([^TERMIO_LDISC$]) +m4trace:configure.in:901: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2470: AC_TRY_COMPILE is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:1039: BASH_STRUCT_DIRENT_D_INO is expanded from... +configure.in:901: the top level]) +m4trace:configure.in:901: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_DIRENT_D_INO]) +m4trace:configure.in:901: -1- m4_pattern_allow([^HAVE_STRUCT_DIRENT_D_INO$]) +m4trace:configure.in:902: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2470: AC_TRY_COMPILE is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:1072: BASH_STRUCT_DIRENT_D_FILENO is expanded from... +configure.in:902: the top level]) +m4trace:configure.in:902: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_DIRENT_D_FILENO]) +m4trace:configure.in:902: -1- m4_pattern_allow([^HAVE_STRUCT_DIRENT_D_FILENO$]) +m4trace:configure.in:903: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2470: AC_TRY_COMPILE is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:1105: BASH_STRUCT_DIRENT_D_NAMLEN is expanded from... +configure.in:903: the top level]) +m4trace:configure.in:903: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_DIRENT_D_NAMLEN]) +m4trace:configure.in:903: -1- m4_pattern_allow([^HAVE_STRUCT_DIRENT_D_NAMLEN$]) +m4trace:configure.in:904: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2470: AC_TRY_COMPILE is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:1170: BASH_STRUCT_WINSIZE is expanded from... +configure.in:904: the top level]) +m4trace:configure.in:904: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2470: AC_TRY_COMPILE is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:2462: AC_COMPILE_IFELSE is expanded from... +../../lib/autoconf/general.m4:2470: AC_TRY_COMPILE is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:1170: BASH_STRUCT_WINSIZE is expanded from... +configure.in:904: the top level]) +m4trace:configure.in:904: -1- AC_DEFINE_TRACE_LITERAL([STRUCT_WINSIZE_IN_SYS_IOCTL]) +m4trace:configure.in:904: -1- m4_pattern_allow([^STRUCT_WINSIZE_IN_SYS_IOCTL$]) +m4trace:configure.in:904: -1- AC_DEFINE_TRACE_LITERAL([STRUCT_WINSIZE_IN_TERMIOS]) +m4trace:configure.in:904: -1- m4_pattern_allow([^STRUCT_WINSIZE_IN_TERMIOS$]) +m4trace:configure.in:905: -1- AC_DEFINE_TRACE_LITERAL([HAVE_TIMEVAL]) +m4trace:configure.in:905: -1- m4_pattern_allow([^HAVE_TIMEVAL$]) +m4trace:configure.in:906: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_STAT_ST_BLOCKS]) +m4trace:configure.in:906: -1- m4_pattern_allow([^HAVE_STRUCT_STAT_ST_BLOCKS$]) +m4trace:configure.in:906: -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:907: -1- AC_DEFINE_TRACE_LITERAL([TM_IN_SYS_TIME]) +m4trace:configure.in:907: -1- m4_pattern_allow([^TM_IN_SYS_TIME$]) +m4trace:configure.in:907: -1- AH_OUTPUT([TM_IN_SYS_TIME], [/* Define to 1 if your declares `struct tm\'. */ +#undef TM_IN_SYS_TIME]) +m4trace:configure.in:908: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_TM_TM_ZONE]) +m4trace:configure.in:908: -1- m4_pattern_allow([^HAVE_STRUCT_TM_TM_ZONE$]) +m4trace:configure.in:908: -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:908: -1- AC_DEFINE_TRACE_LITERAL([HAVE_TM_ZONE]) +m4trace:configure.in:908: -1- m4_pattern_allow([^HAVE_TM_ZONE$]) +m4trace:configure.in:908: -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:908: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_TZNAME]) +m4trace:configure.in:908: -1- m4_pattern_allow([^HAVE_DECL_TZNAME$]) +m4trace:configure.in:908: -1- AH_OUTPUT([HAVE_DECL_TZNAME], [/* Define to 1 if you have the declaration of `tzname\', and to 0 if you don\'t. + */ +#undef HAVE_DECL_TZNAME]) +m4trace:configure.in:908: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_TZNAME]) +m4trace:configure.in:908: -1- m4_pattern_allow([^HAVE_DECL_TZNAME$]) +m4trace:configure.in:908: -1- AC_DEFINE_TRACE_LITERAL([HAVE_TZNAME]) +m4trace:configure.in:908: -1- m4_pattern_allow([^HAVE_TZNAME$]) +m4trace:configure.in:908: -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:909: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRUCT_TIMEZONE]) +m4trace:configure.in:909: -1- m4_pattern_allow([^HAVE_STRUCT_TIMEZONE$]) +m4trace:configure.in:912: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2527: AC_TRY_LINK is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:296: BASH_FUNC_STRSIGNAL is expanded from... +configure.in:912: the top level]) +m4trace:configure.in:912: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STRSIGNAL]) +m4trace:configure.in:912: -1- m4_pattern_allow([^HAVE_STRSIGNAL$]) +m4trace:configure.in:913: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2592: AC_TRY_RUN is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:310: BASH_FUNC_OPENDIR_CHECK is expanded from... +configure.in:913: the top level]) +m4trace:configure.in:913: -1- AC_DEFINE_TRACE_LITERAL([OPENDIR_NOT_ROBUST]) +m4trace:configure.in:913: -1- m4_pattern_allow([^OPENDIR_NOT_ROBUST$]) +m4trace:configure.in:914: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2592: AC_TRY_RUN is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:680: BASH_FUNC_ULIMIT_MAXFDS is expanded from... +configure.in:914: the top level]) +m4trace:configure.in:914: -1- AC_DEFINE_TRACE_LITERAL([ULIMIT_MAXFDS]) +m4trace:configure.in:914: -1- m4_pattern_allow([^ULIMIT_MAXFDS$]) +m4trace:configure.in:915: -1- AH_OUTPUT([HAVE_FPURGE], [/* Define to 1 if you have the `fpurge\' function. */ +#undef HAVE_FPURGE]) +m4trace:configure.in:915: -1- AH_OUTPUT([HAVE___FPURGE], [/* Define to 1 if you have the `__fpurge\' function. */ +#undef HAVE___FPURGE]) +m4trace:configure.in:915: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_FPURGE]) +m4trace:configure.in:915: -1- m4_pattern_allow([^HAVE_DECL_FPURGE$]) +m4trace:configure.in:915: -1- AH_OUTPUT([HAVE_DECL_FPURGE], [/* Define to 1 if you have the declaration of `fpurge\', and to 0 if you don\'t. + */ +#undef HAVE_DECL_FPURGE]) +m4trace:configure.in:915: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DECL_FPURGE]) +m4trace:configure.in:915: -1- m4_pattern_allow([^HAVE_DECL_FPURGE$]) +m4trace:configure.in:916: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2592: AC_TRY_RUN is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:576: BASH_FUNC_GETENV is expanded from... +configure.in:916: the top level]) +m4trace:configure.in:916: -1- AC_DEFINE_TRACE_LITERAL([CAN_REDEFINE_GETENV]) +m4trace:configure.in:916: -1- m4_pattern_allow([^CAN_REDEFINE_GETENV$]) +m4trace:configure.in:918: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2592: AC_TRY_RUN is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:699: BASH_FUNC_GETCWD is expanded from... +configure.in:918: the top level]) +m4trace:configure.in:918: -1- AC_DEFINE_TRACE_LITERAL([GETCWD_BROKEN]) +m4trace:configure.in:918: -1- m4_pattern_allow([^GETCWD_BROKEN$]) +m4trace:configure.in:918: -1- AC_LIBSOURCE([getcwd.c]) +m4trace:configure.in:918: -1- AC_SUBST([LIB@&t@OBJS], ["$LIB@&t@OBJS getcwd.$ac_objext"]) +m4trace:configure.in:918: -1- AC_SUBST_TRACE([LIB@&t@OBJS]) +m4trace:configure.in:918: -1- m4_pattern_allow([^LIB@&t@OBJS$]) +m4trace:configure.in:920: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2592: AC_TRY_RUN is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:775: BASH_FUNC_POSIX_SETJMP is expanded from... +configure.in:920: the top level]) +m4trace:configure.in:920: -1- AC_DEFINE_TRACE_LITERAL([HAVE_POSIX_SIGSETJMP]) +m4trace:configure.in:920: -1- m4_pattern_allow([^HAVE_POSIX_SIGSETJMP$]) +m4trace:configure.in:921: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2592: AC_TRY_RUN is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:826: BASH_FUNC_STRCOLL is expanded from... +configure.in:921: the top level]) +m4trace:configure.in:921: -1- AC_DEFINE_TRACE_LITERAL([STRCOLL_BROKEN]) +m4trace:configure.in:921: -1- m4_pattern_allow([^STRCOLL_BROKEN$]) +m4trace:configure.in:927: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2527: AC_TRY_LINK is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from... +aclocal.m4:621: BASH_FUNC_STD_PUTENV is expanded from... +configure.in:927: the top level]) +m4trace:configure.in:927: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_PUTENV]) +m4trace:configure.in:927: -1- m4_pattern_allow([^HAVE_STD_PUTENV$]) +m4trace:configure.in:929: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_PUTENV]) +m4trace:configure.in:929: -1- m4_pattern_allow([^HAVE_STD_PUTENV$]) +m4trace:configure.in:932: -1- _m4_warn([obsolete], [The macro `AC_TRY_LINK' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2527: AC_TRY_LINK is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +../../lib/autoconf/general.m4:1994: AC_CACHE_CHECK is expanded from... +aclocal.m4:651: BASH_FUNC_STD_UNSETENV is expanded from... +configure.in:932: the top level]) +m4trace:configure.in:932: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_UNSETENV]) +m4trace:configure.in:932: -1- m4_pattern_allow([^HAVE_STD_UNSETENV$]) +m4trace:configure.in:934: -1- AC_DEFINE_TRACE_LITERAL([HAVE_STD_UNSETENV]) +m4trace:configure.in:934: -1- m4_pattern_allow([^HAVE_STD_UNSETENV$]) +m4trace:configure.in:937: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2592: AC_TRY_RUN is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:875: BASH_FUNC_PRINTF_A_FORMAT is expanded from... +configure.in:937: the top level]) +m4trace:configure.in:937: -1- AC_DEFINE_TRACE_LITERAL([HAVE_PRINTF_A_FORMAT]) +m4trace:configure.in:937: -1- m4_pattern_allow([^HAVE_PRINTF_A_FORMAT$]) +m4trace:configure.in:940: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2592: AC_TRY_RUN is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:1294: BASH_SYS_REINSTALL_SIGHANDLERS is expanded from... +configure.in:940: the top level]) +m4trace:configure.in:940: -1- AC_DEFINE_TRACE_LITERAL([MUST_REINSTALL_SIGHANDLERS]) +m4trace:configure.in:940: -1- m4_pattern_allow([^MUST_REINSTALL_SIGHANDLERS$]) +m4trace:configure.in:941: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2592: AC_TRY_RUN is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:1353: BASH_SYS_JOB_CONTROL_MISSING is expanded from... +configure.in:941: the top level]) +m4trace:configure.in:941: -1- AC_DEFINE_TRACE_LITERAL([JOB_CONTROL_MISSING]) +m4trace:configure.in:941: -1- m4_pattern_allow([^JOB_CONTROL_MISSING$]) +m4trace:configure.in:942: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2592: AC_TRY_RUN is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:1412: BASH_SYS_NAMED_PIPES is expanded from... +configure.in:942: the top level]) +m4trace:configure.in:942: -1- AC_DEFINE_TRACE_LITERAL([NAMED_PIPES_MISSING]) +m4trace:configure.in:942: -1- m4_pattern_allow([^NAMED_PIPES_MISSING$]) +m4trace:configure.in:945: -1- AC_DEFINE_TRACE_LITERAL([GWINSZ_IN_SYS_IOCTL]) +m4trace:configure.in:945: -1- m4_pattern_allow([^GWINSZ_IN_SYS_IOCTL$]) +m4trace:configure.in:945: -1- AH_OUTPUT([GWINSZ_IN_SYS_IOCTL], [/* Define to 1 if `TIOCGWINSZ\' requires . */ +#undef GWINSZ_IN_SYS_IOCTL]) +m4trace:configure.in:946: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2470: AC_TRY_COMPILE is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:1493: BASH_HAVE_TIOCSTAT is expanded from... +configure.in:946: the top level]) +m4trace:configure.in:946: -1- AC_DEFINE_TRACE_LITERAL([TIOCSTAT_IN_SYS_IOCTL]) +m4trace:configure.in:946: -1- m4_pattern_allow([^TIOCSTAT_IN_SYS_IOCTL$]) +m4trace:configure.in:947: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2470: AC_TRY_COMPILE is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:1505: BASH_HAVE_FIONREAD is expanded from... +configure.in:947: the top level]) +m4trace:configure.in:947: -1- AC_DEFINE_TRACE_LITERAL([FIONREAD_IN_SYS_IOCTL]) +m4trace:configure.in:947: -1- m4_pattern_allow([^FIONREAD_IN_SYS_IOCTL$]) +m4trace:configure.in:949: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2592: AC_TRY_RUN is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:1921: BASH_CHECK_WCONTINUED is expanded from... +configure.in:949: the top level]) +m4trace:configure.in:949: -1- AC_DEFINE_TRACE_LITERAL([WCONTINUED_BROKEN]) +m4trace:configure.in:949: -1- m4_pattern_allow([^WCONTINUED_BROKEN$]) +m4trace:configure.in:952: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2470: AC_TRY_COMPILE is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:1523: BASH_CHECK_SPEED_T is expanded from... +configure.in:952: the top level]) +m4trace:configure.in:952: -1- AC_DEFINE_TRACE_LITERAL([SPEED_T_IN_SYS_TYPES]) +m4trace:configure.in:952: -1- m4_pattern_allow([^SPEED_T_IN_SYS_TYPES$]) +m4trace:configure.in:953: -1- AC_DEFINE_TRACE_LITERAL([HAVE_GETPW_DECLS]) +m4trace:configure.in:953: -1- m4_pattern_allow([^HAVE_GETPW_DECLS$]) +m4trace:configure.in:954: -1- _m4_warn([obsolete], [The macro `AC_TRY_RUN' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2592: AC_TRY_RUN is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:1650: BASH_CHECK_RTSIGS is expanded from... +configure.in:954: the top level]) +m4trace:configure.in:954: -1- AC_DEFINE_TRACE_LITERAL([UNUSABLE_RT_SIGNALS]) +m4trace:configure.in:954: -1- m4_pattern_allow([^UNUSABLE_RT_SIGNALS$]) +m4trace:configure.in:955: -1- AC_SUBST([SIGLIST_O]) +m4trace:configure.in:955: -1- AC_SUBST_TRACE([SIGLIST_O]) +m4trace:configure.in:955: -1- m4_pattern_allow([^SIGLIST_O$]) +m4trace:configure.in:959: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2470: AC_TRY_COMPILE is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:1602: BASH_CHECK_KERNEL_RLIMIT is expanded from... +configure.in:959: the top level]) +m4trace:configure.in:959: -1- _m4_warn([obsolete], [The macro `AC_TRY_COMPILE' is obsolete. +You should run autoupdate.], [../../lib/autoconf/general.m4:2470: AC_TRY_COMPILE is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:2462: AC_COMPILE_IFELSE is expanded from... +../../lib/autoconf/general.m4:2470: AC_TRY_COMPILE is expanded from... +../../lib/m4sugar/m4sh.m4:505: AS_IF is expanded from... +../../lib/autoconf/general.m4:1974: AC_CACHE_VAL is expanded from... +aclocal.m4:1602: BASH_CHECK_KERNEL_RLIMIT is expanded from... +configure.in:959: the top level]) +m4trace:configure.in:959: -1- AC_DEFINE_TRACE_LITERAL([RLIMIT_NEEDS_KERNEL]) +m4trace:configure.in:959: -1- m4_pattern_allow([^RLIMIT_NEEDS_KERNEL$]) +m4trace:configure.in:969: -1- AC_SUBST([TERMCAP_LIB]) +m4trace:configure.in:969: -1- AC_SUBST_TRACE([TERMCAP_LIB]) +m4trace:configure.in:969: -1- m4_pattern_allow([^TERMCAP_LIB$]) +m4trace:configure.in:970: -1- AC_SUBST([TERMCAP_DEP]) +m4trace:configure.in:970: -1- AC_SUBST_TRACE([TERMCAP_DEP]) +m4trace:configure.in:970: -1- m4_pattern_allow([^TERMCAP_DEP$]) +m4trace:configure.in:972: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DEV_FD]) +m4trace:configure.in:972: -1- m4_pattern_allow([^HAVE_DEV_FD$]) +m4trace:configure.in:972: -1- AC_DEFINE_TRACE_LITERAL([DEV_FD_PREFIX]) +m4trace:configure.in:972: -1- m4_pattern_allow([^DEV_FD_PREFIX$]) +m4trace:configure.in:972: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DEV_FD]) +m4trace:configure.in:972: -1- m4_pattern_allow([^HAVE_DEV_FD$]) +m4trace:configure.in:972: -1- AC_DEFINE_TRACE_LITERAL([DEV_FD_PREFIX]) +m4trace:configure.in:972: -1- m4_pattern_allow([^DEV_FD_PREFIX$]) +m4trace:configure.in:973: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DEV_STDIN]) +m4trace:configure.in:973: -1- m4_pattern_allow([^HAVE_DEV_STDIN$]) +m4trace:configure.in:974: -1- AC_DEFINE_TRACE_LITERAL([DEFAULT_MAIL_DIRECTORY]) +m4trace:configure.in:974: -1- m4_pattern_allow([^DEFAULT_MAIL_DIRECTORY$]) +m4trace:configure.in:981: -1- AC_DEFINE_TRACE_LITERAL([JOB_CONTROL]) +m4trace:configure.in:981: -1- m4_pattern_allow([^JOB_CONTROL$]) +m4trace:configure.in:987: -1- AC_SUBST([JOBS_O]) +m4trace:configure.in:987: -1- AC_SUBST_TRACE([JOBS_O]) +m4trace:configure.in:987: -1- m4_pattern_allow([^JOBS_O$]) +m4trace:configure.in:1000: -1- AC_DEFINE_TRACE_LITERAL([SVR4_2]) +m4trace:configure.in:1000: -1- m4_pattern_allow([^SVR4_2$]) +m4trace:configure.in:1001: -1- AC_DEFINE_TRACE_LITERAL([SVR4]) +m4trace:configure.in:1001: -1- m4_pattern_allow([^SVR4$]) +m4trace:configure.in:1002: -1- AC_DEFINE_TRACE_LITERAL([SVR4]) +m4trace:configure.in:1002: -1- m4_pattern_allow([^SVR4$]) +m4trace:configure.in:1003: -1- AC_DEFINE_TRACE_LITERAL([SVR5]) +m4trace:configure.in:1003: -1- m4_pattern_allow([^SVR5$]) +m4trace:configure.in:1022: -1- AC_DEFINE_TRACE_LITERAL([PGRP_PIPE]) +m4trace:configure.in:1022: -1- m4_pattern_allow([^PGRP_PIPE$]) +m4trace:configure.in:1069: -1- AC_SUBST([SHOBJ_CC]) +m4trace:configure.in:1069: -1- AC_SUBST_TRACE([SHOBJ_CC]) +m4trace:configure.in:1069: -1- m4_pattern_allow([^SHOBJ_CC$]) +m4trace:configure.in:1070: -1- AC_SUBST([SHOBJ_CFLAGS]) +m4trace:configure.in:1070: -1- AC_SUBST_TRACE([SHOBJ_CFLAGS]) +m4trace:configure.in:1070: -1- m4_pattern_allow([^SHOBJ_CFLAGS$]) +m4trace:configure.in:1071: -1- AC_SUBST([SHOBJ_LD]) +m4trace:configure.in:1071: -1- AC_SUBST_TRACE([SHOBJ_LD]) +m4trace:configure.in:1071: -1- m4_pattern_allow([^SHOBJ_LD$]) +m4trace:configure.in:1072: -1- AC_SUBST([SHOBJ_LDFLAGS]) +m4trace:configure.in:1072: -1- AC_SUBST_TRACE([SHOBJ_LDFLAGS]) +m4trace:configure.in:1072: -1- m4_pattern_allow([^SHOBJ_LDFLAGS$]) +m4trace:configure.in:1073: -1- AC_SUBST([SHOBJ_XLDFLAGS]) +m4trace:configure.in:1073: -1- AC_SUBST_TRACE([SHOBJ_XLDFLAGS]) +m4trace:configure.in:1073: -1- m4_pattern_allow([^SHOBJ_XLDFLAGS$]) +m4trace:configure.in:1074: -1- AC_SUBST([SHOBJ_LIBS]) +m4trace:configure.in:1074: -1- AC_SUBST_TRACE([SHOBJ_LIBS]) +m4trace:configure.in:1074: -1- m4_pattern_allow([^SHOBJ_LIBS$]) +m4trace:configure.in:1075: -1- AC_SUBST([SHOBJ_STATUS]) +m4trace:configure.in:1075: -1- AC_SUBST_TRACE([SHOBJ_STATUS]) +m4trace:configure.in:1075: -1- m4_pattern_allow([^SHOBJ_STATUS$]) +m4trace:configure.in:1107: -1- AC_SUBST([PROFILE_FLAGS]) +m4trace:configure.in:1107: -1- AC_SUBST_TRACE([PROFILE_FLAGS]) +m4trace:configure.in:1107: -1- m4_pattern_allow([^PROFILE_FLAGS$]) +m4trace:configure.in:1109: -1- AC_SUBST([incdir]) +m4trace:configure.in:1109: -1- AC_SUBST_TRACE([incdir]) +m4trace:configure.in:1109: -1- m4_pattern_allow([^incdir$]) +m4trace:configure.in:1110: -1- AC_SUBST([BUILD_DIR]) +m4trace:configure.in:1110: -1- AC_SUBST_TRACE([BUILD_DIR]) +m4trace:configure.in:1110: -1- m4_pattern_allow([^BUILD_DIR$]) +m4trace:configure.in:1113: -1- AC_SUBST([datarootdir]) +m4trace:configure.in:1113: -1- AC_SUBST_TRACE([datarootdir]) +m4trace:configure.in:1113: -1- m4_pattern_allow([^datarootdir$]) +m4trace:configure.in:1114: -1- AC_SUBST([localedir]) +m4trace:configure.in:1114: -1- AC_SUBST_TRACE([localedir]) +m4trace:configure.in:1114: -1- m4_pattern_allow([^localedir$]) +m4trace:configure.in:1116: -1- AC_SUBST([YACC]) +m4trace:configure.in:1116: -1- AC_SUBST_TRACE([YACC]) +m4trace:configure.in:1116: -1- m4_pattern_allow([^YACC$]) +m4trace:configure.in:1117: -1- AC_SUBST([AR]) +m4trace:configure.in:1117: -1- AC_SUBST_TRACE([AR]) +m4trace:configure.in:1117: -1- m4_pattern_allow([^AR$]) +m4trace:configure.in:1118: -1- AC_SUBST([ARFLAGS]) +m4trace:configure.in:1118: -1- AC_SUBST_TRACE([ARFLAGS]) +m4trace:configure.in:1118: -1- m4_pattern_allow([^ARFLAGS$]) +m4trace:configure.in:1120: -1- AC_SUBST([BASHVERS]) +m4trace:configure.in:1120: -1- AC_SUBST_TRACE([BASHVERS]) +m4trace:configure.in:1120: -1- m4_pattern_allow([^BASHVERS$]) +m4trace:configure.in:1121: -1- AC_SUBST([RELSTATUS]) +m4trace:configure.in:1121: -1- AC_SUBST_TRACE([RELSTATUS]) +m4trace:configure.in:1121: -1- m4_pattern_allow([^RELSTATUS$]) +m4trace:configure.in:1122: -1- AC_SUBST([DEBUG]) +m4trace:configure.in:1122: -1- AC_SUBST_TRACE([DEBUG]) +m4trace:configure.in:1122: -1- m4_pattern_allow([^DEBUG$]) +m4trace:configure.in:1123: -1- AC_SUBST([MALLOC_DEBUG]) +m4trace:configure.in:1123: -1- AC_SUBST_TRACE([MALLOC_DEBUG]) +m4trace:configure.in:1123: -1- m4_pattern_allow([^MALLOC_DEBUG$]) +m4trace:configure.in:1125: -1- AC_SUBST([host_cpu]) +m4trace:configure.in:1125: -1- AC_SUBST_TRACE([host_cpu]) +m4trace:configure.in:1125: -1- m4_pattern_allow([^host_cpu$]) +m4trace:configure.in:1126: -1- AC_SUBST([host_vendor]) +m4trace:configure.in:1126: -1- AC_SUBST_TRACE([host_vendor]) +m4trace:configure.in:1126: -1- m4_pattern_allow([^host_vendor$]) +m4trace:configure.in:1127: -1- AC_SUBST([host_os]) +m4trace:configure.in:1127: -1- AC_SUBST_TRACE([host_os]) +m4trace:configure.in:1127: -1- m4_pattern_allow([^host_os$]) +m4trace:configure.in:1129: -1- AC_SUBST([LOCAL_LIBS]) +m4trace:configure.in:1129: -1- AC_SUBST_TRACE([LOCAL_LIBS]) +m4trace:configure.in:1129: -1- m4_pattern_allow([^LOCAL_LIBS$]) +m4trace:configure.in:1130: -1- AC_SUBST([LOCAL_CFLAGS]) +m4trace:configure.in:1130: -1- AC_SUBST_TRACE([LOCAL_CFLAGS]) +m4trace:configure.in:1130: -1- m4_pattern_allow([^LOCAL_CFLAGS$]) +m4trace:configure.in:1131: -1- AC_SUBST([LOCAL_LDFLAGS]) +m4trace:configure.in:1131: -1- AC_SUBST_TRACE([LOCAL_LDFLAGS]) +m4trace:configure.in:1131: -1- m4_pattern_allow([^LOCAL_LDFLAGS$]) +m4trace:configure.in:1132: -1- AC_SUBST([LOCAL_DEFS]) +m4trace:configure.in:1132: -1- AC_SUBST_TRACE([LOCAL_DEFS]) +m4trace:configure.in:1132: -1- m4_pattern_allow([^LOCAL_DEFS$]) +m4trace:configure.in:1137: -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]) +m4trace:configure.in:1137: -1- _m4_warn([obsolete], [AC_OUTPUT should be used without arguments. +You should run autoupdate.], []) +m4trace:configure.in:1137: -1- AC_SUBST([LIB@&t@OBJS], [$ac_libobjs]) +m4trace:configure.in:1137: -1- AC_SUBST_TRACE([LIB@&t@OBJS]) +m4trace:configure.in:1137: -1- m4_pattern_allow([^LIB@&t@OBJS$]) +m4trace:configure.in:1137: -1- AC_SUBST([LTLIBOBJS], [$ac_ltlibobjs]) +m4trace:configure.in:1137: -1- AC_SUBST_TRACE([LTLIBOBJS]) +m4trace:configure.in:1137: -1- m4_pattern_allow([^LTLIBOBJS$]) +m4trace:configure.in:1137: -1- AC_SUBST_TRACE([top_builddir]) +m4trace:configure.in:1137: -1- AC_SUBST_TRACE([top_build_prefix]) +m4trace:configure.in:1137: -1- AC_SUBST_TRACE([srcdir]) +m4trace:configure.in:1137: -1- AC_SUBST_TRACE([abs_srcdir]) +m4trace:configure.in:1137: -1- AC_SUBST_TRACE([top_srcdir]) +m4trace:configure.in:1137: -1- AC_SUBST_TRACE([abs_top_srcdir]) +m4trace:configure.in:1137: -1- AC_SUBST_TRACE([builddir]) +m4trace:configure.in:1137: -1- AC_SUBST_TRACE([abs_builddir]) +m4trace:configure.in:1137: -1- AC_SUBST_TRACE([abs_top_builddir]) +m4trace:configure.in:1137: -1- AC_SUBST_TRACE([INSTALL]) diff --git a/bashhist.c b/bashhist.c index a80968fd..7240a5bd 100644 --- a/bashhist.c +++ b/bashhist.c @@ -1,6 +1,6 @@ /* bashhist.c -- bash interface to the GNU history library. */ -/* Copyright (C) 1993-2009 Free Software Foundation, Inc. +/* Copyright (C) 1993-2010 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. @@ -184,6 +184,7 @@ int dont_save_function_defs; extern int current_command_line_count; extern struct dstack dstack; +extern int parser_state; static int bash_history_inhibit_expansion __P((char *, int)); #if defined (READLINE) @@ -212,6 +213,9 @@ bash_history_inhibit_expansion (string, i) else if (i > 1 && string[i - 1] == '{' && string[i - 2] == '$' && member ('}', string + i + 1)) return (1); + /* The shell uses $! as a defined parameter expansion. */ + else if (i > 1 && string[i - 1] == '$' && string[i] == '!') + return (1); #if defined (EXTENDED_GLOB) else if (extended_glob && i > 1 && string[i+1] == '(' && member (')', string + i + 2)) return (1); @@ -355,7 +359,7 @@ save_history () the history file. */ using_history (); - if (history_lines_this_session < where_history () || force_append_history) + if (history_lines_this_session <= where_history () || force_append_history) append_history (history_lines_this_session, hf); else write_history (hf); @@ -372,7 +376,7 @@ maybe_append_history (filename) struct stat buf; result = EXECUTION_SUCCESS; - if (history_lines_this_session && (history_lines_this_session < where_history ())) + if (history_lines_this_session && (history_lines_this_session <= where_history ())) { /* If the filename was supplied, then create it if necessary. */ if (stat (filename, &buf) == -1 && errno == ENOENT) @@ -731,7 +735,7 @@ bash_add_history (line) add_it = 1; if (command_oriented_history && current_command_line_count > 1) { - chars_to_add = literal_history ? "\n" : history_delimiting_chars (); + chars_to_add = literal_history ? "\n" : history_delimiting_chars (line); using_history (); current = previous_history (); @@ -751,6 +755,13 @@ bash_add_history (line) chars_to_add = ""; } + /* If we're not in some kind of quoted construct, the current history + entry ends with a newline, and we're going to add a semicolon, + don't. In some cases, it results in a syntax error (e.g., before + a close brace), and it should not be needed. */ + if (dstack.delimiter_depth == 0 && current->line[curlen - 1] == '\n' && *chars_to_add == ';') + chars_to_add++; + new_line = (char *)xmalloc (1 + curlen + strlen (line) diff --git a/bashline.c b/bashline.c index 9b49d0b4..52c6de6a 100644 --- a/bashline.c +++ b/bashline.c @@ -1,6 +1,6 @@ /* bashline.c -- Bash's interface to the readline library. */ -/* Copyright (C) 1987-2009 Free Software Foundation, Inc. +/* Copyright (C) 1987-2011 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. @@ -175,7 +175,8 @@ static char **prog_complete_matches; extern int hist_verify; #endif -extern int current_command_line_count, last_command_exit_value; +extern int current_command_line_count, saved_command_line_count; +extern int last_command_exit_value; extern int array_needs_making; extern int posixly_correct, no_symbolic_links; extern char *current_prompt_string, *ps1_prompt; @@ -500,7 +501,7 @@ initialize_readline () /* Tell the completer that we might want to follow symbolic links or do other expansion on directory names. */ - rl_directory_completion_hook = bash_directory_completion_hook; + rl_directory_rewrite_hook = bash_directory_completion_hook; rl_filename_rewrite_hook = bash_filename_rewrite_hook; @@ -528,11 +529,8 @@ initialize_readline () enable_hostname_completion (perform_hostname_completion); /* characters that need to be quoted when appearing in filenames. */ -#if 0 - rl_filename_quote_characters = " \t\n\\\"'@<>=;|&()#$`?*[!:{"; /*}*/ -#else rl_filename_quote_characters = " \t\n\\\"'@<>=;|&()#$`?*[!:{~"; /*}*/ -#endif + rl_filename_quoting_function = bash_quote_filename; rl_filename_dequoting_function = bash_dequote_filename; rl_char_is_quoted_p = char_is_quoted; @@ -566,7 +564,7 @@ bashline_reset () tilde_initialize (); rl_attempted_completion_function = attempt_shell_completion; rl_completion_entry_function = NULL; - rl_directory_completion_hook = bash_directory_completion_hook; + rl_directory_rewrite_hook = bash_directory_completion_hook; rl_ignore_some_completions_function = filename_completion_ignore; } @@ -862,10 +860,11 @@ edit_and_execute_command (count, c, editing_mode, edit_command) char *edit_command; { char *command, *metaval; - int r, cclc, rrs, metaflag; + int r, rrs, metaflag; + sh_parser_state_t ps; rrs = rl_readline_state; - cclc = current_command_line_count; + saved_command_line_count = current_command_line_count; /* Accept the current line. */ rl_newline (1, c); @@ -881,6 +880,8 @@ edit_and_execute_command (count, c, editing_mode, edit_command) then call fc to operate on it. We have to add a dummy command to the end of the history because fc ignores the last command (assumes it's supposed to deal with the command before the `fc'). */ + /* This breaks down when using command-oriented history and are not + finished with the command, so we should not ignore the last command */ using_history (); bash_add_history (rl_line_buffer); bash_add_history (""); @@ -897,11 +898,13 @@ edit_and_execute_command (count, c, editing_mode, edit_command) yet. */ if (rl_deprep_term_function) (*rl_deprep_term_function) (); + save_parser_state (&ps); r = parse_and_execute (command, (editing_mode == VI_EDITING_MODE) ? "v" : "C-xC-e", SEVAL_NOHIST); + restore_parser_state (&ps); if (rl_prep_term_function) (*rl_prep_term_function) (metaflag); - current_command_line_count = cclc; + current_command_line_count = saved_command_line_count; /* Now erase the contents of the current line and undo the effects of the rl_accept_line() above. We don't even want to make the text we just @@ -990,6 +993,20 @@ bash_forward_shellword (count, key) return 0; } + /* Are we in a quoted string? If we are, move to the end of the quoted + string and continue the outer loop. We only want quoted strings, not + backslash-escaped characters, but char_is_quoted doesn't + differentiate. */ + if (char_is_quoted (rl_line_buffer, p) && p > 0 && rl_line_buffer[p-1] != '\\') + { + do + ADVANCE_CHAR (rl_line_buffer, slen, p); + while (p < rl_end && char_is_quoted (rl_line_buffer, p)); + count--; + continue; + } + + /* Rest of code assumes we are not in a quoted string. */ /* Move forward until we hit a non-metacharacter. */ while (p < rl_end && (c = rl_line_buffer[p]) && WORDDELIM (c)) { @@ -1397,12 +1414,12 @@ bash_default_completion (text, start, end, qc, compflags) /* If the word starts in `~', and there is no slash in the word, then try completing this word as a username. */ - if (matches ==0 && *text == '~' && mbschr (text, '/') == 0) + if (matches == 0 && *text == '~' && mbschr (text, '/') == 0) matches = rl_completion_matches (text, rl_username_completion_function); /* Another one. Why not? If the word starts in '@', then look through the world of known hostnames for completion first. */ - if (!matches && perform_hostname_completion && *text == '@') + if (matches == 0 && perform_hostname_completion && *text == '@') matches = rl_completion_matches (text, hostname_completion_function); /* And last, (but not least) if this word is in a command position, then @@ -2648,8 +2665,7 @@ bash_directory_expansion (dirname) if (rl_directory_rewrite_hook) (*rl_directory_rewrite_hook) (&d); - - if (rl_directory_completion_hook && (*rl_directory_completion_hook) (&d)) + else if (rl_directory_completion_hook && (*rl_directory_completion_hook) (&d)) { free (*dirname); *dirname = d; @@ -2678,7 +2694,9 @@ bash_filename_rewrite_hook (fname, fnlen) } /* Handle symbolic link references and other directory name - expansions while hacking completion. */ + expansions while hacking completion. This should return 1 if it modifies + the DIRNAME argument, 0 otherwise. It should make sure not to modify + DIRNAME if it returns 0. */ static int bash_directory_completion_hook (dirname) char **dirname; @@ -2735,6 +2753,7 @@ bash_directory_completion_hook (dirname) { /* Dequote the filename even if we don't expand it. */ new_dirname = bash_dequote_filename (local_dirname, rl_completion_quote_character); + return_value = STREQ (local_dirname, new_dirname) == 0; free (local_dirname); local_dirname = *dirname = new_dirname; } @@ -2758,14 +2777,14 @@ bash_directory_completion_hook (dirname) free (temp1); temp1 = temp2; temp2 = sh_canonpath (temp1, PATH_CHECKDOTDOT|PATH_CHECKEXISTS); - return_value = temp2 != 0; + return_value |= temp2 != 0; } } /* If we can't canonicalize, bail. */ if (temp2 == 0) { free (temp1); - return 1; + return return_value; } len1 = strlen (temp1); if (temp1[len1 - 1] == '/') @@ -2778,10 +2797,12 @@ bash_directory_completion_hook (dirname) temp2[len2 + 1] = '\0'; } } + return_value |= STREQ (local_dirname, temp2) == 0; free (local_dirname); *dirname = temp2; free (temp1); } + return (return_value); } @@ -2870,12 +2891,15 @@ dynamic_complete_history (count, key) int r; rl_compentry_func_t *orig_func; rl_completion_func_t *orig_attempt_func; + rl_compignore_func_t *orig_ignore_func; orig_func = rl_completion_entry_function; orig_attempt_func = rl_attempted_completion_function; + orig_ignore_func = rl_ignore_some_completions_function; rl_completion_entry_function = history_completion_generator; rl_attempted_completion_function = (rl_completion_func_t *)NULL; + rl_ignore_some_completions_function = filename_completion_ignore; /* XXX - use rl_completion_mode here? */ if (rl_last_func == dynamic_complete_history) @@ -2885,6 +2909,8 @@ dynamic_complete_history (count, key) rl_completion_entry_function = orig_func; rl_attempted_completion_function = orig_attempt_func; + rl_ignore_some_completions_function = orig_ignore_func; + return r; } @@ -2895,14 +2921,17 @@ bash_dabbrev_expand (count, key) int r, orig_suppress, orig_sort; rl_compentry_func_t *orig_func; rl_completion_func_t *orig_attempt_func; + rl_compignore_func_t *orig_ignore_func; orig_func = rl_menu_completion_entry_function; orig_attempt_func = rl_attempted_completion_function; + orig_ignore_func = rl_ignore_some_completions_function; orig_suppress = rl_completion_suppress_append; orig_sort = rl_sort_completion_matches; rl_menu_completion_entry_function = history_completion_generator; rl_attempted_completion_function = (rl_completion_func_t *)NULL; + rl_ignore_some_completions_function = filename_completion_ignore; rl_filename_completion_desired = 0; rl_completion_suppress_append = 1; rl_sort_completion_matches = 0; @@ -2917,6 +2946,7 @@ bash_dabbrev_expand (count, key) rl_last_func = bash_dabbrev_expand; rl_menu_completion_entry_function = orig_func; rl_attempted_completion_function = orig_attempt_func; + rl_ignore_some_completions_function = orig_ignore_func; rl_completion_suppress_append = orig_suppress; rl_sort_completion_matches = orig_sort; @@ -2966,23 +2996,27 @@ bash_complete_filename_internal (what_to_do) rl_compentry_func_t *orig_func; rl_completion_func_t *orig_attempt_func; rl_icppfunc_t *orig_dir_func; + rl_compignore_func_t *orig_ignore_func; /*const*/ char *orig_rl_completer_word_break_characters; int r; orig_func = rl_completion_entry_function; orig_attempt_func = rl_attempted_completion_function; - orig_dir_func = rl_directory_completion_hook; + orig_dir_func = rl_directory_rewrite_hook; + orig_ignore_func = rl_ignore_some_completions_function; orig_rl_completer_word_break_characters = rl_completer_word_break_characters; rl_completion_entry_function = rl_filename_completion_function; rl_attempted_completion_function = (rl_completion_func_t *)NULL; - rl_directory_completion_hook = (rl_icppfunc_t *)NULL; + rl_directory_rewrite_hook = (rl_icppfunc_t *)NULL; + rl_ignore_some_completions_function = filename_completion_ignore; rl_completer_word_break_characters = " \t\n\"\'"; r = rl_complete_internal (what_to_do); rl_completion_entry_function = orig_func; rl_attempted_completion_function = orig_attempt_func; - rl_directory_completion_hook = orig_dir_func; + rl_directory_rewrite_hook = orig_dir_func; + rl_ignore_some_completions_function = orig_ignore_func; rl_completer_word_break_characters = orig_rl_completer_word_break_characters; return r; @@ -3160,17 +3194,21 @@ bash_specific_completion (what_to_do, generator) { rl_compentry_func_t *orig_func; rl_completion_func_t *orig_attempt_func; + rl_compignore_func_t *orig_ignore_func; int r; orig_func = rl_completion_entry_function; orig_attempt_func = rl_attempted_completion_function; + orig_ignore_func = rl_ignore_some_completions_function; rl_completion_entry_function = generator; rl_attempted_completion_function = NULL; + rl_ignore_some_completions_function = orig_ignore_func; r = rl_complete_internal (what_to_do); rl_completion_entry_function = orig_func; rl_attempted_completion_function = orig_attempt_func; + rl_ignore_some_completions_function = orig_ignore_func; return r; } @@ -3421,7 +3459,10 @@ static int putx(c) int c; { - putc (c, rl_outstream); + int x; + + x = putc (c, rl_outstream); + return (x); } static int diff --git a/braces.c b/braces.c index 45abe454..2febed79 100644 --- a/braces.c +++ b/braces.c @@ -63,7 +63,7 @@ static const int brace_arg_separator = ','; static int brace_gobbler __P((char *, size_t, int *, int)); static char **expand_amble __P((char *, size_t, int)); static char **expand_seqterm __P((char *, size_t)); -static char **mkseq __P((int, int, int, int, int)); +static char **mkseq __P((intmax_t, intmax_t, int, int, int)); static char **array_concat __P((char **, char **)); #else static int brace_gobbler (); @@ -307,13 +307,15 @@ expand_amble (text, tlen, flags) static char ** mkseq (start, end, incr, type, width) - int start, end, incr, type, width; + intmax_t start, end; + int incr, type, width; { - int n, i; + intmax_t n; + int i; char **result, *t; - n = abs (end - start) + 1; - result = strvec_create (n + 1); + i = abs (end - start) + 1; + result = strvec_create (i + 1); if (incr == 0) incr = 1; @@ -335,8 +337,9 @@ mkseq (start, end, incr, type, width) result[i++] = itos (n); else if (type == ST_ZINT) { - int len; - len = asprintf (&t, "%0*d", width, n); + int len, arg; + arg = n; + len = asprintf (&t, "%0*d", width, arg); result[i++] = t; } else @@ -362,7 +365,8 @@ expand_seqterm (text, tlen) size_t tlen; { char *t, *lhs, *rhs; - int i, lhs_t, rhs_t, lhs_v, rhs_v, incr, lhs_l, rhs_l, width; + int i, lhs_t, rhs_t, incr, lhs_l, rhs_l, width; + intmax_t lhs_v, rhs_v; intmax_t tl, tr; char **result, *ep, *oep; diff --git a/builtins/Makefile.in b/builtins/Makefile.in index 42f8cb82..3d8bad4d 100644 --- a/builtins/Makefile.in +++ b/builtins/Makefile.in @@ -334,6 +334,7 @@ evalstring.o: $(topdir)/externs.h $(topdir)/jobs.h $(topdir)/builtins.h evalstring.o: $(topdir)/flags.h $(topdir)/input.h $(topdir)/execute_cmd.h evalstring.o: $(topdir)/bashhist.h $(srcdir)/common.h evalstring.o: $(topdir)/trap.h $(topdir)/redir.h ../pathnames.h +#evalstring.o: $(topdir)/y.tab.h getopt.o: ../config.h $(BASHINCDIR)/memalloc.h getopt.o: $(topdir)/shell.h $(topdir)/syntax.h $(topdir)/bashjmp.h $(topdir)/command.h getopt.o: $(topdir)/general.h $(topdir)/xmalloc.h $(topdir)/error.h $(topdir)/variables.h $(topdir)/conftypes.h diff --git a/builtins/cd.def b/builtins/cd.def index d53b2587..b1aae26d 100644 --- a/builtins/cd.def +++ b/builtins/cd.def @@ -1,7 +1,7 @@ This file is cd.def, from which is created cd.c. It implements the builtins "cd" and "pwd" in Bash. -Copyright (C) 1987-2009 Free Software Foundation, Inc. +Copyright (C) 1987-2010 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. @@ -58,7 +58,7 @@ extern int array_needs_making; extern const char * const bash_getcwd_errstr; static int bindpwd __P((int)); -static void setpwd __P((char *)); +static int setpwd __P((char *)); static char *resetpwd __P((char *)); static int change_to_directory __P((char *, int)); @@ -67,9 +67,11 @@ int cdspelling = 0; int cdable_vars; +static int eflag; /* file scope so bindpwd() can see it */ + $BUILTIN cd $FUNCTION cd_builtin -$SHORT_DOC cd [-L|-P] [dir] +$SHORT_DOC cd [-L|[-P [-e]]] [dir] Change the shell working directory. Change the current directory to DIR. The default DIR is the value of the @@ -88,15 +90,18 @@ Options: -L force symbolic links to be followed -P use the physical directory structure without following symbolic links + -e if the -P option is supplied, and the current working directory + cannot be determined successfully, exit with a non-zero status The default is to follow symbolic links, as if `-L' were specified. Exit Status: -Returns 0 if the directory is changed; non-zero otherwise. +Returns 0 if the directory is changed, and if $PWD is set successfully when +-P is used; non-zero otherwise. $END /* Just set $PWD, don't change OLDPWD. Used by `pwd -P' in posix mode. */ -static void +static int setpwd (dirname) char *dirname; { @@ -105,11 +110,14 @@ setpwd (dirname) old_anm = array_needs_making; tvar = bind_variable ("PWD", dirname ? dirname : "", 0); - if (old_anm == 0 && array_needs_making && exported_p (tvar)) + if (tvar && readonly_p (tvar)) + return EXECUTION_FAILURE; + if (tvar && old_anm == 0 && array_needs_making && exported_p (tvar)) { update_export_env_inplace ("PWD=", 4, dirname ? dirname : ""); array_needs_making = 0; } + return EXECUTION_SUCCESS; } static int @@ -131,13 +139,19 @@ bindpwd (no_symlinks) pwdvar = get_string_value ("PWD"); tvar = bind_variable ("OLDPWD", pwdvar, 0); + if (tvar && readonly_p (tvar)) + r = EXECUTION_FAILURE; + if (old_anm == 0 && array_needs_making && exported_p (tvar)) { update_export_env_inplace ("OLDPWD=", 7, pwdvar); array_needs_making = 0; } - setpwd (dirname); + if (setpwd (dirname) == EXECUTION_FAILURE) + r = EXECUTION_FAILURE; + if (dirname == 0 && eflag) + r = EXECUTION_FAILURE; if (dirname && dirname != the_current_working_directory) free (dirname); @@ -162,7 +176,7 @@ resetpwd (caller) #define LCD_DOVARS 0x001 #define LCD_DOSPELL 0x002 #define LCD_PRINTPATH 0x004 -#define LCD_FREEDIRNAME 0x010 +#define LCD_FREEDIRNAME 0x008 /* This builtin is ultimately the way that all user-visible commands should change the current working directory. It is called by cd_to_string (), @@ -183,6 +197,7 @@ cd_builtin (list) } #endif /* RESTRICTED_SHELL */ + eflag = 0; no_symlinks = no_symbolic_links; reset_internal_getopt (); while ((opt = internal_getopt (list, "LP")) != -1) @@ -195,6 +210,9 @@ cd_builtin (list) case 'L': no_symlinks = 0; break; + case 'e': + eflag = 1; + break; default: builtin_usage (); return (EXECUTION_FAILURE); @@ -204,6 +222,8 @@ cd_builtin (list) lflag = (cdable_vars ? LCD_DOVARS : 0) | ((interactive && cdspelling) ? LCD_DOSPELL : 0); + if (eflag && no_symlinks == 0) + eflag = 0; if (list == 0) { @@ -270,6 +290,7 @@ cd_builtin (list) free (temp); } +#if 0 /* changed for bash-4.2 Posix cd description steps 5-6 */ /* POSIX.2 says that if `.' does not appear in $CDPATH, we don't try the current directory, so we just punt now with an error message if POSIXLY_CORRECT is non-zero. The check for cdpath[0] @@ -280,6 +301,7 @@ cd_builtin (list) builtin_error ("%s: %s", dirname, strerror (ENOENT)); return (EXECUTION_FAILURE); } +#endif } else dirname = list->word->word; @@ -389,13 +411,14 @@ pwd_builtin (list) if (directory) { + opt = EXECUTION_SUCCESS; printf ("%s\n", directory); /* This is dumb but posix-mandated. */ if (posixly_correct && pflag) - setpwd (directory); + opt = setpwd (directory); if (directory != the_current_working_directory) free (directory); - return (sh_chkwrite (EXECUTION_SUCCESS)); + return (sh_chkwrite (opt)); } else return (EXECUTION_FAILURE); diff --git a/builtins/common.c b/builtins/common.c index f02e99c8..737ace2f 100644 --- a/builtins/common.c +++ b/builtins/common.c @@ -1,6 +1,6 @@ /* common.c - utility functions for all builtins */ -/* Copyright (C) 1987-2009 Free Software Foundation, Inc. +/* Copyright (C) 1987-2010 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. @@ -151,7 +151,7 @@ builtin_usage () { if (this_command_name && *this_command_name) fprintf (stderr, _("%s: usage: "), this_command_name); - fprintf (stderr, "%s\n", current_builtin->short_doc); + fprintf (stderr, "%s\n", _(current_builtin->short_doc)); fflush (stderr); } @@ -367,7 +367,7 @@ make_builtin_argv (list, ip) return argv; } -/* Remember LIST in $0 ... $9, and REST_OF_ARGS. If DESTRUCTIVE is +/* Remember LIST in $1 ... $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 diff --git a/builtins/common.h b/builtins/common.h index efbb0785..caeefeab 100644 --- a/builtins/common.h +++ b/builtins/common.h @@ -1,6 +1,6 @@ /* common.h -- extern declarations for functions defined in common.c. */ -/* Copyright (C) 1993-2004 Free Software Foundation, Inc. +/* Copyright (C) 1993-2010 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. diff --git a/builtins/complete.def b/builtins/complete.def index 2267794d..b9f0a134 100644 --- a/builtins/complete.def +++ b/builtins/complete.def @@ -1,7 +1,7 @@ This file is complete.def, from which is created complete.c. It implements the builtins "complete", "compgen", and "compopt" in Bash. -Copyright (C) 1999-2009 Free Software Foundation, Inc. +Copyright (C) 1999-2010 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. @@ -753,7 +753,7 @@ $SHORT_DOC compopt [-o|+o option] [-DE] [name ...] Modify or display completion options. Modify the completion options for each NAME, or, if no NAMEs are supplied, -the completion currently begin executed. If no OPTIONs are givenm, print +the completion currently being executed. If no OPTIONs are given, print the completion options for each NAME or the current completion specification. Options: diff --git a/builtins/declare.def b/builtins/declare.def index 811d8e64..55206fa7 100644 --- a/builtins/declare.def +++ b/builtins/declare.def @@ -1,7 +1,7 @@ This file is declare.def, from which is created declare.c. It implements the builtins "declare" and "local" in Bash. -Copyright (C) 1987-2009 Free Software Foundation, Inc. +Copyright (C) 1987-2010 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. @@ -22,7 +22,7 @@ $PRODUCES declare.c $BUILTIN declare $FUNCTION declare_builtin -$SHORT_DOC declare [-aAfFilrtux] [-p] [name[=value] ...] +$SHORT_DOC declare [-aAfFgilrtux] [-p] [name[=value] ...] Set variable values and attributes. Declare variables and give them attributes. If no NAMEs are given, @@ -32,6 +32,8 @@ Options: -f restrict action or display to function names and definitions -F restrict display to function names only (plus line number and source file when debugging) + -g create global variables when used in a shell function; otherwise + ignored -p display the attributes and value of each NAME Options which set attributes: @@ -50,7 +52,7 @@ Variables with the integer attribute have arithmetic evaluation (see the `let' command) performed when the variable is assigned a value. When used in a function, `declare' makes NAMEs local, as with the `local' -command. +command. The `-g' option suppresses this behavior. Exit Status: Returns success unless an invalid option is supplied or an error occurs. @@ -58,7 +60,7 @@ $END $BUILTIN typeset $FUNCTION declare_builtin -$SHORT_DOC typeset [-aAfFilrtux] [-p] name[=value] ... +$SHORT_DOC typeset [-aAfFgilrtux] [-p] name[=value] ... Set variable values and attributes. Obsolete. See `help declare'. @@ -125,9 +127,9 @@ local_builtin (list) } #if defined (ARRAY_VARS) -# define DECLARE_OPTS "+acfilprtuxAF" +# define DECLARE_OPTS "+acfgilprtuxAF" #else -# define DECLARE_OPTS "+cfilprtuxF" +# define DECLARE_OPTS "+cfgilprtuxF" #endif /* The workhorse function. */ @@ -137,12 +139,12 @@ declare_internal (list, local_var) int local_var; { int flags_on, flags_off, *flags; - int any_failed, assign_error, pflag, nodefs, opt; + int any_failed, assign_error, pflag, nodefs, opt, mkglobal; char *t, *subscript_start; SHELL_VAR *var; FUNCTION_DEF *shell_fn; - flags_on = flags_off = any_failed = assign_error = pflag = nodefs = 0; + flags_on = flags_off = any_failed = assign_error = pflag = nodefs = mkglobal = 0; reset_internal_getopt (); while ((opt = internal_getopt (list, DECLARE_OPTS)) != EOF) { @@ -177,6 +179,10 @@ declare_internal (list, local_var) case 'f': *flags |= att_function; break; + case 'g': + if (flags == &flags_on) + mkglobal = 1; + break; case 'i': *flags |= att_integer; break; @@ -328,7 +334,7 @@ declare_internal (list, local_var) /* XXX - this has consequences when we're making a local copy of a variable that was in the temporary environment. Watch out for this. */ - if (variable_context && ((flags_on & att_function) == 0)) + if (variable_context && mkglobal == 0 && ((flags_on & att_function) == 0)) { #if defined (ARRAY_VARS) if (flags_on & att_assoc) @@ -410,7 +416,7 @@ declare_internal (list, local_var) { /* Non-null if we just created or fetched a local variable. */ if (var == 0) - var = find_variable (name); + var = mkglobal ? find_global_variable (name) : find_variable (name); if (var == 0) { diff --git a/builtins/evalfile.c b/builtins/evalfile.c index 972d0393..4d69acb1 100644 --- a/builtins/evalfile.c +++ b/builtins/evalfile.c @@ -70,6 +70,7 @@ extern int posixly_correct; extern int indirection_level, subshell_environment; extern int return_catch_flag, return_catch_value; extern int last_command_exit_value; +extern int executing_command_builtin; /* How many `levels' of sourced files we have. */ int sourcelevel = 0; @@ -148,10 +149,6 @@ file_error_and_exit: return ((flags & FEVAL_BUILTIN) ? EXECUTION_FAILURE : -1); } -#if defined (__CYGWIN__) && defined (O_TEXT) - setmode (fd, O_TEXT); -#endif - if (S_ISREG (finfo.st_mode) && file_size <= SSIZE_MAX) { string = (char *)xmalloc (1 + file_size); @@ -342,7 +339,7 @@ source_file (filename, sflags) if (sflags) flags |= FEVAL_NOPUSHARGS; /* POSIX shells exit if non-interactive and file error. */ - if (posixly_correct && !interactive_shell) + if (posixly_correct && interactive_shell == 0 && executing_command_builtin == 0) flags |= FEVAL_LONGJMP; rval = _evalfile (filename, flags); diff --git a/builtins/evalstring.c b/builtins/evalstring.c index 40abe009..333a56ee 100644 --- a/builtins/evalstring.c +++ b/builtins/evalstring.c @@ -1,6 +1,6 @@ -/* evalstring.c - evaluate a string as one or more shell commands. +/* evalstring.c - evaluate a string as one or more shell commands. */ -/* Copyright (C) 1996-2009 Free Software Foundation, Inc. +/* Copyright (C) 1996-2010 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. @@ -331,13 +331,9 @@ parse_and_execute (string, from_file, flags) (this_shell_builtin == source_builtin || this_shell_builtin == eval_builtin) && last_command_exit_value == EX_BADSYNTAX && posixly_correct) { -#if 0 /* XXX - for bash-4.2 */ should_jump_to_top_level = 1; code = ERREXIT; last_command_exit_value = EX_BADUSAGE; -#else - internal_warning (_("syntax errors in . or eval will cause future versions of the shell to abort as Posix requires")); -#endif } /* Since we are shell compatible, syntax errors in a script diff --git a/builtins/exec.def b/builtins/exec.def index 0837a983..5d1e625b 100644 --- a/builtins/exec.def +++ b/builtins/exec.def @@ -1,7 +1,7 @@ This file is exec.def, from which is created exec.c. It implements the builtin "exec" in Bash. -Copyright (C) 1987-2009 Free Software Foundation, Inc. +Copyright (C) 1987-2010 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. @@ -76,6 +76,7 @@ extern int errno; extern int subshell_environment; extern REDIRECT *redirection_undo_list; +extern char *exec_argv0; int no_exit_on_failed_exec; @@ -102,7 +103,7 @@ exec_builtin (list) char *argv0, *command, **args, **env, *newname, *com2; cleanenv = login = 0; - argv0 = (char *)NULL; + exec_argv0 = argv0 = (char *)NULL; reset_internal_getopt (); while ((opt = internal_getopt (list, "cla:")) != -1) @@ -147,8 +148,20 @@ exec_builtin (list) if (command == 0) { - sh_notfound (args[0]); - exit_value = EX_NOTFOUND; /* As per Posix.2, 3.14.6 */ + if (file_isdir (args[0])) + { +#if defined (EISDIR) + builtin_error (_("%s: cannot execute: %s"), args[0], strerror (EISDIR)); +#else + builtin_error (_("%s: cannot execute: %s"), args[0], strerror (errno)); +#endif + exit_value = EX_NOEXEC; + } + else + { + sh_notfound (args[0]); + exit_value = EX_NOTFOUND; /* As per Posix.2, 3.14.6 */ + } goto failed_exec; } @@ -164,6 +177,7 @@ exec_builtin (list) { free (args[0]); args[0] = login ? mkdashname (argv0) : savestring (argv0); + exec_argv0 = savestring (args[0]); } else if (login) { @@ -198,7 +212,7 @@ exec_builtin (list) end_job_control (); #endif /* JOB_CONTROL */ - shell_execve (command, args, env); + exit_value = shell_execve (command, args, env); /* We have to set this to NULL because shell_execve has called realloc() to stuff more items at the front of the array, which may have caused @@ -207,7 +221,9 @@ exec_builtin (list) if (cleanenv == 0) adjust_shell_level (1); - if (executable_file (command) == 0) + if (exit_value == EX_NOTFOUND) /* no duplicate error message */ + goto failed_exec; + else if (executable_file (command) == 0) { builtin_error (_("%s: cannot execute: %s"), command, strerror (errno)); exit_value = EX_NOEXEC; /* As per Posix.2, 3.14.6 */ diff --git a/builtins/fc.def b/builtins/fc.def index 71f468fe..257029df 100644 --- a/builtins/fc.def +++ b/builtins/fc.def @@ -1,7 +1,7 @@ This file is fc.def, from which is created fc.c. It implements the builtin "fc" in Bash. -Copyright (C) 1987-2009 Free Software Foundation, Inc. +Copyright (C) 1987-2010 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. @@ -85,7 +85,7 @@ $END extern int errno; #endif /* !errno */ -extern int current_command_line_count; +extern int current_command_line_count, saved_command_line_count; extern int literal_history; extern int posixly_correct; extern int subshell_environment, interactive_shell; @@ -304,7 +304,7 @@ fc_builtin (list) last_hist = i - rh - hist_last_line_added; /* XXX */ - if (i == last_hist && hlist[last_hist] == 0) + if (saved_command_line_count > 0 && i == last_hist && hlist[last_hist] == 0) while (last_hist >= 0 && hlist[last_hist] == 0) last_hist--; if (last_hist < 0) @@ -475,7 +475,7 @@ fc_gethnum (command, hlist) HIST_ENTRY **hlist; { int sign, n, clen, rh; - register int i, j, last_hist; + register int i, j; register char *s; sign = 1; @@ -495,15 +495,7 @@ fc_gethnum (command, hlist) has been enabled (interactive or not) should use it in the last_hist calculation as if it were on. */ rh = remember_on_history || ((subshell_environment & SUBSHELL_COMSUB) && enable_history_list); - last_hist = i - rh - hist_last_line_added; - - if (i == last_hist && hlist[last_hist] == 0) - while (last_hist >= 0 && hlist[last_hist] == 0) - last_hist--; - if (last_hist < 0) - return (-1); - - i = last_hist; + i -= rh + hist_last_line_added; /* No specification defaults to most recent command. */ if (command == NULL) diff --git a/builtins/getopts.def b/builtins/getopts.def index c077c8e0..1d2a68a4 100644 --- a/builtins/getopts.def +++ b/builtins/getopts.def @@ -108,7 +108,9 @@ getopts_bind_variable (name, value) if (legal_identifier (name)) { v = bind_variable (name, value, 0); - return (v && (readonly_p (v) == 0)) ? EXECUTION_SUCCESS : EXECUTION_FAILURE; + if (v && (readonly_p (v) || noassign_p (v))) + return (EX_MISCERROR); + return (v ? EXECUTION_SUCCESS : EXECUTION_FAILURE); } else { diff --git a/builtins/hash.def b/builtins/hash.def index 7a8aced8..6724ad17 100644 --- a/builtins/hash.def +++ b/builtins/hash.def @@ -1,7 +1,7 @@ This file is hash.def, from which is created hash.c. It implements the builtin "hash" in Bash. -Copyright (C) 1987-2009 Free Software Foundation, Inc. +Copyright (C) 1987-2010 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. @@ -159,7 +159,9 @@ hash_builtin (list) { /* Add, remove or rehash the specified commands. */ w = list->word->word; - if (pathname) + if (absolute_program (w)) + continue; + else if (pathname) { if (is_directory (pathname)) { @@ -173,8 +175,6 @@ hash_builtin (list) else phash_insert (w, pathname, 0, 0); } - else if (absolute_program (w)) - continue; else if (delete) { if (phash_remove (w)) @@ -202,6 +202,7 @@ add_hashed_command (w, quiet) rv = 0; if (find_function (w) == 0 && find_shell_builtin (w) == 0) { + phash_remove (w); full_path = find_user_command (w); if (full_path && executable_file (full_path)) phash_insert (w, full_path, dot_found_in_search, 0); diff --git a/builtins/help.def b/builtins/help.def index f857af93..8fb0e2b4 100644 --- a/builtins/help.def +++ b/builtins/help.def @@ -155,7 +155,7 @@ help_builtin (list) continue; } - printf ("%s: %s\n", name, shell_builtins[i].short_doc); + printf ("%s: %s\n", name, _(shell_builtins[i].short_doc)); if (sflag == 0) show_longdoc (i); @@ -288,7 +288,7 @@ show_manpage (name, i) /* SYNOPSIS */ printf ("SYNOPSIS\n"); - printf ("%*s%s\n\n", BASE_INDENT, " ", shell_builtins[i].short_doc); + printf ("%*s%s\n\n", BASE_INDENT, " ", _(shell_builtins[i].short_doc)); /* DESCRIPTION */ printf ("DESCRIPTION\n"); @@ -360,7 +360,7 @@ A star (*) next to a name means that the command is disabled.\n\ /* first column */ blurb[0] = (shell_builtins[i].flags & BUILTIN_ENABLED) ? ' ' : '*'; - strncpy (blurb + 1, shell_builtins[i].short_doc, width - 2); + strncpy (blurb + 1, _(shell_builtins[i].short_doc), width - 2); blurb[width - 2] = '>'; /* indicate truncation */ blurb[width - 1] = '\0'; printf ("%s", blurb); @@ -376,7 +376,7 @@ A star (*) next to a name means that the command is disabled.\n\ /* second column */ blurb[0] = (shell_builtins[i+height].flags & BUILTIN_ENABLED) ? ' ' : '*'; - strncpy (blurb + 1, shell_builtins[i+height].short_doc, width - 3); + strncpy (blurb + 1, _(shell_builtins[i+height].short_doc), width - 3); blurb[width - 3] = '>'; /* indicate truncation */ blurb[width - 2] = '\0'; printf ("%s\n", blurb); diff --git a/builtins/kill.def b/builtins/kill.def index 18c3667f..adf022c9 100644 --- a/builtins/kill.def +++ b/builtins/kill.def @@ -1,7 +1,7 @@ This file is kill.def, from which is created kill.c. It implements the builtin "kill" in Bash. -Copyright (C) 1987-2009 Free Software Foundation, Inc. +Copyright (C) 1987-2010 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. @@ -121,9 +121,7 @@ kill_builtin (list) else sig = decode_signal (sigspec, dflags); list = list->next; -#if 0 - saw_signal++; /* XXX - for bash-4.2 */ -#endif + saw_signal++; } else { diff --git a/builtins/let.def b/builtins/let.def index 2601fb95..811534e4 100644 --- a/builtins/let.def +++ b/builtins/let.def @@ -61,7 +61,7 @@ parentheses are evaluated first and may override the precedence rules above. Exit Status: -If the last ARG evaluates to 0, let returns 1; let returns 0 otherwise.. +If the last ARG evaluates to 0, let returns 1; let returns 0 otherwise. $END #include diff --git a/builtins/mapfile.def b/builtins/mapfile.def index 0946de3e..ec1e32e5 100644 --- a/builtins/mapfile.def +++ b/builtins/mapfile.def @@ -2,7 +2,7 @@ This file is mapfile.def, from which is created mapfile.c. It implements the builtin "mapfile" in Bash. Copyright (C) 2005-2006 Rocky Bernstein for Free Software Foundation, Inc. -Copyright (C) 2008,2009 Free Software Foundation, Inc. +Copyright (C) 2008-2010 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. @@ -44,7 +44,8 @@ Arguments: If -C is supplied without -c, the default quantum is 5000. When CALLBACK is evaluated, it is supplied the index of the next array -element to be assigned as an additional argument. +element to be assigned and the line to be assigned to that element +as additional arguments. If not supplied with an explicit origin, mapfile will clear ARRAY before assigning to it. @@ -88,7 +89,10 @@ extern int errno; #if defined (ARRAY_VARS) +static int run_callback __P((const char *, unsigned int, const char *)); + #define DEFAULT_ARRAY_NAME "MAPFILE" +#define DEFAULT_VARIABLE_NAME "MAPLINE" /* not used right now */ /* The value specifying how frequently `mapfile' calls the callback. */ #define DEFAULT_QUANTUM 5000 @@ -98,18 +102,20 @@ extern int errno; #define MAPF_CHOP 0x02 static int -run_callback(callback, current_index) +run_callback (callback, curindex, curline) const char *callback; - unsigned int current_index; + unsigned int curindex; + const char *curline; { unsigned int execlen; - char *execstr; + char *execstr, *qline; int flags; - execlen = strlen (callback) + 10; - /* 1 for space between %s and %d, + qline = sh_single_quote (curline); + execlen = strlen (callback) + strlen (qline) + 10; + /* 1 for each space between %s and %d, another 1 for the last nul char for C string. */ - execlen += 2; + execlen += 3; execstr = xmalloc (execlen); flags = SEVAL_NOHIST; @@ -117,8 +123,9 @@ run_callback(callback, current_index) if (interactive) flags |= SEVAL_INTERACT; #endif - snprintf (execstr, execlen, "%s %d", callback, current_index); - return parse_and_execute(execstr, NULL, flags); + snprintf (execstr, execlen, "%s %d %s", callback, curindex, qline); + free (qline); + return parse_and_execute (execstr, NULL, flags); } static void @@ -202,7 +209,7 @@ mapfile (fd, line_count_goal, origin, nskip, callback_quantum, callback, array_n /* Has a callback been registered and if so is it time to call it? */ if (callback && line_count && (line_count % callback_quantum) == 0) { - run_callback (callback, array_index); + run_callback (callback, array_index, line); /* Reset the buffer for bash own stream. */ if (unbuffered_read == 0) diff --git a/builtins/mkbuiltins.c b/builtins/mkbuiltins.c index cdd45e40..cdfdfb18 100644 --- a/builtins/mkbuiltins.c +++ b/builtins/mkbuiltins.c @@ -1,7 +1,7 @@ /* mkbuiltins.c - Create builtins.c, builtext.h, and builtdoc.c from a single source file called builtins.def. */ -/* Copyright (C) 1987-2009 Free Software Foundation, Inc. +/* Copyright (C) 1987-2010 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. @@ -1127,7 +1127,7 @@ char *structfile_header[] = { }; char *structfile_footer[] = { - " { (char *)0x0, (sh_builtin_func_t *)0x0, 0, (char **)0x0, (char *)0x0 }", + " { (char *)0x0, (sh_builtin_func_t *)0x0, 0, (char **)0x0, (char *)0x0, (char *)0x0 }", "};", "", "struct builtin *shell_builtins = static_shell_builtins;", @@ -1380,7 +1380,7 @@ write_documentation (stream, documentation, indentation, flags) { register int i, j; register char *line; - int string_array, texinfo, base_indent, last_cpp, filename_p; + int string_array, texinfo, base_indent, filename_p; if (stream == 0) return; @@ -1407,7 +1407,7 @@ write_documentation (stream, documentation, indentation, flags) base_indent = (string_array && single_longdoc_strings && filename_p == 0) ? BASE_INDENT : 0; - for (i = last_cpp = 0, texinfo = (flags & TEXINFO); line = documentation[i]; i++) + for (i = 0, texinfo = (flags & TEXINFO); line = documentation[i]; i++) { /* Allow #ifdef's to be written out verbatim, but don't put them into separate help files. */ @@ -1415,11 +1415,8 @@ write_documentation (stream, documentation, indentation, flags) { if (string_array && filename_p == 0 && single_longdoc_strings == 0) fprintf (stream, "%s\n", line); - last_cpp = 1; continue; } - else - last_cpp = 0; /* prefix with N_( for gettext */ if (string_array && single_longdoc_strings == 0) diff --git a/builtins/printf.def b/builtins/printf.def index 277566f8..7892cb5a 100644 --- a/builtins/printf.def +++ b/builtins/printf.def @@ -1,7 +1,7 @@ This file is printf.def, from which is created printf.c. It implements the builtin "printf" in Bash. -Copyright (C) 1997-2009 Free Software Foundation, Inc. +Copyright (C) 1997-2010 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. @@ -40,6 +40,8 @@ and printf(3), printf interprets: %b expand backslash escape sequences in the corresponding argument %q quote the argument in a way that can be reused as shell input + %(fmt)T output the date-time string resulting from using FMT as a format + string for strftime(3) Exit Status: Returns success unless an invalid option is given or a write or assignment @@ -72,9 +74,12 @@ $END # include #endif +#include "posixtime.h" #include "../bashansi.h" #include "../bashintl.h" +#define NEED_STRFTIME_DECL + #include "../shell.h" #include "shmbutil.h" #include "stdc.h" @@ -167,6 +172,8 @@ extern int errno; #define SKIP1 "#'-+ 0" #define LENMODS "hjlLtz" +extern time_t shell_start_time; + #if !HAVE_ASPRINTF extern int asprintf __P((char **, const char *, ...)) __attribute__((__format__ (printf, 2, 3))); #endif @@ -177,7 +184,7 @@ extern int vsnprintf __P((char *, size_t, const char *, va_list)) __attribute__( static void printf_erange __P((char *)); static int printstr __P((char *, char *, int, int, int)); -static int tescape __P((char *, char *, int *)); +static int tescape __P((char *, char *, int *, int *)); static char *bexpand __P((char *, int, int *, int *)); static char *vbadd __P((char *, int)); static int vbprintf __P((const char *, ...)) __attribute__((__format__ (printf, 1, 2))); @@ -224,6 +231,10 @@ printf_builtin (list) int ch, fieldwidth, precision; int have_fieldwidth, have_precision; char convch, thisch, nextch, *format, *modstart, *fmt, *start; +#if defined (HANDLE_MULTIBYTE) + char mbch[25]; /* 25 > MB_LEN_MAX, plus can handle 4-byte UTF-8 and large Unicode characters*/ + int mbind, mblen; +#endif conversion_error = 0; retval = EXECUTION_SUCCESS; @@ -301,8 +312,17 @@ printf_builtin (list) fmt++; /* A NULL third argument to tescape means to bypass the special processing for arguments to %b. */ - fmt += tescape (fmt, &nextch, (int *)NULL); +#if defined (HANDLE_MULTIBYTE) + /* Accommodate possible use of \u or \U, which can result in + multibyte characters */ + memset (mbch, '\0', sizeof (mbch)); + fmt += tescape (fmt, mbch, &mblen, (int *)NULL); + for (mbind = 0; mbind < mblen; mbind++) + PC (mbch[mbind]); +#else + fmt += tescape (fmt, &nextch, (int *)NULL, (int *)NULL); PC (nextch); +#endif fmt--; /* for loop will increment it for us again */ continue; } @@ -401,6 +421,70 @@ printf_builtin (list) break; } + case '(': + { + char *timefmt, timebuf[128], *t; + int n; + intmax_t arg; + time_t secs; + struct tm *tm; + + modstart[1] = nextch; /* restore char after left paren */ + timefmt = xmalloc (strlen (fmt) + 3); + fmt++; /* skip over left paren */ + for (t = timefmt, n = 1; *fmt; ) + { + if (*fmt == '(') + n++; + else if (*fmt == ')') + n--; + if (n == 0) + break; + *t++ = *fmt++; + } + *t = '\0'; + if (*++fmt != 'T') + { + builtin_warning (_("`%c': invalid time format specification"), *fmt); + fmt = start; + free (timefmt); + PC (*fmt); + continue; + } + if (timefmt[0] == '\0') + { + timefmt[0] = '%'; + timefmt[1] = 'X'; /* locale-specific current time - should we use `+'? */ + timefmt[2] = '\0'; + } + /* argument is seconds since the epoch with special -1 and -2 */ + arg = getintmax (); + if (arg == -1) + secs = NOW; /* roughly date +%s */ + else if (arg == -2) + secs = shell_start_time; /* roughly $SECONDS */ + else + secs = arg; + tm = localtime (&secs); + n = strftime (timebuf, sizeof (timebuf), timefmt, tm); + free (timefmt); + if (n == 0) + timebuf[0] = '\0'; + else + timebuf[sizeof(timebuf) - 1] = '\0'; + /* convert to %s format that preserves fieldwidth and precision */ + modstart[0] = 's'; + modstart[1] = '\0'; + n = printstr (start, timebuf, strlen (timebuf), fieldwidth, precision); /* XXX - %s for now */ + if (n < 0) + { + sh_wrerror (); + clearerr (stdout); + PRETURN (EXECUTION_FAILURE); + } + break; + } + case 'n': { char *var; @@ -699,15 +783,18 @@ printstr (fmt, string, len, fieldwidth, precision) do the \c short-circuiting, and \c is treated as an unrecognized escape sequence; we also bypass the other processing specific to %b arguments. */ static int -tescape (estart, cp, sawc) +tescape (estart, cp, lenp, sawc) char *estart; char *cp; - int *sawc; + int *lenp, *sawc; { register char *p; int temp, c, evalue; + unsigned long uvalue; p = estart; + if (lenp) + *lenp = 1; switch (c = *p++) { @@ -743,14 +830,10 @@ tescape (estart, cp, sawc) *cp = evalue & 0xFF; break; - /* And, as another extension, we allow \xNNN, where each N is a + /* And, as another extension, we allow \xNN, where each N is a hex digit. */ case 'x': -#if 0 - for (evalue = 0; ISXDIGIT ((unsigned char)*p); p++) -#else for (temp = 2, evalue = 0; ISXDIGIT ((unsigned char)*p) && temp--; p++) -#endif evalue = (evalue * 16) + HEXVALUE (*p); if (p == estart + 1) { @@ -761,6 +844,30 @@ tescape (estart, cp, sawc) *cp = evalue & 0xFF; break; +#if defined (HANDLE_MULTIBYTE) + case 'u': + case 'U': + temp = (c == 'u') ? 4 : 8; /* \uNNNN \UNNNNNNNN */ + for (uvalue = 0; ISXDIGIT ((unsigned char)*p) && temp--; p++) + uvalue = (uvalue * 16) + HEXVALUE (*p); + if (p == estart + 1) + { + builtin_error (_("missing unicode digit for \\%c"), c); + *cp = '\\'; + return 0; + } + if (uvalue <= UCHAR_MAX) + *cp = uvalue; + else + { + temp = u32cconv (uvalue, cp); + cp[temp] = '\0'; + if (lenp) + *lenp = temp; + } + break; +#endif + case '\\': /* \\ -> \ */ *cp = c; break; @@ -799,12 +906,12 @@ bexpand (string, len, sawc, lenp) { int temp; char *ret, *r, *s, c; - -#if 0 - if (string == 0 || *string == '\0') -#else - if (string == 0 || len == 0) +#if defined (HANDLE_MULTIBYTE) + char mbch[25]; + int mbind, mblen; #endif + + if (string == 0 || len == 0) { if (sawc) *sawc = 0; @@ -823,7 +930,12 @@ bexpand (string, len, sawc, lenp) continue; } temp = 0; - s += tescape (s, &c, &temp); +#if defined (HANDLE_MULTIBYTE) + memset (mbch, '\0', sizeof (mbch)); + s += tescape (s, mbch, &mblen, &temp); +#else + s += tescape (s, &c, (int *)NULL, &temp); +#endif if (temp) { if (sawc) @@ -831,7 +943,12 @@ bexpand (string, len, sawc, lenp) break; } +#if defined (HANDLE_MULTIBYTE) + for (mbind = 0; mbind < mblen; mbind++) + *r++ = mbch[mbind]; +#else *r++ = c; +#endif } *r = '\0'; diff --git a/builtins/read.def b/builtins/read.def index 20860bef..c4a668a6 100644 --- a/builtins/read.def +++ b/builtins/read.def @@ -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-2009 Free Software Foundation, Inc. +Copyright (C) 1987-2010 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. @@ -793,11 +793,16 @@ assign_vars: } else var = bind_read_variable (list->word->word, input_string); - stupidly_hack_special_variables (list->word->word); - FREE (tofree); if (var) - VUNSETATTR (var, att_invisible); + { + stupidly_hack_special_variables (list->word->word); + VUNSETATTR (var, att_invisible); + } + else + retval = EXECUTION_FAILURE; + + FREE (tofree); xfree (orig_input_string); return (retval); @@ -807,14 +812,17 @@ static SHELL_VAR * bind_read_variable (name, value) char *name, *value; { + SHELL_VAR *v; #if defined (ARRAY_VARS) if (valid_array_reference (name) == 0) - return (bind_variable (name, value, 0)); + v = bind_variable (name, value, 0); else - return (assign_array_element (name, value, 0)); + v = assign_array_element (name, value, 0); #else /* !ARRAY_VARS */ - return bind_variable (name, value, 0); + v = bind_variable (name, value, 0); #endif /* !ARRAY_VARS */ + return (v == 0 ? v + : ((readonly_p (v) || noassign_p (v)) ? (SHELL_VAR *)NULL : v)); } #if defined (HANDLE_MULTIBYTE) diff --git a/builtins/set.def b/builtins/set.def index 5e550cbc..6e69eb6e 100644 --- a/builtins/set.def +++ b/builtins/set.def @@ -59,7 +59,7 @@ extern int no_line_editing; $BUILTIN set $FUNCTION set_builtin -$SHORT_DOC set [--abefhkmnptuvxBCHP] [-o option-name] [arg ...] +$SHORT_DOC set [-abefhkmnptuvxBCHP] [-o option-name] [--] [arg ...] Set or unset values of shell options and positional parameters. Change the value of shell attributes and positional parameters, or @@ -138,6 +138,9 @@ Options: -P If set, do not follow symbolic links when executing commands such as cd which change the current directory. -T If set, the DEBUG trap is inherited by shell functions. + -- Assign any remaining arguments to the positional parameters. + If there are no remaining arguments, the positional parameters + are unset. - Assign any remaining arguments to the positional parameters. The -x and -v options are turned off. diff --git a/builtins/setattr.def b/builtins/setattr.def index 8b4cdf76..b3ca3170 100644 --- a/builtins/setattr.def +++ b/builtins/setattr.def @@ -1,7 +1,7 @@ This file is setattr.def, from which is created setattr.c. It implements the builtins "export" and "readonly", in Bash. -Copyright (C) 1987-2009 Free Software Foundation, Inc. +Copyright (C) 1987-2010 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. @@ -82,7 +82,7 @@ export_builtin (list) $BUILTIN readonly $FUNCTION readonly_builtin -$SHORT_DOC readonly [-af] [name[=value] ...] or readonly -p +$SHORT_DOC readonly [-aAf] [name[=value] ...] or readonly -p Mark shell variables as unchangeable. Mark each NAME as read-only; the values of these NAMEs may not be @@ -433,11 +433,11 @@ show_var_attributes (var, pattr, nodefs) printf ("%s\n", var->name); else if (function_p (var)) printf ("%s\n", named_function_string (var->name, function_cell (var), FUNC_MULTILINE|FUNC_EXTERNAL)); - else if (invisible_p (var)) + else if (invisible_p (var) || var_isset (var) == 0) printf ("%s\n", var->name); else { - x = sh_double_quote (var_isset (var) ? value_cell (var) : ""); + x = sh_double_quote (value_cell (var)); printf ("%s=%s\n", var->name, x); free (x); } diff --git a/builtins/shopt.def b/builtins/shopt.def index 68c7245b..27685aa6 100644 --- a/builtins/shopt.def +++ b/builtins/shopt.def @@ -1,7 +1,7 @@ This file is shopt.def, from which is created shopt.c. It implements the Bash `shopt' builtin. -Copyright (C) 1994-2009 Free Software Foundation, Inc. +Copyright (C) 1994-2010 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. @@ -84,6 +84,7 @@ extern int gnu_error_format; extern int check_jobs_at_exit; extern int autocd; extern int glob_star; +extern int lastpipe_opt; #if defined (EXTENDED_GLOB) extern int extended_glob; @@ -124,6 +125,7 @@ static int shopt_login_shell; static int shopt_compat31; static int shopt_compat32; static int shopt_compat40; +static int shopt_compat41; typedef int shopt_set_func_t __P((char *, int)); @@ -146,6 +148,7 @@ static struct { { "compat31", &shopt_compat31, set_compatibility_level }, { "compat32", &shopt_compat32, set_compatibility_level }, { "compat40", &shopt_compat40, set_compatibility_level }, + { "compat41", &shopt_compat41, set_compatibility_level }, #if defined (READLINE) { "dirspell", &dircomplete_spelling, (shopt_set_func_t *)NULL }, #endif @@ -175,6 +178,7 @@ static struct { #endif { "huponexit", &hup_on_exit, (shopt_set_func_t *)NULL }, { "interactive_comments", &interactive_comments, set_shellopts_after_change }, + { "lastpipe", &lastpipe_opt, (shopt_set_func_t *)NULL }, #if defined (HISTORY) { "lithist", &literal_history, (shopt_set_func_t *)NULL }, #endif diff --git a/builtins/source.def b/builtins/source.def index 72627db3..71908b8b 100644 --- a/builtins/source.def +++ b/builtins/source.def @@ -80,6 +80,8 @@ extern int errno; #endif /* !errno */ extern int posixly_correct; +extern int last_command_exit_value; +extern int executing_command_builtin; static void maybe_pop_dollar_vars __P((void)); @@ -151,6 +153,11 @@ source_builtin (list) if (source_searches_cwd == 0) { builtin_error (_("%s: file not found"), list->word->word); + if (posixly_correct && interactive_shell == 0 && executing_command_builtin == 0) + { + last_command_exit_value = 1; + jump_to_top_level (EXITPROG); + } return (EXECUTION_FAILURE); } else diff --git a/builtins/test.def b/builtins/test.def index 4adff93b..1ebc8187 100644 --- a/builtins/test.def +++ b/builtins/test.def @@ -1,7 +1,7 @@ This file is test.def, from which is created test.c. It implements the builtin "test" in Bash. -Copyright (C) 1987-2009 Free Software Foundation, Inc. +Copyright (C) 1987-2010 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. @@ -28,7 +28,10 @@ Evaluate conditional expression. Exits with a status of 0 (true) or 1 (false) depending on the evaluation of EXPR. Expressions may be unary or binary. Unary expressions are often used to examine the status of a file. There -are string operators as well, and numeric comparison operators. +are string operators and numeric comparison operators as well. + +The behavior of test depends on the number of arguments. Read the +bash manual page for the complete specification. File operators: @@ -80,6 +83,7 @@ String operators: Other operators: -o OPTION True if the shell option OPTION is enabled. + -v VAR True if the shell variable VAR is set ! EXPR True if expr is false. EXPR1 -a EXPR2 True if both expr1 AND expr2 are true. EXPR1 -o EXPR2 True if either expr1 OR expr2 is true. diff --git a/builtins/trap.def b/builtins/trap.def index a8da71dd..2119f5b3 100644 --- a/builtins/trap.def +++ b/builtins/trap.def @@ -1,7 +1,7 @@ This file is trap.def, from which is created trap.c. It implements the builtin "trap" in Bash. -Copyright (C) 1987-2009 Free Software Foundation, Inc. +Copyright (C) 1987-2010 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. @@ -35,7 +35,11 @@ value. If ARG is the null string each SIGNAL_SPEC is ignored by the shell and by the commands it invokes. If a SIGNAL_SPEC is EXIT (0) ARG is executed on exit from the shell. If -a SIGNAL_SPEC is DEBUG, ARG is executed before every simple command. +a SIGNAL_SPEC is DEBUG, ARG is executed before every simple command. If +a SIGNAL_SPEC is RETURN, ARG is executed each time a shell function or a +script run by the . or source builtins finishes executing. A SIGNAL_SPEC +of ERR means to execute ARG each time a command's failure would cause the +shell to exit when the -e option is enabled. If no arguments are supplied, trap prints the list of commands associated with each signal. @@ -93,7 +97,7 @@ static int display_traps __P((WORD_LIST *)); #define REVERT 1 /* Revert to this signals original value. */ #define IGNORE 2 /* Ignore this signal. */ -extern int posixly_correct; +extern int posixly_correct, subshell_environment; int trap_builtin (list) @@ -103,6 +107,7 @@ trap_builtin (list) list_signal_names = display = 0; result = EXECUTION_SUCCESS; + reset_internal_getopt (); while ((opt = internal_getopt (list, "lp")) != -1) { @@ -126,7 +131,11 @@ trap_builtin (list) if (list_signal_names) return (sh_chkwrite (display_signal_list ((WORD_LIST *)NULL, 1))); else if (display || list == 0) - return (sh_chkwrite (display_traps (list))); + { + initialize_terminating_signals (); + get_all_original_signals (); + return (sh_chkwrite (display_traps (list))); + } else { char *first_arg; @@ -163,6 +172,16 @@ trap_builtin (list) operation = REVERT; } + /* If we're in a command substitution, we haven't freed the trap strings + (though we reset the signal handlers). If we're setting a trap to + handle a signal here, free the rest of the trap strings since they + don't apply any more. */ + if (subshell_environment & SUBSHELL_RESETTRAP) + { + free_trap_strings (); + subshell_environment &= ~SUBSHELL_RESETTRAP; + } + while (list) { sig = decode_signal (list->word->word, opt); @@ -188,6 +207,8 @@ trap_builtin (list) switch (sig) { case SIGINT: + /* XXX - should we do this if original disposition + was SIG_IGN? */ if (interactive) set_signal_handler (SIGINT, sigint_sighandler); else @@ -229,10 +250,13 @@ showtrap (i) char *t, *p, *sn; p = trap_list[i]; - if (p == (char *)DEFAULT_SIG) + if (p == (char *)DEFAULT_SIG && signal_is_hard_ignored (i) == 0) return; + else if (signal_is_hard_ignored (i)) + t = (char *)NULL; + else + t = (p == (char *)IGNORE_SIG) ? (char *)NULL : sh_single_quote (p); - t = (p == (char *)IGNORE_SIG) ? (char *)NULL : sh_single_quote (p); sn = signal_name (i); /* Make sure that signals whose names are unknown (for whatever reason) are printed as signal numbers. */ diff --git a/builtins/ulimit.def b/builtins/ulimit.def index 7c1e2568..03cbe8a0 100644 --- a/builtins/ulimit.def +++ b/builtins/ulimit.def @@ -1,7 +1,7 @@ This file is ulimit.def, from which is created ulimit.c. It implements the builtin "ulimit" in Bash. -Copyright (C) 1987-2009 Free Software Foundation, Inc. +Copyright (C) 1987-2010 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. @@ -118,6 +118,10 @@ extern int errno; # undef HAVE_RESOURCE #endif +#if !defined (HAVE_RESOURCE) && defined (HAVE_ULIMIT_H) +# include +#endif + #if !defined (RLIMTYPE) # define RLIMTYPE long # define string_to_rlimtype(s) strtol(s, (char **)NULL, 10) diff --git a/command.h b/command.h index 4707812e..5d620468 100644 --- a/command.h +++ b/command.h @@ -1,7 +1,7 @@ /* command.h -- The structures used internally to represent commands, and the extern declarations of the functions used to create them. */ -/* Copyright (C) 1993-2009 Free Software Foundation, Inc. +/* Copyright (C) 1993-2010 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. @@ -96,6 +96,7 @@ enum command_type { cm_for, cm_case, cm_while, cm_if, cm_simple, cm_select, #define W_NOPROCSUB 0x100000 /* don't perform process substitution */ #define W_HASCTLESC 0x200000 /* word contains literal CTLESC characters */ #define W_ASSIGNASSOC 0x400000 /* word looks like associative array assignment */ +#define W_ARRAYIND 0x800000 /* word is an array index being expanded */ /* Possible values for subshell_environment */ #define SUBSHELL_ASYNC 0x01 /* subshell caused by `command &' */ @@ -105,6 +106,7 @@ enum command_type { cm_for, cm_case, cm_while, cm_if, cm_simple, cm_select, #define SUBSHELL_PIPE 0x10 /* subshell from a pipeline element */ #define SUBSHELL_PROCSUB 0x20 /* subshell caused by <(command) or >(command) */ #define SUBSHELL_COPROC 0x40 /* subshell from a coproc pipeline */ +#define SUBSHELL_RESETTRAP 0x80 /* subshell needs to reset trap strings on first call to trap */ /* A structure which represents a word. */ typedef struct word_desc { @@ -168,6 +170,7 @@ typedef struct element { #define CMD_STDIN_REDIR 0x400 /* async command needs implicit header file. */ #undef HAVE_TERMIOS_H +/* Define if you have the header file. */ +#undef HAVE_ULIMIT_H + /* Define if you have the header file. */ #undef HAVE_UNISTD_H diff --git a/configure b/configure index 875bbbf1..7ec72fe6 100755 --- a/configure +++ b/configure @@ -1,7 +1,7 @@ #! /bin/sh -# From configure.in for Bash 4.1, version 4.019. +# From configure.in for Bash 4.2, version 4.037. # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.63 for bash 4.1-release. +# Generated by GNU Autoconf 2.63 for bash 4.2-release. # # Report bugs to . # @@ -597,8 +597,8 @@ SHELL=${CONFIG_SHELL-/bin/sh} # Identity of this package. PACKAGE_NAME='bash' PACKAGE_TARNAME='bash' -PACKAGE_VERSION='4.1-release' -PACKAGE_STRING='bash 4.1-release' +PACKAGE_VERSION='4.2-release' +PACKAGE_STRING='bash 4.2-release' PACKAGE_BUGREPORT='bug-bash@gnu.org' ac_unique_file="shell.h" @@ -744,8 +744,6 @@ MALLOC_TARGET PURIFY TESTSCRIPT DEBUGGER_START_FILE -lispdir -EMACS host_os host_vendor host_cpu @@ -794,7 +792,6 @@ SHELL' ac_subst_files='' ac_user_opts=' enable_option_checking -with_lispdir with_afs with_bash_malloc with_curses @@ -844,6 +841,7 @@ enable_nls with_gnu_ld enable_rpath with_libiconv_prefix +enable_nls with_included_gettext with_libintl_prefix ' @@ -857,6 +855,7 @@ LDFLAGS LIBS CPPFLAGS CPP +CPPFLAGS YACC YFLAGS' @@ -1411,7 +1410,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures bash 4.1-release to adapt to many kinds of systems. +\`configure' configures bash 4.2-release to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1476,7 +1475,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of bash 4.1-release:";; + short | recursive ) echo "Configuration of bash 4.2-release:";; esac cat <<\_ACEOF @@ -1551,7 +1550,6 @@ Optional Features: Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) - --with-lispdir override the default lisp directory --with-afs if you are running AFS --with-bash-malloc use the Bash version of malloc --with-curses use the curses library instead of the termcap @@ -1652,7 +1650,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -bash configure 4.1-release +bash configure 4.2-release generated by GNU Autoconf 2.63 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, @@ -1666,7 +1664,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by bash $as_me 4.1-release, which was +It was created by bash $as_me 4.2-release, which was generated by GNU Autoconf 2.63. Invocation command line was $ $0 $@ @@ -2079,7 +2077,7 @@ ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. ac_config_headers="$ac_config_headers config.h" -BASHVERS=4.1 +BASHVERS=4.2 RELSTATUS=release case "$RELSTATUS" in @@ -2213,85 +2211,6 @@ sco3.2v5*|sco3.2v4*) opt_memscramble=no ;; esac -# Check whether --with-lispdir was given. -if test "${with_lispdir+set}" = set; then - withval=$with_lispdir; lispdir="$withval" - { $as_echo "$as_me:$LINENO: checking where .elc files should go" >&5 -$as_echo_n "checking where .elc files should go... " >&6; } - { $as_echo "$as_me:$LINENO: result: $lispdir" >&5 -$as_echo "$lispdir" >&6; } -else - - # If set to t, that means we are running in a shell under Emacs. - # If you have an Emacs named "t", then use the full path. - test x"$EMACS" = xt && EMACS= - for ac_prog in emacs xemacs -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_EMACS+set}" = set; then - $as_echo_n "(cached) " >&6 -else - if test -n "$EMACS"; then - ac_cv_prog_EMACS="$EMACS" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_EMACS="$ac_prog" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done -IFS=$as_save_IFS - -fi -fi -EMACS=$ac_cv_prog_EMACS -if test -n "$EMACS"; then - { $as_echo "$as_me:$LINENO: result: $EMACS" >&5 -$as_echo "$EMACS" >&6; } -else - { $as_echo "$as_me:$LINENO: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$EMACS" && break -done -test -n "$EMACS" || EMACS="no" - - if test $EMACS != "no"; then - if test x${lispdir+set} != xset; then - { $as_echo "$as_me:$LINENO: checking where .elc files should go" >&5 -$as_echo_n "checking where .elc files should go... " >&6; } -if test "${am_cv_lispdir+set}" = set; then - $as_echo_n "(cached) " >&6 -else - am_cv_lispdir=`$EMACS -batch -q -eval '(while load-path (princ (concat (car load-path) "\n")) (setq load-path (cdr load-path)))' | sed -n -e 's,/$,,' -e '/.*\/lib\/\(x\?emacs\/site-lisp\)$/{s,,${libdir}/\1,;p;q;}' -e '/.*\/share\/\(x\?emacs\/site-lisp\)$/{s,,${datadir}/\1,;p;q;}'` - if test -z "$am_cv_lispdir"; then - am_cv_lispdir='${datadir}/emacs/site-lisp' - fi - -fi -{ $as_echo "$as_me:$LINENO: result: $am_cv_lispdir" >&5 -$as_echo "$am_cv_lispdir" >&6; } - lispdir="$am_cv_lispdir" - fi - fi - -fi - - - - # Check whether --with-afs was given. @@ -11502,12 +11421,13 @@ done + for ac_header in unistd.h stdlib.h stdarg.h varargs.h limits.h string.h \ memory.h locale.h termcap.h termio.h termios.h dlfcn.h \ stddef.h stdint.h netdb.h pwd.h grp.h strings.h regex.h \ - syslog.h + syslog.h ulimit.h do as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then @@ -13576,7 +13496,8 @@ done -for ac_func in bcopy bzero confstr fnmatch \ + +for ac_func in bcopy bzero confstr faccessat fnmatch \ getaddrinfo gethostbyname getservbyname getservent inet_aton \ memmove pathconf putenv raise regcomp regexec \ setenv setlinebuf setlocale setvbuf siginterrupt strchr \ @@ -14333,7 +14254,116 @@ done -for ac_func in fdprintf +for ac_func in dprintf +do +as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 +$as_echo_n "checking for $ac_func... " >&6; } +if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define $ac_func to an innocuous variant, in case declares $ac_func. + For example, HP-UX 11i declares gettimeofday. */ +#define $ac_func innocuous_$ac_func + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $ac_func (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $ac_func + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $ac_func (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$ac_func || defined __stub___$ac_func +choke me +#endif + +int +main () +{ +return $ac_func (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + eval "$as_ac_var=yes" +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_ac_var=no" +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +ac_res=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +as_val=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF + +else + case " $LIBOBJS " in + *" $ac_func.$ac_objext "* ) ;; + *) LIBOBJS="$LIBOBJS $ac_func.$ac_objext" + ;; +esac + +fi +done + + + +for ac_func in strchrnul do as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` { $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 @@ -17445,6 +17475,98 @@ _ACEOF fi +{ $as_echo "$as_me:$LINENO: checking for mbsnrtowcs" >&5 +$as_echo_n "checking for mbsnrtowcs... " >&6; } +if test "${ac_cv_func_mbsnrtowcs+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define mbsnrtowcs to an innocuous variant, in case declares mbsnrtowcs. + For example, HP-UX 11i declares gettimeofday. */ +#define mbsnrtowcs innocuous_mbsnrtowcs + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char mbsnrtowcs (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef mbsnrtowcs + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char mbsnrtowcs (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_mbsnrtowcs || defined __stub___mbsnrtowcs +choke me +#endif + +int +main () +{ +return mbsnrtowcs (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_func_mbsnrtowcs=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_func_mbsnrtowcs=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_mbsnrtowcs" >&5 +$as_echo "$ac_cv_func_mbsnrtowcs" >&6; } +if test "x$ac_cv_func_mbsnrtowcs" = x""yes; then + cat >>confdefs.h <<\_ACEOF +#define HAVE_MBSNRTOWCS 1 +_ACEOF + +fi + { $as_echo "$as_me:$LINENO: checking for mbsrtowcs" >&5 $as_echo_n "checking for mbsrtowcs... " >&6; } if test "${ac_cv_func_mbsrtowcs+set}" = set; then @@ -17539,6 +17661,7 @@ fi + for ac_func in mbschr do as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` @@ -18110,6 +18233,116 @@ fi +for ac_func in wcswidth +do +as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 +$as_echo_n "checking for $ac_func... " >&6; } +if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define $ac_func to an innocuous variant, in case declares $ac_func. + For example, HP-UX 11i declares gettimeofday. */ +#define $ac_func innocuous_$ac_func + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $ac_func (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $ac_func + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $ac_func (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$ac_func || defined __stub___$ac_func +choke me +#endif + +int +main () +{ +return $ac_func (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + eval "$as_ac_var=yes" +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_ac_var=no" +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi +ac_res=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +as_val=`eval 'as_val=${'$as_ac_var'} + $as_echo "$as_val"'` + if test "x$as_val" = x""yes; then + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF + +else + case " $LIBOBJS " in + *" $ac_func.$ac_objext "* ) ;; + *) LIBOBJS="$LIBOBJS $ac_func.$ac_objext" + ;; +esac + +fi +done + + + + { $as_echo "$as_me:$LINENO: checking whether mbrtowc and mbstate_t are properly declared" >&5 $as_echo_n "checking whether mbrtowc and mbstate_t are properly declared... " >&6; } if test "${ac_cv_func_mbrtowc+set}" = set; then @@ -26862,6 +27095,366 @@ _ACEOF fi +# The cast to long int works around a bug in the HP C Compiler +# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects +# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. +# This bug is HP SR number 8606223364. +{ $as_echo "$as_me:$LINENO: checking size of intmax_t" >&5 +$as_echo_n "checking size of intmax_t... " >&6; } +if test "${ac_cv_sizeof_intmax_t+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + # Depending upon the size, compute the lo and hi bounds. +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long int) (sizeof (intmax_t))) >= 0)]; +test_array [0] = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_lo=0 ac_mid=0 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long int) (sizeof (intmax_t))) <= $ac_mid)]; +test_array [0] = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=$ac_mid; break +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_lo=`expr $ac_mid + 1` + if test $ac_lo -le $ac_mid; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid + 1` +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + done +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long int) (sizeof (intmax_t))) < 0)]; +test_array [0] = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=-1 ac_mid=-1 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long int) (sizeof (intmax_t))) >= $ac_mid)]; +test_array [0] = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_lo=$ac_mid; break +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_hi=`expr '(' $ac_mid ')' - 1` + if test $ac_mid -le $ac_hi; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid` +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + done +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_lo= ac_hi= +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +# Binary search between lo and hi bounds. +while test "x$ac_lo" != "x$ac_hi"; do + ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo` + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +static int test_array [1 - 2 * !(((long int) (sizeof (intmax_t))) <= $ac_mid)]; +test_array [0] = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=$ac_mid +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_lo=`expr '(' $ac_mid ')' + 1` +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +done +case $ac_lo in +?*) ac_cv_sizeof_intmax_t=$ac_lo;; +'') if test "$ac_cv_type_intmax_t" = yes; then + { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +{ { $as_echo "$as_me:$LINENO: error: cannot compute sizeof (intmax_t) +See \`config.log' for more details." >&5 +$as_echo "$as_me: error: cannot compute sizeof (intmax_t) +See \`config.log' for more details." >&2;} + { (exit 77); exit 77; }; }; } + else + ac_cv_sizeof_intmax_t=0 + fi ;; +esac +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +static long int longval () { return (long int) (sizeof (intmax_t)); } +static unsigned long int ulongval () { return (long int) (sizeof (intmax_t)); } +#include +#include +int +main () +{ + + FILE *f = fopen ("conftest.val", "w"); + if (! f) + return 1; + if (((long int) (sizeof (intmax_t))) < 0) + { + long int i = longval (); + if (i != ((long int) (sizeof (intmax_t)))) + return 1; + fprintf (f, "%ld", i); + } + else + { + unsigned long int i = ulongval (); + if (i != ((long int) (sizeof (intmax_t)))) + return 1; + fprintf (f, "%lu", i); + } + /* Do not output a trailing newline, as this causes \r\n confusion + on some platforms. */ + return ferror (f) || fclose (f) != 0; + + ; + return 0; +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_sizeof_intmax_t=`cat conftest.val` +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +if test "$ac_cv_type_intmax_t" = yes; then + { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +{ { $as_echo "$as_me:$LINENO: error: cannot compute sizeof (intmax_t) +See \`config.log' for more details." >&5 +$as_echo "$as_me: error: cannot compute sizeof (intmax_t) +See \`config.log' for more details." >&2;} + { (exit 77); exit 77; }; }; } + else + ac_cv_sizeof_intmax_t=0 + fi +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi +rm -f conftest.val +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_sizeof_intmax_t" >&5 +$as_echo "$ac_cv_sizeof_intmax_t" >&6; } + + + +cat >>confdefs.h <<_ACEOF +#define SIZEOF_INTMAX_T $ac_cv_sizeof_intmax_t +_ACEOF + + + { $as_echo "$as_me:$LINENO: checking for struct termios.c_line" >&5 $as_echo_n "checking for struct termios.c_line... " >&6; } @@ -27965,6 +28558,105 @@ _ACEOF fi +{ $as_echo "$as_me:$LINENO: checking for offset of exit status in return status from wait" >&5 +$as_echo_n "checking for offset of exit status in return status from wait... " >&6; } +if test "${bash_cv_wexitstatus_offset+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then + { $as_echo "$as_me:$LINENO: WARNING: cannot check WEXITSTATUS offset if cross compiling -- defaulting to 0" >&5 +$as_echo "$as_me: WARNING: cannot check WEXITSTATUS offset if cross compiling -- defaulting to 0" >&2;} + bash_cv_wexitstatus_offset=0 + +else + cat >conftest.$ac_ext <<_ACEOF + +#include +#include + +#include + +main(c, v) + int c; + char **v; +{ + pid_t pid, p; + int s, i, n; + + s = 0; + pid = fork(); + if (pid == 0) + exit (42); + + /* wait for the process */ + p = wait(&s); + if (p != pid) + exit (255); + + /* crack s */ + for (i = 0; i < (sizeof(s) - 8); i++) + { + n = (s >> i) & 0xff; + if (n == 42) + exit (i); + } + + exit (254); +} + +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + bash_cv_wexitstatus_offset=0 +else + $as_echo "$as_me: program exited with status $ac_status" >&5 +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +bash_cv_wexitstatus_offset=$? +fi +rm -rf conftest.dSYM +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + +fi + +if test "$bash_cv_wexitstatus_offset" -gt 32 ; then + { $as_echo "$as_me:$LINENO: WARNING: bad exit status from test program -- defaulting to 0" >&5 +$as_echo "$as_me: WARNING: bad exit status from test program -- defaulting to 0" >&2;} + bash_cv_wexitstatus_offset=0 +fi +{ $as_echo "$as_me:$LINENO: result: $bash_cv_wexitstatus_offset" >&5 +$as_echo "$bash_cv_wexitstatus_offset" >&6; } + +cat >>confdefs.h <<_ACEOF +#define WEXITSTATUS_OFFSET $bash_cv_wexitstatus_offset +_ACEOF + + + { $as_echo "$as_me:$LINENO: checking for the existence of strsignal" >&5 $as_echo_n "checking for the existence of strsignal... " >&6; } if test "${bash_cv_have_strsignal+set}" = set; then @@ -31170,7 +31862,7 @@ exec 6>&1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by bash $as_me 4.1-release, which was +This file was extended by bash $as_me 4.2-release, which was generated by GNU Autoconf 2.63. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -31233,7 +31925,7 @@ Report bugs to ." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_version="\\ -bash config.status 4.1-release +bash config.status 4.2-release configured by $0, generated by GNU Autoconf 2.63, with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" diff --git a/configure.in b/configure.in index 843bd700..d7e09983 100644 --- a/configure.in +++ b/configure.in @@ -1,11 +1,11 @@ dnl -dnl Configure script for bash-4.1 +dnl Configure script for bash-4.2 dnl dnl report bugs to chet@po.cwru.edu dnl dnl Process this file with autoconf to produce a configure script. -# Copyright (C) 1987-2009 Free Software Foundation, Inc. +# Copyright (C) 1987-2011 Free Software Foundation, Inc. # # This program is free software: you can redistribute it and/or modify @@ -21,9 +21,9 @@ dnl Process this file with autoconf to produce a configure script. # You should have received a copy of the GNU General Public License # along with this program. If not, see . -AC_REVISION([for Bash 4.1, version 4.019])dnl +AC_REVISION([for Bash 4.2, version 4.037])dnl -define(bashvers, 4.1) +define(bashvers, 4.2) define(relstatus, release) AC_INIT([bash], bashvers-relstatus, [bug-bash@gnu.org]) @@ -98,7 +98,7 @@ esac dnl dnl macros for the bash debugger dnl -AM_PATH_LISPDIR +dnl AM_PATH_LISPDIR AC_ARG_VAR(DEBUGGER_START_FILE, [location of bash debugger initialization file]) dnl arguments to configure @@ -659,7 +659,7 @@ BASH_HEADER_INTTYPES AC_CHECK_HEADERS(unistd.h stdlib.h stdarg.h varargs.h limits.h string.h \ memory.h locale.h termcap.h termio.h termios.h dlfcn.h \ stddef.h stdint.h netdb.h pwd.h grp.h strings.h regex.h \ - syslog.h) + syslog.h ulimit.h) AC_CHECK_HEADERS(sys/pte.h sys/stream.h sys/select.h sys/file.h \ sys/resource.h sys/param.h sys/socket.h sys/stat.h \ sys/time.h sys/times.h sys/types.h sys/wait.h) @@ -727,7 +727,7 @@ AC_CHECK_FUNCS(dup2 eaccess fcntl getdtablesize getgroups gethostname \ AC_REPLACE_FUNCS(rename) dnl checks for c library functions -AC_CHECK_FUNCS(bcopy bzero confstr fnmatch \ +AC_CHECK_FUNCS(bcopy bzero confstr faccessat fnmatch \ getaddrinfo gethostbyname getservbyname getservent inet_aton \ memmove pathconf putenv raise regcomp regexec \ setenv setlinebuf setlocale setvbuf siginterrupt strchr \ @@ -739,7 +739,8 @@ AC_CHECK_FUNCS(getpwent getpwnam getpwuid) AC_REPLACE_FUNCS(getcwd memset) AC_REPLACE_FUNCS(strcasecmp strcasestr strerror strftime strnlen strpbrk strstr) AC_REPLACE_FUNCS(strtod strtol strtoul strtoll strtoull strtoimax strtoumax) -AC_REPLACE_FUNCS(fdprintf) +AC_REPLACE_FUNCS(dprintf) +AC_REPLACE_FUNCS(strchrnul) AC_CHECK_DECLS([confstr]) AC_CHECK_DECLS([printf]) @@ -904,6 +905,8 @@ BASH_CHECK_TYPE(socklen_t, [#include ], int, HAVE_SOCKLEN_T) fi BASH_TYPE_RLIMIT +AC_CHECK_SIZEOF(intmax_t, 8) + dnl presence and contents of structures used by system calls BASH_STRUCT_TERMIOS_LDISC BASH_STRUCT_TERMIO_LDISC @@ -917,6 +920,8 @@ AC_STRUCT_TM AC_STRUCT_TIMEZONE BASH_STRUCT_TIMEZONE +BASH_STRUCT_WEXITSTATUS_OFFSET + dnl presence and behavior of C library functions BASH_FUNC_STRSIGNAL BASH_FUNC_OPENDIR_CHECK diff --git a/configure.in.bash40 b/configure.in.bash40 new file mode 100644 index 00000000..0fd2bf78 --- /dev/null +++ b/configure.in.bash40 @@ -0,0 +1,1145 @@ +dnl +dnl Configure script for bash-4.0 +dnl +dnl report bugs to chet@po.cwru.edu +dnl +dnl Process this file with autoconf to produce a configure script. + +# Copyright (C) 1987-2009 Free Software Foundation, Inc. + +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +AC_REVISION([for Bash 4.0, version 4.013])dnl + +define(bashvers, 4.0) +define(relstatus, release) + +AC_INIT([bash], bashvers-relstatus, [bug-bash@gnu.org]) + +dnl make sure we are using a recent autoconf version +AC_PREREQ(2.50) + +AC_CONFIG_SRCDIR(shell.h) +dnl where to find install.sh, config.sub, and config.guess +AC_CONFIG_AUX_DIR(./support) +AC_CONFIG_HEADERS(config.h) + +dnl checks for version info +BASHVERS=bashvers +RELSTATUS=relstatus + +dnl defaults for debug settings +case "$RELSTATUS" in +alp*|bet*|dev*|rc*|maint*) DEBUG='-DDEBUG' MALLOC_DEBUG='-DMALLOC_DEBUG' ;; +*) DEBUG= MALLOC_DEBUG= ;; +esac + +dnl canonicalize the host and os so we can do some tricky things before +dnl parsing options +AC_CANONICAL_HOST + +dnl configure defaults +opt_bash_malloc=yes +opt_purify=no +opt_purecov=no +opt_afs=no +opt_curses=no +opt_with_installed_readline=no + +#htmldir= + +dnl some systems should be configured without the bash malloc by default +dnl and some need a special compiler or loader +dnl look in the NOTES file for more +case "${host_cpu}-${host_os}" in +alpha*-*) opt_bash_malloc=no ;; # alpha running osf/1 or linux +*[[Cc]]ray*-*) opt_bash_malloc=no ;; # Crays +*-osf1*) opt_bash_malloc=no ;; # other osf/1 machines +sparc-svr4*) opt_bash_malloc=no ;; # sparc SVR4, SVR4.2 +sparc-netbsd*) opt_bash_malloc=no ;; # needs 8-byte alignment +mips-irix6*) opt_bash_malloc=no ;; # needs 8-byte alignment +m68k-sysv) opt_bash_malloc=no ;; # fixes file descriptor leak in closedir +sparc-linux*) opt_bash_malloc=no ;; # sparc running linux; requires ELF +#*-freebsd*-gnu) opt_bash_malloc=no ;; # there's some undetermined problem here +#*-freebsd*) opt_bash_malloc=no ;; # they claim it's better; I disagree +*-openbsd*) opt_bash_malloc=no ;; # they claim it needs eight-bit alignment +*-aix*) opt_bash_malloc=no ;; # AIX machines +*-nextstep*) opt_bash_malloc=no ;; # NeXT machines running NeXTstep +*-macos*) opt_bash_malloc=no ;; # Apple MacOS X +*-rhapsody*) opt_bash_malloc=no ;; # Apple Rhapsody (MacOS X) +*-darwin*) opt_bash_malloc=no ;; # Apple Darwin (MacOS X) +*-dgux*) opt_bash_malloc=no ;; # DG/UX machines +*-qnx*) opt_bash_malloc=no ;; # QNX 4.2, QNX 6.x +*-machten4) opt_bash_malloc=no ;; # MachTen 4.x +*-bsdi2.1|*-bsdi3.?) opt_bash_malloc=no ; : ${CC:=shlicc2} ;; # for loadable builtins +*-beos*) opt_bash_malloc=no ;; # they say it's suitable +*-cygwin*) opt_bash_malloc=no ;; # Cygnus's CYGWIN environment +*-opennt*|*-interix*) opt_bash_malloc=no ;; # Interix, now owned by Microsoft +esac + +# memory scrambling on free() +case "${host_os}" in +sco3.2v5*|sco3.2v4*) opt_memscramble=no ;; +*) opt_memscramble=yes ;; +esac + +dnl +dnl macros for the bash debugger +dnl +AM_PATH_LISPDIR +AC_ARG_VAR(DEBUGGER_START_FILE, [location of bash debugger initialization file]) + +dnl arguments to configure +dnl packages +AC_ARG_WITH(afs, AC_HELP_STRING([--with-afs], [if you are running AFS]), opt_afs=$withval) +AC_ARG_WITH(bash-malloc, AC_HELP_STRING([--with-bash-malloc], [use the Bash version of malloc]), opt_bash_malloc=$withval) +AC_ARG_WITH(curses, AC_HELP_STRING([--with-curses], [use the curses library instead of the termcap library]), opt_curses=$withval) +AC_ARG_WITH(gnu-malloc, AC_HELP_STRING([--with-gnu-malloc], [synonym for --with-bash-malloc]), opt_bash_malloc=$withval) +AC_ARG_WITH(installed-readline, AC_HELP_STRING([--with-installed-readline], [use a version of the readline library that is already installed]), opt_with_installed_readline=$withval) +AC_ARG_WITH(purecov, AC_HELP_STRING([--with-purecov], [configure to postprocess with pure coverage]), opt_purecov=$withval) +AC_ARG_WITH(purify, AC_HELP_STRING([--with-purify], [configure to postprocess with purify]), opt_purify=$withval) + +if test "$opt_bash_malloc" = yes; then + MALLOC_TARGET=malloc + MALLOC_SRC=malloc.c + + MALLOC_LIB='-lmalloc' + MALLOC_LIBRARY='$(ALLOC_LIBDIR)/libmalloc.a' + MALLOC_LDFLAGS='-L$(ALLOC_LIBDIR)' + MALLOC_DEP='$(MALLOC_LIBRARY)' + + AC_DEFINE(USING_BASH_MALLOC) +else + MALLOC_LIB= + MALLOC_LIBRARY= + MALLOC_LDFLAGS= + MALLOC_DEP= +fi + +if test "$opt_purify" = yes; then + PURIFY="purify " + AC_DEFINE(DISABLE_MALLOC_WRAPPERS) +else + PURIFY= +fi + +if test "$opt_purecov" = yes; then + PURIFY="${PURIFY}purecov" +fi + +if test "$opt_afs" = yes; then + AC_DEFINE(AFS) +fi + +if test "$opt_curses" = yes; then + prefer_curses=yes +fi + +if test -z "${DEBUGGER_START_FILE}"; then + DEBUGGER_START_FILE='${datadir}/bashdb/bashdb-main.inc' +fi + +dnl optional shell features in config.h.in +opt_minimal_config=no + +opt_job_control=yes +opt_alias=yes +opt_readline=yes +opt_history=yes +opt_bang_history=yes +opt_dirstack=yes +opt_restricted=yes +opt_process_subst=yes +opt_prompt_decoding=yes +opt_select=yes +opt_help=yes +opt_array_variables=yes +opt_dparen_arith=yes +opt_extended_glob=yes +opt_brace_expansion=yes +opt_disabled_builtins=no +opt_command_timing=yes +opt_xpg_echo=no +opt_strict_posix=no +opt_cond_command=yes +opt_cond_regexp=yes +opt_coproc=yes +opt_arith_for_command=yes +opt_net_redirs=yes +opt_progcomp=yes +opt_separate_help=no +opt_multibyte=yes +opt_debugger=yes +opt_single_longdoc_strings=yes +opt_casemod_attrs=yes +opt_casemod_expansions=yes + +dnl options that affect how bash is compiled and linked +opt_static_link=no +opt_profiling=no + +dnl argument parsing for optional features +AC_ARG_ENABLE(minimal-config, AC_HELP_STRING([--enable-minimal-config], [a minimal sh-like configuration]), opt_minimal_config=$enableval) + +dnl a minimal configuration turns everything off, but features can be +dnl added individually +if test $opt_minimal_config = yes; then + opt_job_control=no opt_alias=no opt_readline=no + opt_history=no opt_bang_history=no opt_dirstack=no + opt_restricted=no opt_process_subst=no opt_prompt_decoding=no + opt_select=no opt_help=no opt_array_variables=no opt_dparen_arith=no + opt_brace_expansion=no opt_disabled_builtins=no opt_command_timing=no + opt_extended_glob=no opt_cond_command=no opt_arith_for_command=no + opt_net_redirs=no opt_progcomp=no opt_separate_help=no + opt_multibyte=yes opt_cond_regexp=no opt_coproc=no + opt_casemod_attrs=no opt_casemod_expansions=no +fi + +AC_ARG_ENABLE(alias, AC_HELP_STRING([--enable-alias], [enable shell aliases]), opt_alias=$enableval) +AC_ARG_ENABLE(arith-for-command, AC_HELP_STRING([--enable-arith-for-command], [enable arithmetic for command]), opt_arith_for_command=$enableval) +AC_ARG_ENABLE(array-variables, AC_HELP_STRING([--enable-array-variables], [include shell array variables]), opt_array_variables=$enableval) +AC_ARG_ENABLE(bang-history, AC_HELP_STRING([--enable-bang-history], [turn on csh-style history substitution]), opt_bang_history=$enableval) +AC_ARG_ENABLE(brace-expansion, AC_HELP_STRING([--enable-brace-expansion], [include brace expansion]), opt_brace_expansion=$enableval) +AC_ARG_ENABLE(casemod-attributes, AC_HELP_STRING([--enable-casemod-attributes], [include case-modifying variable attributes]), opt_casemod_attrs=$enableval) +AC_ARG_ENABLE(casemod-expansions, AC_HELP_STRING([--enable-casemod-expansions], [include case-modifying word expansions]), opt_casemod_expansions=$enableval) +AC_ARG_ENABLE(command-timing, AC_HELP_STRING([--enable-command-timing], [enable the time reserved word and command timing]), opt_command_timing=$enableval) +AC_ARG_ENABLE(cond-command, AC_HELP_STRING([--enable-cond-command], [enable the conditional command]), opt_cond_command=$enableval) +AC_ARG_ENABLE(cond-regexp, AC_HELP_STRING([--enable-cond-regexp], [enable extended regular expression matching in conditional commands]), opt_cond_regexp=$enableval) +AC_ARG_ENABLE(coprocesses, AC_HELP_STRING([--enable-coprocesses], [enable coprocess support and the coproc reserved word]), opt_coproc=$enableval) +AC_ARG_ENABLE(debugger, AC_HELP_STRING([--enable-debugger], [enable support for bash debugger]), opt_debugger=$enableval) +AC_ARG_ENABLE(directory-stack, AC_HELP_STRING([--enable-directory-stack], [enable builtins pushd/popd/dirs]), opt_dirstack=$enableval) +AC_ARG_ENABLE(disabled-builtins, AC_HELP_STRING([--enable-disabled-builtins], [allow disabled builtins to still be invoked]), opt_disabled_builtins=$enableval) +AC_ARG_ENABLE(dparen-arithmetic, AC_HELP_STRING([--enable-dparen-arithmetic], [include ((...)) command]), opt_dparen_arith=$enableval) +AC_ARG_ENABLE(extended-glob, AC_HELP_STRING([--enable-extended-glob], [include ksh-style extended pattern matching]), opt_extended_glob=$enableval) +AC_ARG_ENABLE(help-builtin, AC_HELP_STRING([--enable-help-builtin], [include the help builtin]), opt_help=$enableval) +AC_ARG_ENABLE(history, AC_HELP_STRING([--enable-history], [turn on command history]), opt_history=$enableval) +AC_ARG_ENABLE(job-control, AC_HELP_STRING([--enable-job-control], [enable job control features]), opt_job_control=$enableval) +AC_ARG_ENABLE(multibyte, AC_HELP_STRING([--enable-multibyte], [enable multibyte characters if OS supports them]), opt_multibyte=$enableval) +AC_ARG_ENABLE(net-redirections, AC_HELP_STRING([--enable-net-redirections], [enable /dev/tcp/host/port redirection]), opt_net_redirs=$enableval) +AC_ARG_ENABLE(process-substitution, AC_HELP_STRING([--enable-process-substitution], [enable process substitution]), opt_process_subst=$enableval) +AC_ARG_ENABLE(progcomp, AC_HELP_STRING([--enable-progcomp], [enable programmable completion and the complete builtin]), opt_progcomp=$enableval) +AC_ARG_ENABLE(prompt-string-decoding, AC_HELP_STRING([--enable-prompt-string-decoding], [turn on escape character decoding in prompts]), opt_prompt_decoding=$enableval) +AC_ARG_ENABLE(readline, AC_HELP_STRING([--enable-readline], [turn on command line editing]), opt_readline=$enableval) +AC_ARG_ENABLE(restricted, AC_HELP_STRING([--enable-restricted], [enable a restricted shell]), opt_restricted=$enableval) +AC_ARG_ENABLE(select, AC_HELP_STRING([--enable-select], [include select command]), opt_select=$enableval) +AC_ARG_ENABLE(separate-helpfiles, AC_HELP_STRING([--enable-separate-helpfiles], [use external files for help builtin documentation]), opt_separate_help=$enableval) +AC_ARG_ENABLE(single-help-strings, AC_HELP_STRING([--enable-single-help-strings], [store help documentation as a single string to ease translation]), opt_single_longdoc_strings=$enableval) +AC_ARG_ENABLE(strict-posix-default, AC_HELP_STRING([--enable-strict-posix-default], [configure bash to be posix-conformant by default]), opt_strict_posix=$enableval) +AC_ARG_ENABLE(usg-echo-default, AC_HELP_STRING([--enable-usg-echo-default], [a synonym for --enable-xpg-echo-default]), opt_xpg_echo=$enableval) +AC_ARG_ENABLE(xpg-echo-default, AC_HELP_STRING([--enable-xpg-echo-default], [make the echo builtin expand escape sequences by default]), opt_xpg_echo=$enableval) + +dnl options that alter how bash is compiled and linked +AC_ARG_ENABLE(mem-scramble, AC_HELP_STRING([--enable-mem-scramble], [scramble memory on calls to malloc and free]), opt_memscramble=$enableval) +AC_ARG_ENABLE(profiling, AC_HELP_STRING([--enable-profiling], [allow profiling with gprof]), opt_profiling=$enableval) +AC_ARG_ENABLE(static-link, AC_HELP_STRING([--enable-static-link], [link bash statically, for use as a root shell]), opt_static_link=$enableval) + +dnl opt_job_control is handled later, after BASH_JOB_CONTROL_MISSING runs + +dnl opt_readline and opt_history are handled later, because AC_PROG_CC needs +dnl to be run before we can check the version of an already-installed readline +dnl library + +if test $opt_alias = yes; then +AC_DEFINE(ALIAS) +fi +if test $opt_dirstack = yes; then +AC_DEFINE(PUSHD_AND_POPD) +fi +if test $opt_restricted = yes; then +AC_DEFINE(RESTRICTED_SHELL) +fi +if test $opt_process_subst = yes; then +AC_DEFINE(PROCESS_SUBSTITUTION) +fi +if test $opt_prompt_decoding = yes; then +AC_DEFINE(PROMPT_STRING_DECODE) +fi +if test $opt_select = yes; then +AC_DEFINE(SELECT_COMMAND) +fi +if test $opt_help = yes; then +AC_DEFINE(HELP_BUILTIN) +fi +if test $opt_array_variables = yes; then +AC_DEFINE(ARRAY_VARS) +fi +if test $opt_dparen_arith = yes; then +AC_DEFINE(DPAREN_ARITHMETIC) +fi +if test $opt_brace_expansion = yes; then +AC_DEFINE(BRACE_EXPANSION) +fi +if test $opt_disabled_builtins = yes; then +AC_DEFINE(DISABLED_BUILTINS) +fi +if test $opt_command_timing = yes; then +AC_DEFINE(COMMAND_TIMING) +fi +if test $opt_xpg_echo = yes ; then +AC_DEFINE(DEFAULT_ECHO_TO_XPG) +fi +if test $opt_strict_posix = yes; then +AC_DEFINE(STRICT_POSIX) +fi +if test $opt_extended_glob = yes ; then +AC_DEFINE(EXTENDED_GLOB) +fi +if test $opt_cond_command = yes ; then +AC_DEFINE(COND_COMMAND) +fi +if test $opt_cond_regexp = yes ; then +AC_DEFINE(COND_REGEXP) +fi +if test $opt_coproc = yes; then +AC_DEFINE(COPROCESS_SUPPORT) +fi +if test $opt_arith_for_command = yes; then +AC_DEFINE(ARITH_FOR_COMMAND) +fi +if test $opt_net_redirs = yes; then +AC_DEFINE(NETWORK_REDIRECTIONS) +fi +if test $opt_progcomp = yes; then +AC_DEFINE(PROGRAMMABLE_COMPLETION) +fi +if test $opt_multibyte = no; then +AC_DEFINE(NO_MULTIBYTE_SUPPORT) +fi +if test $opt_debugger = yes; then +AC_DEFINE(DEBUGGER) +fi +if test $opt_casemod_attrs = yes; then +AC_DEFINE(CASEMOD_ATTRS) +fi +if test $opt_casemod_expansions = yes; then +AC_DEFINE(CASEMOD_EXPANSIONS) +fi + +if test $opt_memscramble = yes; then +AC_DEFINE(MEMSCRAMBLE) +fi + +if test "$opt_minimal_config" = yes; then + TESTSCRIPT=run-minimal +else + TESTSCRIPT=run-all +fi + +HELPDIR= HELPDIRDEFINE= HELPINSTALL= +if test "$opt_separate_help" != no; then + if test "$opt_separate_help" = "yes" ; then + HELPDIR='${datadir}/bash' + else + HELPDIR=$opt_separate_help + fi + HELPDIRDEFINE='-H ${HELPDIR}' + HELPINSTALL='install-help' +fi +HELPSTRINGS= +if test "$opt_single_longdoc_strings" != "yes"; then + HELPSTRINGS='-S' +fi + +dnl now substitute in the values generated by arguments +AC_SUBST(TESTSCRIPT) +AC_SUBST(PURIFY) +AC_SUBST(MALLOC_TARGET) +AC_SUBST(MALLOC_SRC) + +AC_SUBST(MALLOC_LIB) +AC_SUBST(MALLOC_LIBRARY) +AC_SUBST(MALLOC_LDFLAGS) +AC_SUBST(MALLOC_DEP) + +AC_SUBST(htmldir) + +AC_SUBST(HELPDIR) +AC_SUBST(HELPDIRDEFINE) +AC_SUBST(HELPINSTALL) +AC_SUBST(HELPSTRINGS) + +echo "" +echo "Beginning configuration for bash-$BASHVERS-$RELSTATUS for ${host_cpu}-${host_vendor}-${host_os}" +echo "" + +dnl compilation checks +dnl AC_PROG_CC sets $cross_compiling to `yes' if cross-compiling for a +dnl different environment +AC_PROG_CC + +dnl test for Unix variants +AC_ISC_POSIX +AC_MINIX + +AC_SYS_LARGEFILE + +dnl BEGIN changes for cross-building (currently cygwin, minGW, and +dnl (obsolete) BeOS) + +SIGNAMES_O= +SIGNAMES_H=lsignames.h + +dnl load up the cross-building cache file -- add more cases and cache +dnl files as necessary + +dnl Note that host and target machine are the same, and different than the +dnl build machine. +dnl Set SIGNAMES_H based on whether or not we're cross-compiling. + +CROSS_COMPILE= +if test "x$cross_compiling" = "xyes"; then + case "${host}" in + *-cygwin*) + cross_cache=${srcdir}/cross-build/cygwin32.cache + ;; + *-mingw*) + cross_cache=${srcdir}/cross-build/cygwin32.cache + ;; + i[[3456]]86-*-beos*) + cross_cache=${srcdir}/cross-build/x86-beos.cache + ;; + *) echo "configure: cross-compiling for $host is not supported" >&2 + ;; + esac + if test -n "${cross_cache}" && test -r "${cross_cache}"; then + echo "loading cross-build cache file ${cross_cache}" + . ${cross_cache} + fi + unset cross_cache + SIGNAMES_O='signames.o' + CROSS_COMPILE='-DCROSS_COMPILING' + AC_SUBST(CROSS_COMPILE) +fi +AC_SUBST(SIGNAMES_H) +AC_SUBST(SIGNAMES_O) + +if test -z "$CC_FOR_BUILD"; then + if test "x$cross_compiling" = "xno"; then + CC_FOR_BUILD='$(CC)' + else + CC_FOR_BUILD=gcc + fi +fi +AC_SUBST(CC_FOR_BUILD) + +dnl END changes for cross-building + +dnl We want these before the checks, so the checks can modify their values. +test -z "$CFLAGS" && CFLAGS=-g auto_cflags=1 + +dnl If we're using gcc and the user hasn't specified CFLAGS, add -O2 to CFLAGS. +test -n "$GCC" && test -n "$auto_cflags" && CFLAGS="$CFLAGS -O2" + +dnl handle options that alter how bash is compiled and linked +dnl these must come after the test for cc/gcc +if test "$opt_profiling" = "yes"; then + PROFILE_FLAGS=-pg + case "$host_os" in + solaris2*) ;; + *) opt_static_link=yes ;; + esac + DEBUG= MALLOC_DEBUG= +fi + +if test "$opt_static_link" = yes; then + # if we're using gcc, add `-static' to LDFLAGS, except on Solaris >= 2 + if test -n "$GCC" || test "$ac_cv_prog_gcc" = "yes"; then + STATIC_LD="-static" + case "$host_os" in + solaris2*) ;; + *) LDFLAGS="$LDFLAGS -static" ;; # XXX experimental + esac + fi +fi + +if test "X$cross_compiling" = "Xno"; then + CPPFLAGS_FOR_BUILD=${CPPFLAGS_FOR_BUILD-"$CPPFLAGS"} + LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-'$(LDFLAGS)'} +else + CPPFLAGS_FOR_BUILD=${CPPFLAGS_FOR_BUILD-""} + LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-""} +fi + +test -z "$CFLAGS_FOR_BUILD" && CFLAGS_FOR_BUILD="-g" + +AC_SUBST(CFLAGS) +AC_SUBST(CPPFLAGS) +AC_SUBST(LDFLAGS) +AC_SUBST(STATIC_LD) + +AC_SUBST(CFLAGS_FOR_BUILD) +AC_SUBST(CPPFLAGS_FOR_BUILD) +AC_SUBST(LDFLAGS_FOR_BUILD) + +AC_PROG_GCC_TRADITIONAL + +dnl BEGIN READLINE and HISTORY LIBRARY SECTION +dnl prepare to allow bash to be linked against an already-installed readline + +dnl first test that the readline version is new enough to link bash against +if test "$opt_readline" = yes && test "$opt_with_installed_readline" != "no" +then + # If the user specified --with-installed-readline=PREFIX and PREFIX + # is not `yes', set ac_cv_rl_prefix to PREFIX + test $opt_with_installed_readline != "yes" && ac_cv_rl_prefix=$opt_with_installed_readline + + RL_LIB_READLINE_VERSION + + case "$ac_cv_rl_version" in + 5*|6*|7*|8*|9*) ;; + *) opt_with_installed_readline=no + AC_MSG_WARN(installed readline library is too old to be linked with bash) + AC_MSG_WARN(using private bash version) + ;; + esac +fi + +TILDE_LIB=-ltilde +if test $opt_readline = yes; then + AC_DEFINE(READLINE) + if test "$opt_with_installed_readline" != "no" ; then + case "$opt_with_installed_readline" in + yes) RL_INCLUDE= ;; + *) case "$RL_INCLUDEDIR" in + /usr/include) ;; + *) RL_INCLUDE='-I${RL_INCLUDEDIR}' ;; + esac + ;; + esac + READLINE_DEP= + READLINE_LIB=-lreadline + # section for OS versions that don't allow unresolved symbols + # to be compiled into dynamic libraries. + case "$host_os" in + cygwin*) TILDE_LIB= ;; + esac + else + RL_LIBDIR='$(dot)/$(LIBSUBDIR)/readline' + READLINE_DEP='$(READLINE_LIBRARY)' + # section for OS versions that ship an older/broken version of + # readline as a standard dynamic library and don't allow a + # static version specified as -llibname to override the + # dynamic version + case "${host_os}" in + darwin[[89]]*) READLINE_LIB='${READLINE_LIBRARY}' ;; + *) READLINE_LIB=-lreadline ;; + esac + fi +else + RL_LIBDIR='$(dot)/$(LIBSUBDIR)/readline' + READLINE_LIB= READLINE_DEP= +fi +if test $opt_history = yes || test $opt_bang_history = yes; then + if test $opt_history = yes; then + AC_DEFINE(HISTORY) + fi + if test $opt_bang_history = yes; then + AC_DEFINE(BANG_HISTORY) + fi + if test "$opt_with_installed_readline" != "no"; then + HIST_LIBDIR=$RL_LIBDIR + HISTORY_DEP= + HISTORY_LIB=-lhistory + case "$opt_with_installed_readline" in + yes) RL_INCLUDE= ;; + *) case "$RL_INCLUDEDIR" in + /usr/include) ;; + *) RL_INCLUDE='-I${RL_INCLUDEDIR}' ;; + esac + ;; + esac + else + HIST_LIBDIR='$(dot)/$(LIBSUBDIR)/readline' + HISTORY_DEP='$(HISTORY_LIBRARY)' + # section for OS versions that ship an older version of + # readline as a standard dynamic library and don't allow a + # static version specified as -llibname to override the + # dynamic version + case "${host_os}" in + darwin[[89]]*) HISTORY_LIB='${HISTORY_LIBRARY}' ;; + *) HISTORY_LIB=-lhistory ;; + esac + fi +else + HIST_LIBDIR='$(dot)/$(LIBSUBDIR)/readline' + HISTORY_LIB= HISTORY_DEP= +fi +AC_SUBST(READLINE_LIB) +AC_SUBST(READLINE_DEP) +AC_SUBST(RL_LIBDIR) +AC_SUBST(RL_INCLUDEDIR) +AC_SUBST(RL_INCLUDE) +AC_SUBST(HISTORY_LIB) +AC_SUBST(HISTORY_DEP) +AC_SUBST(HIST_LIBDIR) +AC_SUBST(TILDE_LIB) + +dnl END READLINE and HISTORY LIBRARY SECTION + +dnl programs needed by the build and install process +AC_PROG_INSTALL +AC_CHECK_PROG(AR, ar, , ar) +dnl Set default for ARFLAGS, since autoconf does not have a macro for it. +dnl This allows people to set it when running configure or make +test -n "$ARFLAGS" || ARFLAGS="cr" +AC_PROG_RANLIB +AC_PROG_YACC +AC_PROG_MAKE_SET + +case "$host_os" in +opennt*|interix*) MAKE_SHELL="$INTERIX_ROOT/bin/sh" ;; +*) MAKE_SHELL=/bin/sh ;; +esac +AC_SUBST(MAKE_SHELL) + +dnl this is similar to the expanded AC_PROG_RANLIB +if test x$SIZE = x; then + if test x$ac_tool_prefix = x; then + SIZE=size + else + SIZE=${ac_tool_prefix}size + save_IFS=$IFS ; IFS=: + size_found=0 + for dir in $PATH; do + if test -x $dir/$SIZE ; then + size_found=1 + break + fi + done + if test $size_found -eq 0; then + SIZE=: + fi + IFS=$save_IFS + fi +fi +AC_SUBST(SIZE) + +dnl Turn on any extensions available in the GNU C library. +AC_DEFINE(_GNU_SOURCE, 1) + +dnl C compiler characteristics +AC_C_CONST +AC_C_INLINE +AC_C_BIGENDIAN +AC_C_STRINGIZE +AC_C_LONG_DOUBLE +AC_C_PROTOTYPES +AC_C_CHAR_UNSIGNED +AC_C_VOLATILE +AC_C_RESTRICT + +dnl initialize GNU gettext +AM_GNU_GETTEXT([no-libtool], [need-ngettext], [lib/intl]) + +dnl header files +AC_HEADER_DIRENT +AC_HEADER_TIME + +BASH_HEADER_INTTYPES + +AC_CHECK_HEADERS(unistd.h stdlib.h stdarg.h varargs.h limits.h string.h \ + memory.h locale.h termcap.h termio.h termios.h dlfcn.h \ + stddef.h stdint.h netdb.h pwd.h grp.h strings.h regex.h) +AC_CHECK_HEADERS(sys/pte.h sys/stream.h sys/select.h sys/file.h \ + sys/resource.h sys/param.h sys/socket.h sys/stat.h \ + sys/time.h sys/times.h sys/types.h sys/wait.h) +AC_CHECK_HEADERS(netinet/in.h arpa/inet.h) + +dnl sys/ptem.h requires definitions from sys/stream.h on systems where it +dnl exists +AC_CHECK_HEADER(sys/ptem.h, , ,[[ +#if HAVE_SYS_STREAM_H +# include +#endif +]]) + +dnl special checks for libc functions +AC_FUNC_ALLOCA +AC_FUNC_GETPGRP +AC_FUNC_SETVBUF_REVERSED +AC_FUNC_VPRINTF +AC_FUNC_STRCOLL + +dnl if we're not using the bash malloc but require the C alloca, set things +dnl up to build a libmalloc.a containing only alloca.o + +if test "$ac_cv_func_alloca_works" = "no" && test "$opt_bash_malloc" = "no"; then + MALLOC_TARGET=alloca + MALLOC_SRC=alloca.c + + MALLOC_LIB='-lmalloc' + MALLOC_LIBRARY='$(ALLOC_LIBDIR)/libmalloc.a' + MALLOC_LDFLAGS='-L$(ALLOC_LIBDIR)' + MALLOC_DEP='$(MALLOC_LIBRARY)' +fi + +dnl if vprintf is not in libc, see if it's defined in stdio.h +if test "$ac_cv_func_vprintf" = no; then + AC_MSG_CHECKING(for declaration of vprintf in stdio.h) + AC_EGREP_HEADER([[int[ ]*vprintf[^a-zA-Z0-9]]],stdio.h,ac_cv_func_vprintf=yes) + AC_MSG_RESULT($ac_cv_func_vprintf) + if test $ac_cv_func_vprintf = yes; then + AC_DEFINE(HAVE_VPRINTF) + fi +fi + +if test "$ac_cv_func_vprintf" = no && test "$ac_cv_func__doprnt" = "yes"; then + AC_LIBOBJ(vprint) +fi + +dnl signal stuff +AC_TYPE_SIGNAL + +dnl checks for certain version-specific system calls and libc functions +AC_CHECK_FUNC(__setostype, AC_DEFINE(HAVE_SETOSTYPE)) +AC_CHECK_FUNC(wait3, AC_DEFINE(HAVE_WAIT3)) +AC_CHECK_FUNC(isinf, AC_DEFINE(HAVE_ISINF_IN_LIBC)) +AC_CHECK_FUNC(isnan, AC_DEFINE(HAVE_ISNAN_IN_LIBC)) + +dnl checks for missing libc functions +AC_CHECK_FUNC(mkfifo,AC_DEFINE(HAVE_MKFIFO),AC_DEFINE(MKFIFO_MISSING)) + +dnl checks for system calls +AC_CHECK_FUNCS(dup2 eaccess fcntl getdtablesize getgroups gethostname \ + getpagesize getpeername getrlimit getrusage gettimeofday \ + kill killpg lstat readlink sbrk select setdtablesize \ + setitimer tcgetpgrp uname ulimit waitpid) +AC_REPLACE_FUNCS(rename) + +dnl checks for c library functions +AC_CHECK_FUNCS(bcopy bzero confstr fnmatch \ + getaddrinfo gethostbyname getservbyname getservent inet_aton \ + memmove pathconf putenv raise regcomp regexec \ + setenv setlinebuf setlocale setvbuf siginterrupt strchr \ + sysconf tcgetattr times ttyname tzset unsetenv) + +AC_CHECK_FUNCS(vsnprintf snprintf vasprintf asprintf) +AC_CHECK_FUNCS(isascii isblank isgraph isprint isspace isxdigit) +AC_CHECK_FUNCS(getpwent getpwnam getpwuid) +AC_REPLACE_FUNCS(getcwd memset strcasecmp strerror strftime strnlen strpbrk strstr) +AC_REPLACE_FUNCS(strtod strtol strtoul strtoll strtoull strtoimax strtoumax) +AC_REPLACE_FUNCS(fdprintf) + +AC_CHECK_DECLS([confstr]) +AC_CHECK_DECLS([printf]) +AC_CHECK_DECLS([sbrk]) +AC_CHECK_DECLS([setregid]) +AC_CHECK_DECLS([strcpy]) +AC_CHECK_DECLS([strsignal]) + +dnl Extra test to detect the horribly broken HP/UX 11.00 strtold(3) +AC_CHECK_DECLS([strtold], [ + AC_MSG_CHECKING([for broken strtold]) + AC_CACHE_VAL(bash_cv_strtold_broken, + [AC_TRY_COMPILE( + [#include ], + [int main() { long double r; char *foo, bar; r = strtold(foo, &bar);}], + bash_cv_strtold_broken=no, bash_cv_strtold_broken=yes, + [AC_MSG_WARN(cannot check for broken strtold if cross-compiling, defaulting to no)]) + ] + ) + AC_MSG_RESULT($bash_cv_strtold_broken) + if test "$bash_cv_strtold_broken" = "yes" ; then + AC_DEFINE(STRTOLD_BROKEN) + fi +]) + + +BASH_CHECK_DECL(strtoimax) +BASH_CHECK_DECL(strtol) +BASH_CHECK_DECL(strtoll) +BASH_CHECK_DECL(strtoul) +BASH_CHECK_DECL(strtoull) +BASH_CHECK_DECL(strtoumax) + +AC_FUNC_MKTIME + +dnl +dnl Checks for lib/intl and related code (uses some of the output from +dnl AM_GNU_GETTEXT) +dnl + +AC_CHECK_HEADERS([argz.h errno.h fcntl.h malloc.h stdio_ext.h]) + +dnl AC_FUNC_MALLOC +AC_FUNC_MMAP +AC_CHECK_FUNCS([__argz_count __argz_next __argz_stringify dcgettext mempcpy \ + munmap stpcpy strcspn strdup]) + +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} -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 +dnl + +BASH_CHECK_MULTIBYTE + +dnl checks for the dynamic loading library functions in libc and libdl +if test "$opt_static_link" != yes; then +AC_CHECK_LIB(dl, dlopen) +AC_CHECK_FUNCS(dlopen dlclose dlsym) +fi + +dnl this defines HAVE_DECL_SYS_SIGLIST +AC_DECL_SYS_SIGLIST + +dnl network functions -- check for inet_aton again +if test "$ac_cv_func_inet_aton" != 'yes'; then +BASH_FUNC_INET_ATON +fi + +dnl libraries +dnl this is reportedly no longer necessary for irix[56].? +case "$host_os" in +irix4*) AC_CHECK_LIB(sun, getpwent) ;; +esac + +dnl check for getpeername in the socket library only if it's not in libc +if test "$ac_cv_func_getpeername" = no; then + BASH_CHECK_LIB_SOCKET +fi +dnl check for gethostbyname in socket libraries if it's not in libc +if test "$ac_cv_func_gethostbyname" = no; then + BASH_FUNC_GETHOSTBYNAME +fi + +dnl system types +AC_TYPE_GETGROUPS +AC_TYPE_OFF_T +AC_TYPE_MODE_T +AC_TYPE_UID_T +AC_TYPE_PID_T +AC_TYPE_SIZE_T +AC_CHECK_TYPE(ssize_t, int) +AC_CHECK_TYPE(time_t, long) + +BASH_TYPE_LONG_LONG +BASH_TYPE_UNSIGNED_LONG_LONG + +AC_TYPE_SIGNAL +BASH_TYPE_SIG_ATOMIC_T + +AC_CHECK_SIZEOF(char, 1) +AC_CHECK_SIZEOF(short, 2) +AC_CHECK_SIZEOF(int, 4) +AC_CHECK_SIZEOF(long, 4) +AC_CHECK_SIZEOF(char *, 4) +AC_CHECK_SIZEOF(double, 8) +AC_CHECK_SIZEOF([long long], 8) + +AC_CHECK_TYPE(u_int, [unsigned int]) +AC_CHECK_TYPE(u_long, [unsigned long]) + +BASH_TYPE_BITS16_T +BASH_TYPE_U_BITS16_T +BASH_TYPE_BITS32_T +BASH_TYPE_U_BITS32_T +BASH_TYPE_BITS64_T + +BASH_TYPE_PTRDIFF_T + +dnl structures +AC_HEADER_STAT + +dnl system services +AC_SYS_INTERPRETER +if test $ac_cv_sys_interpreter = yes; then +AC_DEFINE(HAVE_HASH_BANG_EXEC) +fi + +dnl Miscellaneous Bash tests +if test "$ac_cv_func_lstat" = "no"; then +BASH_FUNC_LSTAT +fi + +dnl behavior of system calls and library functions +BASH_FUNC_CTYPE_NONASCII +BASH_FUNC_DUP2_CLOEXEC_CHECK +BASH_SYS_PGRP_SYNC +BASH_SYS_SIGNAL_VINTAGE + +dnl checking for the presence of certain library symbols +BASH_SYS_ERRLIST +BASH_SYS_SIGLIST +BASH_UNDER_SYS_SIGLIST + +dnl various system types +BASH_TYPE_SIGHANDLER +BASH_CHECK_TYPE(clock_t, [#include ], long) +BASH_CHECK_TYPE(sigset_t, [#include ], int) +BASH_CHECK_TYPE(quad_t, , long, HAVE_QUAD_T) +BASH_CHECK_TYPE(intmax_t, , $bash_cv_type_long_long) +BASH_CHECK_TYPE(uintmax_t, , $bash_cv_type_unsigned_long_long) +if test "$ac_cv_header_sys_socket_h" = "yes"; then +BASH_CHECK_TYPE(socklen_t, [#include ], int, HAVE_SOCKLEN_T) +fi +BASH_TYPE_RLIMIT + +dnl presence and contents of structures used by system calls +BASH_STRUCT_TERMIOS_LDISC +BASH_STRUCT_TERMIO_LDISC +BASH_STRUCT_DIRENT_D_INO +BASH_STRUCT_DIRENT_D_FILENO +BASH_STRUCT_DIRENT_D_NAMLEN +BASH_STRUCT_WINSIZE +BASH_STRUCT_TIMEVAL +AC_CHECK_MEMBERS([struct stat.st_blocks]) +AC_STRUCT_TM +AC_STRUCT_TIMEZONE +BASH_STRUCT_TIMEZONE + +dnl presence and behavior of C library functions +BASH_FUNC_STRSIGNAL +BASH_FUNC_OPENDIR_CHECK +BASH_FUNC_ULIMIT_MAXFDS +BASH_FUNC_FPURGE +BASH_FUNC_GETENV +if test "$ac_cv_func_getcwd" = "yes"; then +BASH_FUNC_GETCWD +fi +BASH_FUNC_POSIX_SETJMP +BASH_FUNC_STRCOLL + +dnl If putenv or unsetenv is not present, set the right define so the +dnl prototype and declaration in lib/sh/getenv.c will be standard-conformant + +if test "$ac_cv_func_putenv" = "yes"; then +BASH_FUNC_STD_PUTENV +else +AC_DEFINE(HAVE_STD_PUTENV) +fi +if test "$ac_cv_func_unsetenv" = "yes"; then +BASH_FUNC_STD_UNSETENV +else +AC_DEFINE(HAVE_STD_UNSETENV) +fi + +BASH_FUNC_PRINTF_A_FORMAT + +dnl presence and behavior of OS functions +BASH_SYS_REINSTALL_SIGHANDLERS +BASH_SYS_JOB_CONTROL_MISSING +BASH_SYS_NAMED_PIPES + +dnl presence of certain CPP defines +AC_HEADER_TIOCGWINSZ +BASH_HAVE_TIOCSTAT +BASH_HAVE_FIONREAD + +BASH_CHECK_WCONTINUED + +dnl miscellaneous +BASH_CHECK_SPEED_T +BASH_CHECK_GETPW_FUNCS +BASH_CHECK_RTSIGS +BASH_CHECK_SYS_SIGLIST + +dnl special checks +case "$host_os" in +hpux*) BASH_CHECK_KERNEL_RLIMIT ;; +esac + +if test "$opt_readline" = yes; then +dnl yuck +case "$host_os" in +aix*) prefer_curses=yes ;; +esac +BASH_CHECK_LIB_TERMCAP +fi +AC_SUBST(TERMCAP_LIB) +AC_SUBST(TERMCAP_DEP) + +BASH_CHECK_DEV_FD +BASH_CHECK_DEV_STDIN +BASH_SYS_DEFAULT_MAIL_DIR + +if test "$bash_cv_job_control_missing" = missing; then + opt_job_control=no +fi + +if test "$opt_job_control" = yes; then +AC_DEFINE(JOB_CONTROL) +JOBS_O=jobs.o +else +JOBS_O=nojobs.o +fi + +AC_SUBST(JOBS_O) + +dnl Defines that we want to propagate to the Makefiles in subdirectories, +dnl like glob and readline + +LOCAL_DEFS=-DSHELL + +dnl use this section to possibly define more cpp variables, specify local +dnl libraries, and specify any additional local cc or ld flags +dnl +dnl this should really go away someday + +case "${host_os}" in +sysv4.2*) AC_DEFINE(SVR4_2) + AC_DEFINE(SVR4) ;; +sysv4*) AC_DEFINE(SVR4) ;; +sysv5*) AC_DEFINE(SVR5) ;; +hpux9*) LOCAL_CFLAGS="-DHPUX9 -DHPUX" ;; +hpux*) LOCAL_CFLAGS=-DHPUX ;; +dgux*) LOCAL_CFLAGS=-D_DGUX_SOURCE; LOCAL_LIBS=-ldgc ;; +isc*) LOCAL_CFLAGS=-Disc386 ;; +rhapsody*) LOCAL_CFLAGS=-DRHAPSODY ;; +darwin*) LOCAL_CFLAGS=-DMACOSX ;; +sco3.2v5*) LOCAL_CFLAGS="-b elf -DWAITPID_BROKEN -DPATH_MAX=1024" ;; +sco3.2v4*) LOCAL_CFLAGS="-DMUST_UNBLOCK_CHLD -DPATH_MAX=1024" ;; +sco3.2*) LOCAL_CFLAGS=-DMUST_UNBLOCK_CHLD ;; +sunos4*) LOCAL_CFLAGS=-DSunOS4 ;; +solaris2.5*) LOCAL_CFLAGS="-DSunOS5 -DSOLARIS" ;; +solaris2.8*) LOCAL_CFLAGS=-DSOLARIS ;; +solaris2.9*) LOCAL_CFLAGS=-DSOLARIS ;; +solaris2.10*) LOCAL_CFLAGS=-DSOLARIS ;; +solaris2*) LOCAL_CFLAGS=-DSOLARIS ;; +lynxos*) LOCAL_CFLAGS=-DRECYCLES_PIDS ;; +linux*) LOCAL_LDFLAGS=-rdynamic # allow dynamic loading + case "`uname -r`" in + 2.[[456789]]*|3*) AC_DEFINE(PGRP_PIPE) ;; + esac ;; +*qnx6*) LOCAL_CFLAGS="-Dqnx -Dqnx6" LOCAL_LIBS="-lncurses" ;; +*qnx*) LOCAL_CFLAGS="-Dqnx -F -3s" LOCAL_LDFLAGS="-3s" LOCAL_LIBS="-lunix -lncurses" ;; +powerux*) LOCAL_LIBS="-lgen" ;; +cygwin*) LOCAL_CFLAGS=-DRECYCLES_PIDS ;; +opennt*|interix*) LOCAL_CFLAGS="-DNO_MAIN_ENV_ARG -DBROKEN_DIRENT_D_INO -D_POSIX_SOURCE" ;; +esac + +dnl Stanza for OS/compiler pair-specific flags +case "${host_os}-${CC}" in +aix4.2*-*gcc*) LOCAL_LDFLAGS="-Xlinker -bexpall -Xlinker -brtl" ;; +aix4.2*) LOCAL_LDFLAGS="-bexpall -brtl" ;; +bsdi4*-*gcc*) LOCAL_LDFLAGS="-rdynamic" ;; # allow dynamic loading, like Linux +esac + +dnl FreeBSD-3.x can have either a.out or ELF +case "${host_os}" in +freebsd[[3-9]]*) + if test -x /usr/bin/objformat && test "`/usr/bin/objformat`" = "elf" ; then + LOCAL_LDFLAGS=-rdynamic # allow dynamic loading + fi ;; +freebsdelf*) LOCAL_LDFLAGS=-rdynamic ;; # allow dynamic loading +dragonfly*) LOCAL_LDFLAGS=-rdynamic ;; # allow dynamic loading +esac + +case "$host_cpu" in +*cray*) LOCAL_CFLAGS="-DCRAY" ;; # shell var so config.h can use it +esac + +case "$host_cpu-$host_os" in +ibmrt-*bsd4*) LOCAL_CFLAGS="-ma -U__STDC__" ;; +esac + +case "$host_cpu-$host_vendor-$host_os" in +m88k-motorola-sysv3) LOCAL_CFLAGS=-DWAITPID_BROKEN ;; +mips-pyramid-sysv4) LOCAL_CFLAGS=-Xa ;; +esac + +# +# Shared object configuration section. These values are generated by +# ${srcdir}/support/shobj-conf +# +if test "$ac_cv_func_dlopen" = "yes" && test -f ${srcdir}/support/shobj-conf +then + AC_MSG_CHECKING(shared object configuration for loadable builtins) + eval `${CONFIG_SHELL-/bin/sh} ${srcdir}/support/shobj-conf -C "${CC}" -c "${host_cpu}" -o "${host_os}" -v "${host_vendor}"` + AC_SUBST(SHOBJ_CC) + AC_SUBST(SHOBJ_CFLAGS) + AC_SUBST(SHOBJ_LD) + AC_SUBST(SHOBJ_LDFLAGS) + AC_SUBST(SHOBJ_XLDFLAGS) + AC_SUBST(SHOBJ_LIBS) + AC_SUBST(SHOBJ_STATUS) + AC_MSG_RESULT($SHOBJ_STATUS) +fi + +# try to create a directory tree if the source is elsewhere +# this should be packaged into a script accessible via ${srcdir}/support +case "$srcdir" in +.) ;; +*) for d in doc tests support lib examples; do # dirs + test -d $d || mkdir $d + done + for ld in readline glob tilde malloc sh termcap; do # libdirs + test -d lib/$ld || mkdir lib/$ld + done + test -d examples/loadables || mkdir examples/loadables # loadable builtins + test -d examples/loadables/perl || mkdir examples/loadables/perl + ;; +esac + +BUILD_DIR=`pwd` +case "$BUILD_DIR" in +*\ *) BUILD_DIR=`echo "$BUILD_DIR" | sed 's: :\\\\ :g'` ;; +*) ;; +esac + +if test -z "$localedir"; then + localedir='${datarootdir}/locale' +fi +if test -z "$datarootdir"; then + datarootdir='${prefix}/share' +fi + +AC_SUBST(PROFILE_FLAGS) + +AC_SUBST(incdir) +AC_SUBST(BUILD_DIR) + +# Some versions of autoconf don't substitute these automatically +AC_SUBST(datarootdir) +AC_SUBST(localedir) + +AC_SUBST(YACC) +AC_SUBST(AR) +AC_SUBST(ARFLAGS) + +AC_SUBST(BASHVERS) +AC_SUBST(RELSTATUS) +AC_SUBST(DEBUG) +AC_SUBST(MALLOC_DEBUG) + +AC_SUBST(host_cpu) +AC_SUBST(host_vendor) +AC_SUBST(host_os) + +AC_SUBST(LOCAL_LIBS) +AC_SUBST(LOCAL_CFLAGS) +AC_SUBST(LOCAL_LDFLAGS) +AC_SUBST(LOCAL_DEFS) + +#AC_SUBST(ALLOCA_SOURCE) +#AC_SUBST(ALLOCA_OBJECT) + +AC_OUTPUT([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], +[ +# Makefile uses this timestamp file to record whether config.h is up to date. +echo timestamp > stamp-h +]) diff --git a/configure.in.orig b/configure.in.orig new file mode 100644 index 00000000..6f3012ef --- /dev/null +++ b/configure.in.orig @@ -0,0 +1,1145 @@ +dnl +dnl Configure script for bash-4.0 +dnl +dnl report bugs to chet@po.cwru.edu +dnl +dnl Process this file with autoconf to produce a configure script. + +# Copyright (C) 1987-2009 Free Software Foundation, Inc. + +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +AC_REVISION([for Bash 4.0, version 4.013])dnl + +define(bashvers, 4.0) +define(relstatus, release) + +AC_INIT([bash], bashvers-relstatus, [bug-bash@gnu.org]) + +dnl make sure we are using a recent autoconf version +AC_PREREQ(2.50) + +AC_CONFIG_SRCDIR(shell.h) +dnl where to find install.sh, config.sub, and config.guess +AC_CONFIG_AUX_DIR(./support) +AC_CONFIG_HEADERS(config.h) + +dnl checks for version info +BASHVERS=bashvers +RELSTATUS=relstatus + +dnl defaults for debug settings +case "$RELSTATUS" in +alp*|bet*|dev*|rc*|maint*) DEBUG='-DDEBUG' MALLOC_DEBUG='-DMALLOC_DEBUG' ;; +*) DEBUG= MALLOC_DEBUG= ;; +esac + +dnl canonicalize the host and os so we can do some tricky things before +dnl parsing options +AC_CANONICAL_HOST + +dnl configure defaults +opt_bash_malloc=yes +opt_purify=no +opt_purecov=no +opt_afs=no +opt_curses=no +opt_with_installed_readline=no + +#htmldir= + +dnl some systems should be configured without the bash malloc by default +dnl and some need a special compiler or loader +dnl look in the NOTES file for more +case "${host_cpu}-${host_os}" in +alpha*-*) opt_bash_malloc=no ;; # alpha running osf/1 or linux +*[[Cc]]ray*-*) opt_bash_malloc=no ;; # Crays +*-osf1*) opt_bash_malloc=no ;; # other osf/1 machines +sparc-svr4*) opt_bash_malloc=no ;; # sparc SVR4, SVR4.2 +sparc-netbsd*) opt_bash_malloc=no ;; # needs 8-byte alignment +mips-irix6*) opt_bash_malloc=no ;; # needs 8-byte alignment +m68k-sysv) opt_bash_malloc=no ;; # fixes file descriptor leak in closedir +sparc-linux*) opt_bash_malloc=no ;; # sparc running linux; requires ELF +#*-freebsd*-gnu) opt_bash_malloc=no ;; # there's some undetermined problem here +#*-freebsd*) opt_bash_malloc=no ;; # they claim it's better; I disagree +*-openbsd*) opt_bash_malloc=no ;; # they claim it needs eight-bit alignment +*-aix*) opt_bash_malloc=no ;; # AIX machines +*-nextstep*) opt_bash_malloc=no ;; # NeXT machines running NeXTstep +*-macos*) opt_bash_malloc=no ;; # Apple MacOS X +*-rhapsody*) opt_bash_malloc=no ;; # Apple Rhapsody (MacOS X) +*-darwin*) opt_bash_malloc=no ;; # Apple Darwin (MacOS X) +*-dgux*) opt_bash_malloc=no ;; # DG/UX machines +*-qnx*) opt_bash_malloc=no ;; # QNX 4.2, QNX 6.x +*-machten4) opt_bash_malloc=no ;; # MachTen 4.x +*-bsdi2.1|*-bsdi3.?) opt_bash_malloc=no ; : ${CC:=shlicc2} ;; # for loadable builtins +*-beos*) opt_bash_malloc=no ;; # they say it's suitable +*-cygwin*) opt_bash_malloc=no ;; # Cygnus's CYGWIN environment +*-opennt*|*-interix*) opt_bash_malloc=no ;; # Interix, now owned by Microsoft +esac + +# memory scrambling on free() +case "${host_os}" in +sco3.2v5*|sco3.2v4*) opt_memscramble=no ;; +*) opt_memscramble=yes ;; +esac + +dnl +dnl macros for the bash debugger +dnl +AM_PATH_LISPDIR +AC_ARG_VAR(DEBUGGER_START_FILE, [location of bash debugger initialization file]) + +dnl arguments to configure +dnl packages +AC_ARG_WITH(afs, AC_HELP_STRING([--with-afs], [if you are running AFS]), opt_afs=$withval) +AC_ARG_WITH(bash-malloc, AC_HELP_STRING([--with-bash-malloc], [use the Bash version of malloc]), opt_bash_malloc=$withval) +AC_ARG_WITH(curses, AC_HELP_STRING([--with-curses], [use the curses library instead of the termcap library]), opt_curses=$withval) +AC_ARG_WITH(gnu-malloc, AC_HELP_STRING([--with-gnu-malloc], [synonym for --with-bash-malloc]), opt_bash_malloc=$withval) +AC_ARG_WITH(installed-readline, AC_HELP_STRING([--with-installed-readline], [use a version of the readline library that is already installed]), opt_with_installed_readline=$withval) +AC_ARG_WITH(purecov, AC_HELP_STRING([--with-purecov], [configure to postprocess with pure coverage]), opt_purecov=$withval) +AC_ARG_WITH(purify, AC_HELP_STRING([--with-purify], [configure to postprocess with purify]), opt_purify=$withval) + +if test "$opt_bash_malloc" = yes; then + MALLOC_TARGET=malloc + MALLOC_SRC=malloc.c + + MALLOC_LIB='-lmalloc' + MALLOC_LIBRARY='$(ALLOC_LIBDIR)/libmalloc.a' + MALLOC_LDFLAGS='-L$(ALLOC_LIBDIR)' + MALLOC_DEP='$(MALLOC_LIBRARY)' + + AC_DEFINE(USING_BASH_MALLOC) +else + MALLOC_LIB= + MALLOC_LIBRARY= + MALLOC_LDFLAGS= + MALLOC_DEP= +fi + +if test "$opt_purify" = yes; then + PURIFY="purify " + AC_DEFINE(DISABLE_MALLOC_WRAPPERS) +else + PURIFY= +fi + +if test "$opt_purecov" = yes; then + PURIFY="${PURIFY}purecov" +fi + +if test "$opt_afs" = yes; then + AC_DEFINE(AFS) +fi + +if test "$opt_curses" = yes; then + prefer_curses=yes +fi + +if test -z "${DEBUGGER_START_FILE}"; then + DEBUGGER_START_FILE='${datadir}/bashdb/bashdb-main.inc' +fi + +dnl optional shell features in config.h.in +opt_minimal_config=no + +opt_job_control=yes +opt_alias=yes +opt_readline=yes +opt_history=yes +opt_bang_history=yes +opt_dirstack=yes +opt_restricted=yes +opt_process_subst=yes +opt_prompt_decoding=yes +opt_select=yes +opt_help=yes +opt_array_variables=yes +opt_dparen_arith=yes +opt_extended_glob=yes +opt_brace_expansion=yes +opt_disabled_builtins=no +opt_command_timing=yes +opt_xpg_echo=no +opt_strict_posix=no +opt_cond_command=yes +opt_cond_regexp=yes +opt_coproc=yes +opt_arith_for_command=yes +opt_net_redirs=yes +opt_progcomp=yes +opt_separate_help=no +opt_multibyte=yes +opt_debugger=yes +opt_single_longdoc_strings=yes +opt_casemod_attrs=yes +opt_casemod_expansions=yes + +dnl options that affect how bash is compiled and linked +opt_static_link=no +opt_profiling=no + +dnl argument parsing for optional features +AC_ARG_ENABLE(minimal-config, AC_HELP_STRING([--enable-minimal-config], [a minimal sh-like configuration]), opt_minimal_config=$enableval) + +dnl a minimal configuration turns everything off, but features can be +dnl added individually +if test $opt_minimal_config = yes; then + opt_job_control=no opt_alias=no opt_readline=no + opt_history=no opt_bang_history=no opt_dirstack=no + opt_restricted=no opt_process_subst=no opt_prompt_decoding=no + opt_select=no opt_help=no opt_array_variables=no opt_dparen_arith=no + opt_brace_expansion=no opt_disabled_builtins=no opt_command_timing=no + opt_extended_glob=no opt_cond_command=no opt_arith_for_command=no + opt_net_redirs=no opt_progcomp=no opt_separate_help=no + opt_multibyte=yes opt_cond_regexp=no opt_coproc=no + opt_casemod_attrs=no opt_casemod_expansions=no +fi + +AC_ARG_ENABLE(alias, AC_HELP_STRING([--enable-alias], [enable shell aliases]), opt_alias=$enableval) +AC_ARG_ENABLE(arith-for-command, AC_HELP_STRING([--enable-arith-for-command], [enable arithmetic for command]), opt_arith_for_command=$enableval) +AC_ARG_ENABLE(array-variables, AC_HELP_STRING([--enable-array-variables], [include shell array variables]), opt_array_variables=$enableval) +AC_ARG_ENABLE(bang-history, AC_HELP_STRING([--enable-bang-history], [turn on csh-style history substitution]), opt_bang_history=$enableval) +AC_ARG_ENABLE(brace-expansion, AC_HELP_STRING([--enable-brace-expansion], [include brace expansion]), opt_brace_expansion=$enableval) +AC_ARG_ENABLE(casemod-attributes, AC_HELP_STRING([--enable-casemod-attributes], [include case-modifying variable attributes]), opt_casemod_attrs=$enableval) +AC_ARG_ENABLE(casemod-expansions, AC_HELP_STRING([--enable-casemod-expansions], [include case-modifying word expansions]), opt_casemod_expansions=$enableval) +AC_ARG_ENABLE(command-timing, AC_HELP_STRING([--enable-command-timing], [enable the time reserved word and command timing]), opt_command_timing=$enableval) +AC_ARG_ENABLE(cond-command, AC_HELP_STRING([--enable-cond-command], [enable the conditional command]), opt_cond_command=$enableval) +AC_ARG_ENABLE(cond-regexp, AC_HELP_STRING([--enable-cond-regexp], [enable extended regular expression matching in conditional commands]), opt_cond_regexp=$enableval) +AC_ARG_ENABLE(coprocesses, AC_HELP_STRING([--enable-coprocesses], [enable coprocess support and the coproc reserved word]), opt_coproc=$enableval) +AC_ARG_ENABLE(debugger, AC_HELP_STRING([--enable-debugger], [enable support for bash debugger]), opt_debugger=$enableval) +AC_ARG_ENABLE(directory-stack, AC_HELP_STRING([--enable-directory-stack], [enable builtins pushd/popd/dirs]), opt_dirstack=$enableval) +AC_ARG_ENABLE(disabled-builtins, AC_HELP_STRING([--enable-disabled-builtins], [allow disabled builtins to still be invoked]), opt_disabled_builtins=$enableval) +AC_ARG_ENABLE(dparen-arithmetic, AC_HELP_STRING([--enable-dparen-arithmetic], [include ((...)) command]), opt_dparen_arith=$enableval) +AC_ARG_ENABLE(extended-glob, AC_HELP_STRING([--enable-extended-glob], [include ksh-style extended pattern matching]), opt_extended_glob=$enableval) +AC_ARG_ENABLE(help-builtin, AC_HELP_STRING([--enable-help-builtin], [include the help builtin]), opt_help=$enableval) +AC_ARG_ENABLE(history, AC_HELP_STRING([--enable-history], [turn on command history]), opt_history=$enableval) +AC_ARG_ENABLE(job-control, AC_HELP_STRING([--enable-job-control], [enable job control features]), opt_job_control=$enableval) +AC_ARG_ENABLE(multibyte, AC_HELP_STRING([--enable-multibyte], [enable multibyte characters if OS supports them]), opt_multibyte=$enableval) +AC_ARG_ENABLE(net-redirections, AC_HELP_STRING([--enable-net-redirections], [enable /dev/tcp/host/port redirection]), opt_net_redirs=$enableval) +AC_ARG_ENABLE(process-substitution, AC_HELP_STRING([--enable-process-substitution], [enable process substitution]), opt_process_subst=$enableval) +AC_ARG_ENABLE(progcomp, AC_HELP_STRING([--enable-progcomp], [enable programmable completion and the complete builtin]), opt_progcomp=$enableval) +AC_ARG_ENABLE(prompt-string-decoding, AC_HELP_STRING([--enable-prompt-string-decoding], [turn on escape character decoding in prompts]), opt_prompt_decoding=$enableval) +AC_ARG_ENABLE(readline, AC_HELP_STRING([--enable-readline], [turn on command line editing]), opt_readline=$enableval) +AC_ARG_ENABLE(restricted, AC_HELP_STRING([--enable-restricted], [enable a restricted shell]), opt_restricted=$enableval) +AC_ARG_ENABLE(select, AC_HELP_STRING([--enable-select], [include select command]), opt_select=$enableval) +AC_ARG_ENABLE(separate-helpfiles, AC_HELP_STRING([--enable-separate-helpfiles], [use external files for help builtin documentation]), opt_separate_help=$enableval) +AC_ARG_ENABLE(single-help-strings, AC_HELP_STRING([--enable-single-help-strings], [store help documentation as a single string to ease translation]), opt_single_longdoc_strings=$enableval) +AC_ARG_ENABLE(strict-posix-default, AC_HELP_STRING([--enable-strict-posix-default], [configure bash to be posix-conformant by default]), opt_strict_posix=$enableval) +AC_ARG_ENABLE(usg-echo-default, AC_HELP_STRING([--enable-usg-echo-default], [a synonym for --enable-xpg-echo-default]), opt_xpg_echo=$enableval) +AC_ARG_ENABLE(xpg-echo-default, AC_HELP_STRING([--enable-xpg-echo-default], [make the echo builtin expand escape sequences by default]), opt_xpg_echo=$enableval) + +dnl options that alter how bash is compiled and linked +AC_ARG_ENABLE(mem-scramble, AC_HELP_STRING([--enable-mem-scramble], [scramble memory on calls to malloc and free]), opt_memscramble=$enableval) +AC_ARG_ENABLE(profiling, AC_HELP_STRING([--enable-profiling], [allow profiling with gprof]), opt_profiling=$enableval) +AC_ARG_ENABLE(static-link, AC_HELP_STRING([--enable-static-link], [link bash statically, for use as a root shell]), opt_static_link=$enableval) + +dnl opt_job_control is handled later, after BASH_JOB_CONTROL_MISSING runs + +dnl opt_readline and opt_history are handled later, because AC_PROG_CC needs +dnl to be run before we can check the version of an already-installed readline +dnl library + +if test $opt_alias = yes; then +AC_DEFINE(ALIAS) +fi +if test $opt_dirstack = yes; then +AC_DEFINE(PUSHD_AND_POPD) +fi +if test $opt_restricted = yes; then +AC_DEFINE(RESTRICTED_SHELL) +fi +if test $opt_process_subst = yes; then +AC_DEFINE(PROCESS_SUBSTITUTION) +fi +if test $opt_prompt_decoding = yes; then +AC_DEFINE(PROMPT_STRING_DECODE) +fi +if test $opt_select = yes; then +AC_DEFINE(SELECT_COMMAND) +fi +if test $opt_help = yes; then +AC_DEFINE(HELP_BUILTIN) +fi +if test $opt_array_variables = yes; then +AC_DEFINE(ARRAY_VARS) +fi +if test $opt_dparen_arith = yes; then +AC_DEFINE(DPAREN_ARITHMETIC) +fi +if test $opt_brace_expansion = yes; then +AC_DEFINE(BRACE_EXPANSION) +fi +if test $opt_disabled_builtins = yes; then +AC_DEFINE(DISABLED_BUILTINS) +fi +if test $opt_command_timing = yes; then +AC_DEFINE(COMMAND_TIMING) +fi +if test $opt_xpg_echo = yes ; then +AC_DEFINE(DEFAULT_ECHO_TO_XPG) +fi +if test $opt_strict_posix = yes; then +AC_DEFINE(STRICT_POSIX) +fi +if test $opt_extended_glob = yes ; then +AC_DEFINE(EXTENDED_GLOB) +fi +if test $opt_cond_command = yes ; then +AC_DEFINE(COND_COMMAND) +fi +if test $opt_cond_regexp = yes ; then +AC_DEFINE(COND_REGEXP) +fi +if test $opt_coproc = yes; then +AC_DEFINE(COPROCESS_SUPPORT) +fi +if test $opt_arith_for_command = yes; then +AC_DEFINE(ARITH_FOR_COMMAND) +fi +if test $opt_net_redirs = yes; then +AC_DEFINE(NETWORK_REDIRECTIONS) +fi +if test $opt_progcomp = yes; then +AC_DEFINE(PROGRAMMABLE_COMPLETION) +fi +if test $opt_multibyte = no; then +AC_DEFINE(NO_MULTIBYTE_SUPPORT) +fi +if test $opt_debugger = yes; then +AC_DEFINE(DEBUGGER) +fi +if test $opt_casemod_attrs = yes; then +AC_DEFINE(CASEMOD_ATTRS) +fi +if test $opt_casemod_expansions = yes; then +AC_DEFINE(CASEMOD_EXPANSIONS) +fi + +if test $opt_memscramble = yes; then +AC_DEFINE(MEMSCRAMBLE) +fi + +if test "$opt_minimal_config" = yes; then + TESTSCRIPT=run-minimal +else + TESTSCRIPT=run-all +fi + +HELPDIR= HELPDIRDEFINE= HELPINSTALL= +if test "$opt_separate_help" != no; then + if test "$opt_separate_help" = "yes" ; then + HELPDIR='${datadir}/bash' + else + HELPDIR=$opt_separate_help + fi + HELPDIRDEFINE='-H ${HELPDIR}' + HELPINSTALL='install-help' +fi +HELPSTRINGS= +if test "$opt_single_longdoc_strings" != "yes"; then + HELPSTRINGS='-S' +fi + +dnl now substitute in the values generated by arguments +AC_SUBST(TESTSCRIPT) +AC_SUBST(PURIFY) +AC_SUBST(MALLOC_TARGET) +AC_SUBST(MALLOC_SRC) + +AC_SUBST(MALLOC_LIB) +AC_SUBST(MALLOC_LIBRARY) +AC_SUBST(MALLOC_LDFLAGS) +AC_SUBST(MALLOC_DEP) + +AC_SUBST(htmldir) + +AC_SUBST(HELPDIR) +AC_SUBST(HELPDIRDEFINE) +AC_SUBST(HELPINSTALL) +AC_SUBST(HELPSTRINGS) + +echo "" +echo "Beginning configuration for bash-$BASHVERS-$RELSTATUS for ${host_cpu}-${host_vendor}-${host_os}" +echo "" + +dnl compilation checks +dnl AC_PROG_CC sets $cross_compiling to `yes' if cross-compiling for a +dnl different environment +AC_PROG_CC + +dnl test for Unix variants +AC_ISC_POSIX +AC_MINIX + +AC_SYS_LARGEFILE + +dnl BEGIN changes for cross-building (currently cygwin, minGW, and +dnl (obsolete) BeOS) + +SIGNAMES_O= +SIGNAMES_H=lsignames.h + +dnl load up the cross-building cache file -- add more cases and cache +dnl files as necessary + +dnl Note that host and target machine are the same, and different than the +dnl build machine. +dnl Set SIGNAMES_H based on whether or not we're cross-compiling. + +CROSS_COMPILE= +if test "x$cross_compiling" = "xyes"; then + case "${host}" in + *-cygwin*) + cross_cache=${srcdir}/cross-build/cygwin32.cache + ;; + *-mingw*) + cross_cache=${srcdir}/cross-build/cygwin32.cache + ;; + i[[3456]]86-*-beos*) + cross_cache=${srcdir}/cross-build/x86-beos.cache + ;; + *) echo "configure: cross-compiling for $host is not supported" >&2 + ;; + esac + if test -n "${cross_cache}" && test -r "${cross_cache}"; then + echo "loading cross-build cache file ${cross_cache}" + . ${cross_cache} + fi + unset cross_cache + SIGNAMES_O='signames.o' + CROSS_COMPILE='-DCROSS_COMPILING' + AC_SUBST(CROSS_COMPILE) +fi +AC_SUBST(SIGNAMES_H) +AC_SUBST(SIGNAMES_O) + +if test -z "$CC_FOR_BUILD"; then + if test "x$cross_compiling" = "xno"; then + CC_FOR_BUILD='$(CC)' + else + CC_FOR_BUILD=gcc + fi +fi +AC_SUBST(CC_FOR_BUILD) + +dnl END changes for cross-building + +dnl We want these before the checks, so the checks can modify their values. +test -z "$CFLAGS" && CFLAGS=-g auto_cflags=1 + +dnl If we're using gcc and the user hasn't specified CFLAGS, add -O2 to CFLAGS. +test -n "$GCC" && test -n "$auto_cflags" && CFLAGS="$CFLAGS -O2" + +dnl handle options that alter how bash is compiled and linked +dnl these must come after the test for cc/gcc +if test "$opt_profiling" = "yes"; then + PROFILE_FLAGS=-pg + case "$host_os" in + solaris2*) ;; + *) opt_static_link=yes ;; + esac + DEBUG= MALLOC_DEBUG= +fi + +if test "$opt_static_link" = yes; then + # if we're using gcc, add `-static' to LDFLAGS, except on Solaris >= 2 + if test -n "$GCC" || test "$ac_cv_prog_gcc" = "yes"; then + STATIC_LD="-static" + case "$host_os" in + solaris2*) ;; + *) LDFLAGS="$LDFLAGS -static" ;; # XXX experimental + esac + fi +fi + +if test "X$cross_compiling" = "Xno"; then + CPPFLAGS_FOR_BUILD=${CPPFLAGS_FOR_BUILD-"$CPPFLAGS"} + LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-'$(LDFLAGS)'} +else + CPPFLAGS_FOR_BUILD=${CPPFLAGS_FOR_BUILD-""} + LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-""} +fi + +test -z "$CFLAGS_FOR_BUILD" && CFLAGS_FOR_BUILD="-g" + +AC_SUBST(CFLAGS) +AC_SUBST(CPPFLAGS) +AC_SUBST(LDFLAGS) +AC_SUBST(STATIC_LD) + +AC_SUBST(CFLAGS_FOR_BUILD) +AC_SUBST(CPPFLAGS_FOR_BUILD) +AC_SUBST(LDFLAGS_FOR_BUILD) + +AC_PROG_GCC_TRADITIONAL + +dnl BEGIN READLINE and HISTORY LIBRARY SECTION +dnl prepare to allow bash to be linked against an already-installed readline + +dnl first test that the readline version is new enough to link bash against +if test "$opt_readline" = yes && test "$opt_with_installed_readline" != "no" +then + # If the user specified --with-installed-readline=PREFIX and PREFIX + # is not `yes', set ac_cv_rl_prefix to PREFIX + test $opt_with_installed_readline != "yes" && ac_cv_rl_prefix=$opt_with_installed_readline + + RL_LIB_READLINE_VERSION + + case "$ac_cv_rl_version" in + 5*|6*|7*|8*|9*) ;; + *) opt_with_installed_readline=no + AC_MSG_WARN(installed readline library is too old to be linked with bash) + AC_MSG_WARN(using private bash version) + ;; + esac +fi + +TILDE_LIB=-ltilde +if test $opt_readline = yes; then + AC_DEFINE(READLINE) + if test "$opt_with_installed_readline" != "no" ; then + case "$opt_with_installed_readline" in + yes) RL_INCLUDE= ;; + *) case "$RL_INCLUDEDIR" in + /usr/include) ;; + *) RL_INCLUDE='-I${RL_INCLUDEDIR}' ;; + esac + ;; + esac + READLINE_DEP= + READLINE_LIB=-lreadline + # section for OS versions that don't allow unresolved symbols + # to be compiled into dynamic libraries. + case "$host_os" in + cygwin*) TILDE_LIB= ;; + esac + else + RL_LIBDIR='$(dot)/$(LIBSUBDIR)/readline' + READLINE_DEP='$(READLINE_LIBRARY)' + # section for OS versions that ship an older/broken version of + # readline as a standard dynamic library and don't allow a + # static version specified as -llibname to override the + # dynamic version + case "${host_os}" in + darwin[[89]]*|darwin10*) READLINE_LIB='${READLINE_LIBRARY}' ;; + *) READLINE_LIB=-lreadline ;; + esac + fi +else + RL_LIBDIR='$(dot)/$(LIBSUBDIR)/readline' + READLINE_LIB= READLINE_DEP= +fi +if test $opt_history = yes || test $opt_bang_history = yes; then + if test $opt_history = yes; then + AC_DEFINE(HISTORY) + fi + if test $opt_bang_history = yes; then + AC_DEFINE(BANG_HISTORY) + fi + if test "$opt_with_installed_readline" != "no"; then + HIST_LIBDIR=$RL_LIBDIR + HISTORY_DEP= + HISTORY_LIB=-lhistory + case "$opt_with_installed_readline" in + yes) RL_INCLUDE= ;; + *) case "$RL_INCLUDEDIR" in + /usr/include) ;; + *) RL_INCLUDE='-I${RL_INCLUDEDIR}' ;; + esac + ;; + esac + else + HIST_LIBDIR='$(dot)/$(LIBSUBDIR)/readline' + HISTORY_DEP='$(HISTORY_LIBRARY)' + # section for OS versions that ship an older version of + # readline as a standard dynamic library and don't allow a + # static version specified as -llibname to override the + # dynamic version + case "${host_os}" in + darwin[[89]]*|darwin10*) HISTORY_LIB='${HISTORY_LIBRARY}' ;; + *) HISTORY_LIB=-lhistory ;; + esac + fi +else + HIST_LIBDIR='$(dot)/$(LIBSUBDIR)/readline' + HISTORY_LIB= HISTORY_DEP= +fi +AC_SUBST(READLINE_LIB) +AC_SUBST(READLINE_DEP) +AC_SUBST(RL_LIBDIR) +AC_SUBST(RL_INCLUDEDIR) +AC_SUBST(RL_INCLUDE) +AC_SUBST(HISTORY_LIB) +AC_SUBST(HISTORY_DEP) +AC_SUBST(HIST_LIBDIR) +AC_SUBST(TILDE_LIB) + +dnl END READLINE and HISTORY LIBRARY SECTION + +dnl programs needed by the build and install process +AC_PROG_INSTALL +AC_CHECK_PROG(AR, ar, , ar) +dnl Set default for ARFLAGS, since autoconf does not have a macro for it. +dnl This allows people to set it when running configure or make +test -n "$ARFLAGS" || ARFLAGS="cr" +AC_PROG_RANLIB +AC_PROG_YACC +AC_PROG_MAKE_SET + +case "$host_os" in +opennt*|interix*) MAKE_SHELL="$INTERIX_ROOT/bin/sh" ;; +*) MAKE_SHELL=/bin/sh ;; +esac +AC_SUBST(MAKE_SHELL) + +dnl this is similar to the expanded AC_PROG_RANLIB +if test x$SIZE = x; then + if test x$ac_tool_prefix = x; then + SIZE=size + else + SIZE=${ac_tool_prefix}size + save_IFS=$IFS ; IFS=: + size_found=0 + for dir in $PATH; do + if test -x $dir/$SIZE ; then + size_found=1 + break + fi + done + if test $size_found -eq 0; then + SIZE=: + fi + IFS=$save_IFS + fi +fi +AC_SUBST(SIZE) + +dnl Turn on any extensions available in the GNU C library. +AC_DEFINE(_GNU_SOURCE, 1) + +dnl C compiler characteristics +AC_C_CONST +AC_C_INLINE +AC_C_BIGENDIAN +AC_C_STRINGIZE +AC_C_LONG_DOUBLE +AC_C_PROTOTYPES +AC_C_CHAR_UNSIGNED +AC_C_VOLATILE +AC_C_RESTRICT + +dnl initialize GNU gettext +AM_GNU_GETTEXT([no-libtool], [need-ngettext], [lib/intl]) + +dnl header files +AC_HEADER_DIRENT +AC_HEADER_TIME + +BASH_HEADER_INTTYPES + +AC_CHECK_HEADERS(unistd.h stdlib.h stdarg.h varargs.h limits.h string.h \ + memory.h locale.h termcap.h termio.h termios.h dlfcn.h \ + stddef.h stdint.h netdb.h pwd.h grp.h strings.h regex.h) +AC_CHECK_HEADERS(sys/pte.h sys/stream.h sys/select.h sys/file.h \ + sys/resource.h sys/param.h sys/socket.h sys/stat.h \ + sys/time.h sys/times.h sys/types.h sys/wait.h) +AC_CHECK_HEADERS(netinet/in.h arpa/inet.h) + +dnl sys/ptem.h requires definitions from sys/stream.h on systems where it +dnl exists +AC_CHECK_HEADER(sys/ptem.h, , ,[[ +#if HAVE_SYS_STREAM_H +# include +#endif +]]) + +dnl special checks for libc functions +AC_FUNC_ALLOCA +AC_FUNC_GETPGRP +AC_FUNC_SETVBUF_REVERSED +AC_FUNC_VPRINTF +AC_FUNC_STRCOLL + +dnl if we're not using the bash malloc but require the C alloca, set things +dnl up to build a libmalloc.a containing only alloca.o + +if test "$ac_cv_func_alloca_works" = "no" && test "$opt_bash_malloc" = "no"; then + MALLOC_TARGET=alloca + MALLOC_SRC=alloca.c + + MALLOC_LIB='-lmalloc' + MALLOC_LIBRARY='$(ALLOC_LIBDIR)/libmalloc.a' + MALLOC_LDFLAGS='-L$(ALLOC_LIBDIR)' + MALLOC_DEP='$(MALLOC_LIBRARY)' +fi + +dnl if vprintf is not in libc, see if it's defined in stdio.h +if test "$ac_cv_func_vprintf" = no; then + AC_MSG_CHECKING(for declaration of vprintf in stdio.h) + AC_EGREP_HEADER([[int[ ]*vprintf[^a-zA-Z0-9]]],stdio.h,ac_cv_func_vprintf=yes) + AC_MSG_RESULT($ac_cv_func_vprintf) + if test $ac_cv_func_vprintf = yes; then + AC_DEFINE(HAVE_VPRINTF) + fi +fi + +if test "$ac_cv_func_vprintf" = no && test "$ac_cv_func__doprnt" = "yes"; then + AC_LIBOBJ(vprint) +fi + +dnl signal stuff +AC_TYPE_SIGNAL + +dnl checks for certain version-specific system calls and libc functions +AC_CHECK_FUNC(__setostype, AC_DEFINE(HAVE_SETOSTYPE)) +AC_CHECK_FUNC(wait3, AC_DEFINE(HAVE_WAIT3)) +AC_CHECK_FUNC(isinf, AC_DEFINE(HAVE_ISINF_IN_LIBC)) +AC_CHECK_FUNC(isnan, AC_DEFINE(HAVE_ISNAN_IN_LIBC)) + +dnl checks for missing libc functions +AC_CHECK_FUNC(mkfifo,AC_DEFINE(HAVE_MKFIFO),AC_DEFINE(MKFIFO_MISSING)) + +dnl checks for system calls +AC_CHECK_FUNCS(dup2 eaccess fcntl getdtablesize getgroups gethostname \ + getpagesize getpeername getrlimit getrusage gettimeofday \ + kill killpg lstat readlink sbrk select setdtablesize \ + setitimer tcgetpgrp uname ulimit waitpid) +AC_REPLACE_FUNCS(rename) + +dnl checks for c library functions +AC_CHECK_FUNCS(bcopy bzero confstr fnmatch \ + getaddrinfo gethostbyname getservbyname getservent inet_aton \ + memmove pathconf putenv raise regcomp regexec \ + setenv setlinebuf setlocale setvbuf siginterrupt strchr \ + sysconf tcgetattr times ttyname tzset unsetenv) + +AC_CHECK_FUNCS(vsnprintf snprintf vasprintf asprintf) +AC_CHECK_FUNCS(isascii isblank isgraph isprint isspace isxdigit) +AC_CHECK_FUNCS(getpwent getpwnam getpwuid) +AC_REPLACE_FUNCS(getcwd memset strcasecmp strerror strftime strnlen strpbrk strstr) +AC_REPLACE_FUNCS(strtod strtol strtoul strtoll strtoull strtoimax strtoumax) +AC_REPLACE_FUNCS(fdprintf) + +AC_CHECK_DECLS([confstr]) +AC_CHECK_DECLS([printf]) +AC_CHECK_DECLS([sbrk]) +AC_CHECK_DECLS([setregid]) +AC_CHECK_DECLS([strcpy]) +AC_CHECK_DECLS([strsignal]) + +dnl Extra test to detect the horribly broken HP/UX 11.00 strtold(3) +AC_CHECK_DECLS([strtold], [ + AC_MSG_CHECKING([for broken strtold]) + AC_CACHE_VAL(bash_cv_strtold_broken, + [AC_TRY_COMPILE( + [#include ], + [int main() { long double r; char *foo, bar; r = strtold(foo, &bar);}], + bash_cv_strtold_broken=no, bash_cv_strtold_broken=yes, + [AC_MSG_WARN(cannot check for broken strtold if cross-compiling, defaulting to no)]) + ] + ) + AC_MSG_RESULT($bash_cv_strtold_broken) + if test "$bash_cv_strtold_broken" = "yes" ; then + AC_DEFINE(STRTOLD_BROKEN) + fi +]) + + +BASH_CHECK_DECL(strtoimax) +BASH_CHECK_DECL(strtol) +BASH_CHECK_DECL(strtoll) +BASH_CHECK_DECL(strtoul) +BASH_CHECK_DECL(strtoull) +BASH_CHECK_DECL(strtoumax) + +AC_FUNC_MKTIME + +dnl +dnl Checks for lib/intl and related code (uses some of the output from +dnl AM_GNU_GETTEXT) +dnl + +AC_CHECK_HEADERS([argz.h errno.h fcntl.h malloc.h stdio_ext.h]) + +dnl AC_FUNC_MALLOC +AC_FUNC_MMAP +AC_CHECK_FUNCS([__argz_count __argz_next __argz_stringify dcgettext mempcpy \ + munmap stpcpy strcspn strdup]) + +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} -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 +dnl + +BASH_CHECK_MULTIBYTE + +dnl checks for the dynamic loading library functions in libc and libdl +if test "$opt_static_link" != yes; then +AC_CHECK_LIB(dl, dlopen) +AC_CHECK_FUNCS(dlopen dlclose dlsym) +fi + +dnl this defines HAVE_DECL_SYS_SIGLIST +AC_DECL_SYS_SIGLIST + +dnl network functions -- check for inet_aton again +if test "$ac_cv_func_inet_aton" != 'yes'; then +BASH_FUNC_INET_ATON +fi + +dnl libraries +dnl this is reportedly no longer necessary for irix[56].? +case "$host_os" in +irix4*) AC_CHECK_LIB(sun, getpwent) ;; +esac + +dnl check for getpeername in the socket library only if it's not in libc +if test "$ac_cv_func_getpeername" = no; then + BASH_CHECK_LIB_SOCKET +fi +dnl check for gethostbyname in socket libraries if it's not in libc +if test "$ac_cv_func_gethostbyname" = no; then + BASH_FUNC_GETHOSTBYNAME +fi + +dnl system types +AC_TYPE_GETGROUPS +AC_TYPE_OFF_T +AC_TYPE_MODE_T +AC_TYPE_UID_T +AC_TYPE_PID_T +AC_TYPE_SIZE_T +AC_CHECK_TYPE(ssize_t, int) +AC_CHECK_TYPE(time_t, long) + +BASH_TYPE_LONG_LONG +BASH_TYPE_UNSIGNED_LONG_LONG + +AC_TYPE_SIGNAL +BASH_TYPE_SIG_ATOMIC_T + +AC_CHECK_SIZEOF(char, 1) +AC_CHECK_SIZEOF(short, 2) +AC_CHECK_SIZEOF(int, 4) +AC_CHECK_SIZEOF(long, 4) +AC_CHECK_SIZEOF(char *, 4) +AC_CHECK_SIZEOF(double, 8) +AC_CHECK_SIZEOF([long long], 8) + +AC_CHECK_TYPE(u_int, [unsigned int]) +AC_CHECK_TYPE(u_long, [unsigned long]) + +BASH_TYPE_BITS16_T +BASH_TYPE_U_BITS16_T +BASH_TYPE_BITS32_T +BASH_TYPE_U_BITS32_T +BASH_TYPE_BITS64_T + +BASH_TYPE_PTRDIFF_T + +dnl structures +AC_HEADER_STAT + +dnl system services +AC_SYS_INTERPRETER +if test $ac_cv_sys_interpreter = yes; then +AC_DEFINE(HAVE_HASH_BANG_EXEC) +fi + +dnl Miscellaneous Bash tests +if test "$ac_cv_func_lstat" = "no"; then +BASH_FUNC_LSTAT +fi + +dnl behavior of system calls and library functions +BASH_FUNC_CTYPE_NONASCII +BASH_FUNC_DUP2_CLOEXEC_CHECK +BASH_SYS_PGRP_SYNC +BASH_SYS_SIGNAL_VINTAGE + +dnl checking for the presence of certain library symbols +BASH_SYS_ERRLIST +BASH_SYS_SIGLIST +BASH_UNDER_SYS_SIGLIST + +dnl various system types +BASH_TYPE_SIGHANDLER +BASH_CHECK_TYPE(clock_t, [#include ], long) +BASH_CHECK_TYPE(sigset_t, [#include ], int) +BASH_CHECK_TYPE(quad_t, , long, HAVE_QUAD_T) +BASH_CHECK_TYPE(intmax_t, , $bash_cv_type_long_long) +BASH_CHECK_TYPE(uintmax_t, , $bash_cv_type_unsigned_long_long) +if test "$ac_cv_header_sys_socket_h" = "yes"; then +BASH_CHECK_TYPE(socklen_t, [#include ], int, HAVE_SOCKLEN_T) +fi +BASH_TYPE_RLIMIT + +dnl presence and contents of structures used by system calls +BASH_STRUCT_TERMIOS_LDISC +BASH_STRUCT_TERMIO_LDISC +BASH_STRUCT_DIRENT_D_INO +BASH_STRUCT_DIRENT_D_FILENO +BASH_STRUCT_DIRENT_D_NAMLEN +BASH_STRUCT_WINSIZE +BASH_STRUCT_TIMEVAL +AC_CHECK_MEMBERS([struct stat.st_blocks]) +AC_STRUCT_TM +AC_STRUCT_TIMEZONE +BASH_STRUCT_TIMEZONE + +dnl presence and behavior of C library functions +BASH_FUNC_STRSIGNAL +BASH_FUNC_OPENDIR_CHECK +BASH_FUNC_ULIMIT_MAXFDS +BASH_FUNC_FPURGE +BASH_FUNC_GETENV +if test "$ac_cv_func_getcwd" = "yes"; then +BASH_FUNC_GETCWD +fi +BASH_FUNC_POSIX_SETJMP +BASH_FUNC_STRCOLL + +dnl If putenv or unsetenv is not present, set the right define so the +dnl prototype and declaration in lib/sh/getenv.c will be standard-conformant + +if test "$ac_cv_func_putenv" = "yes"; then +BASH_FUNC_STD_PUTENV +else +AC_DEFINE(HAVE_STD_PUTENV) +fi +if test "$ac_cv_func_unsetenv" = "yes"; then +BASH_FUNC_STD_UNSETENV +else +AC_DEFINE(HAVE_STD_UNSETENV) +fi + +BASH_FUNC_PRINTF_A_FORMAT + +dnl presence and behavior of OS functions +BASH_SYS_REINSTALL_SIGHANDLERS +BASH_SYS_JOB_CONTROL_MISSING +BASH_SYS_NAMED_PIPES + +dnl presence of certain CPP defines +AC_HEADER_TIOCGWINSZ +BASH_HAVE_TIOCSTAT +BASH_HAVE_FIONREAD + +BASH_CHECK_WCONTINUED + +dnl miscellaneous +BASH_CHECK_SPEED_T +BASH_CHECK_GETPW_FUNCS +BASH_CHECK_RTSIGS +BASH_CHECK_SYS_SIGLIST + +dnl special checks +case "$host_os" in +hpux*) BASH_CHECK_KERNEL_RLIMIT ;; +esac + +if test "$opt_readline" = yes; then +dnl yuck +case "$host_os" in +aix*) prefer_curses=yes ;; +esac +BASH_CHECK_LIB_TERMCAP +fi +AC_SUBST(TERMCAP_LIB) +AC_SUBST(TERMCAP_DEP) + +BASH_CHECK_DEV_FD +BASH_CHECK_DEV_STDIN +BASH_SYS_DEFAULT_MAIL_DIR + +if test "$bash_cv_job_control_missing" = missing; then + opt_job_control=no +fi + +if test "$opt_job_control" = yes; then +AC_DEFINE(JOB_CONTROL) +JOBS_O=jobs.o +else +JOBS_O=nojobs.o +fi + +AC_SUBST(JOBS_O) + +dnl Defines that we want to propagate to the Makefiles in subdirectories, +dnl like glob and readline + +LOCAL_DEFS=-DSHELL + +dnl use this section to possibly define more cpp variables, specify local +dnl libraries, and specify any additional local cc or ld flags +dnl +dnl this should really go away someday + +case "${host_os}" in +sysv4.2*) AC_DEFINE(SVR4_2) + AC_DEFINE(SVR4) ;; +sysv4*) AC_DEFINE(SVR4) ;; +sysv5*) AC_DEFINE(SVR5) ;; +hpux9*) LOCAL_CFLAGS="-DHPUX9 -DHPUX" ;; +hpux*) LOCAL_CFLAGS=-DHPUX ;; +dgux*) LOCAL_CFLAGS=-D_DGUX_SOURCE; LOCAL_LIBS=-ldgc ;; +isc*) LOCAL_CFLAGS=-Disc386 ;; +rhapsody*) LOCAL_CFLAGS=-DRHAPSODY ;; +darwin*) LOCAL_CFLAGS=-DMACOSX ;; +sco3.2v5*) LOCAL_CFLAGS="-b elf -DWAITPID_BROKEN -DPATH_MAX=1024" ;; +sco3.2v4*) LOCAL_CFLAGS="-DMUST_UNBLOCK_CHLD -DPATH_MAX=1024" ;; +sco3.2*) LOCAL_CFLAGS=-DMUST_UNBLOCK_CHLD ;; +sunos4*) LOCAL_CFLAGS=-DSunOS4 ;; +solaris2.5*) LOCAL_CFLAGS="-DSunOS5 -DSOLARIS" ;; +solaris2.8*) LOCAL_CFLAGS=-DSOLARIS ;; +solaris2.9*) LOCAL_CFLAGS=-DSOLARIS ;; +solaris2.10*) LOCAL_CFLAGS=-DSOLARIS ;; +solaris2*) LOCAL_CFLAGS=-DSOLARIS ;; +lynxos*) LOCAL_CFLAGS=-DRECYCLES_PIDS ;; +linux*) LOCAL_LDFLAGS=-rdynamic # allow dynamic loading + case "`uname -r`" in + 2.[[456789]]*|3*) AC_DEFINE(PGRP_PIPE) ;; + esac ;; +*qnx6*) LOCAL_CFLAGS="-Dqnx -Dqnx6" LOCAL_LIBS="-lncurses" ;; +*qnx*) LOCAL_CFLAGS="-Dqnx -F -3s" LOCAL_LDFLAGS="-3s" LOCAL_LIBS="-lunix -lncurses" ;; +powerux*) LOCAL_LIBS="-lgen" ;; +cygwin*) LOCAL_CFLAGS=-DRECYCLES_PIDS ;; +opennt*|interix*) LOCAL_CFLAGS="-DNO_MAIN_ENV_ARG -DBROKEN_DIRENT_D_INO -D_POSIX_SOURCE" ;; +esac + +dnl Stanza for OS/compiler pair-specific flags +case "${host_os}-${CC}" in +aix4.2*-*gcc*) LOCAL_LDFLAGS="-Xlinker -bexpall -Xlinker -brtl" ;; +aix4.2*) LOCAL_LDFLAGS="-bexpall -brtl" ;; +bsdi4*-*gcc*) LOCAL_LDFLAGS="-rdynamic" ;; # allow dynamic loading, like Linux +esac + +dnl FreeBSD-3.x can have either a.out or ELF +case "${host_os}" in +freebsd[[3-9]]*) + if test -x /usr/bin/objformat && test "`/usr/bin/objformat`" = "elf" ; then + LOCAL_LDFLAGS=-rdynamic # allow dynamic loading + fi ;; +freebsdelf*) LOCAL_LDFLAGS=-rdynamic ;; # allow dynamic loading +dragonfly*) LOCAL_LDFLAGS=-rdynamic ;; # allow dynamic loading +esac + +case "$host_cpu" in +*cray*) LOCAL_CFLAGS="-DCRAY" ;; # shell var so config.h can use it +esac + +case "$host_cpu-$host_os" in +ibmrt-*bsd4*) LOCAL_CFLAGS="-ma -U__STDC__" ;; +esac + +case "$host_cpu-$host_vendor-$host_os" in +m88k-motorola-sysv3) LOCAL_CFLAGS=-DWAITPID_BROKEN ;; +mips-pyramid-sysv4) LOCAL_CFLAGS=-Xa ;; +esac + +# +# Shared object configuration section. These values are generated by +# ${srcdir}/support/shobj-conf +# +if test "$ac_cv_func_dlopen" = "yes" && test -f ${srcdir}/support/shobj-conf +then + AC_MSG_CHECKING(shared object configuration for loadable builtins) + eval `${CONFIG_SHELL-/bin/sh} ${srcdir}/support/shobj-conf -C "${CC}" -c "${host_cpu}" -o "${host_os}" -v "${host_vendor}"` + AC_SUBST(SHOBJ_CC) + AC_SUBST(SHOBJ_CFLAGS) + AC_SUBST(SHOBJ_LD) + AC_SUBST(SHOBJ_LDFLAGS) + AC_SUBST(SHOBJ_XLDFLAGS) + AC_SUBST(SHOBJ_LIBS) + AC_SUBST(SHOBJ_STATUS) + AC_MSG_RESULT($SHOBJ_STATUS) +fi + +# try to create a directory tree if the source is elsewhere +# this should be packaged into a script accessible via ${srcdir}/support +case "$srcdir" in +.) ;; +*) for d in doc tests support lib examples; do # dirs + test -d $d || mkdir $d + done + for ld in readline glob tilde malloc sh termcap; do # libdirs + test -d lib/$ld || mkdir lib/$ld + done + test -d examples/loadables || mkdir examples/loadables # loadable builtins + test -d examples/loadables/perl || mkdir examples/loadables/perl + ;; +esac + +BUILD_DIR=`pwd` +case "$BUILD_DIR" in +*\ *) BUILD_DIR=`echo "$BUILD_DIR" | sed 's: :\\\\ :g'` ;; +*) ;; +esac + +if test -z "$localedir"; then + localedir='${datarootdir}/locale' +fi +if test -z "$datarootdir"; then + datarootdir='${prefix}/share' +fi + +AC_SUBST(PROFILE_FLAGS) + +AC_SUBST(incdir) +AC_SUBST(BUILD_DIR) + +# Some versions of autoconf don't substitute these automatically +AC_SUBST(datarootdir) +AC_SUBST(localedir) + +AC_SUBST(YACC) +AC_SUBST(AR) +AC_SUBST(ARFLAGS) + +AC_SUBST(BASHVERS) +AC_SUBST(RELSTATUS) +AC_SUBST(DEBUG) +AC_SUBST(MALLOC_DEBUG) + +AC_SUBST(host_cpu) +AC_SUBST(host_vendor) +AC_SUBST(host_os) + +AC_SUBST(LOCAL_LIBS) +AC_SUBST(LOCAL_CFLAGS) +AC_SUBST(LOCAL_LDFLAGS) +AC_SUBST(LOCAL_DEFS) + +#AC_SUBST(ALLOCA_SOURCE) +#AC_SUBST(ALLOCA_OBJECT) + +AC_OUTPUT([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], +[ +# Makefile uses this timestamp file to record whether config.h is up to date. +echo timestamp > stamp-h +]) diff --git a/configure.in.save b/configure.in.save new file mode 100644 index 00000000..6f3012ef --- /dev/null +++ b/configure.in.save @@ -0,0 +1,1145 @@ +dnl +dnl Configure script for bash-4.0 +dnl +dnl report bugs to chet@po.cwru.edu +dnl +dnl Process this file with autoconf to produce a configure script. + +# Copyright (C) 1987-2009 Free Software Foundation, Inc. + +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +AC_REVISION([for Bash 4.0, version 4.013])dnl + +define(bashvers, 4.0) +define(relstatus, release) + +AC_INIT([bash], bashvers-relstatus, [bug-bash@gnu.org]) + +dnl make sure we are using a recent autoconf version +AC_PREREQ(2.50) + +AC_CONFIG_SRCDIR(shell.h) +dnl where to find install.sh, config.sub, and config.guess +AC_CONFIG_AUX_DIR(./support) +AC_CONFIG_HEADERS(config.h) + +dnl checks for version info +BASHVERS=bashvers +RELSTATUS=relstatus + +dnl defaults for debug settings +case "$RELSTATUS" in +alp*|bet*|dev*|rc*|maint*) DEBUG='-DDEBUG' MALLOC_DEBUG='-DMALLOC_DEBUG' ;; +*) DEBUG= MALLOC_DEBUG= ;; +esac + +dnl canonicalize the host and os so we can do some tricky things before +dnl parsing options +AC_CANONICAL_HOST + +dnl configure defaults +opt_bash_malloc=yes +opt_purify=no +opt_purecov=no +opt_afs=no +opt_curses=no +opt_with_installed_readline=no + +#htmldir= + +dnl some systems should be configured without the bash malloc by default +dnl and some need a special compiler or loader +dnl look in the NOTES file for more +case "${host_cpu}-${host_os}" in +alpha*-*) opt_bash_malloc=no ;; # alpha running osf/1 or linux +*[[Cc]]ray*-*) opt_bash_malloc=no ;; # Crays +*-osf1*) opt_bash_malloc=no ;; # other osf/1 machines +sparc-svr4*) opt_bash_malloc=no ;; # sparc SVR4, SVR4.2 +sparc-netbsd*) opt_bash_malloc=no ;; # needs 8-byte alignment +mips-irix6*) opt_bash_malloc=no ;; # needs 8-byte alignment +m68k-sysv) opt_bash_malloc=no ;; # fixes file descriptor leak in closedir +sparc-linux*) opt_bash_malloc=no ;; # sparc running linux; requires ELF +#*-freebsd*-gnu) opt_bash_malloc=no ;; # there's some undetermined problem here +#*-freebsd*) opt_bash_malloc=no ;; # they claim it's better; I disagree +*-openbsd*) opt_bash_malloc=no ;; # they claim it needs eight-bit alignment +*-aix*) opt_bash_malloc=no ;; # AIX machines +*-nextstep*) opt_bash_malloc=no ;; # NeXT machines running NeXTstep +*-macos*) opt_bash_malloc=no ;; # Apple MacOS X +*-rhapsody*) opt_bash_malloc=no ;; # Apple Rhapsody (MacOS X) +*-darwin*) opt_bash_malloc=no ;; # Apple Darwin (MacOS X) +*-dgux*) opt_bash_malloc=no ;; # DG/UX machines +*-qnx*) opt_bash_malloc=no ;; # QNX 4.2, QNX 6.x +*-machten4) opt_bash_malloc=no ;; # MachTen 4.x +*-bsdi2.1|*-bsdi3.?) opt_bash_malloc=no ; : ${CC:=shlicc2} ;; # for loadable builtins +*-beos*) opt_bash_malloc=no ;; # they say it's suitable +*-cygwin*) opt_bash_malloc=no ;; # Cygnus's CYGWIN environment +*-opennt*|*-interix*) opt_bash_malloc=no ;; # Interix, now owned by Microsoft +esac + +# memory scrambling on free() +case "${host_os}" in +sco3.2v5*|sco3.2v4*) opt_memscramble=no ;; +*) opt_memscramble=yes ;; +esac + +dnl +dnl macros for the bash debugger +dnl +AM_PATH_LISPDIR +AC_ARG_VAR(DEBUGGER_START_FILE, [location of bash debugger initialization file]) + +dnl arguments to configure +dnl packages +AC_ARG_WITH(afs, AC_HELP_STRING([--with-afs], [if you are running AFS]), opt_afs=$withval) +AC_ARG_WITH(bash-malloc, AC_HELP_STRING([--with-bash-malloc], [use the Bash version of malloc]), opt_bash_malloc=$withval) +AC_ARG_WITH(curses, AC_HELP_STRING([--with-curses], [use the curses library instead of the termcap library]), opt_curses=$withval) +AC_ARG_WITH(gnu-malloc, AC_HELP_STRING([--with-gnu-malloc], [synonym for --with-bash-malloc]), opt_bash_malloc=$withval) +AC_ARG_WITH(installed-readline, AC_HELP_STRING([--with-installed-readline], [use a version of the readline library that is already installed]), opt_with_installed_readline=$withval) +AC_ARG_WITH(purecov, AC_HELP_STRING([--with-purecov], [configure to postprocess with pure coverage]), opt_purecov=$withval) +AC_ARG_WITH(purify, AC_HELP_STRING([--with-purify], [configure to postprocess with purify]), opt_purify=$withval) + +if test "$opt_bash_malloc" = yes; then + MALLOC_TARGET=malloc + MALLOC_SRC=malloc.c + + MALLOC_LIB='-lmalloc' + MALLOC_LIBRARY='$(ALLOC_LIBDIR)/libmalloc.a' + MALLOC_LDFLAGS='-L$(ALLOC_LIBDIR)' + MALLOC_DEP='$(MALLOC_LIBRARY)' + + AC_DEFINE(USING_BASH_MALLOC) +else + MALLOC_LIB= + MALLOC_LIBRARY= + MALLOC_LDFLAGS= + MALLOC_DEP= +fi + +if test "$opt_purify" = yes; then + PURIFY="purify " + AC_DEFINE(DISABLE_MALLOC_WRAPPERS) +else + PURIFY= +fi + +if test "$opt_purecov" = yes; then + PURIFY="${PURIFY}purecov" +fi + +if test "$opt_afs" = yes; then + AC_DEFINE(AFS) +fi + +if test "$opt_curses" = yes; then + prefer_curses=yes +fi + +if test -z "${DEBUGGER_START_FILE}"; then + DEBUGGER_START_FILE='${datadir}/bashdb/bashdb-main.inc' +fi + +dnl optional shell features in config.h.in +opt_minimal_config=no + +opt_job_control=yes +opt_alias=yes +opt_readline=yes +opt_history=yes +opt_bang_history=yes +opt_dirstack=yes +opt_restricted=yes +opt_process_subst=yes +opt_prompt_decoding=yes +opt_select=yes +opt_help=yes +opt_array_variables=yes +opt_dparen_arith=yes +opt_extended_glob=yes +opt_brace_expansion=yes +opt_disabled_builtins=no +opt_command_timing=yes +opt_xpg_echo=no +opt_strict_posix=no +opt_cond_command=yes +opt_cond_regexp=yes +opt_coproc=yes +opt_arith_for_command=yes +opt_net_redirs=yes +opt_progcomp=yes +opt_separate_help=no +opt_multibyte=yes +opt_debugger=yes +opt_single_longdoc_strings=yes +opt_casemod_attrs=yes +opt_casemod_expansions=yes + +dnl options that affect how bash is compiled and linked +opt_static_link=no +opt_profiling=no + +dnl argument parsing for optional features +AC_ARG_ENABLE(minimal-config, AC_HELP_STRING([--enable-minimal-config], [a minimal sh-like configuration]), opt_minimal_config=$enableval) + +dnl a minimal configuration turns everything off, but features can be +dnl added individually +if test $opt_minimal_config = yes; then + opt_job_control=no opt_alias=no opt_readline=no + opt_history=no opt_bang_history=no opt_dirstack=no + opt_restricted=no opt_process_subst=no opt_prompt_decoding=no + opt_select=no opt_help=no opt_array_variables=no opt_dparen_arith=no + opt_brace_expansion=no opt_disabled_builtins=no opt_command_timing=no + opt_extended_glob=no opt_cond_command=no opt_arith_for_command=no + opt_net_redirs=no opt_progcomp=no opt_separate_help=no + opt_multibyte=yes opt_cond_regexp=no opt_coproc=no + opt_casemod_attrs=no opt_casemod_expansions=no +fi + +AC_ARG_ENABLE(alias, AC_HELP_STRING([--enable-alias], [enable shell aliases]), opt_alias=$enableval) +AC_ARG_ENABLE(arith-for-command, AC_HELP_STRING([--enable-arith-for-command], [enable arithmetic for command]), opt_arith_for_command=$enableval) +AC_ARG_ENABLE(array-variables, AC_HELP_STRING([--enable-array-variables], [include shell array variables]), opt_array_variables=$enableval) +AC_ARG_ENABLE(bang-history, AC_HELP_STRING([--enable-bang-history], [turn on csh-style history substitution]), opt_bang_history=$enableval) +AC_ARG_ENABLE(brace-expansion, AC_HELP_STRING([--enable-brace-expansion], [include brace expansion]), opt_brace_expansion=$enableval) +AC_ARG_ENABLE(casemod-attributes, AC_HELP_STRING([--enable-casemod-attributes], [include case-modifying variable attributes]), opt_casemod_attrs=$enableval) +AC_ARG_ENABLE(casemod-expansions, AC_HELP_STRING([--enable-casemod-expansions], [include case-modifying word expansions]), opt_casemod_expansions=$enableval) +AC_ARG_ENABLE(command-timing, AC_HELP_STRING([--enable-command-timing], [enable the time reserved word and command timing]), opt_command_timing=$enableval) +AC_ARG_ENABLE(cond-command, AC_HELP_STRING([--enable-cond-command], [enable the conditional command]), opt_cond_command=$enableval) +AC_ARG_ENABLE(cond-regexp, AC_HELP_STRING([--enable-cond-regexp], [enable extended regular expression matching in conditional commands]), opt_cond_regexp=$enableval) +AC_ARG_ENABLE(coprocesses, AC_HELP_STRING([--enable-coprocesses], [enable coprocess support and the coproc reserved word]), opt_coproc=$enableval) +AC_ARG_ENABLE(debugger, AC_HELP_STRING([--enable-debugger], [enable support for bash debugger]), opt_debugger=$enableval) +AC_ARG_ENABLE(directory-stack, AC_HELP_STRING([--enable-directory-stack], [enable builtins pushd/popd/dirs]), opt_dirstack=$enableval) +AC_ARG_ENABLE(disabled-builtins, AC_HELP_STRING([--enable-disabled-builtins], [allow disabled builtins to still be invoked]), opt_disabled_builtins=$enableval) +AC_ARG_ENABLE(dparen-arithmetic, AC_HELP_STRING([--enable-dparen-arithmetic], [include ((...)) command]), opt_dparen_arith=$enableval) +AC_ARG_ENABLE(extended-glob, AC_HELP_STRING([--enable-extended-glob], [include ksh-style extended pattern matching]), opt_extended_glob=$enableval) +AC_ARG_ENABLE(help-builtin, AC_HELP_STRING([--enable-help-builtin], [include the help builtin]), opt_help=$enableval) +AC_ARG_ENABLE(history, AC_HELP_STRING([--enable-history], [turn on command history]), opt_history=$enableval) +AC_ARG_ENABLE(job-control, AC_HELP_STRING([--enable-job-control], [enable job control features]), opt_job_control=$enableval) +AC_ARG_ENABLE(multibyte, AC_HELP_STRING([--enable-multibyte], [enable multibyte characters if OS supports them]), opt_multibyte=$enableval) +AC_ARG_ENABLE(net-redirections, AC_HELP_STRING([--enable-net-redirections], [enable /dev/tcp/host/port redirection]), opt_net_redirs=$enableval) +AC_ARG_ENABLE(process-substitution, AC_HELP_STRING([--enable-process-substitution], [enable process substitution]), opt_process_subst=$enableval) +AC_ARG_ENABLE(progcomp, AC_HELP_STRING([--enable-progcomp], [enable programmable completion and the complete builtin]), opt_progcomp=$enableval) +AC_ARG_ENABLE(prompt-string-decoding, AC_HELP_STRING([--enable-prompt-string-decoding], [turn on escape character decoding in prompts]), opt_prompt_decoding=$enableval) +AC_ARG_ENABLE(readline, AC_HELP_STRING([--enable-readline], [turn on command line editing]), opt_readline=$enableval) +AC_ARG_ENABLE(restricted, AC_HELP_STRING([--enable-restricted], [enable a restricted shell]), opt_restricted=$enableval) +AC_ARG_ENABLE(select, AC_HELP_STRING([--enable-select], [include select command]), opt_select=$enableval) +AC_ARG_ENABLE(separate-helpfiles, AC_HELP_STRING([--enable-separate-helpfiles], [use external files for help builtin documentation]), opt_separate_help=$enableval) +AC_ARG_ENABLE(single-help-strings, AC_HELP_STRING([--enable-single-help-strings], [store help documentation as a single string to ease translation]), opt_single_longdoc_strings=$enableval) +AC_ARG_ENABLE(strict-posix-default, AC_HELP_STRING([--enable-strict-posix-default], [configure bash to be posix-conformant by default]), opt_strict_posix=$enableval) +AC_ARG_ENABLE(usg-echo-default, AC_HELP_STRING([--enable-usg-echo-default], [a synonym for --enable-xpg-echo-default]), opt_xpg_echo=$enableval) +AC_ARG_ENABLE(xpg-echo-default, AC_HELP_STRING([--enable-xpg-echo-default], [make the echo builtin expand escape sequences by default]), opt_xpg_echo=$enableval) + +dnl options that alter how bash is compiled and linked +AC_ARG_ENABLE(mem-scramble, AC_HELP_STRING([--enable-mem-scramble], [scramble memory on calls to malloc and free]), opt_memscramble=$enableval) +AC_ARG_ENABLE(profiling, AC_HELP_STRING([--enable-profiling], [allow profiling with gprof]), opt_profiling=$enableval) +AC_ARG_ENABLE(static-link, AC_HELP_STRING([--enable-static-link], [link bash statically, for use as a root shell]), opt_static_link=$enableval) + +dnl opt_job_control is handled later, after BASH_JOB_CONTROL_MISSING runs + +dnl opt_readline and opt_history are handled later, because AC_PROG_CC needs +dnl to be run before we can check the version of an already-installed readline +dnl library + +if test $opt_alias = yes; then +AC_DEFINE(ALIAS) +fi +if test $opt_dirstack = yes; then +AC_DEFINE(PUSHD_AND_POPD) +fi +if test $opt_restricted = yes; then +AC_DEFINE(RESTRICTED_SHELL) +fi +if test $opt_process_subst = yes; then +AC_DEFINE(PROCESS_SUBSTITUTION) +fi +if test $opt_prompt_decoding = yes; then +AC_DEFINE(PROMPT_STRING_DECODE) +fi +if test $opt_select = yes; then +AC_DEFINE(SELECT_COMMAND) +fi +if test $opt_help = yes; then +AC_DEFINE(HELP_BUILTIN) +fi +if test $opt_array_variables = yes; then +AC_DEFINE(ARRAY_VARS) +fi +if test $opt_dparen_arith = yes; then +AC_DEFINE(DPAREN_ARITHMETIC) +fi +if test $opt_brace_expansion = yes; then +AC_DEFINE(BRACE_EXPANSION) +fi +if test $opt_disabled_builtins = yes; then +AC_DEFINE(DISABLED_BUILTINS) +fi +if test $opt_command_timing = yes; then +AC_DEFINE(COMMAND_TIMING) +fi +if test $opt_xpg_echo = yes ; then +AC_DEFINE(DEFAULT_ECHO_TO_XPG) +fi +if test $opt_strict_posix = yes; then +AC_DEFINE(STRICT_POSIX) +fi +if test $opt_extended_glob = yes ; then +AC_DEFINE(EXTENDED_GLOB) +fi +if test $opt_cond_command = yes ; then +AC_DEFINE(COND_COMMAND) +fi +if test $opt_cond_regexp = yes ; then +AC_DEFINE(COND_REGEXP) +fi +if test $opt_coproc = yes; then +AC_DEFINE(COPROCESS_SUPPORT) +fi +if test $opt_arith_for_command = yes; then +AC_DEFINE(ARITH_FOR_COMMAND) +fi +if test $opt_net_redirs = yes; then +AC_DEFINE(NETWORK_REDIRECTIONS) +fi +if test $opt_progcomp = yes; then +AC_DEFINE(PROGRAMMABLE_COMPLETION) +fi +if test $opt_multibyte = no; then +AC_DEFINE(NO_MULTIBYTE_SUPPORT) +fi +if test $opt_debugger = yes; then +AC_DEFINE(DEBUGGER) +fi +if test $opt_casemod_attrs = yes; then +AC_DEFINE(CASEMOD_ATTRS) +fi +if test $opt_casemod_expansions = yes; then +AC_DEFINE(CASEMOD_EXPANSIONS) +fi + +if test $opt_memscramble = yes; then +AC_DEFINE(MEMSCRAMBLE) +fi + +if test "$opt_minimal_config" = yes; then + TESTSCRIPT=run-minimal +else + TESTSCRIPT=run-all +fi + +HELPDIR= HELPDIRDEFINE= HELPINSTALL= +if test "$opt_separate_help" != no; then + if test "$opt_separate_help" = "yes" ; then + HELPDIR='${datadir}/bash' + else + HELPDIR=$opt_separate_help + fi + HELPDIRDEFINE='-H ${HELPDIR}' + HELPINSTALL='install-help' +fi +HELPSTRINGS= +if test "$opt_single_longdoc_strings" != "yes"; then + HELPSTRINGS='-S' +fi + +dnl now substitute in the values generated by arguments +AC_SUBST(TESTSCRIPT) +AC_SUBST(PURIFY) +AC_SUBST(MALLOC_TARGET) +AC_SUBST(MALLOC_SRC) + +AC_SUBST(MALLOC_LIB) +AC_SUBST(MALLOC_LIBRARY) +AC_SUBST(MALLOC_LDFLAGS) +AC_SUBST(MALLOC_DEP) + +AC_SUBST(htmldir) + +AC_SUBST(HELPDIR) +AC_SUBST(HELPDIRDEFINE) +AC_SUBST(HELPINSTALL) +AC_SUBST(HELPSTRINGS) + +echo "" +echo "Beginning configuration for bash-$BASHVERS-$RELSTATUS for ${host_cpu}-${host_vendor}-${host_os}" +echo "" + +dnl compilation checks +dnl AC_PROG_CC sets $cross_compiling to `yes' if cross-compiling for a +dnl different environment +AC_PROG_CC + +dnl test for Unix variants +AC_ISC_POSIX +AC_MINIX + +AC_SYS_LARGEFILE + +dnl BEGIN changes for cross-building (currently cygwin, minGW, and +dnl (obsolete) BeOS) + +SIGNAMES_O= +SIGNAMES_H=lsignames.h + +dnl load up the cross-building cache file -- add more cases and cache +dnl files as necessary + +dnl Note that host and target machine are the same, and different than the +dnl build machine. +dnl Set SIGNAMES_H based on whether or not we're cross-compiling. + +CROSS_COMPILE= +if test "x$cross_compiling" = "xyes"; then + case "${host}" in + *-cygwin*) + cross_cache=${srcdir}/cross-build/cygwin32.cache + ;; + *-mingw*) + cross_cache=${srcdir}/cross-build/cygwin32.cache + ;; + i[[3456]]86-*-beos*) + cross_cache=${srcdir}/cross-build/x86-beos.cache + ;; + *) echo "configure: cross-compiling for $host is not supported" >&2 + ;; + esac + if test -n "${cross_cache}" && test -r "${cross_cache}"; then + echo "loading cross-build cache file ${cross_cache}" + . ${cross_cache} + fi + unset cross_cache + SIGNAMES_O='signames.o' + CROSS_COMPILE='-DCROSS_COMPILING' + AC_SUBST(CROSS_COMPILE) +fi +AC_SUBST(SIGNAMES_H) +AC_SUBST(SIGNAMES_O) + +if test -z "$CC_FOR_BUILD"; then + if test "x$cross_compiling" = "xno"; then + CC_FOR_BUILD='$(CC)' + else + CC_FOR_BUILD=gcc + fi +fi +AC_SUBST(CC_FOR_BUILD) + +dnl END changes for cross-building + +dnl We want these before the checks, so the checks can modify their values. +test -z "$CFLAGS" && CFLAGS=-g auto_cflags=1 + +dnl If we're using gcc and the user hasn't specified CFLAGS, add -O2 to CFLAGS. +test -n "$GCC" && test -n "$auto_cflags" && CFLAGS="$CFLAGS -O2" + +dnl handle options that alter how bash is compiled and linked +dnl these must come after the test for cc/gcc +if test "$opt_profiling" = "yes"; then + PROFILE_FLAGS=-pg + case "$host_os" in + solaris2*) ;; + *) opt_static_link=yes ;; + esac + DEBUG= MALLOC_DEBUG= +fi + +if test "$opt_static_link" = yes; then + # if we're using gcc, add `-static' to LDFLAGS, except on Solaris >= 2 + if test -n "$GCC" || test "$ac_cv_prog_gcc" = "yes"; then + STATIC_LD="-static" + case "$host_os" in + solaris2*) ;; + *) LDFLAGS="$LDFLAGS -static" ;; # XXX experimental + esac + fi +fi + +if test "X$cross_compiling" = "Xno"; then + CPPFLAGS_FOR_BUILD=${CPPFLAGS_FOR_BUILD-"$CPPFLAGS"} + LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-'$(LDFLAGS)'} +else + CPPFLAGS_FOR_BUILD=${CPPFLAGS_FOR_BUILD-""} + LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-""} +fi + +test -z "$CFLAGS_FOR_BUILD" && CFLAGS_FOR_BUILD="-g" + +AC_SUBST(CFLAGS) +AC_SUBST(CPPFLAGS) +AC_SUBST(LDFLAGS) +AC_SUBST(STATIC_LD) + +AC_SUBST(CFLAGS_FOR_BUILD) +AC_SUBST(CPPFLAGS_FOR_BUILD) +AC_SUBST(LDFLAGS_FOR_BUILD) + +AC_PROG_GCC_TRADITIONAL + +dnl BEGIN READLINE and HISTORY LIBRARY SECTION +dnl prepare to allow bash to be linked against an already-installed readline + +dnl first test that the readline version is new enough to link bash against +if test "$opt_readline" = yes && test "$opt_with_installed_readline" != "no" +then + # If the user specified --with-installed-readline=PREFIX and PREFIX + # is not `yes', set ac_cv_rl_prefix to PREFIX + test $opt_with_installed_readline != "yes" && ac_cv_rl_prefix=$opt_with_installed_readline + + RL_LIB_READLINE_VERSION + + case "$ac_cv_rl_version" in + 5*|6*|7*|8*|9*) ;; + *) opt_with_installed_readline=no + AC_MSG_WARN(installed readline library is too old to be linked with bash) + AC_MSG_WARN(using private bash version) + ;; + esac +fi + +TILDE_LIB=-ltilde +if test $opt_readline = yes; then + AC_DEFINE(READLINE) + if test "$opt_with_installed_readline" != "no" ; then + case "$opt_with_installed_readline" in + yes) RL_INCLUDE= ;; + *) case "$RL_INCLUDEDIR" in + /usr/include) ;; + *) RL_INCLUDE='-I${RL_INCLUDEDIR}' ;; + esac + ;; + esac + READLINE_DEP= + READLINE_LIB=-lreadline + # section for OS versions that don't allow unresolved symbols + # to be compiled into dynamic libraries. + case "$host_os" in + cygwin*) TILDE_LIB= ;; + esac + else + RL_LIBDIR='$(dot)/$(LIBSUBDIR)/readline' + READLINE_DEP='$(READLINE_LIBRARY)' + # section for OS versions that ship an older/broken version of + # readline as a standard dynamic library and don't allow a + # static version specified as -llibname to override the + # dynamic version + case "${host_os}" in + darwin[[89]]*|darwin10*) READLINE_LIB='${READLINE_LIBRARY}' ;; + *) READLINE_LIB=-lreadline ;; + esac + fi +else + RL_LIBDIR='$(dot)/$(LIBSUBDIR)/readline' + READLINE_LIB= READLINE_DEP= +fi +if test $opt_history = yes || test $opt_bang_history = yes; then + if test $opt_history = yes; then + AC_DEFINE(HISTORY) + fi + if test $opt_bang_history = yes; then + AC_DEFINE(BANG_HISTORY) + fi + if test "$opt_with_installed_readline" != "no"; then + HIST_LIBDIR=$RL_LIBDIR + HISTORY_DEP= + HISTORY_LIB=-lhistory + case "$opt_with_installed_readline" in + yes) RL_INCLUDE= ;; + *) case "$RL_INCLUDEDIR" in + /usr/include) ;; + *) RL_INCLUDE='-I${RL_INCLUDEDIR}' ;; + esac + ;; + esac + else + HIST_LIBDIR='$(dot)/$(LIBSUBDIR)/readline' + HISTORY_DEP='$(HISTORY_LIBRARY)' + # section for OS versions that ship an older version of + # readline as a standard dynamic library and don't allow a + # static version specified as -llibname to override the + # dynamic version + case "${host_os}" in + darwin[[89]]*|darwin10*) HISTORY_LIB='${HISTORY_LIBRARY}' ;; + *) HISTORY_LIB=-lhistory ;; + esac + fi +else + HIST_LIBDIR='$(dot)/$(LIBSUBDIR)/readline' + HISTORY_LIB= HISTORY_DEP= +fi +AC_SUBST(READLINE_LIB) +AC_SUBST(READLINE_DEP) +AC_SUBST(RL_LIBDIR) +AC_SUBST(RL_INCLUDEDIR) +AC_SUBST(RL_INCLUDE) +AC_SUBST(HISTORY_LIB) +AC_SUBST(HISTORY_DEP) +AC_SUBST(HIST_LIBDIR) +AC_SUBST(TILDE_LIB) + +dnl END READLINE and HISTORY LIBRARY SECTION + +dnl programs needed by the build and install process +AC_PROG_INSTALL +AC_CHECK_PROG(AR, ar, , ar) +dnl Set default for ARFLAGS, since autoconf does not have a macro for it. +dnl This allows people to set it when running configure or make +test -n "$ARFLAGS" || ARFLAGS="cr" +AC_PROG_RANLIB +AC_PROG_YACC +AC_PROG_MAKE_SET + +case "$host_os" in +opennt*|interix*) MAKE_SHELL="$INTERIX_ROOT/bin/sh" ;; +*) MAKE_SHELL=/bin/sh ;; +esac +AC_SUBST(MAKE_SHELL) + +dnl this is similar to the expanded AC_PROG_RANLIB +if test x$SIZE = x; then + if test x$ac_tool_prefix = x; then + SIZE=size + else + SIZE=${ac_tool_prefix}size + save_IFS=$IFS ; IFS=: + size_found=0 + for dir in $PATH; do + if test -x $dir/$SIZE ; then + size_found=1 + break + fi + done + if test $size_found -eq 0; then + SIZE=: + fi + IFS=$save_IFS + fi +fi +AC_SUBST(SIZE) + +dnl Turn on any extensions available in the GNU C library. +AC_DEFINE(_GNU_SOURCE, 1) + +dnl C compiler characteristics +AC_C_CONST +AC_C_INLINE +AC_C_BIGENDIAN +AC_C_STRINGIZE +AC_C_LONG_DOUBLE +AC_C_PROTOTYPES +AC_C_CHAR_UNSIGNED +AC_C_VOLATILE +AC_C_RESTRICT + +dnl initialize GNU gettext +AM_GNU_GETTEXT([no-libtool], [need-ngettext], [lib/intl]) + +dnl header files +AC_HEADER_DIRENT +AC_HEADER_TIME + +BASH_HEADER_INTTYPES + +AC_CHECK_HEADERS(unistd.h stdlib.h stdarg.h varargs.h limits.h string.h \ + memory.h locale.h termcap.h termio.h termios.h dlfcn.h \ + stddef.h stdint.h netdb.h pwd.h grp.h strings.h regex.h) +AC_CHECK_HEADERS(sys/pte.h sys/stream.h sys/select.h sys/file.h \ + sys/resource.h sys/param.h sys/socket.h sys/stat.h \ + sys/time.h sys/times.h sys/types.h sys/wait.h) +AC_CHECK_HEADERS(netinet/in.h arpa/inet.h) + +dnl sys/ptem.h requires definitions from sys/stream.h on systems where it +dnl exists +AC_CHECK_HEADER(sys/ptem.h, , ,[[ +#if HAVE_SYS_STREAM_H +# include +#endif +]]) + +dnl special checks for libc functions +AC_FUNC_ALLOCA +AC_FUNC_GETPGRP +AC_FUNC_SETVBUF_REVERSED +AC_FUNC_VPRINTF +AC_FUNC_STRCOLL + +dnl if we're not using the bash malloc but require the C alloca, set things +dnl up to build a libmalloc.a containing only alloca.o + +if test "$ac_cv_func_alloca_works" = "no" && test "$opt_bash_malloc" = "no"; then + MALLOC_TARGET=alloca + MALLOC_SRC=alloca.c + + MALLOC_LIB='-lmalloc' + MALLOC_LIBRARY='$(ALLOC_LIBDIR)/libmalloc.a' + MALLOC_LDFLAGS='-L$(ALLOC_LIBDIR)' + MALLOC_DEP='$(MALLOC_LIBRARY)' +fi + +dnl if vprintf is not in libc, see if it's defined in stdio.h +if test "$ac_cv_func_vprintf" = no; then + AC_MSG_CHECKING(for declaration of vprintf in stdio.h) + AC_EGREP_HEADER([[int[ ]*vprintf[^a-zA-Z0-9]]],stdio.h,ac_cv_func_vprintf=yes) + AC_MSG_RESULT($ac_cv_func_vprintf) + if test $ac_cv_func_vprintf = yes; then + AC_DEFINE(HAVE_VPRINTF) + fi +fi + +if test "$ac_cv_func_vprintf" = no && test "$ac_cv_func__doprnt" = "yes"; then + AC_LIBOBJ(vprint) +fi + +dnl signal stuff +AC_TYPE_SIGNAL + +dnl checks for certain version-specific system calls and libc functions +AC_CHECK_FUNC(__setostype, AC_DEFINE(HAVE_SETOSTYPE)) +AC_CHECK_FUNC(wait3, AC_DEFINE(HAVE_WAIT3)) +AC_CHECK_FUNC(isinf, AC_DEFINE(HAVE_ISINF_IN_LIBC)) +AC_CHECK_FUNC(isnan, AC_DEFINE(HAVE_ISNAN_IN_LIBC)) + +dnl checks for missing libc functions +AC_CHECK_FUNC(mkfifo,AC_DEFINE(HAVE_MKFIFO),AC_DEFINE(MKFIFO_MISSING)) + +dnl checks for system calls +AC_CHECK_FUNCS(dup2 eaccess fcntl getdtablesize getgroups gethostname \ + getpagesize getpeername getrlimit getrusage gettimeofday \ + kill killpg lstat readlink sbrk select setdtablesize \ + setitimer tcgetpgrp uname ulimit waitpid) +AC_REPLACE_FUNCS(rename) + +dnl checks for c library functions +AC_CHECK_FUNCS(bcopy bzero confstr fnmatch \ + getaddrinfo gethostbyname getservbyname getservent inet_aton \ + memmove pathconf putenv raise regcomp regexec \ + setenv setlinebuf setlocale setvbuf siginterrupt strchr \ + sysconf tcgetattr times ttyname tzset unsetenv) + +AC_CHECK_FUNCS(vsnprintf snprintf vasprintf asprintf) +AC_CHECK_FUNCS(isascii isblank isgraph isprint isspace isxdigit) +AC_CHECK_FUNCS(getpwent getpwnam getpwuid) +AC_REPLACE_FUNCS(getcwd memset strcasecmp strerror strftime strnlen strpbrk strstr) +AC_REPLACE_FUNCS(strtod strtol strtoul strtoll strtoull strtoimax strtoumax) +AC_REPLACE_FUNCS(fdprintf) + +AC_CHECK_DECLS([confstr]) +AC_CHECK_DECLS([printf]) +AC_CHECK_DECLS([sbrk]) +AC_CHECK_DECLS([setregid]) +AC_CHECK_DECLS([strcpy]) +AC_CHECK_DECLS([strsignal]) + +dnl Extra test to detect the horribly broken HP/UX 11.00 strtold(3) +AC_CHECK_DECLS([strtold], [ + AC_MSG_CHECKING([for broken strtold]) + AC_CACHE_VAL(bash_cv_strtold_broken, + [AC_TRY_COMPILE( + [#include ], + [int main() { long double r; char *foo, bar; r = strtold(foo, &bar);}], + bash_cv_strtold_broken=no, bash_cv_strtold_broken=yes, + [AC_MSG_WARN(cannot check for broken strtold if cross-compiling, defaulting to no)]) + ] + ) + AC_MSG_RESULT($bash_cv_strtold_broken) + if test "$bash_cv_strtold_broken" = "yes" ; then + AC_DEFINE(STRTOLD_BROKEN) + fi +]) + + +BASH_CHECK_DECL(strtoimax) +BASH_CHECK_DECL(strtol) +BASH_CHECK_DECL(strtoll) +BASH_CHECK_DECL(strtoul) +BASH_CHECK_DECL(strtoull) +BASH_CHECK_DECL(strtoumax) + +AC_FUNC_MKTIME + +dnl +dnl Checks for lib/intl and related code (uses some of the output from +dnl AM_GNU_GETTEXT) +dnl + +AC_CHECK_HEADERS([argz.h errno.h fcntl.h malloc.h stdio_ext.h]) + +dnl AC_FUNC_MALLOC +AC_FUNC_MMAP +AC_CHECK_FUNCS([__argz_count __argz_next __argz_stringify dcgettext mempcpy \ + munmap stpcpy strcspn strdup]) + +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} -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 +dnl + +BASH_CHECK_MULTIBYTE + +dnl checks for the dynamic loading library functions in libc and libdl +if test "$opt_static_link" != yes; then +AC_CHECK_LIB(dl, dlopen) +AC_CHECK_FUNCS(dlopen dlclose dlsym) +fi + +dnl this defines HAVE_DECL_SYS_SIGLIST +AC_DECL_SYS_SIGLIST + +dnl network functions -- check for inet_aton again +if test "$ac_cv_func_inet_aton" != 'yes'; then +BASH_FUNC_INET_ATON +fi + +dnl libraries +dnl this is reportedly no longer necessary for irix[56].? +case "$host_os" in +irix4*) AC_CHECK_LIB(sun, getpwent) ;; +esac + +dnl check for getpeername in the socket library only if it's not in libc +if test "$ac_cv_func_getpeername" = no; then + BASH_CHECK_LIB_SOCKET +fi +dnl check for gethostbyname in socket libraries if it's not in libc +if test "$ac_cv_func_gethostbyname" = no; then + BASH_FUNC_GETHOSTBYNAME +fi + +dnl system types +AC_TYPE_GETGROUPS +AC_TYPE_OFF_T +AC_TYPE_MODE_T +AC_TYPE_UID_T +AC_TYPE_PID_T +AC_TYPE_SIZE_T +AC_CHECK_TYPE(ssize_t, int) +AC_CHECK_TYPE(time_t, long) + +BASH_TYPE_LONG_LONG +BASH_TYPE_UNSIGNED_LONG_LONG + +AC_TYPE_SIGNAL +BASH_TYPE_SIG_ATOMIC_T + +AC_CHECK_SIZEOF(char, 1) +AC_CHECK_SIZEOF(short, 2) +AC_CHECK_SIZEOF(int, 4) +AC_CHECK_SIZEOF(long, 4) +AC_CHECK_SIZEOF(char *, 4) +AC_CHECK_SIZEOF(double, 8) +AC_CHECK_SIZEOF([long long], 8) + +AC_CHECK_TYPE(u_int, [unsigned int]) +AC_CHECK_TYPE(u_long, [unsigned long]) + +BASH_TYPE_BITS16_T +BASH_TYPE_U_BITS16_T +BASH_TYPE_BITS32_T +BASH_TYPE_U_BITS32_T +BASH_TYPE_BITS64_T + +BASH_TYPE_PTRDIFF_T + +dnl structures +AC_HEADER_STAT + +dnl system services +AC_SYS_INTERPRETER +if test $ac_cv_sys_interpreter = yes; then +AC_DEFINE(HAVE_HASH_BANG_EXEC) +fi + +dnl Miscellaneous Bash tests +if test "$ac_cv_func_lstat" = "no"; then +BASH_FUNC_LSTAT +fi + +dnl behavior of system calls and library functions +BASH_FUNC_CTYPE_NONASCII +BASH_FUNC_DUP2_CLOEXEC_CHECK +BASH_SYS_PGRP_SYNC +BASH_SYS_SIGNAL_VINTAGE + +dnl checking for the presence of certain library symbols +BASH_SYS_ERRLIST +BASH_SYS_SIGLIST +BASH_UNDER_SYS_SIGLIST + +dnl various system types +BASH_TYPE_SIGHANDLER +BASH_CHECK_TYPE(clock_t, [#include ], long) +BASH_CHECK_TYPE(sigset_t, [#include ], int) +BASH_CHECK_TYPE(quad_t, , long, HAVE_QUAD_T) +BASH_CHECK_TYPE(intmax_t, , $bash_cv_type_long_long) +BASH_CHECK_TYPE(uintmax_t, , $bash_cv_type_unsigned_long_long) +if test "$ac_cv_header_sys_socket_h" = "yes"; then +BASH_CHECK_TYPE(socklen_t, [#include ], int, HAVE_SOCKLEN_T) +fi +BASH_TYPE_RLIMIT + +dnl presence and contents of structures used by system calls +BASH_STRUCT_TERMIOS_LDISC +BASH_STRUCT_TERMIO_LDISC +BASH_STRUCT_DIRENT_D_INO +BASH_STRUCT_DIRENT_D_FILENO +BASH_STRUCT_DIRENT_D_NAMLEN +BASH_STRUCT_WINSIZE +BASH_STRUCT_TIMEVAL +AC_CHECK_MEMBERS([struct stat.st_blocks]) +AC_STRUCT_TM +AC_STRUCT_TIMEZONE +BASH_STRUCT_TIMEZONE + +dnl presence and behavior of C library functions +BASH_FUNC_STRSIGNAL +BASH_FUNC_OPENDIR_CHECK +BASH_FUNC_ULIMIT_MAXFDS +BASH_FUNC_FPURGE +BASH_FUNC_GETENV +if test "$ac_cv_func_getcwd" = "yes"; then +BASH_FUNC_GETCWD +fi +BASH_FUNC_POSIX_SETJMP +BASH_FUNC_STRCOLL + +dnl If putenv or unsetenv is not present, set the right define so the +dnl prototype and declaration in lib/sh/getenv.c will be standard-conformant + +if test "$ac_cv_func_putenv" = "yes"; then +BASH_FUNC_STD_PUTENV +else +AC_DEFINE(HAVE_STD_PUTENV) +fi +if test "$ac_cv_func_unsetenv" = "yes"; then +BASH_FUNC_STD_UNSETENV +else +AC_DEFINE(HAVE_STD_UNSETENV) +fi + +BASH_FUNC_PRINTF_A_FORMAT + +dnl presence and behavior of OS functions +BASH_SYS_REINSTALL_SIGHANDLERS +BASH_SYS_JOB_CONTROL_MISSING +BASH_SYS_NAMED_PIPES + +dnl presence of certain CPP defines +AC_HEADER_TIOCGWINSZ +BASH_HAVE_TIOCSTAT +BASH_HAVE_FIONREAD + +BASH_CHECK_WCONTINUED + +dnl miscellaneous +BASH_CHECK_SPEED_T +BASH_CHECK_GETPW_FUNCS +BASH_CHECK_RTSIGS +BASH_CHECK_SYS_SIGLIST + +dnl special checks +case "$host_os" in +hpux*) BASH_CHECK_KERNEL_RLIMIT ;; +esac + +if test "$opt_readline" = yes; then +dnl yuck +case "$host_os" in +aix*) prefer_curses=yes ;; +esac +BASH_CHECK_LIB_TERMCAP +fi +AC_SUBST(TERMCAP_LIB) +AC_SUBST(TERMCAP_DEP) + +BASH_CHECK_DEV_FD +BASH_CHECK_DEV_STDIN +BASH_SYS_DEFAULT_MAIL_DIR + +if test "$bash_cv_job_control_missing" = missing; then + opt_job_control=no +fi + +if test "$opt_job_control" = yes; then +AC_DEFINE(JOB_CONTROL) +JOBS_O=jobs.o +else +JOBS_O=nojobs.o +fi + +AC_SUBST(JOBS_O) + +dnl Defines that we want to propagate to the Makefiles in subdirectories, +dnl like glob and readline + +LOCAL_DEFS=-DSHELL + +dnl use this section to possibly define more cpp variables, specify local +dnl libraries, and specify any additional local cc or ld flags +dnl +dnl this should really go away someday + +case "${host_os}" in +sysv4.2*) AC_DEFINE(SVR4_2) + AC_DEFINE(SVR4) ;; +sysv4*) AC_DEFINE(SVR4) ;; +sysv5*) AC_DEFINE(SVR5) ;; +hpux9*) LOCAL_CFLAGS="-DHPUX9 -DHPUX" ;; +hpux*) LOCAL_CFLAGS=-DHPUX ;; +dgux*) LOCAL_CFLAGS=-D_DGUX_SOURCE; LOCAL_LIBS=-ldgc ;; +isc*) LOCAL_CFLAGS=-Disc386 ;; +rhapsody*) LOCAL_CFLAGS=-DRHAPSODY ;; +darwin*) LOCAL_CFLAGS=-DMACOSX ;; +sco3.2v5*) LOCAL_CFLAGS="-b elf -DWAITPID_BROKEN -DPATH_MAX=1024" ;; +sco3.2v4*) LOCAL_CFLAGS="-DMUST_UNBLOCK_CHLD -DPATH_MAX=1024" ;; +sco3.2*) LOCAL_CFLAGS=-DMUST_UNBLOCK_CHLD ;; +sunos4*) LOCAL_CFLAGS=-DSunOS4 ;; +solaris2.5*) LOCAL_CFLAGS="-DSunOS5 -DSOLARIS" ;; +solaris2.8*) LOCAL_CFLAGS=-DSOLARIS ;; +solaris2.9*) LOCAL_CFLAGS=-DSOLARIS ;; +solaris2.10*) LOCAL_CFLAGS=-DSOLARIS ;; +solaris2*) LOCAL_CFLAGS=-DSOLARIS ;; +lynxos*) LOCAL_CFLAGS=-DRECYCLES_PIDS ;; +linux*) LOCAL_LDFLAGS=-rdynamic # allow dynamic loading + case "`uname -r`" in + 2.[[456789]]*|3*) AC_DEFINE(PGRP_PIPE) ;; + esac ;; +*qnx6*) LOCAL_CFLAGS="-Dqnx -Dqnx6" LOCAL_LIBS="-lncurses" ;; +*qnx*) LOCAL_CFLAGS="-Dqnx -F -3s" LOCAL_LDFLAGS="-3s" LOCAL_LIBS="-lunix -lncurses" ;; +powerux*) LOCAL_LIBS="-lgen" ;; +cygwin*) LOCAL_CFLAGS=-DRECYCLES_PIDS ;; +opennt*|interix*) LOCAL_CFLAGS="-DNO_MAIN_ENV_ARG -DBROKEN_DIRENT_D_INO -D_POSIX_SOURCE" ;; +esac + +dnl Stanza for OS/compiler pair-specific flags +case "${host_os}-${CC}" in +aix4.2*-*gcc*) LOCAL_LDFLAGS="-Xlinker -bexpall -Xlinker -brtl" ;; +aix4.2*) LOCAL_LDFLAGS="-bexpall -brtl" ;; +bsdi4*-*gcc*) LOCAL_LDFLAGS="-rdynamic" ;; # allow dynamic loading, like Linux +esac + +dnl FreeBSD-3.x can have either a.out or ELF +case "${host_os}" in +freebsd[[3-9]]*) + if test -x /usr/bin/objformat && test "`/usr/bin/objformat`" = "elf" ; then + LOCAL_LDFLAGS=-rdynamic # allow dynamic loading + fi ;; +freebsdelf*) LOCAL_LDFLAGS=-rdynamic ;; # allow dynamic loading +dragonfly*) LOCAL_LDFLAGS=-rdynamic ;; # allow dynamic loading +esac + +case "$host_cpu" in +*cray*) LOCAL_CFLAGS="-DCRAY" ;; # shell var so config.h can use it +esac + +case "$host_cpu-$host_os" in +ibmrt-*bsd4*) LOCAL_CFLAGS="-ma -U__STDC__" ;; +esac + +case "$host_cpu-$host_vendor-$host_os" in +m88k-motorola-sysv3) LOCAL_CFLAGS=-DWAITPID_BROKEN ;; +mips-pyramid-sysv4) LOCAL_CFLAGS=-Xa ;; +esac + +# +# Shared object configuration section. These values are generated by +# ${srcdir}/support/shobj-conf +# +if test "$ac_cv_func_dlopen" = "yes" && test -f ${srcdir}/support/shobj-conf +then + AC_MSG_CHECKING(shared object configuration for loadable builtins) + eval `${CONFIG_SHELL-/bin/sh} ${srcdir}/support/shobj-conf -C "${CC}" -c "${host_cpu}" -o "${host_os}" -v "${host_vendor}"` + AC_SUBST(SHOBJ_CC) + AC_SUBST(SHOBJ_CFLAGS) + AC_SUBST(SHOBJ_LD) + AC_SUBST(SHOBJ_LDFLAGS) + AC_SUBST(SHOBJ_XLDFLAGS) + AC_SUBST(SHOBJ_LIBS) + AC_SUBST(SHOBJ_STATUS) + AC_MSG_RESULT($SHOBJ_STATUS) +fi + +# try to create a directory tree if the source is elsewhere +# this should be packaged into a script accessible via ${srcdir}/support +case "$srcdir" in +.) ;; +*) for d in doc tests support lib examples; do # dirs + test -d $d || mkdir $d + done + for ld in readline glob tilde malloc sh termcap; do # libdirs + test -d lib/$ld || mkdir lib/$ld + done + test -d examples/loadables || mkdir examples/loadables # loadable builtins + test -d examples/loadables/perl || mkdir examples/loadables/perl + ;; +esac + +BUILD_DIR=`pwd` +case "$BUILD_DIR" in +*\ *) BUILD_DIR=`echo "$BUILD_DIR" | sed 's: :\\\\ :g'` ;; +*) ;; +esac + +if test -z "$localedir"; then + localedir='${datarootdir}/locale' +fi +if test -z "$datarootdir"; then + datarootdir='${prefix}/share' +fi + +AC_SUBST(PROFILE_FLAGS) + +AC_SUBST(incdir) +AC_SUBST(BUILD_DIR) + +# Some versions of autoconf don't substitute these automatically +AC_SUBST(datarootdir) +AC_SUBST(localedir) + +AC_SUBST(YACC) +AC_SUBST(AR) +AC_SUBST(ARFLAGS) + +AC_SUBST(BASHVERS) +AC_SUBST(RELSTATUS) +AC_SUBST(DEBUG) +AC_SUBST(MALLOC_DEBUG) + +AC_SUBST(host_cpu) +AC_SUBST(host_vendor) +AC_SUBST(host_os) + +AC_SUBST(LOCAL_LIBS) +AC_SUBST(LOCAL_CFLAGS) +AC_SUBST(LOCAL_LDFLAGS) +AC_SUBST(LOCAL_DEFS) + +#AC_SUBST(ALLOCA_SOURCE) +#AC_SUBST(ALLOCA_OBJECT) + +AC_OUTPUT([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], +[ +# Makefile uses this timestamp file to record whether config.h is up to date. +echo timestamp > stamp-h +]) diff --git a/doc/FAQ b/doc/FAQ index bef81060..33ca3d32 100644 --- a/doc/FAQ +++ b/doc/FAQ @@ -1,4 +1,4 @@ -This is the Bash FAQ, version 4.11, for Bash version 4.1. +This is the Bash FAQ, version 4.12, for Bash version 4.2. This document contains a set of frequently-asked questions concerning Bash, the GNU Bourne-Again Shell. Bash is a freely-available command @@ -36,8 +36,8 @@ A10) What is the bash `posix mode'? Section B: The latest version -B1) What's new in version 4.1? -B2) Are there any user-visible incompatibilities between bash-4.1 and +B1) What's new in version 4.2? +B2) Are there any user-visible incompatibilities between bash-4.2 and previous bash versions? Section C: Differences from other Unix shells @@ -144,26 +144,26 @@ of Case Western Reserve University. A2) What's the latest version? -The latest version is 4.1, first made available on 31 December, 2009. +The latest version is 4.2, first made available on 14 February, 2011. A3) Where can I get it? Bash is the GNU project's shell, and so is available from the master GNU archive site, ftp.gnu.org, and its mirrors. The latest version is also available for FTP from ftp.cwru.edu. -The following URLs tell how to get version 4.1: +The following URLs tell how to get version 4.2: -ftp://ftp.gnu.org/pub/gnu/bash/bash-4.1.tar.gz -ftp://ftp.cwru.edu/pub/bash/bash-4.1.tar.gz +ftp://ftp.gnu.org/pub/gnu/bash/bash-4.2.tar.gz +ftp://ftp.cwru.edu/pub/bash/bash-4.2.tar.gz Formatted versions of the documentation are available with the URLs: -ftp://ftp.gnu.org/pub/gnu/bash/bash-doc-4.1.tar.gz -ftp://ftp.cwru.edu/pub/bash/bash-doc-4.1.tar.gz +ftp://ftp.gnu.org/pub/gnu/bash/bash-doc-4.2.tar.gz +ftp://ftp.cwru.edu/pub/bash/bash-doc-4.2.tar.gz Any patches for the current version are available with the URL: -ftp://ftp.cwru.edu/pub/bash/bash-4.1-patches/ +ftp://ftp.cwru.edu/pub/bash/bash-4.2-patches/ A4) On what machines will bash run? @@ -219,7 +219,7 @@ Mark began to work with bash-2.05, but I don't know the current status. Bash-3.0 compiles and runs with no modifications under Microsoft's Services for Unix (SFU), once known as Interix. I do not anticipate any problems -with building bash-4.1, but will gladly accept any patches that are needed. +with building bash-4.2, but will gladly accept any patches that are needed. A6) How can I build bash with gcc? @@ -388,14 +388,88 @@ They are also listed in a section in the Bash Reference Manual Section B: The latest version -B1) What's new in version 4.1? +B1) What's new in version 4.2? -Bash-4.1 is the first revision to the fourth major release of bash. +Bash-4.2 is the second revision to the fourth major release of bash. -Bash-4.1 contains the following new features (see the manual page for -complete descriptions and the CHANGES and NEWS files in the bash-4.1 +Bash-4.2 contains the following new features (see the manual page for +complete descriptions and the CHANGES and NEWS files in the bash-4.2 distribution): +o `exec -a foo' now sets $0 to `foo' in an executable shell script without a + leading #!. + +o Subshells begun to execute command substitutions or run shell functions or + builtins in subshells do not reset trap strings until a new trap is + specified. This allows $(trap) to display the caller's traps and the + trap strings to persist until a new trap is set. + +o `trap -p' will now show signals ignored at shell startup, though their + disposition still cannot be modified. + +o $'...', echo, and printf understand \uXXXX and \UXXXXXXXX escape sequences. + +o declare/typeset has a new `-g' option, which creates variables in the + global scope even when run in a shell function. + +o test/[/[[ have a new -v variable unary operator, which returns success if + `variable' has been set. + +o Posix parsing changes to allow `! time command' and multiple consecutive + instances of `!' (which toggle) and `time' (which have no cumulative + effect). + +o Posix change to allow `time' as a command by itself to print the elapsed + user, system, and real times for the shell and its children. + +o $((...)) is always parsed as an arithmetic expansion first, instead of as + a potential nested command substitution, as Posix requires. + +o A new FUNCNEST variable to allow the user to control the maximum shell + function nesting (recursive execution) level. + +o The mapfile builtin now supplies a third argument to the callback command: + the line about to be assigned to the supplied array index. + +o The printf builtin has as new %(fmt)T specifier, which allows time values + to use strftime-like formatting. + +o There is a new `compat41' shell option. + +o The cd builtin has a new Posix-mandated `-e' option. + +o Negative subscripts to indexed arrays, previously errors, now are treated + as offsets from the maximum assigned index + 1. + +o Negative length specifications in the ${var:offset:length} expansion, + previously errors, are now treated as offsets from the end of the variable. + +o Parsing change to allow `time -p --'. + +o Posix-mode parsing change to not recognize `time' as a keyword if the + following token begins with a `-'. This means no more Posix-mode + `time -p'. Posix interpretation 267. + +o There is a new `lastpipe' shell option that runs the last command of a + pipeline in the current shell context. The lastpipe option has no + effect if job control is enabled. + +o History expansion no longer expands the `$!' variable expansion. + +o Posix mode shells no longer exit if a variable assignment error occurs + with an assignment preceding a command that is not a special builtin. + +o Non-interactive mode shells exit if -u is enabled an an attempt is made + to use an unset variable with the % or # expansions, the `//', `^', or + `,' expansions, or the parameter length expansion. + +o Posix-mode shells use the argument passed to `.' as-is if a $PATH search + fails, effectively searching the current directory. Posix-2008 change. + +A short feature history dating back to Bash-2.0: + +Bash-4.1 contained the following new features: + o Here-documents within $(...) command substitutions may once more be delimited by the closing right paren, instead of requiring a newline. @@ -502,8 +576,6 @@ o New bindable readline variable: enable-meta-key. Controls whether or not readline sends the smm/rmm sequences if the terminal indicates it has a meta key that enables eight-bit characters. -A short feature history dating from Bash-2.0: - Bash-4.0 contained the following new features: o When using substring expansion on the positional parameters, a starting @@ -901,14 +973,14 @@ grammar tighter and smaller (66 reduce-reduce conflicts gone) lots of code now smaller and faster test suite greatly expanded -B2) Are there any user-visible incompatibilities between bash-4.1 and +B2) Are there any user-visible incompatibilities between bash-4.2 and previous bash versions? -There are a few incompatibilities between version 4.1 and previous +There are a few incompatibilities between version 4.2 and previous versions. They are detailed in the file COMPAT in the bash distribution. That file is not meant to be all-encompassing; send mail to bash-maintainers@gnu.org (or bug-bash@gnu.org if you would like -community discussion) if if you find something that's not mentioned there. +community discussion) if you find something that's not mentioned there. Section C: Differences from other Unix shells @@ -1118,7 +1190,7 @@ C3) Which new features in ksh-93 are not in bash, and which are? This list is current through ksh93t+ (05/05/2009) -New things in ksh-93 not in bash-4.1: +New things in ksh-93 not in bash-4.2: floating point arithmetic and variables math library functions ${!name[sub]} name of subscript for associative array @@ -1140,7 +1212,7 @@ New things in ksh-93 not in bash-4.1: `fc' has been renamed to `hist' `.' can execute shell functions getopts -a - printf %B, %H, %P, %R, %T, %Z modifiers, output base for %d, `=' flag + printf %B, %H, %P, %R, %Z modifiers, output base for %d, `=' flag read -n/-N differ/-v set -o showme/-o multiline (bash default) `sleep' and `getconf' builtins (bash has loadable versions) @@ -1148,16 +1220,14 @@ New things in ksh-93 not in bash-4.1: [[ -R name ]] (checks whether or not name is a nameref) typeset -C/-S/-T/-X/-h/-s experimental `type' definitions (a la typedef) using typeset - negative subscripts for indexed array variables array expansions ${array[sub1..sub2]} and ${!array[sub1..sub2]} associative array assignments using `;' as element separator command substitution $(n<#) expands to current byte offset for fd N new '${ ' form of command substitution, executed in current shell new >;/<>;/<#pat/<##pat/<#/># redirections brace expansion printf-like formats - [[ -v var ]] operators (checks whether or not var is set) -New things in ksh-93 present in bash-4.1: +New things in ksh-93 present in bash-4.2: associative arrays [n]<&word- and [n]>&word- redirections (combination dup and close) for (( expr1; expr2; expr3 )) ; do list; done - arithmetic for command @@ -1165,6 +1235,7 @@ New things in ksh-93 present in bash-4.1: expansions: ${!param}, ${param:offset[:len]}, ${param/pat[/str]}, ${!param*} compound array assignment + negative subscripts for indexed array variables the `!' reserved word loadable builtins -- but ksh uses `builtin' while bash uses `enable' new $'...' and $"..." quoting @@ -1174,6 +1245,7 @@ New things in ksh-93 present in bash-4.1: `command', `builtin', `disown' builtins echo -e exec -c/-a + printf %T modifier read -A (bash uses read -a) read -t/-d trap -p @@ -1193,6 +1265,7 @@ New things in ksh-93 present in bash-4.1: negative offsets in ${param:offset:length} redirection operators preceded with {varname} to store fd number in varname DEBUG can force skipping following command + [[ -v var ]] operator (checks whether or not var is set) Section D: Why does bash do some things differently than other Unix shells? @@ -1778,7 +1851,8 @@ compat40 set - the < and > operators to the [[ command do not consider the current locale when comparing strings - interrupting a command list such as "a ; b ; c" causes the execution - of the entire list to be aborted + of the entire list to be aborted (in versions before bash-4.0, + interrupting one command in a list caused the next to be executed) Section F: Things to watch out for on certain Unix versions diff --git a/doc/Makefile.in b/doc/Makefile.in index 3e0e68b4..493985b8 100644 --- a/doc/Makefile.in +++ b/doc/Makefile.in @@ -161,7 +161,7 @@ html: ${HTMLFILES} pdf: ${PDFFILES} bashref.dvi: $(BASHREF_FILES) $(HSUSER) $(RLUSER) - ${SET_TEXINPUTS} $(TEXI2DVI) $(srcdir)/bashref.texi + ${SET_TEXINPUTS} $(TEXI2DVI) $(srcdir)/bashref.texi || { ${RM} $@ ; exit 1; } bashref.info: $(BASHREF_FILES) $(HSUSER) $(RLUSER) $(MAKEINFO) --no-split -I$(TEXINPUTDIR) $(srcdir)/bashref.texi diff --git a/doc/bash.0 b/doc/bash.0 index 675cd2f7..86d8b703 100644 --- a/doc/bash.0 +++ b/doc/bash.0 @@ -9,7 +9,7 @@ SSYYNNOOPPSSIISS bbaasshh [options] [file] CCOOPPYYRRIIGGHHTT - Bash is Copyright (C) 1989-2009 by the Free Software Foundation, Inc. + Bash is Copyright (C) 1989-2010 by the Free Software Foundation, Inc. DDEESSCCRRIIPPTTIIOONN BBaasshh is an sshh-compatible command language interpreter that executes @@ -21,82 +21,81 @@ DDEESSCCRRIIPPTTIIOONN 1003.1). BBaasshh can be configured to be POSIX-conformant by default. OOPPTTIIOONNSS - In addition to the single-character shell options documented in the - description of the sseett builtin command, bbaasshh interprets the following - options when it is invoked: + All of the single-character shell options documented in the descrip- + tion of the sseett builtin command can be used as options when the shell + is invoked. In addition, bbaasshh interprets the following options when it + is invoked: - --cc _s_t_r_i_n_g If the --cc option is present, then commands are read from - _s_t_r_i_n_g. If there are arguments after the _s_t_r_i_n_g, they are + --cc _s_t_r_i_n_g If the --cc option is present, then commands are read from + _s_t_r_i_n_g. If there are arguments after the _s_t_r_i_n_g, they are assigned to the positional parameters, starting with $$00. --ii If the --ii option is present, the shell is _i_n_t_e_r_a_c_t_i_v_e. --ll Make bbaasshh act as if it had been invoked as a login shell (see IINNVVOOCCAATTIIOONN below). - --rr If the --rr option is present, the shell becomes _r_e_s_t_r_i_c_t_e_d + --rr If the --rr option is present, the shell becomes _r_e_s_t_r_i_c_t_e_d (see RREESSTTRRIICCTTEEDD SSHHEELLLL below). - --ss If the --ss option is present, or if no arguments remain after - option processing, then commands are read from the standard - input. This option allows the positional parameters to be + --ss If the --ss option is present, or if no arguments remain after + option processing, then commands are read from the standard + input. This option allows the positional parameters to be set when invoking an interactive shell. - --DD A list of all double-quoted strings preceded by $$ is printed - on the standard output. These are the strings that are sub- + --DD A list of all double-quoted strings preceded by $$ is printed + on the standard output. These are the strings that are sub- ject to language translation when the current locale is not CC - or PPOOSSIIXX. This implies the --nn option; no commands will be + or PPOOSSIIXX. This implies the --nn option; no commands will be executed. [[--++]]OO [[_s_h_o_p_t___o_p_t_i_o_n]] - _s_h_o_p_t___o_p_t_i_o_n is one of the shell options accepted by the - sshhoopptt builtin (see SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS below). If + _s_h_o_p_t___o_p_t_i_o_n is one of the shell options accepted by the + sshhoopptt builtin (see SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS below). If _s_h_o_p_t___o_p_t_i_o_n is present, --OO sets the value of that option; ++OO - unsets it. If _s_h_o_p_t___o_p_t_i_o_n is not supplied, the names and - values of the shell options accepted by sshhoopptt are printed on - the standard output. If the invocation option is ++OO, the - output is displayed in a format that may be reused as input. - ---- A ---- signals the end of options and disables further option - processing. Any arguments after the ---- are treated as file- + unsets it. If _s_h_o_p_t___o_p_t_i_o_n is not supplied, the names and + values of the shell options accepted by sshhoopptt are printed on + the standard output. If the invocation option is ++OO, the + output is displayed in a format that may be reused as input. + ---- A ---- signals the end of options and disables further option + processing. Any arguments after the ---- are treated as file- names and arguments. An argument of -- is equivalent to ----. - BBaasshh also interprets a number of multi-character options. These - options must appear on the command line before the single-character + BBaasshh also interprets a number of multi-character options. These + options must appear on the command line before the single-character options to be recognized. ----ddeebbuuggggeerr Arrange for the debugger profile to be executed before the shell - starts. Turns on extended debugging mode (see the description - of the eexxttddeebbuugg option to the sshhoopptt builtin below) and shell - function tracing (see the description of the --oo ffuunnccttrraaccee option - to the sseett builtin below). + starts. Turns on extended debugging mode (see the description + of the eexxttddeebbuugg option to the sshhoopptt builtin below). ----dduummpp--ppoo--ssttrriinnggss - Equivalent to --DD, but the output is in the GNU _g_e_t_t_e_x_t ppoo (por- + Equivalent to --DD, but the output is in the GNU _g_e_t_t_e_x_t ppoo (por- table object) file format. ----dduummpp--ssttrriinnggss Equivalent to --DD. - ----hheellpp Display a usage message on standard output and exit success- + ----hheellpp Display a usage message on standard output and exit success- fully. ----iinniitt--ffiillee _f_i_l_e ----rrccffiillee _f_i_l_e Execute commands from _f_i_l_e instead of the standard personal ini- - tialization file _~_/_._b_a_s_h_r_c if the shell is interactive (see + tialization file _~_/_._b_a_s_h_r_c if the shell is interactive (see IINNVVOOCCAATTIIOONN below). ----llooggiinn Equivalent to --ll. ----nnooeeddiittiinngg - Do not use the GNU rreeaaddlliinnee library to read command lines when + Do not use the GNU rreeaaddlliinnee library to read command lines when the shell is interactive. ----nnoopprrooffiillee - Do not read either the system-wide startup file _/_e_t_c_/_p_r_o_f_i_l_e or - any of the personal initialization files _~_/_._b_a_s_h___p_r_o_f_i_l_e, - _~_/_._b_a_s_h___l_o_g_i_n, or _~_/_._p_r_o_f_i_l_e. By default, bbaasshh reads these - files when it is invoked as a login shell (see IINNVVOOCCAATTIIOONN + Do not read either the system-wide startup file _/_e_t_c_/_p_r_o_f_i_l_e or + any of the personal initialization files _~_/_._b_a_s_h___p_r_o_f_i_l_e, + _~_/_._b_a_s_h___l_o_g_i_n, or _~_/_._p_r_o_f_i_l_e. By default, bbaasshh reads these + files when it is invoked as a login shell (see IINNVVOOCCAATTIIOONN below). ----nnoorrcc Do not read and execute the personal initialization file - _~_/_._b_a_s_h_r_c if the shell is interactive. This option is on by + _~_/_._b_a_s_h_r_c if the shell is interactive. This option is on by default if the shell is invoked as sshh. ----ppoossiixx - Change the behavior of bbaasshh where the default operation differs + Change the behavior of bbaasshh where the default operation differs from the POSIX standard to match the standard (_p_o_s_i_x _m_o_d_e). ----rreessttrriicctteedd @@ -106,113 +105,113 @@ OOPPTTIIOONNSS Equivalent to --vv. ----vveerrssiioonn - Show version information for this instance of bbaasshh on the stan- + Show version information for this instance of bbaasshh on the stan- dard output and exit successfully. AARRGGUUMMEENNTTSS If arguments remain after option processing, and neither the --cc nor the - --ss option has been supplied, the first argument is assumed to be the - name of a file containing shell commands. If bbaasshh is invoked in this - fashion, $$00 is set to the name of the file, and the positional parame- - ters are set to the remaining arguments. BBaasshh reads and executes com- - mands from this file, then exits. BBaasshh's exit status is the exit sta- - tus of the last command executed in the script. If no commands are - executed, the exit status is 0. An attempt is first made to open the + --ss option has been supplied, the first argument is assumed to be the + name of a file containing shell commands. If bbaasshh is invoked in this + fashion, $$00 is set to the name of the file, and the positional parame- + ters are set to the remaining arguments. BBaasshh reads and executes com- + mands from this file, then exits. BBaasshh's exit status is the exit sta- + tus of the last command executed in the script. If no commands are + executed, the exit status is 0. An attempt is first made to open the file in the current directory, and, if no file is found, then the shell searches the directories in PPAATTHH for the script. IINNVVOOCCAATTIIOONN - A _l_o_g_i_n _s_h_e_l_l is one whose first character of argument zero is a --, or + A _l_o_g_i_n _s_h_e_l_l is one whose first character of argument zero is a --, or one started with the ----llooggiinn option. - An _i_n_t_e_r_a_c_t_i_v_e shell is one started without non-option arguments and + An _i_n_t_e_r_a_c_t_i_v_e shell is one started without non-option arguments and without the --cc option whose standard input and error are both connected - to terminals (as determined by _i_s_a_t_t_y(3)), or one started with the --ii - option. PPSS11 is set and $$-- includes ii if bbaasshh is interactive, allowing + to terminals (as determined by _i_s_a_t_t_y(3)), or one started with the --ii + option. PPSS11 is set and $$-- includes ii if bbaasshh is interactive, allowing a shell script or a startup file to test this state. - The following paragraphs describe how bbaasshh executes its startup files. - If any of the files exist but cannot be read, bbaasshh reports an error. + The following paragraphs describe how bbaasshh executes its startup files. + If any of the files exist but cannot be read, bbaasshh reports an error. Tildes are expanded in file names as described below under TTiillddee EExxppaann-- ssiioonn in the EEXXPPAANNSSIIOONN section. - When bbaasshh is invoked as an interactive login shell, or as a non-inter- - active shell with the ----llooggiinn option, it first reads and executes com- - mands from the file _/_e_t_c_/_p_r_o_f_i_l_e, if that file exists. After reading + When bbaasshh is invoked as an interactive login shell, or as a non-inter- + active shell with the ----llooggiinn option, it first reads and executes com- + mands from the file _/_e_t_c_/_p_r_o_f_i_l_e, if that file exists. After reading that file, it looks for _~_/_._b_a_s_h___p_r_o_f_i_l_e, _~_/_._b_a_s_h___l_o_g_i_n, and _~_/_._p_r_o_f_i_l_e, - in that order, and reads and executes commands from the first one that - exists and is readable. The ----nnoopprrooffiillee option may be used when the + in that order, and reads and executes commands from the first one that + exists and is readable. The ----nnoopprrooffiillee option may be used when the shell is started to inhibit this behavior. - When a login shell exits, bbaasshh reads and executes commands from the + When a login shell exits, bbaasshh reads and executes commands from the file _~_/_._b_a_s_h___l_o_g_o_u_t, if it exists. - When an interactive shell that is not a login shell is started, bbaasshh - reads and executes commands from _~_/_._b_a_s_h_r_c, if that file exists. This - may be inhibited by using the ----nnoorrcc option. The ----rrccffiillee _f_i_l_e option - will force bbaasshh to read and execute commands from _f_i_l_e instead of + When an interactive shell that is not a login shell is started, bbaasshh + reads and executes commands from _~_/_._b_a_s_h_r_c, if that file exists. This + may be inhibited by using the ----nnoorrcc option. The ----rrccffiillee _f_i_l_e option + will force bbaasshh to read and execute commands from _f_i_l_e instead of _~_/_._b_a_s_h_r_c. - When bbaasshh is started non-interactively, to run a shell script, for + When bbaasshh is started non-interactively, to run a shell script, for example, it looks for the variable BBAASSHH__EENNVV in the environment, expands - its value if it appears there, and uses the expanded value as the name - of a file to read and execute. BBaasshh behaves as if the following com- + its value if it appears there, and uses the expanded value as the name + of a file to read and execute. BBaasshh behaves as if the following com- mand were executed: if [ -n "$BASH_ENV" ]; then . "$BASH_ENV"; fi - but the value of the PPAATTHH variable is not used to search for the file + but the value of the PPAATTHH variable is not used to search for the file name. - If bbaasshh is invoked with the name sshh, it tries to mimic the startup - behavior of historical versions of sshh as closely as possible, while - conforming to the POSIX standard as well. When invoked as an interac- - tive login shell, or a non-interactive shell with the ----llooggiinn option, - it first attempts to read and execute commands from _/_e_t_c_/_p_r_o_f_i_l_e and - _~_/_._p_r_o_f_i_l_e, in that order. The ----nnoopprrooffiillee option may be used to - inhibit this behavior. When invoked as an interactive shell with the - name sshh, bbaasshh looks for the variable EENNVV, expands its value if it is - defined, and uses the expanded value as the name of a file to read and + If bbaasshh is invoked with the name sshh, it tries to mimic the startup + behavior of historical versions of sshh as closely as possible, while + conforming to the POSIX standard as well. When invoked as an interac- + tive login shell, or a non-interactive shell with the ----llooggiinn option, + it first attempts to read and execute commands from _/_e_t_c_/_p_r_o_f_i_l_e and + _~_/_._p_r_o_f_i_l_e, in that order. The ----nnoopprrooffiillee option may be used to + inhibit this behavior. When invoked as an interactive shell with the + name sshh, bbaasshh looks for the variable EENNVV, expands its value if it is + defined, and uses the expanded value as the name of a file to read and execute. Since a shell invoked as sshh does not attempt to read and exe- - cute commands from any other startup files, the ----rrccffiillee option has no - effect. A non-interactive shell invoked with the name sshh does not - attempt to read any other startup files. When invoked as sshh, bbaasshh + cute commands from any other startup files, the ----rrccffiillee option has no + effect. A non-interactive shell invoked with the name sshh does not + attempt to read any other startup files. When invoked as sshh, bbaasshh enters _p_o_s_i_x mode after the startup files are read. - When bbaasshh is started in _p_o_s_i_x mode, as with the ----ppoossiixx command line + When bbaasshh is started in _p_o_s_i_x mode, as with the ----ppoossiixx command line option, it follows the POSIX standard for startup files. In this mode, - interactive shells expand the EENNVV variable and commands are read and - executed from the file whose name is the expanded value. No other + interactive shells expand the EENNVV variable and commands are read and + executed from the file whose name is the expanded value. No other startup files are read. BBaasshh attempts to determine when it is being run with its standard input - connected to a a network connection, as if by the remote shell daemon, - usually _r_s_h_d, or the secure shell daemon _s_s_h_d. If bbaasshh determines it - is being run in this fashion, it reads and executes commands from - _~_/_._b_a_s_h_r_c, if that file exists and is readable. It will not do this if - invoked as sshh. The ----nnoorrcc option may be used to inhibit this behavior, - and the ----rrccffiillee option may be used to force another file to be read, - but _r_s_h_d does not generally invoke the shell with those options or - allow them to be specified. + connected to a network connection, as when executed by the remote shell + daemon, usually _r_s_h_d, or the secure shell daemon _s_s_h_d. If bbaasshh deter- + mines it is being run in this fashion, it reads and executes commands + from _~_/_._b_a_s_h_r_c, if that file exists and is readable. It will not do + this if invoked as sshh. The ----nnoorrcc option may be used to inhibit this + behavior, and the ----rrccffiillee option may be used to force another file to + be read, but _r_s_h_d does not generally invoke the shell with those + options or allow them to be specified. If the shell is started with the effective user (group) id not equal to the real user (group) id, and the --pp option is not supplied, no startup files are read, shell functions are not inherited from the environment, - the SSHHEELLLLOOPPTTSS, BBAASSHHOOPPTTSS, CCDDPPAATTHH, and GGLLOOBBIIGGNNOORREE variables, if they - appear in the environment, are ignored, and the effective user id is - set to the real user id. If the --pp option is supplied at invocation, - the startup behavior is the same, but the effective user id is not + the SSHHEELLLLOOPPTTSS, BBAASSHHOOPPTTSS, CCDDPPAATTHH, and GGLLOOBBIIGGNNOORREE variables, if they + appear in the environment, are ignored, and the effective user id is + set to the real user id. If the --pp option is supplied at invocation, + the startup behavior is the same, but the effective user id is not reset. DDEEFFIINNIITTIIOONNSS - The following definitions are used throughout the rest of this docu- + The following definitions are used throughout the rest of this docu- ment. bbllaannkk A space or tab. - wwoorrdd A sequence of characters considered as a single unit by the + wwoorrdd A sequence of characters considered as a single unit by the shell. Also known as a ttookkeenn. - nnaammee A _w_o_r_d consisting only of alphanumeric characters and under- - scores, and beginning with an alphabetic character or an under- + nnaammee A _w_o_r_d consisting only of alphanumeric characters and under- + scores, and beginning with an alphabetic character or an under- score. Also referred to as an iiddeennttiiffiieerr. mmeettaacchhaarraacctteerr - A character that, when unquoted, separates words. One of the + A character that, when unquoted, separates words. One of the following: || && ;; (( )) << >> ssppaaccee ttaabb ccoonnttrrooll ooppeerraattoorr @@ -223,52 +222,59 @@ DDEEFFIINNIITTIIOONNSS RREESSEERRVVEEDD WWOORRDDSS _R_e_s_e_r_v_e_d _w_o_r_d_s are words that have a special meaning to the shell. The following words are recognized as reserved when unquoted and either the - first word of a simple command (see SSHHEELLLL GGRRAAMMMMAARR below) or the third + first word of a simple command (see SSHHEELLLL GGRRAAMMMMAARR below) or the third word of a ccaassee or ffoorr command: - !! ccaassee ddoo ddoonnee eelliiff eellssee eessaacc ffii ffoorr ffuunnccttiioonn iiff iinn sseelleecctt tthheenn uunnttiill + !! ccaassee ddoo ddoonnee eelliiff eellssee eessaacc ffii ffoorr ffuunnccttiioonn iiff iinn sseelleecctt tthheenn uunnttiill wwhhiillee {{ }} ttiimmee [[[[ ]]]] SSHHEELLLL GGRRAAMMMMAARR SSiimmppllee CCoommmmaannddss - A _s_i_m_p_l_e _c_o_m_m_a_n_d is a sequence of optional variable assignments fol- - lowed by bbllaannkk-separated words and redirections, and terminated by a + A _s_i_m_p_l_e _c_o_m_m_a_n_d is a sequence of optional variable assignments fol- + lowed by bbllaannkk-separated words and redirections, and terminated by a _c_o_n_t_r_o_l _o_p_e_r_a_t_o_r. The first word specifies the command to be executed, - and is passed as argument zero. The remaining words are passed as + and is passed as argument zero. The remaining words are passed as arguments to the invoked command. - The return value of a _s_i_m_p_l_e _c_o_m_m_a_n_d is its exit status, or 128+_n if + The return value of a _s_i_m_p_l_e _c_o_m_m_a_n_d is its exit status, or 128+_n if the command is terminated by signal _n. PPiippeelliinneess - A _p_i_p_e_l_i_n_e is a sequence of one or more commands separated by one of + A _p_i_p_e_l_i_n_e is a sequence of one or more commands separated by one of the control operators || or ||&&. The format for a pipeline is: [ttiimmee [--pp]] [ ! ] _c_o_m_m_a_n_d [ [|||||&&] _c_o_m_m_a_n_d_2 ... ] - The standard output of _c_o_m_m_a_n_d is connected via a pipe to the standard - input of _c_o_m_m_a_n_d_2. This connection is performed before any redirec- + The standard output of _c_o_m_m_a_n_d is connected via a pipe to the standard + input of _c_o_m_m_a_n_d_2. This connection is performed before any redirec- tions specified by the command (see RREEDDIIRREECCTTIIOONN below). If ||&& is used, the standard error of _c_o_m_m_a_n_d is connected to _c_o_m_m_a_n_d_2's standard input - through the pipe; it is shorthand for 22>>&&11 ||. This implicit redirect- + through the pipe; it is shorthand for 22>>&&11 ||. This implicit redirect- ion of the standard error is performed after any redirections specified by the command. The return status of a pipeline is the exit status of the last command, - unless the ppiippeeffaaiill option is enabled. If ppiippeeffaaiill is enabled, the - pipeline's return status is the value of the last (rightmost) command - to exit with a non-zero status, or zero if all commands exit success- + unless the ppiippeeffaaiill option is enabled. If ppiippeeffaaiill is enabled, the + pipeline's return status is the value of the last (rightmost) command + to exit with a non-zero status, or zero if all commands exit success- fully. If the reserved word !! precedes a pipeline, the exit status of - that pipeline is the logical negation of the exit status as described - above. The shell waits for all commands in the pipeline to terminate + that pipeline is the logical negation of the exit status as described + above. The shell waits for all commands in the pipeline to terminate before returning a value. - If the ttiimmee reserved word precedes a pipeline, the elapsed as well as - user and system time consumed by its execution are reported when the - pipeline terminates. The --pp option changes the output format to that - specified by POSIX. The TTIIMMEEFFOORRMMAATT variable may be set to a format - string that specifies how the timing information should be displayed; - see the description of TTIIMMEEFFOORRMMAATT under SShheellll VVaarriiaabblleess below. + If the ttiimmee reserved word precedes a pipeline, the elapsed as well as + user and system time consumed by its execution are reported when the + pipeline terminates. The --pp option changes the output format to that + specified by POSIX. When the shell is in _p_o_s_i_x _m_o_d_e, it does not rec- + ognize ttiimmee as a reserved word if the next token begins with a `-'. + The TTIIMMEEFFOORRMMAATT variable may be set to a format string that specifies + how the timing information should be displayed; see the description of + TTIIMMEEFFOORRMMAATT under SShheellll VVaarriiaabblleess below. + + When the shell is in _p_o_s_i_x _m_o_d_e, ttiimmee may be followed by a newline. In + this case, the shell displays the total user and system time consumed + by the shell and its children. The TTIIMMEEFFOORRMMAATT variable may be used to + specify the format of the time information. Each command in a pipeline is executed as a separate process (i.e., in a subshell). @@ -345,7 +351,7 @@ SSHHEELLLL GGRRAAMMMMAARR tional operators such as --ff must be unquoted to be recognized as primaries. - When used with [[[[, The << and >> operators sort lexicographically + When used with [[[[, the << and >> operators sort lexicographically using the current locale. When the ==== and !!== operators are used, the string to the right @@ -458,117 +464,119 @@ SSHHEELLLL GGRRAAMMMMAARR tus of the last command executed, or zero if no condition tested true. - wwhhiillee _l_i_s_t; ddoo _l_i_s_t; ddoonnee - uunnttiill _l_i_s_t; ddoo _l_i_s_t; ddoonnee - The wwhhiillee command continuously executes the ddoo _l_i_s_t as long as - the last command in _l_i_s_t returns an exit status of zero. The - uunnttiill command is identical to the wwhhiillee command, except that the - test is negated; the ddoo _l_i_s_t is executed as long as the last - command in _l_i_s_t returns a non-zero exit status. The exit status - of the wwhhiillee and uunnttiill commands is the exit status of the last - ddoo _l_i_s_t command executed, or zero if none was executed. + wwhhiillee _l_i_s_t_-_1; ddoo _l_i_s_t_-_2; ddoonnee + uunnttiill _l_i_s_t_-_1; ddoo _l_i_s_t_-_2; ddoonnee + The wwhhiillee command continuously executes the list _l_i_s_t_-_2 as long + as the last command in the list _l_i_s_t_-_1 returns an exit status of + zero. The uunnttiill command is identical to the wwhhiillee command, + except that the test is negated; _l_i_s_t_-_2 is executed as long as + the last command in _l_i_s_t_-_1 returns a non-zero exit status. The + exit status of the wwhhiillee and uunnttiill commands is the exit status + of the last command executed in _l_i_s_t_-_2, or zero if none was exe- + cuted. CCoopprroocceesssseess A _c_o_p_r_o_c_e_s_s is a shell command preceded by the ccoopprroocc reserved word. A - coprocess is executed asynchronously in a subshell, as if the command - had been terminated with the && control operator, with a two-way pipe + coprocess is executed asynchronously in a subshell, as if the command + had been terminated with the && control operator, with a two-way pipe established between the executing shell and the coprocess. The format for a coprocess is: ccoopprroocc [_N_A_M_E] _c_o_m_m_a_n_d [_r_e_d_i_r_e_c_t_i_o_n_s] - This creates a coprocess named _N_A_M_E. If _N_A_M_E is not supplied, the + This creates a coprocess named _N_A_M_E. If _N_A_M_E is not supplied, the default name is _C_O_P_R_O_C. _N_A_M_E must not be supplied if _c_o_m_m_a_n_d is a _s_i_m_- _p_l_e _c_o_m_m_a_n_d (see above); otherwise, it is interpreted as the first word - of the simple command. When the coproc is executed, the shell creates - an array variable (see AArrrraayyss below) named _N_A_M_E in the context of the - executing shell. The standard output of _c_o_m_m_a_n_d is connected via a - pipe to a file descriptor in the executing shell, and that file - descriptor is assigned to _N_A_M_E[0]. The standard input of _c_o_m_m_a_n_d is - connected via a pipe to a file descriptor in the executing shell, and - that file descriptor is assigned to _N_A_M_E[1]. This pipe is established - before any redirections specified by the command (see RREEDDIIRREECCTTIIOONN - below). The file descriptors can be utilized as arguments to shell - commands and redirections using standard word expansions. The process - id of the shell spawned to execute the coprocess is available as the - value of the variable _N_A_M_E_PID. The wwaaiitt builtin command may be used + of the simple command. When the coproc is executed, the shell creates + an array variable (see AArrrraayyss below) named _N_A_M_E in the context of the + executing shell. The standard output of _c_o_m_m_a_n_d is connected via a + pipe to a file descriptor in the executing shell, and that file + descriptor is assigned to _N_A_M_E[0]. The standard input of _c_o_m_m_a_n_d is + connected via a pipe to a file descriptor in the executing shell, and + that file descriptor is assigned to _N_A_M_E[1]. This pipe is established + before any redirections specified by the command (see RREEDDIIRREECCTTIIOONN + below). The file descriptors can be utilized as arguments to shell + commands and redirections using standard word expansions. The process + ID of the shell spawned to execute the coprocess is available as the + value of the variable _N_A_M_E_PID. The wwaaiitt builtin command may be used to wait for the coprocess to terminate. The return status of a coprocess is the exit status of _c_o_m_m_a_n_d. SShheellll FFuunnccttiioonn DDeeffiinniittiioonnss - A shell function is an object that is called like a simple command and - executes a compound command with a new set of positional parameters. + A shell function is an object that is called like a simple command and + executes a compound command with a new set of positional parameters. Shell functions are declared as follows: - [ ffuunnccttiioonn ] _n_a_m_e () _c_o_m_p_o_u_n_d_-_c_o_m_m_a_n_d [_r_e_d_i_r_e_c_t_i_o_n] - This defines a function named _n_a_m_e. The reserved word ffuunnccttiioonn - is optional. If the ffuunnccttiioonn reserved word is supplied, the - parentheses are optional. The _b_o_d_y of the function is the com- - pound command _c_o_m_p_o_u_n_d_-_c_o_m_m_a_n_d (see CCoommppoouunndd CCoommmmaannddss above). - That command is usually a _l_i_s_t of commands between { and }, but - may be any command listed under CCoommppoouunndd CCoommmmaannddss above. _c_o_m_- + _n_a_m_e () _c_o_m_p_o_u_n_d_-_c_o_m_m_a_n_d [_r_e_d_i_r_e_c_t_i_o_n] + ffuunnccttiioonn _n_a_m_e [()] _c_o_m_p_o_u_n_d_-_c_o_m_m_a_n_d [_r_e_d_i_r_e_c_t_i_o_n] + This defines a function named _n_a_m_e. The reserved word ffuunnccttiioonn + is optional. If the ffuunnccttiioonn reserved word is supplied, the + parentheses are optional. The _b_o_d_y of the function is the com- + pound command _c_o_m_p_o_u_n_d_-_c_o_m_m_a_n_d (see CCoommppoouunndd CCoommmmaannddss above). + That command is usually a _l_i_s_t of commands between { and }, but + may be any command listed under CCoommppoouunndd CCoommmmaannddss above. _c_o_m_- _p_o_u_n_d_-_c_o_m_m_a_n_d is executed whenever _n_a_m_e is specified as the name - of a simple command. Any redirections (see RREEDDIIRREECCTTIIOONN below) - specified when a function is defined are performed when the - function is executed. The exit status of a function definition + of a simple command. Any redirections (see RREEDDIIRREECCTTIIOONN below) + specified when a function is defined are performed when the + function is executed. The exit status of a function definition is zero unless a syntax error occurs or a readonly function with the same name already exists. When executed, the exit status of - a function is the exit status of the last command executed in + a function is the exit status of the last command executed in the body. (See FFUUNNCCTTIIOONNSS below.) CCOOMMMMEENNTTSS In a non-interactive shell, or an interactive shell in which the iinntteerr-- - aaccttiivvee__ccoommmmeennttss option to the sshhoopptt builtin is enabled (see SSHHEELLLL - BBUUIILLTTIINN CCOOMMMMAANNDDSS below), a word beginning with ## causes that word and - all remaining characters on that line to be ignored. An interactive - shell without the iinntteerraaccttiivvee__ccoommmmeennttss option enabled does not allow + aaccttiivvee__ccoommmmeennttss option to the sshhoopptt builtin is enabled (see SSHHEELLLL + BBUUIILLTTIINN CCOOMMMMAANNDDSS below), a word beginning with ## causes that word and + all remaining characters on that line to be ignored. An interactive + shell without the iinntteerraaccttiivvee__ccoommmmeennttss option enabled does not allow comments. The iinntteerraaccttiivvee__ccoommmmeennttss option is on by default in interac- tive shells. QQUUOOTTIINNGG - _Q_u_o_t_i_n_g is used to remove the special meaning of certain characters or - words to the shell. Quoting can be used to disable special treatment + _Q_u_o_t_i_n_g is used to remove the special meaning of certain characters or + words to the shell. Quoting can be used to disable special treatment for special characters, to prevent reserved words from being recognized as such, and to prevent parameter expansion. - Each of the _m_e_t_a_c_h_a_r_a_c_t_e_r_s listed above under DDEEFFIINNIITTIIOONNSS has special + Each of the _m_e_t_a_c_h_a_r_a_c_t_e_r_s listed above under DDEEFFIINNIITTIIOONNSS has special meaning to the shell and must be quoted if it is to represent itself. - When the command history expansion facilities are being used (see HHIISS-- + When the command history expansion facilities are being used (see HHIISS-- TTOORRYY EEXXPPAANNSSIIOONN below), the _h_i_s_t_o_r_y _e_x_p_a_n_s_i_o_n character, usually !!, must be quoted to prevent history expansion. - There are three quoting mechanisms: the _e_s_c_a_p_e _c_h_a_r_a_c_t_e_r, single + There are three quoting mechanisms: the _e_s_c_a_p_e _c_h_a_r_a_c_t_e_r, single quotes, and double quotes. - A non-quoted backslash (\\) is the _e_s_c_a_p_e _c_h_a_r_a_c_t_e_r. It preserves the + A non-quoted backslash (\\) is the _e_s_c_a_p_e _c_h_a_r_a_c_t_e_r. It preserves the literal value of the next character that follows, with the exception of - . If a \\ pair appears, and the backslash is not - itself quoted, the \\ is treated as a line continuation (that + . If a \\ pair appears, and the backslash is not + itself quoted, the \\ is treated as a line continuation (that is, it is removed from the input stream and effectively ignored). - Enclosing characters in single quotes preserves the literal value of + Enclosing characters in single quotes preserves the literal value of each character within the quotes. A single quote may not occur between single quotes, even when preceded by a backslash. - Enclosing characters in double quotes preserves the literal value of - all characters within the quotes, with the exception of $$, ``, \\, and, - when history expansion is enabled, !!. The characters $$ and `` retain - their special meaning within double quotes. The backslash retains its - special meaning only when followed by one of the following characters: - $$, ``, "", \\, or <>. A double quote may be quoted within double + Enclosing characters in double quotes preserves the literal value of + all characters within the quotes, with the exception of $$, ``, \\, and, + when history expansion is enabled, !!. The characters $$ and `` retain + their special meaning within double quotes. The backslash retains its + special meaning only when followed by one of the following characters: + $$, ``, "", \\, or <>. A double quote may be quoted within double quotes by preceding it with a backslash. If enabled, history expansion - will be performed unless an !! appearing in double quotes is escaped + will be performed unless an !! appearing in double quotes is escaped using a backslash. The backslash preceding the !! is not removed. - The special parameters ** and @@ have special meaning when in double + The special parameters ** and @@ have special meaning when in double quotes (see PPAARRAAMMEETTEERRSS below). Words of the form $$'_s_t_r_i_n_g' are treated specially. The word expands to - _s_t_r_i_n_g, with backslash-escaped characters replaced as specified by the - ANSI C standard. Backslash escape sequences, if present, are decoded + _s_t_r_i_n_g, with backslash-escaped characters replaced as specified by the + ANSI C standard. Backslash escape sequences, if present, are decoded as follows: \\aa alert (bell) \\bb backspace @@ -582,178 +590,182 @@ QQUUOOTTIINNGG \\\\ backslash \\'' single quote \\"" double quote - \\_n_n_n the eight-bit character whose value is the octal value + \\_n_n_n the eight-bit character whose value is the octal value _n_n_n (one to three digits) - \\xx_H_H the eight-bit character whose value is the hexadecimal + \\xx_H_H the eight-bit character whose value is the hexadecimal value _H_H (one or two hex digits) + \\uu_H_H_H_H the Unicode (ISO/IEC 10646) character whose value is the + hexadecimal value _H_H_H_H (one to four hex digits) + \\UU_H_H_H_H_H_H_H_H + the Unicode (ISO/IEC 10646) character whose value is the + hexadecimal value _H_H_H_H_H_H_H_H (one to eight hex digits) \\cc_x a control-_x character - The expanded result is single-quoted, as if the dollar sign had not + The expanded result is single-quoted, as if the dollar sign had not been present. A double-quoted string preceded by a dollar sign ($$"_s_t_r_i_n_g") will cause - the string to be translated according to the current locale. If the - current locale is CC or PPOOSSIIXX, the dollar sign is ignored. If the + the string to be translated according to the current locale. If the + current locale is CC or PPOOSSIIXX, the dollar sign is ignored. If the string is translated and replaced, the replacement is double-quoted. PPAARRAAMMEETTEERRSS - A _p_a_r_a_m_e_t_e_r is an entity that stores values. It can be a _n_a_m_e, a num- + A _p_a_r_a_m_e_t_e_r is an entity that stores values. It can be a _n_a_m_e, a num- ber, or one of the special characters listed below under SSppeecciiaall PPaarraamm-- - eetteerrss. A _v_a_r_i_a_b_l_e is a parameter denoted by a _n_a_m_e. A variable has a - _v_a_l_u_e and zero or more _a_t_t_r_i_b_u_t_e_s. Attributes are assigned using the - ddeeccllaarree builtin command (see ddeeccllaarree below in SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS). + eetteerrss. A _v_a_r_i_a_b_l_e is a parameter denoted by a _n_a_m_e. A variable has a + _v_a_l_u_e and zero or more _a_t_t_r_i_b_u_t_e_s. Attributes are assigned using the + ddeeccllaarree builtin command (see ddeeccllaarree below in SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS). A parameter is set if it has been assigned a value. The null string is - a valid value. Once a variable is set, it may be unset only by using + a valid value. Once a variable is set, it may be unset only by using the uunnsseett builtin command (see SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS below). A _v_a_r_i_a_b_l_e may be assigned to by a statement of the form _n_a_m_e=[_v_a_l_u_e] - If _v_a_l_u_e is not given, the variable is assigned the null string. All - _v_a_l_u_e_s undergo tilde expansion, parameter and variable expansion, com- - mand substitution, arithmetic expansion, and quote removal (see EEXXPPAANN-- + If _v_a_l_u_e is not given, the variable is assigned the null string. All + _v_a_l_u_e_s undergo tilde expansion, parameter and variable expansion, com- + mand substitution, arithmetic expansion, and quote removal (see EEXXPPAANN-- SSIIOONN below). If the variable has its iinntteeggeerr attribute set, then _v_a_l_u_e is evaluated as an arithmetic expression even if the $((...)) expansion - is not used (see AArriitthhmmeettiicc EExxppaannssiioonn below). Word splitting is not - performed, with the exception of ""$$@@"" as explained below under SSppeecciiaall - PPaarraammeetteerrss. Pathname expansion is not performed. Assignment state- - ments may also appear as arguments to the aalliiaass, ddeeccllaarree, ttyyppeesseett, + is not used (see AArriitthhmmeettiicc EExxppaannssiioonn below). Word splitting is not + performed, with the exception of ""$$@@"" as explained below under SSppeecciiaall + PPaarraammeetteerrss. Pathname expansion is not performed. Assignment state- + ments may also appear as arguments to the aalliiaass, ddeeccllaarree, ttyyppeesseett, eexxppoorrtt, rreeaaddoonnllyy, and llooccaall builtin commands. - In the context where an assignment statement is assigning a value to a + In the context where an assignment statement is assigning a value to a shell variable or array index, the += operator can be used to append to or add to the variable's previous value. When += is applied to a vari- - able for which the integer attribute has been set, _v_a_l_u_e is evaluated - as an arithmetic expression and added to the variable's current value, + able for which the _i_n_t_e_g_e_r attribute has been set, _v_a_l_u_e is evaluated + as an arithmetic expression and added to the variable's current value, which is also evaluated. When += is applied to an array variable using - compound assignment (see AArrrraayyss below), the variable's value is not + compound assignment (see AArrrraayyss below), the variable's value is not unset (as it is when using =), and new values are appended to the array - beginning at one greater than the array's maximum index (for indexed + beginning at one greater than the array's maximum index (for indexed arrays) or added as additional key-value pairs in an associative array. - When applied to a string-valued variable, _v_a_l_u_e is expanded and + When applied to a string-valued variable, _v_a_l_u_e is expanded and appended to the variable's value. PPoossiittiioonnaall PPaarraammeetteerrss - A _p_o_s_i_t_i_o_n_a_l _p_a_r_a_m_e_t_e_r is a parameter denoted by one or more digits, + A _p_o_s_i_t_i_o_n_a_l _p_a_r_a_m_e_t_e_r is a parameter denoted by one or more digits, other than the single digit 0. Positional parameters are assigned from - the shell's arguments when it is invoked, and may be reassigned using - the sseett builtin command. Positional parameters may not be assigned to - with assignment statements. The positional parameters are temporarily + the shell's arguments when it is invoked, and may be reassigned using + the sseett builtin command. Positional parameters may not be assigned to + with assignment statements. The positional parameters are temporarily replaced when a shell function is executed (see FFUUNNCCTTIIOONNSS below). - When a positional parameter consisting of more than a single digit is + When a positional parameter consisting of more than a single digit is expanded, it must be enclosed in braces (see EEXXPPAANNSSIIOONN below). SSppeecciiaall PPaarraammeetteerrss - The shell treats several parameters specially. These parameters may + The shell treats several parameters specially. These parameters may only be referenced; assignment to them is not allowed. - ** Expands to the positional parameters, starting from one. When - the expansion occurs within double quotes, it expands to a sin- + ** Expands to the positional parameters, starting from one. When + the expansion occurs within double quotes, it expands to a sin- gle word with the value of each parameter separated by the first character of the IIFFSS special variable. That is, "$$**" is equiva- lent to "$$11_c$$22_c......", where _c is the first character of the value - of the IIFFSS variable. If IIFFSS is unset, the parameters are sepa- - rated by spaces. If IIFFSS is null, the parameters are joined + of the IIFFSS variable. If IIFFSS is unset, the parameters are sepa- + rated by spaces. If IIFFSS is null, the parameters are joined without intervening separators. - @@ Expands to the positional parameters, starting from one. When + @@ Expands to the positional parameters, starting from one. When the expansion occurs within double quotes, each parameter expands to a separate word. That is, "$$@@" is equivalent to "$$11" - "$$22" ... If the double-quoted expansion occurs within a word, - the expansion of the first parameter is joined with the begin- - ning part of the original word, and the expansion of the last - parameter is joined with the last part of the original word. - When there are no positional parameters, "$$@@" and $$@@ expand to + "$$22" ... If the double-quoted expansion occurs within a word, + the expansion of the first parameter is joined with the begin- + ning part of the original word, and the expansion of the last + parameter is joined with the last part of the original word. + When there are no positional parameters, "$$@@" and $$@@ expand to nothing (i.e., they are removed). ## Expands to the number of positional parameters in decimal. - ?? Expands to the exit status of the most recently executed fore- + ?? Expands to the exit status of the most recently executed fore- ground pipeline. - -- Expands to the current option flags as specified upon invoca- - tion, by the sseett builtin command, or those set by the shell + -- Expands to the current option flags as specified upon invoca- + tion, by the sseett builtin command, or those set by the shell itself (such as the --ii option). - $$ Expands to the process ID of the shell. In a () subshell, it - expands to the process ID of the current shell, not the sub- + $$ Expands to the process ID of the shell. In a () subshell, it + expands to the process ID of the current shell, not the sub- shell. - !! Expands to the process ID of the most recently executed back- + !! Expands to the process ID of the most recently executed back- ground (asynchronous) command. - 00 Expands to the name of the shell or shell script. This is set + 00 Expands to the name of the shell or shell script. This is set at shell initialization. If bbaasshh is invoked with a file of com- - mands, $$00 is set to the name of that file. If bbaasshh is started - with the --cc option, then $$00 is set to the first argument after - the string to be executed, if one is present. Otherwise, it is - set to the file name used to invoke bbaasshh, as given by argument + mands, $$00 is set to the name of that file. If bbaasshh is started + with the --cc option, then $$00 is set to the first argument after + the string to be executed, if one is present. Otherwise, it is + set to the file name used to invoke bbaasshh, as given by argument zero. - __ At shell startup, set to the absolute pathname used to invoke - the shell or shell script being executed as passed in the envi- - ronment or argument list. Subsequently, expands to the last - argument to the previous command, after expansion. Also set to - the full pathname used to invoke each command executed and + __ At shell startup, set to the absolute pathname used to invoke + the shell or shell script being executed as passed in the envi- + ronment or argument list. Subsequently, expands to the last + argument to the previous command, after expansion. Also set to + the full pathname used to invoke each command executed and placed in the environment exported to that command. When check- - ing mail, this parameter holds the name of the mail file cur- + ing mail, this parameter holds the name of the mail file cur- rently being checked. SShheellll VVaarriiaabblleess The following variables are set by the shell: - BBAASSHH Expands to the full file name used to invoke this instance of + BBAASSHH Expands to the full file name used to invoke this instance of bbaasshh. BBAASSHHOOPPTTSS - A colon-separated list of enabled shell options. Each word in - the list is a valid argument for the --ss option to the sshhoopptt + A colon-separated list of enabled shell options. Each word in + the list is a valid argument for the --ss option to the sshhoopptt builtin command (see SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS below). The options - appearing in BBAASSHHOOPPTTSS are those reported as _o_n by sshhoopptt. If - this variable is in the environment when bbaasshh starts up, each - shell option in the list will be enabled before reading any + appearing in BBAASSHHOOPPTTSS are those reported as _o_n by sshhoopptt. If + this variable is in the environment when bbaasshh starts up, each + shell option in the list will be enabled before reading any startup files. This variable is read-only. BBAASSHHPPIIDD - Expands to the process id of the current bbaasshh process. This - differs from $$$$ under certain circumstances, such as subshells + Expands to the process ID of the current bbaasshh process. This + differs from $$$$ under certain circumstances, such as subshells that do not require bbaasshh to be re-initialized. BBAASSHH__AALLIIAASSEESS - An associative array variable whose members correspond to the - internal list of aliases as maintained by the aalliiaass builtin Ele- - ments added to this array appear in the alias list; unsetting - array elements cause aliases to be removed from the alias list. + An associative array variable whose members correspond to the + internal list of aliases as maintained by the aalliiaass builtin. + Elements added to this array appear in the alias list; unsetting + array elements cause aliases to be removed from the alias list. BBAASSHH__AARRGGCC - An array variable whose values are the number of parameters in + An array variable whose values are the number of parameters in each frame of the current bbaasshh execution call stack. The number - of parameters to the current subroutine (shell function or - script executed with .. or ssoouurrccee) is at the top of the stack. - When a subroutine is executed, the number of parameters passed + of parameters to the current subroutine (shell function or + script executed with .. or ssoouurrccee) is at the top of the stack. + When a subroutine is executed, the number of parameters passed is pushed onto BBAASSHH__AARRGGCC. The shell sets BBAASSHH__AARRGGCC only when in - extended debugging mode (see the description of the eexxttddeebbuugg + extended debugging mode (see the description of the eexxttddeebbuugg option to the sshhoopptt builtin below) BBAASSHH__AARRGGVV - An array variable containing all of the parameters in the cur- + An array variable containing all of the parameters in the cur- rent bbaasshh execution call stack. The final parameter of the last - subroutine call is at the top of the stack; the first parameter + subroutine call is at the top of the stack; the first parameter of the initial call is at the bottom. When a subroutine is exe- - cuted, the parameters supplied are pushed onto BBAASSHH__AARRGGVV. The - shell sets BBAASSHH__AARRGGVV only when in extended debugging mode (see - the description of the eexxttddeebbuugg option to the sshhoopptt builtin + cuted, the parameters supplied are pushed onto BBAASSHH__AARRGGVV. The + shell sets BBAASSHH__AARRGGVV only when in extended debugging mode (see + the description of the eexxttddeebbuugg option to the sshhoopptt builtin below) BBAASSHH__CCMMDDSS - An associative array variable whose members correspond to the - internal hash table of commands as maintained by the hhaasshh + An associative array variable whose members correspond to the + internal hash table of commands as maintained by the hhaasshh builtin. Elements added to this array appear in the hash table; - unsetting array elements cause commands to be removed from the + unsetting array elements cause commands to be removed from the hash table. BBAASSHH__CCOOMMMMAANNDD - The command currently being executed or about to be executed, + The command currently being executed or about to be executed, unless the shell is executing a command as the result of a trap, - in which case it is the command executing at the time of the + in which case it is the command executing at the time of the trap. BBAASSHH__EEXXEECCUUTTIIOONN__SSTTRRIINNGG The command argument to the --cc invocation option. BBAASSHH__LLIINNEENNOO - An array variable whose members are the line numbers in source - files corresponding to each member of FFUUNNCCNNAAMMEE. - $${{BBAASSHH__LLIINNEENNOO[[_$_i]]}} is the line number in the source file where - $${{FFUUNNCCNNAAMMEE[[_$_i]]}} was called (or $${{BBAASSHH__LLIINNEENNOO[[_$_i_-_1]]}} if refer- - enced within another shell function). The corresponding source - file name is $${{BBAASSHH__SSOOUURRCCEE[[_$_i]]}}. Use LLIINNEENNOO to obtain the cur- - rent line number. + An array variable whose members are the line numbers in source + files where each corresponding member of FFUUNNCCNNAAMMEE was invoked. + $${{BBAASSHH__LLIINNEENNOO[[_$_i]]}} is the line number in the source file + ($${{BBAASSHH__SSOOUURRCCEE[[_$_i_+_1]]}}) where $${{FFUUNNCCNNAAMMEE[[_$_i]]}} was called (or + $${{BBAASSHH__LLIINNEENNOO[[_$_i_-_1]]}} if referenced within another shell func- + tion). Use LLIINNEENNOO to obtain the current line number. BBAASSHH__RREEMMAATTCCHH An array variable whose members are assigned by the ==~~ binary operator to the [[[[ conditional command. The element with index @@ -762,30 +774,33 @@ PPAARRAAMMEETTEERRSS string matching the _nth parenthesized subexpression. This vari- able is read-only. BBAASSHH__SSOOUURRCCEE - An array variable whose members are the source filenames corre- - sponding to the elements in the FFUUNNCCNNAAMMEE array variable. + An array variable whose members are the source filenames where + the corresponding shell function names in the FFUUNNCCNNAAMMEE array + variable are defined. The shell function $${{FFUUNNCCNNAAMMEE[[_$_i]]}} is + defined in the file $${{BBAASSHH__SSOOUURRCCEE[[_$_i]]}} and called from + $${{BBAASSHH__SSOOUURRCCEE[[_$_i_+_1]]}}. BBAASSHH__SSUUBBSSHHEELLLL - Incremented by one each time a subshell or subshell environment + Incremented by one each time a subshell or subshell environment is spawned. The initial value is 0. BBAASSHH__VVEERRSSIINNFFOO A readonly array variable whose members hold version information - for this instance of bbaasshh. The values assigned to the array + for this instance of bbaasshh. The values assigned to the array members are as follows: - BBAASSHH__VVEERRSSIINNFFOO[[0]] The major version number (the _r_e_l_e_a_s_e). - BBAASSHH__VVEERRSSIINNFFOO[[1]] The minor version number (the _v_e_r_s_i_o_n). + BBAASSHH__VVEERRSSIINNFFOO[[0]] The major version number (the _r_e_l_e_a_s_e). + BBAASSHH__VVEERRSSIINNFFOO[[1]] The minor version number (the _v_e_r_s_i_o_n). BBAASSHH__VVEERRSSIINNFFOO[[2]] The patch level. BBAASSHH__VVEERRSSIINNFFOO[[3]] The build version. BBAASSHH__VVEERRSSIINNFFOO[[4]] The release status (e.g., _b_e_t_a_1). BBAASSHH__VVEERRSSIINNFFOO[[5]] The value of MMAACCHHTTYYPPEE. BBAASSHH__VVEERRSSIIOONN - Expands to a string describing the version of this instance of + Expands to a string describing the version of this instance of bbaasshh. CCOOMMPP__CCWWOORRDD - An index into $${{CCOOMMPP__WWOORRDDSS}} of the word containing the current + An index into $${{CCOOMMPP__WWOORRDDSS}} of the word containing the current cursor position. This variable is available only in shell func- - tions invoked by the programmable completion facilities (see + tions invoked by the programmable completion facilities (see PPrrooggrraammmmaabbllee CCoommpplleettiioonn below). CCOOMMPP__KKEEYY @@ -793,98 +808,115 @@ PPAARRAAMMEETTEERRSS rent completion function. CCOOMMPP__LLIINNEE - The current command line. This variable is available only in - shell functions and external commands invoked by the pro- - grammable completion facilities (see PPrrooggrraammmmaabbllee CCoommpplleettiioonn + The current command line. This variable is available only in + shell functions and external commands invoked by the pro- + grammable completion facilities (see PPrrooggrraammmmaabbllee CCoommpplleettiioonn below). CCOOMMPP__PPOOIINNTT - The index of the current cursor position relative to the begin- - ning of the current command. If the current cursor position is + The index of the current cursor position relative to the begin- + ning of the current command. If the current cursor position is at the end of the current command, the value of this variable is - equal to $${{##CCOOMMPP__LLIINNEE}}. This variable is available only in - shell functions and external commands invoked by the pro- - grammable completion facilities (see PPrrooggrraammmmaabbllee CCoommpplleettiioonn + equal to $${{##CCOOMMPP__LLIINNEE}}. This variable is available only in + shell functions and external commands invoked by the pro- + grammable completion facilities (see PPrrooggrraammmmaabbllee CCoommpplleettiioonn below). CCOOMMPP__TTYYPPEE - Set to an integer value corresponding to the type of completion - attempted that caused a completion function to be called: _T_A_B, - for normal completion, _?, for listing completions after succes- - sive tabs, _!, for listing alternatives on partial word comple- - tion, _@, to list completions if the word is not unmodified, or - _%, for menu completion. This variable is available only in - shell functions and external commands invoked by the pro- - grammable completion facilities (see PPrrooggrraammmmaabbllee CCoommpplleettiioonn + Set to an integer value corresponding to the type of completion + attempted that caused a completion function to be called: _T_A_B, + for normal completion, _?, for listing completions after succes- + sive tabs, _!, for listing alternatives on partial word comple- + tion, _@, to list completions if the word is not unmodified, or + _%, for menu completion. This variable is available only in + shell functions and external commands invoked by the pro- + grammable completion facilities (see PPrrooggrraammmmaabbllee CCoommpplleettiioonn below). CCOOMMPP__WWOORRDDBBRREEAAKKSS - The set of characters that the rreeaaddlliinnee library treats as word - separators when performing word completion. If CCOOMMPP__WWOORRDDBBRREEAAKKSS - is unset, it loses its special properties, even if it is subse- + The set of characters that the rreeaaddlliinnee library treats as word + separators when performing word completion. If CCOOMMPP__WWOORRDDBBRREEAAKKSS + is unset, it loses its special properties, even if it is subse- quently reset. CCOOMMPP__WWOORRDDSS - An array variable (see AArrrraayyss below) consisting of the individ- - ual words in the current command line. The line is split into - words as rreeaaddlliinnee would split it, using CCOOMMPP__WWOORRDDBBRREEAAKKSS as + An array variable (see AArrrraayyss below) consisting of the individ- + ual words in the current command line. The line is split into + words as rreeaaddlliinnee would split it, using CCOOMMPP__WWOORRDDBBRREEAAKKSS as described above. This variable is available only in shell func- - tions invoked by the programmable completion facilities (see + tions invoked by the programmable completion facilities (see PPrrooggrraammmmaabbllee CCoommpplleettiioonn below). + CCOOPPRROOCC An array variable (see AArrrraayyss below) created to hold the file + descriptors for output from and input to an unnamed coprocess + (see CCoopprroocceesssseess above). + DDIIRRSSTTAACCKK An array variable (see AArrrraayyss below) containing the current con- - tents of the directory stack. Directories appear in the stack - in the order they are displayed by the ddiirrss builtin. Assigning + tents of the directory stack. Directories appear in the stack + in the order they are displayed by the ddiirrss builtin. Assigning to members of this array variable may be used to modify directo- - ries already in the stack, but the ppuusshhdd and ppooppdd builtins must + ries already in the stack, but the ppuusshhdd and ppooppdd builtins must be used to add and remove directories. Assignment to this vari- - able will not change the current directory. If DDIIRRSSTTAACCKK is - unset, it loses its special properties, even if it is subse- + able will not change the current directory. If DDIIRRSSTTAACCKK is + unset, it loses its special properties, even if it is subse- quently reset. - EEUUIIDD Expands to the effective user ID of the current user, initial- + EEUUIIDD Expands to the effective user ID of the current user, initial- ized at shell startup. This variable is readonly. FFUUNNCCNNAAMMEE - An array variable containing the names of all shell functions + An array variable containing the names of all shell functions currently in the execution call stack. The element with index 0 is the name of any currently-executing shell function. The bot- - tom-most element is "main". This variable exists only when a - shell function is executing. Assignments to FFUUNNCCNNAAMMEE have no - effect and return an error status. If FFUUNNCCNNAAMMEE is unset, it - loses its special properties, even if it is subsequently reset. + tom-most element (the one with the highest index) is "main". + This variable exists only when a shell function is executing. + Assignments to FFUUNNCCNNAAMMEE have no effect and return an error sta- + tus. If FFUUNNCCNNAAMMEE is unset, it loses its special properties, + even if it is subsequently reset. - GGRROOUUPPSS An array variable containing the list of groups of which the - current user is a member. Assignments to GGRROOUUPPSS have no effect - and return an error status. If GGRROOUUPPSS is unset, it loses its + This variable can be used with BBAASSHH__LLIINNEENNOO and BBAASSHH__SSOOUURRCCEE. + Each element of FFUUNNCCNNAAMMEE has corresponding elements in + BBAASSHH__LLIINNEENNOO and BBAASSHH__SSOOUURRCCEE to describe the call stack. For + instance, $${{FFUUNNCCNNAAMMEE[[_$_i]]}} was called from the file + $${{BBAASSHH__SSOOUURRCCEE[[_$_i_+_1]]}} at line number $${{BBAASSHH__LLIINNEENNOO[[_$_i]]}}. The + ccaalllleerr builtin displays the current call stack using this infor- + mation. + + GGRROOUUPPSS An array variable containing the list of groups of which the + current user is a member. Assignments to GGRROOUUPPSS have no effect + and return an error status. If GGRROOUUPPSS is unset, it loses its special properties, even if it is subsequently reset. HHIISSTTCCMMDD The history number, or index in the history list, of the current - command. If HHIISSTTCCMMDD is unset, it loses its special properties, + command. If HHIISSTTCCMMDD is unset, it loses its special properties, even if it is subsequently reset. HHOOSSTTNNAAMMEE Automatically set to the name of the current host. HHOOSSTTTTYYPPEE - Automatically set to a string that uniquely describes the type - of machine on which bbaasshh is executing. The default is system- + Automatically set to a string that uniquely describes the type + of machine on which bbaasshh is executing. The default is system- dependent. - LLIINNEENNOO Each time this parameter is referenced, the shell substitutes a - decimal number representing the current sequential line number - (starting with 1) within a script or function. When not in a - script or function, the value substituted is not guaranteed to + LLIINNEENNOO Each time this parameter is referenced, the shell substitutes a + decimal number representing the current sequential line number + (starting with 1) within a script or function. When not in a + script or function, the value substituted is not guaranteed to be meaningful. If LLIINNEENNOO is unset, it loses its special proper- ties, even if it is subsequently reset. MMAACCHHTTYYPPEE - Automatically set to a string that fully describes the system - type on which bbaasshh is executing, in the standard GNU _c_p_u_-_c_o_m_- + Automatically set to a string that fully describes the system + type on which bbaasshh is executing, in the standard GNU _c_p_u_-_c_o_m_- _p_a_n_y_-_s_y_s_t_e_m format. The default is system-dependent. + MMAAPPFFIILLEE + An array variable (see AArrrraayyss below) created to hold the text + read by the mmaappffiillee builtin when no variable name is supplied. + OOLLDDPPWWDD The previous working directory as set by the ccdd command. OOPPTTAARRGG The value of the last option argument processed by the ggeettooppttss @@ -913,6 +945,14 @@ PPAARRAAMMEETTEERRSS it loses its special properties, even if it is subsequently reset. + RREEAADDLLIINNEE__LLIINNEE + The contents of the rreeaaddlliinnee line buffer, for use with "bind -x" + (see SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS below). + + RREEAADDLLIINNEE__PPOOIINNTT + The position of the insertion point in the rreeaaddlliinnee line buffer, + for use with "bind -x" (see SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS below). + RREEPPLLYY Set to the line of input read by the rreeaadd builtin command when no arguments are supplied. @@ -948,144 +988,151 @@ PPAARRAAMMEETTEERRSS subjected to parameter expansion, command substitution, and arithmetic expansion before being interpreted as a file name. PPAATTHH is not used to search for the resultant file name. - CCDDPPAATTHH The search path for the ccdd command. This is a colon-separated - list of directories in which the shell looks for destination - directories specified by the ccdd command. A sample value is - ".:~:/usr". BBAASSHH__XXTTRRAACCEEFFDD - If set to an integer corresponding to a valid file descriptor, - bbaasshh will write the trace output generated when _s_e_t _-_x is - enabled to that file descriptor. The file descriptor is closed - when BBAASSHH__XXTTRRAACCEEFFDD is unset or assigned a new value. Unsetting - BBAASSHH__XXTTRRAACCEEFFDD or assigning it the empty string causes the trace - output to be sent to the standard error. Note that setting + If set to an integer corresponding to a valid file descriptor, + bbaasshh will write the trace output generated when _s_e_t _-_x is + enabled to that file descriptor. The file descriptor is closed + when BBAASSHH__XXTTRRAACCEEFFDD is unset or assigned a new value. Unsetting + BBAASSHH__XXTTRRAACCEEFFDD or assigning it the empty string causes the trace + output to be sent to the standard error. Note that setting BBAASSHH__XXTTRRAACCEEFFDD to 2 (the standard error file descriptor) and then unsetting it will result in the standard error being closed. + CCDDPPAATTHH The search path for the ccdd command. This is a colon-separated + list of directories in which the shell looks for destination + directories specified by the ccdd command. A sample value is + ".:~:/usr". CCOOLLUUMMNNSS - Used by the sseelleecctt builtin command to determine the terminal + Used by the sseelleecctt compound command to determine the terminal width when printing selection lists. Automatically set upon - receipt of a SIGWINCH. + receipt of a SSIIGGWWIINNCCHH. CCOOMMPPRREEPPLLYY An array variable from which bbaasshh reads the possible completions generated by a shell function invoked by the programmable com- pletion facility (see PPrrooggrraammmmaabbllee CCoommpplleettiioonn below). EEMMAACCSS If bbaasshh finds this variable in the environment when the shell starts with value "t", it assumes that the shell is running in - an emacs shell buffer and disables line editing. + an Emacs shell buffer and disables line editing. + EENNVV Similar to BBAASSHH__EENNVV; used when the shell is invoked in POSIX + mode. FFCCEEDDIITT The default editor for the ffcc builtin command. FFIIGGNNOORREE - A colon-separated list of suffixes to ignore when performing + A colon-separated list of suffixes to ignore when performing filename completion (see RREEAADDLLIINNEE below). A filename whose suf- - fix matches one of the entries in FFIIGGNNOORREE is excluded from the + fix matches one of the entries in FFIIGGNNOORREE is excluded from the list of matched filenames. A sample value is ".o:~". + FFUUNNCCNNEESSTT + If set to a numeric value greater than 0, defines a maximum + function nesting level. Function invocations that exceed this + nesting level will cause the current command to abort. GGLLOOBBIIGGNNOORREE A colon-separated list of patterns defining the set of filenames to be ignored by pathname expansion. If a filename matched by a - pathname expansion pattern also matches one of the patterns in + pathname expansion pattern also matches one of the patterns in GGLLOOBBIIGGNNOORREE, it is removed from the list of matches. HHIISSTTCCOONNTTRROOLL - A colon-separated list of values controlling how commands are - saved on the history list. If the list of values includes - _i_g_n_o_r_e_s_p_a_c_e, lines which begin with a ssppaaccee character are not - saved in the history list. A value of _i_g_n_o_r_e_d_u_p_s causes lines + A colon-separated list of values controlling how commands are + saved on the history list. If the list of values includes + _i_g_n_o_r_e_s_p_a_c_e, lines which begin with a ssppaaccee character are not + saved in the history list. A value of _i_g_n_o_r_e_d_u_p_s causes lines matching the previous history entry to not be saved. A value of _i_g_n_o_r_e_b_o_t_h is shorthand for _i_g_n_o_r_e_s_p_a_c_e and _i_g_n_o_r_e_d_u_p_s. A value of _e_r_a_s_e_d_u_p_s causes all previous lines matching the current line - to be removed from the history list before that line is saved. - Any value not in the above list is ignored. If HHIISSTTCCOONNTTRROOLL is - unset, or does not include a valid value, all lines read by the + to be removed from the history list before that line is saved. + Any value not in the above list is ignored. If HHIISSTTCCOONNTTRROOLL is + unset, or does not include a valid value, all lines read by the shell parser are saved on the history list, subject to the value - of HHIISSTTIIGGNNOORREE. The second and subsequent lines of a multi-line - compound command are not tested, and are added to the history + of HHIISSTTIIGGNNOORREE. The second and subsequent lines of a multi-line + compound command are not tested, and are added to the history regardless of the value of HHIISSTTCCOONNTTRROOLL. HHIISSTTFFIILLEE The name of the file in which command history is saved (see HHIISS-- - TTOORRYY below). The default value is _~_/_._b_a_s_h___h_i_s_t_o_r_y. If unset, - the command history is not saved when an interactive shell + TTOORRYY below). The default value is _~_/_._b_a_s_h___h_i_s_t_o_r_y. If unset, + the command history is not saved when an interactive shell exits. HHIISSTTFFIILLEESSIIZZEE The maximum number of lines contained in the history file. When - this variable is assigned a value, the history file is trun- - cated, if necessary, by removing the oldest entries, to contain - no more than that number of lines. The default value is 500. + this variable is assigned a value, the history file is trun- + cated, if necessary, by removing the oldest entries, to contain + no more than that number of lines. The default value is 500. The history file is also truncated to this size after writing it when an interactive shell exits. HHIISSTTIIGGNNOORREE - A colon-separated list of patterns used to decide which command - lines should be saved on the history list. Each pattern is - anchored at the beginning of the line and must match the com- - plete line (no implicit `**' is appended). Each pattern is - tested against the line after the checks specified by HHIISSTTCCOONN-- - TTRROOLL are applied. In addition to the normal shell pattern + A colon-separated list of patterns used to decide which command + lines should be saved on the history list. Each pattern is + anchored at the beginning of the line and must match the com- + plete line (no implicit `**' is appended). Each pattern is + tested against the line after the checks specified by HHIISSTTCCOONN-- + TTRROOLL are applied. In addition to the normal shell pattern matching characters, `&&' matches the previous history line. `&&' - may be escaped using a backslash; the backslash is removed + may be escaped using a backslash; the backslash is removed before attempting a match. The second and subsequent lines of a multi-line compound command are not tested, and are added to the history regardless of the value of HHIISSTTIIGGNNOORREE. HHIISSTTSSIIZZEE - The number of commands to remember in the command history (see + The number of commands to remember in the command history (see HHIISSTTOORRYY below). The default value is 500. HHIISSTTTTIIMMEEFFOORRMMAATT - If this variable is set and not null, its value is used as a + If this variable is set and not null, its value is used as a format string for _s_t_r_f_t_i_m_e(3) to print the time stamp associated - with each history entry displayed by the hhiissttoorryy builtin. If - this variable is set, time stamps are written to the history - file so they may be preserved across shell sessions. This uses - the history comment character to distinguish timestamps from + with each history entry displayed by the hhiissttoorryy builtin. If + this variable is set, time stamps are written to the history + file so they may be preserved across shell sessions. This uses + the history comment character to distinguish timestamps from other history lines. HHOOMMEE The home directory of the current user; the default argument for the ccdd builtin command. The value of this variable is also used when performing tilde expansion. HHOOSSTTFFIILLEE - Contains the name of a file in the same format as _/_e_t_c_/_h_o_s_t_s + Contains the name of a file in the same format as _/_e_t_c_/_h_o_s_t_s that should be read when the shell needs to complete a hostname. - The list of possible hostname completions may be changed while - the shell is running; the next time hostname completion is - attempted after the value is changed, bbaasshh adds the contents of - the new file to the existing list. If HHOOSSTTFFIILLEE is set, but has - no value, or does not name a readable file, bbaasshh attempts to - read _/_e_t_c_/_h_o_s_t_s to obtain the list of possible hostname comple- + The list of possible hostname completions may be changed while + the shell is running; the next time hostname completion is + attempted after the value is changed, bbaasshh adds the contents of + the new file to the existing list. If HHOOSSTTFFIILLEE is set, but has + no value, or does not name a readable file, bbaasshh attempts to + read _/_e_t_c_/_h_o_s_t_s to obtain the list of possible hostname comple- tions. When HHOOSSTTFFIILLEE is unset, the hostname list is cleared. - IIFFSS The _I_n_t_e_r_n_a_l _F_i_e_l_d _S_e_p_a_r_a_t_o_r that is used for word splitting - after expansion and to split lines into words with the rreeaadd + IIFFSS The _I_n_t_e_r_n_a_l _F_i_e_l_d _S_e_p_a_r_a_t_o_r that is used for word splitting + after expansion and to split lines into words with the rreeaadd builtin command. The default value is ``''. IIGGNNOORREEEEOOFF Controls the action of an interactive shell on receipt of an EEOOFF character as the sole input. If set, the value is the number of - consecutive EEOOFF characters which must be typed as the first - characters on an input line before bbaasshh exits. If the variable - exists but does not have a numeric value, or has no value, the - default value is 10. If it does not exist, EEOOFF signifies the + consecutive EEOOFF characters which must be typed as the first + characters on an input line before bbaasshh exits. If the variable + exists but does not have a numeric value, or has no value, the + default value is 10. If it does not exist, EEOOFF signifies the end of input to the shell. IINNPPUUTTRRCC - The filename for the rreeaaddlliinnee startup file, overriding the + The filename for the rreeaaddlliinnee startup file, overriding the default of _~_/_._i_n_p_u_t_r_c (see RREEAADDLLIINNEE below). - LLAANNGG Used to determine the locale category for any category not + LLAANNGG Used to determine the locale category for any category not specifically selected with a variable starting with LLCC__. - LLCC__AALLLL This variable overrides the value of LLAANNGG and any other LLCC__ + LLCC__AALLLL This variable overrides the value of LLAANNGG and any other LLCC__ variable specifying a locale category. LLCC__CCOOLLLLAATTEE - This variable determines the collation order used when sorting - the results of pathname expansion, and determines the behavior - of range expressions, equivalence classes, and collating + This variable determines the collation order used when sorting + the results of pathname expansion, and determines the behavior + of range expressions, equivalence classes, and collating sequences within pathname expansion and pattern matching. LLCC__CCTTYYPPEE - This variable determines the interpretation of characters and - the behavior of character classes within pathname expansion and + This variable determines the interpretation of characters and + the behavior of character classes within pathname expansion and pattern matching. LLCC__MMEESSSSAAGGEESS - This variable determines the locale used to translate double- + This variable determines the locale used to translate double- quoted strings preceded by a $$. LLCC__NNUUMMEERRIICC - This variable determines the locale category used for number + This variable determines the locale category used for number formatting. - LLIINNEESS Used by the sseelleecctt builtin command to determine the column - length for printing selection lists. Automatically set upon + LLIINNEESS Used by the sseelleecctt compound command to determine the column + length for printing selection lists. Automatically set upon receipt of a SSIIGGWWIINNCCHH. - MMAAIILL If this parameter is set to a file name and the MMAAIILLPPAATTHH vari- - able is not set, bbaasshh informs the user of the arrival of mail in - the specified file. + MMAAIILL If this parameter is set to a file or directory name and the + MMAAIILLPPAATTHH variable is not set, bbaasshh informs the user of the + arrival of mail in the specified file or Maildir-format direc- + tory. MMAAIILLCCHHEECCKK Specifies how often (in seconds) bbaasshh checks for mail. The default is 60 seconds. When it is time to check for mail, the @@ -1181,8 +1228,8 @@ PPAARRAAMMEETTEERRSS issuing the primary prompt. BBaasshh terminates after waiting for that number of seconds if input does not arrive. - TTMMPPDDIIRR If set, BBaasshh uses its value as the name of a directory in which - BBaasshh creates temporary files for the shell's use. + TTMMPPDDIIRR If set, bbaasshh uses its value as the name of a directory in which + bbaasshh creates temporary files for the shell's use. aauuttoo__rreessuummee This variable controls how the shell interacts with the user and @@ -1227,10 +1274,12 @@ PPAARRAAMMEETTEERRSS An indexed array is created automatically if any variable is assigned to using the syntax _n_a_m_e[_s_u_b_s_c_r_i_p_t]=_v_a_l_u_e. The _s_u_b_s_c_r_i_p_t is treated as - an arithmetic expression that must evaluate to a number greater than or - equal to zero. To explicitly declare an indexed array, use ddeeccllaarree --aa - _n_a_m_e (see SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS below). ddeeccllaarree --aa _n_a_m_e[[_s_u_b_s_c_r_i_p_t]] is - also accepted; the _s_u_b_s_c_r_i_p_t is ignored. + an arithmetic expression that must evaluate to a number. If _s_u_b_s_c_r_i_p_t + evaluates to a number less than zero, it is used as an offset from one + greater than the array's maximum index (so a subcript of -1 refers to + the last element of the array). To explicitly declare an indexed + array, use ddeeccllaarree --aa _n_a_m_e (see SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS below). ddeeccllaarree + --aa _n_a_m_e[[_s_u_b_s_c_r_i_p_t]] is also accepted; the _s_u_b_s_c_r_i_p_t is ignored. Associative arrays are created using ddeeccllaarree --AA _n_a_m_e. @@ -1414,9 +1463,9 @@ EEXXPPAANNSSIIOONN able; this variable is then expanded and that value is used in the rest of the substitution, rather than the value of _p_a_r_a_m_e_t_e_r itself. This is known as _i_n_d_i_r_e_c_t _e_x_p_a_n_s_i_o_n. The exceptions to this are the expan- - sions of ${!_p_r_e_f_i_x*} and ${!!_n_a_m_e[_@]} described below. The exclamation - point must immediately follow the left brace in order to introduce - indirection. + sions of ${!!\\ffPPffIIpprreeffiixx**} and ${!!_n_a_m_e[_@]} described below. The excla- + mation point must immediately follow the left brace in order to intro- + duce indirection. In each of the cases below, _w_o_r_d is subject to tilde expansion, parame- ter expansion, command substitution, and arithmetic expansion. @@ -1445,113 +1494,117 @@ EEXXPPAANNSSIIOONN substituted, otherwise the expansion of _w_o_r_d is substituted. ${_p_a_r_a_m_e_t_e_r::_o_f_f_s_e_t} ${_p_a_r_a_m_e_t_e_r::_o_f_f_s_e_t::_l_e_n_g_t_h} - SSuubbssttrriinngg EExxppaannssiioonn.. Expands to up to _l_e_n_g_t_h characters of + SSuubbssttrriinngg EExxppaannssiioonn. Expands to up to _l_e_n_g_t_h characters of _p_a_r_a_m_e_t_e_r starting at the character specified by _o_f_f_s_e_t. If _l_e_n_g_t_h is omitted, expands to the substring of _p_a_r_a_m_e_t_e_r start- ing at the character specified by _o_f_f_s_e_t. _l_e_n_g_t_h and _o_f_f_s_e_t are - arithmetic expressions (see AARRIITTHHMMEETTIICC EEVVAALLUUAATTIIOONN below). - _l_e_n_g_t_h must evaluate to a number greater than or equal to zero. - If _o_f_f_s_e_t evaluates to a number less than zero, the value is - used as an offset from the end of the value of _p_a_r_a_m_e_t_e_r. If - _p_a_r_a_m_e_t_e_r is @@, the result is _l_e_n_g_t_h positional parameters - beginning at _o_f_f_s_e_t. If _p_a_r_a_m_e_t_e_r is an indexed array name sub- - scripted by @ or *, the result is the _l_e_n_g_t_h members of the - array beginning with ${_p_a_r_a_m_e_t_e_r[_o_f_f_s_e_t]}. A negative _o_f_f_s_e_t is - taken relative to one greater than the maximum index of the - specified array. Substring expansion applied to an associative - array produces undefined results. Note that a negative offset - must be separated from the colon by at least one space to avoid - being confused with the :- expansion. Substring indexing is - zero-based unless the positional parameters are used, in which - case the indexing starts at 1 by default. If _o_f_f_s_e_t is 0, and - the positional parameters are used, $$00 is prefixed to the list. + arithmetic expressions (see AARRIITTHHMMEETTIICC EEVVAALLUUAATTIIOONN below). If + _o_f_f_s_e_t evaluates to a number less than zero, the value is used + as an offset from the end of the value of _p_a_r_a_m_e_t_e_r. If _l_e_n_g_t_h + evaluates to a number less than zero, and _p_a_r_a_m_e_t_e_r is not @@ and + not an indexed or associative array, it is interpreted as an + offset from the end of the value of _p_a_r_a_m_e_t_e_r rather than a num- + ber of characters, and the expansion is the characters between + the two offsets. If _p_a_r_a_m_e_t_e_r is @@, the result is _l_e_n_g_t_h posi- + tional parameters beginning at _o_f_f_s_e_t. If _p_a_r_a_m_e_t_e_r is an + indexed array name subscripted by @ or *, the result is the + _l_e_n_g_t_h members of the array beginning with ${_p_a_r_a_m_e_t_e_r[_o_f_f_s_e_t]}. + A negative _o_f_f_s_e_t is taken relative to one greater than the max- + imum index of the specified array. Substring expansion applied + to an associative array produces undefined results. Note that a + negative offset must be separated from the colon by at least one + space to avoid being confused with the :- expansion. Substring + indexing is zero-based unless the positional parameters are + used, in which case the indexing starts at 1 by default. If + _o_f_f_s_e_t is 0, and the positional parameters are used, $$00 is pre- + fixed to the list. ${!!_p_r_e_f_i_x**} ${!!_p_r_e_f_i_x@@} - NNaammeess mmaattcchhiinngg pprreeffiixx.. Expands to the names of variables whose + NNaammeess mmaattcchhiinngg pprreeffiixx. Expands to the names of variables whose names begin with _p_r_e_f_i_x, separated by the first character of the - IIFFSS special variable. When _@ is used and the expansion appears - within double quotes, each variable name expands to a separate + IIFFSS special variable. When _@ is used and the expansion appears + within double quotes, each variable name expands to a separate word. ${!!_n_a_m_e[_@]} ${!!_n_a_m_e[_*]} - LLiisstt ooff aarrrraayy kkeeyyss.. If _n_a_m_e is an array variable, expands to - the list of array indices (keys) assigned in _n_a_m_e. If _n_a_m_e is - not an array, expands to 0 if _n_a_m_e is set and null otherwise. - When _@ is used and the expansion appears within double quotes, + LLiisstt ooff aarrrraayy kkeeyyss. If _n_a_m_e is an array variable, expands to + the list of array indices (keys) assigned in _n_a_m_e. If _n_a_m_e is + not an array, expands to 0 if _n_a_m_e is set and null otherwise. + When _@ is used and the expansion appears within double quotes, each key expands to a separate word. ${##_p_a_r_a_m_e_t_e_r} - PPaarraammeetteerr lleennggtthh.. The length in characters of the value of - _p_a_r_a_m_e_t_e_r is substituted. If _p_a_r_a_m_e_t_e_r is ** or @@, the value - substituted is the number of positional parameters. If _p_a_r_a_m_e_- - _t_e_r is an array name subscripted by ** or @@, the value substi- + PPaarraammeetteerr lleennggtthh. The length in characters of the value of + _p_a_r_a_m_e_t_e_r is substituted. If _p_a_r_a_m_e_t_e_r is ** or @@, the value + substituted is the number of positional parameters. If _p_a_r_a_m_e_- + _t_e_r is an array name subscripted by ** or @@, the value substi- tuted is the number of elements in the array. ${_p_a_r_a_m_e_t_e_r##_w_o_r_d} ${_p_a_r_a_m_e_t_e_r####_w_o_r_d} - RReemmoovvee mmaattcchhiinngg pprreeffiixx ppaatttteerrnn.. The _w_o_r_d is expanded to produce + RReemmoovvee mmaattcchhiinngg pprreeffiixx ppaatttteerrnn. The _w_o_r_d is expanded to produce a pattern just as in pathname expansion. If the pattern matches - the beginning of the value of _p_a_r_a_m_e_t_e_r, then the result of the - expansion is the expanded value of _p_a_r_a_m_e_t_e_r with the shortest - matching pattern (the ``##'' case) or the longest matching pat- - tern (the ``####'' case) deleted. If _p_a_r_a_m_e_t_e_r is @@ or **, the - pattern removal operation is applied to each positional parame- + the beginning of the value of _p_a_r_a_m_e_t_e_r, then the result of the + expansion is the expanded value of _p_a_r_a_m_e_t_e_r with the shortest + matching pattern (the ``##'' case) or the longest matching pat- + tern (the ``####'' case) deleted. If _p_a_r_a_m_e_t_e_r is @@ or **, the + pattern removal operation is applied to each positional parame- ter in turn, and the expansion is the resultant list. If _p_a_r_a_m_- - _e_t_e_r is an array variable subscripted with @@ or **, the pattern - removal operation is applied to each member of the array in + _e_t_e_r is an array variable subscripted with @@ or **, the pattern + removal operation is applied to each member of the array in turn, and the expansion is the resultant list. ${_p_a_r_a_m_e_t_e_r%%_w_o_r_d} ${_p_a_r_a_m_e_t_e_r%%%%_w_o_r_d} - RReemmoovvee mmaattcchhiinngg ssuuffffiixx ppaatttteerrnn.. The _w_o_r_d is expanded to produce + RReemmoovvee mmaattcchhiinngg ssuuffffiixx ppaatttteerrnn. The _w_o_r_d is expanded to produce a pattern just as in pathname expansion. If the pattern matches - a trailing portion of the expanded value of _p_a_r_a_m_e_t_e_r, then the - result of the expansion is the expanded value of _p_a_r_a_m_e_t_e_r with - the shortest matching pattern (the ``%%'' case) or the longest - matching pattern (the ``%%%%'' case) deleted. If _p_a_r_a_m_e_t_e_r is @@ - or **, the pattern removal operation is applied to each posi- - tional parameter in turn, and the expansion is the resultant - list. If _p_a_r_a_m_e_t_e_r is an array variable subscripted with @@ or - **, the pattern removal operation is applied to each member of + a trailing portion of the expanded value of _p_a_r_a_m_e_t_e_r, then the + result of the expansion is the expanded value of _p_a_r_a_m_e_t_e_r with + the shortest matching pattern (the ``%%'' case) or the longest + matching pattern (the ``%%%%'' case) deleted. If _p_a_r_a_m_e_t_e_r is @@ + or **, the pattern removal operation is applied to each posi- + tional parameter in turn, and the expansion is the resultant + list. If _p_a_r_a_m_e_t_e_r is an array variable subscripted with @@ or + **, the pattern removal operation is applied to each member of the array in turn, and the expansion is the resultant list. ${_p_a_r_a_m_e_t_e_r//_p_a_t_t_e_r_n//_s_t_r_i_n_g} - PPaatttteerrnn ssuubbssttiittuuttiioonn.. The _p_a_t_t_e_r_n is expanded to produce a pat- - tern just as in pathname expansion. _P_a_r_a_m_e_t_e_r is expanded and - the longest match of _p_a_t_t_e_r_n against its value is replaced with - _s_t_r_i_n_g. If _p_a_t_t_e_r_n begins with //, all matches of _p_a_t_t_e_r_n are - replaced with _s_t_r_i_n_g. Normally only the first match is + PPaatttteerrnn ssuubbssttiittuuttiioonn. The _p_a_t_t_e_r_n is expanded to produce a pat- + tern just as in pathname expansion. _P_a_r_a_m_e_t_e_r is expanded and + the longest match of _p_a_t_t_e_r_n against its value is replaced with + _s_t_r_i_n_g. If _p_a_t_t_e_r_n begins with //, all matches of _p_a_t_t_e_r_n are + replaced with _s_t_r_i_n_g. Normally only the first match is replaced. If _p_a_t_t_e_r_n begins with ##, it must match at the begin- ning of the expanded value of _p_a_r_a_m_e_t_e_r. If _p_a_t_t_e_r_n begins with - %%, it must match at the end of the expanded value of _p_a_r_a_m_e_t_e_r. + %%, it must match at the end of the expanded value of _p_a_r_a_m_e_t_e_r. If _s_t_r_i_n_g is null, matches of _p_a_t_t_e_r_n are deleted and the // fol- lowing _p_a_t_t_e_r_n may be omitted. If _p_a_r_a_m_e_t_e_r is @@ or **, the sub- - stitution operation is applied to each positional parameter in - turn, and the expansion is the resultant list. If _p_a_r_a_m_e_t_e_r is - an array variable subscripted with @@ or **, the substitution - operation is applied to each member of the array in turn, and + stitution operation is applied to each positional parameter in + turn, and the expansion is the resultant list. If _p_a_r_a_m_e_t_e_r is + an array variable subscripted with @@ or **, the substitution + operation is applied to each member of the array in turn, and the expansion is the resultant list. ${_p_a_r_a_m_e_t_e_r^^_p_a_t_t_e_r_n} ${_p_a_r_a_m_e_t_e_r^^^^_p_a_t_t_e_r_n} ${_p_a_r_a_m_e_t_e_r,,_p_a_t_t_e_r_n} ${_p_a_r_a_m_e_t_e_r,,,,_p_a_t_t_e_r_n} - CCaassee mmooddiiffiiccaattiioonn.. This expansion modifies the case of alpha- - betic characters in _p_a_r_a_m_e_t_e_r. The _p_a_t_t_e_r_n is expanded to pro- - duce a pattern just as in pathname expansion. The ^^ operator - converts lowercase letters matching _p_a_t_t_e_r_n to uppercase; the ,, - operator converts matching uppercase letters to lowercase. The - ^^^^ and ,,,, expansions convert each matched character in the - expanded value; the ^^ and ,, expansions match and convert only - the first character in the expanded value.. If _p_a_t_t_e_r_n is omit- - ted, it is treated like a ??, which matches every character. If - _p_a_r_a_m_e_t_e_r is @@ or **, the case modification operation is applied - to each positional parameter in turn, and the expansion is the - resultant list. If _p_a_r_a_m_e_t_e_r is an array variable subscripted - with @@ or **, the case modification operation is applied to each - member of the array in turn, and the expansion is the resultant + CCaassee mmooddiiffiiccaattiioonn. This expansion modifies the case of alpha- + betic characters in _p_a_r_a_m_e_t_e_r. The _p_a_t_t_e_r_n is expanded to pro- + duce a pattern just as in pathname expansion. The ^^ operator + converts lowercase letters matching _p_a_t_t_e_r_n to uppercase; the ,, + operator converts matching uppercase letters to lowercase. The + ^^^^ and ,,,, expansions convert each matched character in the + expanded value; the ^^ and ,, expansions match and convert only + the first character in the expanded value. If _p_a_t_t_e_r_n is omit- + ted, it is treated like a ??, which matches every character. If + _p_a_r_a_m_e_t_e_r is @@ or **, the case modification operation is applied + to each positional parameter in turn, and the expansion is the + resultant list. If _p_a_r_a_m_e_t_e_r is an array variable subscripted + with @@ or **, the case modification operation is applied to each + member of the array in turn, and the expansion is the resultant list. CCoommmmaanndd SSuubbssttiittuuttiioonn @@ -1564,160 +1617,162 @@ EEXXPPAANNSSIIOONN ``_c_o_m_m_a_n_d`` BBaasshh performs the expansion by executing _c_o_m_m_a_n_d and replacing the com- - mand substitution with the standard output of the command, with any + mand substitution with the standard output of the command, with any trailing newlines deleted. Embedded newlines are not deleted, but they - may be removed during word splitting. The command substitution $$((ccaatt + may be removed during word splitting. The command substitution $$((ccaatt _f_i_l_e)) can be replaced by the equivalent but faster $$((<< _f_i_l_e)). - When the old-style backquote form of substitution is used, backslash - retains its literal meaning except when followed by $$, ``, or \\. The + When the old-style backquote form of substitution is used, backslash + retains its literal meaning except when followed by $$, ``, or \\. The first backquote not preceded by a backslash terminates the command sub- - stitution. When using the $(_c_o_m_m_a_n_d) form, all characters between the + stitution. When using the $(_c_o_m_m_a_n_d) form, all characters between the parentheses make up the command; none are treated specially. Command substitutions may be nested. To nest when using the backquoted form, escape the inner backquotes with backslashes. - If the substitution appears within double quotes, word splitting and + If the substitution appears within double quotes, word splitting and pathname expansion are not performed on the results. AArriitthhmmeettiicc EExxppaannssiioonn - Arithmetic expansion allows the evaluation of an arithmetic expression - and the substitution of the result. The format for arithmetic expan- + Arithmetic expansion allows the evaluation of an arithmetic expression + and the substitution of the result. The format for arithmetic expan- sion is: $$((((_e_x_p_r_e_s_s_i_o_n)))) - The _e_x_p_r_e_s_s_i_o_n is treated as if it were within double quotes, but a - double quote inside the parentheses is not treated specially. All + The _e_x_p_r_e_s_s_i_o_n is treated as if it were within double quotes, but a + double quote inside the parentheses is not treated specially. All tokens in the expression undergo parameter expansion, string expansion, - command substitution, and quote removal. Arithmetic expansions may be + command substitution, and quote removal. Arithmetic expansions may be nested. - The evaluation is performed according to the rules listed below under + The evaluation is performed according to the rules listed below under AARRIITTHHMMEETTIICC EEVVAALLUUAATTIIOONN. If _e_x_p_r_e_s_s_i_o_n is invalid, bbaasshh prints a message indicating failure and no substitution occurs. PPrroocceessss SSuubbssttiittuuttiioonn - _P_r_o_c_e_s_s _s_u_b_s_t_i_t_u_t_i_o_n is supported on systems that support named pipes - (_F_I_F_O_s) or the //ddeevv//ffdd method of naming open files. It takes the form - of <<((_l_i_s_t)) or >>((_l_i_s_t)). The process _l_i_s_t is run with its input or out- + _P_r_o_c_e_s_s _s_u_b_s_t_i_t_u_t_i_o_n is supported on systems that support named pipes + (_F_I_F_O_s) or the //ddeevv//ffdd method of naming open files. It takes the form + of <<((_l_i_s_t)) or >>((_l_i_s_t)). The process _l_i_s_t is run with its input or out- put connected to a _F_I_F_O or some file in //ddeevv//ffdd. The name of this file - is passed as an argument to the current command as the result of the - expansion. If the >>((_l_i_s_t)) form is used, writing to the file will pro- - vide input for _l_i_s_t. If the <<((_l_i_s_t)) form is used, the file passed as + is passed as an argument to the current command as the result of the + expansion. If the >>((_l_i_s_t)) form is used, writing to the file will pro- + vide input for _l_i_s_t. If the <<((_l_i_s_t)) form is used, the file passed as an argument should be read to obtain the output of _l_i_s_t. - When available, process substitution is performed simultaneously with - parameter and variable expansion, command substitution, and arithmetic + When available, process substitution is performed simultaneously with + parameter and variable expansion, command substitution, and arithmetic expansion. WWoorrdd SSpplliittttiinngg - The shell scans the results of parameter expansion, command substitu- - tion, and arithmetic expansion that did not occur within double quotes + The shell scans the results of parameter expansion, command substitu- + tion, and arithmetic expansion that did not occur within double quotes for _w_o_r_d _s_p_l_i_t_t_i_n_g. - The shell treats each character of IIFFSS as a delimiter, and splits the + The shell treats each character of IIFFSS as a delimiter, and splits the results of the other expansions into words on these characters. If IIFFSS - is unset, or its value is exactly <><><>, the default, - then sequences of <>, <>, and <> at the beginning and - end of the results of the previous expansions are ignored, and any - sequence of IIFFSS characters not at the beginning or end serves to - delimit words. If IIFFSS has a value other than the default, then + is unset, or its value is exactly <><><>, the default, + then sequences of <>, <>, and <> at the beginning and + end of the results of the previous expansions are ignored, and any + sequence of IIFFSS characters not at the beginning or end serves to + delimit words. If IIFFSS has a value other than the default, then sequences of the whitespace characters ssppaaccee and ttaabb are ignored at the - beginning and end of the word, as long as the whitespace character is - in the value of IIFFSS (an IIFFSS whitespace character). Any character in - IIFFSS that is not IIFFSS whitespace, along with any adjacent IIFFSS whitespace - characters, delimits a field. A sequence of IIFFSS whitespace characters - is also treated as a delimiter. If the value of IIFFSS is null, no word + beginning and end of the word, as long as the whitespace character is + in the value of IIFFSS (an IIFFSS whitespace character). Any character in + IIFFSS that is not IIFFSS whitespace, along with any adjacent IIFFSS whitespace + characters, delimits a field. A sequence of IIFFSS whitespace characters + is also treated as a delimiter. If the value of IIFFSS is null, no word splitting occurs. - Explicit null arguments ("""" or '''') are retained. Unquoted implicit + Explicit null arguments ("""" or '''') are retained. Unquoted implicit null arguments, resulting from the expansion of parameters that have no - values, are removed. If a parameter with no value is expanded within + values, are removed. If a parameter with no value is expanded within double quotes, a null argument results and is retained. Note that if no expansion occurs, no splitting is performed. PPaatthhnnaammee EExxppaannssiioonn - After word splitting, unless the --ff option has been set, bbaasshh scans - each word for the characters **, ??, and [[. If one of these characters - appears, then the word is regarded as a _p_a_t_t_e_r_n, and replaced with an - alphabetically sorted list of file names matching the pattern. If no - matching file names are found, and the shell option nnuullllgglloobb is not - enabled, the word is left unchanged. If the nnuullllgglloobb option is set, - and no matches are found, the word is removed. If the ffaaiillgglloobb shell - option is set, and no matches are found, an error message is printed - and the command is not executed. If the shell option nnooccaasseegglloobb is - enabled, the match is performed without regard to the case of alpha- - betic characters. When a pattern is used for pathname expansion, the - character ````..'''' at the start of a name or immediately following a - slash must be matched explicitly, unless the shell option ddoottgglloobb is - set. When matching a pathname, the slash character must always be - matched explicitly. In other cases, the ````..'''' character is not - treated specially. See the description of sshhoopptt below under SSHHEELLLL - BBUUIILLTTIINN CCOOMMMMAANNDDSS for a description of the nnooccaasseegglloobb, nnuullllgglloobb, ffaaiill-- + After word splitting, unless the --ff option has been set, bbaasshh scans + each word for the characters **, ??, and [[. If one of these characters + appears, then the word is regarded as a _p_a_t_t_e_r_n, and replaced with an + alphabetically sorted list of file names matching the pattern. If no + matching file names are found, and the shell option nnuullllgglloobb is not + enabled, the word is left unchanged. If the nnuullllgglloobb option is set, + and no matches are found, the word is removed. If the ffaaiillgglloobb shell + option is set, and no matches are found, an error message is printed + and the command is not executed. If the shell option nnooccaasseegglloobb is + enabled, the match is performed without regard to the case of alpha- + betic characters. When a pattern is used for pathname expansion, the + character ````..'''' at the start of a name or immediately following a + slash must be matched explicitly, unless the shell option ddoottgglloobb is + set. When matching a pathname, the slash character must always be + matched explicitly. In other cases, the ````..'''' character is not + treated specially. See the description of sshhoopptt below under SSHHEELLLL + BBUUIILLTTIINN CCOOMMMMAANNDDSS for a description of the nnooccaasseegglloobb, nnuullllgglloobb, ffaaiill-- gglloobb, and ddoottgglloobb shell options. - The GGLLOOBBIIGGNNOORREE shell variable may be used to restrict the set of file - names matching a _p_a_t_t_e_r_n. If GGLLOOBBIIGGNNOORREE is set, each matching file - name that also matches one of the patterns in GGLLOOBBIIGGNNOORREE is removed + The GGLLOOBBIIGGNNOORREE shell variable may be used to restrict the set of file + names matching a _p_a_t_t_e_r_n. If GGLLOOBBIIGGNNOORREE is set, each matching file + name that also matches one of the patterns in GGLLOOBBIIGGNNOORREE is removed from the list of matches. The file names ````..'''' and ````....'''' are always - ignored when GGLLOOBBIIGGNNOORREE is set and not null. However, setting GGLLOOBBIIGG-- - NNOORREE to a non-null value has the effect of enabling the ddoottgglloobb shell + ignored when GGLLOOBBIIGGNNOORREE is set and not null. However, setting GGLLOOBBIIGG-- + NNOORREE to a non-null value has the effect of enabling the ddoottgglloobb shell option, so all other file names beginning with a ````..'''' will match. To - get the old behavior of ignoring file names beginning with a ````..'''', - make ````..**'''' one of the patterns in GGLLOOBBIIGGNNOORREE. The ddoottgglloobb option is + get the old behavior of ignoring file names beginning with a ````..'''', + make ````..**'''' one of the patterns in GGLLOOBBIIGGNNOORREE. The ddoottgglloobb option is disabled when GGLLOOBBIIGGNNOORREE is unset. PPaatttteerrnn MMaattcchhiinngg Any character that appears in a pattern, other than the special pattern - characters described below, matches itself. The NUL character may not - occur in a pattern. A backslash escapes the following character; the - escaping backslash is discarded when matching. The special pattern + characters described below, matches itself. The NUL character may not + occur in a pattern. A backslash escapes the following character; the + escaping backslash is discarded when matching. The special pattern characters must be quoted if they are to be matched literally. The special pattern characters have the following meanings: - ** Matches any string, including the null string. When the gglloobb-- - ssttaarr shell option is enabled, and ** is used in a pathname expan- - sion context, two adjacent **s used as a single pattern will - match all files and zero or more directories and subdirectories. - If followed by a //, two adjacent **s will match only directories - and subdirectories. - ?? Matches any single character. - [[......]] Matches any one of the enclosed characters. A pair of charac- - ters separated by a hyphen denotes a _r_a_n_g_e _e_x_p_r_e_s_s_i_o_n; any char- - acter that sorts between those two characters, inclusive, using - the current locale's collating sequence and character set, is - matched. If the first character following the [[ is a !! or a ^^ - then any character not enclosed is matched. The sorting order - of characters in range expressions is determined by the current - locale and the value of the LLCC__CCOOLLLLAATTEE shell variable, if set. - A -- may be matched by including it as the first or last charac- - ter in the set. A ]] may be matched by including it as the first - character in the set. + ** Matches any string, including the null string. When the + gglloobbssttaarr shell option is enabled, and ** is used in a + pathname expansion context, two adjacent **s used as a + single pattern will match all files and zero or more + directories and subdirectories. If followed by a //, two + adjacent **s will match only directories and subdirecto- + ries. + ?? Matches any single character. + [[......]] Matches any one of the enclosed characters. A pair of + characters separated by a hyphen denotes a _r_a_n_g_e _e_x_p_r_e_s_- + _s_i_o_n; any character that sorts between those two charac- + ters, inclusive, using the current locale's collating + sequence and character set, is matched. If the first + character following the [[ is a !! or a ^^ then any charac- + ter not enclosed is matched. The sorting order of char- + acters in range expressions is determined by the current + locale and the value of the LLCC__CCOOLLLLAATTEE shell variable, if + set. A -- may be matched by including it as the first or + last character in the set. A ]] may be matched by includ- + ing it as the first character in the set. - Within [[ and ]], _c_h_a_r_a_c_t_e_r _c_l_a_s_s_e_s can be specified using the - syntax [[::_c_l_a_s_s::]], where _c_l_a_s_s is one of the following classes - defined in the POSIX standard: - aallnnuumm aallpphhaa aasscciiii bbllaannkk ccnnttrrll ddiiggiitt ggrraapphh lloowweerr pprriinntt ppuunncctt - ssppaaccee uuppppeerr wwoorrdd xxddiiggiitt - A character class matches any character belonging to that class. - The wwoorrdd character class matches letters, digits, and the char- - acter _. + Within [[ and ]], _c_h_a_r_a_c_t_e_r _c_l_a_s_s_e_s can be specified using + the syntax [[::_c_l_a_s_s::]], where _c_l_a_s_s is one of the following + classes defined in the POSIX standard: + aallnnuumm aallpphhaa aasscciiii bbllaannkk ccnnttrrll ddiiggiitt ggrraapphh lloowweerr pprriinntt + ppuunncctt ssppaaccee uuppppeerr wwoorrdd xxddiiggiitt + A character class matches any character belonging to that + class. The wwoorrdd character class matches letters, digits, + and the character _. - Within [[ and ]], an _e_q_u_i_v_a_l_e_n_c_e _c_l_a_s_s can be specified using the - syntax [[==_c==]], which matches all characters with the same colla- - tion weight (as defined by the current locale) as the character - _c. + Within [[ and ]], an _e_q_u_i_v_a_l_e_n_c_e _c_l_a_s_s can be specified + using the syntax [[==_c==]], which matches all characters with + the same collation weight (as defined by the current + locale) as the character _c. - Within [[ and ]], the syntax [[.._s_y_m_b_o_l..]] matches the collating sym- - bol _s_y_m_b_o_l. + Within [[ and ]], the syntax [[.._s_y_m_b_o_l..]] matches the collat- + ing symbol _s_y_m_b_o_l. If the eexxttgglloobb shell option is enabled using the sshhoopptt builtin, several - extended pattern matching operators are recognized. In the following + extended pattern matching operators are recognized. In the following description, a _p_a_t_t_e_r_n_-_l_i_s_t is a list of one or more patterns separated by a ||. Composite patterns may be formed using one or more of the fol- lowing sub-patterns: @@ -1735,55 +1790,55 @@ EEXXPPAANNSSIIOONN QQuuoottee RReemmoovvaall After the preceding expansions, all unquoted occurrences of the charac- - ters \\, '', and "" that did not result from one of the above expansions + ters \\, '', and "" that did not result from one of the above expansions are removed. RREEDDIIRREECCTTIIOONN - Before a command is executed, its input and output may be _r_e_d_i_r_e_c_t_e_d - using a special notation interpreted by the shell. Redirection may - also be used to open and close files for the current shell execution + Before a command is executed, its input and output may be _r_e_d_i_r_e_c_t_e_d + using a special notation interpreted by the shell. Redirection may + also be used to open and close files for the current shell execution environment. The following redirection operators may precede or appear anywhere within a _s_i_m_p_l_e _c_o_m_m_a_n_d or may follow a _c_o_m_m_a_n_d. Redirections are processed in the order they appear, from left to right. - Each redirection that may be preceded by a file descriptor number may + Each redirection that may be preceded by a file descriptor number may instead be preceded by a word of the form {_v_a_r_n_a_m_e}. In this case, for each redirection operator except >&- and <&-, the shell will allocate a - file descriptor greater than 10 and assign it to _v_a_r_n_a_m_e. If >&- or - <&- is preceded by {_v_a_r_n_a_m_e}, the value of _v_a_r_n_a_m_e defines the file + file descriptor greater than 10 and assign it to _v_a_r_n_a_m_e. If >&- or + <&- is preceded by {_v_a_r_n_a_m_e}, the value of _v_a_r_n_a_m_e defines the file descriptor to close. - In the following descriptions, if the file descriptor number is omit- - ted, and the first character of the redirection operator is <<, the re- - direction refers to the standard input (file descriptor 0). If the - first character of the redirection operator is >>, the redirection + In the following descriptions, if the file descriptor number is omit- + ted, and the first character of the redirection operator is <<, the re- + direction refers to the standard input (file descriptor 0). If the + first character of the redirection operator is >>, the redirection refers to the standard output (file descriptor 1). - The word following the redirection operator in the following descrip- - tions, unless otherwise noted, is subjected to brace expansion, tilde + The word following the redirection operator in the following descrip- + tions, unless otherwise noted, is subjected to brace expansion, tilde expansion, parameter expansion, command substitution, arithmetic expan- - sion, quote removal, pathname expansion, and word splitting. If it + sion, quote removal, pathname expansion, and word splitting. If it expands to more than one word, bbaasshh reports an error. - Note that the order of redirections is significant. For example, the + Note that the order of redirections is significant. For example, the command ls >> dirlist 2>>&&1 - directs both standard output and standard error to the file _d_i_r_l_i_s_t, + directs both standard output and standard error to the file _d_i_r_l_i_s_t, while the command ls 2>>&&1 >> dirlist - directs only the standard output to file _d_i_r_l_i_s_t, because the standard - error was duplicated from the standard output before the standard out- + directs only the standard output to file _d_i_r_l_i_s_t, because the standard + error was duplicated from the standard output before the standard out- put was redirected to _d_i_r_l_i_s_t. BBaasshh handles several filenames specially when they are used in redirec- tions, as described in the following table: //ddeevv//ffdd//_f_d - If _f_d is a valid integer, file descriptor _f_d is dupli- + If _f_d is a valid integer, file descriptor _f_d is dupli- cated. //ddeevv//ssttddiinn File descriptor 0 is duplicated. @@ -1793,22 +1848,22 @@ RREEDDIIRREECCTTIIOONN File descriptor 2 is duplicated. //ddeevv//ttccpp//_h_o_s_t//_p_o_r_t If _h_o_s_t is a valid hostname or Internet address, and _p_o_r_t - is an integer port number or service name, bbaasshh attempts + is an integer port number or service name, bbaasshh attempts to open a TCP connection to the corresponding socket. //ddeevv//uuddpp//_h_o_s_t//_p_o_r_t If _h_o_s_t is a valid hostname or Internet address, and _p_o_r_t - is an integer port number or service name, bbaasshh attempts + is an integer port number or service name, bbaasshh attempts to open a UDP connection to the corresponding socket. A failure to open or create a file causes the redirection to fail. - Redirections using file descriptors greater than 9 should be used with - care, as they may conflict with file descriptors the shell uses inter- + Redirections using file descriptors greater than 9 should be used with + care, as they may conflict with file descriptors the shell uses inter- nally. RReeddiirreeccttiinngg IInnppuutt Redirection of input causes the file whose name results from the expan- - sion of _w_o_r_d to be opened for reading on file descriptor _n, or the + sion of _w_o_r_d to be opened for reading on file descriptor _n, or the standard input (file descriptor 0) if _n is not specified. The general format for redirecting input is: @@ -1816,27 +1871,27 @@ RREEDDIIRREECCTTIIOONN [_n]<<_w_o_r_d RReeddiirreeccttiinngg OOuuttppuutt - Redirection of output causes the file whose name results from the + Redirection of output causes the file whose name results from the expansion of _w_o_r_d to be opened for writing on file descriptor _n, or the standard output (file descriptor 1) if _n is not specified. If the file - does not exist it is created; if it does exist it is truncated to zero + does not exist it is created; if it does exist it is truncated to zero size. The general format for redirecting output is: [_n]>>_w_o_r_d - If the redirection operator is >>, and the nnoocclloobbbbeerr option to the sseett - builtin has been enabled, the redirection will fail if the file whose - name results from the expansion of _w_o_r_d exists and is a regular file. + If the redirection operator is >>, and the nnoocclloobbbbeerr option to the sseett + builtin has been enabled, the redirection will fail if the file whose + name results from the expansion of _w_o_r_d exists and is a regular file. If the redirection operator is >>||, or the redirection operator is >> and the nnoocclloobbbbeerr option to the sseett builtin command is not enabled, the re- direction is attempted even if the file named by _w_o_r_d exists. AAppppeennddiinngg RReeddiirreecctteedd OOuuttppuutt - Redirection of output in this fashion causes the file whose name - results from the expansion of _w_o_r_d to be opened for appending on file - descriptor _n, or the standard output (file descriptor 1) if _n is not + Redirection of output in this fashion causes the file whose name + results from the expansion of _w_o_r_d to be opened for appending on file + descriptor _n, or the standard output (file descriptor 1) if _n is not specified. If the file does not exist it is created. The general format for appending output is: @@ -1845,11 +1900,11 @@ RREEDDIIRREECCTTIIOONN RReeddiirreeccttiinngg SSttaannddaarrdd OOuuttppuutt aanndd SSttaannddaarrdd EErrrroorr - This construct allows both the standard output (file descriptor 1) and - the standard error output (file descriptor 2) to be redirected to the + This construct allows both the standard output (file descriptor 1) and + the standard error output (file descriptor 2) to be redirected to the file whose name is the expansion of _w_o_r_d. - There are two formats for redirecting standard output and standard + There are two formats for redirecting standard output and standard error: &&>>_w_o_r_d @@ -1863,8 +1918,8 @@ RREEDDIIRREECCTTIIOONN AAppppeennddiinngg SSttaannddaarrdd OOuuttppuutt aanndd SSttaannddaarrdd EErrrroorr - This construct allows both the standard output (file descriptor 1) and - the standard error output (file descriptor 2) to be appended to the + This construct allows both the standard output (file descriptor 1) and + the standard error output (file descriptor 2) to be appended to the file whose name is the expansion of _w_o_r_d. The format for appending standard output and standard error is: @@ -1876,9 +1931,9 @@ RREEDDIIRREECCTTIIOONN >>>>_w_o_r_d 2>>&&1 HHeerree DDooccuummeennttss - This type of redirection instructs the shell to read input from the + This type of redirection instructs the shell to read input from the current source until a line containing only _d_e_l_i_m_i_t_e_r (with no trailing - blanks) is seen. All of the lines read up to that point are then used + blanks) is seen. All of the lines read up to that point are then used as the standard input for a command. The format of here-documents is: @@ -1887,18 +1942,18 @@ RREEDDIIRREECCTTIIOONN _h_e_r_e_-_d_o_c_u_m_e_n_t _d_e_l_i_m_i_t_e_r - No parameter expansion, command substitution, arithmetic expansion, or + No parameter expansion, command substitution, arithmetic expansion, or pathname expansion is performed on _w_o_r_d. If any characters in _w_o_r_d are - quoted, the _d_e_l_i_m_i_t_e_r is the result of quote removal on _w_o_r_d, and the - lines in the here-document are not expanded. If _w_o_r_d is unquoted, all - lines of the here-document are subjected to parameter expansion, com- - mand substitution, and arithmetic expansion. In the latter case, the - character sequence \\<> is ignored, and \\ must be used to quote + quoted, the _d_e_l_i_m_i_t_e_r is the result of quote removal on _w_o_r_d, and the + lines in the here-document are not expanded. If _w_o_r_d is unquoted, all + lines of the here-document are subjected to parameter expansion, com- + mand substitution, and arithmetic expansion. In the latter case, the + character sequence \\<> is ignored, and \\ must be used to quote the characters \\, $$, and ``. If the redirection operator is <<<<--, then all leading tab characters are - stripped from input lines and the line containing _d_e_l_i_m_i_t_e_r. This - allows here-documents within shell scripts to be indented in a natural + stripped from input lines and the line containing _d_e_l_i_m_i_t_e_r. This + allows here-documents within shell scripts to be indented in a natural fashion. HHeerree SSttrriinnggss @@ -1914,20 +1969,20 @@ RREEDDIIRREECCTTIIOONN [_n]<<&&_w_o_r_d is used to duplicate input file descriptors. If _w_o_r_d expands to one or - more digits, the file descriptor denoted by _n is made to be a copy of - that file descriptor. If the digits in _w_o_r_d do not specify a file - descriptor open for input, a redirection error occurs. If _w_o_r_d evalu- - ates to --, file descriptor _n is closed. If _n is not specified, the + more digits, the file descriptor denoted by _n is made to be a copy of + that file descriptor. If the digits in _w_o_r_d do not specify a file + descriptor open for input, a redirection error occurs. If _w_o_r_d evalu- + ates to --, file descriptor _n is closed. If _n is not specified, the standard input (file descriptor 0) is used. The operator [_n]>>&&_w_o_r_d - is used similarly to duplicate output file descriptors. If _n is not - specified, the standard output (file descriptor 1) is used. If the - digits in _w_o_r_d do not specify a file descriptor open for output, a re- - direction error occurs. As a special case, if _n is omitted, and _w_o_r_d + is used similarly to duplicate output file descriptors. If _n is not + specified, the standard output (file descriptor 1) is used. If the + digits in _w_o_r_d do not specify a file descriptor open for output, a re- + direction error occurs. As a special case, if _n is omitted, and _w_o_r_d does not expand to one or more digits, the standard output and standard error are redirected as described previously. @@ -1936,7 +1991,7 @@ RREEDDIIRREECCTTIIOONN [_n]<<&&_d_i_g_i_t-- - moves the file descriptor _d_i_g_i_t to file descriptor _n, or the standard + moves the file descriptor _d_i_g_i_t to file descriptor _n, or the standard input (file descriptor 0) if _n is not specified. _d_i_g_i_t is closed after being duplicated to _n. @@ -1944,7 +1999,7 @@ RREEDDIIRREECCTTIIOONN [_n]>>&&_d_i_g_i_t-- - moves the file descriptor _d_i_g_i_t to file descriptor _n, or the standard + moves the file descriptor _d_i_g_i_t to file descriptor _n, or the standard output (file descriptor 1) if _n is not specified. OOppeenniinngg FFiillee DDeessccrriippttoorrss ffoorr RReeaaddiinngg aanndd WWrriittiinngg @@ -1952,111 +2007,117 @@ RREEDDIIRREECCTTIIOONN [_n]<<>>_w_o_r_d - causes the file whose name is the expansion of _w_o_r_d to be opened for - both reading and writing on file descriptor _n, or on file descriptor 0 + causes the file whose name is the expansion of _w_o_r_d to be opened for + both reading and writing on file descriptor _n, or on file descriptor 0 if _n is not specified. If the file does not exist, it is created. AALLIIAASSEESS - _A_l_i_a_s_e_s allow a string to be substituted for a word when it is used as - the first word of a simple command. The shell maintains a list of - aliases that may be set and unset with the aalliiaass and uunnaalliiaass builtin - commands (see SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS below). The first word of each - simple command, if unquoted, is checked to see if it has an alias. If - so, that word is replaced by the text of the alias. The characters //, - $$, ``, and == and any of the shell _m_e_t_a_c_h_a_r_a_c_t_e_r_s or quoting characters + _A_l_i_a_s_e_s allow a string to be substituted for a word when it is used as + the first word of a simple command. The shell maintains a list of + aliases that may be set and unset with the aalliiaass and uunnaalliiaass builtin + commands (see SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS below). The first word of each + simple command, if unquoted, is checked to see if it has an alias. If + so, that word is replaced by the text of the alias. The characters //, + $$, ``, and == and any of the shell _m_e_t_a_c_h_a_r_a_c_t_e_r_s or quoting characters listed above may not appear in an alias name. The replacement text may - contain any valid shell input, including shell metacharacters. The - first word of the replacement text is tested for aliases, but a word - that is identical to an alias being expanded is not expanded a second - time. This means that one may alias llss to llss --FF, for instance, and - bbaasshh does not try to recursively expand the replacement text. If the - last character of the alias value is a _b_l_a_n_k, then the next command + contain any valid shell input, including shell metacharacters. The + first word of the replacement text is tested for aliases, but a word + that is identical to an alias being expanded is not expanded a second + time. This means that one may alias llss to llss --FF, for instance, and + bbaasshh does not try to recursively expand the replacement text. If the + last character of the alias value is a _b_l_a_n_k, then the next command word following the alias is also checked for alias expansion. Aliases are created and listed with the aalliiaass command, and removed with the uunnaalliiaass command. - There is no mechanism for using arguments in the replacement text. If - arguments are needed, a shell function should be used (see FFUUNNCCTTIIOONNSS + There is no mechanism for using arguments in the replacement text. If + arguments are needed, a shell function should be used (see FFUUNNCCTTIIOONNSS below). - Aliases are not expanded when the shell is not interactive, unless the - eexxppaanndd__aalliiaasseess shell option is set using sshhoopptt (see the description of + Aliases are not expanded when the shell is not interactive, unless the + eexxppaanndd__aalliiaasseess shell option is set using sshhoopptt (see the description of sshhoopptt under SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS below). - The rules concerning the definition and use of aliases are somewhat - confusing. BBaasshh always reads at least one complete line of input - before executing any of the commands on that line. Aliases are - expanded when a command is read, not when it is executed. Therefore, - an alias definition appearing on the same line as another command does - not take effect until the next line of input is read. The commands + The rules concerning the definition and use of aliases are somewhat + confusing. BBaasshh always reads at least one complete line of input + before executing any of the commands on that line. Aliases are + expanded when a command is read, not when it is executed. Therefore, + an alias definition appearing on the same line as another command does + not take effect until the next line of input is read. The commands following the alias definition on that line are not affected by the new - alias. This behavior is also an issue when functions are executed. - Aliases are expanded when a function definition is read, not when the - function is executed, because a function definition is itself a com- + alias. This behavior is also an issue when functions are executed. + Aliases are expanded when a function definition is read, not when the + function is executed, because a function definition is itself a com- pound command. As a consequence, aliases defined in a function are not - available until after that function is executed. To be safe, always - put alias definitions on a separate line, and do not use aalliiaass in com- + available until after that function is executed. To be safe, always + put alias definitions on a separate line, and do not use aalliiaass in com- pound commands. For almost every purpose, aliases are superseded by shell functions. FFUUNNCCTTIIOONNSS - A shell function, defined as described above under SSHHEELLLL GGRRAAMMMMAARR, - stores a series of commands for later execution. When the name of a - shell function is used as a simple command name, the list of commands + A shell function, defined as described above under SSHHEELLLL GGRRAAMMMMAARR, + stores a series of commands for later execution. When the name of a + shell function is used as a simple command name, the list of commands associated with that function name is executed. Functions are executed - in the context of the current shell; no new process is created to - interpret them (contrast this with the execution of a shell script). - When a function is executed, the arguments to the function become the + in the context of the current shell; no new process is created to + interpret them (contrast this with the execution of a shell script). + When a function is executed, the arguments to the function become the positional parameters during its execution. The special parameter ## is - updated to reflect the change. Special parameter 0 is unchanged. The - first element of the FFUUNNCCNNAAMMEE variable is set to the name of the func- + updated to reflect the change. Special parameter 00 is unchanged. The + first element of the FFUUNNCCNNAAMMEE variable is set to the name of the func- tion while the function is executing. - All other aspects of the shell execution environment are identical + All other aspects of the shell execution environment are identical between a function and its caller with these exceptions: the DDEEBBUUGG and - RREETTUURRNN traps (see the description of the ttrraapp builtin under SSHHEELLLL - BBUUIILLTTIINN CCOOMMMMAANNDDSS below) are not inherited unless the function has been - given the ttrraaccee attribute (see the description of the ddeeccllaarree builtin - below) or the --oo ffuunnccttrraaccee shell option has been enabled with the sseett - builtin (in which case all functions inherit the DDEEBBUUGG and RREETTUURRNN - traps), and the EERRRR trap is not inherited unless the --oo eerrrrttrraaccee shell + RREETTUURRNN traps (see the description of the ttrraapp builtin under SSHHEELLLL + BBUUIILLTTIINN CCOOMMMMAANNDDSS below) are not inherited unless the function has been + given the ttrraaccee attribute (see the description of the ddeeccllaarree builtin + below) or the --oo ffuunnccttrraaccee shell option has been enabled with the sseett + builtin (in which case all functions inherit the DDEEBBUUGG and RREETTUURRNN + traps), and the EERRRR trap is not inherited unless the --oo eerrrrttrraaccee shell option has been enabled. - Variables local to the function may be declared with the llooccaall builtin + Variables local to the function may be declared with the llooccaall builtin command. Ordinarily, variables and their values are shared between the function and its caller. - If the builtin command rreettuurrnn is executed in a function, the function - completes and execution resumes with the next command after the func- - tion call. Any command associated with the RREETTUURRNN trap is executed + The FFUUNNCCNNEESSTT variable, if set to a numeric value greater than 0, + defines a maximum function nesting level. Function invocations that + exceed the limit cause the entire command to abort. + + If the builtin command rreettuurrnn is executed in a function, the function + completes and execution resumes with the next command after the func- + tion call. Any command associated with the RREETTUURRNN trap is executed before execution resumes. When a function completes, the values of the - positional parameters and the special parameter ## are restored to the + positional parameters and the special parameter ## are restored to the values they had prior to the function's execution. - Function names and definitions may be listed with the --ff option to the + Function names and definitions may be listed with the --ff option to the ddeeccllaarree or ttyyppeesseett builtin commands. The --FF option to ddeeccllaarree or ttyyppee-- - sseett will list the function names only (and optionally the source file - and line number, if the eexxttddeebbuugg shell option is enabled). Functions - may be exported so that subshells automatically have them defined with - the --ff option to the eexxppoorrtt builtin. A function definition may be - deleted using the --ff option to the uunnsseett builtin. Note that shell + sseett will list the function names only (and optionally the source file + and line number, if the eexxttddeebbuugg shell option is enabled). Functions + may be exported so that subshells automatically have them defined with + the --ff option to the eexxppoorrtt builtin. A function definition may be + deleted using the --ff option to the uunnsseett builtin. Note that shell functions and variables with the same name may result in multiple iden- - tically-named entries in the environment passed to the shell's chil- + tically-named entries in the environment passed to the shell's chil- dren. Care should be taken in cases where this may cause a problem. - Functions may be recursive. No limit is imposed on the number of + Functions may be recursive. The FFUUNNCCNNEESSTT variable may be used to limit + the depth of the function call stack and restrict the number of func- + tion invocations. By default, no limit is imposed on the number of recursive calls. AARRIITTHHMMEETTIICC EEVVAALLUUAATTIIOONN - The shell allows arithmetic expressions to be evaluated, under certain - circumstances (see the lleett and ddeeccllaarree builtin commands and AArriitthhmmeettiicc - EExxppaannssiioonn). Evaluation is done in fixed-width integers with no check - for overflow, though division by 0 is trapped and flagged as an error. - The operators and their precedence, associativity, and values are the - same as in the C language. The following list of operators is grouped - into levels of equal-precedence operators. The levels are listed in + The shell allows arithmetic expressions to be evaluated, under certain + circumstances (see the lleett and ddeeccllaarree builtin commands and AArriitthhmmeettiicc + EExxppaannssiioonn). Evaluation is done in fixed-width integers with no check + for overflow, though division by 0 is trapped and flagged as an error. + The operators and their precedence, associativity, and values are the + same as in the C language. The following list of operators is grouped + into levels of equal-precedence operators. The levels are listed in order of decreasing precedence. _i_d++++ _i_d---- @@ -2084,47 +2145,47 @@ AARRIITTHHMMEETTIICC EEVVAALLUUAATTIIOONN _e_x_p_r_1 ,, _e_x_p_r_2 comma - Shell variables are allowed as operands; parameter expansion is per- + Shell variables are allowed as operands; parameter expansion is per- formed before the expression is evaluated. Within an expression, shell - variables may also be referenced by name without using the parameter - expansion syntax. A shell variable that is null or unset evaluates to + variables may also be referenced by name without using the parameter + expansion syntax. A shell variable that is null or unset evaluates to 0 when referenced by name without using the parameter expansion syntax. - The value of a variable is evaluated as an arithmetic expression when - it is referenced, or when a variable which has been given the _i_n_t_e_g_e_r + The value of a variable is evaluated as an arithmetic expression when + it is referenced, or when a variable which has been given the _i_n_t_e_g_e_r attribute using ddeeccllaarree --ii is assigned a value. A null value evaluates - to 0. A shell variable need not have its integer attribute turned on + to 0. A shell variable need not have its _i_n_t_e_g_e_r attribute turned on to be used in an expression. Constants with a leading 0 are interpreted as octal numbers. A leading - 0x or 0X denotes hexadecimal. Otherwise, numbers take the form - [_b_a_s_e_#]n, where _b_a_s_e is a decimal number between 2 and 64 representing - the arithmetic base, and _n is a number in that base. If _b_a_s_e_# is omit- - ted, then base 10 is used. The digits greater than 9 are represented - by the lowercase letters, the uppercase letters, @, and _, in that - order. If _b_a_s_e is less than or equal to 36, lowercase and uppercase - letters may be used interchangeably to represent numbers between 10 and - 35. + 0x or 0X denotes hexadecimal. Otherwise, numbers take the form + [_b_a_s_e_#]n, where the optional _b_a_s_e is a decimal number between 2 and 64 + representing the arithmetic base, and _n is a number in that base. If + _b_a_s_e_# is omitted, then base 10 is used. The digits greater than 9 are + represented by the lowercase letters, the uppercase letters, @, and _, + in that order. If _b_a_s_e is less than or equal to 36, lowercase and + uppercase letters may be used interchangeably to represent numbers + between 10 and 35. - Operators are evaluated in order of precedence. Sub-expressions in - parentheses are evaluated first and may override the precedence rules + Operators are evaluated in order of precedence. Sub-expressions in + parentheses are evaluated first and may override the precedence rules above. CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS - Conditional expressions are used by the [[[[ compound command and the - tteesstt and [[ builtin commands to test file attributes and perform string - and arithmetic comparisons. Expressions are formed from the following - unary or binary primaries. If any _f_i_l_e argument to one of the pri- + Conditional expressions are used by the [[[[ compound command and the + tteesstt and [[ builtin commands to test file attributes and perform string + and arithmetic comparisons. Expressions are formed from the following + unary or binary primaries. If any _f_i_l_e argument to one of the pri- maries is of the form _/_d_e_v_/_f_d_/_n, then file descriptor _n is checked. If - the _f_i_l_e argument to one of the primaries is one of _/_d_e_v_/_s_t_d_i_n, - _/_d_e_v_/_s_t_d_o_u_t, or _/_d_e_v_/_s_t_d_e_r_r, file descriptor 0, 1, or 2, respectively, + the _f_i_l_e argument to one of the primaries is one of _/_d_e_v_/_s_t_d_i_n, + _/_d_e_v_/_s_t_d_o_u_t, or _/_d_e_v_/_s_t_d_e_r_r, file descriptor 0, 1, or 2, respectively, is checked. Unless otherwise specified, primaries that operate on files follow sym- bolic links and operate on the target of the link, rather than the link itself. - When used with [[[[, The << and >> operators sort lexicographically using - the current locale. + When used with [[[[, the << and >> operators sort lexicographically using + the current locale. The tteesstt command sorts using ASCII ordering. --aa _f_i_l_e True if _f_i_l_e exists. @@ -2157,30 +2218,33 @@ CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS True if _f_i_l_e exists and is writable. --xx _f_i_l_e True if _f_i_l_e exists and is executable. - --OO _f_i_l_e - True if _f_i_l_e exists and is owned by the effective user id. --GG _f_i_l_e True if _f_i_l_e exists and is owned by the effective group id. --LL _f_i_l_e True if _f_i_l_e exists and is a symbolic link. + --NN _f_i_l_e + True if _f_i_l_e exists and has been modified since it was last + read. + --OO _f_i_l_e + True if _f_i_l_e exists and is owned by the effective user id. --SS _f_i_l_e True if _f_i_l_e exists and is a socket. - --NN _f_i_l_e - True if _f_i_l_e exists and has been modified since it was last - read. + _f_i_l_e_1 --eeff _f_i_l_e_2 + True if _f_i_l_e_1 and _f_i_l_e_2 refer to the same device and inode num- + bers. _f_i_l_e_1 -nntt _f_i_l_e_2 True if _f_i_l_e_1 is newer (according to modification date) than _f_i_l_e_2, or if _f_i_l_e_1 exists and _f_i_l_e_2 does not. _f_i_l_e_1 -oott _f_i_l_e_2 True if _f_i_l_e_1 is older than _f_i_l_e_2, or if _f_i_l_e_2 exists and _f_i_l_e_1 does not. - _f_i_l_e_1 --eeff _f_i_l_e_2 - True if _f_i_l_e_1 and _f_i_l_e_2 refer to the same device and inode num- - bers. --oo _o_p_t_n_a_m_e - True if shell option _o_p_t_n_a_m_e is enabled. See the list of - options under the description of the --oo option to the sseett + True if the shell option _o_p_t_n_a_m_e is enabled. See the list of + options under the description of the --oo option to the sseett builtin below. + --vv _v_a_r_n_a_m_e + True if the shell variable _v_a_r_n_a_m_e is set (has been assigned a + value). --zz _s_t_r_i_n_g True if the length of _s_t_r_i_n_g is zero. _s_t_r_i_n_g @@ -2354,7 +2418,7 @@ CCOOMMMMAANNDD EEXXEECCUUTTIIOONN EENNVVIIRROONNMMEENN ronment cannot affect the shell's execution environment. Subshells spawned to execute command substitutions inherit the value of - the --ee option from the parent shell. When not in posix mode, Bash + the --ee option from the parent shell. When not in _p_o_s_i_x mode, bbaasshh clears the --ee option in such subshells. If a command is followed by a && and job control is not active, the @@ -2593,7 +2657,7 @@ RREEAADDLLIINNEE This is the library that handles reading input when using an interac- tive shell, unless the ----nnooeeddiittiinngg option is given at shell invocation. Line editing is also used when using the --ee option to the rreeaadd builtin. - By default, the line editing commands are similar to those of emacs. A + By default, the line editing commands are similar to those of Emacs. A vi-style line editing interface is also available. Line editing can be enabled at any time using the --oo eemmaaccss or --oo vvii options to the sseett builtin (see SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS below). To turn off line editing @@ -2601,7 +2665,7 @@ RREEAADDLLIINNEE sseett builtin. RReeaaddlliinnee NNoottaattiioonn - In this section, the emacs-style notation is used to denote keystrokes. + In this section, the Emacs-style notation is used to denote keystrokes. Control keys are denoted by C-_k_e_y, e.g., C-n means Control-N. Simi- larly, _m_e_t_a keys are denoted by M-_k_e_y, so M-x means Meta-X. (On key- boards without a _m_e_t_a key, M-_x means ESC _x, i.e., press the Escape key @@ -2771,7 +2835,7 @@ RREEAADDLLIINNEE mapped to sseellff--iinnsseerrtt. eeddiittiinngg--mmooddee ((eemmaaccss)) Controls whether readline begins with a set of key bindings sim- - ilar to _e_m_a_c_s or _v_i. eeddiittiinngg--mmooddee can be set to either eemmaaccss or + ilar to _E_m_a_c_s or _v_i. eeddiittiinngg--mmooddee can be set to either eemmaaccss or vvii. eecchhoo--ccoonnttrrooll--cchhaarraacctteerrss ((OOnn)) When set to OOnn, on operating systems that indicate they support @@ -2786,10 +2850,10 @@ RREEAADDLLIINNEE key the terminal claims to support when it is called. On many terminals, the meta key is used to send eight-bit characters. eexxppaanndd--ttiillddee ((OOffff)) - If set to oonn, tilde expansion is performed when readline + If set to OOnn, tilde expansion is performed when readline attempts word completion. hhiissttoorryy--pprreesseerrvvee--ppooiinntt ((OOffff)) - If set to oonn, the history code attempts to place point at the + If set to OOnn, the history code attempts to place point at the same location on each history line retrieved with pprreevviioouuss--hhiiss-- ttoorryy or nneexxtt--hhiissttoorryy. hhiissttoorryy--ssiizzee ((00)) @@ -2829,8 +2893,12 @@ RREEAADDLLIINNEE mmaattcchh--hhiiddddeenn--ffiilleess ((OOnn)) This variable, when set to OOnn, causes readline to match files whose names begin with a `.' (hidden files) when performing - filename completion, unless the leading `.' is supplied by the - user in the filename to be completed. + filename completion. If set to OOffff, the leading `.' must be + supplied by the user in the filename to be completed. + mmeennuu--ccoommpplleettee--ddiissppllaayy--pprreeffiixx ((OOffff)) + If set to OOnn, menu completion displays the common prefix of the + list of possible completions (which may be empty) before cycling + through the list. oouuttppuutt--mmeettaa ((OOffff)) If set to OOnn, readline will display characters with the eighth bit set directly rather than as a meta-prefixed escape sequence. @@ -2842,18 +2910,18 @@ RREEAADDLLIINNEE sorted horizontally in alphabetical order, rather than down the screen. rreevveerrtt--aallll--aatt--nneewwlliinnee ((OOffff)) - If set to oonn, readline will undo all changes to history lines + If set to OOnn, readline will undo all changes to history lines before returning when aacccceepptt--lliinnee is executed. By default, his- tory lines may be modified and retain individual undo lists across calls to rreeaaddlliinnee. sshhooww--aallll--iiff--aammbbiigguuoouuss ((OOffff)) This alters the default behavior of the completion functions. - If set to oonn, words which have more than one possible completion + If set to OOnn, words which have more than one possible completion cause the matches to be listed immediately instead of ringing the bell. sshhooww--aallll--iiff--uunnmmooddiiffiieedd ((OOffff)) This alters the default behavior of the completion functions in - a fashion similar to sshhooww--aallll--iiff--aammbbiigguuoouuss. If set to oonn, words + a fashion similar to sshhooww--aallll--iiff--aammbbiigguuoouuss. If set to OOnn, words which have more than one possible completion without any possi- ble partial completion (the possible completions don't share a common prefix) cause the matches to be listed immediately @@ -2904,7 +2972,7 @@ RREEAADDLLIINNEE to bind key sequences to functions useful for a specific program. For instance, the following command adds a key sequence that quotes the current or previous word in - Bash: + bbaasshh: $$iiff Bash # Quote the current or previous word @@ -3043,12 +3111,16 @@ RREEAADDLLIINNEE "!_n" history expansion had been specified. yyaannkk--llaasstt--aarrgg ((MM--..,, MM--__)) Insert the last argument to the previous command (the last word - of the previous history entry). With an argument, behave + of the previous history entry). With a numeric argument, behave exactly like yyaannkk--nntthh--aarrgg. Successive calls to yyaannkk--llaasstt--aarrgg - move back through the history list, inserting the last argument - of each line in turn. The history expansion facilities are used - to extract the last argument, as if the "!$" history expansion - had been specified. + move back through the history list, inserting the last word (or + the word specified by the argument to the first call) of each + line in turn. Any numeric argument supplied to these successive + calls determines the direction to move through the history. A + negative argument switches the direction through the history + (back or forward). The history expansion facilities are used to + extract the last argument, as if the "!$" history expansion had + been specified. sshheellll--eexxppaanndd--lliinnee ((MM--CC--ee)) Expand the line as the shell does. This performs alias and his- tory expansion as well as all of the shell word expansions. See @@ -3214,9 +3286,9 @@ RREEAADDLLIINNEE moves _n positions forward in the list of matches; a negative argument may be used to move backward through the list. This command is intended to be bound to TTAABB, but is unbound by - default.cc - mmeennuu--ccoommpplleettee--kkrrdd - Identicwwal to mmeennuu--ccoommpplleettee, but moves backward through the list + default. + mmeennuu--ccoommpplleettee--bbaacckkwwaarrdd + Identical to mmeennuu--ccoommpplleettee, but moves backward through the list of possible completions, as if mmeennuu--ccoommpplleettee had been given a negative argument. This command is unbound by default. ddeelleettee--cchhaarr--oorr--lliisstt @@ -3314,7 +3386,7 @@ RREEAADDLLIINNEE A character is read and point is moved to the previous occur- rence of that character. A negative count searches for subse- quent occurrences. - sskkiipp--ccssii--sseeqquueennccee (()) + sskkiipp--ccssii--sseeqquueennccee Read enough characters to consume a multi-key sequence such as those defined for keys like Home and End. Such sequences begin with a Control Sequence Indicator (CSI), usually ESC-[. If this @@ -3381,7 +3453,7 @@ RREEAADDLLIINNEE word is a full pathname, a compspec for the full pathname is searched for first. If no compspec is found for the full pathname, an attempt is made to find a compspec for the portion following the final slash. - If those searches to not result in a compspec, any compspec defined + If those searches do not result in a compspec, any compspec defined with the --DD option to ccoommpplleettee is used as the default. Once a compspec has been found, it is used to generate the list of @@ -3476,8 +3548,8 @@ RREEAADDLLIINNEE changes the compspec associated with the command on which completion is being attempted (supplied as the first argument when the function is executed), programmable completion restarts from the beginning, with an - attempt to find a compspec for that command. This allows a set of com- - pletions to be built dynamically as completion is attempted, rather + attempt to find a new compspec for that command. This allows a set of + completions to be built dynamically as completion is attempted, rather than being loaded all at once. For instance, assuming that there is a library of compspecs, each kept @@ -3593,24 +3665,26 @@ HHIISSTTOORRYY EEXXPPAANNSSIIOONN EEvveenntt DDeessiiggnnaattoorrss An event designator is a reference to a command line entry in the his- - tory list. + tory list. Unless the reference is absolute, events are relative to + the current position in the history list. - !! Start a history substitution, except when followed by a bbllaannkk, - newline, carriage return, = or ( (when the eexxttgglloobb shell option + !! Start a history substitution, except when followed by a bbllaannkk, + newline, carriage return, = or ( (when the eexxttgglloobb shell option is enabled using the sshhoopptt builtin). !!_n Refer to command line _n. - !!--_n Refer to the current command line minus _n. + !!--_n Refer to the current command minus _n. !!!! Refer to the previous command. This is a synonym for `!-1'. !!_s_t_r_i_n_g - Refer to the most recent command starting with _s_t_r_i_n_g. + Refer to the most recent command preceding the current position + in the history list starting with _s_t_r_i_n_g. !!??_s_t_r_i_n_g[[??]] - Refer to the most recent command containing _s_t_r_i_n_g. The trail- - ing ?? may be omitted if _s_t_r_i_n_g is followed immediately by a new- - line. + Refer to the most recent command preceding the current postition + in the history list containing _s_t_r_i_n_g. The trailing ?? may be + omitted if _s_t_r_i_n_g is followed immediately by a newline. ^^_s_t_r_i_n_g_1^^_s_t_r_i_n_g_2^^ - Quick substitution. Repeat the last command, replacing _s_t_r_i_n_g_1 - with _s_t_r_i_n_g_2. Equivalent to ``!!:s/_s_t_r_i_n_g_1/_s_t_r_i_n_g_2/'' (see MMoodd-- - iiffiieerrss below). + Quick substitution. Repeat the previous command, replacing + _s_t_r_i_n_g_1 with _s_t_r_i_n_g_2. Equivalent to ``!!:s/_s_t_r_i_n_g_1/_s_t_r_i_n_g_2/'' + (see MMooddiiffiieerrss below). !!## The entire command line typed so far. WWoorrdd DDeessiiggnnaattoorrss @@ -3785,7 +3859,7 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS ccaalllleerr [_e_x_p_r] Returns the context of any active subroutine call (a shell func- - tion or a script executed with the .. or ssoouurrccee builtins. With- + tion or a script executed with the .. or ssoouurrccee builtins). With- out _e_x_p_r, ccaalllleerr displays the line number and source filename of the current subroutine call. If a non-negative integer is sup- plied as _e_x_p_r, ccaalllleerr displays the line number, subroutine name, @@ -3796,7 +3870,7 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS routine call or _e_x_p_r does not correspond to a valid position in the call stack. - ccdd [--LL||--PP] [_d_i_r] + ccdd [--LL|[--PP [--ee]]] [_d_i_r] Change the current directory to _d_i_r. The variable HHOOMMEE is the default _d_i_r. The variable CCDDPPAATTHH defines the search path for the directory containing _d_i_r. Alternative directory names in @@ -3806,104 +3880,107 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS option says to use the physical directory structure instead of following symbolic links (see also the --PP option to the sseett builtin command); the --LL option forces symbolic links to be fol- - lowed. An argument of -- is equivalent to $$OOLLDDPPWWDD. If a non- - empty directory name from CCDDPPAATTHH is used, or if -- is the first - argument, and the directory change is successful, the absolute - pathname of the new working directory is written to the standard - output. The return value is true if the directory was success- + lowed. If the --ee option is supplied with --PP, and the current + working directory cannot be successfully determined after a suc- + cessful directory change, ccdd will return an unsuccessful status. + An argument of -- is equivalent to $$OOLLDDPPWWDD. If a non-empty + directory name from CCDDPPAATTHH is used, or if -- is the first argu- + ment, and the directory change is successful, the absolute path- + name of the new working directory is written to the standard + output. The return value is true if the directory was success- fully changed; false otherwise. ccoommmmaanndd [--ppVVvv] _c_o_m_m_a_n_d [_a_r_g ...] - Run _c_o_m_m_a_n_d with _a_r_g_s suppressing the normal shell function - lookup. Only builtin commands or commands found in the PPAATTHH are - executed. If the --pp option is given, the search for _c_o_m_m_a_n_d is - performed using a default value for PPAATTHH that is guaranteed to - find all of the standard utilities. If either the --VV or --vv + Run _c_o_m_m_a_n_d with _a_r_g_s suppressing the normal shell function + lookup. Only builtin commands or commands found in the PPAATTHH are + executed. If the --pp option is given, the search for _c_o_m_m_a_n_d is + performed using a default value for PPAATTHH that is guaranteed to + find all of the standard utilities. If either the --VV or --vv option is supplied, a description of _c_o_m_m_a_n_d is printed. The --vv - option causes a single word indicating the command or file name + option causes a single word indicating the command or file name used to invoke _c_o_m_m_a_n_d to be displayed; the --VV option produces a - more verbose description. If the --VV or --vv option is supplied, - the exit status is 0 if _c_o_m_m_a_n_d was found, and 1 if not. If + more verbose description. If the --VV or --vv option is supplied, + the exit status is 0 if _c_o_m_m_a_n_d was found, and 1 if not. If neither option is supplied and an error occurred or _c_o_m_m_a_n_d can- - not be found, the exit status is 127. Otherwise, the exit sta- + not be found, the exit status is 127. Otherwise, the exit sta- tus of the ccoommmmaanndd builtin is the exit status of _c_o_m_m_a_n_d. ccoommppggeenn [_o_p_t_i_o_n] [_w_o_r_d] - Generate possible completion matches for _w_o_r_d according to the - _o_p_t_i_o_ns, which may be any option accepted by the ccoommpplleettee - builtin with the exception of --pp and --rr, and write the matches - to the standard output. When using the --FF or --CC options, the - various shell variables set by the programmable completion + Generate possible completion matches for _w_o_r_d according to the + _o_p_t_i_o_ns, which may be any option accepted by the ccoommpplleettee + builtin with the exception of --pp and --rr, and write the matches + to the standard output. When using the --FF or --CC options, the + various shell variables set by the programmable completion facilities, while available, will not have useful values. - The matches will be generated in the same way as if the pro- - grammable completion code had generated them directly from a + The matches will be generated in the same way as if the pro- + grammable completion code had generated them directly from a completion specification with the same flags. If _w_o_r_d is speci- fied, only those completions matching _w_o_r_d will be displayed. - The return value is true unless an invalid option is supplied, + The return value is true unless an invalid option is supplied, or no matches were generated. - ccoommpplleettee [--aabbccddeeffggjjkkssuuvv] [--oo _c_o_m_p_-_o_p_t_i_o_n] [--DDEE] [--AA _a_c_t_i_o_n] [--GG _g_l_o_b_- + ccoommpplleettee [--aabbccddeeffggjjkkssuuvv] [--oo _c_o_m_p_-_o_p_t_i_o_n] [--DDEE] [--AA _a_c_t_i_o_n] [--GG _g_l_o_b_- _p_a_t] [--WW _w_o_r_d_l_i_s_t] [--FF _f_u_n_c_t_i_o_n] [--CC _c_o_m_m_a_n_d] [--XX _f_i_l_t_e_r_p_a_t] [--PP _p_r_e_f_i_x] [--SS _s_u_f_f_i_x] _n_a_m_e [_n_a_m_e _._._.] ccoommpplleettee --pprr [--DDEE] [_n_a_m_e ...] - Specify how arguments to each _n_a_m_e should be completed. If the - --pp option is supplied, or if no options are supplied, existing - completion specifications are printed in a way that allows them + Specify how arguments to each _n_a_m_e should be completed. If the + --pp option is supplied, or if no options are supplied, existing + completion specifications are printed in a way that allows them to be reused as input. The --rr option removes a completion spec- - ification for each _n_a_m_e, or, if no _n_a_m_es are supplied, all com- + ification for each _n_a_m_e, or, if no _n_a_m_es are supplied, all com- pletion specifications. The --DD option indicates that the - remaining options and actions should apply to the ``default'' - command completion; that is, completion attempted on a command - for which no completion has previously been defined. The --EE - option indicates that the remaining options and actions should - apply to ``empty'' command completion; that is, completion + remaining options and actions should apply to the ``default'' + command completion; that is, completion attempted on a command + for which no completion has previously been defined. The --EE + option indicates that the remaining options and actions should + apply to ``empty'' command completion; that is, completion attempted on a blank line. - The process of applying these completion specifications when - word completion is attempted is described above under PPrroo-- + The process of applying these completion specifications when + word completion is attempted is described above under PPrroo-- ggrraammmmaabbllee CCoommpplleettiioonn. - Other options, if specified, have the following meanings. The - arguments to the --GG, --WW, and --XX options (and, if necessary, the - --PP and --SS options) should be quoted to protect them from expan- + Other options, if specified, have the following meanings. The + arguments to the --GG, --WW, and --XX options (and, if necessary, the + --PP and --SS options) should be quoted to protect them from expan- sion before the ccoommpplleettee builtin is invoked. --oo _c_o_m_p_-_o_p_t_i_o_n - The _c_o_m_p_-_o_p_t_i_o_n controls several aspects of the comp- - spec's behavior beyond the simple generation of comple- + The _c_o_m_p_-_o_p_t_i_o_n controls several aspects of the comp- + spec's behavior beyond the simple generation of comple- tions. _c_o_m_p_-_o_p_t_i_o_n may be one of: bbaasshhddeeffaauulltt Perform the rest of the default bbaasshh completions if the compspec generates no matches. - ddeeffaauulltt Use readline's default filename completion if + ddeeffaauulltt Use readline's default filename completion if the compspec generates no matches. ddiirrnnaammeess - Perform directory name completion if the comp- + Perform directory name completion if the comp- spec generates no matches. ffiilleennaammeess - Tell readline that the compspec generates file- - names, so it can perform any filename-specific - processing (like adding a slash to directory - names, quoting special characters, or suppress- - ing trailing spaces). Intended to be used with + Tell readline that the compspec generates file- + names, so it can perform any filename-specific + processing (like adding a slash to directory + names, quoting special characters, or suppress- + ing trailing spaces). Intended to be used with shell functions. - nnoossppaaccee Tell readline not to append a space (the - default) to words completed at the end of the + nnoossppaaccee Tell readline not to append a space (the + default) to words completed at the end of the line. pplluussddiirrss - After any matches defined by the compspec are - generated, directory name completion is - attempted and any matches are added to the + After any matches defined by the compspec are + generated, directory name completion is + attempted and any matches are added to the results of the other actions. --AA _a_c_t_i_o_n - The _a_c_t_i_o_n may be one of the following to generate a + The _a_c_t_i_o_n may be one of the following to generate a list of possible completions: aalliiaass Alias names. May also be specified as --aa. aarrrraayyvvaarr Array variable names. bbiinnddiinngg RReeaaddlliinnee key binding names. - bbuuiillttiinn Names of shell builtin commands. May also be + bbuuiillttiinn Names of shell builtin commands. May also be specified as --bb. ccoommmmaanndd Command names. May also be specified as --cc. ddiirreeccttoorryy @@ -3911,7 +3988,7 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS ddiissaabblleedd Names of disabled shell builtins. eennaabblleedd Names of enabled shell builtins. - eexxppoorrtt Names of exported shell variables. May also be + eexxppoorrtt Names of exported shell variables. May also be specified as --ee. ffiillee File names. May also be specified as --ff. ffuunnccttiioonn @@ -3920,17 +3997,17 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS hheellppttooppiicc Help topics as accepted by the hheellpp builtin. hhoossttnnaammee - Hostnames, as taken from the file specified by + Hostnames, as taken from the file specified by the HHOOSSTTFFIILLEE shell variable. - jjoobb Job names, if job control is active. May also + jjoobb Job names, if job control is active. May also be specified as --jj. - kkeeyywwoorrdd Shell reserved words. May also be specified as + kkeeyywwoorrdd Shell reserved words. May also be specified as --kk. rruunnnniinngg Names of running jobs, if job control is active. sseerrvviiccee Service names. May also be specified as --ss. - sseettoopptt Valid arguments for the --oo option to the sseett + sseettoopptt Valid arguments for the --oo option to the sseett builtin. - sshhoopptt Shell option names as accepted by the sshhoopptt + sshhoopptt Shell option names as accepted by the sshhoopptt builtin. ssiiggnnaall Signal names. ssttooppppeedd Names of stopped jobs, if job control is active. @@ -3938,15 +4015,6 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS vvaarriiaabbllee Names of all shell variables. May also be spec- ified as --vv. - --GG _g_l_o_b_p_a_t - The pathname expansion pattern _g_l_o_b_p_a_t is expanded to - generate the possible completions. - --WW _w_o_r_d_l_i_s_t - The _w_o_r_d_l_i_s_t is split using the characters in the IIFFSS - special variable as delimiters, and each resultant word - is expanded. The possible completions are the members - of the resultant list which match the word being com- - pleted. --CC _c_o_m_m_a_n_d _c_o_m_m_a_n_d is executed in a subshell environment, and its output is used as the possible completions. @@ -3955,69 +4023,81 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS shell environment. When it finishes, the possible com- pletions are retrieved from the value of the CCOOMMPPRREEPPLLYY array variable. - --XX _f_i_l_t_e_r_p_a_t - _f_i_l_t_e_r_p_a_t is a pattern as used for pathname expansion. - It is applied to the list of possible completions gener- - ated by the preceding options and arguments, and each - completion matching _f_i_l_t_e_r_p_a_t is removed from the list. - A leading !! in _f_i_l_t_e_r_p_a_t negates the pattern; in this - case, any completion not matching _f_i_l_t_e_r_p_a_t is removed. + --GG _g_l_o_b_p_a_t + The pathname expansion pattern _g_l_o_b_p_a_t is expanded to + generate the possible completions. --PP _p_r_e_f_i_x - _p_r_e_f_i_x is added at the beginning of each possible com- + _p_r_e_f_i_x is added at the beginning of each possible com- pletion after all other options have been applied. --SS _s_u_f_f_i_x _s_u_f_f_i_x is appended to each possible completion after all other options have been applied. + --WW _w_o_r_d_l_i_s_t + The _w_o_r_d_l_i_s_t is split using the characters in the IIFFSS + special variable as delimiters, and each resultant word + is expanded. The possible completions are the members + of the resultant list which match the word being com- + pleted. + --XX _f_i_l_t_e_r_p_a_t + _f_i_l_t_e_r_p_a_t is a pattern as used for pathname expansion. + It is applied to the list of possible completions gener- + ated by the preceding options and arguments, and each + completion matching _f_i_l_t_e_r_p_a_t is removed from the list. + A leading !! in _f_i_l_t_e_r_p_a_t negates the pattern; in this + case, any completion not matching _f_i_l_t_e_r_p_a_t is removed. - The return value is true unless an invalid option is supplied, - an option other than --pp or --rr is supplied without a _n_a_m_e argu- - ment, an attempt is made to remove a completion specification + The return value is true unless an invalid option is supplied, + an option other than --pp or --rr is supplied without a _n_a_m_e argu- + ment, an attempt is made to remove a completion specification for a _n_a_m_e for which no specification exists, or an error occurs adding a completion specification. ccoommppoopptt [--oo _o_p_t_i_o_n] [--DDEE] [++oo _o_p_t_i_o_n] [_n_a_m_e] Modify completion options for each _n_a_m_e according to the - _o_p_t_i_o_ns, or for the currently-execution completion if no _n_a_m_es - are supplied. If no _o_p_t_i_o_ns are given, display the completion - options for each _n_a_m_e or the current completion. The possible - values of _o_p_t_i_o_n are those valid for the ccoommpplleettee builtin - described above. The --DD option indicates that the remaining + _o_p_t_i_o_ns, or for the currently-executing completion if no _n_a_m_es + are supplied. If no _o_p_t_i_o_ns are given, display the completion + options for each _n_a_m_e or the current completion. The possible + values of _o_p_t_i_o_n are those valid for the ccoommpplleettee builtin + described above. The --DD option indicates that the remaining options should apply to the ``default'' command completion; that - is, completion attempted on a command for which no completion - has previously been defined. The --EE option indicates that the - remaining options should apply to ``empty'' command completion; + is, completion attempted on a command for which no completion + has previously been defined. The --EE option indicates that the + remaining options should apply to ``empty'' command completion; that is, completion attempted on a blank line. - The return value is true unless an invalid option is supplied, an - attempt is made to modify the options for a _n_a_m_e for which no comple- - tion specification exists, or an output error occurs. + The return value is true unless an invalid option is supplied, + an attempt is made to modify the options for a _n_a_m_e for which no + completion specification exists, or an output error occurs. ccoonnttiinnuuee [_n] Resume the next iteration of the enclosing ffoorr, wwhhiillee, uunnttiill, or - sseelleecctt loop. If _n is specified, resume at the _nth enclosing - loop. _n must be >= 1. If _n is greater than the number of - enclosing loops, the last enclosing loop (the ``top-level'' + sseelleecctt loop. If _n is specified, resume at the _nth enclosing + loop. _n must be >= 1. If _n is greater than the number of + enclosing loops, the last enclosing loop (the ``top-level'' loop) is resumed. The return value is 0 unless _n is not greater than or equal to 1. - ddeeccllaarree [--aaAAffFFiillrrttuuxx] [--pp] [_n_a_m_e[=_v_a_l_u_e] ...] - ttyyppeesseett [--aaAAffFFiillrrttuuxx] [--pp] [_n_a_m_e[=_v_a_l_u_e] ...] - Declare variables and/or give them attributes. If no _n_a_m_es are - given then display the values of variables. The --pp option will + ddeeccllaarree [--aaAAffFFggiillrrttuuxx] [--pp] [_n_a_m_e[=_v_a_l_u_e] ...] + ttyyppeesseett [--aaAAffFFggiillrrttuuxx] [--pp] [_n_a_m_e[=_v_a_l_u_e] ...] + Declare variables and/or give them attributes. If no _n_a_m_es are + given then display the values of variables. The --pp option will display the attributes and values of each _n_a_m_e. When --pp is used with _n_a_m_e arguments, additional options are ignored. When --pp is - supplied without _n_a_m_e arguments, it will display the attributes - and values of all variables having the attributes specified by - the additional options. If no other options are supplied with - --pp, ddeeccllaarree will display the attributes and values of all shell - variables. The --ff option will restrict the display to shell + supplied without _n_a_m_e arguments, it will display the attributes + and values of all variables having the attributes specified by + the additional options. If no other options are supplied with + --pp, ddeeccllaarree will display the attributes and values of all shell + variables. The --ff option will restrict the display to shell functions. The --FF option inhibits the display of function defi- - nitions; only the function name and attributes are printed. If - the eexxttddeebbuugg shell option is enabled using sshhoopptt, the source + nitions; only the function name and attributes are printed. If + the eexxttddeebbuugg shell option is enabled using sshhoopptt, the source file name and line number where the function is defined are dis- - played as well. The --FF option implies --ff. The following - options can be used to restrict output to variables with the - specified attribute or to give variables attributes: + played as well. The --FF option implies --ff. The --gg option forces + variables to be created or modified at the global scope, even + when ddeeccllaarree is executed in a shell function. It is ignored in + all other cases. The following options can be used to restrict + output to variables with the specified attribute or to give + variables attributes: --aa Each _n_a_m_e is an indexed array variable (see AArrrraayyss above). --AA Each _n_a_m_e is an associative array variable (see AArrrraayyss @@ -4044,20 +4124,20 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS Using `+' instead of `-' turns off the attribute instead, with the exceptions that ++aa may not be used to destroy an array vari- able and ++rr will not remove the readonly attribute. When used - in a function, makes each _n_a_m_e local, as with the llooccaall command. - If a variable name is followed by =_v_a_l_u_e, the value of the vari- - able is set to _v_a_l_u_e. The return value is 0 unless an invalid - option is encountered, an attempt is made to define a function - using ``-f foo=bar'', an attempt is made to assign a value to a - readonly variable, an attempt is made to assign a value to an - array variable without using the compound assignment syntax (see - AArrrraayyss above), one of the _n_a_m_e_s is not a valid shell variable - name, an attempt is made to turn off readonly status for a read- - only variable, an attempt is made to turn off array status for - an array variable, or an attempt is made to display a non-exis- - tent function with --ff. + in a function, makes each _n_a_m_e local, as with the llooccaall command, + unless the --ggPP ooppttiioonn iiss ssuupppplliieedd,, IIff aa vvaarriiaabbllee nnaammee iiss ffooll-- + lloowweedd bbyy ==_v_a_l_u_e,, tthhee vvaalluuee ooff tthhee vvaarriiaabbllee iiss sseett ttoo _v_a_l_u_e.. TThhee + rreettuurrnn vvaalluuee iiss 00 uunnlleessss aann iinnvvaalliidd ooppttiioonn iiss eennccoouunntteerreedd,, aann + aatttteemmpptt iiss mmaaddee ttoo ddeeffiinnee aa ffuunnccttiioonn uussiinngg ````--ff ffoooo==bbaarr'''',, aann + aatttteemmpptt iiss mmaaddee ttoo aassssiiggnn aa vvaalluuee ttoo aa rreeaaddoonnllyy vvaarriiaabbllee,, aann + aatttteemmpptt iiss mmaaddee ttoo aassssiiggnn aa vvaalluuee ttoo aann aarrrraayy vvaarriiaabbllee wwiitthhoouutt + uussiinngg tthhee ccoommppoouunndd aassssiiggnnmmeenntt ssyynnttaaxx ((sseeee AArrrraayyss above), one of + the _n_a_m_e_s is not a valid shell variable name, an attempt is made + to turn off readonly status for a readonly variable, an attempt + is made to turn off array status for an array variable, or an + attempt is made to display a non-existent function with --ff. - ddiirrss [[++_n]] [[--_n]] [[--ccppllvv]] + ddiirrss [[++_n]] [[--_n]] [[--ccllppvv]] Without options, displays the list of currently remembered directories. The default display is on a single line with directory names separated by spaces. Directories are added to @@ -4107,7 +4187,8 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS \\aa alert (bell) \\bb backspace \\cc suppress further output - \\ee an escape character + \\ee + \\EE an escape character \\ff form feed \\nn new line \\rr carriage return @@ -4118,6 +4199,11 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS _n_n_n (zero to three octal digits) \\xx_H_H the eight-bit character whose value is the hexadecimal value _H_H (one or two hex digits) + \\uu_H_H_H_H the Unicode (ISO/IEC 10646) character whose value is the + hexadecimal value _H_H_H_H (one to four hex digits) + \\UU_H_H_H_H_H_H_H_H + the Unicode (ISO/IEC 10646) character whose value is the + hexadecimal value _H_H_H_H_H_H_H_H (one to eight hex digits) eennaabbllee [--aa] [--ddnnppss] [--ff _f_i_l_e_n_a_m_e] [_n_a_m_e ...] Enable and disable builtin shell commands. Disabling a builtin @@ -4245,7 +4331,7 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS When the end of options is encountered, ggeettooppttss exits with a return value greater than zero. OOPPTTIINNDD is set to the index of - the first non-option argument, and nnaammee is set to ?. + the first non-option argument, and _n_a_m_e is set to ?. ggeettooppttss normally parses the positional parameters, but if more arguments are given in _a_r_g_s, ggeettooppttss parses those instead. @@ -4273,25 +4359,26 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS an error occurs. hhaasshh [--llrr] [--pp _f_i_l_e_n_a_m_e] [--ddtt] [_n_a_m_e] - For each _n_a_m_e, the full file name of the command is determined - by searching the directories in $$PPAATTHH and remembered. If the --pp - option is supplied, no path search is performed, and _f_i_l_e_n_a_m_e is - used as the full file name of the command. The --rr option causes - the shell to forget all remembered locations. The --dd option - causes the shell to forget the remembered location of each _n_a_m_e. - If the --tt option is supplied, the full pathname to which each - _n_a_m_e corresponds is printed. If multiple _n_a_m_e arguments are - supplied with --tt, the _n_a_m_e is printed before the hashed full - pathname. The --ll option causes output to be displayed in a for- - mat that may be reused as input. If no arguments are given, or - if only --ll is supplied, information about remembered commands is - printed. The return status is true unless a _n_a_m_e is not found - or an invalid option is supplied. + Each time hhaasshh is invoked, the full pathname of the command _n_a_m_e + is determined by searching the directories in $$PPAATTHH and remem- + bered. Any previously-remembered pathname is discarded. If the + --pp option is supplied, no path search is performed, and _f_i_l_e_n_a_m_e + is used as the full file name of the command. The --rr option + causes the shell to forget all remembered locations. The --dd + option causes the shell to forget the remembered location of + each _n_a_m_e. If the --tt option is supplied, the full pathname to + which each _n_a_m_e corresponds is printed. If multiple _n_a_m_e argu- + ments are supplied with --tt, the _n_a_m_e is printed before the + hashed full pathname. The --ll option causes output to be dis- + played in a format that may be reused as input. If no arguments + are given, or if only --ll is supplied, information about remem- + bered commands is printed. The return status is true unless a + _n_a_m_e is not found or an invalid option is supplied. hheellpp [--ddmmss] [_p_a_t_t_e_r_n] - Display helpful information about builtin commands. If _p_a_t_t_e_r_n - is specified, hheellpp gives detailed help on all commands matching - _p_a_t_t_e_r_n; otherwise help for all the builtins and shell control + Display helpful information about builtin commands. If _p_a_t_t_e_r_n + is specified, hheellpp gives detailed help on all commands matching + _p_a_t_t_e_r_n; otherwise help for all the builtins and shell control structures is printed. --dd Display a short description of each _p_a_t_t_e_r_n --mm Display the description of each _p_a_t_t_e_r_n in a manpage-like @@ -4307,44 +4394,44 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS hhiissttoorryy --ss _a_r_g [_a_r_g _._._.] With no options, display the command history list with line num- bers. Lines listed with a ** have been modified. An argument of - _n lists only the last _n lines. If the shell variable HHIISSTTTTIIMMEE-- - FFOORRMMAATT is set and not null, it is used as a format string for - _s_t_r_f_t_i_m_e(3) to display the time stamp associated with each dis- - played history entry. No intervening blank is printed between - the formatted time stamp and the history line. If _f_i_l_e_n_a_m_e is - supplied, it is used as the name of the history file; if not, - the value of HHIISSTTFFIILLEE is used. Options, if supplied, have the + _n lists only the last _n lines. If the shell variable HHIISSTTTTIIMMEE-- + FFOORRMMAATT is set and not null, it is used as a format string for + _s_t_r_f_t_i_m_e(3) to display the time stamp associated with each dis- + played history entry. No intervening blank is printed between + the formatted time stamp and the history line. If _f_i_l_e_n_a_m_e is + supplied, it is used as the name of the history file; if not, + the value of HHIISSTTFFIILLEE is used. Options, if supplied, have the following meanings: --cc Clear the history list by deleting all the entries. --dd _o_f_f_s_e_t Delete the history entry at position _o_f_f_s_e_t. - --aa Append the ``new'' history lines (history lines entered - since the beginning of the current bbaasshh session) to the + --aa Append the ``new'' history lines (history lines entered + since the beginning of the current bbaasshh session) to the history file. - --nn Read the history lines not already read from the history - file into the current history list. These are lines - appended to the history file since the beginning of the + --nn Read the history lines not already read from the history + file into the current history list. These are lines + appended to the history file since the beginning of the current bbaasshh session. --rr Read the contents of the history file and use them as the current history. - --ww Write the current history to the history file, overwrit- + --ww Write the current history to the history file, overwrit- ing the history file's contents. - --pp Perform history substitution on the following _a_r_g_s and - display the result on the standard output. Does not - store the results in the history list. Each _a_r_g must be + --pp Perform history substitution on the following _a_r_g_s and + display the result on the standard output. Does not + store the results in the history list. Each _a_r_g must be quoted to disable normal history expansion. - --ss Store the _a_r_g_s in the history list as a single entry. - The last command in the history list is removed before + --ss Store the _a_r_g_s in the history list as a single entry. + The last command in the history list is removed before the _a_r_g_s are added. - If the HHIISSTTTTIIMMEEFFOORRMMAATT variable is set, the time stamp informa- - tion associated with each history entry is written to the his- - tory file, marked with the history comment character. When the - history file is read, lines beginning with the history comment - character followed immediately by a digit are interpreted as + If the HHIISSTTTTIIMMEEFFOORRMMAATT variable is set, the time stamp informa- + tion associated with each history entry is written to the his- + tory file, marked with the history comment character. When the + history file is read, lines beginning with the history comment + character followed immediately by a digit are interpreted as timestamps for the previous history line. The return value is 0 - unless an invalid option is encountered, an error occurs while - reading or writing the history file, an invalid _o_f_f_s_e_t is sup- + unless an invalid option is encountered, an error occurs while + reading or writing the history file, an invalid _o_f_f_s_e_t is sup- plied as an argument to --dd, or the history expansion supplied as an argument to --pp fails. @@ -4353,127 +4440,141 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS The first form lists the active jobs. The options have the fol- lowing meanings: --ll List process IDs in addition to the normal information. - --pp List only the process ID of the job's process group - leader. --nn Display information only about jobs that have changed status since the user was last notified of their status. + --pp List only the process ID of the job's process group + leader. --rr Restrict output to running jobs. --ss Restrict output to stopped jobs. - If _j_o_b_s_p_e_c is given, output is restricted to information about - that job. The return status is 0 unless an invalid option is + If _j_o_b_s_p_e_c is given, output is restricted to information about + that job. The return status is 0 unless an invalid option is encountered or an invalid _j_o_b_s_p_e_c is supplied. If the --xx option is supplied, jjoobbss replaces any _j_o_b_s_p_e_c found in - _c_o_m_m_a_n_d or _a_r_g_s with the corresponding process group ID, and + _c_o_m_m_a_n_d or _a_r_g_s with the corresponding process group ID, and executes _c_o_m_m_a_n_d passing it _a_r_g_s, returning its exit status. kkiillll [--ss _s_i_g_s_p_e_c | --nn _s_i_g_n_u_m | --_s_i_g_s_p_e_c] [_p_i_d | _j_o_b_s_p_e_c] ... kkiillll --ll [_s_i_g_s_p_e_c | _e_x_i_t___s_t_a_t_u_s] - Send the signal named by _s_i_g_s_p_e_c or _s_i_g_n_u_m to the processes - named by _p_i_d or _j_o_b_s_p_e_c. _s_i_g_s_p_e_c is either a case-insensitive - signal name such as SSIIGGKKIILLLL (with or without the SSIIGG prefix) or - a signal number; _s_i_g_n_u_m is a signal number. If _s_i_g_s_p_e_c is not - present, then SSIIGGTTEERRMM is assumed. An argument of --ll lists the - signal names. If any arguments are supplied when --ll is given, - the names of the signals corresponding to the arguments are + Send the signal named by _s_i_g_s_p_e_c or _s_i_g_n_u_m to the processes + named by _p_i_d or _j_o_b_s_p_e_c. _s_i_g_s_p_e_c is either a case-insensitive + signal name such as SSIIGGKKIILLLL (with or without the SSIIGG prefix) or + a signal number; _s_i_g_n_u_m is a signal number. If _s_i_g_s_p_e_c is not + present, then SSIIGGTTEERRMM is assumed. An argument of --ll lists the + signal names. If any arguments are supplied when --ll is given, + the names of the signals corresponding to the arguments are listed, and the return status is 0. The _e_x_i_t___s_t_a_t_u_s argument to - --ll is a number specifying either a signal number or the exit - status of a process terminated by a signal. kkiillll returns true - if at least one signal was successfully sent, or false if an + --ll is a number specifying either a signal number or the exit + status of a process terminated by a signal. kkiillll returns true + if at least one signal was successfully sent, or false if an error occurs or an invalid option is encountered. lleett _a_r_g [_a_r_g ...] Each _a_r_g is an arithmetic expression to be evaluated (see AARRIITTHH-- - MMEETTIICC EEVVAALLUUAATTIIOONN above). If the last _a_r_g evaluates to 0, lleett + MMEETTIICC EEVVAALLUUAATTIIOONN above). If the last _a_r_g evaluates to 0, lleett returns 1; 0 is returned otherwise. llooccaall [_o_p_t_i_o_n] [_n_a_m_e[=_v_a_l_u_e] ...] - For each argument, a local variable named _n_a_m_e is created, and - assigned _v_a_l_u_e. The _o_p_t_i_o_n can be any of the options accepted + For each argument, a local variable named _n_a_m_e is created, and + assigned _v_a_l_u_e. The _o_p_t_i_o_n can be any of the options accepted by ddeeccllaarree. When llooccaall is used within a function, it causes the - variable _n_a_m_e to have a visible scope restricted to that func- + variable _n_a_m_e to have a visible scope restricted to that func- tion and its children. With no operands, llooccaall writes a list of - local variables to the standard output. It is an error to use + local variables to the standard output. It is an error to use llooccaall when not within a function. The return status is 0 unless - llooccaall is used outside a function, an invalid _n_a_m_e is supplied, + llooccaall is used outside a function, an invalid _n_a_m_e is supplied, or _n_a_m_e is a readonly variable. llooggoouutt Exit a login shell. - mmaappffiillee [--nn _c_o_u_n_t] [--OO _o_r_i_g_i_n] [--ss _c_o_u_n_t] [--tt] [--uu _f_d] [--CC _c_a_l_l_b_a_c_k] + mmaappffiillee [--nn _c_o_u_n_t] [--OO _o_r_i_g_i_n] [--ss _c_o_u_n_t] [--tt] [--uu _f_d] [--CC _c_a_l_l_b_a_c_k] [--cc _q_u_a_n_t_u_m] [_a_r_r_a_y] - rreeaaddaarrrraayy [--nn _c_o_u_n_t] [--OO _o_r_i_g_i_n] [--ss _c_o_u_n_t] [--tt] [--uu _f_d] [--CC _c_a_l_l_b_a_c_k] + rreeaaddaarrrraayy [--nn _c_o_u_n_t] [--OO _o_r_i_g_i_n] [--ss _c_o_u_n_t] [--tt] [--uu _f_d] [--CC _c_a_l_l_b_a_c_k] [--cc _q_u_a_n_t_u_m] [_a_r_r_a_y] - Read lines from the standard input into the indexed array vari- - able _a_r_r_a_y, or from file descriptor _f_d if the --uu option is sup- - plied. The variable MMAAPPFFIILLEE is the default _a_r_r_a_y. Options, if + Read lines from the standard input into the indexed array vari- + able _a_r_r_a_y, or from file descriptor _f_d if the --uu option is sup- + plied. The variable MMAAPPFFIILLEE is the default _a_r_r_a_y. Options, if supplied, have the following meanings: - --nn Copy at most _c_o_u_n_t lines. If _c_o_u_n_t is 0, all lines are + --nn Copy at most _c_o_u_n_t lines. If _c_o_u_n_t is 0, all lines are copied. - --OO Begin assigning to _a_r_r_a_y at index _o_r_i_g_i_n. The default + --OO Begin assigning to _a_r_r_a_y at index _o_r_i_g_i_n. The default index is 0. --ss Discard the first _c_o_u_n_t lines read. --tt Remove a trailing newline from each line read. - --uu Read lines from file descriptor _f_d instead of the stan- + --uu Read lines from file descriptor _f_d instead of the stan- dard input. - --CC Evaluate _c_a_l_l_b_a_c_k each time _q_u_a_n_t_u_m lines are read. The + --CC Evaluate _c_a_l_l_b_a_c_k each time _q_u_a_n_t_u_m lines are read. The --cc option specifies _q_u_a_n_t_u_m. - --cc Specify the number of lines read between each call to + --cc Specify the number of lines read between each call to _c_a_l_l_b_a_c_k. - If --CC is specified without --cc, the default quantum is 5000. + If --CC is specified without --cc, the default quantum is 5000. When _c_a_l_l_b_a_c_k is evaluated, it is supplied the index of the next - array element to be assigned as an additional argument. _c_a_l_l_- - _b_a_c_k is evaluated after the line is read but before the array - element is assigned. + array element to be assigned and the line to be assigned to that + element as additional arguments. _c_a_l_l_b_a_c_k is evaluated after + the line is read but before the array element is assigned. - If not supplied with an explicit origin, mmaappffiillee will clear + If not supplied with an explicit origin, mmaappffiillee will clear _a_r_r_a_y before assigning to it. - mmaappffiillee returns successfully unless an invalid option or option - argument is supplied, _a_r_r_a_y is invalid or unassignable, or if + mmaappffiillee returns successfully unless an invalid option or option + argument is supplied, _a_r_r_a_y is invalid or unassignable, or if _a_r_r_a_y is not an indexed array. ppooppdd [-nn] [+_n] [-_n] - Removes entries from the directory stack. With no arguments, - removes the top directory from the stack, and performs a ccdd to + Removes entries from the directory stack. With no arguments, + removes the top directory from the stack, and performs a ccdd to the new top directory. Arguments, if supplied, have the follow- ing meanings: - --nn Suppresses the normal change of directory when removing - directories from the stack, so that only the stack is + --nn Suppresses the normal change of directory when removing + directories from the stack, so that only the stack is manipulated. - ++_n Removes the _nth entry counting from the left of the list - shown by ddiirrss, starting with zero. For example: ``popd + ++_n Removes the _nth entry counting from the left of the list + shown by ddiirrss, starting with zero. For example: ``popd +0'' removes the first directory, ``popd +1'' the second. --_n Removes the _nth entry counting from the right of the list - shown by ddiirrss, starting with zero. For example: ``popd - -0'' removes the last directory, ``popd -1'' the next to + shown by ddiirrss, starting with zero. For example: ``popd + -0'' removes the last directory, ``popd -1'' the next to last. - If the ppooppdd command is successful, a ddiirrss is performed as well, - and the return status is 0. ppooppdd returns false if an invalid + If the ppooppdd command is successful, a ddiirrss is performed as well, + and the return status is 0. ppooppdd returns false if an invalid option is encountered, the directory stack is empty, a non-exis- tent directory stack entry is specified, or the directory change fails. pprriinnttff [--vv _v_a_r] _f_o_r_m_a_t [_a_r_g_u_m_e_n_t_s] - Write the formatted _a_r_g_u_m_e_n_t_s to the standard output under the - control of the _f_o_r_m_a_t. The _f_o_r_m_a_t is a character string which - contains three types of objects: plain characters, which are - simply copied to standard output, character escape sequences, - which are converted and copied to the standard output, and for- - mat specifications, each of which causes printing of the next - successive _a_r_g_u_m_e_n_t. In addition to the standard _p_r_i_n_t_f(1) for- - mats, %%bb causes pprriinnttff to expand backslash escape sequences in - the corresponding _a_r_g_u_m_e_n_t (except that \\cc terminates output, - backslashes in \\'', \\"", and \\?? are not removed, and octal escapes - beginning with \\00 may contain up to four digits), and %%qq causes - pprriinnttff to output the corresponding _a_r_g_u_m_e_n_t in a format that can - be reused as shell input. + Write the formatted _a_r_g_u_m_e_n_t_s to the standard output under the + control of the _f_o_r_m_a_t. The --vv option causes the output to be + assigned to the variable _v_a_r rather than being printed to the + standard output. - The --vv option causes the output to be assigned to the variable - _v_a_r rather than being printed to the standard output. + The _f_o_r_m_a_t is a character string which contains three types of + objects: plain characters, which are simply copied to standard + output, character escape sequences, which are converted and + copied to the standard output, and format specifications, each + of which causes printing of the next successive _a_r_g_u_m_e_n_t. In + addition to the standard _p_r_i_n_t_f(1) format specifications, pprriinnttff + interprets the following extensions: + %%bb causes pprriinnttff to expand backslash escape sequences in the + corresponding _a_r_g_u_m_e_n_t (except that \\cc terminates output, + backslashes in \\'', \\"", and \\?? are not removed, and octal + escapes beginning with \\00 may contain up to four digits). + %%qq causes pprriinnttff to output the corresponding _a_r_g_u_m_e_n_t in a + format that can be reused as shell input. + %%((_d_a_t_e_f_m_t))TT + causes pprriinnttff to output the date-time string resulting + from using _d_a_t_e_f_m_t as a format string for _s_t_r_f_t_i_m_e(3). + The corresponding _a_r_g_u_m_e_n_t is an integer representing the + number of seconds since the epoch. Two special argument + values may be used: -1 represents the current time, and + -2 represents the time the shell was invoked. + + Arguments to non-string format specifiers are treated as C con- + stants, except that a leading plus or minus sign is allowed, and + if the leading character is a single or double quote, the value + is the ASCII value of the following character. The _f_o_r_m_a_t is reused as necessary to consume all of the _a_r_g_u_- _m_e_n_t_s. If the _f_o_r_m_a_t requires more _a_r_g_u_m_e_n_t_s than are supplied, @@ -4612,8 +4713,8 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS status is false. Any command associated with the RREETTUURRNN trap is executed before execution resumes after the function or script. - sseett [----aabbeeffhhkkmmnnppttuuvvxxBBCCEEHHPPTT] [--oo _o_p_t_i_o_n] [_a_r_g ...] - sseett [++aabbeeffhhkkmmnnppttuuvvxxBBCCEEHHPPTT] [++oo _o_p_t_i_o_n] [_a_r_g ...] + sseett [----aabbeeffhhkkmmnnppttuuvvxxBBCCEEHHPPTT] [--oo _o_p_t_i_o_n_-_n_a_m_e] [_a_r_g ...] + sseett [++aabbeeffhhkkmmnnppttuuvvxxBBCCEEHHPPTT] [++oo _o_p_t_i_o_n_-_n_a_m_e] [_a_r_g ...] Without options, the name and value of each shell variable are displayed in a format that can be reused as input for setting or resetting the currently-set variables. Read-only variables can- @@ -4856,17 +4957,29 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS easy re-editing of multi-line commands. ccoommppaatt3311 If set, bbaasshh changes its behavior to that of version 3.1 - with respect to quoted arguments to the conditional com- - mand's =~ operator. + with respect to quoted arguments to the [[[[ conditional + command's ==~~ operator. ccoommppaatt3322 If set, bbaasshh changes its behavior to that of version 3.2 with respect to locale-specific string comparison when - using the conditional command's < and > operators. + using the [[[[ conditional command's << and >> operators. + Bash versions prior to bash-4.1 use ASCII collation and + _s_t_r_c_m_p(3); bash-4.1 and later use the current locale's + collation sequence and _s_t_r_c_o_l_l(3). ccoommppaatt4400 If set, bbaasshh changes its behavior to that of version 4.0 - with respect to locale-specific string comparison when - using the conditional command's < and > operators and - the effect of interrupting a command list. + with respect to locale-specific string comparison when + using the [[[[ conditional command's << and >> operators + (see previous item) and the effect of interrupting a + command list. + ccoommppaatt4411 + @item compat41 If set, bbaasshh, when in posix mode, treats + a single quote in a double-quoted parameter expansion as + a special character. The single quotes must match (an + even number) and the characters between the single + quotes are considered quoted. This is the behavior of + posix mode through version 4.1. The default bash behav- + ior remains as in previous versions. ddiirrssppeellll If set, bbaasshh attempts spelling correction on directory names during word completion if the directory name ini- @@ -4903,7 +5016,7 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS (( _c_o_m_m_a_n_d )) inherit the DDEEBBUUGG and RREETTUURRNN traps. 66.. Error tracing is enabled: command substitution, shell functions, and subshells invoked with (( - _c_o_m_m_a_n_d )) inherit the EERRRROORR trap. + _c_o_m_m_a_n_d )) inherit the EERRRR trap. eexxttgglloobb If set, the extended pattern matching features described above under PPaatthhnnaammee EExxppaannssiioonn are enabled. eexxttqquuoottee @@ -4954,6 +5067,10 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS and all remaining characters on that line to be ignored in an interactive shell (see CCOOMMMMEENNTTSS above). This option is enabled by default. + llaassttppiippee + If set, and job control is not active, the shell runs + the last command of a pipeline not executed in the back- + ground in the current shell environment. lliitthhiisstt If set, and the ccmmddhhiisstt option is enabled, multi-line commands are saved to the history with embedded newlines rather than using semicolon separators where possible. @@ -5025,10 +5142,11 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS Expressions may be combined using the following operators, listed in decreasing order of precedence. The evaluation - depends on the number of arguments; see below. + depends on the number of arguments; see below. Operator prece- + dence is used when there are five or more arguments. !! _e_x_p_r True if _e_x_p_r is false. (( _e_x_p_r )) - Returns the value of _e_x_p_r. This may be used to override + Returns the value of _e_x_p_r. This may be used to override the normal precedence of operators. _e_x_p_r_1 -aa _e_x_p_r_2 True if both _e_x_p_r_1 and _e_x_p_r_2 are true. @@ -5045,13 +5163,14 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS null. 2 arguments If the first argument is !!, the expression is true if and - only if the second argument is null. If the first argu- - ment is one of the unary conditional operators listed - above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS, the expression is + only if the second argument is null. If the first argu- + ment is one of the unary conditional operators listed + above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS, the expression is true if the unary test is true. If the first argument is not a valid unary conditional operator, the expression is false. 3 arguments + The following conditions are applied in the order listed. If the second argument is one of the binary conditional operators listed above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS, the result of the expression is the result of the binary test @@ -5073,31 +5192,34 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS The expression is parsed and evaluated according to precedence using the rules listed above. - ttiimmeess Print the accumulated user and system times for the shell and + When used with tteesstt or [[, the << and >> operators sort lexico- + graphically using ASCII ordering. + + ttiimmeess Print the accumulated user and system times for the shell and for processes run from the shell. The return status is 0. ttrraapp [--llpp] [[_a_r_g] _s_i_g_s_p_e_c ...] - The command _a_r_g is to be read and executed when the shell - receives signal(s) _s_i_g_s_p_e_c. If _a_r_g is absent (and there is a - single _s_i_g_s_p_e_c) or --, each specified signal is reset to its - original disposition (the value it had upon entrance to the - shell). If _a_r_g is the null string the signal specified by each - _s_i_g_s_p_e_c is ignored by the shell and by the commands it invokes. - If _a_r_g is not present and --pp has been supplied, then the trap - commands associated with each _s_i_g_s_p_e_c are displayed. If no - arguments are supplied or if only --pp is given, ttrraapp prints the - list of commands associated with each signal. The --ll option - causes the shell to print a list of signal names and their cor- - responding 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. Signal names are - case insensitive and the SIG prefix is optional. + The command _a_r_g is to be read and executed when the shell + receives signal(s) _s_i_g_s_p_e_c. If _a_r_g is absent (and there is a + single _s_i_g_s_p_e_c) or --, each specified signal is reset to its + original disposition (the value it had upon entrance to the + shell). If _a_r_g is the null string the signal specified by each + _s_i_g_s_p_e_c is ignored by the shell and by the commands it invokes. + If _a_r_g is not present and --pp has been supplied, then the trap + commands associated with each _s_i_g_s_p_e_c are displayed. If no + arguments are supplied or if only --pp is given, ttrraapp prints the + list of commands associated with each signal. The --ll option + causes the shell to print a list of signal names and their cor- + responding 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. Signal names are + case insensitive and the SSIIGG prefix is optional. - 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 exe- - cuted 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 - first command executes in a shell function (see SSHHEELLLL GGRRAAMMMMAARR - above). Refer to the description of the eexxttddeebbuugg option to the + 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 exe- + cuted 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 + first command executes in a shell function (see SSHHEELLLL GGRRAAMMMMAARR + above). Refer to the description of the eexxttddeebbuugg option to the sshhoopptt builtin for details of its effect on the DDEEBBUUGG trap. If a _s_i_g_s_p_e_c is RREETTUURRNN, the command _a_r_g is executed each time a shell function or a script executed with the .. or ssoouurrccee builtins fin- @@ -5105,53 +5227,53 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS If a _s_i_g_s_p_e_c is EERRRR, the command _a_r_g is executed whenever a sim- ple command has a non-zero exit status, subject to the following - conditions. The EERRRR trap is not executed if the failed command - is part of the command list immediately following a wwhhiillee or - uunnttiill keyword, part of the test in an _i_f statement, part of a - command executed in a &&&& or |||| list, or if the command's return - value is being inverted via !!. These are the same conditions + conditions. The EERRRR trap is not executed if the failed command + is part of the command list immediately following a wwhhiillee or + uunnttiill keyword, part of the test in an _i_f statement, part of a + command executed in a &&&& or |||| list, or if the command's return + value is being inverted via !!. These are the same conditions obeyed by the eerrrreexxiitt option. - Signals ignored upon entry to the shell cannot be trapped or - reset. Trapped signals that are not being ignored are reset to + Signals ignored upon entry to the shell cannot be trapped or + reset. Trapped signals that are not being ignored are reset to their original values in a subshell or subshell environment when - one is created. The return status is false if any _s_i_g_s_p_e_c is + one is created. The return status is false if any _s_i_g_s_p_e_c is invalid; otherwise ttrraapp returns true. ttyyppee [--aaffttppPP] _n_a_m_e [_n_a_m_e ...] - With no options, indicate how each _n_a_m_e would be interpreted if + With no options, indicate how each _n_a_m_e would be interpreted if used as a command name. If the --tt option is used, ttyyppee prints a - string which is one of _a_l_i_a_s, _k_e_y_w_o_r_d, _f_u_n_c_t_i_o_n, _b_u_i_l_t_i_n, or - _f_i_l_e if _n_a_m_e is an alias, shell reserved word, function, - builtin, or disk file, respectively. If the _n_a_m_e is not found, - then nothing is printed, and an exit status of false is - returned. If the --pp option is used, ttyyppee either returns the + string which is one of _a_l_i_a_s, _k_e_y_w_o_r_d, _f_u_n_c_t_i_o_n, _b_u_i_l_t_i_n, or + _f_i_l_e if _n_a_m_e is an alias, shell reserved word, function, + builtin, or disk file, respectively. If the _n_a_m_e is not found, + then nothing is printed, and an exit status of false is + returned. If the --pp option is used, ttyyppee either returns the name of the disk file that would be executed if _n_a_m_e were speci- fied as a command name, or nothing if ``type -t name'' would not - return _f_i_l_e. The --PP option forces a PPAATTHH search for each _n_a_m_e, + return _f_i_l_e. The --PP option forces a PPAATTHH search for each _n_a_m_e, even if ``type -t name'' would not return _f_i_l_e. If a command is - hashed, --pp and --PP print the hashed value, not necessarily the + hashed, --pp and --PP print the hashed value, not necessarily the file that appears first in PPAATTHH. If the --aa option is used, ttyyppee - prints all of the places that contain an executable named _n_a_m_e. - This includes aliases and functions, if and only if the --pp - option is not also used. The table of hashed commands is not - consulted when using --aa. The --ff option suppresses shell func- - tion lookup, as with the ccoommmmaanndd builtin. ttyyppee returns true if + prints all of the places that contain an executable named _n_a_m_e. + This includes aliases and functions, if and only if the --pp + option is not also used. The table of hashed commands is not + consulted when using --aa. The --ff option suppresses shell func- + tion lookup, as with the ccoommmmaanndd builtin. ttyyppee returns true if all of the arguments are found, false if any are not found. uulliimmiitt [--HHSSTTaabbccddeeffiillmmnnppqqrrssttuuvvxx [_l_i_m_i_t]] - Provides control over the resources available to the shell and - to processes started by it, on systems that allow such control. + Provides control over the resources available to the shell and + to processes started by it, on systems that allow such control. The --HH and --SS options specify that the hard or soft limit is set - for the given resource. A hard limit cannot be increased by a - non-root user once it is set; a soft limit may be increased up - to the value of the hard limit. If neither --HH nor --SS is speci- + for the given resource. A hard limit cannot be increased by a + non-root user once it is set; a soft limit may be increased up + to the value of the hard limit. If neither --HH nor --SS is speci- fied, both the soft and hard limits are set. The value of _l_i_m_i_t can be a number in the unit specified for the resource or one of the special values hhaarrdd, ssoofftt, or uunnlliimmiitteedd, which stand for the - current hard limit, the current soft limit, and no limit, - respectively. If _l_i_m_i_t is omitted, the current value of the - soft limit of the resource is printed, unless the --HH option is + current hard limit, the current soft limit, and no limit, + respectively. If _l_i_m_i_t is omitted, the current value of the + soft limit of the resource is printed, unless the --HH option is given. When more than one resource is specified, the limit name and unit are printed before the value. Other options are inter- preted as follows: @@ -5160,11 +5282,11 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS --cc The maximum size of core files created --dd The maximum size of a process's data segment --ee The maximum scheduling priority ("nice") - --ff The maximum size of files written by the shell and its + --ff The maximum size of files written by the shell and its children --ii The maximum number of pending signals --ll The maximum size that may be locked into memory - --mm The maximum resident set size (many systems do not honor + --mm The maximum resident set size (many systems do not honor this limit) --nn The maximum number of open file descriptors (most systems do not allow this value to be set) @@ -5173,65 +5295,65 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS --rr The maximum real-time scheduling priority --ss The maximum stack size --tt The maximum amount of cpu time in seconds - --uu The maximum number of processes available to a single + --uu The maximum number of processes available to a single user - --vv The maximum amount of virtual memory available to the - shell + --vv The maximum amount of virtual memory available to the + shell and, on some systems, to its children --xx The maximum number of file locks --TT The maximum number of threads If _l_i_m_i_t is given, it is the new value of the specified resource (the --aa option is display only). If no option is given, then --ff - is assumed. Values are in 1024-byte increments, except for --tt, - which is in seconds, --pp, which is in units of 512-byte blocks, - and --TT, --bb, --nn, and --uu, which are unscaled values. The return + is assumed. Values are in 1024-byte increments, except for --tt, + which is in seconds, --pp, which is in units of 512-byte blocks, + and --TT, --bb, --nn, and --uu, which are unscaled values. The return status is 0 unless an invalid option or argument is supplied, or an error occurs while setting a new limit. uummaasskk [--pp] [--SS] [_m_o_d_e] The user file-creation mask is set to _m_o_d_e. If _m_o_d_e begins with - a digit, it is interpreted as an octal number; otherwise it is - interpreted as a symbolic mode mask similar to that accepted by - _c_h_m_o_d(1). If _m_o_d_e is omitted, the current value of the mask is - printed. The --SS option causes the mask to be printed in sym- - bolic form; the default output is an octal number. If the --pp + a digit, it is interpreted as an octal number; otherwise it is + interpreted as a symbolic mode mask similar to that accepted by + _c_h_m_o_d(1). If _m_o_d_e is omitted, the current value of the mask is + printed. The --SS option causes the mask to be printed in sym- + bolic form; the default output is an octal number. If the --pp option is supplied, and _m_o_d_e is omitted, the output is in a form that may be reused as input. The return status is 0 if the mode - was successfully changed or if no _m_o_d_e argument was supplied, + was successfully changed or if no _m_o_d_e argument was supplied, and false otherwise. uunnaalliiaass [-aa] [_n_a_m_e ...] - Remove each _n_a_m_e from the list of defined aliases. If --aa is - supplied, all alias definitions are removed. The return value + Remove each _n_a_m_e from the list of defined aliases. If --aa is + supplied, all alias definitions are removed. The return value is true unless a supplied _n_a_m_e is not a defined alias. uunnsseett [-ffvv] [_n_a_m_e ...] - For each _n_a_m_e, remove the corresponding variable or function. + For each _n_a_m_e, remove the corresponding variable or function. If no options are supplied, or the --vv option is given, each _n_a_m_e - refers to a shell variable. Read-only variables may not be - unset. If --ff is specified, each _n_a_m_e refers to a shell func- - tion, and the function definition is removed. Each unset vari- - able or function is removed from the environment passed to sub- - sequent commands. If any of CCOOMMPP__WWOORRDDBBRREEAAKKSS, RRAANNDDOOMM, SSEECCOONNDDSS, - LLIINNEENNOO, HHIISSTTCCMMDD, FFUUNNCCNNAAMMEE, GGRROOUUPPSS, or DDIIRRSSTTAACCKK are unset, they - lose their special properties, even if they are subsequently + refers to a shell variable. Read-only variables may not be + unset. If --ff is specified, each _n_a_m_e refers to a shell func- + tion, and the function definition is removed. Each unset vari- + able or function is removed from the environment passed to sub- + sequent commands. If any of CCOOMMPP__WWOORRDDBBRREEAAKKSS, RRAANNDDOOMM, SSEECCOONNDDSS, + LLIINNEENNOO, HHIISSTTCCMMDD, FFUUNNCCNNAAMMEE, GGRROOUUPPSS, or DDIIRRSSTTAACCKK are unset, they + lose their special properties, even if they are subsequently reset. The exit status is true unless a _n_a_m_e is readonly. wwaaiitt [_n _._._.] - Wait for each specified process and return its termination sta- - tus. Each _n may be a process ID or a job specification; if a - job spec is given, all processes in that job's pipeline are - waited for. If _n is not given, all currently active child pro- - cesses are waited for, and the return status is zero. If _n - specifies a non-existent process or job, the return status is - 127. Otherwise, the return status is the exit status of the + Wait for each specified process and return its termination sta- + tus. Each _n may be a process ID or a job specification; if a + job spec is given, all processes in that job's pipeline are + waited for. If _n is not given, all currently active child pro- + cesses are waited for, and the return status is zero. If _n + specifies a non-existent process or job, the return status is + 127. Otherwise, the return status is the exit status of the last process or job waited for. RREESSTTRRIICCTTEEDD SSHHEELLLL If bbaasshh is started with the name rrbbaasshh, or the --rr option is supplied at - invocation, the shell becomes restricted. A restricted shell is used - to set up an environment more controlled than the standard shell. It - behaves identically to bbaasshh with the exception that the following are + invocation, the shell becomes restricted. A restricted shell is used + to set up an environment more controlled than the standard shell. It + behaves identically to bbaasshh with the exception that the following are disallowed or not performed: +o changing directories with ccdd @@ -5240,16 +5362,16 @@ RREESSTTRRIICCTTEEDD SSHHEELLLL +o specifying command names containing // - +o specifying a file name containing a // as an argument to the .. + +o specifying a file name containing a // as an argument to the .. builtin command - +o Specifying a filename containing a slash as an argument to the + +o specifying a filename containing a slash as an argument to the --pp option to the hhaasshh builtin command - +o importing function definitions from the shell environment at + +o importing function definitions from the shell environment at startup - +o parsing the value of SSHHEELLLLOOPPTTSS from the shell environment at + +o parsing the value of SSHHEELLLLOOPPTTSS from the shell environment at startup +o redirecting output using the >, >|, <>, >&, &>, and >> redirect- @@ -5258,10 +5380,10 @@ RREESSTTRRIICCTTEEDD SSHHEELLLL +o using the eexxeecc builtin command to replace the shell with another command - +o adding or deleting builtin commands with the --ff and --dd options + +o adding or deleting builtin commands with the --ff and --dd options to the eennaabbllee builtin command - +o Using the eennaabbllee builtin command to enable disabled shell + +o using the eennaabbllee builtin command to enable disabled shell builtins +o specifying the --pp option to the ccoommmmaanndd builtin command @@ -5271,14 +5393,14 @@ RREESSTTRRIICCTTEEDD SSHHEELLLL These restrictions are enforced after any startup files are read. When a command that is found to be a shell script is executed (see CCOOMM-- - MMAANNDD EEXXEECCUUTTIIOONN above), rrbbaasshh turns off any restrictions in the shell + MMAANNDD EEXXEECCUUTTIIOONN above), rrbbaasshh turns off any restrictions in the shell spawned to execute the script. SSEEEE AALLSSOO _B_a_s_h _R_e_f_e_r_e_n_c_e _M_a_n_u_a_l, Brian Fox and Chet Ramey _T_h_e _G_n_u _R_e_a_d_l_i_n_e _L_i_b_r_a_r_y, Brian Fox and Chet Ramey _T_h_e _G_n_u _H_i_s_t_o_r_y _L_i_b_r_a_r_y, Brian Fox and Chet Ramey - _P_o_r_t_a_b_l_e _O_p_e_r_a_t_i_n_g _S_y_s_t_e_m _I_n_t_e_r_f_a_c_e _(_P_O_S_I_X_) _P_a_r_t _2_: _S_h_e_l_l _a_n_d _U_t_i_l_i_- + _P_o_r_t_a_b_l_e _O_p_e_r_a_t_i_n_g _S_y_s_t_e_m _I_n_t_e_r_f_a_c_e _(_P_O_S_I_X_) _P_a_r_t _2_: _S_h_e_l_l _a_n_d _U_t_i_l_i_- _t_i_e_s, IEEE _s_h(1), _k_s_h(1), _c_s_h(1) _e_m_a_c_s(1), _v_i(1) @@ -5294,7 +5416,7 @@ FFIILLEESS _~_/_._b_a_s_h_r_c The individual per-interactive-shell startup file _~_/_._b_a_s_h___l_o_g_o_u_t - The individual login shell cleanup file, executed when a login + The individual login shell cleanup file, executed when a login shell exits _~_/_._i_n_p_u_t_r_c Individual _r_e_a_d_l_i_n_e initialization file @@ -5308,14 +5430,14 @@ AAUUTTHHOORRSS BBUUGG RREEPPOORRTTSS If you find a bug in bbaasshh,, you should report it. But first, you should - make sure that it really is a bug, and that it appears in the latest - version of bbaasshh. The latest version is always available from - _f_t_p_:_/_/_f_t_p_._g_n_u_._o_r_g_/_p_u_b_/_b_a_s_h_/. + make sure that it really is a bug, and that it appears in the latest + version of bbaasshh. The latest version is always available from + _f_t_p_:_/_/_f_t_p_._g_n_u_._o_r_g_/_p_u_b_/_g_n_u_/_b_a_s_h_/. - Once you have determined that a bug actually exists, use the _b_a_s_h_b_u_g - command to submit a bug report. If you have a fix, you are encouraged - to mail that as well! Suggestions and `philosophical' bug reports may - be mailed to _b_u_g_-_b_a_s_h_@_g_n_u_._o_r_g or posted to the Usenet newsgroup + Once you have determined that a bug actually exists, use the _b_a_s_h_b_u_g + command to submit a bug report. If you have a fix, you are encouraged + to mail that as well! Suggestions and `philosophical' bug reports may + be mailed to _b_u_g_-_b_a_s_h_@_g_n_u_._o_r_g or posted to the Usenet newsgroup ggnnuu..bbaasshh..bbuugg. ALL bug reports should include: @@ -5326,7 +5448,7 @@ BBUUGG RREEPPOORRTTSS A description of the bug behaviour A short script or `recipe' which exercises the bug - _b_a_s_h_b_u_g inserts the first three items automatically into the template + _b_a_s_h_b_u_g inserts the first three items automatically into the template it provides for filing a bug report. Comments and bug reports concerning this manual page should be directed @@ -5343,10 +5465,10 @@ BBUUGGSS Shell builtin commands and functions are not stoppable/restartable. Compound commands and command sequences of the form `a ; b ; c' are not - handled gracefully when process suspension is attempted. When a - process is stopped, the shell immediately executes the next command in - the sequence. It suffices to place the sequence of commands between - parentheses to force it into a subshell, which may be stopped as a + handled gracefully when process suspension is attempted. When a + process is stopped, the shell immediately executes the next command in + the sequence. It suffices to place the sequence of commands between + parentheses to force it into a subshell, which may be stopped as a unit. Array variables may not (yet) be exported. @@ -5355,4 +5477,4 @@ BBUUGGSS -GNU Bash-4.1 2009 December 29 BASH(1) +GNU Bash-4.2 2010 December 28 BASH(1) diff --git a/doc/bash.1 b/doc/bash.1 index 1890b3c5..0ba4f8ea 100644 --- a/doc/bash.1 +++ b/doc/bash.1 @@ -5,12 +5,12 @@ .\" Case Western Reserve University .\" chet@po.cwru.edu .\" -.\" Last Change: Tue Dec 29 15:36:16 EST 2009 +.\" Last Change: Tue Dec 28 13:41:43 EST 2010 .\" .\" bash_builtins, strip all but Built-Ins section .if \n(zZ=1 .ig zZ .if \n(zY=1 .ig zY -.TH BASH 1 "2009 December 29" "GNU Bash-4.1" +.TH BASH 1 "2010 December 28" "GNU Bash-4.2" .\" .\" There's some problem with having a `@' .\" in a tagged paragraph with the BSD man macros. @@ -50,8 +50,8 @@ bash \- GNU Bourne-Again SHell [options] [file] .SH COPYRIGHT -.if n Bash is Copyright (C) 1989-2009 by the Free Software Foundation, Inc. -.if t Bash is Copyright \(co 1989-2009 by the Free Software Foundation, Inc. +.if n Bash is Copyright (C) 1989-2011 by the Free Software Foundation, Inc. +.if t Bash is Copyright \(co 1989-2011 by the Free Software Foundation, Inc. .SH DESCRIPTION .B Bash is an \fBsh\fR-compatible command language interpreter that @@ -67,8 +67,10 @@ Shell and Utilities portion of the IEEE POSIX specification .B Bash can be configured to be POSIX-conformant by default. .SH OPTIONS -In addition to the single-character shell options documented in the -description of the \fBset\fR builtin command, \fBbash\fR +All of the single-character shell options documented in the +description of the \fBset\fR builtin command can be used as options +when the shell is invoked. +In addition, \fBbash\fR interprets the following options when it is invoked: .PP .PD 0 @@ -161,10 +163,6 @@ Turns on extended debugging mode (see the description of the .B extdebug option to the .B shopt -builtin below) -and shell function tracing (see the description of the -\fB\-o functrace\fP option to the -.B set builtin below). .TP .B \-\-dump\-po\-strings @@ -410,7 +408,7 @@ No other startup files are read. .PP .B Bash attempts to determine when it is being run with its standard input -connected to a a network connection, as if by the remote shell +connected to a network connection, as when executed by the remote shell daemon, usually \fIrshd\fP, or the secure shell daemon \fIsshd\fP. If .B bash @@ -478,7 +476,7 @@ A \fItoken\fP that performs a control function. It is one of the following symbols: .RS .PP -.if t \fB\(bv\(bv & && ; ;; ( ) | |& \fP +.if t \fB|| & && ; ;; ( ) | |& \fP .if n \fB|| & && ; ;; ( ) | |& \fP .RE .PD @@ -556,6 +554,8 @@ reserved word precedes a pipeline, the elapsed as well as user and system time consumed by its execution are reported when the pipeline terminates. The \fB\-p\fP option changes the output format to that specified by POSIX. +When the shell is in \fIposix mode\fP, it does not recognize +\fBtime\fP as a reserved word if the next token begins with a `-'. The .SM .B TIMEFORMAT @@ -567,6 +567,15 @@ under .B "Shell Variables" below. .PP +When the shell is in \fIposix mode\fP, \fBtime\fP +may be followed by a newline. In this case, the shell displays the +total user and system time consumed by the shell and its children. +The +.SM +.B TIMEFORMAT +variable may be used to specify the format of +the time information. +.PP Each command in a pipeline is executed as a separate process (i.e., in a subshell). .SS Lists @@ -577,7 +586,7 @@ of the operators .BR & , .BR && , or -.BR \(bv\(bv , +.BR || , and optionally terminated by one of .BR ; , .BR & , @@ -587,7 +596,7 @@ or Of these list operators, .B && and -.B \(bv\(bv +.B || have equal precedence, followed by .B ; and @@ -608,7 +617,7 @@ command to terminate in turn. The return status is the exit status of the last command executed. .PP AND and OR lists are sequences of one of more pipelines separated by the -\fB&&\fP and \fB\(bv\(bv\fP control operators, respectively. +\fB&&\fP and \fB||\fP control operators, respectively. AND and OR lists are executed with left associativity. An AND list has the form .RS @@ -624,7 +633,7 @@ returns an exit status of zero. An OR list has the form .RS .PP -\fIcommand1\fP \fB\(bv\(bv\fP \fIcommand2\fP +\fIcommand1\fP \fB||\fP \fIcommand2\fP .PP .RE .PP @@ -684,7 +693,7 @@ Conditional operators such as \fB\-f\fP must be unquoted to be recognized as primaries. .if t .sp 0.5 .if n .sp 1 -When used with \fB[[\fP, The \fB<\fP and \fB>\fP operators sort +When used with \fB[[\fP, the \fB<\fP and \fB>\fP operators sort lexicographically using the current locale. .if t .sp 0.5 .if n .sp 1 @@ -754,8 +763,7 @@ and .I expression2 are true. .TP -.if t \fIexpression1\fP \fB\(bv\(bv\fP \fIexpression2\fP -.if n \fIexpression1\fP \fB||\fP \fIexpression2\fP +\fIexpression1\fP \fB||\fP \fIexpression2\fP True if either .I expression1 or @@ -763,9 +771,7 @@ or is true. .PD .LP -The \fB&&\fP and -.if t \fB\(bv\(bv\fP -.if n \fB||\fP +The \fB&&\fP and \fB||\fP operators do not evaluate \fIexpression2\fP if the value of \fIexpression1\fP is sufficient to determine the return value of the entire conditional expression. @@ -873,24 +879,22 @@ command completes. Otherwise, the \fBelse\fP \fIlist\fP is executed, if present. The exit status is the exit status of the last command executed, or zero if no condition tested true. .TP -\fBwhile\fP \fIlist\fP; \fBdo\fP \fIlist\fP; \fBdone\fP +\fBwhile\fP \fIlist-1\fP; \fBdo\fP \fIlist-2\fP; \fBdone\fP .PD 0 .TP -\fBuntil\fP \fIlist\fP; \fBdo\fP \fIlist\fP; \fBdone\fP +\fBuntil\fP \fIlist-1\fP; \fBdo\fP \fIlist-2\fP; \fBdone\fP .PD -The \fBwhile\fP command continuously executes the \fBdo\fP -\fIlist\fP as long as the last command in \fIlist\fP returns +The \fBwhile\fP command continuously executes the list +\fIlist-2\fP as long as the last command in the list \fIlist-1\fP returns an exit status of zero. The \fBuntil\fP command is identical to the \fBwhile\fP command, except that the test is negated; -the -.B do -.I list +.I list-2 is executed as long as the last command in -.I list +.I list-1 returns a non-zero exit status. The exit status of the \fBwhile\fP and \fBuntil\fP commands is the exit status -of the last \fBdo\fP \fIlist\fP command executed, or zero if +of the last command executed in \fIlist-2\fP, or zero if none was executed. .SS Coprocesses .PP @@ -929,7 +933,7 @@ command (see below). The file descriptors can be utilized as arguments to shell commands and redirections using standard word expansions. -The process id of the shell spawned to execute the coprocess is +The process ID of the shell spawned to execute the coprocess is available as the value of the variable \fINAME\fP_PID. The \fBwait\fP builtin command may be used to wait for the coprocess to terminate. @@ -941,7 +945,11 @@ A shell function is an object that is called like a simple command and executes a compound command with a new set of positional parameters. Shell functions are declared as follows: .TP -[ \fBfunction\fP ] \fIname\fP () \fIcompound\-command\fP [\fIredirection\fP] +\fIname\fP () \fIcompound\-command\fP [\fIredirection\fP] +.PD 0 +.TP +\fBfunction\fP \fIname\fP [()] \fIcompound\-command\fP [\fIredirection\fP] +.PD This defines a function named \fIname\fP. The reserved word \fBfunction\fP is optional. If the \fBfunction\fP reserved word is supplied, the parentheses are optional. @@ -1106,6 +1114,14 @@ the eight-bit character whose value is the octal value \fInnn\fP the eight-bit character whose value is the hexadecimal value \fIHH\fP (one or two hex digits) .TP +.B \eu\fIHHHH\fP +the Unicode (ISO/IEC 10646) character whose value is the hexadecimal value +\fIHHHH\fP (one to four hex digits) +.TP +.B \eU\fIHHHHHHHH\fP +the Unicode (ISO/IEC 10646) character whose value is the hexadecimal value +\fIHHHHHHHH\fP (one to eight hex digits) +.TP .B \ec\fIx\fP a control-\fIx\fP character .PD @@ -1192,7 +1208,7 @@ builtin commands. In the context where an assignment statement is assigning a value to a shell variable or array index, the += operator can be used to append to or add to the variable's previous value. -When += is applied to a variable for which the integer attribute has been +When += is applied to a variable for which the \fIinteger\fP attribute has been set, \fIvalue\fP is evaluated as an arithmetic expression and added to the variable's current value, which is also evaluated. When += is applied to an array variable using compound assignment (see @@ -1352,13 +1368,13 @@ reading any startup files. This variable is read-only. .TP .B BASHPID -Expands to the process id of the current \fBbash\fP process. +Expands to the process ID of the current \fBbash\fP process. This differs from \fB$$\fP under certain circumstances, such as subshells that do not require \fBbash\fP to be re-initialized. .TP .B BASH_ALIASES An associative array variable whose members correspond to the internal -list of aliases as maintained by the \fBalias\fP builtin +list of aliases as maintained by the \fBalias\fP builtin. Elements added to this array appear in the alias list; unsetting array elements cause aliases to be removed from the alias list. .TP @@ -1414,14 +1430,15 @@ The command argument to the \fB\-c\fP invocation option. .TP .B BASH_LINENO An array variable whose members are the line numbers in source files -corresponding to each member of +where each corresponding member of .SM -.BR FUNCNAME . +.B FUNCNAME +was invoked. \fB${BASH_LINENO[\fP\fI$i\fP\fB]}\fP is the line number in the source -file where \fB${FUNCNAME[\fP\fI$i\fP\fB]}\fP was called +file (\fB${BASH_SOURCE[\fP\fI$i+1\fP\fB]}\fP) where +\fB${FUNCNAME[\fP\fI$i\fP\fB]}\fP was called (or \fB${BASH_LINENO[\fP\fI$i-1\fP\fB]}\fP if referenced within another shell function). -The corresponding source file name is \fB${BASH_SOURCE[\fP\fI$i\fP\fB]}\fP. Use .SM .B LINENO @@ -1437,11 +1454,15 @@ string matching the \fIn\fPth parenthesized subexpression. This variable is read-only. .TP .B BASH_SOURCE -An array variable whose members are the source filenames corresponding -to the elements in the +An array variable whose members are the source filenames +where the corresponding shell function names in the .SM .B FUNCNAME -array variable. +array variable are defined. +The shell function +\fB${FUNCNAME[\fP\fI$i\fP\fB]}\fP is defined in the file +\fB${BASH_SOURCE[\fP\fI$i\fP\fB]}\fP and called from +\fB${BASH_SOURCE[\fP\fI$i+1\fP\fB]}\fP. .TP .B BASH_SUBSHELL Incremented by one each time a subshell or subshell environment is spawned. @@ -1454,7 +1475,6 @@ this instance of The values assigned to the array members are as follows: .sp .5 .RS -.PD 0 .TP 24 .B BASH_VERSINFO[\fR0\fP] The major version number (the \fIrelease\fP). @@ -1475,7 +1495,6 @@ The release status (e.g., \fIbeta1\fP). The value of .SM .BR MACHTYPE . -.PD .RE .TP .B BASH_VERSION @@ -1544,6 +1563,11 @@ This variable is available only in shell functions invoked by the programmable completion facilities (see \fBProgrammable Completion\fP below). .TP +.B COPROC +An array variable (see \fBArrays\fP below) created to hold the file descriptors +for output from and input to an unnamed coprocess (see \fBCoprocesses\fP +above). +.TP .B DIRSTACK An array variable (see .B Arrays @@ -1573,7 +1597,7 @@ An array variable containing the names of all shell functions currently in the execution call stack. The element with index 0 is the name of any currently-executing shell function. -The bottom-most element is +The bottom-most element (the one with the highest index) is .if t \f(CW"main"\fP. .if n "main". This variable exists only when a shell function is executing. @@ -1586,6 +1610,16 @@ If .B FUNCNAME is unset, it loses its special properties, even if it is subsequently reset. +.if t .sp 0.5 +.if n .sp 1 +This variable can be used with \fBBASH_LINENO\fP and \fBBASH_SOURCE\fP. +Each element of \fBFUNCNAME\fP has corresponding elements in +\fBBASH_LINENO\fP and \fBBASH_SOURCE\fP to describe the call stack. +For instance, \fB${FUNCNAME[\fP\fI$i\fP\fB]}\fP was called from the file +\fB${BASH_SOURCE[\fP\fI$i+1\fP\fB]}\fP at line number +\fB${BASH_LINENO[\fP\fI$i\fP\fB]}\fP. +The \fBcaller\fP builtin displays the current call stack using this +information. .TP .B GROUPS An array variable containing the list of groups of which the current @@ -1638,6 +1672,10 @@ type on which is executing, in the standard GNU \fIcpu-company-system\fP format. The default is system-dependent. .TP +.B MAPFILE +An array variable (see \fBArrays\fP below) created to hold the text +read by the \fBmapfile\fP builtin when no variable name is supplied. +.TP .B OLDPWD The previous working directory as set by the .B cd @@ -1694,6 +1732,28 @@ If is unset, it loses its special properties, even if it is subsequently reset. .TP +.B READLINE_LINE +The contents of the +.B readline +line buffer, for use with +.if t \f(CWbind -x\fP +.if n "bind -x" +(see +.SM +.B "SHELL BUILTIN COMMANDS" +below). +.TP +.B READLINE_POINT +The position of the insertion point in the +.B readline +line buffer, for use with +.if t \f(CWbind -x\fP +.if n "bind -x" +(see +.SM +.B "SHELL BUILTIN COMMANDS" +below). +.TP .B REPLY Set to the line of input read by the .B read @@ -1766,18 +1826,6 @@ expansion before being interpreted as a file name. .B PATH is not used to search for the resultant file name. .TP -.B CDPATH -The search path for the -.B cd -command. -This is a colon-separated list of directories in which the shell looks -for destination directories specified by the -.B cd -command. -A sample value is -.if t \f(CW".:~:/usr"\fP. -.if n ".:~:/usr". -.TP .B BASH_XTRACEFD If set to an integer corresponding to a valid file descriptor, \fBbash\fP will write the trace output generated when @@ -1800,9 +1848,23 @@ to 2 (the standard error file descriptor) and then unsetting it will result in the standard error being closed. .TP +.B CDPATH +The search path for the +.B cd +command. +This is a colon-separated list of directories in which the shell looks +for destination directories specified by the +.B cd +command. +A sample value is +.if t \f(CW".:~:/usr"\fP. +.if n ".:~:/usr". +.TP .B COLUMNS -Used by the \fBselect\fP builtin command to determine the terminal width -when printing selection lists. Automatically set upon receipt of a SIGWINCH. +Used by the \fBselect\fP compound command to determine the terminal width +when printing selection lists. Automatically set upon receipt of a +.SM +.BR SIGWINCH . .TP .B COMPREPLY An array variable from which \fBbash\fP reads the possible completions @@ -1814,9 +1876,15 @@ If \fBbash\fP finds this variable in the environment when the shell starts with value .if t \f(CWt\fP, .if n "t", -it assumes that the shell is running in an emacs shell buffer and disables +it assumes that the shell is running in an Emacs shell buffer and disables line editing. .TP +.B ENV +Similar to +.SM +.BR BASH_ENV ; +used when the shell is invoked in POSIX mode. +.TP .B FCEDIT The default editor for the .B fc @@ -1836,6 +1904,11 @@ A sample value is .if t \f(CW".o:~"\fP. .if n ".o:~". .TP +.B FUNCNEST +If set to a numeric value greater than 0, defines a maximum function +nesting level. Function invocations that exceed this nesting level +will cause the current command to abort. +.TP .B GLOBIGNORE A colon-separated list of patterns defining the set of filenames to be ignored by pathname expansion. @@ -2020,18 +2093,19 @@ strings preceded by a \fB$\fP. This variable determines the locale category used for number formatting. .TP .B LINES -Used by the \fBselect\fP builtin command to determine the column length +Used by the \fBselect\fP compound command to determine the column length for printing selection lists. Automatically set upon receipt of a .SM .BR SIGWINCH . .TP .B MAIL -If this parameter is set to a file name and the +If this parameter is set to a file or directory name and the .SM .B MAILPATH variable is not set, .B bash -informs the user of the arrival of mail in the specified file. +informs the user of the arrival of mail in the specified file or +Maildir-format directory. .TP .B MAILCHECK Specifies how @@ -2200,6 +2274,7 @@ If this variable is not set, \fBbash\fP acts as if it had the value \fB$\(aq\enreal\et%3lR\enuser\et%3lU\ensys\t%3lS\(aq\fP. If the value is null, no timing information is displayed. A trailing newline is added when the format string is displayed. +.PD 0 .TP .B TMOUT If set to a value greater than zero, @@ -2219,8 +2294,8 @@ terminates after waiting for that number of seconds if input does not arrive. .TP .B TMPDIR -If set, \fBBash\fP uses its value as the name of a directory in which -\fBBash\fP creates temporary files for the shell's use. +If set, \fBbash\fP uses its value as the name of a directory in which +\fBbash\fP creates temporary files for the shell's use. .TP .B auto_resume This variable controls how the shell interacts with the user and @@ -2284,9 +2359,13 @@ using arbitrary strings. An indexed array is created automatically if any variable is assigned to using the syntax \fIname\fP[\fIsubscript\fP]=\fIvalue\fP. The .I subscript -is treated as an arithmetic expression that must evaluate to a number -greater than or equal to zero. To explicitly declare an indexed array, -use +is treated as an arithmetic expression that must evaluate to a number. +If +.I subscript +evaluates to a number less than zero, it is used as +an offset from one greater than the array's maximum index (so a subcript +of -1 refers to the last element of the array). +To explicitly declare an indexed array, use .B declare \-a \fIname\fP (see .SM @@ -2371,6 +2450,9 @@ builtins each accept a option to specify an indexed array and a .B \-A option to specify an associative array. +If both options are supplied, +.B \-A +takes precedence. The .B read builtin accepts a @@ -2595,7 +2677,7 @@ a level of variable indirection is introduced. expanded and that value is used in the rest of the substitution, rather than the value of \fIparameter\fP itself. This is known as \fIindirect expansion\fP. -The exceptions to this are the expansions of ${!\fIprefix\fP*} and +The exceptions to this are the expansions of ${\fB!\fP\fIprefix\fP\fB*\fP} and ${\fB!\fP\fIname\fP[\fI@\fP]} described below. The exclamation point must immediately follow the left brace in order to introduce indirection. @@ -2655,7 +2737,7 @@ ${\fIparameter\fP\fB:\fP\fIoffset\fP} .TP ${\fIparameter\fP\fB:\fP\fIoffset\fP\fB:\fP\fIlength\fP} .PD -\fBSubstring Expansion.\fP +\fBSubstring Expansion\fP. Expands to up to \fIlength\fP characters of \fIparameter\fP starting at the character specified by \fIoffset\fP. If \fIlength\fP is omitted, expands to the substring of @@ -2665,9 +2747,13 @@ If \fIlength\fP is omitted, expands to the substring of .B ARITHMETIC EVALUATION below). -\fIlength\fP must evaluate to a number greater than or equal to zero. If \fIoffset\fP evaluates to a number less than zero, the value is used as an offset from the end of the value of \fIparameter\fP. +If \fIlength\fP evaluates to a number less than zero, and \fIparameter\fP +is not \fB@\fP and not an indexed or associative array, it is interpreted +as an offset from the end of the value of \fIparameter\fP rather than +a number of characters, and the expansion is the characters between the +two offsets. If \fIparameter\fP is \fB@\fP, the result is \fIlength\fP positional parameters beginning at \fIoffset\fP. If \fIparameter\fP is an indexed array name subscripted by @ or *, @@ -2689,7 +2775,7 @@ ${\fB!\fP\fIprefix\fP\fB*\fP} .TP ${\fB!\fP\fIprefix\fP\fB@\fP} .PD -\fBNames matching prefix.\fP +\fBNames matching prefix\fP. Expands to the names of variables whose names begin with \fIprefix\fP, separated by the first character of the .SM @@ -2703,7 +2789,7 @@ ${\fB!\fP\fIname\fP[\fI@\fP]} .TP ${\fB!\fP\fIname\fP[\fI*\fP]} .PD -\fBList of array keys.\fP +\fBList of array keys\fP. If \fIname\fP is an array variable, expands to the list of array indices (keys) assigned in \fIname\fP. If \fIname\fP is not an array, expands to 0 if \fIname\fP is set and null @@ -2712,7 +2798,7 @@ When \fI@\fP is used and the expansion appears within double quotes, each key expands to a separate word. .TP ${\fB#\fP\fIparameter\fP} -\fBParameter length.\fP +\fBParameter length\fP. The length in characters of the value of \fIparameter\fP is substituted. If .I parameter @@ -2734,7 +2820,7 @@ ${\fIparameter\fP\fB#\fP\fIword\fP} .TP ${\fIparameter\fP\fB##\fP\fIword\fP} .PD -\fBRemove matching prefix pattern.\fP +\fBRemove matching prefix pattern\fP. The .I word is expanded to produce a pattern just as in pathname @@ -2767,7 +2853,7 @@ ${\fIparameter\fP\fB%\fP\fIword\fP} .TP ${\fIparameter\fP\fB%%\fP\fIword\fP} .PD -\fBRemove matching suffix pattern.\fP +\fBRemove matching suffix pattern\fP. The \fIword\fP is expanded to produce a pattern just as in pathname expansion. If the pattern matches a trailing portion of the expanded value of @@ -2794,7 +2880,7 @@ the pattern removal operation is applied to each member of the array in turn, and the expansion is the resultant list. .TP ${\fIparameter\fP\fB/\fP\fIpattern\fP\fB/\fP\fIstring\fP} -\fBPattern substitution.\fP +\fBPattern substitution\fP. The \fIpattern\fP is expanded to produce a pattern just as in pathname expansion. \fIParameter\fP is expanded and the longest match of \fIpattern\fP @@ -2833,7 +2919,7 @@ ${\fIparameter\fP\fB,\fP\fIpattern\fP} .TP ${\fIparameter\fP\fB,,\fP\fIpattern\fP} .PD -\fBCase modification.\fP +\fBCase modification\fP. This expansion modifies the case of alphabetic characters in \fIparameter\fP. The \fIpattern\fP is expanded to produce a pattern just as in pathname expansion. @@ -2842,7 +2928,7 @@ to uppercase; the \fB,\fP operator converts matching uppercase letters to lowercase. The \fB^^\fP and \fB,,\fP expansions convert each matched character in the expanded value; the \fB^\fP and \fB,\fP expansions match and convert only -the first character in the expanded value.. +the first character in the expanded value. If \fIpattern\fP is omitted, it is treated like a \fB?\fP, which matches every character. If @@ -2865,7 +2951,6 @@ array in turn, and the expansion is the resultant list. .PP \fICommand substitution\fP allows the output of a command to replace the command name. There are two forms: -.PP .RS .PP \fB$(\fP\fIcommand\fP\|\fB)\fP @@ -3132,6 +3217,7 @@ they are to be matched literally. The special pattern characters have the following meanings: .PP .PD 0 +.RS .TP .B * Matches any string, including the null string. @@ -3211,6 +3297,7 @@ and the syntax \fB[.\fP\fIsymbol\fP\fB.]\fP matches the collating symbol \fIsymbol\fP. .RE +.RE .PD .PP If the \fBextglob\fP shell option is enabled using the \fBshopt\fP @@ -3697,7 +3784,7 @@ function become the positional parameters during its execution. The special parameter .B # -is updated to reflect the change. Special parameter 0 +is updated to reflect the change. Special parameter \fB0\fP is unchanged. The first element of the .SM @@ -3736,6 +3823,11 @@ Variables local to the function may be declared with the builtin command. Ordinarily, variables and their values are shared between the function and its caller. .PP +The \fBFUNCNEST\fP variable, if set to a numeric value greater +than 0, defines a maximum function nesting level. Function +invocations that exceed the limit cause the entire command to +abort. +.PP If the builtin command .B return is executed in a function, the function completes and @@ -3779,8 +3871,10 @@ in multiple identically-named entries in the environment passed to the shell's children. Care should be taken in cases where this may cause a problem. .PP -Functions may be recursive. No limit is imposed on the number -of recursive calls. +Functions may be recursive. +The \fBFUNCNEST\fP variable may be used to limit the depth of the +function call stack and restrict the number of function invocations. +By default, no limit is imposed on the number of recursive calls. .SH "ARITHMETIC EVALUATION" The shell allows arithmetic expressions to be evaluated, under certain circumstances (see the \fBlet\fP and \fBdeclare\fP builtin @@ -3860,12 +3954,12 @@ The value of a variable is evaluated as an arithmetic expression when it is referenced, or when a variable which has been given the \fIinteger\fP attribute using \fBdeclare -i\fP is assigned a value. A null value evaluates to 0. -A shell variable need not have its integer attribute +A shell variable need not have its \fIinteger\fP attribute turned on to be used in an expression. .PP Constants with a leading 0 are interpreted as octal numbers. A leading 0x or 0X denotes hexadecimal. -Otherwise, numbers take the form [\fIbase#\fP]n, where \fIbase\fP +Otherwise, numbers take the form [\fIbase#\fP]n, where the optional \fIbase\fP is a decimal number between 2 and 64 representing the arithmetic base, and \fIn\fP is a number in that base. If \fIbase#\fP is omitted, then base 10 is used. @@ -3893,8 +3987,9 @@ Unless otherwise specified, primaries that operate on files follow symbolic links and operate on the target of the link, rather than the link itself. .if t .sp 0.5 .if n .sp 1 -When used with \fB[[\fP, The \fB<\fP and \fB>\fP operators sort +When used with \fB[[\fP, the \fB<\fP and \fB>\fP operators sort lexicographically using the current locale. +The \fBtest\fP command sorts using ASCII ordering. .sp 1 .PD 0 .TP @@ -3948,20 +4043,24 @@ True if \fIfile\fP exists and is writable. .B \-x \fIfile\fP True if \fIfile\fP exists and is executable. .TP -.B \-O \fIfile\fP -True if \fIfile\fP exists and is owned by the effective user id. -.TP .B \-G \fIfile\fP True if \fIfile\fP exists and is owned by the effective group id. .TP .B \-L \fIfile\fP True if \fIfile\fP exists and is a symbolic link. .TP +.B \-N \fIfile\fP +True if \fIfile\fP exists and has been modified since it was last read. +.TP +.B \-O \fIfile\fP +True if \fIfile\fP exists and is owned by the effective user id. +.TP .B \-S \fIfile\fP True if \fIfile\fP exists and is a socket. .TP -.B \-N \fIfile\fP -True if \fIfile\fP exists and has been modified since it was last read. +\fIfile1\fP \fB\-ef\fP \fIfile2\fP +True if \fIfile1\fP and \fIfile2\fP refer to the same device and +inode numbers. .TP \fIfile1\fP \-\fBnt\fP \fIfile2\fP True if \fIfile1\fP is newer (according to modification date) than \fIfile2\fP, @@ -3971,12 +4070,8 @@ or if \fIfile1\fP exists and \fPfile2\fP does not. True if \fIfile1\fP is older than \fIfile2\fP, or if \fIfile2\fP exists and \fIfile1\fP does not. .TP -\fIfile1\fP \fB\-ef\fP \fIfile2\fP -True if \fIfile1\fP and \fIfile2\fP refer to the same device and -inode numbers. -.TP .B \-o \fIoptname\fP -True if shell option +True if the shell option .I optname is enabled. See the list of options under the description of the @@ -3985,6 +4080,11 @@ option to the .B set builtin below. .TP +.B \-v \fIvarname\fP +True if the shell variable +.I varname +is set (has been assigned a value). +.TP .B \-z \fIstring\fP True if the length of \fIstring\fP is zero. .TP @@ -4143,7 +4243,6 @@ arguments, if any. .SH COMMAND EXECUTION ENVIRONMENT The shell has an \fIexecution environment\fP, which consists of the following: -.if n .sp 1 .IP \(bu open files inherited by the shell at invocation, as modified by redirections supplied to the \fBexec\fP builtin @@ -4207,8 +4306,8 @@ subshell environment. Changes made to the subshell environment cannot affect the shell's execution environment. .PP Subshells spawned to execute command substitutions inherit the value of -the \fB\-e\fP option from the parent shell. When not in posix mode, -Bash clears the \fB\-e\fP option in such subshells. +the \fB\-e\fP option from the parent shell. When not in \fIposix\fP mode, +\fBbash\fP clears the \fB\-e\fP option in such subshells. .PP If a command is followed by a \fB&\fP and job control is not active, the default standard input for the command is the empty file \fI/dev/null\fP. @@ -4703,7 +4802,7 @@ shell, unless the option is given at shell invocation. Line editing is also used when using the \fB\-e\fP option to the \fBread\fP builtin. -By default, the line editing commands are similar to those of emacs. +By default, the line editing commands are similar to those of Emacs. A vi-style line editing interface is also available. Line editing can be enabled at any time using the .B \-o emacs @@ -4724,7 +4823,7 @@ options to the builtin. .SS "Readline Notation" .PP -In this section, the emacs-style notation is used to denote +In this section, the Emacs-style notation is used to denote keystrokes. Control keys are denoted by C\-\fIkey\fR, e.g., C\-n means Control\-N. Similarly, .I meta @@ -5041,7 +5140,7 @@ mapped to \fBself-insert\fP. .TP .B editing\-mode (emacs) Controls whether readline begins with a set of key bindings similar -to \fIemacs\fP or \fIvi\fP. +to \fIEmacs\fP or \fIvi\fP. .B editing\-mode can be set to either .B emacs @@ -5064,11 +5163,11 @@ key the terminal claims to support when it is called. On many terminals, the meta key is used to send eight-bit characters. .TP .B expand\-tilde (Off) -If set to \fBon\fP, tilde expansion is performed when readline +If set to \fBOn\fP, tilde expansion is performed when readline attempts word completion. .TP .B history\-preserve\-point (Off) -If set to \fBon\fP, the history code attempts to place point at the +If set to \fBOn\fP, the history code attempts to place point at the same location on each history line retrieved with \fBprevious-history\fP or \fBnext-history\fP. .TP @@ -5122,9 +5221,15 @@ have a slash appended (subject to the value of .B match\-hidden\-files (On) This variable, when set to \fBOn\fP, causes readline to match files whose names begin with a `.' (hidden files) when performing filename -completion, unless the leading `.' is +completion. +If set to \fBOff\fP, the leading `.' must be supplied by the user in the filename to be completed. .TP +.B menu\-complete\-display\-prefix (Off) +If set to \fBOn\fP, menu completion displays the common prefix of the +list of possible completions (which may be empty) before cycling through +the list. +.TP .B output\-meta (Off) If set to \fBOn\fP, readline will display characters with the eighth bit set directly rather than as a meta-prefixed escape @@ -5139,7 +5244,7 @@ If set to \fBOn\fP, readline will display completions with matches sorted horizontally in alphabetical order, rather than down the screen. .TP .B revert\-all\-at\-newline (Off) -If set to \fBon\fP, readline will undo all changes to history lines +If set to \fBOn\fP, readline will undo all changes to history lines before returning when \fBaccept\-line\fP is executed. By default, history lines may be modified and retain individual undo lists across calls to \fBreadline\fP. @@ -5147,7 +5252,7 @@ calls to \fBreadline\fP. .B show\-all\-if\-ambiguous (Off) This alters the default behavior of the completion functions. If set to -.BR on , +.BR On , words which have more than one possible completion cause the matches to be listed immediately instead of ringing the bell. .TP @@ -5155,7 +5260,7 @@ matches to be listed immediately instead of ringing the bell. This alters the default behavior of the completion functions in a fashion similar to \fBshow\-all\-if\-ambiguous\fP. If set to -.BR on , +.BR On , words which have more than one possible completion without any possible partial completion (the possible completions don't share a common prefix) cause the matches to be listed immediately instead @@ -5215,7 +5320,7 @@ library sets the \fIapplication name\fP, and an initialization file can test for a particular value. This could be used to bind key sequences to functions useful for a specific program. For instance, the following command adds a -key sequence that quotes the current or previous word in Bash: +key sequence that quotes the current or previous word in \fBbash\fP: .sp 1 .RS .nf @@ -5401,10 +5506,14 @@ as if the "!\fIn\fP" history expansion had been specified. .B yank\-last\-arg (M\-.\^, M\-_\^) Insert the last argument to the previous command (the last word of -the previous history entry). With an argument, -behave exactly like \fByank\-nth\-arg\fP. +the previous history entry). +With a numeric argument, behave exactly like \fByank\-nth\-arg\fP. Successive calls to \fByank\-last\-arg\fP move back through the history -list, inserting the last argument of each line in turn. +list, inserting the last word (or the word specified by the argument to +the first call) of each line in turn. +Any numeric argument supplied to these successive calls determines +the direction to move through the history. A negative argument switches +the direction through the history (back or forward). The history expansion facilities are used to extract the last argument, as if the "!$" history expansion had been specified. .TP @@ -5653,7 +5762,7 @@ through the list. This command is intended to be bound to \fBTAB\fP, but is unbound by default. .TP -.B menu\-complete-\backward +.B menu\-complete\-backward Identical to \fBmenu\-complete\fP, but moves backward through the list of possible completions, as if \fBmenu\-complete\fP had been given a negative argument. This command is unbound by default. @@ -5790,7 +5899,7 @@ character. A negative count searches for previous occurrences. A character is read and point is moved to the previous occurrence of that character. A negative count searches for subsequent occurrences. .TP -.B skip\-csi\-sequence () +.B skip\-csi\-sequence Read enough characters to consume a multi-key sequence such as those defined for keys like Home and End. Such sequences begin with a Control Sequence Indicator (CSI), usually ESC\-[. If this sequence is @@ -5874,7 +5983,7 @@ If the command word is a full pathname, a compspec for the full pathname is searched for first. If no compspec is found for the full pathname, an attempt is made to find a compspec for the portion following the final slash. -If those searches to not result in a compspec, any compspec defined with +If those searches do not result in a compspec, any compspec defined with the \fB\-D\fP option to \fBcomplete\fP is used as the default. .PP Once a compspec has been found, it is used to generate the list of @@ -6018,7 +6127,7 @@ exit status of 124. If a shell function returns 124, and changes the compspec associated with the command on which completion is being attempted (supplied as the first argument when the function is executed), programmable completion restarts from the beginning, with an -attempt to find a compspec for that command. This allows a set of +attempt to find a new compspec for that command. This allows a set of completions to be built dynamically as completion is attempted, rather than being loaded all at once. .PP @@ -6255,6 +6364,8 @@ writing the history file. .PP An event designator is a reference to a command line entry in the history list. +Unless the reference is absolute, events are relative to the current +position in the history list. .PP .PD 0 .TP @@ -6270,25 +6381,27 @@ Refer to command line .IR n . .TP .B !\-\fIn\fR -Refer to the current command line minus +Refer to the current command minus .IR n . .TP .B !! Refer to the previous command. This is a synonym for `!\-1'. .TP .B !\fIstring\fR -Refer to the most recent command starting with +Refer to the most recent command preceding the current position in the +history list starting with .IR string . .TP .B !?\fIstring\fR\fB[?]\fR -Refer to the most recent command containing +Refer to the most recent command preceding the current postition in the +history list containing .IR string . The trailing \fB?\fP may be omitted if .I string is followed immediately by a newline. .TP .B \d\s+2^\s-2\u\fIstring1\fP\d\s+2^\s-2\u\fIstring2\fP\d\s+2^\s-2\u -Quick substitution. Repeat the last command, replacing +Quick substitution. Repeat the previous command, replacing .I string1 with .IR string2 . @@ -6655,7 +6768,7 @@ is not a shell builtin command. .TP \fBcaller\fP [\fIexpr\fP] Returns the context of any active subroutine call (a shell function or -a script executed with the \fB.\fP or \fBsource\fP builtins. +a script executed with the \fB.\fP or \fBsource\fP builtins). Without \fIexpr\fP, \fBcaller\fP displays the line number and source filename of the current subroutine call. If a non-negative integer is supplied as \fIexpr\fP, \fBcaller\fP @@ -6667,7 +6780,7 @@ The return value is 0 unless the shell is not executing a subroutine call or \fIexpr\fP does not correspond to a valid position in the call stack. .TP -\fBcd\fP [\fB\-L|-P\fP] [\fIdir\fP] +\fBcd\fP [\fB\-L\fP|[\fB\-P\fP [\fB\-e\fP]]] [\fIdir\fP] Change the current directory to \fIdir\fP. The variable .SM .B HOME @@ -6700,7 +6813,15 @@ option to the .B set builtin command); the .B \-L -option forces symbolic links to be followed. An argument of +option forces symbolic links to be followed. +If the +.B \-e +option is supplied with +.BR \-P , +and the current working directory cannot be successfully determined +after a successful directory change, \fBcd\fP will return an unsuccessful +status. +An argument of .B \- is equivalent to .SM @@ -6926,18 +7047,6 @@ User names. May also be specified as \fB\-u\fP. Names of all shell variables. May also be specified as \fB\-v\fP. .RE .TP 8 -\fB\-G\fP \fIglobpat\fP -The pathname expansion pattern \fIglobpat\fP is expanded to generate -the possible completions. -.TP 8 -\fB\-W\fP \fIwordlist\fP -The \fIwordlist\fP is split using the characters in the -.SM -.B IFS -special variable as delimiters, and each resultant word is expanded. -The possible completions are the members of the resultant list which -match the word being completed. -.TP 8 \fB\-C\fP \fIcommand\fP \fIcommand\fP is executed in a subshell environment, and its output is used as the possible completions. @@ -6951,13 +7060,9 @@ of the .B COMPREPLY array variable. .TP 8 -\fB\-X\fP \fIfilterpat\fP -\fIfilterpat\fP is a pattern as used for pathname expansion. -It is applied to the list of possible completions generated by the -preceding options and arguments, and each completion matching -\fIfilterpat\fP is removed from the list. -A leading \fB!\fP in \fIfilterpat\fP negates the pattern; in this -case, any completion not matching \fIfilterpat\fP is removed. +\fB\-G\fP \fIglobpat\fP +The pathname expansion pattern \fIglobpat\fP is expanded to generate +the possible completions. .TP 8 \fB\-P\fP \fIprefix\fP \fIprefix\fP is added at the beginning of each possible completion @@ -6966,6 +7071,22 @@ after all other options have been applied. \fB\-S\fP \fIsuffix\fP \fIsuffix\fP is appended to each possible completion after all other options have been applied. +.TP 8 +\fB\-W\fP \fIwordlist\fP +The \fIwordlist\fP is split using the characters in the +.SM +.B IFS +special variable as delimiters, and each resultant word is expanded. +The possible completions are the members of the resultant list which +match the word being completed. +.TP 8 +\fB\-X\fP \fIfilterpat\fP +\fIfilterpat\fP is a pattern as used for pathname expansion. +It is applied to the list of possible completions generated by the +preceding options and arguments, and each completion matching +\fIfilterpat\fP is removed from the list. +A leading \fB!\fP in \fIfilterpat\fP negates the pattern; in this +case, any completion not matching \fIfilterpat\fP is removed. .PD .PP The return value is true unless an invalid option is supplied, an option @@ -6978,7 +7099,7 @@ an error occurs adding a completion specification. \fBcompopt\fP [\fB\-o\fP \fIoption\fP] [\fB\-DE\fP] [\fB+o\fP \fIoption\fP] [\fIname\fP] Modify completion options for each \fIname\fP according to the \fIoption\fPs, or for the -currently-execution completion if no \fIname\fPs are supplied. +currently-executing completion if no \fIname\fPs are supplied. If no \fIoption\fPs are given, display the completion options for each \fIname\fP or the current completion. The possible values of \fIoption\fP are those valid for the \fBcomplete\fP @@ -6989,7 +7110,7 @@ on a command for which no completion has previously been defined. The \fB\-E\fP option indicates that the remaining options should apply to ``empty'' command completion; that is, completion attempted on a blank line. -.PP +.sp 1 The return value is true unless an invalid option is supplied, an attempt is made to modify the options for a \fIname\fP for which no completion specification exists, or an output error occurs. @@ -7012,10 +7133,10 @@ is greater than the number of enclosing loops, the last enclosing loop (the ``top-level'' loop) is resumed. The return value is 0 unless \fIn\fP is not greater than or equal to 1. .TP -\fBdeclare\fP [\fB\-aAfFilrtux\fP] [\fB\-p\fP] [\fIname\fP[=\fIvalue\fP] ...] +\fBdeclare\fP [\fB\-aAfFgilrtux\fP] [\fB\-p\fP] [\fIname\fP[=\fIvalue\fP] ...] .PD 0 .TP -\fBtypeset\fP [\fB\-aAfFilrtux\fP] [\fB\-p\fP] [\fIname\fP[=\fIvalue\fP] ...] +\fBtypeset\fP [\fB\-aAfFgilrtux\fP] [\fB\-p\fP] [\fIname\fP[=\fIvalue\fP] ...] .PD Declare variables and/or give them attributes. If no \fIname\fPs are given then display the values of variables. @@ -7044,6 +7165,11 @@ are displayed as well. The .B \-F option implies .BR \-f . +The +.B \-g +option forces variables to be created or modified at the global scope, +even when \fBdeclare\fP is executed in a shell function. +It is ignored in all other cases. The following options can be used to restrict output to variables with the specified attribute or to give variables attributes: @@ -7098,11 +7224,11 @@ turns off the attribute instead, with the exceptions that \fB+a\fP may not be used to destroy an array variable and \fB+r\fP will not remove the readonly attribute. -When used in a function, -makes each -\fIname\fP local, as with the +When used in a function, makes each +\fIname\fP local, as with the .B local -command. +command, +unless the \fB\-g\fP option is supplied, If a variable name is followed by =\fIvalue\fP, the value of the variable is set to \fIvalue\fP. The return value is 0 unless an invalid option is encountered, @@ -7119,7 +7245,7 @@ an attempt is made to turn off array status for an array variable, or an attempt is made to display a non-existent function with \fB\-f\fP. .RE .TP -.B dirs [+\fIn\fP] [\-\fIn\fP] [\fB\-cplv\fP] +.B dirs [+\fIn\fP] [\-\fIn\fP] [\fB\-clpv\fP] Without options, displays the list of currently remembered directories. The default display is on a single line with directory names separated by spaces. @@ -7228,6 +7354,8 @@ backspace suppress further output .TP .B \ee +.TP +.B \eE an escape character .TP .B \ef @@ -7255,6 +7383,14 @@ the eight-bit character whose value is the octal value \fInnn\fP .B \ex\fIHH\fP the eight-bit character whose value is the hexadecimal value \fIHH\fP (one or two hex digits) +.TP +.B \eu\fIHHHH\fP +the Unicode (ISO/IEC 10646) character whose value is the hexadecimal value +\fIHHHH\fP (one to four hex digits) +.TP +.B \eU\fIHHHHHHHH\fP +the Unicode (ISO/IEC 10646) character whose value is the hexadecimal value +\fIHHHHHHHH\fP (one to eight hex digits) .PD .RE .TP @@ -7541,7 +7677,7 @@ return value greater than zero. .SM .B OPTIND is set to the index of the first non-option argument, -and \fBname\fP is set to ?. +and \fIname\fP is set to ?. .sp 1 .B getopts normally parses the positional parameters, but if more arguments are @@ -7605,12 +7741,13 @@ It returns false if the end of options is encountered or an error occurs. .TP \fBhash\fP [\fB\-lr\fP] [\fB\-p\fP \fIfilename\fP] [\fB\-dt\fP] [\fIname\fP] -For each -.IR name , -the full file name of the command is determined by searching +Each time \fBhash\fP is invoked, +the full pathname of the command +.I name +is determined by searching the directories in .B $PATH -and remembered. +and remembered. Any previously-remembered pathname is discarded. If the .B \-p option is supplied, no path search is performed, and @@ -7658,9 +7795,10 @@ Display the description of each \fIpattern\fP in a manpage-like format .B \-s Display only a short usage synopsis for each \fIpattern\fP .PD -.RE +.PP The return status is 0 unless no command matches .IR pattern . +.RE .TP \fBhistory [\fIn\fP] .PD 0 @@ -7768,14 +7906,14 @@ meanings: List process IDs in addition to the normal information. .TP -.B \-p -List only the process ID of the job's process group -leader. -.TP .B \-n Display information only about jobs that have changed status since the user was last notified of their status. .TP +.B \-p +List only the process ID of the job's process group +leader. +.TP .B \-r Restrict output to running jobs. .TP @@ -7949,7 +8087,8 @@ is specified without .BR \-c , the default quantum is 5000. When \fIcallback\fP is evaluated, it is supplied the index of the next -array element to be assigned as an additional argument. +array element to be assigned and the line to be assigned to that element +as additional arguments. \fIcallback\fP is evaluated after the line is read but before the array element is assigned. .PP @@ -8013,27 +8152,49 @@ directory change fails. \fBprintf\fP [\fB\-v\fP \fIvar\fP] \fIformat\fP [\fIarguments\fP] Write the formatted \fIarguments\fP to the standard output under the control of the \fIformat\fP. +The \fB\-v\fP option causes the output to be assigned to the variable +\fIvar\fP rather than being printed to the standard output. +.sp 1 The \fIformat\fP is a character string which contains three types of objects: plain characters, which are simply copied to standard output, character escape sequences, which are converted and copied to the standard output, and format specifications, each of which causes printing of the next successive \fIargument\fP. -In addition to the standard \fIprintf\fP(1) formats, \fB%b\fP causes +In addition to the standard \fIprintf\fP(1) format specifications, +\fBprintf\fP interprets the following extensions: +.RS +.PD 0 +.TP +.B %b +causes \fBprintf\fP to expand backslash escape sequences in the corresponding \fIargument\fP (except that \fB\ec\fP terminates output, backslashes in \fB\e\(aq\fP, \fB\e"\fP, and \fB\e?\fP are not removed, and octal escapes -beginning with \fB\e0\fP may contain up to four digits), -and \fB%q\fP causes \fBprintf\fP to output the corresponding +beginning with \fB\e0\fP may contain up to four digits). +.TP +.B %q +causes \fBprintf\fP to output the corresponding \fIargument\fP in a format that can be reused as shell input. -.sp 1 -The \fB\-v\fP option causes the output to be assigned to the variable -\fIvar\fP rather than being printed to the standard output. -.sp 1 +.TP +.B %(\fIdatefmt\fP)T +causes \fBprintf\fP to output the date-time string resulting from using +\fIdatefmt\fP as a format string for \fIstrftime\fP(3). The corresponding +\fIargument\fP is an integer representing the number of seconds since the +epoch. Two special argument values may be used: -1 represents the current +time, and -2 represents the time the shell was invoked. +.PD +.PP +Arguments to non-string format specifiers are treated as C constants, +except that a leading plus or minus sign is allowed, and if the leading +character is a single or double quote, the value is the ASCII value of +the following character. +.PP The \fIformat\fP is reused as necessary to consume all of the \fIarguments\fP. If the \fIformat\fP requires more \fIarguments\fP than are supplied, the extra format specifications behave as if a zero value or null string, as -appropriate, had been supplied. The return value is zero on success, -non-zero on failure. +appropriate, had been supplied. +The return value is zero on success, non-zero on failure. +.RE .TP \fBpushd\fP [\fB\-n\fP] [+\fIn\fP] [\-\fIn\fP] .PD 0 @@ -8211,7 +8372,7 @@ times out (in which case the return code is greater than 128), or an invalid file descriptor is supplied as the argument to \fB\-u\fP. .RE .TP -\fBreadonly\fP [\fB\-aApf\fP] [\fIname\fP[=\fIword\fP] ...] +\fBreadonly\fP [\fB\-aAf\fP] [\fB\-p\fP] [\fIname\fP[=\fIword\fP] ...] .PD The given \fInames\fP are marked readonly; the values of these @@ -8227,11 +8388,16 @@ The option restricts the variables to indexed arrays; the .B \-A option restricts the variables to associative arrays. +If both options are supplied, +.B \-A +takes precedence. If no .I name arguments are given, or if the .B \-p option is supplied, a list of all readonly names is printed. +The other options may be used to restrict the output to a subset of +the set of readonly names. The .B \-p option causes output to be displayed in a format that @@ -8266,10 +8432,10 @@ the return status is false. Any command associated with the \fBRETURN\fP trap is executed before execution resumes after the function or script. .TP -\fBset\fP [\fB\-\-abefhkmnptuvxBCEHPT\fP] [\fB\-o\fP \fIoption\fP] [\fIarg\fP ...] +\fBset\fP [\fB\-\-abefhkmnptuvxBCEHPT\fP] [\fB\-o\fP \fIoption\-name\fP] [\fIarg\fP ...] .PD 0 .TP -\fBset\fP [\fB+abefhkmnptuvxBCEHPT\fP] [\fB+o\fP \fIoption\fP] [\fIarg\fP ...] +\fBset\fP [\fB+abefhkmnptuvxBCEHPT\fP] [\fB+o\fP \fIoption\-name\fP] [\fIarg\fP ...] .PD Without options, the name and value of each shell variable are displayed in a format that can be reused as input @@ -8318,8 +8484,8 @@ or reserved words, part of any command executed in a .B && or -.B \(bv\(bv -list except the command following the final \fB&&\fP or \fB\(bv\(bv\fP, +.B || +list except the command following the final \fB&&\fP or \fB||\fP, any command in a pipeline but the last, or if the command's return value is being inverted with @@ -8751,21 +8917,37 @@ easy re-editing of multi-line commands. If set, .B bash changes its behavior to that of version 3.1 with respect to quoted -arguments to the conditional command's =~ operator. +arguments to the \fB[[\fP conditional command's \fB=~\fP operator. .TP 8 .B compat32 If set, .B bash changes its behavior to that of version 3.2 with respect to locale-specific -string comparison when using the conditional command's < and > operators. +string comparison when using the \fB[[\fP +conditional command's \fB<\fP and \fB>\fP operators. +Bash versions prior to bash-4.1 use ASCII collation and +.IR strcmp (3); +bash-4.1 and later +use the current locale's collation sequence and +.IR strcoll (3). .TP 8 .B compat40 If set, .B bash changes its behavior to that of version 4.0 with respect to locale-specific -string comparison when using the conditional command's < and > operators +string comparison when using the \fB[[\fP +conditional command's \fB<\fP and \fB>\fP operators (see previous item) and the effect of interrupting a command list. .TP 8 +.B compat41 +If set, +.BR bash , +when in posix mode, treats a single quote in a double-quoted +parameter expansion as a special character. The single quotes must match +(an even number) and the characters between the single quotes are considered +quoted. This is the behavior of posix mode through version 4.1. +The default bash behavior remains as in previous versions. +.TP 8 .B dirspell If set, .B bash @@ -8827,7 +9009,7 @@ subshells invoked with \fB(\fP \fIcommand\fP \fB)\fP inherit the .B 6. Error tracing is enabled: command substitution, shell functions, and subshells invoked with \fB(\fP \fIcommand\fP \fB)\fP inherit the -\fBERROR\fP trap. +\fBERR\fP trap. .RE .TP 8 .B extglob @@ -8860,7 +9042,7 @@ This option is enabled by default. .TP 8 .B globstar If set, the pattern \fB**\fP used in a pathname expansion context will -match a files and zero or more directories and subdirectories. +match all files and zero or more directories and subdirectories. If the pattern is followed by a \fB/\fP, only directories and subdirectories match. .TP 8 @@ -8915,6 +9097,10 @@ line to be ignored in an interactive shell (see .B COMMENTS above). This option is enabled by default. .TP 8 +.B lastpipe +If set, and job control is not active, the shell runs the last command of +a pipeline not executed in the background in the current shell environment. +.TP 8 .B lithist If set, and the .B cmdhist @@ -9007,6 +9193,7 @@ This option is enabled by default. If set, the \fBecho\fP builtin expands backslash-escape sequences by default. .RE +.PD .TP \fBsuspend\fP [\fB\-f\fP] Suspend the execution of this shell until it receives a @@ -9037,6 +9224,7 @@ an argument of \fB\-\-\fP as signifying the end of options. Expressions may be combined using the following operators, listed in decreasing order of precedence. The evaluation depends on the number of arguments; see below. +Operator precedence is used when there are five or more arguments. .RS .PD 0 .TP @@ -9088,6 +9276,7 @@ If the first argument is not a valid unary conditional operator, the expression is false. .TP 3 arguments +The following conditions are applied in the order listed. If the second argument is one of the binary conditional operators listed above under .SM @@ -9112,6 +9301,11 @@ precedence using the rules listed above. 5 or more arguments The expression is parsed and evaluated according to precedence using the rules listed above. +.if t .sp 0.5 +.if n .sp 1 +.LP +When used with \fBtest\fP or \fB[\fP, the \fB<\fP and \fB>\fP operators +sort lexicographically using ASCII ordering. .RE .PD .TP @@ -9157,7 +9351,10 @@ Each .I sigspec is either a signal name defined in <\fIsignal.h\fP>, or a signal number. -Signal names are case insensitive and the SIG prefix is optional. +Signal names are case insensitive and the +.SM +.B SIG +prefix is optional. .if t .sp 0.5 .if n .sp 1 If a @@ -9190,8 +9387,8 @@ is .BR RETURN , the command .I arg -is executed each time a shell function or a script executed with the -\fB.\fP or \fBsource\fP builtins finishes executing. +is executed each time a shell function or a script executed with +the \fB.\fP or \fBsource\fP builtins finishes executing. .if t .sp 0.5 .if n .sp 1 If a @@ -9217,7 +9414,7 @@ part of the test in an statement, part of a command executed in a .B && or -.B \(bv\(bv +.B || list, or if the command's return value is being inverted via .BR ! . @@ -9387,7 +9584,8 @@ The maximum amount of cpu time in seconds The maximum number of processes available to a single user .TP .B \-v -The maximum amount of virtual memory available to the shell +The maximum amount of virtual memory available to the shell and, on +some systems, to its children .TP .B \-x The maximum number of file locks @@ -9549,7 +9747,7 @@ as an argument to the .B . builtin command .IP \(bu -Specifying a filename containing a slash as an argument to the +specifying a filename containing a slash as an argument to the .B \-p option to the .B hash @@ -9576,7 +9774,7 @@ options to the .B enable builtin command .IP \(bu -Using the \fBenable\fP builtin command to enable disabled shell builtins +using the \fBenable\fP builtin command to enable disabled shell builtins .IP \(bu specifying the .B \-p @@ -9655,7 +9853,7 @@ make sure that it really is a bug, and that it appears in the latest version of .BR bash . The latest version is always available from -\fIftp://ftp.gnu.org/pub/bash/\fP. +\fIftp://ftp.gnu.org/pub/gnu/bash/\fP. .PP Once you have determined that a bug actually exists, use the .I bashbug @@ -9687,7 +9885,7 @@ it provides for filing a bug report. .PP Comments and bug reports concerning this manual page should be directed to -.IR chet@po.cwru.edu . +.IR chet.ramey@case.edu . .SH BUGS .PP It's too big and too slow. diff --git a/doc/bash.html b/doc/bash.html index 2aa28257..d1b64895 100644 --- a/doc/bash.html +++ b/doc/bash.html @@ -3,7 +3,7 @@ -
BASH(1)2009 December 29BASH(1) +BASH(1)2010 December 28BASH(1)

Index @@ -42,7 +42,7 @@ bash - GNU Bourne-Again SHell

COPYRIGHT

-Bash is Copyright © 1989-2009 by the Free Software Foundation, Inc. +Bash is Copyright © 1989-2010 by the Free Software Foundation, Inc.  

DESCRIPTION

@@ -67,8 +67,10 @@ can be configured to be POSIX-conformant by default.  

OPTIONS

-In addition to the single-character shell options documented in the -description of the set builtin command, bash +All of the single-character shell options documented in the +description of the set builtin command can be used as options +when the shell is invoked. +In addition, bash interprets the following options when it is invoked:

@@ -195,11 +197,6 @@ Turns on extended debugging mode (see the description of the option to the shopt -builtin below) -and shell function tracing (see the description of the --o functrace option to the -set - builtin below).

--dump-po-strings @@ -533,7 +530,7 @@ No other startup files are read. Bash attempts to determine when it is being run with its standard input -connected to a a network connection, as if by the remote shell +connected to a network connection, as when executed by the remote shell daemon, usually rshd, or the secure shell daemon sshd. If bash @@ -739,6 +736,8 @@ reserved word precedes a pipeline, the elapsed as well as user and system time consumed by its execution are reported when the pipeline terminates. The -p option changes the output format to that specified by POSIX. +When the shell is in posix mode, it does not recognize +time as a reserved word if the next token begins with a `-'. The TIMEFORMAT @@ -754,6 +753,17 @@ under below.

+When the shell is in posix mode, time +may be followed by a newline. In this case, the shell displays the +total user and system time consumed by the shell and its children. +The +TIMEFORMAT + + +variable may be used to specify the format of +the time information. +

+ Each command in a pipeline is executed as a separate process (i.e., in a subshell).   @@ -905,7 +915,7 @@ as primaries.

-When used with [[, The < and > operators sort +When used with [[, the < and > operators sort lexicographically using the current locale.

@@ -988,9 +998,7 @@ and expression2 are true. -

expression1 || expression2 -
- +
expression1 || expression2
True if either expression1 @@ -1002,9 +1010,7 @@ is true.

-The && and -|| - +The && and || operators do not evaluate expression2 if the value of expression1 is sufficient to determine the return value of the entire conditional expression. @@ -1120,26 +1126,23 @@ the corresponding then list is executed and the command completes. Otherwise, the else list is executed, if present. The exit status is the exit status of the last command executed, or zero if no condition tested true. -

while list; do list; done
+
while list-1; do list-2; done
-
until list; do list; done
+
until list-1; do list-2; done
-The while command continuously executes the do -list as long as the last command in list returns +The while command continuously executes the list +list-2 as long as the last command in the list list-1 returns an exit status of zero. The until command is identical to the while command, except that the test is negated; -the -do - -list +list-2 is executed as long as the last command in -list +list-1 returns a non-zero exit status. The exit status of the while and until commands is the exit status -of the last do list command executed, or zero if +of the last command executed in list-2, or zero if none was executed.   @@ -1190,7 +1193,7 @@ command (see below). The file descriptors can be utilized as arguments to shell commands and redirections using standard word expansions. -The process id of the shell spawned to execute the coprocess is +The process ID of the shell spawned to execute the coprocess is available as the value of the variable NAME_PID. The wait builtin command may be used to wait for the coprocess to terminate. @@ -1206,7 +1209,10 @@ A shell function is an object that is called like a simple command and executes a compound command with a new set of positional parameters. Shell functions are declared as follows:
-
[ function ] name () compound-command [redirection]
+
name () compound-command [redirection]
+ +
function name [()] compound-command [redirection]
+ This defines a function named name. The reserved word function is optional. If the function reserved word is supplied, the parentheses are optional. @@ -1426,6 +1432,16 @@ the eight-bit character whose value is the octal value nnn
the eight-bit character whose value is the hexadecimal value HH (one or two hex digits) +
\uHHHH + +
+the Unicode (ISO/IEC 10646) character whose value is the hexadecimal value +HHHH (one to four hex digits) +
\UHHHHHHHH + +
+the Unicode (ISO/IEC 10646) character whose value is the hexadecimal value +HHHHHHHH (one to eight hex digits)
\cx
@@ -1549,7 +1565,7 @@ builtin commands. In the context where an assignment statement is assigning a value to a shell variable or array index, the += operator can be used to append to or add to the variable's previous value. -When += is applied to a variable for which the integer attribute has been +When += is applied to a variable for which the integer attribute has been set, value is evaluated as an arithmetic expression and added to the variable's current value, which is also evaluated. When += is applied to an array variable using compound assignment (see @@ -1761,14 +1777,14 @@ This variable is read-only.
BASHPID
-Expands to the process id of the current bash process. +Expands to the process ID of the current bash process. This differs from $$ under certain circumstances, such as subshells that do not require bash to be re-initialized.
BASH_ALIASES
An associative array variable whose members correspond to the internal -list of aliases as maintained by the alias builtin +list of aliases as maintained by the alias builtin. Elements added to this array appear in the alias list; unsetting array elements cause aliases to be removed from the alias list.
BASH_ARGC @@ -1838,15 +1854,16 @@ The command argument to the -c invocation option.
An array variable whose members are the line numbers in source files -corresponding to each member of -FUNCNAME. +where each corresponding member of +FUNCNAME +was invoked. ${BASH_LINENO[$i]} is the line number in the source -file where ${FUNCNAME[$i]} was called +file (${BASH_SOURCE[$i+1]}) where +${FUNCNAME[$i]} was called (or ${BASH_LINENO[$i-1]} if referenced within another shell function). -The corresponding source file name is ${BASH_SOURCE[$i]}. Use LINENO @@ -1865,12 +1882,16 @@ This variable is read-only.
BASH_SOURCE
-An array variable whose members are the source filenames corresponding -to the elements in the +An array variable whose members are the source filenames +where the corresponding shell function names in the FUNCNAME -array variable. +array variable are defined. +The shell function +${FUNCNAME[$i]} is defined in the file +${BASH_SOURCE[$i]} and called from +${BASH_SOURCE[$i+1]}.
BASH_SUBSHELL
@@ -1995,6 +2016,12 @@ as described above. This variable is available only in shell functions invoked by the programmable completion facilities (see Programmable Completion below). +
COPROC + +
+An array variable (see Arrays below) created to hold the file descriptors +for output from and input to an unnamed coprocess (see Coprocesses +above).
DIRSTACK
@@ -2033,7 +2060,7 @@ An array variable containing the names of all shell functions currently in the execution call stack. The element with index 0 is the name of any currently-executing shell function. -The bottom-most element is +The bottom-most element (the one with the highest index) is "main". This variable exists only when a shell function is executing. @@ -2048,6 +2075,17 @@ If is unset, it loses its special properties, even if it is subsequently reset. +

+ + +This variable can be used with BASH_LINENO and BASH_SOURCE. +Each element of FUNCNAME has corresponding elements in +BASH_LINENO and BASH_SOURCE to describe the call stack. +For instance, ${FUNCNAME[$i]} was called from the file +${BASH_SOURCE[$i+1]} at line number +${BASH_LINENO[$i]}. +The caller builtin displays the current call stack using this +information.

GROUPS
@@ -2111,6 +2149,11 @@ type on which is executing, in the standard GNU cpu-company-system format. The default is system-dependent. +
MAPFILE + +
+An array variable (see Arrays below) created to hold the text +read by the mapfile builtin when no variable name is supplied.
OLDPWD
@@ -2185,6 +2228,34 @@ If is unset, it loses its special properties, even if it is subsequently reset. +
READLINE_LINE + +
+The contents of the +readline + +line buffer, for use with +bind -x + +(see +SHELL BUILTIN COMMANDS + + +below). +
READLINE_POINT + +
+The position of the insertion point in the +readline + +line buffer, for use with +bind -x + +(see +SHELL BUILTIN COMMANDS + + +below).
REPLY
@@ -2281,21 +2352,6 @@ expansion before being interpreted as a file name. is not used to search for the resultant file name. -
CDPATH - -
-The search path for the -cd - -command. -This is a colon-separated list of directories in which the shell looks -for destination directories specified by the -cd - -command. -A sample value is -".:~:/usr". -
BASH_XTRACEFD
@@ -2322,11 +2378,29 @@ Note that setting to 2 (the standard error file descriptor) and then unsetting it will result in the standard error being closed. +
CDPATH + +
+The search path for the +cd + +command. +This is a colon-separated list of directories in which the shell looks +for destination directories specified by the +cd + +command. +A sample value is +".:~:/usr". +
COLUMNS
-Used by the select builtin command to determine the terminal width -when printing selection lists. Automatically set upon receipt of a SIGWINCH. +Used by the select compound command to determine the terminal width +when printing selection lists. Automatically set upon receipt of a +SIGWINCH. + +
COMPREPLY
@@ -2340,8 +2414,16 @@ If bash finds this variable in the environment when the shell starts with value t, -it assumes that the shell is running in an emacs shell buffer and disables +it assumes that the shell is running in an Emacs shell buffer and disables line editing. +
ENV + +
+Similar to +BASH_ENV; + + +used when the shell is invoked in POSIX mode.
FCEDIT
@@ -2366,6 +2448,12 @@ is excluded from the list of matched filenames. A sample value is ".o:~". +
FUNCNEST + +
+If set to a numeric value greater than 0, defines a maximum function +nesting level. Function invocations that exceed this nesting level +will cause the current command to abort.
GLOBIGNORE
@@ -2601,7 +2689,7 @@ This variable determines the locale category used for number formatting.
LINES
-Used by the select builtin command to determine the column length +Used by the select compound command to determine the column length for printing selection lists. Automatically set upon receipt of a SIGWINCH. @@ -2609,14 +2697,15 @@ for printing selection lists. Automatically set upon receipt of a
MAIL
-If this parameter is set to a file name and the +If this parameter is set to a file or directory name and the MAILPATH variable is not set, bash -informs the user of the arrival of mail in the specified file. +informs the user of the arrival of mail in the specified file or +Maildir-format directory.
MAILCHECK
@@ -2852,8 +2941,8 @@ not arrive.
TMPDIR
-If set, Bash uses its value as the name of a directory in which -Bash creates temporary files for the shell's use. +If set, bash uses its value as the name of a directory in which +bash creates temporary files for the shell's use.
auto_resume
@@ -2933,9 +3022,14 @@ An indexed array is created automatically if any variable is assigned to using the syntax name[subscript]=value. The subscript -is treated as an arithmetic expression that must evaluate to a number -greater than or equal to zero. To explicitly declare an indexed array, -use +is treated as an arithmetic expression that must evaluate to a number. +If +subscript + +evaluates to a number less than zero, it is used as +an offset from one greater than the array's maximum index (so a subcript +of -1 refers to the last element of the array). +To explicitly declare an indexed array, use declare -a name (see @@ -3338,7 +3432,7 @@ a level of variable indirection is introduced. expanded and that value is used in the rest of the substitution, rather than the value of parameter itself. This is known as indirect expansion. -The exceptions to this are the expansions of ${!prefix*} and +The exceptions to this are the expansions of ${!\fPfIprefix*} and ${!name[@]} described below. The exclamation point must immediately follow the left brace in order to introduce indirection. @@ -3407,7 +3501,7 @@ is substituted.
${parameter:offset:length}
-Substring Expansion. +Substring Expansion. Expands to up to length characters of parameter starting at the character specified by offset. If length is omitted, expands to the substring of @@ -3417,9 +3511,13 @@ If length is omitted, expands to the substring of below). -length must evaluate to a number greater than or equal to zero. If offset evaluates to a number less than zero, the value is used as an offset from the end of the value of parameter. +If length evaluates to a number less than zero, and parameter +is not @ and not an indexed or associative array, it is interpreted +as an offset from the end of the value of parameter rather than +a number of characters, and the expansion is the characters between the +two offsets. If parameter is @, the result is length positional parameters beginning at offset. If parameter is an indexed array name subscripted by @ or *, @@ -3439,7 +3537,7 @@ prefixed to the list.
${!prefix@}
-Names matching prefix. +Names matching prefix. Expands to the names of variables whose names begin with prefix, separated by the first character of the IFS @@ -3452,7 +3550,7 @@ variable name expands to a separate word.
${!name[*]}
-List of array keys. +List of array keys. If name is an array variable, expands to the list of array indices (keys) assigned in name. If name is not an array, expands to 0 if name is set and null @@ -3460,7 +3558,7 @@ otherwise. When @ is used and the expansion appears within double quotes, each key expands to a separate word.
${#parameter}
-Parameter length. +Parameter length. The length in characters of the value of parameter is substituted. If parameter @@ -3486,7 +3584,7 @@ the value substituted is the number of elements in the array.
${parameter##word}
-Remove matching prefix pattern. +Remove matching prefix pattern. The word @@ -3526,7 +3624,7 @@ array in turn, and the expansion is the resultant list.
${parameter%%word}
-Remove matching suffix pattern. +Remove matching suffix pattern. The word is expanded to produce a pattern just as in pathname expansion. If the pattern matches a trailing portion of the expanded value of @@ -3560,7 +3658,7 @@ or the pattern removal operation is applied to each member of the array in turn, and the expansion is the resultant list.
${parameter/pattern/string}
-Pattern substitution. +Pattern substitution. The pattern is expanded to produce a pattern just as in pathname expansion. Parameter is expanded and the longest match of pattern @@ -3601,7 +3699,7 @@ array in turn, and the expansion is the resultant list.
${parameter,pattern}
${parameter,,pattern}
-Case modification. +Case modification. This expansion modifies the case of alphabetic characters in parameter. The pattern is expanded to produce a pattern just as in pathname expansion. @@ -3610,7 +3708,7 @@ to uppercase; the , operator converts matching uppercase letters to lowercase. The ^^ and ,, expansions convert each matched character in the expanded value; the ^ and , expansions match and convert only -the first character in the expanded value.. +the first character in the expanded value. If pattern is omitted, it is treated like a ?, which matches every character. If @@ -4003,6 +4101,7 @@ The special pattern characters have the following meanings:

+

* @@ -4109,6 +4208,8 @@ the syntax [.symbol.] matches the collating symbol symbol.
+
+

@@ -4781,7 +4882,7 @@ during its execution. The special parameter # -is updated to reflect the change. Special parameter 0 +is updated to reflect the change. Special parameter 0 is unchanged. The first element of the FUNCNAME @@ -4831,6 +4932,12 @@ builtin command. Ordinarily, variables and their values are shared between the function and its caller.

+The FUNCNEST variable, if set to a numeric value greater +than 0, defines a maximum function nesting level. Function +invocations that exceed the limit cause the entire command to +abort. +

+ If the builtin command return @@ -4887,8 +4994,10 @@ shell's children. Care should be taken in cases where this may cause a problem.

-Functions may be recursive. No limit is imposed on the number -of recursive calls. +Functions may be recursive. +The FUNCNEST variable may be used to limit the depth of the +function call stack and restrict the number of function invocations. +By default, no limit is imposed on the number of recursive calls.  

ARITHMETIC EVALUATION

@@ -4992,13 +5101,13 @@ The value of a variable is evaluated as an arithmetic expression when it is referenced, or when a variable which has been given the integer attribute using declare -i is assigned a value. A null value evaluates to 0. -A shell variable need not have its integer attribute +A shell variable need not have its integer attribute turned on to be used in an expression.

Constants with a leading 0 are interpreted as octal numbers. A leading 0x or 0X denotes hexadecimal. -Otherwise, numbers take the form [base#]n, where base +Otherwise, numbers take the form [base#]n, where the optional base is a decimal number between 2 and 64 representing the arithmetic base, and n is a number in that base. If base# is omitted, then base 10 is used. @@ -5031,8 +5140,9 @@ links and operate on the target of the link, rather than the link itself.

-When used with [[, The < and > operators sort +When used with [[, the < and > operators sort lexicographically using the current locale. +The test command sorts using ASCII ordering.

@@ -5103,10 +5213,6 @@ True if file exists and is writable.
True if file exists and is executable. -
-O file - -
-True if file exists and is owned by the effective user id.
-G file
@@ -5115,27 +5221,31 @@ True if file exists and is owned by the effective group id.
True if file exists and is a symbolic link. -
-S file - -
-True if file exists and is a socket.
-N file
True if file exists and has been modified since it was last read. +
-O file + +
+True if file exists and is owned by the effective user id. +
-S file + +
+True if file exists and is a socket. +
file1 -ef file2
+True if file1 and file2 refer to the same device and +inode numbers.
file1 -nt file2
True if file1 is newer (according to modification date) than file2, or if file1 exists and file2 does not.
file1 -ot file2
True if file1 is older than file2, or if file2 exists and file1 does not. -
file1 -ef file2
-True if file1 and file2 refer to the same device and -inode numbers.
-o optname
-True if shell option +True if the shell option optname is enabled. @@ -5146,6 +5256,13 @@ option to the set builtin below. +
-v varname + +
+True if the shell variable +varname + +is set (has been assigned a value).
-z string
@@ -5411,8 +5528,8 @@ cannot affect the shell's execution environment.

Subshells spawned to execute command substitutions inherit the value of -the -e option from the parent shell. When not in posix mode, -Bash clears the -e option in such subshells. +the -e option from the parent shell. When not in posix mode, +bash clears the -e option in such subshells.

If a command is followed by a & and job control is not active, the @@ -6077,7 +6194,7 @@ shell, unless the option is given at shell invocation. Line editing is also used when using the -e option to the read builtin. -By default, the line editing commands are similar to those of emacs. +By default, the line editing commands are similar to those of Emacs. A vi-style line editing interface is also available. Line editing can be enabled at any time using the -o emacs @@ -6108,7 +6225,7 @@ builtin.

-In this section, the emacs-style notation is used to denote +In this section, the Emacs-style notation is used to denote keystrokes. Control keys are denoted by C-key, e.g., C-n means Control-N. Similarly, meta @@ -6536,7 +6653,7 @@ mapped to self-insert.

Controls whether readline begins with a set of key bindings similar -to emacs or vi. +to Emacs or vi. editing-mode can be set to either @@ -6566,12 +6683,12 @@ the meta key is used to send eight-bit characters.
expand-tilde (Off)
-If set to on, tilde expansion is performed when readline +If set to On, tilde expansion is performed when readline attempts word completion.
history-preserve-point (Off)
-If set to on, the history code attempts to place point at the +If set to On, the history code attempts to place point at the same location on each history line retrieved with previous-history or next-history.
history-size (0) @@ -6638,8 +6755,15 @@ have a slash appended (subject to the value of
This variable, when set to On, causes readline to match files whose names begin with a `.' (hidden files) when performing filename -completion, unless the leading `.' is +completion. +If set to Off, the leading `.' must be supplied by the user in the filename to be completed. +
menu-complete-display-prefix (Off) + +
+If set to On, menu completion displays the common prefix of the +list of possible completions (which may be empty) before cycling through +the list.
output-meta (Off)
@@ -6659,7 +6783,7 @@ sorted horizontally in alphabetical order, rather than down the screen.
revert-all-at-newline (Off)
-If set to on, readline will undo all changes to history lines +If set to On, readline will undo all changes to history lines before returning when accept-line is executed. By default, history lines may be modified and retain individual undo lists across calls to readline. @@ -6668,7 +6792,7 @@ calls to readline.
This alters the default behavior of the completion functions. If set to -on, +On, words which have more than one possible completion cause the matches to be listed immediately instead of ringing the bell. @@ -6678,7 +6802,7 @@ matches to be listed immediately instead of ringing the bell. This alters the default behavior of the completion functions in a fashion similar to show-all-if-ambiguous. If set to -on, +On, words which have more than one possible completion without any possible partial completion (the possible completions don't share @@ -6752,7 +6876,7 @@ library sets the application name, and an initialization file can test for a particular value. This could be used to bind key sequences to functions useful for a specific program. For instance, the following command adds a -key sequence that quotes the current or previous word in Bash: +key sequence that quotes the current or previous word in bash:

@@ -6990,10 +7114,14 @@ as if the "!n" history expansion had been specified.
 
 
Insert the last argument to the previous command (the last word of -the previous history entry). With an argument, -behave exactly like yank-nth-arg. +the previous history entry). +With a numeric argument, behave exactly like yank-nth-arg. Successive calls to yank-last-arg move back through the history -list, inserting the last argument of each line in turn. +list, inserting the last word (or the word specified by the argument to +the first call) of each line in turn. +Any numeric argument supplied to these successive calls determines +the direction to move through the history. A negative argument switches +the direction through the history (back or forward). The history expansion facilities are used to extract the last argument, as if the "!$" history expansion had been specified.
shell-expand-line (M-C-e) @@ -7315,7 +7443,7 @@ of matches; a negative argument may be used to move backward through the list. This command is intended to be bound to TAB, but is unbound by default. -
menu-complete-rd +
menu-complete-backward
Identical to menu-complete, but moves backward through the list @@ -7497,7 +7625,7 @@ character. A negative count searches for previous occurrences.
A character is read and point is moved to the previous occurrence of that character. A negative count searches for subsequent occurrences. -
skip-csi-sequence () +
skip-csi-sequence
Read enough characters to consume a multi-key sequence such as those @@ -7600,7 +7728,7 @@ If the command word is a full pathname, a compspec for the full pathname is searched for first. If no compspec is found for the full pathname, an attempt is made to find a compspec for the portion following the final slash. -If those searches to not result in a compspec, any compspec defined with +If those searches do not result in a compspec, any compspec defined with the -D option to complete is used as the default.

@@ -7772,7 +7900,7 @@ exit status of 124. If a shell function returns 124, and changes the compspec associated with the command on which completion is being attempted (supplied as the first argument when the function is executed), programmable completion restarts from the beginning, with an -attempt to find a compspec for that command. This allows a set of +attempt to find a new compspec for that command. This allows a set of completions to be built dynamically as completion is attempted, rather than being loaded all at once.

@@ -8079,6 +8207,8 @@ writing the history file. An event designator is a reference to a command line entry in the history list. +Unless the reference is absolute, events are relative to the current +position in the history list.

@@ -8101,7 +8231,7 @@ Refer to command line

!-n
-Refer to the current command line minus +Refer to the current command minus n.
!! @@ -8111,13 +8241,15 @@ Refer to the previous command. This is a synonym for `!-1'.
!string
-Refer to the most recent command starting with +Refer to the most recent command preceding the current position in the +history list starting with string.
!?string[?]
-Refer to the most recent command containing +Refer to the most recent command preceding the current postition in the +history list containing string. The trailing ? may be omitted if @@ -8127,7 +8259,7 @@ is followed immediately by a newline.
^string1^string2^
-Quick substitution. Repeat the last command, replacing +Quick substitution. Repeat the previous command, replacing string1 with @@ -8596,7 +8728,7 @@ The return status is false if is not a shell builtin command.
caller [expr]
Returns the context of any active subroutine call (a shell function or -a script executed with the . or source builtins. +a script executed with the . or source builtins). Without expr, caller displays the line number and source filename of the current subroutine call. If a non-negative integer is supplied as expr, caller @@ -8607,7 +8739,7 @@ current frame is frame 0. The return value is 0 unless the shell is not executing a subroutine call or expr does not correspond to a valid position in the call stack. -
cd [-L|-P] [dir]
+
cd [-L|[-P [-e]]] [dir]
Change the current directory to dir. The variable HOME @@ -8652,7 +8784,17 @@ option to the builtin command); the -L -option forces symbolic links to be followed. An argument of +option forces symbolic links to be followed. +If the +-e + +option is supplied with +-P, + +and the current working directory cannot be successfully determined +after a successful directory change, cd will return an unsuccessful +status. +An argument of - is equivalent to @@ -8931,17 +9073,6 @@ User names. May also be specified as -u. Names of all shell variables. May also be specified as -v.
-
-G globpat
-The pathname expansion pattern globpat is expanded to generate -the possible completions. -
-W wordlist
-The wordlist is split using the characters in the -IFS - - -special variable as delimiters, and each resultant word is expanded. -The possible completions are the members of the resultant list which -match the word being completed.
-C command
command is executed in a subshell environment, and its output is used as the possible completions. @@ -8954,6 +9085,23 @@ of the array variable. +
-G globpat
+The pathname expansion pattern globpat is expanded to generate +the possible completions. +
-P prefix
+prefix is added at the beginning of each possible completion +after all other options have been applied. +
-S suffix
+suffix is appended to each possible completion +after all other options have been applied. +
-W wordlist
+The wordlist is split using the characters in the +IFS + + +special variable as delimiters, and each resultant word is expanded. +The possible completions are the members of the resultant list which +match the word being completed.
-X filterpat
filterpat is a pattern as used for pathname expansion. It is applied to the list of possible completions generated by the @@ -8961,12 +9109,6 @@ preceding options and arguments, and each completion matching filterpat is removed from the list. A leading ! in filterpat negates the pattern; in this case, any completion not matching filterpat is removed. -
-P prefix
-prefix is added at the beginning of each possible completion -after all other options have been applied. -
-S suffix
-suffix is appended to each possible completion -after all other options have been applied.

@@ -8981,7 +9123,7 @@ an error occurs adding a completion specification.

compopt [-o option] [-DE] [+o option] [name]
Modify completion options for each name according to the options, or for the -currently-execution completion if no names are supplied. +currently-executing completion if no names are supplied. If no options are given, display the completion options for each name or the current completion. The possible values of option are those valid for the complete @@ -8992,13 +9134,10 @@ on a command for which no completion has previously been defined. The -E option indicates that the remaining options should apply to ``empty'' command completion; that is, completion attempted on a blank line. -

- The return value is true unless an invalid option is supplied, an attempt is made to modify the options for a name for which no completion specification exists, or an output error occurs. -

continue [n]
Resume the next iteration of the enclosing for, @@ -9023,9 +9162,9 @@ must be >= 1. If is greater than the number of enclosing loops, the last enclosing loop (the ``top-level'' loop) is resumed. The return value is 0 unless n is not greater than or equal to 1. -
declare [-aAfFilrtux] [-p] [name[=value] ...]
+
declare [-aAfFgilrtux] [-p] [name[=value] ...]
-
typeset [-aAfFilrtux] [-p] [name[=value] ...]
+
typeset [-aAfFgilrtux] [-p] [name[=value] ...]
Declare variables and/or give them attributes. If no names are given then display the values of variables. @@ -9061,6 +9200,12 @@ are displayed as well. The option implies -f. +The +-g + +option forces variables to be created or modified at the global scope, +even when declare is executed in a shell function. +It is ignored in all other cases. The following options can be used to restrict output to variables with the specified attribute or to give variables attributes: @@ -9130,13 +9275,13 @@ turns off the attribute instead, with the exceptions that +a may not be used to destroy an array variable and +r will not remove the readonly attribute. -When used in a function, -makes each +When used in a function, makes each name local, as with the local -command. -If a variable name is followed by =value, the value of +command, +unless the -gP option is supplied, +If a variable name is followed by =value, the value of the variable is set to value. The return value is 0 unless an invalid option is encountered, an attempt is made to define a function using @@ -9153,7 +9298,7 @@ an attempt is made to turn off array status for an array variable, or an attempt is made to display a non-existent function with -f.
-
dirs [+n] [-n] [-cplv] +
dirs [+n] [-n] [-clpv]
Without options, displays the list of currently remembered directories. @@ -9292,6 +9437,9 @@ backspace suppress further output
\e +
+
\E +
an escape character
\f @@ -9328,6 +9476,16 @@ the eight-bit character whose value is the octal value nnn
the eight-bit character whose value is the hexadecimal value HH (one or two hex digits) +
\uHHHH + +
+the Unicode (ISO/IEC 10646) character whose value is the hexadecimal value +HHHH (one to four hex digits) +
\UHHHHHHHH + +
+the Unicode (ISO/IEC 10646) character whose value is the hexadecimal value +HHHHHHHH (one to eight hex digits) @@ -9680,7 +9838,7 @@ return value greater than zero. is set to the index of the first non-option argument, -and name is set to ?. +and name is set to ?.

getopts @@ -9763,14 +9921,15 @@ returns true if an option, specified or unspecified, is found. It returns false if the end of options is encountered or an error occurs.

hash [-lr] [-p filename] [-dt] [name]
-For each -name, +Each time hash is invoked, +the full pathname of the command +name -the full file name of the command is determined by searching +is determined by searching the directories in $PATH -and remembered. +and remembered. Any previously-remembered pathname is discarded. If the -p @@ -9954,16 +10113,16 @@ meanings:
List process IDs in addition to the normal information. -
-p - -
-List only the process ID of the job's process group -leader.
-n
Display information only about jobs that have changed status since the user was last notified of their status. +
-p + +
+List only the process ID of the job's process group +leader.
-r
@@ -10196,7 +10355,8 @@ is specified without the default quantum is 5000. When callback is evaluated, it is supplied the index of the next -array element to be assigned as an additional argument. +array element to be assigned and the line to be assigned to that element +as additional arguments. callback is evaluated after the line is read but before the array element is assigned.

@@ -10270,27 +10430,57 @@ directory change fails.

printf [-v var] format [arguments]
Write the formatted arguments to the standard output under the control of the format. +The -v option causes the output to be assigned to the variable +var rather than being printed to the standard output. +

The format is a character string which contains three types of objects: plain characters, which are simply copied to standard output, character escape sequences, which are converted and copied to the standard output, and format specifications, each of which causes printing of the next successive argument. -In addition to the standard printf(1) formats, %b causes +In addition to the standard printf(1) format specifications, +printf interprets the following extensions: +

+ +
+
%b + +
+causes printf to expand backslash escape sequences in the corresponding argument (except that \c terminates output, backslashes in \aq, \", and \? are not removed, and octal escapes -beginning with \0 may contain up to four digits), -and %q causes printf to output the corresponding +beginning with \0 may contain up to four digits). +
%q + +
+causes printf to output the corresponding argument in a format that can be reused as shell input. +
%(datefmt)T + +
+causes printf to output the date-time string resulting from using +datefmt as a format string for strftime(3). The corresponding +argument is an integer representing the number of seconds since the +epoch. Two special argument values may be used: -1 represents the current +time, and -2 represents the time the shell was invoked. + +

-The -v option causes the output to be assigned to the variable -var rather than being printed to the standard output. + +Arguments to non-string format specifiers are treated as C constants, +except that a leading plus or minus sign is allowed, and if the leading +character is a single or double quote, the value is the ASCII value of +the following character.

+ The format is reused as necessary to consume all of the arguments. If the format requires more arguments than are supplied, the extra format specifications behave as if a zero value or null string, as -appropriate, had been supplied. The return value is zero on success, -non-zero on failure. +appropriate, had been supplied. +The return value is zero on success, non-zero on failure. +

+
pushd [-n] [+n] [-n]
pushd [-n] [dir]
@@ -10572,9 +10762,9 @@ function and not during execution of a script by ., the return status is false. Any command associated with the RETURN trap is executed before execution resumes after the function or script. -
set [--abefhkmnptuvxBCEHPT] [-o option] [arg ...]
+
set [--abefhkmnptuvxBCEHPT] [-o option-name] [arg ...]
-
set [+abefhkmnptuvxBCEHPT] [+o option] [arg ...]
+
set [+abefhkmnptuvxBCEHPT] [+o option-name] [arg ...]
Without options, the name and value of each shell variable are displayed in a format that can be reused as input @@ -11212,7 +11402,7 @@ If set, bash changes its behavior to that of version 3.1 with respect to quoted -arguments to the conditional command's =~ operator. +arguments to the [[ conditional command's =~ operator.
compat32
@@ -11220,7 +11410,15 @@ If set, bash changes its behavior to that of version 3.2 with respect to locale-specific -string comparison when using the conditional command's < and > operators. +string comparison when using the [[ +conditional command's < and > operators. +Bash versions prior to bash-4.1 use ASCII collation and +strcmp(3); + +bash-4.1 and later +use the current locale's collation sequence and +strcoll(3). +
compat40
@@ -11228,8 +11426,21 @@ If set, bash changes its behavior to that of version 4.0 with respect to locale-specific -string comparison when using the conditional command's < and > operators +string comparison when using the [[ +conditional command's < and > operators (see previous item) and the effect of interrupting a command list. +
compat41 + +
+@item compat41 +If set, +bash, + +when in posix mode, treats a single quote in a double-quoted +parameter expansion as a special character. The single quotes must match +(an even number) and the characters between the single quotes are considered +quoted. This is the behavior of posix mode through version 4.1. +The default bash behavior remains as in previous versions.
dirspell
@@ -11311,7 +11522,7 @@ subshells invoked with ( command ) inherit the
Error tracing is enabled: command substitution, shell functions, and subshells invoked with ( command ) inherit the -ERROR trap. +ERR trap.
extglob @@ -11421,6 +11632,11 @@ line to be ignored in an interactive shell (see above). This option is enabled by default. +
lastpipe + +
+If set, and job control is not active, the shell runs the last command of +a pipeline not executed in the background in the current shell environment.
lithist
@@ -11575,6 +11791,7 @@ an argument of -- as signifying the end of options. Expressions may be combined using the following operators, listed in decreasing order of precedence. The evaluation depends on the number of arguments; see below. +Operator precedence is used when there are five or more arguments.
@@ -11633,6 +11850,7 @@ the expression is true if the unary test is true. If the first argument is not a valid unary conditional operator, the expression is false.
3 arguments
+The following conditions are applied in the order listed. If the second argument is one of the binary conditional operators listed above under CONDITIONAL EXPRESSIONS, @@ -11656,7 +11874,15 @@ precedence using the rules listed above.
5 or more arguments
The expression is parsed and evaluated according to precedence using the rules listed above. -
+

+ + + +

+ +When used with test or [, the < and > operators +sort lexicographically using ASCII ordering. +

times @@ -11715,7 +11941,11 @@ Each is either a signal name defined in <signal.h>, or a signal number. -Signal names are case insensitive and the SIG prefix is optional. +Signal names are case insensitive and the +SIG + + +prefix is optional.

@@ -11759,8 +11989,8 @@ is the command arg -is executed each time a shell function or a script executed with the -. or source builtins finishes executing. +is executed each time a shell function or a script executed with +the . or source builtins finishes executing.

@@ -12018,7 +12248,8 @@ The maximum number of processes available to a single user

-v
-The maximum amount of virtual memory available to the shell +The maximum amount of virtual memory available to the shell and, on +some systems, to its children
-x
@@ -12232,7 +12463,7 @@ as an argument to the builtin command
*
-Specifying a filename containing a slash as an argument to the +specifying a filename containing a slash as an argument to the -p option to the @@ -12266,7 +12497,7 @@ options to the builtin command
*
-Using the enable builtin command to enable disabled shell builtins +using the enable builtin command to enable disabled shell builtins
*
specifying the -p @@ -12375,7 +12606,7 @@ version of bash. The latest version is always available from -ftp://ftp.gnu.org/pub/bash/. +ftp://ftp.gnu.org/pub/gnu/bash/.

Once you have determined that a bug actually exists, use the @@ -12460,7 +12691,7 @@ There may be only one active coprocess at a time.


-
GNU Bash-4.12009 December 29BASH(1) +GNU Bash-4.22010 December 28BASH(1)

@@ -12566,6 +12797,6 @@ There may be only one active coprocess at a time.
This document was created by man2html from bash.1.
-Time: 30 December 2009 13:07:38 EST +Time: 28 December 2010 14:30:29 EST diff --git a/doc/bash.pdf b/doc/bash.pdf index cb36c5e173e7aa1ea2edda48f0d66aae8093932c..5bcb0c55dad1dbf6bc874e41be45faeee51908dc 100644 GIT binary patch delta 265557 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

MGl-_^@i0KKArORp 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ඖoH}-?s#bP?qOEv~(w*l#q0rHS&|7 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

Ue)~LEeT}lXz15+|udpJ@6DT{@KhaIBiwC3>v5I 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