diff mbox series

[1/1] package/busybox: fix menuconfig with GCC 14

Message ID 20240726160152.2182074-1-fiona.klute@gmx.de
State Accepted
Headers show
Series [1/1] package/busybox: fix menuconfig with GCC 14 | expand

Commit Message

Fiona Klute July 26, 2024, 4:01 p.m. UTC
From: "Fiona Klute (WIWA)" <fiona.klute@gmx.de>

GCC 14 errors out on the implicit return type of "main() {}". The
patch also removes the /dev/null redirection of GCC stderr that hid
the actual problem.

Signed-off-by: Fiona Klute (WIWA) <fiona.klute@gmx.de>
---
 ...-failing-saying-ncurses-is-not-found.patch | 38 +++++++++++++++++++
 1 file changed, 38 insertions(+)
 create mode 100644 package/busybox/0009-menuconfig-gcc-failing-saying-ncurses-is-not-found.patch

--
2.45.2

Comments

Brandon Maier July 26, 2024, 5:03 p.m. UTC | #1
Hi Fiona,

On Fri Jul 26, 2024 at 4:01 PM UTC, Fiona Klute via buildroot wrote:
> From: "Fiona Klute (WIWA)" <fiona.klute@gmx.de>
>
> GCC 14 errors out on the implicit return type of "main() {}". The
> patch also removes the /dev/null redirection of GCC stderr that hid
> the actual problem.

I tested this on my Fedora 40 machine, look good!

Reviewed-by: Brandon Maier <brandon.maier@collins.com>
Tested-by: Brandon Maier <brandon.maier@collins.com>

Thanks,
Brandon

>
> Signed-off-by: Fiona Klute (WIWA) <fiona.klute@gmx.de>
> ---
>  ...-failing-saying-ncurses-is-not-found.patch | 38 +++++++++++++++++++
>  1 file changed, 38 insertions(+)
>  create mode 100644 package/busybox/0009-menuconfig-gcc-failing-saying-ncurses-is-not-found.patch
>
> diff --git a/package/busybox/0009-menuconfig-gcc-failing-saying-ncurses-is-not-found.patch b/package/busybox/0009-menuconfig-gcc-failing-saying-ncurses-is-not-found.patch
> new file mode 100644
> index 0000000000..7b78c01984
> --- /dev/null
> +++ b/package/busybox/0009-menuconfig-gcc-failing-saying-ncurses-is-not-found.patch
> @@ -0,0 +1,38 @@
> +From ctxnop@gmail.com  Sun Jul 21 12:10:52 2024
> +From: ctxnop@gmail.com (Nop)
> +Date: Sun, 21 Jul 2024 14:10:52 +0200
> +Subject: [PATCH] menuconfig: GCC failing saying ncurses is not found
> +
> +Newer GCC increased diagnostics levels resulting in considering the
> +test code to be invalid. The resulting message was misleading, saying
> +that ncurses was not found, while the check failed for an unrelated
> +reason which was hidden because GCC stderr was redirected to
> +/dev/null.
> +
> +Signed-off-by: ctxnop <ctxnop@gmail.com>
> +Upstream: http://lists.busybox.net/pipermail/busybox/2024-July/090840.html
> +[Fiona: rephrased commit message for clarity]
> +Signed-off-by: Fiona Klute (WIWA) <fiona.klute@gmx.de>
> +---
> + scripts/kconfig/lxdialog/check-lxdialog.sh | 4 ++--
> + 1 file changed, 2 insertions(+), 2 deletions(-)
> +
> +diff --git a/scripts/kconfig/lxdialog/check-lxdialog.sh
> +b/scripts/kconfig/lxdialog/check-lxdialog.sh
> +index 5075ebf2d..c644d1d48 100755
> +--- a/scripts/kconfig/lxdialog/check-lxdialog.sh
> ++++ b/scripts/kconfig/lxdialog/check-lxdialog.sh
> +@@ -45,9 +45,9 @@ trap "rm -f $tmp" 0 1 2 3 15
> +
> + # Check if we can link to ncurses
> + check() {
> +-        $cc -x c - -o $tmp 2>/dev/null <<'EOF'
> ++	$cc -x c - -o $tmp <<'EOF'
> + #include CURSES_LOC
> +-main() {}
> ++int main() { return 0; }
> + EOF
> + 	if [ $? != 0 ]; then
> + 	    echo " *** Unable to find the ncurses libraries or the"       1>&2
> +--
> +2.45.2
> --
> 2.45.2
>
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot
Thomas Petazzoni July 27, 2024, 2:37 p.m. UTC | #2
On Fri, 26 Jul 2024 18:01:52 +0200
Fiona Klute via buildroot <buildroot@buildroot.org> wrote:

> From: "Fiona Klute (WIWA)" <fiona.klute@gmx.de>
> 
> GCC 14 errors out on the implicit return type of "main() {}". The
> patch also removes the /dev/null redirection of GCC stderr that hid
> the actual problem.
> 
> Signed-off-by: Fiona Klute (WIWA) <fiona.klute@gmx.de>
> ---
>  ...-failing-saying-ncurses-is-not-found.patch | 38 +++++++++++++++++++
>  1 file changed, 38 insertions(+)
>  create mode 100644 package/busybox/0009-menuconfig-gcc-failing-saying-ncurses-is-not-found.patch

Applied to master, thanks a lot for addressing this issue!

Thomas
Peter Korsgaard Sept. 1, 2024, 8:58 a.m. UTC | #3
>>>>> "Fiona" == Fiona Klute via buildroot <buildroot@buildroot.org> writes:

 > From: "Fiona Klute (WIWA)" <fiona.klute@gmx.de>
 > GCC 14 errors out on the implicit return type of "main() {}". The
 > patch also removes the /dev/null redirection of GCC stderr that hid
 > the actual problem.

 > Signed-off-by: Fiona Klute (WIWA) <fiona.klute@gmx.de>

Committed to 2024.02.x and 2024.05.x, thanks.
diff mbox series

Patch

diff --git a/package/busybox/0009-menuconfig-gcc-failing-saying-ncurses-is-not-found.patch b/package/busybox/0009-menuconfig-gcc-failing-saying-ncurses-is-not-found.patch
new file mode 100644
index 0000000000..7b78c01984
--- /dev/null
+++ b/package/busybox/0009-menuconfig-gcc-failing-saying-ncurses-is-not-found.patch
@@ -0,0 +1,38 @@ 
+From ctxnop@gmail.com  Sun Jul 21 12:10:52 2024
+From: ctxnop@gmail.com (Nop)
+Date: Sun, 21 Jul 2024 14:10:52 +0200
+Subject: [PATCH] menuconfig: GCC failing saying ncurses is not found
+
+Newer GCC increased diagnostics levels resulting in considering the
+test code to be invalid. The resulting message was misleading, saying
+that ncurses was not found, while the check failed for an unrelated
+reason which was hidden because GCC stderr was redirected to
+/dev/null.
+
+Signed-off-by: ctxnop <ctxnop@gmail.com>
+Upstream: http://lists.busybox.net/pipermail/busybox/2024-July/090840.html
+[Fiona: rephrased commit message for clarity]
+Signed-off-by: Fiona Klute (WIWA) <fiona.klute@gmx.de>
+---
+ scripts/kconfig/lxdialog/check-lxdialog.sh | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/scripts/kconfig/lxdialog/check-lxdialog.sh
+b/scripts/kconfig/lxdialog/check-lxdialog.sh
+index 5075ebf2d..c644d1d48 100755
+--- a/scripts/kconfig/lxdialog/check-lxdialog.sh
++++ b/scripts/kconfig/lxdialog/check-lxdialog.sh
+@@ -45,9 +45,9 @@ trap "rm -f $tmp" 0 1 2 3 15
+
+ # Check if we can link to ncurses
+ check() {
+-        $cc -x c - -o $tmp 2>/dev/null <<'EOF'
++	$cc -x c - -o $tmp <<'EOF'
+ #include CURSES_LOC
+-main() {}
++int main() { return 0; }
+ EOF
+ 	if [ $? != 0 ]; then
+ 	    echo " *** Unable to find the ncurses libraries or the"       1>&2
+--
+2.45.2