Re: [PATCH] init.sh: disqualify shells for which set -x corrupts stderr

2010-09-09 Thread Eric Blake
On 09/09/2010 03:37 AM, Jim Meyering wrote: @@ -269,7 +305,18 @@ path_prepend_() setup_() { - test "$VERBOSE" = yes&& set -x + if test "$VERBOSE" = yes; then +# Test whether set -x may cause the selected shell to corrupt an +# application's stderr. Many do, including zsh-4.3.10 a

Re: [PATCH] init.sh: disqualify shells for which set -x corrupts stderr

2010-09-09 Thread Jim Meyering
Bruno Haible wrote: >> They make it so with "set -x", environment settings >> appear in stderr output. For example, this command: >> /bin/sh -c 'set -x; P=1 true 2> err' 2>/dev/null; cat err >> prints "P=1" on those two systems: > > This test disqualifies also 'ksh', which is considered the "g

Re: [PATCH] init.sh: disqualify shells for which set -x corrupts stderr

2010-09-09 Thread Jim Meyering
Jim Meyering wrote: > Eric Blake wrote: >> On 09/08/2010 03:17 PM, Jim Meyering wrote: >>> >>> +# Whether to reject a shell for which "set -x" corrupts stderr. >>> +strict_=yes >>> + >>> +gl_set_x_corrupts_stderr_='$( (exec 3>&1; set -x; P=1 true 2>&3) 2> >>> /dev/null)' >>> + >>> gl_shell_test

Re: [PATCH] init.sh: disqualify shells for which set -x corrupts stderr

2010-09-08 Thread Bruce Korb
For your possible amusement, I managed to induce Chet to augment BASH with BASH_XTRACEFD. It surely won't help here, but it will make BASH debugging a lot easier. (I had to debug scripts that knew that if there were *any* output to stderr, then the test had to have failed. And there were enough mo

Re: [PATCH] init.sh: disqualify shells for which set -x corrupts stderr

2010-09-08 Thread Bruno Haible
Hi Jim, > They make it so with "set -x", environment settings > appear in stderr output. For example, this command: > /bin/sh -c 'set -x; P=1 true 2> err' 2>/dev/null; cat err > prints "P=1" on those two systems: This test disqualifies also 'ksh', which is considered the "good" shell on Sola

Re: [PATCH] init.sh: disqualify shells for which set -x corrupts stderr

2010-09-08 Thread Jim Meyering
Eric Blake wrote: > On 09/08/2010 03:17 PM, Jim Meyering wrote: >> >> +# Whether to reject a shell for which "set -x" corrupts stderr. >> +strict_=yes >> + >> +gl_set_x_corrupts_stderr_='$( (exec 3>&1; set -x; P=1 true 2>&3) 2> >> /dev/null)' >> + >> gl_shell_test_script_=' >> test $(echo y)

Re: [PATCH] init.sh: disqualify shells for which set -x corrupts stderr

2010-09-08 Thread Eric Blake
On 09/08/2010 03:17 PM, Jim Meyering wrote: +# Whether to reject a shell for which "set -x" corrupts stderr. +strict_=yes + +gl_set_x_corrupts_stderr_='$( (exec 3>&1; set -x; P=1 true 2>&3) 2> /dev/null)' + gl_shell_test_script_=' test $(echo y) = y || exit 1 -test -z "$( (exec 3>&1; set -

Re: [PATCH] init.sh: disqualify shells for which set -x corrupts stderr

2010-09-08 Thread Jim Meyering
Jim Meyering wrote: > Ralf Wildenhues wrote: >> * Eric Blake wrote on Wed, Sep 08, 2010 at 04:58:11PM CEST: >>> On 09/08/2010 08:45 AM, Jim Meyering wrote: >>> >Besides, isn't Irix 5.x approaching effective museum-only status? >>> >>> Probably, but I don't (yet) have access to Irix 6.5 to test a n

Re: [PATCH] init.sh: disqualify shells for which set -x corrupts stderr

2010-09-08 Thread Jim Meyering
Ralf Wildenhues wrote: > * Eric Blake wrote on Wed, Sep 08, 2010 at 04:58:11PM CEST: >> On 09/08/2010 08:45 AM, Jim Meyering wrote: >> >Besides, isn't Irix 5.x approaching effective museum-only status? >> >> Probably, but I don't (yet) have access to Irix 6.5 to test a newer >> version of that plat

Re: [PATCH] init.sh: disqualify shells for which set -x corrupts stderr

2010-09-08 Thread Ralf Wildenhues
* Eric Blake wrote on Wed, Sep 08, 2010 at 04:58:11PM CEST: > On 09/08/2010 08:45 AM, Jim Meyering wrote: > >Besides, isn't Irix 5.x approaching effective museum-only status? > > Probably, but I don't (yet) have access to Irix 6.5 to test a newer > version of that platform. sh and ksh on IRIX 6.5

Re: [PATCH] init.sh: disqualify shells for which set -x corrupts stderr

2010-09-08 Thread Stefano Lattarini
On Wednesday 08 September 2010, Eric Blake wrote: > On 09/08/2010 07:20 AM, Jim Meyering wrote: > > Subject: [PATCH] init.sh: disqualify shells for which set -x > > corrupts stderr > > I'm a little worried that this patch might exclude all shells on a > given platfo

Re: [PATCH] init.sh: disqualify shells for which set -x corrupts stderr

2010-09-08 Thread Eric Blake
, 8 Sep 2010 15:18:46 +0200 Subject: [PATCH] init.sh: disqualify shells for which set -x corrupts stderr I'm a little worried that this patch might exclude all shells on a given platform. For example, on IRIX 5.3: $ /bin/sh -c '(exec 3>&1; set -x; P=1 true 2>&3) 2>/

Re: [PATCH] init.sh: disqualify shells for which set -x corrupts stderr

2010-09-08 Thread Eric Blake
On 09/08/2010 08:45 AM, Jim Meyering wrote: If bash is manually installed, then things are okay. But all existing shells on a bare-bones installation output trace information. If that happens, the result will be that each init.sh-using test will be skipped. Fair enough - someone with enough

Re: [PATCH] init.sh: disqualify shells for which set -x corrupts stderr

2010-09-08 Thread Jim Meyering
3351566ba6085cd2 Mon Sep 17 00:00:00 2001 >> From: Jim Meyering >> Date: Wed, 8 Sep 2010 15:18:46 +0200 >> Subject: [PATCH] init.sh: disqualify shells for which set -x corrupts stderr > > I'm a little worried that this patch might exclude all shells on a > given platform

[PATCH] init.sh: disqualify shells for which set -x corrupts stderr

2010-09-08 Thread Jim Meyering
TCH] init.sh: disqualify shells for which set -x corrupts stderr * tests/init.sh: Add a test to disqualify /bin/sh from SunOS 5.11 and OpenBSD 4.7. They make it so with "set -x", environment settings appear in stderr output. For example, this command: /bin/sh -c 'set -x; P=1 true 2