[PATCH xserver 1/4] Replace deprecated CWARNFLAGS with BASE_CFLAGS and NO_STRICT_ALIASING_CFLAG

Gaetan Nadon memsize at videotron.ca
Fri Dec 9 10:12:54 PST 2011


On Fri, 2011-12-09 at 09:52 -0800, Alan Coopersmith wrote:

> On 12/09/11 07:40, Keith Packard wrote:
> > On Fri, 09 Dec 2011 07:45:01 -0500, Gaetan Nadon<memsize at videotron.ca>  wrote:
> >
> >>   This function is deprecated because it defines -fno-strict-aliasing
> >>   which alters the code generated by the compiler.  If -fno-strict-aliasing
> >>   is needed, then it should be added explicitly in the module when
> >>   it is updated to use BASE_CFLAGS.
> >
> > Does this change the default for this flag? -fno-strict-aliasing is
> > needed to preserve compatibility with older code, and I think it should
> > probably be on by default until a module owner disables it manually.
> 
> The actual diff is:
> -if  test "x$GCC" = xyes ; then
> -    XSERVER_CFLAGS="$XSERVER_CFLAGS -fno-strict-aliasing"
> -fi
> +XORG_TESTSET_CFLAG([NO_STRICT_ALIASING_CFLAG], [-fno-strict-aliasing])
> +XSERVER_CFLAGS='$(BASE_CFLAGS) $(NO_STRICT_ALIASING_CFLAG)'
> 
> which has the net effect of changing it from hardcoding for gcc to passing
> it to any compiler which accepts the flag, so many actually expand usage of
> it on non-gcc compilers.
> 

My understanding is that XORG_TESTSET_CFLAG tests the compiler flag with
the compiler being used. During xserver configuration, I get:

        checking if gcc -std=gnu99 supports -fno-strict-aliasing... yes

I expect that the variable will be empty on non gcc compilers but I have
not tested that personally.

        # XORG_TESTSET_CFLAG(<variable>, <flag>, [<alternative flag>, ...])
        # ---------------
        # Minimum version: 1.16.0
        #
        # Test if the compiler works when passed the given flag as a command line argument.
        # If it succeeds, the flag is appeneded to the given variable.  If not, it tries the
        # next flag in the list until there are no more options.
        #
        # Note that this does not guarantee that the compiler supports the flag as some
        # compilers will simply ignore arguments that they do not understand, but we do
        # attempt to weed out false positives by using -Werror=unknown-warning-option and
        # -Werror=unused-command-line-argument
        #

Thanks.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.x.org/archives/xorg-devel/attachments/20111209/8233b24a/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part
URL: <http://lists.x.org/archives/xorg-devel/attachments/20111209/8233b24a/attachment.pgp>


More information about the xorg-devel mailing list