Features/PPC64 as primary

= Make 64-bit the primary arch for 64-bit PowerPC hardware =

Summary
Provide a means for Fedora on 64-bit PowerPC hardware to have 64-bit as the primary architecture, which would enable users to better exploit their 64-bit PowerPC hardware and avoid restrictions associated with 32-bit applications.

Owner

 * Name: Maynard Johnson
 * email: 

Current status

 * Targeted release: Fedora 11
 * Last updated: 2009-02-12
 * Percentage of completion: n/a?

Detailed Description
Currently, 32-bit ppc is the default architecture, whether Fedora is installed on 32-bit or 64-bit PowerPC hardware. This leads to difficulties with software development, integration and installation when trying to use 64-bit programs on 64-bit hardware. Making 64-bit the default arch on 64-bit hardware is the simplest way to resolve these issues. This change in primary arch should also be accompanied with changing the default target for the compiler to be 64-bit (i.e., '-m64').

Ideally, this change should not prevent ppc32 software developed on earlier Fedora releases from being executed on Fedora 11. In theory, that implies a full complement of 32-bit runtime libraries to be made available in separate 32-bit packages (the inverse of what is provided today on Fedora). In practice, a reasonable approach may be to focus on providing just a subset of 32-bit libraries -- i.e., the most commonly used libraries.

Benefit to Fedora
Users who install Fedora on 64-bit PowerPC hardware will have a much more natural and smooth experience between their software and hardware, leading to higher satisfaction.

Scope
The scope of this change request is system-wide. I believe that, currently, ppc32 and ppc64 packages are built in separate buildroots. What I believe needs to be done to support this feature is:
 * 1) a pure ppc64 repo
 * 2) support in anaconda to do the right installation
 * 3) support in yum
 * 4) support in the repo compose scripts to do the multilib stuff properly

How To Test
Special hardware: 64-bit PowerPC hardware is needed
 * 1) Install the ppc64 build on a 64-bit PowerPC system, installing all base packages (i.e., the ppc64 packages).
 * 2) Perform standard tests.
 * 3) Ensure that C and C++ compilation of test programs results in 64-bit executables.
 * 4) Install secondary arch packages (i.e., 32-bit ppc).
 * 5) Ensure that C and C++ compilation using -m32 is successful.
 * 6) Run some popular 32-bit applications (from previous Fedora releases) to verify good bi-arch support.

User Experience
Software developers who install Fedora on 64-bit PowerPC hardware will notice that they don't have to bend over backwards to get their software to build 64-bit. The default 64-bit execution environment will also be appreicated.

Dependencies

 * Since this request is a system-wide change to the build process for PowerPC, there are no known dependencies.

Contingency Plan

 * None necessary, revert to previous release behaviour.

Documentation

 * None

Release Notes

 * Users installing or upgrading to Fedora 11 on 64-bit PowerPC hardware should note that the primary architecture is now ppc64. Package installation will default to ppc64, and compilation of C/C++ source code using Fedora-supplied compilers will default to 64-bit.

Comments and Discussion

 * See Talk:Features/PPC64_as_primary