Re: kbuild + kconfig: Updates
From: Sam Ravnborg
Date: Mon Aug 16 2004 - 13:53:25 EST
On Sun, Aug 15, 2004 at 09:42:29PM +0100, viro@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 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
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/