diff options
author | davek <davek@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-10-07 20:28:59 +0000 |
---|---|---|
committer | davek <davek@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-10-07 20:28:59 +0000 |
commit | ca42e77491a6617022d670c4866d71d5325a0177 (patch) | |
tree | 946186568fee00058aace74937894e09bce8b4b8 /lto-plugin/Makefile.am | |
parent | 983e6b0a73572aaf2575491e337db9e7c742f3e8 (diff) | |
download | gcc-ca42e77491a6617022d670c4866d71d5325a0177.tar.gz |
ChangeLog:
2010-10-07 Dave Korn <dave.korn.cygwin@gmail.com>
* configure.ac (build_lto_plugin): New shell variable.
(--enable-lto): Turn on by default for all non-ELF platforms that
have had LTO support added so far. Set build_lto_plugin appropriately
for both ELF and non-ELF.
(configdirs): Add lto-plugin or not based on build_lto_plugin.
* configure: Regenerate.
gcc/ChangeLog:
2010-10-07 Dave Korn <dave.korn.cygwin@gmail.com>
* config.host (host_lto_plugin_soname): New shell variable.
* configure.ac (LTOPLUGINSONAME): Add an AC_DEFINE for the above.
* config.in: Regenerate.
* configure: Regenerate.
* gcc.c (main): Use LTOPLUGINSONAME instead of hard-coding name of
LTO plugin shared library.
lto-plugin/ChangeLog:
2010-10-07 Dave Korn <dave.korn.cygwin@gmail.com>
* configure.ac: Source config.gcc to determine lto_binary_reader.
(LTO_FORMAT): New AC_SUBST variable inferred from lto_binary_reader.
* Makefile.am (LTO_FORMAT): Import.
(liblto_plugin_la_SOURCES): Add object format dependent module
defined by LTO_FORMAT.
(liblto_plugin_la_LIBADD): Allow for both PIC and non-PIC libiberty,
and work around libtool warning.
* configure: Regenerate.
* Makefile.in: Likewise.
* lto-plugin.c (struct sym_aux): Move to new lto-plugin.h.
(struct sym_aux): Likewise.
(struct plugin_symtab): Likewise.
(struct plugin_file_info): Likewise.
(LTO_SECTION_PREFIX): Likewise.
(add_symbols): Make non-static.
(claimed_files): Likewise.
(num_claimed_files): Likewise.
(check): Likewise.
(parse_table_entry): Likewise.
(translate): Likewise.
(resolve_conflicts): Likewise.
(process_symtab): Move to new lto-plugin-elf.c object format dependent
source file.
(claim_file_handler): Likewise, and make non-static.
(onload): Call new onload_format_checks function.
* lto-plugin.h: New file.
(LTO_SECTION_PREFIX): Move here.
(struct sym_aux): Likewise.
(struct plugin_symtab): Likewise.
(struct plugin_file_info): Likewise.
(claim_file_handler): Add new function prototype.
(onload_format_checks): Likewise.
(check): Declare extern.
(translate): Likewise.
(parse_table_entry): Likewise.
(resolve_conflicts): Likewise.
(add_symbols): Likewise.
(claimed_files): Likewise.
(num_claimed_files): Likewise.
* lto-plugin-elf.c (process_symtab): Move here.
(claim_file_handler): Likewise, and make non-static.
(onload_format_checks): New function factored out from onload.
* lto-plugin-coff.c (claim_file_handler): New function stub.
(onload_format_checks): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165133 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'lto-plugin/Makefile.am')
-rw-r--r-- | lto-plugin/Makefile.am | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/lto-plugin/Makefile.am b/lto-plugin/Makefile.am index da74e1c778c..52bf6719daa 100644 --- a/lto-plugin/Makefile.am +++ b/lto-plugin/Makefile.am @@ -11,13 +11,19 @@ libexecsubdir := $(libexecdir)/gcc/$(target_noncanonical)/$(gcc_version) LIBELFLIBS = @LIBELFLIBS@ LIBELFINC = @LIBELFINC@ +# Which object format to parse. +LTO_FORMAT = @LTO_FORMAT@ + AM_CPPFLAGS = -I$(top_srcdir)/../include $(LIBELFINC) AM_CFLAGS = -Wall -Werror libexecsub_LTLIBRARIES = liblto_plugin.la -liblto_plugin_la_SOURCES = lto-plugin.c -liblto_plugin_la_LIBADD = $(LIBELFLIBS) ../libiberty/pic/libiberty.a +liblto_plugin_la_SOURCES = lto-plugin.c lto-plugin-$(LTO_FORMAT).c +liblto_plugin_la_LIBADD = $(LIBELFLIBS) \ + $(if $(wildcard ../libiberty/pic/libiberty.a),../libiberty/pic/libiberty.a,) +liblto_plugin_la_LDFLAGS = -no-undefined -bindir $(libexecsubdir) \ + $(if $(wildcard ../libiberty/pic/libiberty.a),,-Wc,../libiberty/libiberty.a) all: copy_lto_plugin |