This modularizes the libstdc++ sources such that the resulting library binaries are now composed of three convenience libraries. In short:
libstdc++.[a, so] == libc++98 + libc++11 + libsupc++ Arguably, this is the way it should have been done all along. And certainly since the C++11 support hit 5 or more files.... In any case, this helps resolve the knots gcc/libstdc++ config and build get themselves into when gcc requires static libstdc++, but the build says no-static (--disable-static). There are some warts that need addressing by a proper build maintainer. 1) dependency tracking for libstdc++convenience.la. Help. It's not installed and not really used in most cases, so this isn't crucial. But, perfection is a cruel mistress, and I'd like to get this right. 2) I suppose the docs should be updated to reflect this. To-do. I'm trying to get over my fear of using git for check-ins that require a bunch of renames etc etc. So, this is my first one of these. If I did it all wrong, please let me know gently and I'll try to fix it. This patch is huge due to all the re-names. Please check out the patch posted in bugzilla instead. best, benjamin tested x86-64/linux tested x86-64/linux -x- arm-eabi tested x86-64/linux -x- cris-elf