GNOME Bugzilla – Bug 585364
Get rid of shave with AM_SILENT_RULES automake option
Last modified: 2011-08-29 10:12:28 UTC
automake1.11 has a feature that do the same as shave do. IMO would be better to "require newer version of existing tool" than to drag in a new special-purpose widget. Also, automake1.11 has already been added to gnome-autogen.sh The default build behavior is "same as previous" (i.e., verbose), but now user can choose quiet by "./configure --enable-silent-rules" or "make V=0". Alternately, AM_SILENT_RULES([yes]) makes quiet the default (same default as shave), and user can "./configure --disable-silent-rules" or "make V=1" to override. A hard dependency on automake 1.11 is not necessary. Only add m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])]) to your configure.ac and should work and still be compatible with earlier automake versions. More info here: http://live.gnome.org/GnomeGoals/NicerBuilds and bug #580062
Created attachment 136285 [details] [review] Get rid of shave with AM_SILENT_RULES automake option
Jonny: what do you think about this?
automake1.11 isn't in Debian yes, so personally I'd request we wait.
Now that automake1.11 is in Debian, I'd be more willing to accept this. However, the build is far from silent due to all the codegen we get up to. What can AM_SILENT_RULES do about these custom rules, or must we continue using the $(QUIET_GEN) hack?
That would be $(AM_V_GEN) (see <http://www.flameeyes.eu/autotools-mythbuster/automake/silent.html#id454914>).
Ah, thanks Frederic. Javier, could you possibly update your patch to use AM_V_GEN as documented in the link Frederic gave? Thanks,
Created attachment 141093 [details] [review] Get rid of shave with AM_SILENT_RULES automake option and AM_V_GEN Reworked patch. I've used AM_V_GEN to subsitute QUIET_GEN.
Cool. I tried the patch and it looks better. However, this highlights a few points where we hadn't used QUIET_GEN where we should have, because some other rubbish is output. Could you add some more AM_V_GEN to custom rules which still make noise (some in po, some in help) -- don't worry about gtk-doc though; its verbosity is sometimes useful, and it's not always built. Thanks again!
Let's merge this for 2.30.
This is actually harder than I first thought. shave defaults to stifling output. automake 1.11 defaults to printing output. This means that with a blind move from shave to automake, replacing QUIET_GEN with AM_V_GEN, there is still a lot of output. For example, the po and help Makefiles are generated from intltool (?) and gnome-doc-utils, and don't have any custom rule silencing, so make a lot of noise. I guess the real point of silent builds is so that warnings and errors are more visible... We do build with Werror though. The python bindings also make a lot of noise, and although it was a while ago, making them quieter was harder than it sounds. We might be removing the python bindings some time soon so I've just made this bug depend on the gnome-doc-utils and gtk-doc bugs asking for quiet rules support.
Currently 17 Empathy tickets are set as GNOME 2.30 blockers, hence mass-removing. Guillaume: Please use normal Target Milestones instead. If you really think that this specific issue here is a 2.30 blocker then please restore the GNOME target and set corresponding importance values.
Assigning to Jonny as he's our shave/silent build guy. Jonny: We don't use gtk-doc anymore so I guess we can remove the dependency on bug #590927.
Created attachment 151629 [details] [review] Get rid of shave with AM_SILENT_RULES automake option and AM_V_GEN.v2 Updated patch against current master
(In reply to comment #13) > Updated patch against current master Well, there are still some very verbose parts of the build (msgfmt, intltool and xml2po), but I guess this is the best we can do for now. I edited your patch to suppress even more output and pushed it.