On 05/01/2012 04:05 PM, Stefano Lattarini wrote: > Before this change, support for silent rules was optional and activated > only if the 'silent-rules' option was specified. > > The rationale behind that behaviour was that the silent-rules machinery > originally only worked with make implementations supporting nested > variables expansions, which isn't (or wasn't) a POSIX-specified features; > so that packages wanting to be "extra-portable" couldn't use the > silent-rules machinery at all. > > But after Paul Eggert's commit 'v1.11-598-g8493499' of 25-12-2011, > "silent-rules: fallback for makes without nested vars" (motivated > by automake bugs #9928 and #10237), Makefiles generated when the > 'silent-rules' option is enabled can work also with those make > implementations that don't support nested variables expansion (albeit > the configure-time selected verbosity cannot be overridden at make > runtime in such case). > > In light of that, and since silent rules are disabled by default even > when the 'silent-rules' option is given (unless the developer explicitly > makes them enabled by default be calling "AM_SILENT_RULES([yes])" in > configure.ac), we can now have the support for silent rules always > enabled. > > The 'silent-rules' option will thus become a no-op, but will reaming a > valid option for the time being, for better backward-compatibility. > > A collateral effect of this change is that the use of the 'silent-rules' > option will not anymore automatically disable the warnings in the > 'portability-recursive' category. > > The present change is basically a backport of the Automake-NG commit > 'v1.11d-75-g61ca923' of 19-04-2012, "[ng] silent rules: support for > them is always active now". Stemmed by this thread on the Automake-NG > list: > <http://lists.gnu.org/archive/html/automake-ng/2012-04/msg00027.html> > > * automake.in: Enable silent-rules machinery unconditionally. Reword > some comments. Do not switch off warnings in the category > 'portability-recursive' anymore if the 'silent-rules' option is > given. > * m4/init.m4: Call 'AC_REQUIRE' on 'AM_SILENT_RULES' unconditionally. > * lib/Automake/Options.pm: Recognize 'silent-rules' as a dummy option. > Do not bother anymore checking that it is set in 'configure.ac'. > * t/silent.sh: Remove now-redundant calls to AM_SILENT_RULES. > * t/silent2.sh: Likewise. > * t/silent3.sh: Likewise. > * t/silent4.sh: Likewise. > * t/silent8.sh: Likewise. > * t/silent9.sh: Likewise. > * t/silent-lex.sh: Likewise. > * t/silent-many-gcc.sh: Likewise. > * t/silent-many-generic.sh: Likewise. > * t/silent-yacc-headers.sh: Likewise. > * t/silent-yacc.sh: Likewise. > * t/silentcxx-gcc.sh: Likewise. > * t/silentcxx.sh: Likewise. > * t/silentf77.sh: Likewise. > * t/silentf90.sh: Likewise. > * t/help-silent.sh: Likewise. > * t/silent-configsite.sh: Likewise, and other minor adjustments. > * t/silent7.sh: Likewise. Also, extend to check that silent rules > are disabled by default, and remove obsoleted checks about the > 'silent-rules' option being rejected in 'AUTOMAKE_OPTIONS'. > * t/silent6.sh: Remove now-redundant calls to 'AM_SILENT_RULES'. > Call automake with '-Wno-portability-recursive'. Remove other > obsoleted checks. > * t/dollarvar.sh: Don't expect the use of 'AM_SILENT_RULES' in > 'configure.ac' to disable warning in the 'portability-recursive' > category anymore. > * t/compile_f_c_cxx.sh: Adjust to avoid a spurious failure. > * t/silent-amopts.sh: Remove as obsolete. > * t/silent-nowarn.sh: Likewise. > * t/list-of-tests.mk: Adjust. > * NEWS: Update. > * doc/automake.texi: Update and simplify accordingly. > * configure.ac (AM_INIT_AUTOMAKE): Remove 'silent-rules' option. > I've pushed this patch to master.
Regards, Stefano