2014-10-29 23:16:10

by Luis Chamberlain

[permalink] [raw]
Subject: Tool to match kernel C file to CONFIG symbol

Anyone familiar with a tool to match a specific C file to a respective
CONFIG symbol on the kernel? I'd prefer if its written in C or Python.
This should be easy to write if we don't have it yet.

Luis


2014-10-29 23:22:28

by Luis Chamberlain

[permalink] [raw]
Subject: Re: Tool to match kernel C file to CONFIG symbol

On Wed, Oct 29, 2014 at 4:15 PM, Luis R. Rodriguez
<[email protected]> wrote:
> Anyone familiar with a tool to match a specific C file to a respective
> CONFIG symbol on the kernel? I'd prefer if its written in C or Python.
> This should be easy to write if we don't have it yet.

Peter, didn't you have such tool already?

Luis

2014-10-30 06:16:10

by Julia Lawall

[permalink] [raw]
Subject: Re: Tool to match kernel C file to CONFIG symbol



On Wed, 29 Oct 2014, Luis R. Rodriguez wrote:

> On Wed, Oct 29, 2014 at 4:15 PM, Luis R. Rodriguez
> <[email protected]> wrote:
> > Anyone familiar with a tool to match a specific C file to a respective
> > CONFIG symbol on the kernel? I'd prefer if its written in C or Python.
> > This should be easy to write if we don't have it yet.
>
> Peter, didn't you have such tool already?

I think that the Erlangen people can help you (added to CC).

I'm not sure which way you want to go: What config symbol will get my file
compiled, or if I turn on this config symbol, what files will I get. I
think that Stefan's Vampyr tool can help with the first.

julia

2014-10-30 09:06:33

by Peter Senna Tschudin

[permalink] [raw]
Subject: Re: Tool to match kernel C file to CONFIG symbol

I have a dirty and ugly Perl script that return source files for a
given set of Kconfig symbols:

https://gist.github.com/petersenna/6329591

On Thu, Oct 30, 2014 at 7:16 AM, Julia Lawall <[email protected]> wrote:
>
>
> On Wed, 29 Oct 2014, Luis R. Rodriguez wrote:
>
>> On Wed, Oct 29, 2014 at 4:15 PM, Luis R. Rodriguez
>> <[email protected]> wrote:
>> > Anyone familiar with a tool to match a specific C file to a respective
>> > CONFIG symbol on the kernel? I'd prefer if its written in C or Python.
>> > This should be easy to write if we don't have it yet.
>>
>> Peter, didn't you have such tool already?
>
> I think that the Erlangen people can help you (added to CC).
>
> I'm not sure which way you want to go: What config symbol will get my file
> compiled, or if I turn on this config symbol, what files will I get. I
> think that Stefan's Vampyr tool can help with the first.
>
> julia



--
Peter

2014-10-30 10:17:41

by Andreas Ruprecht

[permalink] [raw]
Subject: Re: Re: Tool to match kernel C file to CONFIG symbol

Hi all,

actually the problem isn't that easy... some of the information from the
Kbuild files is not entirely straight-forward to extract.

If you're interested in the former (that is, what config symbols have to
be enabled to have a file compiled), there is a Python tool called
"golem" in the toolsuite[0] from our group which determines the
preconditions for files to be built (called with parameter "-i"). Sadly
it currently takes a few hours to finish as it probes the build system
with changing partial configurations.

I'm currently working on a faster combined parsing/probing approach and
could make an early development snapshot of the parser available to you,
please contact me directly if you want to have a look at that.

For something similar to the latter problem (which files get compiled
from a specific configuration) golem can be called with the "-c"
parameter and a source file to determine if the file is compiled with
the current configuration. You could use that to match a configuration
option to a file. Alternatively, you can use the "-l" parameter to see a
list of all files compiled with the current configuration.

Hope this helps,

Andreas

[0] https://undertaker.cs.fau.de

On 30.10.2014 07:16, Julia Lawall wrote:
>
>
> On Wed, 29 Oct 2014, Luis R. Rodriguez wrote:
>
>> On Wed, Oct 29, 2014 at 4:15 PM, Luis R. Rodriguez
>> <[email protected]> wrote:
>>> Anyone familiar with a tool to match a specific C file to a respective
>>> CONFIG symbol on the kernel? I'd prefer if its written in C or Python.
>>> This should be easy to write if we don't have it yet.
>>
>> Peter, didn't you have such tool already?
>
> I think that the Erlangen people can help you (added to CC).
>
> I'm not sure which way you want to go: What config symbol will get my file
> compiled, or if I turn on this config symbol, what files will I get. I
> think that Stefan's Vampyr tool can help with the first.
>
> julia
>