GNU bug report logs - #72267
automake 1.17 issue with new AM_SILENT_RULES

Previous Next

Package: automake;

Reported by: Francis Dupont <Francis.Dupont <at> fdupont.fr>

Date: Wed, 24 Jul 2024 07:27:01 UTC

Severity: normal

Done: Karl Berry <karl <at> freefriends.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Karl Berry <karl <at> freefriends.org>
Cc: tracker <at> debbugs.gnu.org
Subject: bug#72267: closed (automake 1.17 issue with new AM_SILENT_RULES)
Date: Fri, 21 Feb 2025 17:59:03 +0000
[Message part 1 (text/plain, inline)]
Your message dated Fri, 21 Feb 2025 10:58:10 -0700
with message-id <202502211758.51LHwAiw802369 <at> freefriends.org>
and subject line Re: bug#72267: automake 1.17 issue with new AM_SILENT_RULES
has caused the debbugs.gnu.org bug report #72267,
regarding automake 1.17 issue with new AM_SILENT_RULES
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)


-- 
72267: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=72267
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Francis Dupont <Francis.Dupont <at> fdupont.fr>
To: bug-automake <at> gnu.org
Subject: automake 1.17 issue with new AM_SILENT_RULES
Date: Tue, 23 Jul 2024 19:23:44 +0200
I use homebrew on macOS Sonoma 14.5. This package system
installed the version 1.17 automake (I use a binary package
but the source one refers to this metadata:
  desc "Tool for generating GNU Standards-compliant Makefiles"
  homepage "https://www.gnu.org/software/automake/"
  url "https://ftp.gnu.org/gnu/automake/automake-1.17.tar.xz"
  mirror "https://ftpmirror.gnu.org/automake/automake-1.17.tar.xz"
  sha256 "8920c1fc411e13b90bf704ef9db6f29d540e76d232cb3b2c9f4dc4cc599bd990"
  license "GPL-2.0-or-later"

My problem is simple: configure generated by autoreconf includes
this line:
AM_DEFAULT_VERBOSITY=0ac_config_headers="$ac_config_headers config.h"

i.e. the last macro generating AM_DEFAULT_VERBOSITY setting
misses to add a newline after its expansion.

I can propose an easy patch which fixes the problem for me:
at the end of the silent.m4 file (m4 directory in sources
but installed at another location my homebrew add a newline
in the AM_SILENT_RULES macro setting AM_DEFAULT_VERBOSITY:

--- /usr/local/Cellar/automake/1.17/share/aclocal-1.17/silent.m4-orig-nl	2024-07-12 07:21:44
+++ /usr/local/Cellar/automake/1.17/share/aclocal-1.17/silent.m4		2024-07-23 07:40:50
@@ -68,4 +68,5 @@
 # empty being verbose).
 AC_DEFUN([AM_SILENT_RULES],
 [AC_REQUIRE([_AM_SILENT_RULES])
-AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1])])
+AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1])
+])

Regards

Francis.Dupont <at> fdupont.fr (or fdupont <at> isc.org)


[Message part 3 (message/rfc822, inline)]
From: Karl Berry <karl <at> freefriends.org>
To: Francis.Dupont <at> fdupont.fr
Cc: 72267 <at> debbugs.gnu.org
Subject: Re: bug#72267: automake 1.17 issue with new AM_SILENT_RULES
Date: Fri, 21 Feb 2025 10:58:10 -0700
    configure generated by autoreconf includes
    this line:
    AM_DEFAULT_VERBOSITY=0ac_config_headers="$ac_config_headers config.h"

Thanks for the report and proposed fix, Francis. I added Nick's suggested
m4_newline() to AM_SILENT_RULES in silent.m4.

I see in your kea configure.ac:

  m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])dnl be backward compatible
  AC_CONFIG_HEADERS([config.h])

So the newline in configure.ac was indeed being explicitly discarded by
your dnl. It makes sense for Automake to force the newline here, as was
the behavior before 1.17.

Closing this one. Thanks again,
Karl

-----------------------------------------------------------------------------
m4: force newline after AM_SILENT_RULES, as before 1.17.

From https://bugs.gnu.org/72267.

* m4/silent.m4 (AM_SILENT_RULES): m4_newline() after the assignment.
Report from Francis Dupont, suggestions from Francis and Nick Bowler.
* NEWS: mention this.
* THANKS: add Francis.
diff --git a/NEWS b/NEWS
index 504901a88..34876f3db 100644
--- a/NEWS
+++ b/NEWS
@@ -32,9 +27,16 @@ New in 1.x:
   - The compile script is more robust to Windows configurations;
     specifically, avoiding double-path translation on MSYS. (bug#75939)

+  - AM_SILENT_RULES once again always ends with a newline. (bug#72267)
+
   - AM_SANITY_CHECK outputs a "no" for failure before fatal errors.
     (bug#76448)

diff --git a/THANKS b/THANKS
index 634c77c9b..0f44235aa 100644
--- a/THANKS
+++ b/THANKS
@@ -139,6 +139,7 @@ Felix Yan                       felixonmars <at> archlinux.org
 Flavien Astraud                 flav42 <at> yahoo.fr
 Florian Briegel                 briegel <at> zone42.de
 Francesco Salvestrini           salvestrini <at> gmail.com
+Francis Dupont                  Francis.Dupont <at> fdupont.fr
 François Pinard                 pinard <at> iro.umontreal.ca
 Fred Fish                       fnf <at> ninemoons.com
 Frédéric Bérat                fberat <at> redhat.com
diff --git a/m4/silent.m4 b/m4/silent.m4
index 56334d3b9..a2865fded 100644
--- a/m4/silent.m4
+++ b/m4/silent.m4
@@ -68,4 +68,8 @@ fi
 # empty being verbose).
 AC_DEFUN([AM_SILENT_RULES],
 [AC_REQUIRE([_AM_SILENT_RULES])
-AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1])])
+AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1])m4_newline
+dnl We intentionally force a newline after the assignment, since a) nothing
+dnl good can come of more text following, and b) that was the behavior
+dnl before 1.17. See https://bugs.gnu.org/72267.
+])

compile finished at Fri Feb 21 09:56:43 2025


This bug report was last modified 85 days ago.

Previous Next


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