On Thu, 2024-06-13 at 14:18 +0800, Changqing Li via lists.openembedded.org 
wrote:
> From: Changqing Li <changqing...@windriver.com>
> 
> * do_configure failed with gcc-14:
> error in build/config.log:
> conftest.c:56:3: error: return type defaults to 'int' [-Wimplicit-int]
> conftest.c:59:5: error: implicit declaration of function 'exit' 
> [-Wimplicit-function-declaration]
> 
> * this recipe set "BBCLASSEXTEND = "native nativesdk", causes "CFLAGS +="
> setting not take effect, use append instead.
> snip of bitbake expect-native -e:
>    set /layers/oe-core/meta/conf/documentation.conf:110
>      [doc] "Flags passed to the C compiler for the target system. This 
> variable evaluates to the same as TARGET_CFLAGS."
>    append /layers/oe-core/meta/recipes-devtools/expect/expect_5.45.4.bb:87
>      "-Wno-error=incompatible-pointer-types"
>    set /layers/oe-core/meta/classes-recipe/native.bbclass:44
>      "${BUILD_CFLAGS}"
>    override[pn-gtk4]::append[toolchain-clang] 
> /layers/meta-clang/conf/nonclangable.conf:336
>      " -Wno-error=int-conversion"
>    override[pn-pidgin-sipe]::append[toolchain-clang] 
> /layers/meta-clang/conf/nonclangable.conf:340
>      " -Wno-error=cast-function-type-strict"
>  pre-expansion value:
>    "${BUILD_CFLAGS}"
> export 
> CFLAGS="-isystem/build/tmp-glibc/work/x86_64-linux/expect-native/5.45.4/recipe-sysroot-native/usr/include
>  -O2 -pipe"
> 
> Signed-off-by: Changqing Li <changqing...@windriver.com>
> ---
>  meta/recipes-devtools/expect/expect_5.45.4.bb | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/meta/recipes-devtools/expect/expect_5.45.4.bb 
> b/meta/recipes-devtools/expect/expect_5.45.4.bb
> index 18904ebc10..5e7b352196 100644
> --- a/meta/recipes-devtools/expect/expect_5.45.4.bb
> +++ b/meta/recipes-devtools/expect/expect_5.45.4.bb
> @@ -84,4 +84,7 @@ BBCLASSEXTEND = "native nativesdk"
>  
>  # http://errors.yoctoproject.org/Errors/Details/766950/
>  # expect5.45.4/exp_chan.c:62:5: error: initialization of 'struct 
> Tcl_ChannelTypeVersion_ *' from incompatible pointer type 'int (*)(void *, 
> int)' [-Wincompatible-pointer-types]
> -CFLAGS += "-Wno-error=incompatible-pointer-types"
> +CFLAGS:append = " -Wno-error=incompatible-pointer-types"
> +
> +# Fix expect-native configure tests are failing with gcc-14
> +CFLAGS:append:class-native = " -Wno-error=implicit-int 
> -Wno-error=implicit-function-declaration"
> 

You have a valid problem here however I really don't like the "arms
race" of making everything an append as the base definitions are
problematic. It would be this recipe today but a quick search shows
many other recipes which will have similar problems.

I think I'd prefer to see if we can drop the assignments in
native/nativesdk bbclass and improve things that way even if it is a
bit more invasive.

I'm testing a patch on master-next to test this and see how bad the
fallout is.

Cheers,

Richard


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#200594): 
https://lists.openembedded.org/g/openembedded-core/message/200594
Mute This Topic: https://lists.openembedded.org/mt/106647106/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