All pastes #28354 Raw Edit

Mine

public text v1 · immutable
#28354 ·published 2005-11-11 13:47 UTC
rendered paste body
diff -urNp --exclude-from=/home/davej/.exclude linux-600/scripts/kconfig/conf.c linux-800/scripts/kconfig/conf.c
--- linux-600/scripts/kconfig/conf.c
+++ linux-800/scripts/kconfig/conf.c
@@ -20,6 +20,7 @@ enum {
 	ask_all,
 	ask_new,
 	ask_silent,
+	dont_ask,
 	set_default,
 	set_yes,
 	set_mod,
@@ -37,6 +37,8 @@ static struct menu *rootEntry;
 
 static char nohelp_text[] = N_("Sorry, no help available for this option yet.\n");
 
+static int return_value = 0;
+
 static void strip(char *str)
 {
 	char *p = str;
@@ -93,6 +96,12 @@ static void conf_askvalue(struct symbol 
 		fflush(stdout);
 		fgets(line, 128, stdin);
 		return;
+	case dont_ask:
+		if (!sym_has_value(sym)) {
+			fprintf(stderr,"CONFIG_%s\n",sym->name);
+			return_value++;
+		}
+		return;
 	case set_default:
 		printf("%s\n", def);
 		return;
@@ -337,6 +346,10 @@ static int conf_choice(struct menu *menu
 			printf("?");
 		printf("]: ");
 		switch (input_mode) {
+		case dont_ask:
+			cnt = def;
+			printf("%d\n", cnt);
+			break;
 		case ask_new:
 		case ask_silent:
 			if (!is_new) {
@@ -472,7 +485,10 @@ static void check_conf(struct menu *menu
 			if (!conf_cnt++)
 				printf("*\n* Restart config...\n*\n");
 			rootEntry = menu_get_parent_menu(menu);
-			conf(rootEntry);
+			if (input_mode == dont_ask)
+				fprintf(stderr,"CONFIG_%s\n",sym->name);
+			else
+				conf(rootEntry);
 		}
 		if (sym_is_choice(sym) && sym_get_tristate_value(sym) != mod)
 			return;
@@ -493,6 +509,9 @@ int main(int ac, char **av)
 		case 'o':
 			input_mode = ask_new;
 			break;
+		case 'b':
+			input_mode = dont_ask;
+			break;
 		case 's':
 			input_mode = ask_silent;
 			valid_stdin = isatty(0) && isatty(1) && isatty(2);
@@ -557,6 +576,7 @@ int main(int ac, char **av)
 		}
 	case ask_all:
 	case ask_new:
+	case dont_ask:
 		conf_read(NULL);
 		break;
 	default:
@@ -594,10 +594,10 @@ int main(int ac, char **av)
 	do {
 		conf_cnt = 0;
 		check_conf(&rootmenu);
-	} while (conf_cnt);
+	} while ((conf_cnt) && (input_mode != dont_ask));
 	if (conf_write(NULL)) {
 		fprintf(stderr, _("\n*** Error during writing of the kernel configuration.\n\n"));
 		return 1;
 	}
-	return 0;
+	return return_value;
 }
diff -urNp --exclude-from=/home/davej/.exclude linux-600/scripts/kconfig/Makefile linux-800/scripts/kconfig/Makefile
--- linux-600/scripts/kconfig/Makefile
+++ linux-800/scripts/kconfig/Makefile
@@ -23,6 +23,10 @@ oldconfig: $(obj)/conf
 silentoldconfig: $(obj)/conf
 	$< -s arch/$(ARCH)/Kconfig
 
+nonint_oldconfig: scripts/kconfig/conf
+	./scripts/kconfig/conf -b arch/$(ARCH)/Kconfig
+
+
 .PHONY: randconfig allyesconfig allnoconfig allmodconfig defconfig
 
 randconfig: $(obj)/conf
--- linux-2.6.12/scripts/kconfig/confdata.c~	2005-06-22 13:17:13.000000000 -0400
+++ linux-2.6.12/scripts/kconfig/confdata.c	2005-06-22 13:17:23.000000000 -0400
@@ -129,7 +129,7 @@ int conf_read(const char *name)
 				continue;
 			sym = sym_find(line + 9);
 			if (!sym) {
-				fprintf(stderr, "%s:%d: trying to assign nonexistent symbol %s\n", name, lineno, line + 9);
+				//fprintf(stderr, "%s:%d: trying to assign nonexistent symbol %s\n", name, lineno, line + 9);
 				break;
 			}
 			switch (sym->type) {
@@ -154,7 +154,7 @@ int conf_read(const char *name)
 				*p2 = 0;
 			sym = sym_find(line + 7);
 			if (!sym) {
-				fprintf(stderr, "%s:%d: trying to assign nonexistent symbol %s\n", name, lineno, line + 7);
+				//fprintf(stderr, "%s:%d: trying to assign nonexistent symbol %s\n", name, lineno, line + 7);
 				break;
 			}
 			switch (sym->type) {