← Back to team overview

elementary-dev-community team mailing list archive

We can has ARM builds!


Hey guys,

Rico Tzschichholz has arranged enabling armhf (ARM with hardware
support for floating-point instructions) builds for our Daily PPA!
First binary builds, starting with Granite, should start appearing in
the repository in a few hours.

According to Rico, this is the first non-Canonical PPA to receive
armhf support. With our daily PPA frequently showing up at
https://launchpad.net/ubuntu/+ppas as one of the 5 most updated PPAs,
I'm afraid we're going to put quite a strain on Launchpad's builders!
Perhaps Canonical are after some load testing? :)

For armhf builds to work the Daily PPA has to be self-contained from
now on because dependency PPAs don't have armhf builds for
architecture-dependent packages.

I've just run a round of deb-packaging branch updates with a script I
hacked together for the occasion (can be viewed at
http://pastebin.com/cSBEA0gh) to make all packages buildable on
vanilla Precise. Packages that need valac 0.16 now explicitly ask for
"valac-0.16" package and fall back to "valac" package v0.16 or
greater, which should allow building them properly on vanilla Precise
which defaults to valac-0.14.

I wonder if we still need the dependency on
https://launchpad.net/~vala-team/+archive/ppa if packages build OK
without it. Does using the latest vala-0.16 from nemequ's PPA benefit
the x86 architectures in any way?

The other external dependency -
https://launchpad.net/~nemequ/+archive/sqlheavy - is required by
Postler. We could copy the sqlheavy package to Daily PPA and get rid
of it, thus solving the problem, but I'm not a fan of copying frozen
versions of third-party stuff into the PPA.

ARM builds might also expose some portability issues that our apps
might have. I'm not sure what shall we do about them just now; perhaps
ignoring them and focusing on releasing Luna for x86 is the best
approach because we're not going to get any decent ISOs for ARM
anytime soon: partial support for supporting several hardware
configurations with one kernel was landed only in Linux 3.7 while on
Precise we're stuck with 3.2 for ARM.

Also note that Testing and Stable PPAs are not yet armhf-enabled (I'm
not sure why; if you really want to know you'll have to ask Rico).

Sergey "Shnatsel" Davidoff
OS architect @ elementary

Follow ups