On 04/09/2018 11:21 AM, Yaakov Selkowitz wrote:
On 2018-04-09 03:59, Florian Weimer wrote:
Is there a recommend way to get libtool to pass through all flags
specified in CFLAGS and LDFLAGS unchanged, and have the GCC compiler
driver sort out which flags to pass to the compiler/assembler/linker?

$ libtool --mode=compile --help
[snip]
This mode accepts the following additional options:
[snip]
   -Wc,FLAG          pass FLAG directly to the compiler

$ libtool --mode=link --help
[snip]
The following components of LINK-COMMAND are treated specially:
[snip]
   -Wc,FLAG
   -Xcompiler FLAG   pass linker-specific FLAG directly to the compiler
   -Wl,FLAG
   -Xlinker FLAG     pass linker-specific FLAG directly to the linker

That doesn't solve the problem because there is a difference between passing a flag to the *linker* and passing it to the *compiler driver* while linking.

For LTO support, we should pass *all* of CFLAGS again during the linker compiler driver invocation. And libtool shouldn't try to guess which flags are needed in which phase.

Honestly, I have no idea why libtool tries to reimplement the compiler driver on GNU. I can see that it's needed on some other systems. If something doesn't work with GCC, we need to fix GCC, and not rewrite flags in libtool in undocumented ways.

But, often when this happens, it is the fault of a poorly written
configure.ac or Makefile.am.  Where exactly are you seeing an issue?

Everywhere? libtool does not pass -specs= arguments in LDFLAGS to the linker invocation.

Thanks,
Florian
_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org

Reply via email to