This is the mail archive of the cygwin-apps mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Concern about new g-b-s logging change - loss of error detection


On Sun, 20 Nov 2005, Max Bowsher wrote:

> Igor Pechtchanski wrote:
>
> > Let's try to come up with a solution (see below), but if we can't very
> > soon, I'll disable the logging.
>
> Good.
>
> >>>>or use $PIPESTATUS (which is a bashism, and is fragile, unless we use
> >>>>${PIPESTATUS[$((${#PIPESTATUS[@]}-1))]}).
> >>>
> >>>I think using a bashism is OK. Even people who don't actually use bash
> >>>interactively will have it installed - it's in 'Base', after all.
> >
> > So, we make g-b-s a /usr/bin/bash script instead of /bin/sh script?  Are
> > there any objections to this?  Is this script ever used in any (e.g.,
> > cross-compilation) environments where /bin/sh is *not* bash?
>
> Bash usually lives in /bin, not /usr/bin.

On Linux it does.  If bash lives in /bin, it's standard on the system and
I'm not worried about those systems.  I'm guessing I'm just overcautious.

> I would think that any Linux system featureful enough to have a
> compiler, would have a /bin/bash.
>
> >>>Why would ${PIPESTATUS[1]} not be OK?
> >
> > Because that would only work for cases where the only pipe is added by
> > logging (i.e., fragile).  If someone ever wanted to pipe something to
> > configure in that step, whoever made the change would need to know to
> > change ${PIPESTATUS[1]} to ${PIPESTATUS[2]}, which is too easy to miss
> > (i.e., fragile).  I'm willing to be convinced that I'm being paranoid
> > here, though.
>
> Hang on: It is the *first* item in the pipe (the real command) that we
> care about, anyway, not any filters placed after it. So,
> ${PIPESTATUS[0]}, and we don't need to worry about people adding to the
> end of the pipe.

Nope, that's why I said "piping something *to* configure", not "piping
configure output into something".  The thing we're interested in may not
be the first item in the pipe (in fact, to preserve the behavior we had
before the logging change, we'd need to consider the return code of the
last pipe stage).  Whether that's the correct behavior is a separate
question, which also needs to be addressed...
	Igor
-- 
				http://cs.nyu.edu/~pechtcha/
      |\      _,,,---,,_		pechtcha@cs.nyu.edu
ZZZzz /,`.-'`'    -.  ;-;;,_		igor@watson.ibm.com
     |,4-  ) )-,_. ,\ (  `'-'		Igor Pechtchanski, Ph.D.
    '---''(_/--'  `-'\_) fL	a.k.a JaguaR-R-R-r-r-r-.-.-.  Meow!

If there's any real truth it's that the entire multidimensional infinity
of the Universe is almost certainly being run by a bunch of maniacs. /DA


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]