bug-libtool
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Ignoring SIGPIPE in libtoolize


From: Behdad Esfahbod
Subject: Re: Ignoring SIGPIPE in libtoolize
Date: Wed, 5 Apr 2006 04:39:30 -0400 (EDT)

On Wed, 5 Apr 2006, Ralf Wildenhues wrote:

> Hi Behdad,

Hey Ralf,

> * Behdad Esfahbod wrote on Wed, Apr 05, 2006 at 08:25:41AM CEST:
> >
> > In GNOME project, we have severl machines running as tinderboxes,
> > continuously building all our modules from CVS.  In a lot of logs
> > from these builds I'm seeing these lines:
> >
> > /usr/bin/libtoolize: line 93: echo: write error: Broken pipe
> > /usr/bin/libtoolize: line 94: echo: write error: Broken pipe
>
> Hmm.  Can you reproduce this or is the race very difficult to win?

No, I couldn't reproduce it on my machine no matter how hard I
tried.


> > which I believe is caused by the echo commands in libtoolize's
> > --version feature when run as "libtoolize --version | head 1"
> > (from gnome-autogen.sh) under some probably heavy loads on the
> > system, making the head command terminate before libtoolize or
> > something like that...
> >
> > As I'm not seeing similar errors from other tools we run the same
> > way, I'm wondering whether libtoolize can be made to ignore
> > SIGPIPE, at least in --version...
>
> Well, I guess the simplest way around it would be to not trigger several
> writes.  How about this instead?  If you have a chance of reproducing,
> could you test this patch (against branch-1-5)?

Yes, that should fix it, but as I said I cannot test it.

Thanks a lot,
behdad


> Cheers, and thanks,
> Ralf
>
>       * libtoolize.in: Use just one `cat' for `--version' output
>       instead of several `echo', to avoid `Broken pipe' errors.
>       Reported by Behdad Esfahbod <address@hidden>.
>
> Index: libtoolize.in
> ===================================================================
> RCS file: /cvsroot/libtool/libtool/Attic/libtoolize.in,v
> retrieving revision 1.21.2.14
> diff -u -r1.21.2.14 libtoolize.in
> --- libtoolize.in     29 Oct 2005 14:00:44 -0000      1.21.2.14
> +++ libtoolize.in     5 Apr 2006 08:25:12 -0000
> @@ -87,12 +87,14 @@
>      ;;
>
>    --version)
> -    echo "$PROGRAM (GNU $PACKAGE) $VERSION"
> -    echo
> -    echo "Copyright (C) 2005 Free Software Foundation, Inc."
> -    echo "This is free software; see the source for copying conditions.  
> There is NO"
> -    echo "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR 
> PURPOSE."
> -    exit $?
> +    cat <<EOF
> +$PROGRAM (GNU $PACKAGE) $VERSION
> +
> +Copyright (C) 2005 Free Software Foundation, Inc.
> +This is free software; see the source for copying conditions.  There is NO
> +warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
> +EOF
> +    exit
>      ;;
>
>    --automake)
>
>

--behdad
http://behdad.org/

"Commandment Three says Do Not Kill, Amendment Two says Blood Will Spill"
        -- Dan Bern, "New American Language"




reply via email to

[Prev in Thread] Current Thread [Next in Thread]