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]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to