Bash backquote bug?

Randall R Schulz rrschulz@cris.com
Mon Jan 13 03:23:00 GMT 2003


Michael,

My genius does not subsume that of the entire Cygwin community. Please keep 
all Cygwin dialogs on <mailto:cygwin@cygwin.com>.


At 13:53 2003-01-08, Barillier, Michael wrote:
>The lines in the example are the lines that fail in the configure script.
>I ran them directly from the command line and got the output shown.  The
>fact that you didn't get the same results is a bit, erm ... troubling. :)

"Challenging" or "intriguing" or "bothersome," perhaps. But given this 
best-of-all-possible-worlds world in which we now live, such things don't 
trouble me.


>I've attached the output of `cygcheck -s -v'.  I'd ran the Cygwin setup
>program this morning and was trying to build some Emacs Lisp files to get
>my home directory in order--everything was downloaded from
><http://archive.progeny.com/cygwin/>, IIRC, as of about 12:00EST.
>
>Oh--the shebang line in the script references /bin/sh.  It was generated
>by autoconf-2.53, if that's of any importance.  `ls' is aliased to `ls -F',
>but even when unaliased `configure' barfs.  $CYGWIN is set to `tty notitle
>glob ntsec'.

Your original post used "-L" ("-L, --dereference  list entries pointed to 
by symbolic links") not "-F" ("-F, --classify  append indicator (one of 
*/=@|) to entries").

That, of course, suggests the answer to the puzzle (and proves that it is 
not "troubling"): The "configure" file presumably has its execute bit set, 
which causes "ls -F" to flag the output with a * which in turn caused the 
"echo $*" (with the $* unquoted) command to expand what appeared at that 
point to be a glob expression.


Randall Schulz


>*Update*  So to check that I'm not imagining things, I re-ran the set of
>commands I'd put in the email, and now they're working correctly for me.
>The configure script, however, still does not.  I've attached the source
>tarball that's failing--it's my Emacs startup files, please no comments on
>the quality of my Lisp coding or overall incoherence of the files. :)  If
>you run:
>
>   $ tar xzvf bw-emacs-1.2.2.tar.gz
>   $ cd bw-emacs-1.2.2
>   $ ./configure
>
>you should (?) get an error stating that `ls -t appears to fail'.  The
>associated lines are the ones mentioned in my initial post.  I'll continue
>rooting through the script to see what may be causing it, but if you have
>any thoughts I'd appreciate hearing them.
>
>Thanks!
>
>-- mjb
>
> > -----Original Message-----
> > From: Randall R Schulz [mailto:rrschulz@cris.com]
> > Sent: Wednesday, 2003 January 08 15:09
> > To: cygwin@cygwin.com
> > Subject: Re: Bash backquote bug?
> >
> >
> > Michael,
> >
> > I cannot reproduce this. When I recreate your experiment, I
> > get the results
> > I'd expect.
> >
> > Are you sure your script is using BASH? You should know that
> > /bin/sh is
> > ash, not BASH. Nonetheless, I cannot reproduce the problem
> > with ash, either.
> >
> > Out of curiosity, why are you using the "-L" option to "ls?"
> > Are symbolic
> > links involved here?
> >
> > Please send "cygcheck -s -v" output as a non-inline,
> > non-compressed text
> > attachment.
> >
> > Randall Schulz
> >
> >
> > At 12:44 2003-01-08, Barillier, Michael wrote:
> > >While running a configure script under bash-2.05b, I
> > observed a bug (?)
> > >similar to the following:
> > >
> > >   $ ls configure*
> > >   configure  configure.in
> > >   $ echo timestamp >conftest.file
> > >   $ ls -Lt ./configure conftest.file
> > >   conftest.file  ./configure
> > >   $ set X `ls -Lt ./configure conftest.file`
> > >   $ echo $*
> > >   X conftest.file ./configure ./configure.in
> > >
> > >So, it appears that `ls' produces different output when
> > evaluated at the
> > >command prompt and when run under backquote.  Any ideas?
> > >
> > >-- mjb


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/



More information about the Cygwin mailing list