Hi, Alex

> - the patch is ok; but please add a note (a comment in the recipe just above
> sed) that it hasn't been tested when libbsd is used in 'namespaced headers'
> mode according to
> https://man.archlinux.org/man/libbsd.7

OK, I will add this note into recipe too and send V4 patch. 


Best regards
Lei


> -----Original Message-----
> From: Alexander Kanavin <[email protected]>
> Sent: Monday, April 29, 2024 6:46 PM
> To: Lei, Maohui <[email protected]>
> Cc: [email protected]
> Subject: Re: [OE-core][PATCH v3] libbsd: Fix conflict error when enable
> multilib.
> 
> On Sun, 28 Apr 2024 at 05:17, Maohui Lei (Fujitsu) <[email protected]>
> wrote:
> > I' sorry. But my first V1 version patch without sed (just oe_multilib parts)
> did not pass Khem Raj's compile test (bitbake mg
> https://errors.yoctoproject.org/Errors/Details/759473/). I'm not sure if it is
> the problem you want to know.
> > So, I reproduce the build error and found that the cdefs.h that created by
> multilib_header has the path "#include <bsd/sys/cdefs-32.h>".
> > But mg find herder files without namespaced with bsd/. So, it failed.
> Shadow has the same build issue.
> > So, I submitted V2 patch with sed.
> 
> Right, this is the error:
> 
> | In file included from
> /srv/storage/alex/yocto/build-multilib/tmp/work/x86_64-pokymllib64-linux/
> lib64-mg/20230501/lib64-recipe-sysroot/usr/include/bsd/sys/cdefs.h:27,
> |                  from
> /srv/storage/alex/yocto/build-multilib/tmp/work/x86_64-pokymllib64-linux/
> lib64-mg/20230501/lib64-recipe-sysroot/usr/include/bsd/sys/queue.h:39,
> |                  from region.c:12:
> |
> /srv/storage/alex/yocto/build-multilib/tmp/work/x86_64-pokymllib64-linux/
> lib64-mg/20230501/lib64-recipe-sysroot/usr/include/bsd/sys/cdefs-64.h:49:
> 24:
> error: no include path in which to search for sys/cdefs.h
> |    49 | #if __has_include_next(<sys/cdefs.h>)
> |       |                        ^~~~~~~~~~~~~
> 
> I'm utterly confused by that. Why can't the compiler find
> usr/include/sys/cdefs.h?
> Why is it then happily finding it when bsd/ prefix is dropped from
> cdefs-64 include statement in usr/include/bsd/sys/cdefs.h ?
> 
> But the fix does seem to help, and makes multilib selection header match
> libbsd headers (in overlay mode).
> 
> So:
> - the patch is ok; but please add a note (a comment in the recipe just above
> sed) that it hasn't been tested when libbsd is used in 'namespaced headers'
> mode according to
> https://man.archlinux.org/man/libbsd.7
> 
> Alex
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#198753): 
https://lists.openembedded.org/g/openembedded-core/message/198753
Mute This Topic: https://lists.openembedded.org/mt/105725841/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to