libstdc++ darwin multilibbing support

Benjamin Kosnik bkoz@redhat.com
Wed Feb 16 17:28:00 GMT 2005



> Here is a patch that adds darwin multilibbing support for -fapple-kext 
> and -static to libstdc++. 

This part is fine. ie:

+	* acinclude.mm4 (GLIBCXX_ENABLE_THREADS): Enable changing the threading model in a
+	multilib.
+	* config/os/bsd/darwin/os_defines.h: Add -fapple-kext and -static multilib support.
+	* configure.host (darwin[89]): Likewise.
+	* crossconfig.m4 (*-darwin*): Likewise.
+	* configure: Regenerate.

+	* acinclude.m4 (GLIBCXX_ENABLE_SJLJ_EXCEPTIONS): Likewise.

> The most useful non-darwin feature is the 
> addition of support for -fno-exceptions multilib support for libsupc++.

This part completely puzzles me, and seems unnecessary: without it,
-fno-exceptions is fine for compilation. What you are doing is removing
definitions with this flag (which may make more sense, but is a
different idea than the current approach, which is that -fno-exceptions
should compile, and if people are using it, they aren't using exceptions
so this stuff doesn't matter.) 

Can you explain why you're doing this again? Especially why guard.cc has
overlapping __EXCEPTIONS regions? 

Do you think that __builtin_trap should be used consistently instead of std::abort?

-benjamin



More information about the Libstdc++ mailing list