util/kconfig: Uprev to Linux 6.6's kconfig
Upstream reimplemented KCONFIG_STRICT, just calling it KCONFIG_WERROR. Therefore, adapt our build system and documentation. Upstream is less strict at this time, but there's a proposed patch that got imported. TEST=`util/abuild/abuild -C` output (config.h and config.build) remains the same. Also, the failure type fixed in https://review.coreboot.org/c/coreboot/+/11272 can be detected, which I tested by manually breaking our Kconfig in a similar way. Change-Id: I322fb08a2f7308b93cff71a5dd4136f1a998773b Signed-off-by: Patrick Georgi <patrick@coreboot.org> Reviewed-on: https://review.coreboot.org/c/coreboot/+/79259 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Martin L Roth <gaumless@gmail.com> Reviewed-by: Felix Singer <service+coreboot-gerrit@felixsinger.de>
This commit is contained in:
@@ -497,10 +497,17 @@ void refresh_all_windows(WINDOW *main_window)
|
||||
refresh();
|
||||
}
|
||||
|
||||
/* layman's scrollable window... */
|
||||
void show_scroll_win(WINDOW *main_window,
|
||||
const char *title,
|
||||
const char *text)
|
||||
{
|
||||
(void)show_scroll_win_ext(main_window, title, (char *)text, NULL, NULL, NULL, NULL);
|
||||
}
|
||||
|
||||
/* layman's scrollable window... */
|
||||
int show_scroll_win_ext(WINDOW *main_window, const char *title, char *text,
|
||||
int *vscroll, int *hscroll,
|
||||
extra_key_cb_fn extra_key_cb, void *data)
|
||||
{
|
||||
int res;
|
||||
int total_lines = get_line_no(text);
|
||||
@@ -514,6 +521,12 @@ void show_scroll_win(WINDOW *main_window,
|
||||
WINDOW *win;
|
||||
WINDOW *pad;
|
||||
PANEL *panel;
|
||||
bool done = false;
|
||||
|
||||
if (hscroll)
|
||||
start_x = *hscroll;
|
||||
if (vscroll)
|
||||
start_y = *vscroll;
|
||||
|
||||
getmaxyx(stdscr, lines, columns);
|
||||
|
||||
@@ -549,8 +562,7 @@ void show_scroll_win(WINDOW *main_window,
|
||||
panel = new_panel(win);
|
||||
|
||||
/* handle scrolling */
|
||||
do {
|
||||
|
||||
while (!done) {
|
||||
copywin(pad, win, start_y, start_x, 2, 2, text_lines,
|
||||
text_cols, 0);
|
||||
print_in_middle(win,
|
||||
@@ -593,8 +605,18 @@ void show_scroll_win(WINDOW *main_window,
|
||||
case 'l':
|
||||
start_x++;
|
||||
break;
|
||||
default:
|
||||
if (extra_key_cb) {
|
||||
size_t start = (get_line(text, start_y) - text);
|
||||
size_t end = (get_line(text, start_y + text_lines) - text);
|
||||
|
||||
if (extra_key_cb(res, start, end, data)) {
|
||||
done = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (res == 10 || res == 27 || res == 'q' ||
|
||||
if (res == 0 || res == 10 || res == 27 || res == 'q' ||
|
||||
res == KEY_F(F_HELP) || res == KEY_F(F_BACK) ||
|
||||
res == KEY_F(F_EXIT))
|
||||
break;
|
||||
@@ -606,9 +628,14 @@ void show_scroll_win(WINDOW *main_window,
|
||||
start_x = 0;
|
||||
if (start_x >= total_cols-text_cols)
|
||||
start_x = total_cols-text_cols;
|
||||
} while (res);
|
||||
}
|
||||
|
||||
if (hscroll)
|
||||
*hscroll = start_x;
|
||||
if (vscroll)
|
||||
*vscroll = start_y;
|
||||
del_panel(panel);
|
||||
delwin(win);
|
||||
refresh_all_windows(main_window);
|
||||
return res;
|
||||
}
|
||||
|
Reference in New Issue
Block a user