Closed tjaalton closed 1 year ago
What CPU did you attempt this on? In general we do not support 32 bit platforms due to the nature of this library.
armel, mips, powerpc builds on Debian.
The docs (https://doc.rust-lang.org/std/sync/atomic/) also say that these platforms don't have AtomicU64 or AtomicI64. There is https://github.com/taiki-e/portable-atomic that would be of help here.
What were you trying to build is probably a better question here. The threadcache should be gated behind it's own feature regardless.
Saying this, I'm not super interested to support 32 bit platforms. The two large users of this library are Kanidm and 389-ds - both of which do NOT support 32 bit platforms.
I've packaged concread separately so that 389-ds can drop the vendored stuff, but in the meantime it does still build those and that's when I found that it (too) failed on these archs.
The problem here is 389-ds is not supported on 32bit platforms - so I think you should not be packaging it for these arches anyway.
Regardless, we have merged a feature that disables the thread cache by default since it's a testing feature only, so this should assist.
PS: Also worth pointing out that 389-ds is stuck on an old version of concread due to limitations of which rust compiler versions are supported in rh. So it's likely you'll hit similar in debian :(
Thanks, I've hid threadcache behind the config option locally.
We have rustc 1.64, and I don't need to worry about backports :)