Subject: Mac OS X gcc and bogus warnings about *.dSYM directories (was: Re: bug#14706: automake 1.14 test failure on OS X 10.6.8)

From: Stefano Lattarini <[email-masked]>
Date: Thu, 27 Jun 2013 14:45:02 +0200

tags 14706 + patch
thanks

[+cc bug-autoconf]

Reference:
<http://debbugs.gnu.org/cgi/bugreport.cgi?bug=14706>

On 06/25/2013 12:09 AM, Stefano Lattarini wrote:
> severity 14706 minor
> thanks
> 
> On 06/24/2013 04:02 PM, Diab Jerius wrote:
>> Hi,
>>
> Hi, and thanks for the report!
> 
>> I received a test failure of automake 1.14 on OS X 10.6.8.
>>
>> Attached is the test log.
>>
>> Diab
>>
> 
> Here I copy the relevant portion of the log, for easier reference:
>>
>> FAIL: t/depcomp2
>> ================
>>
>> Running from installcheck: no
>> Test Protocol: none
>> PATH = /tmp/automake-1.14/t/wrap:/tmp/automake-1.14/t/ax:<snip>
>> ++ pwd
>> /tmp/automake-1.14/t/depcomp2.dir
>> + cat
>> + cat
>> + rm -f depcomp
>> + mkdir subdir
>> + cat
>> + :
>> + aclocal-1.14 -Werror
>> + automake-1.14 --foreign -Werror -Wall --add-missing
>> + autoconf
>> + ./configure
>> checking for a BSD-compatible install... /usr/bin/install -c
>> checking whether build environment is sane... yes
>> checking for a thread-safe mkdir -p... ./install-sh -c -d
>> checking for gawk... no
>> checking for mawk... no
>> checking for nawk... no
>> checking for awk... awk
>> checking whether /usr/bin/make sets $(MAKE)... yes
>> checking whether /usr/bin/make supports nested variables... yes
>> checking for gcc... cc
>> checking whether the C compiler works... yes
>> checking for C compiler default output file name... a.out
>> checking for suffix of executables...
>> checking whether we are cross compiling... no
>> checking for suffix of object files... o
>> checking whether we are using the GNU C compiler... yes
>> checking whether cc accepts -g... yes
>> checking for cc option to accept ISO C89... none needed
>> checking whether cc understands -c and -o together... yes
>> checking for style of include used by /usr/bin/make... GNU
>> checking dependency style of cc... none
>> checking that generated files are newer than configure... done
>> configure: creating ./config.status
>> config.status: creating Makefile
>> config.status: creating subdir/Makefile
>> config.status: executing depfiles commands
>> + cat stderr
>> rm: conftest.dSYM: is a directory
>>
> Hmm, seems this is an old issue in Autoconf:
> 
>  <http://lists.gnu.org/archive/html/bug-autoconf/2007-11/msg00017.html>
>  <http://mail.python.org/pipermail/python-dev/2008-April/078807.html>
> 
> I'll add a workaround to the automake testsuite to avoid the spurious
> failure (spurious since it's due to a buglet/limitation in autoconf,
> not in automake).  I'm about to log off now, so the patch proper should
> be poster tomorrow or the day after.
> 
Here is the promised patch.  Can you confirm it works for you?

I'm adding bug-autoconf in CC because, from the first discussion linked
above, it appears the original issue had been fixed, but it must have
been unwittingly reintroduced in the meantime :-(  Maybe some autoconfer
wants to take a fresh look at the problem ...

Thanks,
  Stefano

---- 8< ---- 8< ---- 8< ---- 8< ---- 8< ---- 8< ---- 8< ---- 8< ----

>From 3759f24379c98b984a56b52c7d23a2dfbf36efcf Mon Sep 17 00:00:00 2001
Message-Id: <3759f2437[email-masked]>
From: Stefano Lattarini <[email-masked]>
Date: Thu, 27 Jun 2013 14:43:12 +0200
Subject: [PATCH] tests: avoid a spurious failure on MacOS X 10.6.8

Fixes automake bug#14706.

* t/depcomp2.sh: Strip, from the redirected ./configure stderr, the
possible error message "rm: conftest.dSYM: is a directory", generated
by cleanup code that doesn't cater to the existence of *.dSYM
directories sometimes created by the compiler on MacOS X.  This
"massaging" of ./configure stderr is legitimate, since the spurious
error message is due not to automake-related code, but to a know
buglet/limitation of either Autoconf or Mac OS X bundles gcc:
<http://lists.gnu.org/archive/html/bug-autoconf/2007-11/msg00017.html>
Actually, from that link it appears that the original Autoconf issue
had been fixed, but it must have been re-introduced in the meantime :-(

Signed-off-by: Stefano Lattarini <[email-masked]>
---
 t/depcomp2.sh | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/t/depcomp2.sh b/t/depcomp2.sh
index 2182164..3eba12d 100644
--- a/t/depcomp2.sh
+++ b/t/depcomp2.sh
@@ -45,6 +45,9 @@ $AUTOMAKE --add-missing
 $AUTOCONF
 ./configure 2>stderr || { cat stderr >&2; exit 1; }
 cat stderr >&2
-test ! -s stderr
+# Ignore warning messages sometimes seen on Mac OS X; they are
+# not automake's fault anyway, but either autoconf's or Mac's.
+sed '/rm:.* conftest\.dSYM/d' stderr >stderr2
+test -s stderr2 && { cat stderr2; exit 1; }

 :
-- 
1.8.3.1.448.gfb7dfaa