* [Buildroot] [PATCH v2 0/4] Fix compiler warnings in support/kconfig
@ 2025-07-16 18:15 Edgar Bonet via buildroot
2025-07-16 18:17 ` [Buildroot] [PATCH v2 1/4] support/kconfig/patches: make all patches quilt-friendly Edgar Bonet via buildroot
` (3 more replies)
0 siblings, 4 replies; 9+ messages in thread
From: Edgar Bonet via buildroot @ 2025-07-16 18:15 UTC (permalink / raw)
To: Buildroot development; +Cc: Petr Vorel, Julien Olivain
This a respin and an extension of a previous patch,[1] which has been
marked as “Changes Requested” because it failed to update the
support/kconfig/patches directory.
The first two patches in this series are meant to ensure the contents of
support/kconfig/patches is in sync with the current sources in
support/kconfig. The second patch creates a missing file in patches/. It
could have instead updated patch 14, but that would force the fourth
patch in this series to create an inconsistency.
The third patch is a respin of the previous version of this series. It
now updates the relevant entry in patches/.
The fourth patch fixes a warning in “make nconfig” very similar to the
warning fixed by the third patch.
Changes v1 -> v2:
- patches 1, 2 and 4 are new
- patch 3 now updates patches/24-fix--Wformat-warnings.patch, and its
log message is slightly reworded.
[1] https://lore.kernel.org/buildroot/4a4473d3-56d6-4576-9a8f-5b708a1569df@grenoble.cnrs.fr/
Edgar Bonet (4):
support/kconfig/patches: make all patches quilt-friendly
support/kconfig/patches: add missing patch
support/kconfig: fix compiler warning in util.c
support/kconfig: fix compiler warning in nconf.c
support/kconfig/nconf.c | 2 +-
...config-lxdialog-fix-check-with-GCC14.patch | 11 ++--
...onfig-mn-conf-handle-backspace-H-key.patch | 31 ++++++------
.../patches/24-fix--Wformat-warnings.patch | 50 +++++++++++++++++++
support/kconfig/patches/series | 1 +
support/kconfig/util.c | 2 +-
6 files changed, 71 insertions(+), 26 deletions(-)
create mode 100644 support/kconfig/patches/24-fix--Wformat-warnings.patch
--
2.43.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH v2 1/4] support/kconfig/patches: make all patches quilt-friendly
2025-07-16 18:15 [Buildroot] [PATCH v2 0/4] Fix compiler warnings in support/kconfig Edgar Bonet via buildroot
@ 2025-07-16 18:17 ` Edgar Bonet via buildroot
2025-07-16 20:39 ` Petr Vorel
2025-07-16 18:18 ` [Buildroot] [PATCH v2 2/4] support/kconfig/patches: add missing patch Edgar Bonet via buildroot
` (2 subsequent siblings)
3 siblings, 1 reply; 9+ messages in thread
From: Edgar Bonet via buildroot @ 2025-07-16 18:17 UTC (permalink / raw)
To: Buildroot development; +Cc: Petr Vorel, Julien Olivain
According to support/kconfig/README.buildroot, the patches in
support/kconfig/patches/ are meant to be applied by quilt. However, two
of those patches are in git format, which makes quilt error out with:
Applying patch patches/22-kconfig-lxdialog-fix-check-with-GCC14.patch
can't find file to patch at input line 32
[...]
No file to patch. Skipping patch.
Fix the format to make quilt happy.
Signed-off-by: Edgar Bonet <bonet@grenoble.cnrs.fr>
---
...config-lxdialog-fix-check-with-GCC14.patch | 11 +++----
...onfig-mn-conf-handle-backspace-H-key.patch | 31 +++++++++----------
2 files changed, 18 insertions(+), 24 deletions(-)
diff --git a/support/kconfig/patches/22-kconfig-lxdialog-fix-check-with-GCC14.patch b/support/kconfig/patches/22-kconfig-lxdialog-fix-check-with-GCC14.patch
index 41081bb45d..edcc857190 100644
--- a/support/kconfig/patches/22-kconfig-lxdialog-fix-check-with-GCC14.patch
+++ b/support/kconfig/patches/22-kconfig-lxdialog-fix-check-with-GCC14.patch
@@ -25,10 +25,10 @@ Tested-by: Petr Vorel <petr.vorel@gmail.com>
kconfig/lxdialog/check-lxdialog.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/kconfig/lxdialog/check-lxdialog.sh b/kconfig/lxdialog/check-lxdialog.sh
-index 16cd9a3186..27d6c30a57 100755
---- a/kconfig/lxdialog/check-lxdialog.sh
-+++ b/kconfig/lxdialog/check-lxdialog.sh
+Index: kconfig.new/lxdialog/check-lxdialog.sh
+===================================================================
+--- kconfig.orig/lxdialog/check-lxdialog.sh
++++ kconfig/lxdialog/check-lxdialog.sh
@@ -48,7 +48,7 @@ trap "rm -f $tmp" 0 1 2 3 15
check() {
$cc -x c - -o $tmp 2>/dev/null <<'EOF'
@@ -38,6 +38,3 @@ index 16cd9a3186..27d6c30a57 100755
EOF
if [ $? != 0 ]; then
echo " *** Unable to find the ncurses libraries or the" 1>&2
---
-2.44.0
-
diff --git a/support/kconfig/patches/23-kconfig-mn-conf-handle-backspace-H-key.patch b/support/kconfig/patches/23-kconfig-mn-conf-handle-backspace-H-key.patch
index 6e32115f70..f72f9f339b 100644
--- a/support/kconfig/patches/23-kconfig-mn-conf-handle-backspace-H-key.patch
+++ b/support/kconfig/patches/23-kconfig-mn-conf-handle-backspace-H-key.patch
@@ -16,11 +16,11 @@ Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
kconfig/nconf.gui.c | 3 ++-
3 files changed, 5 insertions(+), 3 deletions(-)
-diff --git a/kconfig/lxdialog/inputbox.c b/kconfig/lxdialog/inputbox.c
-index 611945611bf8..1dcfb288ee63 100644
---- a/kconfig/lxdialog/inputbox.c
-+++ b/kconfig/lxdialog/inputbox.c
-@@ -113,7 +113,8 @@ int dialog_inputbox(const char *title, const char *prompt, int height, int width
+Index: kconfig/lxdialog/inputbox.c
+===================================================================
+--- kconfig.orig/lxdialog/inputbox.c
++++ kconfig/lxdialog/inputbox.c
+@@ -126,7 +126,8 @@ int dialog_inputbox(const char *title, const char *prompt, int height, int width
case KEY_DOWN:
break;
case KEY_BACKSPACE:
@@ -30,10 +30,10 @@ index 611945611bf8..1dcfb288ee63 100644
if (pos) {
wattrset(dialog, dlg.inputbox.atr);
if (input_x == 0) {
-diff --git a/kconfig/nconf.c b/kconfig/nconf.c
-index a4670f4e825a..ac92c0ded6c5 100644
---- a/kconfig/nconf.c
-+++ b/kconfig/nconf.c
+Index: kconfig/nconf.c
+===================================================================
+--- kconfig.orig/nconf.c
++++ kconfig/nconf.c
@@ -1048,7 +1048,7 @@ static int do_match(int key, struct match_state *state, int *ans)
state->match_direction = FIND_NEXT_MATCH_UP;
*ans = get_mext_match(state->pattern,
@@ -43,11 +43,11 @@ index a4670f4e825a..ac92c0ded6c5 100644
state->pattern[strlen(state->pattern)-1] = '\0';
adj_match_dir(&state->match_direction);
} else
-diff --git a/kconfig/nconf.gui.c b/kconfig/nconf.gui.c
-index 7be620a1fcdb..77f525a8617c 100644
---- a/kconfig/nconf.gui.c
-+++ b/kconfig/nconf.gui.c
-@@ -439,7 +439,8 @@ int dialog_inputbox(WINDOW *main_window,
+Index: kconfig/nconf.gui.c
+===================================================================
+--- kconfig.orig/nconf.gui.c
++++ kconfig/nconf.gui.c
+@@ -440,7 +440,8 @@ int dialog_inputbox(WINDOW *main_window,
case KEY_F(F_EXIT):
case KEY_F(F_BACK):
break;
@@ -57,6 +57,3 @@ index 7be620a1fcdb..77f525a8617c 100644
case KEY_BACKSPACE:
if (cursor_position > 0) {
memmove(&result[cursor_position-1],
---
-2.48.1
-
--
2.43.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH v2 2/4] support/kconfig/patches: add missing patch
2025-07-16 18:15 [Buildroot] [PATCH v2 0/4] Fix compiler warnings in support/kconfig Edgar Bonet via buildroot
2025-07-16 18:17 ` [Buildroot] [PATCH v2 1/4] support/kconfig/patches: make all patches quilt-friendly Edgar Bonet via buildroot
@ 2025-07-16 18:18 ` Edgar Bonet via buildroot
2025-07-16 18:19 ` [Buildroot] [PATCH v2 3/4] support/kconfig: fix compiler warning in util.c Edgar Bonet via buildroot
2025-07-16 18:20 ` [Buildroot] [PATCH v2 4/4] support/kconfig: fix compiler warning in nconf.c Edgar Bonet via buildroot
3 siblings, 0 replies; 9+ messages in thread
From: Edgar Bonet via buildroot @ 2025-07-16 18:18 UTC (permalink / raw)
To: Buildroot development; +Cc: Petr Vorel, Julien Olivain
Commit 324612d68e09 ("support/kconfig: fix compiler warnings") updated
two source files in support/kconfig but failed to add a corresponding
patch in the patches/ subdirectory. Let's add it now, for the sake of
maintaining consistency.
Signed-off-by: Edgar Bonet <bonet@grenoble.cnrs.fr>
---
.../patches/24-fix--Wformat-warnings.patch | 37 +++++++++++++++++++
support/kconfig/patches/series | 1 +
2 files changed, 38 insertions(+)
create mode 100644 support/kconfig/patches/24-fix--Wformat-warnings.patch
diff --git a/support/kconfig/patches/24-fix--Wformat-warnings.patch b/support/kconfig/patches/24-fix--Wformat-warnings.patch
new file mode 100644
index 0000000000..4b631e554f
--- /dev/null
+++ b/support/kconfig/patches/24-fix--Wformat-warnings.patch
@@ -0,0 +1,37 @@
+Fix -Wformat-overflow compiler warnings.
+
+Index: kconfig/confdata.c
+===================================================================
+--- kconfig.orig/confdata.c
++++ kconfig/confdata.c
+@@ -744,7 +744,7 @@ int conf_write(const char *name)
+ struct menu *menu;
+ const char *basename;
+ const char *str;
+- char dirname[PATH_MAX+1], tmpname[PATH_MAX+1], newname[PATH_MAX+1];
++ char dirname[PATH_MAX+1], tmpname[PATH_MAX+20], newname[PATH_MAX+1];
+ char *env;
+
+ if (!name)
+@@ -974,7 +974,7 @@ int conf_write_autoconf(void)
+ const char *name;
+ FILE *out, *tristate, *out_h;
+ int i;
+- char dir[PATH_MAX+1], buf[PATH_MAX+1];
++ char dir[PATH_MAX+1], buf[PATH_MAX+20];
+ char *s;
+
+ strcpy(dir, conf_get_configname());
+Index: kconfig/util.c
+===================================================================
+--- kconfig.orig/util.c
++++ kconfig/util.c
+@@ -35,7 +35,7 @@ struct file *file_lookup(const char *nam
+ int file_write_dep(const char *name)
+ {
+ char *str;
+- char buf[PATH_MAX+1], buf2[PATH_MAX+1], dir[PATH_MAX+1];
++ char buf[PATH_MAX+20], buf2[PATH_MAX+1], dir[PATH_MAX+1];
+ struct symbol *sym, *env_sym;
+ struct expr *e;
+ struct file *file;
diff --git a/support/kconfig/patches/series b/support/kconfig/patches/series
index cc176035be..763b679900 100644
--- a/support/kconfig/patches/series
+++ b/support/kconfig/patches/series
@@ -12,3 +12,4 @@
21-Avoid-false-positive-matches-from-comment-lines.patch
22-kconfig-lxdialog-fix-check-with-GCC14.patch
23-kconfig-mn-conf-handle-backspace-H-key.patch
+24-fix--Wformat-warnings.patch
--
2.43.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH v2 3/4] support/kconfig: fix compiler warning in util.c
2025-07-16 18:15 [Buildroot] [PATCH v2 0/4] Fix compiler warnings in support/kconfig Edgar Bonet via buildroot
2025-07-16 18:17 ` [Buildroot] [PATCH v2 1/4] support/kconfig/patches: make all patches quilt-friendly Edgar Bonet via buildroot
2025-07-16 18:18 ` [Buildroot] [PATCH v2 2/4] support/kconfig/patches: add missing patch Edgar Bonet via buildroot
@ 2025-07-16 18:19 ` Edgar Bonet via buildroot
2025-07-16 18:20 ` [Buildroot] [PATCH v2 4/4] support/kconfig: fix compiler warning in nconf.c Edgar Bonet via buildroot
3 siblings, 0 replies; 9+ messages in thread
From: Edgar Bonet via buildroot @ 2025-07-16 18:19 UTC (permalink / raw)
To: Buildroot development; +Cc: Petr Vorel, Julien Olivain
Some make targets such as menuconfig or *_defconfig build code from
support/kconfig. If this is done with host GCC 13, we get the following
compiler warning:
./util.c: In function ‘file_write_dep’:
./util.c:86:26: warning: ‘%s’ directive writing 10 or more bytes into a region of size between 1 and 4097 [-Wformat-overflow=]
86 | sprintf(buf2, "%s%s", dir, name);
| ^~
./util.c:86:9: note: ‘sprintf’ output 11 or more bytes (assuming 4107) into a destination of size 4097
86 | sprintf(buf2, "%s%s", dir, name);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
This is similar to the warnings generated by GCC 9.4 and fixed in
324612d68e09 ("support/kconfig: fix compiler warnings").
Avoid the warning by enlarging the destination buffer of fprintf().
Also, update patches/24-fix--Wformat-warnings.patch to stay in sync with
the code.
Signed-off-by: Edgar Bonet <bonet@grenoble.cnrs.fr>
---
support/kconfig/patches/24-fix--Wformat-warnings.patch | 2 +-
support/kconfig/util.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/support/kconfig/patches/24-fix--Wformat-warnings.patch b/support/kconfig/patches/24-fix--Wformat-warnings.patch
index 4b631e554f..0e8a883edf 100644
--- a/support/kconfig/patches/24-fix--Wformat-warnings.patch
+++ b/support/kconfig/patches/24-fix--Wformat-warnings.patch
@@ -31,7 +31,7 @@ Index: kconfig/util.c
{
char *str;
- char buf[PATH_MAX+1], buf2[PATH_MAX+1], dir[PATH_MAX+1];
-+ char buf[PATH_MAX+20], buf2[PATH_MAX+1], dir[PATH_MAX+1];
++ char buf[PATH_MAX+20], buf2[PATH_MAX+11], dir[PATH_MAX+1];
struct symbol *sym, *env_sym;
struct expr *e;
struct file *file;
diff --git a/support/kconfig/util.c b/support/kconfig/util.c
index 8665f5bb89..86ce994367 100644
--- a/support/kconfig/util.c
+++ b/support/kconfig/util.c
@@ -35,7 +35,7 @@ struct file *file_lookup(const char *name)
int file_write_dep(const char *name)
{
char *str;
- char buf[PATH_MAX+20], buf2[PATH_MAX+1], dir[PATH_MAX+1];
+ char buf[PATH_MAX+20], buf2[PATH_MAX+11], dir[PATH_MAX+1];
struct symbol *sym, *env_sym;
struct expr *e;
struct file *file;
--
2.43.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH v2 4/4] support/kconfig: fix compiler warning in nconf.c
2025-07-16 18:15 [Buildroot] [PATCH v2 0/4] Fix compiler warnings in support/kconfig Edgar Bonet via buildroot
` (2 preceding siblings ...)
2025-07-16 18:19 ` [Buildroot] [PATCH v2 3/4] support/kconfig: fix compiler warning in util.c Edgar Bonet via buildroot
@ 2025-07-16 18:20 ` Edgar Bonet via buildroot
3 siblings, 0 replies; 9+ messages in thread
From: Edgar Bonet via buildroot @ 2025-07-16 18:20 UTC (permalink / raw)
To: Buildroot development; +Cc: Petr Vorel, Julien Olivain
Running “make nconfig” with host GCC 13 gives this warning:
nconf.c: In function ‘item_add_str’:
nconf.c:578:47: warning: ‘%s’ directive output may be truncated writing up to 255 bytes into a region of size between 1 and 256 [-Wformat-truncation=]
578 | snprintf(tmp_str, sizeof(tmp_str), "%s%s",
| ^~
579 | k_menu_items[index].str, new_str);
| ~~~~~~~
nconf.c:578:9: note: ‘snprintf’ output between 1 and 511 bytes into a destination of size 256
578 | snprintf(tmp_str, sizeof(tmp_str), "%s%s",
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
579 | k_menu_items[index].str, new_str);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Fix it by enlarging the destination buffer of snprintf(). Also, update
patches/24-fix--Wformat-warnings.patch accordingly.
Signed-off-by: Edgar Bonet <bonet@grenoble.cnrs.fr>
---
support/kconfig/nconf.c | 2 +-
.../patches/24-fix--Wformat-warnings.patch | 15 ++++++++++++++-
2 files changed, 15 insertions(+), 2 deletions(-)
diff --git a/support/kconfig/nconf.c b/support/kconfig/nconf.c
index e8e1944fa0..e15c1ff425 100644
--- a/support/kconfig/nconf.c
+++ b/support/kconfig/nconf.c
@@ -567,7 +567,7 @@ static void item_add_str(const char *fmt, ...)
va_list ap;
int index = items_num-1;
char new_str[256];
- char tmp_str[256];
+ char tmp_str[512];
if (index < 0)
return;
diff --git a/support/kconfig/patches/24-fix--Wformat-warnings.patch b/support/kconfig/patches/24-fix--Wformat-warnings.patch
index 0e8a883edf..54a66c6970 100644
--- a/support/kconfig/patches/24-fix--Wformat-warnings.patch
+++ b/support/kconfig/patches/24-fix--Wformat-warnings.patch
@@ -1,4 +1,4 @@
-Fix -Wformat-overflow compiler warnings.
+Fix -Wformat-overflow and -Wformat-truncation compiler warnings.
Index: kconfig/confdata.c
===================================================================
@@ -35,3 +35,16 @@ Index: kconfig/util.c
struct symbol *sym, *env_sym;
struct expr *e;
struct file *file;
+Index: kconfig/nconf.c
+===================================================================
+--- kconfig.orig/nconf.c
++++ kconfig/nconf.c
+@@ -567,7 +567,7 @@ static void item_add_str(const char *fmt
+ va_list ap;
+ int index = items_num-1;
+ char new_str[256];
+- char tmp_str[256];
++ char tmp_str[512];
+
+ if (index < 0)
+ return;
--
2.43.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [Buildroot] [PATCH v2 1/4] support/kconfig/patches: make all patches quilt-friendly
2025-07-16 18:17 ` [Buildroot] [PATCH v2 1/4] support/kconfig/patches: make all patches quilt-friendly Edgar Bonet via buildroot
@ 2025-07-16 20:39 ` Petr Vorel
2025-07-16 21:08 ` Edgar Bonet via buildroot
0 siblings, 1 reply; 9+ messages in thread
From: Petr Vorel @ 2025-07-16 20:39 UTC (permalink / raw)
To: Edgar Bonet; +Cc: Buildroot development, Julien Olivain, Yann E. MORIN
Hi Edgar,
> According to support/kconfig/README.buildroot, the patches in
> support/kconfig/patches/ are meant to be applied by quilt. However, two
> of those patches are in git format, which makes quilt error out with:
> Applying patch patches/22-kconfig-lxdialog-fix-check-with-GCC14.patch
> can't find file to patch at input line 32
> [...]
> No file to patch. Skipping patch.
> Fix the format to make quilt happy.
How about using 'git quiltimport' instead?
Kind regards,
Petr
> Signed-off-by: Edgar Bonet <bonet@grenoble.cnrs.fr>
> ---
> ...config-lxdialog-fix-check-with-GCC14.patch | 11 +++----
> ...onfig-mn-conf-handle-backspace-H-key.patch | 31 +++++++++----------
> 2 files changed, 18 insertions(+), 24 deletions(-)
> diff --git a/support/kconfig/patches/22-kconfig-lxdialog-fix-check-with-GCC14.patch b/support/kconfig/patches/22-kconfig-lxdialog-fix-check-with-GCC14.patch
> index 41081bb45d..edcc857190 100644
> --- a/support/kconfig/patches/22-kconfig-lxdialog-fix-check-with-GCC14.patch
> +++ b/support/kconfig/patches/22-kconfig-lxdialog-fix-check-with-GCC14.patch
> @@ -25,10 +25,10 @@ Tested-by: Petr Vorel <petr.vorel@gmail.com>
> kconfig/lxdialog/check-lxdialog.sh | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
> -diff --git a/kconfig/lxdialog/check-lxdialog.sh b/kconfig/lxdialog/check-lxdialog.sh
> -index 16cd9a3186..27d6c30a57 100755
> ---- a/kconfig/lxdialog/check-lxdialog.sh
> -+++ b/kconfig/lxdialog/check-lxdialog.sh
> +Index: kconfig.new/lxdialog/check-lxdialog.sh
> +===================================================================
> +--- kconfig.orig/lxdialog/check-lxdialog.sh
> ++++ kconfig/lxdialog/check-lxdialog.sh
> @@ -48,7 +48,7 @@ trap "rm -f $tmp" 0 1 2 3 15
> check() {
> $cc -x c - -o $tmp 2>/dev/null <<'EOF'
> @@ -38,6 +38,3 @@ index 16cd9a3186..27d6c30a57 100755
> EOF
> if [ $? != 0 ]; then
> echo " *** Unable to find the ncurses libraries or the" 1>&2
> ---
> -2.44.0
> -
> diff --git a/support/kconfig/patches/23-kconfig-mn-conf-handle-backspace-H-key.patch b/support/kconfig/patches/23-kconfig-mn-conf-handle-backspace-H-key.patch
> index 6e32115f70..f72f9f339b 100644
> --- a/support/kconfig/patches/23-kconfig-mn-conf-handle-backspace-H-key.patch
> +++ b/support/kconfig/patches/23-kconfig-mn-conf-handle-backspace-H-key.patch
> @@ -16,11 +16,11 @@ Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
> kconfig/nconf.gui.c | 3 ++-
> 3 files changed, 5 insertions(+), 3 deletions(-)
> -diff --git a/kconfig/lxdialog/inputbox.c b/kconfig/lxdialog/inputbox.c
> -index 611945611bf8..1dcfb288ee63 100644
> ---- a/kconfig/lxdialog/inputbox.c
> -+++ b/kconfig/lxdialog/inputbox.c
> -@@ -113,7 +113,8 @@ int dialog_inputbox(const char *title, const char *prompt, int height, int width
> +Index: kconfig/lxdialog/inputbox.c
> +===================================================================
> +--- kconfig.orig/lxdialog/inputbox.c
> ++++ kconfig/lxdialog/inputbox.c
> +@@ -126,7 +126,8 @@ int dialog_inputbox(const char *title, const char *prompt, int height, int width
> case KEY_DOWN:
> break;
> case KEY_BACKSPACE:
> @@ -30,10 +30,10 @@ index 611945611bf8..1dcfb288ee63 100644
> if (pos) {
> wattrset(dialog, dlg.inputbox.atr);
> if (input_x == 0) {
> -diff --git a/kconfig/nconf.c b/kconfig/nconf.c
> -index a4670f4e825a..ac92c0ded6c5 100644
> ---- a/kconfig/nconf.c
> -+++ b/kconfig/nconf.c
> +Index: kconfig/nconf.c
> +===================================================================
> +--- kconfig.orig/nconf.c
> ++++ kconfig/nconf.c
> @@ -1048,7 +1048,7 @@ static int do_match(int key, struct match_state *state, int *ans)
> state->match_direction = FIND_NEXT_MATCH_UP;
> *ans = get_mext_match(state->pattern,
> @@ -43,11 +43,11 @@ index a4670f4e825a..ac92c0ded6c5 100644
> state->pattern[strlen(state->pattern)-1] = '\0';
> adj_match_dir(&state->match_direction);
> } else
> -diff --git a/kconfig/nconf.gui.c b/kconfig/nconf.gui.c
> -index 7be620a1fcdb..77f525a8617c 100644
> ---- a/kconfig/nconf.gui.c
> -+++ b/kconfig/nconf.gui.c
> -@@ -439,7 +439,8 @@ int dialog_inputbox(WINDOW *main_window,
> +Index: kconfig/nconf.gui.c
> +===================================================================
> +--- kconfig.orig/nconf.gui.c
> ++++ kconfig/nconf.gui.c
> +@@ -440,7 +440,8 @@ int dialog_inputbox(WINDOW *main_window,
> case KEY_F(F_EXIT):
> case KEY_F(F_BACK):
> break;
> @@ -57,6 +57,3 @@ index 7be620a1fcdb..77f525a8617c 100644
> case KEY_BACKSPACE:
> if (cursor_position > 0) {
> memmove(&result[cursor_position-1],
> ---
> -2.48.1
> -
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [Buildroot] [PATCH v2 1/4] support/kconfig/patches: make all patches quilt-friendly
2025-07-16 20:39 ` Petr Vorel
@ 2025-07-16 21:08 ` Edgar Bonet via buildroot
2025-07-16 22:01 ` Petr Vorel
0 siblings, 1 reply; 9+ messages in thread
From: Edgar Bonet via buildroot @ 2025-07-16 21:08 UTC (permalink / raw)
To: Petr Vorel; +Cc: Buildroot development, Julien Olivain, Yann E. MORIN
On 16/07/2025 22:39, Petr Vorel wrote:
> Hi Edgar,
>
>> According to support/kconfig/README.buildroot, the patches in
>> support/kconfig/patches/ are meant to be applied by quilt. However, two
>> of those patches are in git format, which makes quilt error out with:
>
>> Applying patch patches/22-kconfig-lxdialog-fix-check-with-GCC14.patch
>> can't find file to patch at input line 32
>> [...]
>> No file to patch. Skipping patch.
>
>> Fix the format to make quilt happy.
>
> How about using 'git quiltimport' instead?
I didn't know about “git quiltimport”. I guess
support/kconfig/README.buildroot could be rewritten to use it, although
the fact that “git quiltimport” creates commits may somewhat complicate
the procedure described there.
Regards,
Edgar.
> Kind regards,
> Petr
>
>> Signed-off-by: Edgar Bonet <bonet@grenoble.cnrs.fr>
>> ---
>> ...config-lxdialog-fix-check-with-GCC14.patch | 11 +++----
>> ...onfig-mn-conf-handle-backspace-H-key.patch | 31 +++++++++----------
>> 2 files changed, 18 insertions(+), 24 deletions(-)
>
>> diff --git a/support/kconfig/patches/22-kconfig-lxdialog-fix-check-with-GCC14.patch b/support/kconfig/patches/22-kconfig-lxdialog-fix-check-with-GCC14.patch
>> index 41081bb45d..edcc857190 100644
>> --- a/support/kconfig/patches/22-kconfig-lxdialog-fix-check-with-GCC14.patch
>> +++ b/support/kconfig/patches/22-kconfig-lxdialog-fix-check-with-GCC14.patch
>> @@ -25,10 +25,10 @@ Tested-by: Petr Vorel <petr.vorel@gmail.com>
>> kconfig/lxdialog/check-lxdialog.sh | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>
>> -diff --git a/kconfig/lxdialog/check-lxdialog.sh b/kconfig/lxdialog/check-lxdialog.sh
>> -index 16cd9a3186..27d6c30a57 100755
>> ---- a/kconfig/lxdialog/check-lxdialog.sh
>> -+++ b/kconfig/lxdialog/check-lxdialog.sh
>> +Index: kconfig.new/lxdialog/check-lxdialog.sh
>> +===================================================================
>> +--- kconfig.orig/lxdialog/check-lxdialog.sh
>> ++++ kconfig/lxdialog/check-lxdialog.sh
>> @@ -48,7 +48,7 @@ trap "rm -f $tmp" 0 1 2 3 15
>> check() {
>> $cc -x c - -o $tmp 2>/dev/null <<'EOF'
>> @@ -38,6 +38,3 @@ index 16cd9a3186..27d6c30a57 100755
>> EOF
>> if [ $? != 0 ]; then
>> echo " *** Unable to find the ncurses libraries or the" 1>&2
>> ---
>> -2.44.0
>> -
>> diff --git a/support/kconfig/patches/23-kconfig-mn-conf-handle-backspace-H-key.patch b/support/kconfig/patches/23-kconfig-mn-conf-handle-backspace-H-key.patch
>> index 6e32115f70..f72f9f339b 100644
>> --- a/support/kconfig/patches/23-kconfig-mn-conf-handle-backspace-H-key.patch
>> +++ b/support/kconfig/patches/23-kconfig-mn-conf-handle-backspace-H-key.patch
>> @@ -16,11 +16,11 @@ Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
>> kconfig/nconf.gui.c | 3 ++-
>> 3 files changed, 5 insertions(+), 3 deletions(-)
>
>> -diff --git a/kconfig/lxdialog/inputbox.c b/kconfig/lxdialog/inputbox.c
>> -index 611945611bf8..1dcfb288ee63 100644
>> ---- a/kconfig/lxdialog/inputbox.c
>> -+++ b/kconfig/lxdialog/inputbox.c
>> -@@ -113,7 +113,8 @@ int dialog_inputbox(const char *title, const char *prompt, int height, int width
>> +Index: kconfig/lxdialog/inputbox.c
>> +===================================================================
>> +--- kconfig.orig/lxdialog/inputbox.c
>> ++++ kconfig/lxdialog/inputbox.c
>> +@@ -126,7 +126,8 @@ int dialog_inputbox(const char *title, const char *prompt, int height, int width
>> case KEY_DOWN:
>> break;
>> case KEY_BACKSPACE:
>> @@ -30,10 +30,10 @@ index 611945611bf8..1dcfb288ee63 100644
>> if (pos) {
>> wattrset(dialog, dlg.inputbox.atr);
>> if (input_x == 0) {
>> -diff --git a/kconfig/nconf.c b/kconfig/nconf.c
>> -index a4670f4e825a..ac92c0ded6c5 100644
>> ---- a/kconfig/nconf.c
>> -+++ b/kconfig/nconf.c
>> +Index: kconfig/nconf.c
>> +===================================================================
>> +--- kconfig.orig/nconf.c
>> ++++ kconfig/nconf.c
>> @@ -1048,7 +1048,7 @@ static int do_match(int key, struct match_state *state, int *ans)
>> state->match_direction = FIND_NEXT_MATCH_UP;
>> *ans = get_mext_match(state->pattern,
>> @@ -43,11 +43,11 @@ index a4670f4e825a..ac92c0ded6c5 100644
>> state->pattern[strlen(state->pattern)-1] = '\0';
>> adj_match_dir(&state->match_direction);
>> } else
>> -diff --git a/kconfig/nconf.gui.c b/kconfig/nconf.gui.c
>> -index 7be620a1fcdb..77f525a8617c 100644
>> ---- a/kconfig/nconf.gui.c
>> -+++ b/kconfig/nconf.gui.c
>> -@@ -439,7 +439,8 @@ int dialog_inputbox(WINDOW *main_window,
>> +Index: kconfig/nconf.gui.c
>> +===================================================================
>> +--- kconfig.orig/nconf.gui.c
>> ++++ kconfig/nconf.gui.c
>> +@@ -440,7 +440,8 @@ int dialog_inputbox(WINDOW *main_window,
>> case KEY_F(F_EXIT):
>> case KEY_F(F_BACK):
>> break;
>> @@ -57,6 +57,3 @@ index 7be620a1fcdb..77f525a8617c 100644
>> case KEY_BACKSPACE:
>> if (cursor_position > 0) {
>> memmove(&result[cursor_position-1],
>> ---
>> -2.48.1
>> -
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [Buildroot] [PATCH v2 1/4] support/kconfig/patches: make all patches quilt-friendly
2025-07-16 21:08 ` Edgar Bonet via buildroot
@ 2025-07-16 22:01 ` Petr Vorel
2025-07-17 10:53 ` Edgar Bonet via buildroot
0 siblings, 1 reply; 9+ messages in thread
From: Petr Vorel @ 2025-07-16 22:01 UTC (permalink / raw)
To: Edgar Bonet; +Cc: Buildroot development, Julien Olivain, Yann E. MORIN
> On 16/07/2025 22:39, Petr Vorel wrote:
> > Hi Edgar,
> >> According to support/kconfig/README.buildroot, the patches in
> >> support/kconfig/patches/ are meant to be applied by quilt. However, two
> >> of those patches are in git format, which makes quilt error out with:
> >> Applying patch patches/22-kconfig-lxdialog-fix-check-with-GCC14.patch
> >> can't find file to patch at input line 32
> >> [...]
> >> No file to patch. Skipping patch.
> >> Fix the format to make quilt happy.
> > How about using 'git quiltimport' instead?
> I didn't know about “git quiltimport”. I guess
> support/kconfig/README.buildroot could be rewritten to use it, although
> the fact that “git quiltimport” creates commits may somewhat complicate
> the procedure described there.
OK, although I regret loosing metadata, I'm not against using quilt format.
I have never used quilt to update, therefore I haven't experienced problems with
a patch format. If support/kconfig/README.buildroot is still up to date and this
patch is updated it'd be good to update support/kconfig/README.buildroot to
mention how to create quilt compatible patches. I suppose it's something like:
git format-patch --no-signature --no-stat --subject-prefix="" ...
Kind regards,
Petr
> Regards,
> Edgar.
> > Kind regards,
> > Petr
> >> Signed-off-by: Edgar Bonet <bonet@grenoble.cnrs.fr>
> >> ---
> >> ...config-lxdialog-fix-check-with-GCC14.patch | 11 +++----
> >> ...onfig-mn-conf-handle-backspace-H-key.patch | 31 +++++++++----------
> >> 2 files changed, 18 insertions(+), 24 deletions(-)
> >> diff --git a/support/kconfig/patches/22-kconfig-lxdialog-fix-check-with-GCC14.patch b/support/kconfig/patches/22-kconfig-lxdialog-fix-check-with-GCC14.patch
> >> index 41081bb45d..edcc857190 100644
> >> --- a/support/kconfig/patches/22-kconfig-lxdialog-fix-check-with-GCC14.patch
> >> +++ b/support/kconfig/patches/22-kconfig-lxdialog-fix-check-with-GCC14.patch
> >> @@ -25,10 +25,10 @@ Tested-by: Petr Vorel <petr.vorel@gmail.com>
> >> kconfig/lxdialog/check-lxdialog.sh | 2 +-
> >> 1 file changed, 1 insertion(+), 1 deletion(-)
> >> -diff --git a/kconfig/lxdialog/check-lxdialog.sh b/kconfig/lxdialog/check-lxdialog.sh
> >> -index 16cd9a3186..27d6c30a57 100755
> >> ---- a/kconfig/lxdialog/check-lxdialog.sh
> >> -+++ b/kconfig/lxdialog/check-lxdialog.sh
> >> +Index: kconfig.new/lxdialog/check-lxdialog.sh
> >> +===================================================================
> >> +--- kconfig.orig/lxdialog/check-lxdialog.sh
> >> ++++ kconfig/lxdialog/check-lxdialog.sh
> >> @@ -48,7 +48,7 @@ trap "rm -f $tmp" 0 1 2 3 15
> >> check() {
> >> $cc -x c - -o $tmp 2>/dev/null <<'EOF'
> >> @@ -38,6 +38,3 @@ index 16cd9a3186..27d6c30a57 100755
> >> EOF
> >> if [ $? != 0 ]; then
> >> echo " *** Unable to find the ncurses libraries or the" 1>&2
> >> ---
> >> -2.44.0
> >> -
> >> diff --git a/support/kconfig/patches/23-kconfig-mn-conf-handle-backspace-H-key.patch b/support/kconfig/patches/23-kconfig-mn-conf-handle-backspace-H-key.patch
> >> index 6e32115f70..f72f9f339b 100644
> >> --- a/support/kconfig/patches/23-kconfig-mn-conf-handle-backspace-H-key.patch
> >> +++ b/support/kconfig/patches/23-kconfig-mn-conf-handle-backspace-H-key.patch
> >> @@ -16,11 +16,11 @@ Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
> >> kconfig/nconf.gui.c | 3 ++-
> >> 3 files changed, 5 insertions(+), 3 deletions(-)
> >> -diff --git a/kconfig/lxdialog/inputbox.c b/kconfig/lxdialog/inputbox.c
> >> -index 611945611bf8..1dcfb288ee63 100644
> >> ---- a/kconfig/lxdialog/inputbox.c
> >> -+++ b/kconfig/lxdialog/inputbox.c
> >> -@@ -113,7 +113,8 @@ int dialog_inputbox(const char *title, const char *prompt, int height, int width
> >> +Index: kconfig/lxdialog/inputbox.c
> >> +===================================================================
> >> +--- kconfig.orig/lxdialog/inputbox.c
> >> ++++ kconfig/lxdialog/inputbox.c
> >> +@@ -126,7 +126,8 @@ int dialog_inputbox(const char *title, const char *prompt, int height, int width
> >> case KEY_DOWN:
> >> break;
> >> case KEY_BACKSPACE:
> >> @@ -30,10 +30,10 @@ index 611945611bf8..1dcfb288ee63 100644
> >> if (pos) {
> >> wattrset(dialog, dlg.inputbox.atr);
> >> if (input_x == 0) {
> >> -diff --git a/kconfig/nconf.c b/kconfig/nconf.c
> >> -index a4670f4e825a..ac92c0ded6c5 100644
> >> ---- a/kconfig/nconf.c
> >> -+++ b/kconfig/nconf.c
> >> +Index: kconfig/nconf.c
> >> +===================================================================
> >> +--- kconfig.orig/nconf.c
> >> ++++ kconfig/nconf.c
> >> @@ -1048,7 +1048,7 @@ static int do_match(int key, struct match_state *state, int *ans)
> >> state->match_direction = FIND_NEXT_MATCH_UP;
> >> *ans = get_mext_match(state->pattern,
> >> @@ -43,11 +43,11 @@ index a4670f4e825a..ac92c0ded6c5 100644
> >> state->pattern[strlen(state->pattern)-1] = '\0';
> >> adj_match_dir(&state->match_direction);
> >> } else
> >> -diff --git a/kconfig/nconf.gui.c b/kconfig/nconf.gui.c
> >> -index 7be620a1fcdb..77f525a8617c 100644
> >> ---- a/kconfig/nconf.gui.c
> >> -+++ b/kconfig/nconf.gui.c
> >> -@@ -439,7 +439,8 @@ int dialog_inputbox(WINDOW *main_window,
> >> +Index: kconfig/nconf.gui.c
> >> +===================================================================
> >> +--- kconfig.orig/nconf.gui.c
> >> ++++ kconfig/nconf.gui.c
> >> +@@ -440,7 +440,8 @@ int dialog_inputbox(WINDOW *main_window,
> >> case KEY_F(F_EXIT):
> >> case KEY_F(F_BACK):
> >> break;
> >> @@ -57,6 +57,3 @@ index 7be620a1fcdb..77f525a8617c 100644
> >> case KEY_BACKSPACE:
> >> if (cursor_position > 0) {
> >> memmove(&result[cursor_position-1],
> >> ---
> >> -2.48.1
> >> -
> > _______________________________________________
> > buildroot mailing list
> > buildroot@buildroot.org
> > https://lists.buildroot.org/mailman/listinfo/buildroot
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [Buildroot] [PATCH v2 1/4] support/kconfig/patches: make all patches quilt-friendly
2025-07-16 22:01 ` Petr Vorel
@ 2025-07-17 10:53 ` Edgar Bonet via buildroot
0 siblings, 0 replies; 9+ messages in thread
From: Edgar Bonet via buildroot @ 2025-07-17 10:53 UTC (permalink / raw)
To: Petr Vorel; +Cc: Buildroot development, Julien Olivain, Yann E. MORIN
Hello!
Petr Vorel wrote:
> OK, although I regret loosing metadata, I'm not against using quilt
> format.
Loosing metadata? What metadata? AFAIU, quilt ignores everything in the
patch file that comes before the actual patch data. You can add whatever
information you want as a patch header. If you look at my patch 1/4, all
it does is:
1. Replace groups of lines like this:
diff --git a/kconfig/lxdialog/check-lxdialog.sh b/kconfig/lxdialog/check-lxdialog.sh
index 16cd9a3186..27d6c30a57 100755
--- a/kconfig/lxdialog/check-lxdialog.sh
+++ b/kconfig/lxdialog/check-lxdialog.sh
with:
Index: kconfig.new/lxdialog/check-lxdialog.sh
===================================================================
--- kconfig.orig/lxdialog/check-lxdialog.sh
+++ kconfig/lxdialog/check-lxdialog.sh
2. Remove git version signatures like
--
2.44.0
Is it the blob ids (16cd9a3186, 27d6c30a57) that you regret loosing?
> I have never used quilt to update,
I am not a quilt user either, and just discovered the tool while
authoring this patch series.
> therefore I haven't experienced problems with a patch format.
> If support/kconfig/README.buildroot is still up to date and this patch
> is updated it'd be good to update support/kconfig/README.buildroot to
> mention how to create quilt compatible patches.
That would have helped me for sure...
> I suppose it's something like:
>
> git format-patch --no-signature --no-stat --subject-prefix="" ...
No. This command still uses the format
diff --git a/$file b/$file
index $blob1_sha1..$blob2_sha1 $perms
--- a/$file
+++ b/$file
which quilt chokes on. I would rather do something like this:
# Hack something inside support/kconfig, commit, then:
changed_files="foo.h" # the files that we changed
patch_file=25-hack-something.patch # pick the next available number
linux_repo=$HOME/src/linux # local linux git clone
linux_rev=v4.17-rc2 # current base for support/kconfig
# Prepare a quilt-aware copy of support/kconfig.
git -C $linux_repo archive --prefix=support/kconfig.quilt/ \
$linux_rev:scripts/kconfig | tar -xf -
cd support/kconfig
cp -a *_shipped patches ../kconfig.quilt
cd ../kconfig.quilt
sed -i 's/Buildroot/Linux Kernel/' zconf.tab.c_shipped
quilt push -a
# Prepare the new patch.
quilt new patches/$patch_file
quilt add $changed_files
(cd ../kconfig && cp -a $changed_files ../kconfig.quilt)
quilt refresh
sed -i 's/\.quilt//' patches/$patch_file
$EDITOR patches/$patch_file # add a comment as the patch header
# Add the patch to the commit.
rsync -a patches ../kconfig/
git add ../kconfig/patches
git commit --amend ../kconfig/patches
It is a bit contrived. A seasoned quilt user would probably come up with
something much simpler.
Regards,
Edgar.
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2025-07-17 10:54 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-07-16 18:15 [Buildroot] [PATCH v2 0/4] Fix compiler warnings in support/kconfig Edgar Bonet via buildroot
2025-07-16 18:17 ` [Buildroot] [PATCH v2 1/4] support/kconfig/patches: make all patches quilt-friendly Edgar Bonet via buildroot
2025-07-16 20:39 ` Petr Vorel
2025-07-16 21:08 ` Edgar Bonet via buildroot
2025-07-16 22:01 ` Petr Vorel
2025-07-17 10:53 ` Edgar Bonet via buildroot
2025-07-16 18:18 ` [Buildroot] [PATCH v2 2/4] support/kconfig/patches: add missing patch Edgar Bonet via buildroot
2025-07-16 18:19 ` [Buildroot] [PATCH v2 3/4] support/kconfig: fix compiler warning in util.c Edgar Bonet via buildroot
2025-07-16 18:20 ` [Buildroot] [PATCH v2 4/4] support/kconfig: fix compiler warning in nconf.c Edgar Bonet via buildroot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.