On Thu, Feb 27, 2025 at 12:08 PM Gyorgy Sarvari <[email protected]> wrote:
>
>
> On 27.02.25 21:02, Khem Raj wrote:
> > On Thu, Feb 27, 2025 at 10:32 AM Gyorgy Sarvari via
> > lists.openembedded.org <[email protected]>
> > wrote:
> >> BUILD_CFLAGS doesn't contain information about the recipe sysroot nor
> >> about the target
> >> system - and in case these are not specified for bindgen, then it builds
> >> against
> >> the build system's headers, using the build system's arch.
> >>
> >> Instead of BUILD_CFLAGS pass HOST_CC_ARCH and TOOLCHAIN_OPTIONS, which
> >> contain the sysroot
> >> and the requred cross-compiling flags, beside passing the target flag also.
> >>
> >> Fixes the following do_compile error:
> >>
> >> | /usr/include/linux/types.h:5:10: fatal error: 'asm/types.h' file not
> >> found
> >> | thread 'main' panicked at
> >> /yocto/sandbox/build/tmp/work/cortexa72-poky-linux/thin-provisioning-tools/1.1.0/sources-unpack/cargo_home/bitbake/devicemapper-sys-0.3.0/build.rs:24:10:
> >> | Could not generate dm.h bindings:
> >> ClangDiagnostic("/usr/include/linux/types.h:5:10: fatal error:
> >> 'asm/types.h' file not found\n")
> >>
> >> Signed-off-by: Gyorgy Sarvari <[email protected]>
> >> ---
> >> .../thin-provisioning-tools/thin-provisioning-tools_1.1.0.bb | 2 +-
> >> 1 file changed, 1 insertion(+), 1 deletion(-)
> >>
> >> diff --git
> >> a/meta-oe/dynamic-layers/clang-layer/recipes-support/thin-provisioning-tools/thin-provisioning-tools_1.1.0.bb
> >>
> >> b/meta-oe/dynamic-layers/clang-layer/recipes-support/thin-provisioning-tools/thin-provisioning-tools_1.1.0.bb
> >> index bb4b53c28b..d0241c7016 100644
> >> ---
> >> a/meta-oe/dynamic-layers/clang-layer/recipes-support/thin-provisioning-tools/thin-provisioning-tools_1.1.0.bb
> >> +++
> >> b/meta-oe/dynamic-layers/clang-layer/recipes-support/thin-provisioning-tools/thin-provisioning-tools_1.1.0.bb
> >> @@ -21,7 +21,7 @@ inherit pkgconfig
> >> DEPENDS += "udev libdevmapper libdevmapper-native clang-native"
> >>
> >> export LIBCLANG_PATH = "${WORKDIR}/recipe-sysroot-native${libdir}"
> >> -export BINDGEN_EXTRA_CLANG_ARGS = "${BUILD_CFLAGS}"
> >> +export BINDGEN_EXTRA_CLANG_ARGS = "${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}
> >> --target=${TARGET_SYS}"
> >>
> > we do not need -target anymore its part of HOST_CCARCH
>
> It is not:
>
> $ bitbake -e thin-provisioning-tools | grep ^HOST_CC_ARCH
> HOST_CC_ARCH=" -mcpu=cortex-a72+crc -mbranch-protection=standard
> -fstack-protector-strong -O2 -D_FORTIFY_SOURCE=2 -Wformat -Wformat-
> security -Werror=format-security"
>
> If I remove it, it gets unhappy:
>
> | error: unsupported option '-mcpu=' for target 'x86_64-unknown-linux-gnu'
> | error: unsupported option '-mbranch-protection=' for target
> 'x86_64-unknown-linux-gnu'
> (etc..)
>
Yeah, I see when clang is used at default compiler then its added but
for gcc defaults it is not. I will take v3
>
> >
> >> require ${BPN}-crates.inc
> >> require ${BPN}-git-crates.inc
> >>
> >>
> >>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#115703):
https://lists.openembedded.org/g/openembedded-devel/message/115703
Mute This Topic: https://lists.openembedded.org/mt/111420486/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-