[PATCH] macros: Globally add --disable-silent-rules to configure

Jim Meyering jim at meyering.net
Sat Aug 13 08:51:46 UTC 2011


Jan Kratochvil wrote:
> On Tue, 09 Aug 2011 19:45:15 +0200, Matthew Garrett wrote:
>> If a package fails to build in a mass rebuild because -Werror was enabled
>> then that's additional work for several people to fix something that may not
>> have ever actually been broken.
>
> 99% of warnings will not lead to user visible bugs.  Finding that remaining
> 1% of bugs (warnings) takes more than 100x time than to fix the warnings.
>
> I base my -Werror recommendation on this assumption, YMMV.

Nice argument.  I agree wholeheartedly with your numbers and with
the recommendation to use -Werror and as many -W___ options as
you/upstream can bear.

However, it does depend on the version of gcc you use, especially if
you use some of the newer warning options.  Not too long ago, coreutils
was getting invalid warning/errors from F15's gcc 4.6.x.  Luckily, the
bug was fixed in gcc-4.7.x, so I opted to use the newer gcc and retain
those rather aggressive warnings.  Besides, they're enabled only when
you configure coreutils with --enable-gcc-warnings.

Whether to invest in enabling -Werror for all packages in a mass rebuild
however is another question.  There will be many build failures, and
some will be unwarranted.  Having non-upstream take time to avoid the
warnings may not be productive, since there are many ways to avoid them,
and the way you choose may not suit upstream.  Also, do you want to
invest in avoiding warnings that affect only test-related code?

That said, if there are thick-skinned volunteers with the expertise and
enough time/energy, enabling -Werror globally (or even in a few selected
packages) and addressing failures would be great.


More information about the devel mailing list