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..)
>
>> require ${BPN}-crates.inc
>> require ${BPN}-git-crates.inc
>>
>>
>>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#115702):
https://lists.openembedded.org/g/openembedded-devel/message/115702
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]]
-=-=-=-=-=-=-=-=-=-=-=-