klibc-bot for Fredrik Fornwall
2020-Mar-28 21:48 UTC
[klibc] [klibc:update-dash] dash: builtin: Clear LC_ALL in mkbuiltins
Commit-ID: 2133c29de320e3173d7cb1aec32676afa8b0dc17 Gitweb: http://git.kernel.org/?p=libs/klibc/klibc.git;a=commit;h=2133c29de320e3173d7cb1aec32676afa8b0dc17 Author: Fredrik Fornwall <fredrik at fornwall.net> AuthorDate: Sun, 24 May 2015 23:05:48 +0200 Committer: Ben Hutchings <ben at decadent.org.uk> CommitDate: Sat, 28 Mar 2020 21:42:54 +0000 [klibc] dash: builtin: Clear LC_ALL in mkbuiltins [ dash commit fe393c0f9ab72de5a7d32aab53e5e8275cad8735 ] In mkbuiltins LC_COLLATE is set, but since "The value of the LC_ALL environment variable has precedence over any of the other environment variables starting with LC_" (http://pubs.opengroup.org/onlinepubs/7908799/xbd/envvar.html), this has no effect when LC_ALL is set. This breaks when having e.g. LC_ALL=en_US.UTF-8 during make, which causes the test case dash -c : to fail, probably due to broken ordering in builtins.c. The patch corrects that by clearing LC_ALL. Signed-off-by: Herbert Xu <herbert at gondor.apana.org.au> Signed-off-by: Ben Hutchings <ben at decadent.org.uk> --- usr/dash/mkbuiltins | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/usr/dash/mkbuiltins b/usr/dash/mkbuiltins index f412a41b..8c74d6b1 100644 --- a/usr/dash/mkbuiltins +++ b/usr/dash/mkbuiltins @@ -78,7 +78,7 @@ awk '{ for (i = 2 ; i <= NF ; i++) { if ($i ~ /^-/) line = $(++i) "\t" line print line - }}' $temp | LC_COLLATE=C sort -k 1,1 | tee $temp2 | awk '{ + }}' $temp | LC_ALL= LC_COLLATE=C sort -k 1,1 | tee $temp2 | awk '{ opt = "" if (NF > 2) { opt = substr($2, 2) @@ -97,8 +97,9 @@ cat <<\! */ ! -sed 's/ -[a-z]*//' $temp2 | nl -b a -v 0 | LC_COLLATE=C sort -u -k 3,3 | -tr abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ | +sed 's/ -[a-z]*//' $temp2 | nl -b a -v 0 | + LC_ALL= LC_COLLATE=C sort -u -k 3,3 | + tr abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ | awk '{ printf "#define %s (builtincmd + %d)\n", $3, $1}' printf '\n#define NUMBUILTINS %d\n' $(wc -l < $temp2) echo '
Seemingly Similar Threads
- [klibc:update-dash] builtin: Clear LC_ALL in mkbuiltins
- [klibc:update-dash] Revert " dash: mkbuiltins: Fix sort order harder"
- [klibc:master] dash: mkbuiltins: Fix sort order harder
- [klibc:update-dash] Revert " dash: mkbuiltins: Fix sort order harder"
- [klibc:update-dash] shell: Fix build on Solaris 9