Re: Can't build FreeBSD-head with CLANG

From: Dimitry Andric <dim_at_FreeBSD.org>
Date: Thu, 30 Aug 2012 18:16:00 +0200
On 2012-08-29 10:41, Eir Nym wrote:
...
>>> /usr/head/src/sys/gnu/fs/xfs/xfs_alloc.c:1449:11: error: variable
>>> 'fbno' is used uninitialized whenever 'if' condition is false
>>> [-Werror,-Wsometimes-uninitialized]
>>>           else if (args->minlen == 1 && args->alignment == 1 && !args->isfl
>>> &&
>>>
>>> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>>
>>
>> Weird, how are you building the xfs module?  It has WERROR= in its
>> Makefile, so the '-Werror' option above should not be there.  This is
>> because the XFS code was imported more than 6 years ago, and is very
>> unlikely to ever be fixed. :)
>
> head SVN revision 239793,
> http://eroese.org/_/_/pub/bsd/GENERIC_PF.amd64 — kernel config

Aha, I finally had some time to look at this again, and it seems that
when xfs is statically linked into your kernel, the disabling of -Werror
does not take place.  [Note that linking GPL-contaminated code into your
kernel proper is, shall we say, "ideologically impure" ;-)  But that is
not the issue here.]

It seems the WERROR= in the xfs module Makefile was right there from the
start, but it was never removed.  I have compiled it using gcc, and
there are actually no warnings from gcc at all.  With clang, there are
several warnings, so I have added a few workaround -Wno-xxx flags for
them.

Currently I'm running a make universe to see if this doesn't cause any
trouble, and if it completes successfully, I will commit the changes.

Then I'll mail a note here so you can update your tree and try it out.
Received on Thu Aug 30 2012 - 14:16:01 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:30 UTC