Re: What about make mergeconfig ?

From: Jan Engelhardt
Date: Wed Oct 25 2006 - 07:39:53 EST



>Can't you do that with just a sort command?
>
> sort .config other.config > new.config

That does not work where .config and other.config have the same symbol
listed, kconfig will bark and use the first value encountered. Because I
do have exactly that problem with my patch series (changes some Ys to
Ms), I am in need of the following patch to Kconfig TDTRT.

This is probably also what the OP is looking for, except that it does
not require a special 'mergeconfig', but works with all 'oldconfig',
'menuconfig', xconfig, etc.


kconfig_override.diff
Signed-off-by: Jan Engelhardt <jengelh@xxxxxx>

Index: linux-2.6.18_rc4/scripts/kconfig/confdata.c
===================================================================
--- linux-2.6.18_rc4.orig/scripts/kconfig/confdata.c
+++ linux-2.6.18_rc4/scripts/kconfig/confdata.c
@@ -170,8 +170,7 @@ load:
sym->type = S_BOOLEAN;
}
if (sym->flags & def_flags) {
- conf_warning("trying to reassign symbol %s", sym->name);
- break;
+ conf_warning("override: reassigning to symbol %s", sym->name);
}
switch (sym->type) {
case S_BOOLEAN:
@@ -207,8 +206,7 @@ load:
sym->type = S_OTHER;
}
if (sym->flags & def_flags) {
- conf_warning("trying to reassign symbol %s", sym->name);
- break;
+ conf_warning("override: reassigning to symbol %s", sym->name);
}
switch (sym->type) {
case S_TRISTATE:
@@ -284,11 +282,9 @@ load:
}
break;
case yes:
- if (cs->def[def].tri != no) {
- conf_warning("%s creates inconsistent choice state", sym->name);
- cs->flags &= ~def_flags;
- } else
- cs->def[def].val = sym;
+ if(cs->def[def].tri != no)
+ conf_warning("override: %s turns state choice", sym->name);
+ cs->def[def].val = sym;
break;
}
cs->def[def].tri = E_OR(cs->def[def].tri, sym->def[def].tri);
#<EOF>


-`J'
--
-
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/