head 1.4; access; symbols pkgsrc-2025Q2:1.3.0.22 pkgsrc-2025Q2-base:1.3 pkgsrc-2025Q1:1.3.0.20 pkgsrc-2025Q1-base:1.3 pkgsrc-2024Q4:1.3.0.18 pkgsrc-2024Q4-base:1.3 pkgsrc-2024Q3:1.3.0.16 pkgsrc-2024Q3-base:1.3 pkgsrc-2024Q2:1.3.0.14 pkgsrc-2024Q2-base:1.3 pkgsrc-2024Q1:1.3.0.12 pkgsrc-2024Q1-base:1.3 pkgsrc-2023Q4:1.3.0.10 pkgsrc-2023Q4-base:1.3 pkgsrc-2023Q3:1.3.0.8 pkgsrc-2023Q3-base:1.3 pkgsrc-2023Q2:1.3.0.6 pkgsrc-2023Q2-base:1.3 pkgsrc-2023Q1:1.3.0.4 pkgsrc-2023Q1-base:1.3 pkgsrc-2022Q4:1.3.0.2 pkgsrc-2022Q4-base:1.3 pkgsrc-2022Q3:1.2.0.6 pkgsrc-2022Q3-base:1.2 pkgsrc-2022Q2:1.2.0.4 pkgsrc-2022Q2-base:1.2 pkgsrc-2022Q1:1.2.0.2 pkgsrc-2022Q1-base:1.2 pkgsrc-2021Q4:1.1.0.32 pkgsrc-2021Q4-base:1.1 pkgsrc-2021Q3:1.1.0.30 pkgsrc-2021Q3-base:1.1 pkgsrc-2021Q2:1.1.0.28 pkgsrc-2021Q2-base:1.1 pkgsrc-2021Q1:1.1.0.26 pkgsrc-2021Q1-base:1.1 pkgsrc-2020Q4:1.1.0.24 pkgsrc-2020Q4-base:1.1 pkgsrc-2020Q3:1.1.0.22 pkgsrc-2020Q3-base:1.1 pkgsrc-2020Q2:1.1.0.20 pkgsrc-2020Q2-base:1.1 pkgsrc-2020Q1:1.1.0.16 pkgsrc-2020Q1-base:1.1 pkgsrc-2019Q4:1.1.0.18 pkgsrc-2019Q4-base:1.1 pkgsrc-2019Q3:1.1.0.14 pkgsrc-2019Q3-base:1.1 pkgsrc-2019Q2:1.1.0.12 pkgsrc-2019Q2-base:1.1 pkgsrc-2019Q1:1.1.0.10 pkgsrc-2019Q1-base:1.1 pkgsrc-2018Q4:1.1.0.8 pkgsrc-2018Q4-base:1.1 pkgsrc-2018Q3:1.1.0.6 pkgsrc-2018Q3-base:1.1 pkgsrc-2018Q2:1.1.0.4 pkgsrc-2018Q2-base:1.1 pkgsrc-2018Q1:1.1.0.2 pkgsrc-2018Q1-base:1.1; locks; strict; comment @# @; 1.4 date 2025.07.05.08.28.44; author wiz; state dead; branches; next 1.3; commitid OGteB769WQ2n8x1G; 1.3 date 2022.10.03.12.50.27; author wiz; state Exp; branches; next 1.2; commitid 0IOVU03UjnZ5VgWD; 1.2 date 2022.01.28.20.39.20; author schmonz; state Exp; branches; next 1.1; commitid jiZuF878BisdurqD; 1.1 date 2018.01.25.10.40.06; author jperkin; state Exp; branches; next ; commitid RBeztkTu1jkcefoA; desc @@ 1.4 log @bash: update to 5.3. 1. New Features in Bash a. When checking whether a script file argument is a binary file, check the first two lines of a script if the first line begins with `#!'. b. Bash does a better job of preserving user-supplied quotes around a word completion, instead of requoting it. c. Bash reports the starting line number in an error message about an unterminated compound command like `if' without a `fi'. d. Implement the POSIX requirement that running the `jobs' builtin removes jobs from the jobs list. f. Call bash signal handlers while executing programmable completion commands, instead of readline's. g. Print an error message if a regular expression used with [[ fails to compile. h. The `umask' builtin now has additional features for full POSIX conformance. i. `type -a -P' reports both hashed pathnames and the result of a $PATH search. j. `trap' has a new -P option that prints the trap action associated with each signal argument. k. The `command' builtin preceding a declaration builtin (e.g., `declare') preserves the special asisgnment statement parsing for the declaration builtin. This is a new POSIX requirement. l. `printf' uses the `alternate form' for %q and %Q to force single quoting. m. `printf' now interprets %ls (%S) and %lc (%C) as referring to wide strings and characters, respectively, when in a multibyte locale. n. The shell can be compiled with a different default value for the patsub_replacement option. o. Check for window size changes during trap commands, `bind -x' commands, and programmable completion. p. Treat a NULL value for $PATH as equivalent to ".". p. New loadable builtins: kv, strptime q. GLOBSORT: new variable to specify how to sort the results of pathname expansion (name, size, blocks, mtime, atime, ctime, numeric, none) in ascending or descending order. r. `compgen' has a new option: -V varname. If supplied, it stores the generated completions into VARNAME instead of printing them on stdout. s. New form of command substitution: ${ command; } or ${|command;} to capture the output of COMMAND without forking a child process and using pipes. t. array_expand_once: new shopt option, replaces assoc_expand_once u. complete/compopt new option: fullquote; sets rl_full_quoting_desired so all possible completions are quoted as if they were filenames. v. Command timing now allows precisions up to 6 digits instead of 3 in $TIMEFORMAT. w. BASH_MONOSECONDS: new dynamic variable that returns the value of the system's monotonic clock, if one is available. x. BASH_TRAPSIG: new variable, set to the numeric signal number of the trap being executed while it's running. y. The checkwinsize option can be used in subshell commands started from interactive shells. z. In posix mode, the test command < and > binary primaries compare strings using the current locale. aa. bind -x allows new key binding syntax: separate the key sequence and the command string with whitespace, but require the command string to be double-quoted if this is used. This allows different quoting options for the command string. bb. Print commands bound to key sequences using `bind -x' with the new key binding syntax it allows. cc. `read' has a new `-E' option to use readline but with the default bash completion (including programmable completion). dd. New bindable readline command name: `bash-vi-complete'. ee. New test builtin behavior when parsing a parenthesized subexpression and test was given more than 4 arguments: scan forward for a closing paren and call posixtest() if there are 4 or fewer arguments between the parentheses. Added for compatibility with coreutils test, dependent on the shell compatibility level. Such expressions remain ambiguous. ff. MULTIPLE_COPROCS is now enabled by default. gg. The `bind' builtin interprets additional non-option arguments after -p or -P as bindable command names and restricts output to the bindings for those names. hh. Bash now uses the login shell for $BASH if the shell is named `su' or `-su'. ii. Bash now prints job notifications if an interactive shell is running a trap, even though the shell is not interactive at that moment. jj. Programmable completion allows a new compspec loaded after a completion function returns 124 to be used in more cases. kk. ./source has a new -p PATH option, which makes it use the PATH argument instead of $PATH to look for the file. ll. Documentation has been significantly updated. mm. `wait -n' can now return terminated process substitutions, jobs about which the user has already been notified (like `wait' without options), nn. `wait -n' removes jobs from the jobs table or list of terminated children when in posix mode. oo. Changed the `wait' builtin behavior regarding process substitutions to match the documentation. pp. There is a new `bash_source_fullpath' shopt option, which makes bash put full pathnames into BASH_SOURCE, and a way to set a default value for it at configure time. qq. Posix mode now forces job notifications to occur when the new edition of POSIX specifies (since it now specifies them). rr. Interactive shells don't print job notifications while sourcing scripts. ss. The parser prints more information about the command it's trying to parse when it encounters EOF before completing the command. tt. Posix mode no longer requires function names to be valid shell identifiers. uu. If `exit' is run in a trap and not supplied an exit status argument, it uses the value of $? from before the trap only if it's run at the trap's `top level' and would cause the trap to end (that is, not in a subshell). This is from Posix interp 1602. vv. There is a new `fltexpr' loadable builtin to perform floating-point arithmetic similarly to `let'. ww. The `install-strip' and `strip' Makefile targets now deal with cross- compiling. @ text @$NetBSD: patch-support_shobj-conf,v 1.3 2022/10/03 12:50:27 wiz Exp $ Spell -fPIC correctly. --- support/shobj-conf.orig 2019-12-13 14:51:17.000000000 +0000 +++ support/shobj-conf @@@@ -114,7 +114,7 @@@@ sunos5*-*gcc*|solaris2*-*gcc*) ;; sunos5*|solaris2*) - SHOBJ_CFLAGS='-K pic' + SHOBJ_CFLAGS='-fPIC' SHOBJ_LD=/usr/ccs/bin/ld SHOBJ_LDFLAGS='-G -dy -z text -i -h $@@' @ 1.3 log @bash: update to 5.2. This is a terse description of the new features added to bash-5.2 since the release of bash-5.1. As always, the manual page (doc/bash.1) is the place to look for complete descriptions. 1. New Features in Bash a. The bash malloc returns memory that is aligned on 16-byte boundaries. b. There is a new internal timer framework used for read builtin timeouts. c. Rewrote the command substitution parsing code to call the parser recursively and rebuild the command string from the parsed command. This allows better syntax checking and catches errors much earlier. Along with this, if command substitution parsing completes with here-documents remaining to be read, the shell prints a warning message and reads the here-document bodies from the current input stream. d. The `ulimit' builtin now treats an operand remaining after all of the options and arguments are parsed as an argument to the last command specified by an option. This is for POSIX compatibility. e. Here-document parsing now handles $'...' and $"..." quoting when reading the here-document body. f. The `shell-expand-line' and `history-and-alias-expand-line' bindable readline commands now understand $'...' and $"..." quoting. g. There is a new `spell-correct-word' bindable readline command to perform spelling correction on the current word. h. The `unset' builtin now attempts to treat arguments as array subscripts without parsing or expanding the subscript, even when `assoc_expand_once' is not set. i. There is a default value for $BASH_LOADABLES_PATH in config-top.h. j. Associative array assignment and certain instances of referencing (e.g., `test -v' now allow `@@' and `*' to be used as keys. k. Bash attempts to expand indexed array subscripts only once when executing shell constructs and word expansions. l. The `unset' builtin allows a subscript of `@@' or `*' to unset a key with that value for associative arrays instead of unsetting the entire array (which you can still do with `unset arrayname'). For indexed arrays, it removes all elements of the array without unsetting it (like `A=()'). m. Additional builtins (printf/test/read/wait) do a better job of not parsing array subscripts if array_expand_once is set. n. New READLINE_ARGUMENT variable set to numeric argument for readline commands defined using `bind -x'. o. The new `varredir_close' shell option causes bash to automatically close file descriptors opened with {var}&WORD- redirection has WORD expand to the empty string, treat the redirection as [N]<&- or [N]>&- and close file descriptor N (default 0). w. Invalid parameter transformation operators are now invalid word expansions, and so cause fatal errors in non-interactive shells. x. New shell option: patsub_replacement. When enabled, a `&' in the replacement string of the pattern substitution expansion is replaced by the portion of the string that matched the pattern. Backslash will escape the `&' and insert a literal `&'. y. `command -p' no longer looks in the hash table for the specified command. z. The new `--enable-translatable-strings' option to `configure' allows $"..." support to be compiled in or out. aa. The new `globskipdots' shell option forces pathname expansion never to return `.' or `..' unless explicitly matched. It is enabled by default. bb. Array references using `@@' and `*' that are the value of nameref variables (declare -n ref='v[@@]' ; echo $ref) no longer cause the shell to exit if set -u is enabled and the array (v) is unset. cc. There is a new bindable readline command name: `vi-edit-and-execute-command'. dd. In posix mode, the `printf' builtin checks for the `L' length modifier and uses long double for floating point conversion specifiers if it's present, double otherwise. ee. The `globbing' completion code now takes the `globstar' option into account. ff. `suspend -f' now forces the shell to suspend even if job control is not currently enabled. gg. Since there is no `declare -' equivalent of `local -', make sure to use `local -' in the output of `local -p'. @ text @d1 1 a1 1 $NetBSD: patch-support_shobj-conf,v 1.2 2022/01/28 20:39:20 schmonz Exp $ @ 1.2 log @Omit the special -arch_only treatment for old Darwin; it's not supported by external compilers (e.g., lang/gcc10) and it's not needed by the native compiler (at least, not on Snow Leopard gcc 4.2.1). @ text @d1 1 a1 1 $NetBSD: patch-support_shobj-conf,v 1.1 2018/01/25 10:40:06 jperkin Exp $ a3 3 Omit the special -arch_only treatment for old Darwin; it's not supported by external compilers (e.g., lang/gcc10) and it's not needed by the native compiler (at least, not on Snow Leopard gcc 4.2.1). a15 9 @@@@ -157,7 +157,7 @@@@ darwin*) *) case "${host_os}" in darwin[89]*|darwin1[012]*) - SHOBJ_ARCHFLAGS='-arch_only `/usr/bin/arch`' + SHOBJ_ARCHFLAGS= ;; *) # Mac OS X 10.9 (Mavericks) and later SHOBJ_ARCHFLAGS= @ 1.1 log @bash: Spell -fPIC correctly on SunOS. @ text @d1 1 a1 1 $NetBSD$ d4 3 d8 1 a8 1 --- support/shobj-conf.orig 2014-02-24 02:06:29.000000000 +0000 d19 9 @