[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Preparing a Debian "e500" port/derivative (ABI-incompatible PowerPC variant)


I am currently preparing a Debian port to the "e500" architecture for my
employer eXMeritus, a subdivision of Boeing.  The "e500" architecture is an
architecturally-incompatible variant of PowerPC sponsored by IBM and
FreeScale, used in several of FreeScale's high-end embedded networking
processors (also known as MPC85xx).  The Debian bugreport below indicates
that there's at least one other developer currently trying to use Debian on
e500-based systems:

We are building some very high-end specialty embedded hardware using these
processors, although there are a number of affordable development boards
available for others interested in the CPUs.

The specific GNU triplet for this architecture is "powerpc-linux-gnuspe".
Like the ARM EABI port (arm-linux-gnueabi) the naming seems unfortunate
here; an architecture triplet such as "powerpcspe-linux-gnu" or
"e500-linux-gnu" would have been far more appropriate.

At this time I'm not sure if there would be any interest in this port from
the rest of the community, as the e500 is a relatively obscure architecture.
On the other hand, as the port uses almost exactly the same codebase as the
"powerpc" architecture incidental package breakage should be unlikely.

Regardless, we certainly plan to submit the few e500-relevant patches (just
eglibc and gcc at present) and make a general buildd and archive available
within a month or so.  For our specific embedded system, we will also be
publishing additional sets of patched-and-hardened Debian packages as we
move closer to an actual final release.

So my questions for the community:

  * Are there any immediate recommendations or cautions regarding a new
architecture port?

  * Where can I find the latest-and-greatest Debian buildd and archive
software?  There seems to be one version in the archives and several others
running around on the internet.  As far as I can tell the 3 I have tried
have all been miserably buggy and/or undocumented.  Internally we are using
the python-based "rebuildd" as a build server and "reprepro" for repository
hosting right now; they seem to work moderately well after some fiddling.

  * Are there any ready-made configurations available for using "icecc" or
"distcc" to distribute load from an embedded Debian buildd/rebuildd to
several amd64 build servers with cross-compilers?

  * Is there potentially general interest in an e500 port?  My employer
might be able to provide long-term buildd and porter systems; unfortunately
we would probably need to maintain physical ownership and control over the
computers themselves.

  * Regarding software security updates, I am aware that most vendors of OS
distributions participate in coordinated-disclosure and embargo agreements
in order to receive advance notice of certain vulnerabilities.  My employer
is currently considering what we would need to do in order to get access to
those notifications; on the other hand we would much rather participate
directly in the Debian security release process.  Would it be possible for
us as a third-party corporation to be a part of that process?

  * Even if an e500 port does not go upstream, would it be possible to get
the appropriate entries added to the upstream dpkg cpu and triplet tables?
We're using a simple 10-line patch to dpkg locally, hopefully that would be

Your advice, comments, and criticism are highly appreciated!

Kyle Moffett

Kyle Moffett
eXMeritus Software
Integrated Intelligence
The Boeing Company

Reply to: