On Tue, May 21, 2024 at 8:17 AM Ross Burton via lists.openembedded.org
<ross.burton=arm....@lists.openembedded.org> wrote:
>
> The code fragment used to detect readline in cross builds doesn't compile
> cleanly with GCC 14.1, so readline is never enabled.
>
> Add missing includes so the test works, and readline can be enabled.
>
> Signed-off-by: Ross Burton <ross.bur...@arm.com>
> ---
>  ...001-m4-readline-add-missing-includes.patch | 38 +++++++++++++++++++
>  meta/recipes-extended/gawk/gawk_5.3.0.bb      |  1 +
>  2 files changed, 39 insertions(+)
>  create mode 100644 
> meta/recipes-extended/gawk/gawk/0001-m4-readline-add-missing-includes.patch
>
> diff --git 
> a/meta/recipes-extended/gawk/gawk/0001-m4-readline-add-missing-includes.patch 
> b/meta/recipes-extended/gawk/gawk/0001-m4-readline-add-missing-includes.patch
> new file mode 100644
> index 00000000000..97edf1ccf8c
> --- /dev/null
> +++ 
> b/meta/recipes-extended/gawk/gawk/0001-m4-readline-add-missing-includes.patch
> @@ -0,0 +1,38 @@
> +From 4f4e84f139e2a8682f1374a592f2636c43ad857b Mon Sep 17 00:00:00 2001
> +From: Ross Burton <ross.bur...@arm.com>
> +Date: Tue, 21 May 2024 15:10:11 +0000
> +Subject: [PATCH] m4/readline: add missing includes
> +
> +The cross-specific code fragment only includes stdio.h, where the native
> +fragment also includes fcntl.h and unistd.h.  This is important because
> +GCC 14.1 has made the implicit definitions an error:
> +
> +conftest.c: In function 'main':
> +conftest.c:144:9: error: implicit declaration of function 'close'; did you 
> mean 'pclose'? [-Wimplicit-function-declaration]
> +conftest.c:146:14: error: implicit declaration of function 'open'; did you 
> mean 'popen'? [-Wimplicit-function-declaration]
> +

This kinds of errors are something I worry about, where configure may
silently decide to take another path for wrong or
insufficient tests. I wonder if we have a way to cache and compare
configure outcomes.

> +Add the missing includes so that the check doesn't always fail due to
> +these errors.
> +
> +Upstream-Status: Submitted
> +Signed-off-by: Ross Burton <ross.bur...@arm.com>
> +---
> + m4/readline.m4 | 2 ++
> + 1 file changed, 2 insertions(+)
> +
> +diff --git a/m4/readline.m4 b/m4/readline.m4
> +index 38f96326..efd52d4e 100644
> +--- a/m4/readline.m4
> ++++ b/m4/readline.m4
> +@@ -66,6 +66,8 @@ dnl action if false:
> + dnl action if cross compiling:
> +               [AC_LINK_IFELSE(
> +                       [AC_LANG_PROGRAM([[#include <stdio.h>
> ++#include <fcntl.h>
> ++#include <unistd.h>
> + #include <readline/readline.h>
> + #include <readline/history.h>]],              dnl includes
> +                       dnl function body
> +--
> +2.34.1
> +
> diff --git a/meta/recipes-extended/gawk/gawk_5.3.0.bb 
> b/meta/recipes-extended/gawk/gawk_5.3.0.bb
> index d7a0fc616d3..e94cf19db48 100644
> --- a/meta/recipes-extended/gawk/gawk_5.3.0.bb
> +++ b/meta/recipes-extended/gawk/gawk_5.3.0.bb
> @@ -16,6 +16,7 @@ PACKAGECONFIG[readline] = 
> "--with-readline,--without-readline,readline"
>  PACKAGECONFIG[mpfr] = "--with-mpfr,--without-mpfr, mpfr"
>
>  SRC_URI = "${GNU_MIRROR}/gawk/gawk-${PV}.tar.gz \
> +           file://0001-m4-readline-add-missing-includes.patch \
>             file://run-ptest \
>             "
>
> --
> 2.34.1
>
>
> 
>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#199676): 
https://lists.openembedded.org/g/openembedded-core/message/199676
Mute This Topic: https://lists.openembedded.org/mt/106225075/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to