[v3] symbol versioning layout and configure clarifications

Geoffrey Keating geoffk@geoffk.org
Mon Dec 19 02:45:00 GMT 2005


Benjamin Kosnik <bkoz@redhat.com> writes:

> This is a large patch that moves around the abi baseline files, into a
> deeper nesting of config/abi. The goal is to try and move all the
> configure-related abi bits into config/abi, and give clear definition
> to the existing --enable-symvers choices.

As neat as this is, in compatibility.cc

-#ifdef __APPLE__
+#ifdef _GLIBCXX_SYMVER_DARWIN

isn't right.  Even if the user does not ask for export control,
libstdc++ must still export __eprintf on Darwin or it won't be
backwards compatible.  Sorry!

Maybe we should just say that this is not a user-controllable setting;
if you want to build on ELF you must have symbol versioning and if you
want to build on Darwin you must use export control?  That would
certainly make life simpler.

I originally called the Darwin export control 'darwin-export' because
I expected that in the future we'd have 'darwin-symver', but it looks
like this won't happen, because symbol versioning just isn't helpful
on Darwin.  So changing it to 'darwin' should be fine.



More information about the Gcc-patches mailing list