Comment by o11c

Comment by o11c 11 days ago

4 replies

Note: the underlying blame here fundamentally belongs to whoever built AGP / Gradle with non-universal flags, then distributed it.

It's fine to ship binaries with hard-coded cpu flag requirements if you control the universe, but otherwise not, especially if you are in an ecosystem where you make it hard for users to rebuild everything from source.

IshKebab 11 days ago

Exactly. Everything should be compiled to target i386.

/s (should be obvious but probably not for this audience)

  • pabs3 10 days ago

    They should be compiled for the CPU baseline of the ABI they are using, and check if newer instructions are available before using them. This is what Debian does, so they can have maximum hardware support.

    https://wiki.debian.org/InstructionSelection

    • IshKebab 9 days ago

      Why? There's nothing wrong with having minimum requirements beyond that. They don't have to use Debian's policy, and multiversioning adds enough complexity that basically nobody does it (I've only ever seen it used in video codecs).

userbinator 11 days ago

control the universe

Guess what the company behind Android wants to do...