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