summaryrefslogtreecommitdiff
path: root/NG-NEWS
diff options
context:
space:
mode:
authorStefano Lattarini <stefano.lattarini@gmail.com>2012-06-18 11:33:00 +0200
committerStefano Lattarini <stefano.lattarini@gmail.com>2012-06-18 15:35:31 +0200
commitf50cba3f2f04c4b4adb7b6843a56b4ee524f5bf9 (patch)
tree50a32e33bcb6009849ab002f02a6286fdabb9855 /NG-NEWS
parent11a44231a057b6dbc15d3fe83f0b652176442241 (diff)
downloadautomake-f50cba3f2f04c4b4adb7b6843a56b4ee524f5bf9.tar.gz
[bg] silent: simplify by taking advantage of GNU make semantics
In particular, taking advantage of the fact that, in GNU make, command line override of variables is propagated to recursive make invocations. This change offers us a small but nice size reduction bot in Automake's code and in the generated Makefiles. It also improves the API to define custom silent "tags", by turning it from: pkg_verbose = $(pkg_verbose_$(V)) pkg_verbose_ = $(pkg_verbose_$(AM_DEFAULT_V)) pkg_verbose_0 = @echo PKG-GEN $@; to the slightly clearer: pkg_verbose = $(pkg_verbose/$(V)) pkg_verbose/1 = pkg_verbose/0 = @echo PKG-GEN $@; * NG-NEWS: Update. * doc/automake-ng.texi (Automake Silent Rules): Update w.r.t. the API for user-defined silent rules. * automake.in: Simplify, by removing the indirections involving $(AM_DEFAULT_VERBOSITY); some other changes and simplifications. (verbose_private_var): Delete, its calls from &define_verbose_var deleted (and those were its only calls). * lib/am/header-vars.am: Define '$(V)' to 0 if it's not already defined. * m4/silent.m4: Initialize and AC_SUBST the variable 'V' directly, instead of of the indirect 'AM_DEFAULT_VERBOSITY'. Do not set nor AC_SUBST the variable 'AM_BACKSLASH', it's not used anymore (and hasn't been since out overhauling and simplification of the compile rules). * GNUmakefile: Simplify a little. * t/silent6.sh, t/silent-configsite.sh: Adjust. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
Diffstat (limited to 'NG-NEWS')
-rw-r--r--NG-NEWS29
1 files changed, 17 insertions, 12 deletions
diff --git a/NG-NEWS b/NG-NEWS
index 16d007488..7776ed937 100644
--- a/NG-NEWS
+++ b/NG-NEWS
@@ -25,18 +25,23 @@ Automatic dependency tracking support
Silent rules
============
-* The silent-rules support unconditionally assumes that nested variables
- expansion are supported. Accordingly, the AC_SUBST'd variables '@AM_V@'
- and'@AM_DEFAULT_V@' have been removed, so that instead of using
- something like:
-
- pkg_verbose = $(pkg_verbose_@AM_V@)
- pkg_verbose_ = $(pkg_verbose_@AM_DEFAULT_V@)
-
- you should simply use:
-
- pkg_verbose = $(pkg_verbose_$(V))
- pkg_verbose_ = $(pkg_verbose_$(AM_DEFAULT_VERBOSITY))
+* The silent rules support has been simplified to take advantage
+ of more GNU make features. Among other things, the AC_SUBST'd
+ variables '@AM_V@' and'@AM_DEFAULT_V@' have been removed. Now,
+ when defining uses custom silent rules, you should do something
+ like:
+
+ # Modern correct way.
+ pkg_verbose = $(pkg_verbose/$(V))
+ pkg_verbose/0 = @echo PKG-GEN $@;
+ pkg_verbose/1 =
+
+ while the old idiom would have been something like:
+
+ # Old obsolete way, won't work anymore.
+ pkg_verbose = $(pkg_verbose_@AM_V@)
+ pkg_verbose_ = $(pkg_verbose_@AM_DEFAULT_V@)
+ pkg_verbose_0 = @echo PKG-GEN $@;
Warnings and diagnostic