[PATCH util-macros 1/1] Provide a configure option to turn off the selective -Werror=... CFLAGS

Jeremy Huddleston jeremyhu at apple.com
Tue Dec 20 11:31:07 PST 2011



Sent from my iPhone...

On Dec 20, 2011, at 5:58, Gaetan Nadon <memsize at videotron.ca> wrote:

> On Mon, 2011-12-19 at 18:50 -0800, Jeremy Huddleston wrote:
>> 
>> Provide end users with a workaround if they find code doesn't build with
>> the -Werror=... flags provided by BASE_CFLAGS.  This can be useful if
>> newer util-macros are used with older source code that had problems, or
>> in the rare case when warnings are expanded to hit more cases (although
>> this case should not happen too much in practice).
>> 
>> Signed-off-by: Jeremy Huddleston <jeremyhu at apple.com>
>> ---
>>  xorg-macros.m4.in |   23 +++++++++++++++++++++++
>>  1 files changed, 23 insertions(+), 0 deletions(-)
>> 
>> diff --git a/xorg-macros.m4.in b/xorg-macros.m4.in
>> index d9ed137..22f537b 100644
>> --- a/xorg-macros.m4.in
>> +++ b/xorg-macros.m4.in
>> @@ -1520,6 +1520,12 @@ m4_foreach([flag], m4_cdr($@), [
>>  AC_DEFUN([XORG_COMPILER_FLAGS], [
>>  AC_REQUIRE([XORG_COMPILER_BRAND])
>>  
>> +AC_ARG_ENABLE(selective-werror,
>> +              AS_HELP_STRING([--disable-selective-werror],
>> +                             [Turn off selective compiler errors, please report bugs if you find you need to use this. (default: enabled)]),
> Help text not appropriate, please remove "please report bugs..." Read on for an alternative.
>   --disable-selective-werror
>                           Turn off selective compiler errors, please report
>                           bugs if you find you need to use this. (default:
>                           enabled)
>   --disable-selective-werror
>                           Turn off selective compiler errors (default: enabled)
> 
> One question: if both --disable-selective-werror and --enable-strict-compilation are used together, does the resulting behavior make sense? Which one overrides the other, if any?
> 

well the use case doesnt make sense ... but the behavior does ... the -Werror=... become -W... and -Werror is added , so strict behaviorially overrides it.
>> +              [SELECTIVE_WERROR=$enableval],
>> +              [SELECTIVE_WERROR=yes])
>> +
>>  # -v is too short to test reliably with XORG_TESTSET_CFLAG
>>  if test "x$SUNCC" = "xyes"; then
>>      BASE_CFLAGS="-v"
>> @@ -1557,6 +1563,8 @@ XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wredundant-decls])
>>  
>>  # Turn some warnings into errors, so we don't accidently get successful builds
>>  # when there are problems that should be fixed.
>> +
>> +if test "x$SELECTIVE_WERROR" = "xyes" ; then
>>  XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Werror=implicit], [-errwarn=E_NO_EXPLICIT_TYPE_GIVEN -errwarn=E_NO_IMPLICIT_DECL_ALLOWED])
>>  XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Werror=nonnull])
>>  XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Werror=init-self])
>> @@ -1570,6 +1578,21 @@ XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Werror=write-strings])
>>  XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Werror=address])
>>  XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Werror=int-to-pointer-cast], [-errwarn=E_BAD_PTR_INT_COMBINATION])
>>  XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Werror=pointer-to-int-cast]) # Also -errwarn=E_BAD_PTR_INT_COMBINATION
>> +else
> Consider adding AC_MSG_WARN to replace help text above. It will show up in the log for all to see. You can use $PACKAGE_BUGREPORT to provide URL. 
> This is what we do for other situations where a module configuration is questionable but not in error.
> We are in the warning business :-)

ok

> 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.x.org/archives/xorg-devel/attachments/20111220/e453496e/attachment.html>


More information about the xorg-devel mailing list