debian/patches/debian/scripts-kconfig-reportoldconfig.patch:

Ignore unchangable options.

svn path=/dists/trunk/linux-2.6/; revision=13155
This commit is contained in:
Bastian Blank 2009-03-17 16:58:06 +00:00
parent 0f28ca7c7a
commit 3f198a60e5
1 changed files with 13 additions and 22 deletions

View File

@ -105,10 +105,10 @@ index 3e1057f..e526d00 100644
/* silentoldconfig is used during the build so we shall update autoconf.
* All other commands are only used to generate a config.
diff --git a/scripts/kconfig/confdata.c b/scripts/kconfig/confdata.c
index 830d9ea..2e80693 100644
index 830d9ea..faf0b50 100644
--- a/scripts/kconfig/confdata.c
+++ b/scripts/kconfig/confdata.c
@@ -786,6 +786,94 @@ int conf_write_autoconf(void)
@@ -786,6 +786,85 @@ int conf_write_autoconf(void)
return 0;
}
@ -116,7 +116,7 @@ index 830d9ea..2e80693 100644
+{
+ struct symbol *sym;
+ struct menu *menu;
+ int type, l;
+ int l;
+ const char *str;
+
+ fprintf(stdout, "\n#\n"
@ -125,23 +125,13 @@ index 830d9ea..2e80693 100644
+ menu = rootmenu.list;
+ while (menu) {
+ sym = menu->sym;
+ if (!sym) {
+ if (!menu_is_visible(menu))
+ goto next;
+ } else if (!(sym->flags & SYMBOL_CHOICE)) {
+ sym_calc_value(sym);
+ if ((sym->flags & (SYMBOL_WRITE | SYMBOL_NEW)) !=
+ (SYMBOL_WRITE | SYMBOL_NEW))
+ goto next;
+ if (sym->visible == no)
+ goto next;
+ type = sym->type;
+ if (type == S_TRISTATE) {
+ sym_calc_value(modules_sym);
+ if (modules_sym->curr.tri == no)
+ type = S_BOOLEAN;
+ }
+ switch (type) {
+ if (sym &&
+ !(sym->flags & SYMBOL_CHOICE) &&
+ sym->flags & SYMBOL_WRITE &&
+ sym->flags & SYMBOL_NEW &&
+ sym->visible != no &&
+ sym_is_changable(sym)) {
+ switch (sym->type) {
+ case S_BOOLEAN:
+ case S_TRISTATE:
+ switch (sym_get_tristate_value(sym)) {
@ -181,10 +171,11 @@ index 830d9ea..2e80693 100644
+ str = sym_get_string_value(sym);
+ fprintf(stdout, "CONFIG_%s=%s\n", sym->name, str);
+ break;
+ default:
+ break;
+ }
+ }
+
+ next:
+ if (menu->list) {
+ menu = menu->list;
+ continue;
@ -203,7 +194,7 @@ index 830d9ea..2e80693 100644
static int sym_change_count;
static void (*conf_changed_callback)(void);
@@ -824,6 +912,7 @@ void conf_set_all_new_symbols(enum conf_def_mode mode)
@@ -824,6 +903,7 @@ void conf_set_all_new_symbols(enum conf_def_mode mode)
for_all_symbols(i, sym) {
if (sym_has_value(sym))
continue;