In message <[email protected]>
John Tytgat <[email protected]> wrote:
> 4. Merge SCL stubs (libscl) and UnixLib : not really convinced yet this
> would be an overall win but again worthwhile to investigate.
> Pro:
> - The reasoning is that currently libscl is missing out network/socket
> support which is a pity as we can't build network related modules
> (I don't think libscl has any advantages on UnixLib for normal
> applications, binary footprint size aside).
> - We could solve this particular network issue by migrating the
> relevant bits from UnixLib to libscl but it could very well be that
> we get nearly freebies as well by doing the libscl & UnixLib
> merge : pthread support (perhaps), C++ (because missing runtime
> routines are available as UnixLib runtime routines).
> - It would eliminate several nasty hacks in our gcc tree to have
> two runtime libraries which are enabled/disabled depending on the
> multilib configuration we're building.
> The basic idea is that we still have this one unified runtime library
> between SCL and UnixLib mode based on the presence/absence of
> -mlibscl option in the current multilib configuration.
> This would also help out with point 5.
> Contra:
> - It risks to complicate the code base.
I've tried out this idea in a separate branch and it turns out more or
less what I thought it would be:
- SCL based programs have now network support (back).
- SCL based programs can now be written in C++ and use STL. We still
need to investigate exceptions and module code.
- Less ugly hacks in our gcc patches to have multiple runtime libraries
in one build tree as now from gcc pov there is only one runtime
library.
The price to pay is indeed that UnixLib becomes slightly more complicated.
After weighting the pros & cons I've decided that it was still worthwhile
to go for it so I've merged this change to trunk. There are still some
rough edges to smoothen out.
So for those following the trunk changes and building their own
cross-compiler, please do now a full clean build.
John.
--
John Tytgat, in his comfy chair at home BASS
[email protected] ARM powered, RISC OS driven
_______________________________________________
GCCSDK mailing list [email protected]
Bugzilla: http://www.riscos.info/bugzilla/index.cgi
List Info: http://www.riscos.info/mailman/listinfo/gcc
Main Page: http://www.riscos.info/index.php/GCCSDK