Streamlining the Compile (was Re: autoconfiguring kernel ?)

Jonathan H. Pickard (marxmarv@cris.com)
Mon, 29 Apr 1996 01:41:56 -0700 (PDT)


On Wed, 24 Apr 1996, Sheldon E. Newhouse wrote:
> > Excuse me if this is not the proper place to post this. I had some ideas
> > for possible future development, kernel configuration, etc. Perhaps they
> > have already been discussed. If so, again please excuse me.
> >
> [cool idea snipped]
> >
> > I would be interested in follow-ups to these ideas.
> >
> > Thanks,
> >
> > -sen

J. Sean Connell then masterfully stated:
> Something I'd like to see would be a way to reconfig the kernel and then
> just rebuild those bits that really *need* rebuilding, as opposed to
> having to rebuild the whole kernel. Even if half the kernel had to be
> rebuilt, that'd be preferable to rebuilding *everything*, especially on
> slower machines.

I've been toying lightly with this idea, but just haven't had the time to
implement it, la de da. What would work is to have each variable in the
config file have its own header file, i.e.

#include <linux/config/chr_dev_sg.h>

which contains

#undef CONFIG_CHR_DEV_SG
#define CONFIG_CHR_DEV_SG_MODULE 1

or similar. Of course each .c file in the kernel would include only those
variables it actually cares about.

As of 1.3.96 it looks like that's going to be 125 .h files the easy way, but
a lot of parts like IP firewall/multicast/etc. and some SCSI stuff can be
combined into one file.

I only see two problems with it:
* Someone could turn off module support and then try to compile some
modules. A smart config program could stop this attempt short.
* People on short-name filesystems (Minix14?) will have trouble with things
like "SCSI_GENERIC_NCR5380". If we clip these down to 12 characters plus
the ".h", we then only have to worry about future conflicts (I think?).

Hopefully Linus will be releasing the next version over the next couple of
days so I can have a safe, productive way of spending my days off. =:^)

Comments, anyone?

> --
> J. Sean Connell Systems Software Analyst, ICONZ
> diamond@canuck.gen.nz "Oh life is a glorious cycle of song,
> diamond@iconz.co.nz a medley of extemporanea,
> #include <stddisc.h> And love is a thing that can never go wrong...
> And I'm Queen Marie of Romania."
> I *hate* Sun Type 4 kbs! --Dorothy Parker

-jhp
(who kinda likes DEC LK201 keyboards =:^) )

-- 
~/.signature: Resource deadlock would occur