[oi-dev] Transitioning from Sun Studio to gcc & clang/llvm

Albert Lee trisk at opensolaris.org
Mon May 23 15:05:01 UTC 2011


On Mon, May 23, 2011 at 10:27 AM, Alasdair Lumsden <alasdairrr at gmail.com> wrote:
> Hi All,
>
> As per discussions on IRC, I'd like to formalise plans for the transition from Sun Studio to open source compiler suites. This is a medium-term transition plan, rather than a sweeping change.
>
> So far the general working plan I've put together based on feedback is:
>
> 1. Add gcc 4.5.3 support (or gcc 4.6) with LinkTimeOptimization disabled

Should we be linking libgcc statically (apparently adds on the order
of 10k to every binary) or will every application depend on a package
with the gcc libraries?

> 2. Follow the library layout guidelines set down by SFE
> 3. Compile gcc to use Sun ld, but GNU as
> 4. Use libstdc++ only where localisation is not affected

libstdc++'s ABI is quite volatile, which can lead to a sad trail of
objects with incompatible ABI versions, and all software depending on
it will have to be rebuilt.

> 5. Compile and supply llvm/clang

And libc++?

> 6. Ensure software we transition from Sun Studio compiles with both gcc and llvm/clang
> 7. Use gcc as the shipping default with a view to switching to llvm/clang at a future date, but allow either to be picked easily when it achieves performance and feature parity
>
> We can begin this process by applying the policy on new software we add to OI. How we transition our core consolidations can be discussed later on.
>
> If anyone has any serious objections to the above, let me know, otherwise I'll get this written up on the wiki as a policy.
>

This will cause problems with tools, possibility impacting debugging.
This also affects illumos builds as g++ and libgcc-linked objects will be
involved. Will SPARC support require the gccfss patches?

-Albert




More information about the oi-dev mailing list