All pastes #2092606 Raw Edit

no-fat

public diff v1 · immutable
#2092606 ·published 2011-10-22 18:58 UTC
rendered paste body
diff --git a/config/bootstrap-lto.mk b/config/bootstrap-lto.mkindex bbd3515..75b8cce 100644--- a/config/bootstrap-lto.mk+++ b/config/bootstrap-lto.mk@@ -1,5 +1,5 @@ # This option enables LTO for stage2 and stage3. -STAGE2_CFLAGS += -flto=jobserver -frandom-seed=1-STAGE3_CFLAGS += -flto=jobserver -frandom-seed=1+STAGE2_CFLAGS += -flto=jobserver -fno-fat-lto-objects -frandom-seed=1+STAGE3_CFLAGS += -flto=jobserver -fno-fat-lto-objects -frandom-seed=1 STAGEprofile_CFLAGS += -fno-ltodiff --git a/libtool.m4 b/libtool.m4index 71bcee8..b324c82 100644--- a/libtool.m4+++ b/libtool.m4@@ -3427,6 +3427,7 @@ for ac_symprfx in "" "_"; do   else     lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[	 ]]\($symcode$symcode*\)[[	 ]][[	 ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"   fi+  lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"    # Check to see that the pipe works correctly.   pipe_works=no@@ -4444,7 +4445,7 @@ _LT_EOF       if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \ 	 && test "$tmp_diet" = no       then-	tmp_addflag=+	tmp_addflag=' $pic_flag' 	tmp_sharedflag='-shared' 	case $cc_basename,$host_cpu in         pgcc*)				# Portland Group C compiler@@ -5510,8 +5511,8 @@ if test "$_lt_caught_CXX_error" != yes; then       # Check if GNU C++ uses GNU ld as the underlying linker, since the       # archiving commands below assume that GNU ld is being used.       if test "$with_gnu_ld" = yes; then-        _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'-        _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'+        _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'+        _LT_TAGVAR(archive_expsym_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'          _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'         _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'@@ -6488,6 +6489,13 @@ public class foo { }; _LT_EOF ])++_lt_libdeps_save_CFLAGS=$CFLAGS+case "$CC $CFLAGS " in #(+*\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;+*\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;+esac+ dnl Parse the compiler output and extract the necessary dnl objects, libraries and library flags. if AC_TRY_EVAL(ac_compile); then@@ -6536,6 +6544,7 @@ if AC_TRY_EVAL(ac_compile); then        fi        ;; +    *.lto.$objext) ;; # Ignore GCC LTO objects     *.$objext)        # This assumes that the test object file only shows up        # once in the compiler output.@@ -6571,6 +6580,7 @@ else fi  $RM -f confest.$objext+CFLAGS=$_lt_libdeps_save_CFLAGS  # PORTME: override above test on systems where it is broken m4_if([$1], [CXX],diff --git a/ltmain.sh b/ltmain.shindex a03433f..8c3589f 100644--- a/ltmain.sh+++ b/ltmain.sh@@ -4980,7 +4980,8 @@ func_mode_link ()       # @file GCC response files       # -tp=* Portland pgcc target processor selection       -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \-      -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*)+      -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*| \+      -O*|-flto*|-fwhopr|-fuse-linker-plugin)         func_quote_for_eval "$arg" 	arg="$func_quote_for_eval_result"         func_append compile_command " $arg"