-
Notifications
You must be signed in to change notification settings - Fork 34
Conversation
cb73398
to
4b8381a
Compare
@@ -3,7 +3,7 @@ version=2.0.0.999 | |||
#kotlinVersion=1.5.20 | |||
kotlinVersion=1.5.30-M1 | |||
kotlinSerializationVersion=1.2.1 | |||
coroutinesVersion=1.5.0 | |||
coroutinesVersion=1.5.1-SNAPSHOT |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I just remembered this relies on a custom build of kotlinx.coroutines with Arm32Hfp enabled. Probably can't merge this unless that gets enabled upstream.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm going to merge it and disable it with a flag or something, so the code is already here and we can enable it when this situation changes. you did it already
Did you do something special to compile kotlinx.coroutines
& atomicfu
on the PI? Maybe we can make a couple of PRs adding support to it. I already did a atomicfu PR here: Kotlin/kotlinx-atomicfu#193 and commented here Kotlin/kotlinx.coroutines#855 not sure if you did something different or I missed something. Maybe we can ping them to see if we can unlock this
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For kotlinx.coroutines I needed to disable tests on the arm target: https://gist.github.com/ObsidianX/dcfb862a6f41fad598053eef50679374
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Because some of the tests failed, or something else?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Posted a PR with a better solution: Kotlin/kotlinx.coroutines#2841
Initial support for the
linuxArm32Hfp
(Raspberry Pi) build target. The entire target is behind the newenableKotlinRaspberryPi
flag ingradle.properties
which is disabled by default.A few of the
linuxX64
source files were usable without modification but I haven't found a way to share the source between the two versions yet. Building the Pi version does require a local sysroot (/tmp/rpi-sysroot) folder to properly link with the ARM binaries. Thecinterop
target doesn't support setting linker options in Gradle howeverbinary
does which would help remove the hard-coded path to the sysroot, but that would be a larger change.mimalloc
causes segfaults on the Raspberry Pi and theuseMimalloc
flag is ignored for thelinuxArm32Hfp
target.