ppc64le architecture

Brent Baude baude at us.ibm.com
Wed Oct 23 21:09:36 UTC 2013

Greetings fellow secondary arch folks,

As some of you might know, we are working to introduce a new architecture
called ppc64le into Fedora. It's just as it sounds, ppc64 (64bit only) but
little endian. We've been emulating the Fedora process as close as possible
internally here and have quite a few packages built, including using things
like mock and koji.

As with introducing any new architecture, one of the issues we are seeing
is that current packages lack the libtool (config.guess|sub,m4) magic to
recognize the architecture.  While rpmbuild and mock do properly influence
build and targets, the one area we still a high rate of failure with is
when configure asks the linker if it supports shared libs.  In our case, it
actually asks the linker with the wrong architecture.

In an ideal situation, libtool would release a new version with the ppc64le
content (which is already upstream with them) and ALL upstream maintainers
would immediately add the new content and drop new releases.  That's ideal
but not realistic.

I also would prefer to NOT update every Fedora package/.spec with a patch
to fix this and would prefer to have this be the rare exception rather than
the rule.

So in the interest of beginning work in Fedora and not making a mess of
things, I'd like to propose another alternative (and solicit more ideas as
well).  In extending the case where configure “asks” the linker if it
supports shared libraries, it actually will pass an incorrect architecture.
Using lcms2's configure as an example:

checking whether the gcc -std=gnu99 linker (/bin/ld -m elf64ppc) supports
shared libraries... no

In our internal development here, we've patched the linker to always
respond as if it was asked about the ppc64le architecture.  This function
is enabled as an environment variable (LD_FORCE_LE=1).  We've been using
this for several months and I have yet to encounter an instance where
something bad happens.

So I'd like to propose that for initial Fedora ppc64le development, we
enable this patch for the linker, at least for the first release.
Meanwhile, we can identify and manage the list of packages that need
updated libtool information on the side.  We could then identify a good
cutover point and disable the linker patch in a future release.

If this could be helpful for other new arches like aarch64, we could share
the this patch as well.

I believe the Fedora PPC64 team is supportive of this (at least for the
ppc64le arch) but we wanted to just solicit broader input.

Feedback appreciated,


Brent J. Baude
Linux Technology Center
3605 Hwy 52N
Rochester, MN  55901

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.fedoraproject.org/pipermail/secondary/attachments/20131023/60c69bf8/attachment.html>

More information about the secondary mailing list