util/kconfig: Uprev to Linux 5.17's kconfig

Another upstream refactoring, another local patch gone!

TEST=`util/abuild/abuild -C` output (build.h and build.conf) remains
the same

Change-Id: I0f99dcbd8ecc7256551f0a6e2c83c060cb1999b6
Signed-off-by: Patrick Georgi <patrick@coreboot.org>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/66046
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Elyes Haouas <ehaouas@noos.fr>
This commit is contained in:
Patrick Georgi
2022-10-28 01:00:26 +02:00
committed by Patrick Georgi
parent 4c9b9e9709
commit 7eb03cb657
13 changed files with 57 additions and 81 deletions

View File

@@ -19,7 +19,7 @@ Index: kconfig/confdata.c
===================================================================
--- kconfig.orig/confdata.c
+++ kconfig/confdata.c
@@ -428,6 +428,7 @@ load:
@@ -430,6 +430,7 @@ load:
if (def == S_DEF_USER) {
sym = sym_find(line + 2 + strlen(CONFIG_));
if (!sym) {
@@ -27,7 +27,7 @@ Index: kconfig/confdata.c
conf_set_changed(true);
continue;
}
@@ -510,6 +511,13 @@ load:
@@ -512,6 +513,13 @@ load:
}
free(line);
fclose(in);

View File

@@ -40,7 +40,7 @@ Index: kconfig/confdata.c
static void conf_default_message_callback(const char *s)
{
printf("#\n# ");
@@ -438,7 +448,7 @@ load:
@@ -440,7 +450,7 @@ load:
sym->type = S_BOOLEAN;
}
if (sym->flags & def_flags) {
@@ -49,7 +49,7 @@ Index: kconfig/confdata.c
}
switch (sym->type) {
case S_BOOLEAN:
@@ -477,7 +487,7 @@ load:
@@ -479,7 +489,7 @@ load:
}
if (sym->flags & def_flags) {
@@ -58,7 +58,7 @@ Index: kconfig/confdata.c
}
if (conf_set_sym_val(sym, def, def_flags, p))
continue;
@@ -502,7 +512,7 @@ load:
@@ -504,7 +514,7 @@ load:
break;
case yes:
if (cs->def[def].tri != no)

View File

@@ -14,7 +14,7 @@ Index: kconfig/conf.c
===================================================================
--- kconfig.orig/conf.c
+++ kconfig/conf.c
@@ -889,7 +889,7 @@ int main(int ac, char **av)
@@ -892,7 +892,7 @@ int main(int ac, char **av)
if (input_mode == savedefconfig) {
if (conf_write_defconfig(defconfig_file)) {

View File

@@ -24,7 +24,7 @@ Index: kconfig/confdata.c
===================================================================
--- kconfig.orig/confdata.c
+++ kconfig/confdata.c
@@ -438,7 +438,9 @@ load:
@@ -440,7 +440,9 @@ load:
if (def == S_DEF_USER) {
sym = sym_find(line + 2 + strlen(CONFIG_));
if (!sym) {

View File

@@ -36,7 +36,7 @@ Index: kconfig/conf.c
static void conf(struct menu *menu);
static void check_conf(struct menu *menu);
@@ -721,6 +723,7 @@ int main(int ac, char **av)
@@ -720,6 +722,7 @@ int main(int ac, char **av)
const char *progname = av[0];
int opt;
const char *name, *defconfig_file = NULL /* gcc uninit */;
@@ -62,7 +62,7 @@ Index: kconfig/confdata.c
===================================================================
--- kconfig.orig/confdata.c
+++ kconfig/confdata.c
@@ -528,11 +528,7 @@ load:
@@ -530,11 +530,7 @@ load:
free(line);
fclose(in);

View File

@@ -27,21 +27,21 @@ Index: kconfig/confdata.c
===================================================================
--- kconfig.orig/confdata.c
+++ kconfig/confdata.c
@@ -720,7 +720,12 @@ static void print_symbol_for_dotconfig(F
@@ -722,7 +722,12 @@ static void print_symbol_for_dotconfig(F
static void print_symbol_for_autoconf(FILE *fp, struct symbol *sym)
{
- __print_symbol(fp, sym, OUTPUT_N_NONE, true);
- __print_symbol(fp, sym, OUTPUT_N_NONE, false);
+ int print_negatives = getenv("KCONFIG_NEGATIVES") != NULL;
+ enum output_n out = OUTPUT_N_NONE;
+ if (print_negatives) {
+ out = OUTPUT_N;
+ }
+ __print_symbol(fp, sym, out, true);
+ __print_symbol(fp, sym, out, false);
}
void print_symbol_for_listconfig(struct symbol *sym)
@@ -745,6 +750,10 @@ static void print_symbol_for_c(FILE *fp,
@@ -747,6 +752,10 @@ static void print_symbol_for_c(FILE *fp,
case S_TRISTATE:
switch (*val) {
case 'n':
@@ -52,7 +52,7 @@ Index: kconfig/confdata.c
return;
case 'm':
sym_suffix = "_MODULE";
@@ -756,6 +765,12 @@ static void print_symbol_for_c(FILE *fp,
@@ -758,6 +767,12 @@ static void print_symbol_for_c(FILE *fp,
case S_HEX:
if (val[0] != '0' || (val[1] != 'x' && val[1] != 'X'))
val_prefix = "0x";
@@ -65,7 +65,7 @@ Index: kconfig/confdata.c
break;
case S_STRING:
escaped = escape_string_value(val);
@@ -1106,8 +1121,9 @@ static int __conf_write_autoconf(const c
@@ -1113,8 +1128,9 @@ static int __conf_write_autoconf(const c
conf_write_heading(file, comment_style);

View File

@@ -1,27 +0,0 @@
Index: kconfig/confdata.c
===================================================================
--- kconfig.orig/confdata.c
+++ kconfig/confdata.c
@@ -230,6 +230,13 @@ static const char *conf_get_autoheader_n
return name ? name : "include/generated/autoconf.h";
}
+static const char *conf_get_autobase_name(void)
+{
+ char *name = getenv("KCONFIG_SPLITCONFIG");
+
+ return name ? name : "include/config/";
+}
+
static int conf_set_sym_val(struct symbol *sym, int def, int def_flags, char *p)
{
char *p2;
@@ -1031,7 +1038,7 @@ static int conf_touch_deps(void)
struct symbol *sym;
int res, i;
- strcpy(depfile_path, "include/config/");
+ strcpy(depfile_path, conf_get_autobase_name());
depfile_prefix_len = strlen(depfile_path);
name = conf_get_autoconfig_name();

View File

@@ -8,5 +8,4 @@
0008-kconfig-Add-wildcard-support-for-source.patch
0009-util-kconfig-Allow-emitting-false-booleans-into-kconfig-output.patch
0010-reenable-source-in-choice.patch
0011-remove-include-config-hardcodes.patch
0013-util-kconfig-detect-ncurses-on-FreeBSD.patch