[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <s5hk5d4xzw0.wl%tiwai@suse.de>
Date: Mon, 22 Sep 2008 12:01:51 +0200
From: Takashi Iwai <tiwai@...e.de>
To: "Chris Li" <lkml@...isli.org>
Cc: "Giacomo A. Catenazzi" <cate@...eee.net>,
"Mauro Carvalho Chehab" <mchehab@...radead.org>,
"Steven Rostedt" <rostedt@...dmis.org>,
linux-kernel@...r.kernel.org
Subject: Re: diet-kconfig: a script to trim unneeded kconfigs
At Fri, 19 Sep 2008 16:55:51 -0700,
Chris Li wrote:
>
> On Fri, Sep 19, 2008 at 9:01 AM, Takashi Iwai <tiwai@...e.de> wrote:
> > Yes. Your stuff would be actually helpful for people who want
> > a really slim kernel config.
>
> Incidentally, I wrote such a script as well. In 64 lines of python code.
> I attach the script in question in the mail. I use a approach very
> similar to yours. But I work around some of the nasty part.
Thanks, I'll check yours too soon.
> It needs to start with kernel config has most of the modules enabled.
> Most of the kernel config from the linux distribution is like that.
> Then it try to parse the Kbuild looking for what kernel config produce
> what module. It is not a 1 to 1 mapping.
>
> Once we have the mapping. It open /proc/modules to go over every
> module. Remove the config which can produce those module from the
> mapping.
>
> Now we have a blacklist of config produce modules but not the one we want.
>
> Then the last stage is just open a config file and filter out the config
> option on the blacklist. Write the result to a new config file.
I think a whitelist would be useful, too, e.g. for hotplug devices
like usb.
> I avoid arch/ and firmware/ because it is nasty. I figure module in
> arch/ is small enough I don't mind building it. And the firmware directory,
> if I don't build the module loads it. Those firmware will automatically skipped
> any way.
Agreed.
> The little tricky part is some thing like this:
> ========================
> ifeq ($(CONFIG_BLK_DEV_CMD640), m)
> obj-m += cmd640.o
> endif
> ========================
> Internally it get convert it into:
> "obj-$(CONFIG_BLK_DEV_CMD640) += cmd640.o"
This should be fixed in Makefile.
Care to submit a patch?
Takashi
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists