On Fri, 6 Feb 2009, Sean Callanan wrote: > - Modify the GCC link process to use libltdl and libtool -export-dynamic
Although this may make theoretical sense in terms of the work for a cross-platform implementation already being done, I doubt it's a good idea in practice if you want plugin-enabled GCC to be widely buildable and the binaries not to be very closely tied to the exact system on which they were built. (For example, for a while it was impossible to build current versions of guile on systems with current versions of libtool installed because of incompatible changes to libltdl, and I don't have much confidence in future compatibility of libltdl, or of it working reliably with GCC unless GCC always builds its own GCC-specific copy and links against it using -Wl,-rpath,(something involving $ORIGIN). I also don't see support for $ORIGIN in libtool, but toolchain relocatability means that absolute RPATH settings must not be used when linking GCC.) I'd suggest we simply put the host-dependent code in GCC, appropriately conditional, add code for more hosts as and when people wish to support them with plugins, and make sure that plugin-disabled builds continue to work for all hosts. There will undoubtedly be GCC-specific build system changes needed for such things as building almost everything into a DLL for Windows systems so that plugins on Windows can access symbols from GCC (I understand from the previous discussions that this will be necessary) and I doubt libtool would make such changes any easier. -- Joseph S. Myers jos...@codesourcery.com