GNU bug report logs - #10237
AM_SILENT_RULES does not work with NonStop make

Previous Next

Package: automake;

Reported by: Paul Eggert <eggert <at> cs.ucla.edu>

Date: Tue, 6 Dec 2011 17:53:02 UTC

Severity: minor

Tags: patch

Done: Stefano Lattarini <stefano.lattarini <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Paul Eggert <eggert <at> cs.ucla.edu>
To: 10237 <at> debbugs.gnu.org
Cc: "Daniel Richard G." <skunk <at> iSKUNK.ORG>
Subject: bug#10237: AM_SILENT_RULES does not work with NonStop make
Date: Tue, 06 Dec 2011 09:51:32 -0800
If AM_SILENT_RULES is used, Automake generates Makefile.in
files with lines like this:

  AM_V_CC = $(am__v_CC_$(V))
  am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY))

and these are copied into Makefile unchanged.  Unfortunately, as
the Automake documentation notes, these lines do not conform to
the POSIX rules for 'make', and as a result packages like
Coreutils that use AM_SILENT_RULES won't build on machines whose
'make' implementations conform to POSIX but disagree with GNU make
in this area.  This is a problem with the current release of
Coreutils, which doesn't build on HP's NonStop OS (see Bug#10234).

The simplest fix for Coreutils is to not use AM_SILENT_RULES but
that defeats the purpose of the Automake feature.  How about the
following idea instead?  Automake could put something like the
following into Makefile.in:

  AM_V_CC = $(am__v_CC_ <at> AM_V@)
  am__v_CC_ = $(am__v_CC_ <at> AM_DEFAULT_VERBOSITY@)

and then Automake can do something like this:

    if make supports $(...$(...)); then
      AM_V='$(V)'
      AM_DEFAULT_VERBOSITY='$(AM_DEFAULT_VERBOSITY)'
    else
      AM_V=1
      AM_DEFAULT_VERBOSITY=1
    fi
    AC_SUBST([AM_V])
    AC_SUBST([AM_DEFAULT_VERBOSITY])

That way, Coreutils could continue to use AM_SILENT_RULES, and
these rules would work as usual on most hosts that use GNU
make-ish syntax in this area, but the rules wouldn't break on
hosts that support POSIX but not GNU make.

This idea should also fix Bug#9928 (in a different way from
what's proposed there), so I'll CC: its reporter.





This bug report was last modified 13 years and 146 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.