bug-libtool
[Top][All Lists]
Advanced

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

Re: Ignoring SIGPIPE in libtoolize


From: Ralf Wildenhues
Subject: Re: Ignoring SIGPIPE in libtoolize
Date: Wed, 5 Apr 2006 10:27:19 +0200
User-agent: Mutt/1.5.11

Hi Behdad,

* 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?

> 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)?

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)




reply via email to

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