On Mon, 28 Sep 2009, Diego Novillo wrote: > - libiberty > I need help with this one. When the linker plugin is > enabled (if GCC is configured to use gold), LTO can > detect LTO objects inside archives via the callbacks it > gets from the linker. Since the linker plugin is a > shared object, and it uses libiberty functions, it needs > to use a shared libiberty. > > Currently, we just force --enable-shared on libiberty, > but I would only want to do that if gold and lto are > enabled. We detect gold and lto support in the top > configure script, but how do I send that down to > libiberty's configure?
Shared libiberty seems like a bad idea as you then need to deal with soname allocation and changing the soname whenever an ABI-incompatible change is made. What you actually need is a PIC libiberty to link into the plugin (and avoiding using any global data in libiberty that needs a single copy in any program; hopefully it doesn't have any), not a shared one. (You also need to make sure this doesn't affect what is built for the target, only for the host.) -- Joseph S. Myers jos...@codesourcery.com