Files
meta-openembedded/meta-oe
Bruce Ashfield 45a5d03e9a vboxguestdrivers: fix build against 5.15 kernel/libc-headers headers
In kernel v5.15+ stdarg.h is part of the kernel source, and the
upstream project has a change to prefer that stdarg.h to the
c-library variant and hence includes it as <linux/stdarg.h>, which
leads to the following build error:

   | In file included from ../vboxsf/include/iprt/types.h:34,
   |                  from ../vboxsf/include/iprt/string.h:33,
   |                  from mount.vboxsf.c:53:
   | ../vboxsf/include/iprt/stdarg.h:49:13: fatal error: linux/stdarg.h: No such file or directory
   |    49 | #   include <linux/stdarg.h>
   |       |             ^~~~~~~~~~~~~~~~

If we modify our build of the vboxdrivers to have the kernel source
directory on the include path (to find linux/stdarg.h, that leads
to the following errors:

   In file included from build/tmp/work/qemux86_64-poky-linux/vboxguestdrivers/6.1.28-r0/recipe-sysroot/usr/include/stdlib.h:394,
   |                  from mount.vboxsf.c:36:
   | build/tmp/work/qemux86_64-poky-linux/vboxguestdrivers/6.1.28-r0/recipe-sysroot/usr/include/sys/types.h:192:20: note: previous declaration of 'blkcnt_t' with type 'blkcnt_t' {aka 'long int'}
   |   192 | typedef __blkcnt_t blkcnt_t;     /* Type to count number of disk blocks.  */
   |       |                    ^~~~~~~~
   | In file included from build/tmp/work-shared/qemux86-64/kernel-source/include/linux/time.h:5,
   |                  from poky/build/tmp/work-shared/qemux86-64/kernel-source/include/linux/stat.h:19,
   |                  from build/tmp/work/qemux86_64-poky-linux/vboxguestdrivers/6.1.28-r0/recipe-sysroot/usr/include/bits/statx.h:31,

Our libc-headers are safe and don't lead to the potential conflicing
information that the upstream commit is guarding against. The easiest
solution is to revert the upstream change and trust our headers.

Upstream-Status: Inappropriate [OE specific]

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-11-04 19:31:18 -07:00
..
2021-08-03 10:21:25 -07:00

meta-oe
=======

This layer depends on:

URI: git://github.com/openembedded/openembedded-core.git
branch: master

luajit recipe requires host compiler to be able to generate 32bit code when target is 32bit
e.g. arm, so ensure that $CC -m32 is functional on build host, if building this recipe, needed
packages to fullfit this might have different names on different host distributions
e.g. on archlinux based distributions install prerequisites like below

pacman -S lib32-gcc-libs lib32-glibc

Ubuntu
sudo apt-get install gcc-multilib linux-libc-dev:i386

Send pull requests to openembedded-devel@lists.openembedded.org with '[meta-oe]' in the subject'

When sending single patches, please use something like:
'git send-email -M -1 --to openembedded-devel@lists.openembedded.org --subject-prefix="meta-oe][PATCH"'

You are encouraged to fork the mirror on GitHub https://github.com/openembedded/meta-openembedded
to share your patches, this is preferred for patch sets consisting of more than one patch.

Other services like GitLab, repo.or.cz or self-hosted setups are of course accepted as well,
'git fetch <remote>' works the same on all of them. We recommend GitHub because it is free, easy
to use, has been proven to be reliable and has a really good web GUI.

layer maintainer: Khem Raj <raj.khem@gmail.com>