Subject: bug#14706: Mac OS X gcc and bogus warnings about *.dSYM directories

From: Diab Jerius <[email-masked]>
Date: Mon, 08 Jul 2013 11:34:11 -0400

On Sun, 2013-07-07 at 10:30 +0100, Stefano Lattarini wrote:
> [Removing bug-autoconf from CC]
> 
> Reference:
> <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=14706>
> 
> On 06/27/2013 01:45 PM, Stefano Lattarini wrote:
> > tags 14706 + patch
> > thanks
> > 
> > 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: <3759f24379c98b[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; }
> > 
> >  :
> > 
> Ping on this?  Can someone test this patch on Mac OS X and
> confirm it actually works?
> 
> Thanks,
>   Stefano

Sorry, I wasn't able to look at this last week.  I'll try to do that
either today or tomorrow.

Diab