Re: kbuild + kconfig: Updates

Sam Ravnborg
2004-08-16T18:49:38Z

On Sun, Aug 15, 2004 at 09:42:29PM +0100, viro@parcelfarce.linux.theplanet.co.uk wrote:
>
> Speaking of kbuild, is there any reasonable way to do check-only runs?
> Simple "set CC et.al. to scripts that will create target and do nothing
> else" doesn't work for obvious reasons - we have some stuff that really
> has to be compiled (e.g. empty.c + some arch-dependent files). Same
> goes for make -n C=1 | grep sparse | ... variants.

Usage:
make C=2

===== scripts/Makefile.build 1.47 vs edited =====
--- 1.47/scripts/Makefile.build 2004-08-15 21:54:06 +02:00
+++ edited/scripts/Makefile.build 2004-08-16 22:38:51 +02:00
@@ -85,6 +85,9 @@
ifneq ($(KBUILD_CHECKSRC),0)
quiet_cmd_checksrc = CHECK $<
cmd_checksrc = $(CHECK) $(c_flags) $< ;
+ ifeq ($(KBUILD_CHECKSRC),2)
+ cmd_force_checksrc = $(call cmd,checksrc)
+ endif
endif

@@ -182,11 +185,13 @@
# Built-in and composite module parts

%.o: %.c FORCE
+ $(cmd_force_checksrc)
$(call if_changed_rule,cc_o_c)

# Single-part modules are special since we need to mark them in $(MODVERDIR)

$(single-used-m): %.o: %.c FORCE
+ $(cmd_force_checksrc)
$(call if_changed_rule,cc_o_c)
@{ echo $(@:.o=.ko); echo $@; } > $(MODVERDIR)/$(@F:.o=.mod)

That should do it?
I will push this if you are OK with it.

>
> Another thing that would be very nice to have: analog of allmodconfig with
> some options pre-set. Trivial cases can be hanlded by patching Kconfig
> (basically, adding depends on BROKEN), but IWBN to have something like
> make allmodconfig PRESET=<file that looks like a subset of .config>...

Agree. Discussed a long time ago if we should introduce
preprocessed _defconfig files, but people told me
there were too little in common.

IIRC it is possible just to add to a .config file, and then the last
assignment will decide.
But I have not tested it since long time ago so I may be wrong.

Sam