X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2Fconfigure;h=2384f4249172d2d4ec3f527f6726dc1f7da98514;hb=9702264ef825c6e62581a8a2daf2c5405e480bbf;hp=53f5eb8e806e095f2255844bf0536795ea6f0a1f;hpb=993c17152a79499f1dcb8f0865f7f7a97755faee;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/configure b/gcc/configure index 53f5eb8e806..2384f424917 100755 --- a/gcc/configure +++ b/gcc/configure @@ -671,6 +671,8 @@ subdirs slibdir dollar gcc_tooldir +LTO_USE_LIBELF +LTO_BINARY_READER enable_lto MAINT zlibinc @@ -893,6 +895,7 @@ enable_initfini_array enable_sjlj_exceptions with_system_libunwind enable_secureplt +enable_leading_mingw64_underscores enable_cld enable_win32_registry enable_static @@ -1590,6 +1593,8 @@ Optional Features: --enable-sjlj-exceptions arrange to use setjmp/longjmp exception handling --enable-secureplt enable -msecure-plt by default for PowerPC + --enable-leading-mingw64-underscores + Enable leading underscores on 64 bit mingw targets --enable-cld enable -mcld by default for 32bit x86 --disable-win32-registry disable lookup of installation paths in the @@ -10683,6 +10688,17 @@ if test "${enable_secureplt+set}" = set; then : fi +# Check whether --enable-leading-mingw64-underscores was given. +if test "${enable_leading_mingw64_underscores+set}" = set; then : + enableval=$enable_leading_mingw64_underscores; +fi + +if test x"$enable_leading_mingw64_underscores" = xyes ; then : + +$as_echo "#define USE_MINGW64_LEADING_UNDERSCORES 1" >>confdefs.h + +fi + # Check whether --enable-cld was given. if test "${enable_cld+set}" = set; then : enableval=$enable_cld; @@ -17092,7 +17108,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 17095 "configure" +#line 17111 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -17198,7 +17214,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 17201 "configure" +#line 17217 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -21327,6 +21343,8 @@ else gcc_cv_ld_hidden=yes ;; *-*-solaris2.9* | *-*-solaris2.1[0-9]*) + # Support for .hidden in Sun ld appeared in Solaris 9 FCS, but + # .symbolic was only added in Solaris 9 12/02. gcc_cv_ld_hidden=yes ;; *) @@ -22942,6 +22960,48 @@ if test $gcc_cv_as_ix86_pe_secrel32 = yes; then $as_echo "#define HAVE_GAS_PE_SECREL32_RELOC 1" >>confdefs.h fi + # Test if the assembler supports the extended form of the .section + # directive that specifies section alignment. LTO support uses this, + # but normally only after installation, so we warn but don't fail the + # configure if LTO is enabled but the assembler does not support it. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for .section with alignment" >&5 +$as_echo_n "checking assembler for .section with alignment... " >&6; } +if test "${gcc_cv_as_section_has_align+set}" = set; then : + $as_echo_n "(cached) " >&6 +else + gcc_cv_as_section_has_align=no + if test $in_tree_gas = yes; then + if test $gcc_cv_gas_vers -ge `expr \( \( 2 \* 1000 \) + 20 \) \* 1000 + 1` + then gcc_cv_as_section_has_align=yes +fi + elif test x$gcc_cv_as != x; then + echo '.section lto_test,"dr0"' > conftest.s + if { ac_try='$gcc_cv_as $gcc_cv_as_flags -fatal-warnings -o conftest.o conftest.s >&5' + { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 + (eval $ac_try) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; } + then + gcc_cv_as_section_has_align=yes + else + echo "configure: failed program was" >&5 + cat conftest.s >&5 + fi + rm -f conftest.o conftest.s + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_as_section_has_align" >&5 +$as_echo "$gcc_cv_as_section_has_align" >&6; } + + if test x$gcc_cv_as_section_has_align != xyes; then + case ",$enable_languages," in + *,lto,*) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: LTO for $target requires binutils >= 2.20.1, but version found appears insufficient; LTO will not work until binutils is upgraded." >&5 +$as_echo "$as_me: WARNING: LTO for $target requires binutils >= 2.20.1, but version found appears insufficient; LTO will not work until binutils is upgraded." >&2;} + ;; + esac + fi ;; esac @@ -23168,7 +23228,7 @@ $as_echo "#define HAVE_AS_IX86_DIFF_SECT_DELTA 1" >>confdefs.h fi - # This one is used unconditionally by i386.[ch]; it is to be defined + # These two are used unconditionally by i386.[ch]; it is to be defined # to 1 if the feature is present, 0 otherwise. { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for GOTOFF in data" >&5 $as_echo_n "checking assembler for GOTOFF in data... " >&6; } @@ -23209,6 +23269,40 @@ cat >>confdefs.h <<_ACEOF #define HAVE_AS_GOTOFF_IN_DATA `if test $gcc_cv_as_ix86_gotoff_in_data = yes; then echo 1; else echo 0; fi` _ACEOF + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for rep and lock prefix" >&5 +$as_echo_n "checking assembler for rep and lock prefix... " >&6; } +if test "${gcc_cv_as_ix86_rep_lock_prefix+set}" = set; then : + $as_echo_n "(cached) " >&6 +else + gcc_cv_as_ix86_rep_lock_prefix=no + if test x$gcc_cv_as != x; then + echo 'rep movsl + lock orl $0, (%esp)' > conftest.s + if { ac_try='$gcc_cv_as $gcc_cv_as_flags -o conftest.o conftest.s >&5' + { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 + (eval $ac_try) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; } + then + gcc_cv_as_ix86_rep_lock_prefix=yes + else + echo "configure: failed program was" >&5 + cat conftest.s >&5 + fi + rm -f conftest.o conftest.s + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_as_ix86_rep_lock_prefix" >&5 +$as_echo "$gcc_cv_as_ix86_rep_lock_prefix" >&6; } + + +cat >>confdefs.h <<_ACEOF +#define HAVE_AS_IX86_REP_LOCK_PREFIX `if test $gcc_cv_as_ix86_rep_lock_prefix = yes; then echo 1; else echo 0; fi` +_ACEOF + + ;; ia64*-*-*) @@ -24563,7 +24657,8 @@ EOF if $gcc_cv_ld -o conftest conftest.o --entry=_start --gc-sections 2>&1 \ | grep "gc-sections option ignored" > /dev/null; then gcc_cv_ld_eh_gc_sections=no - elif $gcc_cv_objdump -h conftest | grep gcc_except_table > /dev/null; then + elif $gcc_cv_objdump -h conftest 2> /dev/null \ + | grep gcc_except_table > /dev/null; then gcc_cv_ld_eh_gc_sections=yes # If no COMDAT groups, the compiler will emit .gnu.linkonce.t. sections. if test x$gcc_cv_as_comdat_group != xyes; then @@ -24590,7 +24685,8 @@ EOF if $gcc_cv_ld -o conftest conftest.o --entry=_start --gc-sections 2>&1 \ | grep "gc-sections option ignored" > /dev/null; then gcc_cv_ld_eh_gc_sections=no - elif $gcc_cv_objdump -h conftest | grep gcc_except_table > /dev/null; then + elif $gcc_cv_objdump -h conftest 2> /dev/null \ + | grep gcc_except_table > /dev/null; then gcc_cv_ld_eh_gc_sections=yes fi fi @@ -25078,6 +25174,17 @@ $as_echo "#define ENABLE_LTO 1" >>confdefs.h enable_lto=yes + # LTO needs to speak the platform's object file format, and has a + # number of implementations of the required binary file access APIs. + # ELF is the most common, and default. We only link libelf if ELF + # is indeed the selected format. + LTO_BINARY_READER=${lto_binary_reader} + LTO_USE_LIBELF=-lelf + if test "x$lto_binary_reader" != "xlto-elf" ; then + LTO_USE_LIBELF= + fi + + ;; *) ;; esac @@ -25276,17 +25383,25 @@ fi pluginlibs= if test x"$enable_plugin" = x"yes"; then + case "${host}" in + *-*-darwin*) + export_sym_check="$gcc_cv_nm -g" + ;; + *) + export_sym_check="$gcc_cv_objdump -T" + ;; + esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking for exported symbols" >&5 $as_echo_n "checking for exported symbols... " >&6; } echo "int main() {return 0;} int foobar() {return 0;}" > conftest.c ${CC} ${CFLAGS} ${LDFLAGS} conftest.c -o conftest > /dev/null 2>&1 - if $gcc_cv_objdump -T conftest | grep foobar > /dev/null; then + if $export_sym_check conftest | grep foobar > /dev/null; then : # No need to use a flag else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -rdynamic" >&5 $as_echo_n "checking for -rdynamic... " >&6; } ${CC} ${CFLAGS} ${LDFLAGS} -rdynamic conftest.c -o conftest > /dev/null 2>&1 - if $gcc_cv_objdump -T conftest | grep foobar > /dev/null; then + if $export_sym_check conftest | grep foobar > /dev/null; then plugin_rdynamic=yes pluginlibs="-rdynamic" else @@ -25362,7 +25477,14 @@ fi # Check that we can build shared objects with -fPIC -shared saved_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS -fPIC -shared" + case "${host}" in + *-*-darwin*) + LDFLAGS="$LDFLAGS -fPIC -shared -undefined dynamic_lookup" + ;; + *) + LDFLAGS="$LDFLAGS -fPIC -shared" + ;; + esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -fPIC -shared" >&5 $as_echo_n "checking for -fPIC -shared... " >&6; } cat confdefs.h - <<_ACEOF >conftest.$ac_ext