Hi,
The latest chromium is failing to build on armhf because upstream broke
non-NEON builds. While that is technically an upstream bug, I'm not
sure upstream is going to care enough to even accept a patch to fix it.
I understand that the baseline for the armhf architecture is to not
support NEON, but folks in #debian-arm suggested that I specifically
ask for an exception for chromium.
At this point I'm pretty confident in assuming that folks running 13
year old arm boards or newer rpi zero boards with 512MB of ram will
not be using that hardware to browse the web with debian's chromium
package. That leaves those using chromium for scripts or ci tests (eg,
jquery-timepicker) on older armhf boards. The ci.debian.net
infrastructure is newer than buildds, so I hopeful that they're mostly
(or entirely?) machines that support NEON. And of course, chromium
built with NEON support should be at least a small speed improvement
for users running the browser on newer arm v7 hardware, although I lack
the hardware to quantify that.
So my proposal for chromium is this:
a) Enable NEON for chromium's armhf build.
b) Add a check in debian/rules for 'neon' in /proc/cpuinfo's Features:
line, and fail to build if NEON is not present. This should ensure that
any buildds or downstream builders don't waste resources
configuring/building chromium on a non-NEON board only to have it fail
somewhere in the middle.
c) Using the current shell script wrapper for chromium (which already
checks for things like SSE3 cpu instructions on x86), check for NEON
support at startup by also looking for the string 'neon' in
/proc/cpuinfo; if NEON is not supported, print an error message and
exit before launching the chromium binary.
d) Ask the buildd admins to restrict building of chromium from any
Armada XP buildds, which appear to be the only armhf buildds left in
rotation that lack NEON support. If they are unwilling/unable to do
this, then I'll have to play the giveback game for armhf (step right
up! everyone's a winner!), which I often end up having to do currently
because the 2-3 day armhf builds will sometimes hang/crash halfway
through.
Any thoughts on this? Please explicitly Cc me on replies, as I'm not
subscribed to any of the lists.
Thanks,
Andres