Primary/Secondary Platforms for 4.3

Mark Mitchell mark@codesourcery.com
Sun Oct 1 19:29:00 GMT 2006


[This is a copy of the mail I sent to the SC regarding primary and 
secondary platforms for 4.3.  I tried to get everyone's input included; 
if I left anything out, it was an oversight.  Please feel free to 
contact the SC directly, or to ask me to forward additional information, 
if you have other input, or if you disagree with my suggestions.]

I think the SC should review and revise the list of primary and 
secondary platforms in preparation for the GCC 4.3 release cycle.  The 
current lists (for 4.2) are here:

   http://gcc.gnu.org/gcc-4.2/criteria.html

The meaning of the primary and secondary terms is also on that page. The 
key idea is that primary platforms should be very solid in our releases, 
and that secondary platforms should "mostly work".  Of course, we want 
all platforms to work well, but it's useful to have some criteria to 
help steer releases.

Recommendations
===============

This section has my personal recommendations, based on feedback from the 
GCC developer mailing list.  I don't think there were any very strong 
objections to this proposal when I sent it to the developers, but I'm 
not representing this as a universal consensus; it's just my opinion. In 
the next section are other suggestions that I received, but which I 
don't personally endorse.  I have included them here because I think 
it's important that the SC see the feedback, even if I didn't personally 
agree.

Primary Platforms
-----------------

     * arm-eabi
     * i386-unknown-freebsd
     * i686-pc-linux-gnu
     * i686-apple-darwin
     * mipsisa64-elf
     * powerpc64-unknown-linux-gnu
     * sparc-sun-solaris2.10
     * x86_64-unknown-linux-gnu

Secondary Platforms
-------------------

     * hppa2.0w-hp-hpux11.23
     * powerpc-ibm-aix5.2.0.0
     * powerpc-apple-darwin
     * i686-pc-cygwin
     * i686-mingw32
     * ia64-unknown-linux-gnu

The key changes I'm suggesting are:

* Change ARM ELF to ARM EABI, since most of the ARM community is now 
using the EABI variant on bare metal.

* Downgrade PowerPC AIX to secondary, in view of the fact that the 
community seems to be more focused on PowerPC GNU/Linux than on AIX at 
this point.

* Downgrade HPPA HP-UX to secondary, in view of the fact that HPPA chips 
have been EOL'd.

* Replace MIPS ELF with MIPSISA64 ELF, at the suggestion of the MIPS 
maintainers, to provide support for both 32-bit and 64-bit MIPS.

* Downgrade PowerPC Darwin to secondary, since Apple has EOL'd that 
platform.

* Add PowerPC GNU/Linux and IA32 Darwin as primary.

* Add IA32 Windows as secondary.

Other Suggestions
=================

Here are the suggestions that I'm not endorsing personally, but which I 
would like to pass along:

* Make AVR a secondary platform

* Replace the MIPS "bare metal" platform with a GNU/Linux platform.

* Make S/390 GNU/Linux a secondary platform

* Make both Intel and PowerPC Darwin primary platforms since they are 
widely used platforms.

* Remove both Intel and PowerPC Darwin from even secondary status, since 
  the Apple versions of the compiler are sufficiently different from the 
FSF versions that the FSF versions may not really work well on Apple's 
released OS.

* Keep HPPA HP-UX as primary, or, perhaps, replace it with Itanium HP-UX.

-- 
Mark Mitchell
CodeSourcery
mark@codesourcery.com
(650) 331-3385 x713



More information about the Gcc mailing list