On Sat, Oct 23, 2021 at 1:12 PM Alexander Kanavin <[email protected]>
wrote:

> I'm not sure I understand.
>

try MACHINE=qemuriscv32 bitbake librsvg
and try out your suggestion and if it works then lets rework this patch.


This is the snippet that your patch is modifying:
>
>     if NO_ATOMIC_CAS.contains(&&*target) {
>         println!("cargo:rustc-cfg=crossbeam_no_atomic_cas");
>     }
>     if NO_ATOMIC.contains(&&*target) {
>         println!("cargo:rustc-cfg=crossbeam_no_atomic");
>         println!("cargo:rustc-cfg=crossbeam_no_atomic_64");
>     } else if NO_ATOMIC_64.contains(&&*target) {
>         println!("cargo:rustc-cfg=crossbeam_no_atomic_64");
>     } else {
>         // Otherwise, assuming `"max-atomic-width" == 64`.
>     }
>
> NO_ATOMIC_* lists all come from no_atomic.rs, so if the needed entry is
> absent, you should add it there.
>

> Alex
>
>
>
> On Sat, 23 Oct 2021 at 21:38, Khem Raj <[email protected]> wrote:
>
>>
>>
>> On Sat, Oct 23, 2021 at 11:55 AM Alexander Kanavin <
>> [email protected]> wrote:
>>
>>> ... which might not be very easy - maybe adjusting no_atomic.rs is
>>> easiest.
>>>
>>
>> The entries there are just fine if the build system does not use the
>> build that utils package uses then it does not respect the entries in that
>> file
>>
>> Perhaps librsvg might change how it builds this module then we can inject
>> the no_atomics feature via cargo toml file or rustc —cfg option
>>
>>>
>>> Alex
>>>
>>> On Sat, 23 Oct 2021 at 20:40, Alexander Kanavin via
>>> lists.openembedded.org <[email protected]>
>>> wrote:
>>>
>>>> Oh, and 'risc32gc' is already there, so our rust's riscv target name
>>>> should be adjusted to match that (as that's what upstream is using, so
>>>> we'll eliminate a mismatch).
>>>>
>>>> Alex
>>>>
>>>> On Sat, 23 Oct 2021 at 20:33, Alexander Kanavin via
>>>> lists.openembedded.org <[email protected]>
>>>> wrote:
>>>>
>>>>> On Sat, 23 Oct 2021 at 20:16, Khem Raj <[email protected]> wrote:
>>>>>
>>>>>> +         println!("cargo:rustc-cfg=crossbeam_no_atomic_64");
>>>>>> +     } else {
>>>>>> +         // Otherwise, assuming `"max-atomic-width" == 64`.
>>>>>> ++        println!("cargo:rustc-cfg=crossbeam_no_atomic_64");
>>>>>> +     }
>>>>>> +SRC_URI:append:riscv32 = " file://riscv32-no-64bit-atomics.patch"
>>>>>>
>>>>>
>>>>> The correct way to fix this is to adjust the target list in
>>>>> vendor/crossbeam-utils/no_atomic.rs.
>>>>>
>>>>> Alex
>>>>>
>>>>>
>>>>>
>>>>>
>>>> 
>>>>
>>>>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#157314): 
https://lists.openembedded.org/g/openembedded-core/message/157314
Mute This Topic: https://lists.openembedded.org/mt/86541048/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to