Re: sparse on scripts/kconfig/*.c

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 05/10/17 00:28, Christoph Hellwig wrote:
> On Tue, May 09, 2017 at 05:27:01PM -0700, Randy Dunlap wrote:
>> On 05/09/17 13:17, Christoph Hellwig wrote:
>>> On Tue, May 09, 2017 at 09:47:41AM -0700, Randy Dunlap wrote:
>>>> Hi,
>>>>
>>>> I've been attempting to run sparse on the kconfig/ C files -- without success.
>>>>
>>>> The kbuild files don't try to support CHECK in scripts/kconfig/ AFAICT,
>>>> and just running sparse on the C files has issues with not being able to
>>>> find header files.
>>>>
>>>> Has anyone done this?  Any clues about how to do it?
>>>
>>> As a wild guess from using sparse on various userspace projects:
>>>
>>> have you tried simply setting HOSTCC to cgcc?
>>
>> I don't quite see what that has to do with running sparse ($CHECK, not $HOSTCC).
> 
> cgcc is a gcc wrappr that calls sparse.  I just trie quickly to patch
> Makefile to run cgcc instead of gcc as HOSTCC an it seems to work:
> 
>   HOSTCC  scripts/basic/fixdep

Agreed, that does it.

> scripts/basic/fixdep.c:117:5: warning: symbol 'insert_extra_deps' was not declared. Should it be static?
> scripts/basic/fixdep.c:118:6: warning: symbol 'target' was not declared. Should it be static?
> scripts/basic/fixdep.c:119:6: warning: symbol 'depfile' was not declared. Should it be static?
> scripts/basic/fixdep.c:120:6: warning: symbol 'cmdline' was not declared. Should it be static?
> 
> But then I run into the known cgcc bug that it also calls sparse when
> called for linking.  Which reminds me that I need to go back and fix
> that.
> 

Thanks to both you and Dan for your help.

-- 
~Randy
--
To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux&nblp;USB Development]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite Secrets]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux