diff options
author | Dave Korn <dave.korn.cygwin@gmail.com> | 2010-10-07 20:28:59 +0000 |
---|---|---|
committer | Dave Korn <davek@gcc.gnu.org> | 2010-10-07 20:28:59 +0000 |
commit | 1cd0b7167ed9b43b189c39549d8165a020aee9b6 (patch) | |
tree | 946186568fee00058aace74937894e09bce8b4b8 /configure | |
parent | 6ba74c2d192958de47dc1d7b36125495441a4d50 (diff) | |
download | gcc-1cd0b7167ed9b43b189c39549d8165a020aee9b6.zip gcc-1cd0b7167ed9b43b189c39549d8165a020aee9b6.tar.gz gcc-1cd0b7167ed9b43b189c39549d8165a020aee9b6.tar.bz2 |
configure.ac (build_lto_plugin): New shell variable.
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.
From-SVN: r165133
Diffstat (limited to 'configure')
-rwxr-xr-x | configure | 13 |
1 files changed, 10 insertions, 3 deletions
@@ -6676,11 +6676,13 @@ to specify its location." "$LINENO" 5 # Flags needed for libelf. + # ELF platforms build the lto-plugin when GOLD is in use. + build_lto_plugin=${ENABLE_GOLD} fi else if test x"$default_enable_lto" = x"yes" ; then case $target in - *-apple-darwin*) ;; + *-apple-darwin* | *-cygwin* | *-mingw*) ;; # On other non-ELF platforms, LTO must be explicitly enabled. *) enable_lto=no ;; esac @@ -6691,13 +6693,18 @@ else # warn during gcc/ subconfigure; unless you're bootstrapping with # -flto it won't be needed until after installation anyway. case $target in - *-cygwin*|*-mingw* | *-apple-darwin*) ;; + *-cygwin* | *-mingw* | *-apple-darwin*) ;; *) if test x"$enable_lto" = x"yes"; then as_fn_error "LTO support is not enabled for this target." "$LINENO" 5 fi ;; esac fi + # Among non-ELF, only Windows platforms support the lto-plugin so far. + case $target in + *-cygwin* | *-mingw*) build_lto_plugin=yes ;; + *) ;; + esac default_enable_lto=no fi @@ -6778,7 +6785,7 @@ if test -d ${srcdir}/gcc; then *,lto,*) ;; *) enable_languages="${enable_languages},lto" ;; esac - if test "${ENABLE_GOLD}" = "yes" ; then + if test "${build_lto_plugin}" = "yes" ; then configdirs="$configdirs lto-plugin" extra_host_libiberty_configure_flags=--enable-shared fi |