32bit linux now works again using pas2c.
A bit of history. With Hedgewars 0.9.23, we shifted to SDL2. While there were a fair # of SDL2 related issues that had to be addressed, there was one we didn't notice. Unbeknownst to us, FreePascal had an alignment bug. This was triggered by a CPU feature detection in SDL2 which could not be disabled, causing instant crashes.
It took a while for us to be aware of this since there aren't many 32 bit linux users, and many of them were on a long-term stable like Debian. Eventually they caught up and the error report feedback flooded in, this year in particular with 0.9.24.
I did reply to many of these feedbacks, but gmail tends to send my emails to the Spam folder, so I got few responses.
This worked, and we got an actual playable hedgewars online. Unfortunately the project has not been maintained.
Fortunately, pas2c still exists, so after some tweaking of the source code and fixing a few errors, it was usable once more for build purposes. You can use it to target any platform clang supports, extending the supported platforms for distros quite a bit.
We also attempted to force-enable it in CMakeLists.txt for 32 bit linux - you can see that here:https://hg.hedgewars.org/hedgewars/file/06672690d71b/CMakeLists.txt#l72
The upshot is that Haskell is now a required dependency for 32 bit linux builds. The good news is that clang is a bit better at optimisation than FreePascal, so in general things load and run faster if you build using pas2c. AI thinks faster etc.
Hopefully the FreePascal bug is eventually addressed upstream, although at present the engine is being rewritten in Rust anyway.https://hg.hedgewars.org/hedgewars/file/tip/rust