Re: Background to the argument about CML2 design philosophy

Keith Owens
2001-05-22T01:00:06Z

On Mon, 21 May 2001 16:38:34 -0400,
John Stoffel <stoffel@casc.com> wrote:
>All that CML2 does is enforce dependencies in the configuration
>language. You can't make a .config which conflicts. Admittedly
>there's nothing stopping you from hacking it with vi after the fact,
>but why?

CML2 will not stop you hacking .config by hand. But the 2.5 makefile
rewrite will, because we have had too many bug reports caused by people
who hand edited .config, did not revalidate it and generated invalid
kernels. Yes, you can hand edit .config. No, you cannot compile until
.config has been (re-)validated.

# Not a real dependency, this checks for hand editing of .config.
$(KBUILD_OBJTREE)include/linux/autoconf.h: $(KBUILD_OBJTREE).config
@echo Your .config is newer than include/linux/autoconf.h, this should not happen.
@echo Always run make one of "{menu,old,x}config" after manually updating .config.
@/bin/false

And before people complain: Don't create a config that violates the CML
rules, correct the CML rules, the Makefiles and the source so .config
is valid. The kernel build requires a valid .config.