tm_defines
tm_include_list
tm_file_list
-thread_file
+common_out_object_file
+common_out_file
out_object_file
out_file
objc_boehm_gc
host_xm_include_list
host_xm_file_list
host_exeext
+gcc_gxx_include_dir_add_sysroot
gcc_gxx_include_dir
gcc_config_arguments
float_h_file
extra_programs
extra_passes
-extra_parts
extra_objs
extra_headers_list
user_headers_inc_next_post
all_compilers
srcdir
subdirs
-slibdir
dollar
gcc_tooldir
enable_lto
USE_NLS
extra_opt_files
extra_modes_file
-gthread_flags
+NATIVE_SYSTEM_HEADER_DIR
objext
manext
LIBICONV_DEP
LTLIBICONV
LIBICONV
LDEXP_LIB
+EXTRA_GCC_LIBS
GNAT_LIBEXC
COLLECT2_LIBS
CXXCPP
CROSS_SYSTEM_HEADER_DIR
TARGET_SYSTEM_ROOT_DEFINE
TARGET_SYSTEM_ROOT
+SYSROOT_CFLAGS_FOR_TARGET
enable_shared
enable_fixed_point
enable_decimal_float
+with_float
+with_cpu
+enable_multiarch
enable_multilib
ENABLE_BUILD_WITH_CXX
coverage_flags
valgrind_path
TREEBROWSER
nocommon_flag
+noexception_flags
warn_cxxflags
warn_cflags
c_strict_warn
EGREP
GREP
CPP
+PICFLAG_FOR_TARGET
OUTPUT_OPTION
NO_MINUS_C_MINUS_O
GNATMAKE
enable_build_with_cxx
with_stabs
enable_multilib
+enable_multiarch
enable___cxa_atexit
enable_decimal_float
enable_fixed_point
enable_objc_gc
with_dwarf2
enable_shared
+with_native_system_header_dir
with_build_sysroot
with_sysroot
with_specs
with_multilib_list
enable_rpath
with_libiconv_prefix
-enable_initfini_array
enable_sjlj_exceptions
-with_system_libunwind
enable_secureplt
enable_leading_mingw64_underscores
enable_cld
enable_libtool_lock
with_plugin_ld
enable_gnu_indirect_function
+enable_initfini_array
enable_comdat
enable_gnu_unique_object
enable_linker_build_id
with_system_zlib
enable_maintainer_mode
enable_version_specific_runtime_libs
-with_slibdir
enable_plugin
enable_libquadmath_support
+with_linker_hash_style
'
ac_precious_vars='build_alias
host_alias
--disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
--enable-FEATURE[=ARG] include FEATURE [ARG=yes]
--enable-generated-files-in-srcdir
- put copies of generated files in source dir
- intended for creating source tarballs for users
- without texinfo bison or flex.
+ put copies of generated files in source dir intended
+ for creating source tarballs for users without
+ texinfo bison or flex
--disable-largefile omit support for large files
--enable-werror-always enable -Werror despite compiler version
- --enable-checking=LIST
- enable expensive run-time checks. With LIST,
- enable only specific categories of checks.
- Categories are: yes,no,all,none,release.
- Flags are: assert,df,fold,gc,gcac,gimple,misc,
- rtlflag,rtl,runtime,tree,valgrind,types.
- --enable-coverage=LEVEL
- enable compiler's code coverage collection.
- Use to measure compiler performance and locate
- unused parts of the compiler. With LEVEL, specify
- optimization. Values are opt, noopt,
- default is noopt
- --enable-gather-detailed-mem-stats enable detailed memory allocation stats gathering
+ --enable-checking[=LIST]
+ enable expensive run-time checks. With LIST, enable
+ only specific categories of checks. Categories are:
+ yes,no,all,none,release. Flags are:
+ assert,df,fold,gc,gcac,gimple,misc,
+ rtlflag,rtl,runtime,tree,valgrind,types
+ --enable-coverage[=LEVEL]
+ enable compiler's code coverage collection. Use to
+ measure compiler performance and locate unused parts
+ of the compiler. With LEVEL, specify optimization.
+ Values are opt, noopt, default is noopt
+ --enable-gather-detailed-mem-stats
+ enable detailed memory allocation stats gathering
--enable-build-with-cxx build with C++ compiler instead of C compiler
--enable-multilib enable library support for multiple ABIs
+ --enable-multiarch enable support for multiarch paths
--enable-__cxa_atexit enable __cxa_atexit for C++
--enable-decimal-float={no,yes,bid,dpd}
enable decimal float extension to C. Selecting 'bid'
or 'dpd' choses which decimal floating point format
to use
--enable-fixed-point enable fixed-point arithmetic extension to C
- --enable-threads enable thread usage for target GCC
- --enable-threads=LIB use LIB thread package for target GCC
- --enable-tls enable or disable generation of tls code
- overriding the assembler check for tls support
- --enable-objc-gc enable the use of Boehm's garbage collector with
- the GNU Objective-C runtime
+ --enable-threads[=LIB] enable thread usage for target GCC, using LIB thread
+ package
+ --enable-tls enable or disable generation of tls code overriding
+ the assembler check for tls support
+ --enable-objc-gc enable the use of Boehm's garbage collector with the
+ GNU Objective-C runtime
--disable-shared don't provide a shared libgcc
--enable-languages=LIST specify which front-ends to build
--disable-rpath do not hardcode runtime library paths
- --enable-initfini-array use .init_array/.fini_array sections
--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 leading underscores on 64 bit mingw targets
--enable-cld enable -mcld by default for 32bit x86
- --enable-frame-pointer enable -fno-omit-frame-pointer by default for 32bit x86
+ --enable-frame-pointer enable -fno-omit-frame-pointer by default for 32bit
+ x86
--disable-win32-registry
- disable lookup of installation paths in the
- Registry on Windows hosts
+ disable lookup of installation paths in the Registry
+ on Windows hosts
--enable-win32-registry enable registry lookup (default)
--enable-win32-registry=KEY
use KEY instead of GCC version as the last portion
--enable-gnu-indirect-function
enable the use of the @gnu_indirect_function to
glibc systems
+ --enable-initfini-array use .init_array/.fini_array sections
--enable-comdat enable COMDAT group support
--enable-gnu-unique-object
enable the use of the @gnu_unique_object ELF
--enable-linker-build-id
compiler will always pass --build-id to linker
--enable-maintainer-mode
- enable make rules and dependencies not useful
- (and sometimes confusing) to the casual installer
+ enable make rules and dependencies not useful (and
+ sometimes confusing) to the casual installer
--enable-version-specific-runtime-libs
- specify that runtime libraries should be
- installed in a compiler-specific directory
+ specify that runtime libraries should be installed
+ in a compiler-specific directory
--enable-plugin enable plugin support
--disable-libquadmath-support
disable libquadmath support for Fortran
--with-cpp-install-dir=DIR
install the user visible C preprocessor in DIR
(relative to PREFIX) as well as PREFIX/bin
- --with-gnu-ld arrange to work with GNU ld.
+ --with-gnu-ld arrange to work with GNU ld
--with-ld arrange to use the specified ld (full pathname)
- --with-demangler-in-ld try to use demangler in GNU ld.
+ --with-demangler-in-ld try to use demangler in GNU ld
--with-gnu-as arrange to work with GNU as
--with-as arrange to use the specified as (full pathname)
--with-stabs arrange to use stabs instead of host debug format
--with-dwarf2 force the default debug format to be DWARF 2
+ --with-native-system-header-dir=dir
+ use dir as the directory to look for standard
+ system header files in. Defaults to /usr/include.
--with-build-sysroot=sysroot
use sysroot as the system root during the build
- --with-sysroot=DIR Search for usr/lib, usr/include, et al, within DIR.
+ --with-sysroot[=DIR] search for usr/lib, usr/include, et al, within DIR
--with-specs=SPECS add SPECS to driver command-line processing
--with-pkgversion=PKG Use PKG in the version string in place of "GCC"
--with-bugurl=URL Direct users to URL to report a bug
- --with-multilib-list Select multilibs (SH only)
+ --with-multilib-list select multilibs (SH and x86-64 only)
--with-gnu-ld assume the C compiler uses GNU ld default=no
--with-libiconv-prefix[=DIR] search for libiconv in DIR/include and DIR/lib
--without-libiconv-prefix don't search for libiconv in includedir and libdir
- --with-system-libunwind use installed libunwind
--with-pic try to use only PIC/non-PIC objects [default=use
both]
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
--with-plugin-ld=[ARG] specify the plugin linker
- --with-long-double-128 Use 128-bit long double by default.
- --with-gc={page,zone} choose the garbage collection mechanism to use
- with the compiler
+ --with-long-double-128 use 128-bit long double by default
+ --with-gc={page,zone} choose the garbage collection mechanism to use with
+ the compiler
--with-system-zlib use installed libz
- --with-slibdir=DIR shared libraries in DIR [LIBDIR]
+ --with-linker-hash-style={sysv,gnu,both}
+ specify the linker hash style
Some influential environment variables:
CC C compiler command
fi
fi
+gcc_gxx_include_dir_add_sysroot=0
+if test "${with_sysroot+set}" = set; then
+ gcc_gxx_without_sysroot=`expr "${gcc_gxx_include_dir}" : "${with_sysroot}"'\(.*\)'`
+ if test "${gcc_gxx_without_sysroot}"; then
+ gcc_gxx_include_dir="${gcc_gxx_without_sysroot}"
+ gcc_gxx_include_dir_add_sysroot=1
+ fi
+fi
+
# Check whether --with-cpp_install_dir was given.
if test "${with_cpp_install_dir+set}" = set; then :
fi
-gnu_ld=`if test x"$gnu_ld_flag" = x"yes"; then echo 1; else echo 0; fi`
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GNU_LD $gnu_ld
-_ACEOF
-
-
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a default linker was specified" >&5
$as_echo_n "checking whether a default linker was specified... " >&6; }
if test x"${DEFAULT_LINKER+set}" = x"set"; then
if test "${with_demangler_in_ld+set}" = set; then :
withval=$with_demangler_in_ld; demangler_in_ld="$with_demangler_in_ld"
else
- demangler_in_ld=no
+ demangler_in_ld=yes
fi
fi
-gnu_as=`if test x"$gas_flag" = x"yes"; then echo 1; else echo 0; fi`
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GNU_AS $gnu_as
-_ACEOF
-
-
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a default assembler was specified" >&5
$as_echo_n "checking whether a default assembler was specified... " >&6; }
if test x"${DEFAULT_ASSEMBLER+set}" = x"set"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $acx_cv_cc_gcc_supports_ada" >&5
$as_echo "$acx_cv_cc_gcc_supports_ada" >&6; }
-if test x$GNATBIND != xno && test x$GNATMAKE != xno && test x$acx_cv_cc_gcc_supports_ada != xno; then
+if test "x$GNATBIND" != xno && test "x$GNATMAKE" != xno && test x$acx_cv_cc_gcc_supports_ada != xno; then
have_gnat=yes
else
have_gnat=no
esac
+# Determine PICFLAG for target gnatlib.
+
+
+
+
+case "${target}" in
+ # PIC is the default on some targets or must not be used.
+ *-*-darwin*)
+ # PIC is the default on this platform
+ # Common symbols not allowed in MH_DYLIB files
+ PICFLAG_FOR_TARGET=-fno-common
+ ;;
+ alpha*-dec-osf5*)
+ # PIC is the default.
+ ;;
+ hppa*64*-*-hpux*)
+ # PIC is the default for 64-bit PA HP-UX.
+ ;;
+ i[34567]86-*-cygwin* | i[34567]86-*-mingw* | x86_64-*-mingw*)
+ ;;
+ i[34567]86-*-interix[3-9]*)
+ # Interix 3.x gcc -fpic/-fPIC options generate broken code.
+ # Instead, we relocate shared libraries at runtime.
+ ;;
+ i[34567]86-*-nto-qnx*)
+ # QNX uses GNU C++, but need to define -shared option too, otherwise
+ # it will coredump.
+ PICFLAG_FOR_TARGET='-fPIC -shared'
+ ;;
+ i[34567]86-pc-msdosdjgpp*)
+ # DJGPP does not support shared libraries at all.
+ ;;
+ ia64*-*-hpux*)
+ # On IA64 HP-UX, PIC is the default but the pic flag
+ # sets the default TLS model and affects inlining.
+ PICFLAG_FOR_TARGET=-fPIC
+ ;;
+ mips-sgi-irix6*)
+ # PIC is the default.
+ ;;
+ rs6000-ibm-aix* | powerpc-ibm-aix*)
+ # All AIX code is PIC.
+ ;;
+
+ # Some targets support both -fPIC and -fpic, but prefer the latter.
+ # FIXME: Why?
+ i[34567]86-*-* | x86_64-*-*)
+ PICFLAG_FOR_TARGET=-fpic
+ ;;
+ m68k-*-*)
+ PICFLAG_FOR_TARGET=-fpic
+ ;;
+ # FIXME: Override -fPIC default in libgcc only?
+ sh-*-linux* | sh[2346lbe]*-*-linux*)
+ PICFLAG_FOR_TARGET=-fpic
+ ;;
+ # FIXME: Simplify to sh*-*-netbsd*?
+ sh-*-netbsdelf* | shl*-*-netbsdelf* | sh5-*-netbsd* | sh5l*-*-netbsd* | \
+ sh64-*-netbsd* | sh64l*-*-netbsd*)
+ PICFLAG_FOR_TARGET=-fpic
+ ;;
+ # Default to -fPIC unless specified otherwise.
+ *)
+ PICFLAG_FOR_TARGET=-fPIC
+ ;;
+esac
+
+# If the user explicitly uses -fpic/-fPIC, keep that.
+case "${CFLAGS_FOR_TARGET}" in
+ *-fpic*)
+ PICFLAG_FOR_TARGET=-fpic
+ ;;
+ *-fPIC*)
+ PICFLAG_FOR_TARGET=-fPIC
+ ;;
+esac
+
+
+
# -------------------------
# Check C compiler features
# -------------------------
# * 'long long'
# * variadic macros
# * overlong strings
+# * C++11 narrowing conversions in { }
# So, we only use -pedantic if we can disable those warnings.
loose_warn=
save_CFLAGS="$CFLAGS"
-for option in -W -Wall -Wwrite-strings -Wcast-qual; do
+for real_option in -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual; do
+ # Do the check with the no- prefix removed since gcc silently
+ # accepts any -Wno-* option on purpose
+ case $real_option in
+ -Wno-*) option=-W`expr x$real_option : 'x-Wno-\(.*\)'` ;;
+ *) option=$real_option ;;
+ esac
as_acx_Woption=`$as_echo "acx_cv_prog_cc_warning_$option" | $as_tr_sh`
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports $option" >&5
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
$as_echo "$ac_res" >&6; }
if test `eval 'as_val=${'$as_acx_Woption'};$as_echo "$as_val"'` = yes; then :
- loose_warn="$loose_warn${loose_warn:+ }$option"
+ loose_warn="$loose_warn${loose_warn:+ }$real_option"
fi
done
CFLAGS="$save_CFLAGS"
c_loose_warn=
save_CFLAGS="$CFLAGS"
-for option in -Wstrict-prototypes -Wmissing-prototypes; do
+for real_option in -Wstrict-prototypes -Wmissing-prototypes; do
+ # Do the check with the no- prefix removed since gcc silently
+ # accepts any -Wno-* option on purpose
+ case $real_option in
+ -Wno-*) option=-W`expr x$real_option : 'x-Wno-\(.*\)'` ;;
+ *) option=$real_option ;;
+ esac
as_acx_Woption=`$as_echo "acx_cv_prog_cc_warning_$option" | $as_tr_sh`
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports $option" >&5
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
$as_echo "$ac_res" >&6; }
if test `eval 'as_val=${'$as_acx_Woption'};$as_echo "$as_val"'` = yes; then :
- c_loose_warn="$c_loose_warn${c_loose_warn:+ }$option"
+ c_loose_warn="$c_loose_warn${c_loose_warn:+ }$real_option"
fi
done
CFLAGS="$save_CFLAGS"
strict_warn=
save_CFLAGS="$CFLAGS"
-for option in -Wmissing-format-attribute; do
+for real_option in -Wmissing-format-attribute; do
+ # Do the check with the no- prefix removed since gcc silently
+ # accepts any -Wno-* option on purpose
+ case $real_option in
+ -Wno-*) option=-W`expr x$real_option : 'x-Wno-\(.*\)'` ;;
+ *) option=$real_option ;;
+ esac
as_acx_Woption=`$as_echo "acx_cv_prog_cc_warning_$option" | $as_tr_sh`
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports $option" >&5
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
$as_echo "$ac_res" >&6; }
if test `eval 'as_val=${'$as_acx_Woption'};$as_echo "$as_val"'` = yes; then :
- strict_warn="$strict_warn${strict_warn:+ }$option"
+ strict_warn="$strict_warn${strict_warn:+ }$real_option"
fi
done
CFLAGS="$save_CFLAGS"
c_strict_warn=
save_CFLAGS="$CFLAGS"
-for option in -Wold-style-definition -Wc++-compat; do
+for real_option in -Wold-style-definition -Wc++-compat; do
+ # Do the check with the no- prefix removed since gcc silently
+ # accepts any -Wno-* option on purpose
+ case $real_option in
+ -Wno-*) option=-W`expr x$real_option : 'x-Wno-\(.*\)'` ;;
+ *) option=$real_option ;;
+ esac
as_acx_Woption=`$as_echo "acx_cv_prog_cc_warning_$option" | $as_tr_sh`
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports $option" >&5
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
$as_echo "$ac_res" >&6; }
if test `eval 'as_val=${'$as_acx_Woption'};$as_echo "$as_val"'` = yes; then :
- c_strict_warn="$c_strict_warn${c_strict_warn:+ }$option"
+ c_strict_warn="$c_strict_warn${c_strict_warn:+ }$real_option"
fi
done
CFLAGS="$save_CFLAGS"
+# Do the check with the no- prefix removed from the warning options
+# since gcc silently accepts any -Wno-* option on purpose
if test "$GCC" = yes; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings" >&5
-$as_echo_n "checking whether $CC supports -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings... " >&6; }
-if test "${acx_cv_prog_cc_pedantic__Wno_long_long__Wno_variadic_macros__Wno_overlength_strings+set}" = set; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports -pedantic -Wlong-long -Wvariadic-macros -Woverlength-strings" >&5
+$as_echo_n "checking whether $CC supports -pedantic -Wlong-long -Wvariadic-macros -Woverlength-strings... " >&6; }
+if test "${acx_cv_prog_cc_pedantic__Wlong_long__Wvariadic_macros__Woverlength_strings+set}" = set; then :
$as_echo_n "(cached) " >&6
else
save_CFLAGS="$CFLAGS"
-CFLAGS="-pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings"
+CFLAGS="-pedantic -Wlong-long -Wvariadic-macros -Woverlength-strings"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
}
_ACEOF
if ac_fn_c_try_compile "$LINENO"; then :
- acx_cv_prog_cc_pedantic__Wno_long_long__Wno_variadic_macros__Wno_overlength_strings=yes
+ acx_cv_prog_cc_pedantic__Wlong_long__Wvariadic_macros__Woverlength_strings=yes
else
- acx_cv_prog_cc_pedantic__Wno_long_long__Wno_variadic_macros__Wno_overlength_strings=no
+ acx_cv_prog_cc_pedantic__Wlong_long__Wvariadic_macros__Woverlength_strings=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
CFLAGS="$save_CFLAGS"
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $acx_cv_prog_cc_pedantic__Wno_long_long__Wno_variadic_macros__Wno_overlength_strings" >&5
-$as_echo "$acx_cv_prog_cc_pedantic__Wno_long_long__Wno_variadic_macros__Wno_overlength_strings" >&6; }
-if test $acx_cv_prog_cc_pedantic__Wno_long_long__Wno_variadic_macros__Wno_overlength_strings = yes; then :
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $acx_cv_prog_cc_pedantic__Wlong_long__Wvariadic_macros__Woverlength_strings" >&5
+$as_echo "$acx_cv_prog_cc_pedantic__Wlong_long__Wvariadic_macros__Woverlength_strings" >&6; }
+if test $acx_cv_prog_cc_pedantic__Wlong_long__Wvariadic_macros__Woverlength_strings = yes; then :
strict_warn="$strict_warn${strict_warn:+ }-pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings"
fi
+# Disable exceptions and RTTI if building with g++
+noexception_flags=
+save_CFLAGS="$CFLAGS"
+for real_option in -fno-exceptions -fno-rtti; do
+ # Do the check with the no- prefix removed since gcc silently
+ # accepts any -Wno-* option on purpose
+ case $real_option in
+ -Wno-*) option=-W`expr x$real_option : 'x-Wno-\(.*\)'` ;;
+ *) option=$real_option ;;
+ esac
+ as_acx_Woption=`$as_echo "acx_cv_prog_cc_warning_$option" | $as_tr_sh`
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports $option" >&5
+$as_echo_n "checking whether $CC supports $option... " >&6; }
+if { as_var=$as_acx_Woption; eval "test \"\${$as_var+set}\" = set"; }; then :
+ $as_echo_n "(cached) " >&6
+else
+ CFLAGS="$option"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ eval "$as_acx_Woption=yes"
+else
+ eval "$as_acx_Woption=no"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
+fi
+eval ac_res=\$$as_acx_Woption
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+ if test `eval 'as_val=${'$as_acx_Woption'};$as_echo "$as_val"'` = yes; then :
+ noexception_flags="$noexception_flags${noexception_flags:+ }$real_option"
+fi
+ done
+CFLAGS="$save_CFLAGS"
+
+
# Enable expensive internal checks
is_release=
if test x"`cat $srcdir/DEV-PHASE`" != xexperimental; then
+# Determine whether or not multiarch is enabled.
+# Check whether --enable-multiarch was given.
+if test "${enable_multiarch+set}" = set; then :
+ enableval=$enable_multiarch; case "${enableval}" in
+yes|no|auto) enable_multiarch=$enableval;;
+*) as_fn_error "bad value ${enableval} given for --enable-multiarch option" "$LINENO" 5 ;;
+esac
+else
+ enable_multiarch=auto
+fi
+
+if test x${enable_multiarch} = xauto; then
+ if test x${with_native_system_header_dir} != x; then
+ ma_msg_suffix=", disabled auto check (configured with --native-system-header-dir)"
+ enable_multiarch=no
+ fi
+ if test x$host != x$target && test "x$with_sysroot" = x; then
+ ma_msg_suffix=", disabled auto check (cross build configured without --with-sysroot)"
+ enable_multiarch=no
+ fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for multiarch configuration" >&5
+$as_echo_n "checking for multiarch configuration... " >&6; }
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_multiarch$ma_msg_suffix" >&5
+$as_echo "$enable_multiarch$ma_msg_suffix" >&6; }
+
+# needed for setting the multiarch name for soft-float/hard-float ABIs
+
+
+
# Enable __cxa_atexit for C++.
# Check whether --enable-__cxa_atexit was given.
if test "${enable___cxa_atexit+set}" = set; then :
# Check whether --enable-fixed-point was given.
if test "${enable_fixed_point+set}" = set; then :
enableval=$enable_fixed_point;
-
else
case $target in
+ arm*)
+ enable_fixed_point=yes
+ ;;
+
mips*-*-*)
case $host in
mips*-sgi-irix*)
+# Check whether --with-native-system-header-dir was given.
+if test "${with_native_system_header_dir+set}" = set; then :
+ withval=$with_native_system_header_dir;
+ case ${with_native_system_header_dir} in
+ yes|no) as_fn_error "bad value ${withval} given for --with-native-system-header-dir" "$LINENO" 5 ;;
+ /* | [A-Za-z]:[\\/]*) ;;
+ *) as_fn_error "--with-native-system-header-dir argument ${withval} must be an absolute directory" "$LINENO" 5 ;;
+ esac
+ configured_native_system_header_dir="${withval}"
+
+else
+ configured_native_system_header_dir=
+fi
+
+
+
# Check whether --with-build-sysroot was given.
if test "${with_build_sysroot+set}" = set; then :
- withval=$with_build_sysroot;
+ withval=$with_build_sysroot; if test x"$withval" != x ; then
+ SYSROOT_CFLAGS_FOR_TARGET="--sysroot=$withval"
+ fi
+else
+ SYSROOT_CFLAGS_FOR_TARGET=
fi
+
# Check whether --with-sysroot was given.
if test "${with_sysroot+set}" = set; then :
withval=$with_sysroot;
RANLIB="$ac_cv_prog_RANLIB"
fi
-case "${host}" in
-*-*-darwin*)
- # By default, the Darwin ranlib will not treat common symbols as
- # definitions when building the archive table of contents. Other
- # ranlibs do that; pass an option to the Darwin ranlib that makes
- # it behave similarly.
- ranlib_flags="-c"
- ;;
-*)
- ranlib_flags=""
-esac
+ranlib_flags=""
# Find a good install program. We prefer a C program (faster),
LIBS="$save_LIBS"
+# To support -mcpu=native on Solaris/SPARC, we need libkstat.
+save_LIBS="$LIBS"
+LIBS=
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing kstat_open" >&5
+$as_echo_n "checking for library containing kstat_open... " >&6; }
+if test "${ac_cv_search_kstat_open+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char kstat_open ();
+int
+main ()
+{
+return kstat_open ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' kstat; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_kstat_open=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if test "${ac_cv_search_kstat_open+set}" = set; then :
+ break
+fi
+done
+if test "${ac_cv_search_kstat_open+set}" = set; then :
+
+else
+ ac_cv_search_kstat_open=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_kstat_open" >&5
+$as_echo "$ac_cv_search_kstat_open" >&6; }
+ac_res=$ac_cv_search_kstat_open
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+
+fi
+
+EXTRA_GCC_LIBS="$LIBS"
+LIBS="$save_LIBS"
+
+
# Some systems put ldexp and frexp in libm instead of libc; assume
# they're both in the same place. jcf-dump needs them.
save_LIBS="$LIBS"
for ac_func in times clock kill getrlimit setrlimit atoll atoq \
sysconf strsignal getrusage nl_langinfo \
gettimeofday mbstowcs wcswidth mmap setlocale \
- clearerr_unlocked feof_unlocked ferror_unlocked fflush_unlocked fgetc_unlocked fgets_unlocked fileno_unlocked fprintf_unlocked fputc_unlocked fputs_unlocked fread_unlocked fwrite_unlocked getchar_unlocked getc_unlocked putchar_unlocked putc_unlocked
+ clearerr_unlocked feof_unlocked ferror_unlocked fflush_unlocked fgetc_unlocked fgets_unlocked fileno_unlocked fprintf_unlocked fputc_unlocked fputs_unlocked fread_unlocked fwrite_unlocked getchar_unlocked getc_unlocked putchar_unlocked putc_unlocked madvise
do :
as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
fi
+# g++ on Solaris 10+ defines _XOPEN_SOURCE=600, which exposes a different
+# iconv() prototype.
if test "X$prefix" = "XNONE"; then
acl_final_prefix="$ac_default_prefix"
fi
+if test "$ENABLE_BUILD_WITH_CXX" = "yes"; then :
+ ac_ext=cpp
+ac_cpp='$CXXCPP $CPPFLAGS'
+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_cxx_try_link "$LINENO"; then :
am_cv_func_iconv=yes
fi
rm -f core conftest.err conftest.$ac_objext \
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_cxx_try_link "$LINENO"; then :
am_cv_lib_iconv=yes
am_cv_func_iconv=yes
fi
return 0;
}
_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_cxx_try_compile "$LINENO"; then :
am_cv_proto_iconv_arg1=""
else
am_cv_proto_iconv_arg1="const"
fi
-# Until we have in-tree GNU iconv:
-LIBICONV_DEP=
+ ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LC_MESSAGES" >&5
-$as_echo_n "checking for LC_MESSAGES... " >&6; }
-if test "${am_cv_val_LC_MESSAGES+set}" = set; then :
+
+
+
+ am_save_CPPFLAGS="$CPPFLAGS"
+
+ for element in $INCICONV; do
+ haveit=
+ for x in $CPPFLAGS; do
+
+ acl_save_prefix="$prefix"
+ prefix="$acl_final_prefix"
+ acl_save_exec_prefix="$exec_prefix"
+ exec_prefix="$acl_final_exec_prefix"
+ eval x=\"$x\"
+ exec_prefix="$acl_save_exec_prefix"
+ prefix="$acl_save_prefix"
+
+ if test "X$x" = "X$element"; then
+ haveit=yes
+ break
+ fi
+ done
+ if test -z "$haveit"; then
+ CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element"
+ fi
+ done
+
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for iconv" >&5
+$as_echo_n "checking for iconv... " >&6; }
+if test "${am_cv_func_iconv+set}" = set; then :
$as_echo_n "(cached) " >&6
else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+
+ am_cv_func_iconv="no, consider installing GNU libiconv"
+ am_cv_lib_iconv=no
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-#include <locale.h>
+#include <stdlib.h>
+#include <iconv.h>
int
main ()
{
-return LC_MESSAGES
+iconv_t cd = iconv_open("","");
+ iconv(cd,NULL,NULL,NULL,NULL);
+ iconv_close(cd);
;
return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
- am_cv_val_LC_MESSAGES=yes
-else
- am_cv_val_LC_MESSAGES=no
+ am_cv_func_iconv=yes
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_val_LC_MESSAGES" >&5
-$as_echo "$am_cv_val_LC_MESSAGES" >&6; }
- if test $am_cv_val_LC_MESSAGES = yes; then
-
-$as_echo "#define HAVE_LC_MESSAGES 1" >>confdefs.h
-
- fi
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for nl_langinfo and CODESET" >&5
-$as_echo_n "checking for nl_langinfo and CODESET... " >&6; }
-if test "${am_cv_langinfo_codeset+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <langinfo.h>
+ if test "$am_cv_func_iconv" != yes; then
+ am_save_LIBS="$LIBS"
+ LIBS="$LIBS $LIBICONV"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <stdlib.h>
+#include <iconv.h>
+int
+main ()
+{
+iconv_t cd = iconv_open("","");
+ iconv(cd,NULL,NULL,NULL,NULL);
+ iconv_close(cd);
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ am_cv_lib_iconv=yes
+ am_cv_func_iconv=yes
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+ LIBS="$am_save_LIBS"
+ fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_iconv" >&5
+$as_echo "$am_cv_func_iconv" >&6; }
+ if test "$am_cv_func_iconv" = yes; then
+
+$as_echo "#define HAVE_ICONV 1" >>confdefs.h
+
+ fi
+ if test "$am_cv_lib_iconv" = yes; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libiconv" >&5
+$as_echo_n "checking how to link with libiconv... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBICONV" >&5
+$as_echo "$LIBICONV" >&6; }
+ else
+ CPPFLAGS="$am_save_CPPFLAGS"
+ LIBICONV=
+ LTLIBICONV=
+ fi
+
+
+
+ if test "$am_cv_func_iconv" = yes; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for iconv declaration" >&5
+$as_echo_n "checking for iconv declaration... " >&6; }
+ if test "${am_cv_proto_iconv+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+#include <stdlib.h>
+#include <iconv.h>
+extern
+#ifdef __cplusplus
+"C"
+#endif
+#if defined(__STDC__) || defined(__cplusplus)
+size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);
+#else
+size_t iconv();
+#endif
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ am_cv_proto_iconv_arg1=""
+else
+ am_cv_proto_iconv_arg1="const"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ am_cv_proto_iconv="extern size_t iconv (iconv_t cd, $am_cv_proto_iconv_arg1 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);"
+fi
+
+ am_cv_proto_iconv=`echo "$am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'`
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${ac_t:-
+ }$am_cv_proto_iconv" >&5
+$as_echo "${ac_t:-
+ }$am_cv_proto_iconv" >&6; }
+
+cat >>confdefs.h <<_ACEOF
+#define ICONV_CONST $am_cv_proto_iconv_arg1
+_ACEOF
+
+ fi
+
+fi
+
+# Until we have in-tree GNU iconv:
+LIBICONV_DEP=
+
+
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LC_MESSAGES" >&5
+$as_echo_n "checking for LC_MESSAGES... " >&6; }
+if test "${am_cv_val_LC_MESSAGES+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <locale.h>
+int
+main ()
+{
+return LC_MESSAGES
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ am_cv_val_LC_MESSAGES=yes
+else
+ am_cv_val_LC_MESSAGES=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_val_LC_MESSAGES" >&5
+$as_echo "$am_cv_val_LC_MESSAGES" >&6; }
+ if test $am_cv_val_LC_MESSAGES = yes; then
+
+$as_echo "#define HAVE_LC_MESSAGES 1" >>confdefs.h
+
+ fi
+
+
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for nl_langinfo and CODESET" >&5
+$as_echo_n "checking for nl_langinfo and CODESET... " >&6; }
+if test "${am_cv_langinfo_codeset+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <langinfo.h>
int
main ()
{
# We will need to find libiberty.h and ansidecl.h
saved_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -I${srcdir} -I${srcdir}/../include"
+saved_CXXFLAGS="$CXXFLAGS"
+CXXFLAGS="$CXXFLAGS -I${srcdir} -I${srcdir}/../include"
for ac_func in getenv atol asprintf sbrk abort atof getcwd getwd \
- strsignal strstr strverscmp \
+ strsignal strstr stpcpy strverscmp \
errno snprintf vsnprintf vasprintf malloc realloc calloc \
free basename getopt clock getpagesize clearerr_unlocked feof_unlocked ferror_unlocked fflush_unlocked fgetc_unlocked fgets_unlocked fileno_unlocked fprintf_unlocked fputc_unlocked fputs_unlocked fread_unlocked fwrite_unlocked getchar_unlocked getc_unlocked putchar_unlocked putc_unlocked
do
done
+# g++ on Solaris 10+ defines _XOPEN_SOURCE=600, which hides the madvise()
+# prototype.
+if test "$ENABLE_BUILD_WITH_CXX" = "yes"; then :
+ ac_ext=cpp
+ac_cpp='$CXXCPP $CPPFLAGS'
+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+
+ for ac_func in madvise
+do
+ ac_tr_decl=`$as_echo "HAVE_DECL_$ac_func" | $as_tr_cpp`
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $ac_func is declared" >&5
+$as_echo_n "checking whether $ac_func is declared... " >&6; }
+if { as_var=gcc_cv_have_decl_$ac_func; eval "test \"\${$as_var+set}\" = set"; }; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#undef $ac_tr_decl
+#define $ac_tr_decl 1
+
+ #include "ansidecl.h"
+ #include "system.h"
+
+
+int
+main ()
+{
+#ifndef $ac_func
+char *(*pfn) = (char *(*)) $ac_func ;
+#endif
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_cxx_try_compile "$LINENO"; then :
+ eval "gcc_cv_have_decl_$ac_func=yes"
+else
+ eval "gcc_cv_have_decl_$ac_func=no"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+
+if eval "test \"`echo '$gcc_cv_have_decl_'$ac_func`\" = yes"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; } ; cat >>confdefs.h <<_ACEOF
+#define $ac_tr_decl 1
+_ACEOF
+
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; } ; cat >>confdefs.h <<_ACEOF
+#define $ac_tr_decl 0
+_ACEOF
+
+fi
+
+done
+
+ ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+else
+ for ac_func in madvise
+do
+ ac_tr_decl=`$as_echo "HAVE_DECL_$ac_func" | $as_tr_cpp`
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $ac_func is declared" >&5
+$as_echo_n "checking whether $ac_func is declared... " >&6; }
+if { as_var=gcc_cv_have_decl_$ac_func; eval "test \"\${$as_var+set}\" = set"; }; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#undef $ac_tr_decl
+#define $ac_tr_decl 1
+
+ #include "ansidecl.h"
+ #include "system.h"
+
+
+int
+main ()
+{
+#ifndef $ac_func
+char *(*pfn) = (char *(*)) $ac_func ;
+#endif
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ eval "gcc_cv_have_decl_$ac_func=yes"
+else
+ eval "gcc_cv_have_decl_$ac_func=no"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+
+if eval "test \"`echo '$gcc_cv_have_decl_'$ac_func`\" = yes"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; } ; cat >>confdefs.h <<_ACEOF
+#define $ac_tr_decl 1
+_ACEOF
+
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; } ; cat >>confdefs.h <<_ACEOF
+#define $ac_tr_decl 0
+_ACEOF
+
+fi
+
+done
+
+
+fi
+
# More time-related stuff.
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct tms" >&5
$as_echo_n "checking for struct tms... " >&6; }
fi
-# Restore CFLAGS from before the gcc_AC_NEED_DECLARATIONS tests.
-CFLAGS="$saved_CFLAGS"
-
-# Check whether --enable-initfini-array was given.
-if test "${enable_initfini_array+set}" = set; then :
- enableval=$enable_initfini_array;
-else
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for .preinit_array/.init_array/.fini_array support" >&5
-$as_echo_n "checking for .preinit_array/.init_array/.fini_array support... " >&6; }
-if test "${gcc_cv_initfini_array+set}" = set; then :
+# Check if F_SETLKW is supported by fcntl.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for F_SETLKW" >&5
+$as_echo_n "checking for F_SETLKW... " >&6; }
+if test "${ac_cv_f_setlkw+set}" = set; then :
$as_echo_n "(cached) " >&6
else
- if test "$cross_compiling" = yes; then :
- gcc_cv_initfini_array=no
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-static int x = -1;
-int main (void) { return x; }
-int foo (void) { x = 0; }
-int (*fp) (void) __attribute__ ((section (".init_array"))) = foo;
+#include <fcntl.h>
+int
+main ()
+{
+
+struct flock fl;
+fl.l_whence = 0;
+fl.l_start = 0;
+fl.l_len = 0;
+fl.l_pid = 0;
+return fcntl (1, F_SETLKW, &fl);
+ ;
+ return 0;
+}
_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
- gcc_cv_initfini_array=yes
+if ac_fn_c_try_compile "$LINENO"; then :
+ ac_cv_f_setlkw=yes
else
- gcc_cv_initfini_array=no
+ ac_cv_f_setlkw=no
fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_f_setlkw" >&5
+$as_echo "$ac_cv_f_setlkw" >&6; }
+if test $ac_cv_f_setlkw = yes; then
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_initfini_array" >&5
-$as_echo "$gcc_cv_initfini_array" >&6; }
- enable_initfini_array=$gcc_cv_initfini_array
+$as_echo "#define HOST_HAS_F_SETLKW 1" >>confdefs.h
fi
-if test $enable_initfini_array = yes; then
-
-$as_echo "#define HAVE_INITFINI_ARRAY 1" >>confdefs.h
-
-fi
+# Restore CFLAGS, CXXFLAGS from before the gcc_AC_NEED_DECLARATIONS tests.
+CFLAGS="$saved_CFLAGS"
+CXXFLAGS="$saved_CXXFLAGS"
# mkdir takes a single argument on some systems.
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if mkdir takes one argument" >&5
fi
-# For platforms with the unwind ABI which includes an unwind library,
-# libunwind, we can choose to use the system libunwind.
-# config.gcc also contains tests of with_system_libunwind.
-
-
-# Check whether --with-system-libunwind was given.
-if test "${with_system_libunwind+set}" = set; then :
- withval=$with_system_libunwind;
-fi
-
- # If system-libunwind was not specifically set, pick a default setting.
- if test x$with_system_libunwind = x; then
- case ${target} in
- ia64-*-hpux*) with_system_libunwind=yes ;;
- *) with_system_libunwind=no ;;
- esac
- fi
- # Based on system-libunwind and target, do we have ipinfo?
- if test x$with_system_libunwind = xyes; then
- case ${target} in
- ia64-*-*) have_unwind_getipinfo=no ;;
- *) have_unwind_getipinfo=yes ;;
- esac
- else
- # Darwin before version 9 does not have _Unwind_GetIPInfo.
-
- case ${target} in
- *-*-darwin[3-8]|*-*-darwin[3-8].*) have_unwind_getipinfo=no ;;
- *) have_unwind_getipinfo=yes ;;
- esac
-
- fi
-
- if test x$have_unwind_getipinfo = xyes; then
-
-$as_echo "#define HAVE_GETIPINFO 1" >>confdefs.h
-
- fi
-
-
# --------------------------------------------------------
# Build, host, and target specific configuration fragments
# --------------------------------------------------------
then tmake_file=$cpu_type/t-$cpu_type
fi
+# Support --enable-initfini-array.
+if test x$enable_initfini_array != xno; then
+ tm_file="${tm_file} initfini-array.h"
+fi
+
if test x"$dwarf2" = xyes
then tm_file="$tm_file tm-dwarf2.h"
fi
fi
+gnu_ld_bool=`if test x"$gnu_ld" = x"yes"; then echo 1; else echo 0; fi`
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_GNU_LD $gnu_ld_bool
+_ACEOF
+
+
+gnu_as_bool=`if test x"$gas" = x"yes"; then echo 1; else echo 0; fi`
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_GNU_AS $gnu_as_bool
+_ACEOF
+
+
count=a
for f in $host_xm_file; do
count=${count}x
fi
fi
+if test -n "$configured_native_system_header_dir"; then
+ native_system_header_dir=$configured_native_system_header_dir
+fi
+NATIVE_SYSTEM_HEADER_DIR="$native_system_header_dir"
+
+
case ${host} in
powerpc*-*-darwin*)
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mcontext_t fields have underscores" >&5
# default
target_thread_file='single'
;;
- aix | dce | gnat | irix | posix | posix95 | rtems | \
- single | solaris | vxworks | win32 | mipssde)
+ aix | dce | lynx | mipssde | posix | rtems | \
+ single | tpf | vxworks | win32)
target_thread_file=${enable_threads}
;;
*)
thread_file=${target_thread_file}
fi
-# Make gthr-default.h if we have a thread file.
-gthread_flags=
-if test $thread_file != single; then
- echo "#include \"gthr-${thread_file}.h\"" > gthr-default.h-t
- if diff gthr-default.h-t gthr-default.h 2>/dev/null; then
- rm -f gthr-default.h-t
- else
- mv -f gthr-default.h-t gthr-default.h
- fi
- gthread_flags=-DHAVE_GTHR_DEFAULT
-fi
-
-
# --------
# UNSORTED
# --------
cat > plugin-version.h <<EOF
#include "configargs.h"
+#define GCCPLUGIN_VERSION_MAJOR `echo $gcc_BASEVER | sed -e 's/^\([0-9]*\).*$/\1/'`
+#define GCCPLUGIN_VERSION_MINOR `echo $gcc_BASEVER | sed -e 's/^[0-9]*\.\([0-9]*\).*$/\1/'`
+#define GCCPLUGIN_VERSION_PATCHLEVEL `echo $gcc_BASEVER | sed -e 's/^[0-9]*\.[0-9]*\.\([0-9]*\)$/\1/'`
+#define GCCPLUGIN_VERSION (GCCPLUGIN_VERSION_MAJOR*1000 + GCCPLUGIN_VERSION_MINOR)
+
static char basever[] = "$gcc_BASEVER";
static char datestamp[] = "$gcc_DATESTAMP";
static char devphase[] = "$gcc_DEVPHASE";
tmake_file="${tmake_file_}"
out_object_file=`basename $out_file .c`.o
+common_out_object_file=`basename $common_out_file .c`.o
tm_file_list="options.h"
tm_include_list="options.h insn-constants.h"
hardcode_shlibpath_var=no
;;
- freebsd1*)
- ld_shlibs=no
- ;;
-
# FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
# support. Future versions do this automatically, but an explicit c++rt0.o
# does not break anything, and helps significantly (at the cost of a little
;;
# Unfortunately, older versions of FreeBSD 2 do not have this feature.
- freebsd2*)
+ freebsd2.*)
archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
hardcode_direct=yes
hardcode_minus_L=yes
shlibpath_var=LD_LIBRARY_PATH
;;
-freebsd1*)
- dynamic_linker=no
- ;;
-
freebsd* | dragonfly*)
# DragonFly does not have aout. When/if they implement a new
# versioning mechanism, adjust this.
objformat=`/usr/bin/objformat`
else
case $host_os in
- freebsd[123]*) objformat=aout ;;
+ freebsd[23].*) objformat=aout ;;
*) objformat=elf ;;
esac
fi
esac
shlibpath_var=LD_LIBRARY_PATH
case $host_os in
- freebsd2*)
+ freebsd2.*)
shlibpath_overrides_runpath=yes
;;
freebsd3.[01]* | freebsdelf3.[01]*)
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 17516 "configure"
+#line 18049 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 17622 "configure"
+#line 18155 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
esac
;;
- freebsd[12]*)
+ freebsd2.*)
# C++ shared libraries reported to be fairly broken before
# switch to ELF
ld_shlibs_CXX=no
shlibpath_var=LD_LIBRARY_PATH
;;
-freebsd1*)
- dynamic_linker=no
- ;;
-
freebsd* | dragonfly*)
# DragonFly does not have aout. When/if they implement a new
# versioning mechanism, adjust this.
objformat=`/usr/bin/objformat`
else
case $host_os in
- freebsd[123]*) objformat=aout ;;
+ freebsd[23].*) objformat=aout ;;
*) objformat=elf ;;
esac
fi
esac
shlibpath_var=LD_LIBRARY_PATH
case $host_os in
- freebsd2*)
+ freebsd2.*)
shlibpath_overrides_runpath=yes
;;
freebsd3.[01]* | freebsdelf3.[01]*)
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking what linker to use" >&5
$as_echo_n "checking what linker to use... " >&6; }
-if test "$gcc_cv_ld" = ../ld/ld-new$build_exeext; then
+if test "$gcc_cv_ld" = ../ld/ld-new$build_exeext \
+ || test "$gcc_cv_ld" = ../gold/ld-new$build_exeext; then
# Single tree build which includes ld. We want to prefer it
# over whatever linker top-level may have detected, since
# we'll use what we're building after installation anyway.
|| grep 'EMUL = .*linux' ../ld/Makefile \
|| grep 'EMUL = .*lynx' ../ld/Makefile) > /dev/null; then
in_tree_ld_is_elf=yes
+ elif test "$ld_is_gold" = yes; then
+ in_tree_ld_is_elf=yes
fi
for f in $gcc_cv_ld_bfd_srcdir/configure $gcc_cv_ld_gld_srcdir/configure $gcc_cv_ld_gld_srcdir/configure.in $gcc_cv_ld_gld_srcdir/Makefile.in
do
i[34567]86-*-linux*)
gcc_cv_as_flags="--32"
;;
+ powerpc*-*-darwin*)
+ gcc_cv_as_flags="-arch ppc"
+ ;;
*)
gcc_cv_as_flags=" "
;;
then gcc_cv_as_balign_and_p2align=yes
fi
elif test x$gcc_cv_as != x; then
- echo '.balign 4
+ $as_echo '.balign 4
.p2align 2' > 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
then gcc_cv_as_max_skip_p2align=yes
fi
elif test x$gcc_cv_as != x; then
- echo '.p2align 4,,7' > conftest.s
+ $as_echo '.p2align 4,,7' > 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
then gcc_cv_as_literal16=yes
fi
elif test x$gcc_cv_as != x; then
- echo '.literal16' > conftest.s
+ $as_echo '.literal16' > 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
then gcc_cv_as_subsection_m1=yes
fi
elif test x$gcc_cv_as != x; then
- echo 'conftest_label1: .word 0
+ $as_echo 'conftest_label1: .word 0
.subsection -1
conftest_label2: .word 0
.previous' > conftest.s
then gcc_cv_as_weak=yes
fi
elif test x$gcc_cv_as != x; then
- echo ' .weak foobar' > conftest.s
+ $as_echo ' .weak foobar' > 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
then gcc_cv_as_weakref=yes
fi
elif test x$gcc_cv_as != x; then
- echo ' .weakref foobar, barfnot' > conftest.s
+ $as_echo ' .weakref foobar, barfnot' > 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
then gcc_cv_as_nsubspa_comdat=yes
fi
elif test x$gcc_cv_as != x; then
- echo ' .SPACE $TEXT$
+ $as_echo ' .SPACE $TEXT$
.NSUBSPA $CODE$,COMDAT' > 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
then gcc_cv_as_hidden=yes
fi
elif test x$gcc_cv_as != x; then
- echo ' .hidden foobar
+ $as_echo ' .hidden foobar
foobar:' > 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
# Solaris 9/x86 as incorrectly emits an alias for a hidden symbol with
# STV_HIDDEN, so disable .hidden support if so.
case "${target}" in
- i?86-*-solaris2*)
+ i?86-*-solaris2* | x86_64-*-solaris2.1[0-9]*)
if test x$gcc_cv_as != x && test x$gcc_cv_objdump != x; then
cat > conftest.s <<EOF
.globl hidden
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_as_hidden" >&5
$as_echo "$gcc_cv_as_hidden" >&6; }
+case "${target}" in
+ *-*-darwin*)
+ # Darwin as has some visibility support, though with a different syntax.
+ gcc_cv_as_hidden=yes
+ ;;
+esac
# gnu_indirect_function type is an extension proposed at
# http://groups.google/com/group/generic-abi/files. It allows dynamic runtime
if test $in_tree_ld != yes ; then
ld_ver=`$gcc_cv_ld --version 2>/dev/null | sed 1q`
- if test x"$ld_is_gold" = xyes; then
- gcc_cv_ld_hidden=yes
- elif echo "$ld_ver" | grep GNU > /dev/null; then
- ld_vers=`echo $ld_ver | sed -n \
- -e 's,^.*[ ]\([0-9][0-9]*\.[0-9][0-9]*.*\)$,\1,p'`
+ if echo "$ld_ver" | grep GNU > /dev/null; then
+ if test x"$ld_is_gold" = xyes; then
+ # GNU gold --version looks like this:
+ #
+ # GNU gold (GNU Binutils 2.21.51.20110225) 1.11
+ #
+ # We extract the binutils version which is more familiar and specific
+ # than the gold version.
+ ld_vers=`echo $ld_ver | sed -n \
+ -e 's,^[^)]*[ ]\([0-9][0-9]*\.[0-9][0-9]*[^)]*\)) .*$,\1,p'`
+ else
+ # GNU ld --version looks like this:
+ #
+ # GNU ld (GNU Binutils) 2.21.51.20110225
+ ld_vers=`echo $ld_ver | sed -n \
+ -e 's,^.*[ ]\([0-9][0-9]*\.[0-9][0-9]*.*\)$,\1,p'`
+ fi
ld_date=`echo $ld_ver | sed -n 's,^.*\([2-9][0-9][0-9][0-9]\)[-]*\([01][0-9]\)[-]*\([0-3][0-9]\).*$,\1\2\3,p'`
ld_vers_major=`expr "$ld_vers" : '\([0-9]*\)'`
ld_vers_minor=`expr "$ld_vers" : '[0-9]*\.\([0-9]*\)'`
else
case "${target}" in
*-*-solaris2*)
+ # See acinclude.m4 (gcc_SUN_LD_VERSION) for the version number
+ # format.
#
- # Solaris 2 ld -V output looks like this for a regular version:
- #
- # ld: Software Generation Utilities - Solaris Link Editors: 5.11-1.1699
- #
- # but test versions add stuff at the end:
- #
- # ld: Software Generation Utilities - Solaris Link Editors: 5.11-1.1701:onnv-ab196087-6931056-03/25/10
- #
+ # Don't reuse gcc_gv_sun_ld_vers_* in case a linker other than
+ # /usr/ccs/bin/ld has been configured.
ld_ver=`$gcc_cv_ld -V 2>&1`
if echo "$ld_ver" | grep 'Solaris Link Editors' > /dev/null; then
ld_vers=`echo $ld_ver | sed -n \
fi
else
gcc_cv_ld_hidden=yes
- if echo "$ld_ver" | grep GNU > /dev/null; then
+ if test x"$ld_is_gold" = xyes; then
+ :
+ elif echo "$ld_ver" | grep GNU > /dev/null; then
if test 0"$ld_date" -lt 20020404; then
if test -n "$ld_date"; then
# If there was date string, but was earlier than 2002-04-04, fail
fi
else
case "${target}" in
+ *-*-darwin*)
+ # Darwin ld has some visibility support.
+ gcc_cv_ld_hidden=yes
+ ;;
hppa64*-*-hpux* | ia64*-*-hpux*)
gcc_cv_ld_hidden=yes
;;
fi
fi
fi
- rm -f conftest.* conftest[123].*
+ rm -f conftest.* conftest[123].*
+fi
+if test x$gcc_cv_ld_ro_rw_mix = xread-write; then
+
+$as_echo "#define HAVE_LD_RO_RW_SECTION_MIXING 1" >>confdefs.h
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_ld_ro_rw_mix" >&5
+$as_echo "$gcc_cv_ld_ro_rw_mix" >&6; }
+
+if test "x${build}" = "x${target}" && test "x${build}" = "x${host}"; then
+ case "${target}" in
+ *-*-solaris2*)
+ #
+ # Solaris 2 ld -V output looks like this for a regular version:
+ #
+ # ld: Software Generation Utilities - Solaris Link Editors: 5.11-1.1699
+ #
+ # but test versions add stuff at the end:
+ #
+ # ld: Software Generation Utilities - Solaris Link Editors: 5.11-1.1701:onnv-ab196087-6931056-03/25/10
+ #
+ gcc_cv_sun_ld_ver=`/usr/ccs/bin/ld -V 2>&1`
+ if echo "$gcc_cv_sun_ld_ver" | grep 'Solaris Link Editors' > /dev/null; then
+ gcc_cv_sun_ld_vers=`echo $gcc_cv_sun_ld_ver | sed -n \
+ -e 's,^.*: 5\.[0-9][0-9]*-\([0-9]\.[0-9][0-9]*\).*$,\1,p'`
+ gcc_cv_sun_ld_vers_major=`expr "$gcc_cv_sun_ld_vers" : '\([0-9]*\)'`
+ gcc_cv_sun_ld_vers_minor=`expr "$gcc_cv_sun_ld_vers" : '[0-9]*\.\([0-9]*\)'`
+ fi
+ ;;
+ esac
+fi
+
+# Check whether --enable-initfini-array was given.
+if test "${enable_initfini_array+set}" = set; then :
+ enableval=$enable_initfini_array;
+else
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for .preinit_array/.init_array/.fini_array support" >&5
+$as_echo_n "checking for .preinit_array/.init_array/.fini_array support... " >&6; }
+if test "${gcc_cv_initfini_array+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test "x${build}" = "x${target}" && test "x${build}" = "x${host}"; then
+ case "${target}" in
+ ia64-*)
+ if test "$cross_compiling" = yes; then :
+ gcc_cv_initfini_array=no
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+#ifndef __ELF__
+#error Not an ELF OS
+#endif
+/* We turn on .preinit_array/.init_array/.fini_array support for ia64
+ if it can be used. */
+static int x = -1;
+int main (void) { return x; }
+int foo (void) { x = 0; }
+int (*fp) (void) __attribute__ ((section (".init_array"))) = foo;
+
+_ACEOF
+if ac_fn_c_try_run "$LINENO"; then :
+ gcc_cv_initfini_array=yes
+else
+ gcc_cv_initfini_array=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+;;
+ *)
+ gcc_cv_initfini_array=no
+ if test $in_tree_ld = yes ; then
+ if test "$gcc_cv_gld_major_version" -eq 2 \
+ -a "$gcc_cv_gld_minor_version" -ge 22 \
+ -o "$gcc_cv_gld_major_version" -gt 2 \
+ && test $in_tree_ld_is_elf = yes; then
+ gcc_cv_initfini_array=yes
+ fi
+ elif test x$gcc_cv_as != x -a x$gcc_cv_ld != x -a x$gcc_cv_objdump != x ; then
+ cat > conftest.s <<\EOF
+.section .dtors,"a",%progbits
+.balign 4
+.byte 'A', 'A', 'A', 'A'
+.section .ctors,"a",%progbits
+.balign 4
+.byte 'B', 'B', 'B', 'B'
+.section .fini_array.65530,"a",%progbits
+.balign 4
+.byte 'C', 'C', 'C', 'C'
+.section .init_array.65530,"a",%progbits
+.balign 4
+.byte 'D', 'D', 'D', 'D'
+.section .dtors.64528,"a",%progbits
+.balign 4
+.byte 'E', 'E', 'E', 'E'
+.section .ctors.64528,"a",%progbits
+.balign 4
+.byte 'F', 'F', 'F', 'F'
+.section .fini_array.01005,"a",%progbits
+.balign 4
+.byte 'G', 'G', 'G', 'G'
+.section .init_array.01005,"a",%progbits
+.balign 4
+.byte 'H', 'H', 'H', 'H'
+.text
+.globl _start
+_start:
+EOF
+ if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1 \
+ && $gcc_cv_ld -o conftest conftest.o > /dev/null 2>&1 \
+ && $gcc_cv_objdump -s -j .init_array conftest \
+ | grep HHHHFFFFDDDDBBBB > /dev/null 2>&1 \
+ && $gcc_cv_objdump -s -j .fini_array conftest \
+ | grep GGGGEEEECCCCAAAA > /dev/null 2>&1; then
+ gcc_cv_initfini_array=yes
+ fi
+ rm -f conftest conftest.*
+ fi
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+#ifndef __ELF__
+# error Not an ELF OS
+#endif
+#include <stdlib.h>
+#if defined __GLIBC_PREREQ
+# if __GLIBC_PREREQ (2, 4)
+# else
+# error GLIBC 2.4 required
+# endif
+#else
+# if defined __sun__ && defined __svr4__
+ /* Solaris ld.so.1 supports .init_array/.fini_array since Solaris 8. */
+# else
+# error The C library not known to support .init_array/.fini_array
+# endif
+#endif
+
+_ACEOF
+if ac_fn_c_try_cpp "$LINENO"; then :
+
+ case "${target}" in
+ *-*-solaris2.8*)
+ # .init_array/.fini_array support was introduced in Solaris 8
+ # patches 109147-08 (sparc) and 109148-08 (x86). Since ld.so.1 and
+ # ld are guaranteed to be updated in lockstep, we can check ld -V
+ # instead. Unfortunately, proper ld version numbers were only
+ # introduced in rev. -14, so we check for that.
+ if test "$gcc_cv_sun_ld_vers_minor" -lt 272; then
+ gcc_cv_initfini_array=no
+ fi
+ ;;
+ *-*-solaris2.9* | *-*-solaris2.1[0-9]*)
+ # .init_array/.fini_array support is present since Solaris 9 FCS.
+ ;;
+ esac
+
+else
+ gcc_cv_initfini_array=no
+fi
+rm -f conftest.err conftest.$ac_ext;;
+ esac
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking cross compile... guessing" >&5
+$as_echo_n "checking cross compile... guessing... " >&6; }
+ gcc_cv_initfini_array=no
+ fi
fi
-if test x$gcc_cv_ld_ro_rw_mix = xread-write; then
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_initfini_array" >&5
+$as_echo "$gcc_cv_initfini_array" >&6; }
+ enable_initfini_array=$gcc_cv_initfini_array
-$as_echo "#define HAVE_LD_RO_RW_SECTION_MIXING 1" >>confdefs.h
+fi
+
+if test $enable_initfini_array = yes; then
+
+$as_echo "#define HAVE_INITFINI_ARRAY_SUPPORT 1" >>confdefs.h
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_ld_ro_rw_mix" >&5
-$as_echo "$gcc_cv_ld_ro_rw_mix" >&6; }
# Check if we have .[us]leb128, and support symbol arithmetic with it.
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for .sleb128 and .uleb128" >&5
then gcc_cv_as_leb128=yes
fi
elif test x$gcc_cv_as != x; then
- echo ' .data
+ $as_echo ' .data
.uleb128 L2 - L1
L1:
.uleb128 1280
else
gcc_cv_as_cfi_directive=no
if test x$gcc_cv_as != x; then
- echo ' .text
+ $as_echo ' .text
.cfi_startproc
.cfi_offset 0, 0
.cfi_same_value 1
gcc_cv_as_cfi_directive=no
else
case "$target" in
- i?86-*-solaris2.1[0-9]*)
+ i?86-*-solaris2.1[0-9]* | x86_64-*-solaris2.1[0-9]*)
# On Solaris/x86, make sure that GCC and gas agree on using
# read-only .eh_frame sections for 64-bit.
if $gcc_cv_as --64 -o conftest.o conftest.s > /dev/null 2>&1 && \
else
gcc_cv_as_cfi_advance_working=no
if test x$gcc_cv_as != x; then
- echo ' .text
+ $as_echo ' .text
.cfi_startproc
.cfi_adjust_cfa_offset 64
.skip 75040, 0
else
gcc_cv_as_cfi_personality_directive=no
if test x$gcc_cv_as != x; then
- echo ' .text
+ $as_echo ' .text
.cfi_startproc
.cfi_personality 0, symbol
.cfi_endproc' > conftest.s
else
gcc_cv_as_cfi_sections_directive=no
if test x$gcc_cv_as != x; then
- echo ' .text
+ $as_echo ' .text
.cfi_sections .debug_frame, .eh_frame
.cfi_startproc
.cfi_endproc' > conftest.s
then gcc_cv_as_eh_frame=yes
fi
elif test x$gcc_cv_as != x; then
- echo ' .text
+ $as_echo ' .text
.LFB1:
.4byte 0
.L1:
then gcc_cv_as_shf_merge=yes
fi
elif test x$gcc_cv_as != x; then
- echo '.section .rodata.str, "aMS", @progbits, 1' > conftest.s
+ $as_echo '.section .rodata.str, "aMS", @progbits, 1' > 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
then gcc_cv_as_shf_merge=yes
fi
elif test x$gcc_cv_as != x; then
- echo '.section .rodata.str, "aMS", %progbits, 1' > conftest.s
+ $as_echo '.section .rodata.str, "aMS", %progbits, 1' > 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
_ACEOF
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for COMDAT group support" >&5
-$as_echo_n "checking assembler for COMDAT group support... " >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for COMDAT group support (GNU as)" >&5
+$as_echo_n "checking assembler for COMDAT group support (GNU as)... " >&6; }
if test "${gcc_cv_as_comdat_group+set}" = set; then :
$as_echo_n "(cached) " >&6
else
then gcc_cv_as_comdat_group=yes
fi
elif test x$gcc_cv_as != x; then
- echo '.section .text,"axG",@progbits,.foo,comdat' > conftest.s
+ $as_echo '.section .text,"axG",@progbits,.foo,comdat' > 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
if test $gcc_cv_as_comdat_group = yes; then
gcc_cv_as_comdat_group_percent=no
+ gcc_cv_as_comdat_group_group=no
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for COMDAT group support" >&5
-$as_echo_n "checking assembler for COMDAT group support... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for COMDAT group support (GNU as, %type)" >&5
+$as_echo_n "checking assembler for COMDAT group support (GNU as, %type)... " >&6; }
if test "${gcc_cv_as_comdat_group_percent+set}" = set; then :
$as_echo_n "(cached) " >&6
else
then gcc_cv_as_comdat_group_percent=yes
fi
elif test x$gcc_cv_as != x; then
- echo '.section .text,"axG",%progbits,.foo,comdat' > conftest.s
+ $as_echo '.section .text,"axG",%progbits,.foo,comdat' > 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
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_as_comdat_group_percent" >&5
$as_echo "$gcc_cv_as_comdat_group_percent" >&6; }
+ if test $gcc_cv_as_comdat_group_percent = yes; then
+ gcc_cv_as_comdat_group_group=no
+ else
+ case "${target}" in
+ # Sun as uses a completely different syntax.
+ *-*-solaris2*)
+ case "${target}" in
+ sparc*-*-solaris2*)
+ conftest_s='
+ .group foo,".text%foo",#comdat
+ .section ".text%foo", #alloc,#execinstr,#progbits
+ .globl foo
+ foo:
+ '
+ ;;
+ i?86-*-solaris2* | x86_64-*-solaris2.1[0-9]*)
+ conftest_s='
+ .group foo,.text%foo,#comdat
+ .section .text%foo, "ax", @progbits
+ .globl foo
+ foo:
+ '
+ ;;
+ esac
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for COMDAT group support (Sun as, .group)" >&5
+$as_echo_n "checking assembler for COMDAT group support (Sun as, .group)... " >&6; }
+if test "${gcc_cv_as_comdat_group_group+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ gcc_cv_as_comdat_group_group=no
+ if test x$gcc_cv_as != x; then
+ $as_echo "$conftest_s" > 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_comdat_group_group=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_comdat_group_group" >&5
+$as_echo "$gcc_cv_as_comdat_group_group" >&6; }
+
+ ;;
+ esac
+ fi
fi
if test x"$ld_is_gold" = xyes; then
comdat_group=yes
else
case "${target}" in
*-*-solaris2.1[1-9]*)
+ comdat_group=no
# Sun ld has COMDAT group support since Solaris 9, but it doesn't
# interoperate with GNU as until Solaris 11 build 130, i.e. ld
# version 1.688.
#
- # FIXME: Maybe need to refine later when COMDAT group support with
- # Sun as is implemented.
- if test "$ld_vers_major" -gt 1 || test "$ld_vers_minor" -ge 1688; then
+ # If using Sun as for COMDAT group as emitted by GCC, one needs at
+ # least ld version 1.2267.
+ if test "$ld_vers_major" -gt 1; then
comdat_group=yes
- else
- comdat_group=no
+ elif test "x$gas_flag" = xyes && test "$ld_vers_minor" -ge 1688; then
+ comdat_group=yes
+ elif test "$ld_vers_minor" -ge 2267; then
+ comdat_group=yes
fi
;;
*)
if test $comdat_group = no; then
gcc_cv_as_comdat_group=no
gcc_cv_as_comdat_group_percent=no
+ gcc_cv_as_comdat_group_group=no
fi
cat >>confdefs.h <<_ACEOF
-#define HAVE_COMDAT_GROUP `if test $gcc_cv_as_comdat_group = yes || test $gcc_cv_as_comdat_group_percent = yes; then echo 1; else echo 0; fi`
+#define HAVE_COMDAT_GROUP `if test $gcc_cv_as_comdat_group = yes \
+ || test $gcc_cv_as_comdat_group_percent = yes \
+ || test $gcc_cv_as_comdat_group_group = yes; then echo 1; else echo 0; fi`
_ACEOF
then gcc_cv_as_discriminator=yes
fi
elif test x$gcc_cv_as != x; then
- echo ' .text
+ $as_echo ' .text
.file 1 "conf.c"
.loc 1 1 0 discriminator 1' > conftest.s
if { ac_try='$gcc_cv_as $gcc_cv_as_flags -o conftest.o conftest.s >&5'
tls_first_major=2
tls_first_minor=17
;;
- i[34567]86-*-*)
+ i[34567]86-*-* | x86_64-*-solaris2.1[0-9]*)
case "$target" in
i[34567]86-*-solaris2.*)
on_solaris=yes
tga_func=___tls_get_addr
;;
+ x86_64-*-solaris2.1[0-9]*)
+ on_solaris=yes
+ tga_func=__tls_get_addr
+ ;;
*)
on_solaris=no
;;
xor %l1, %tle_lox10(foo), %o5
ld [%g7 + %o5], %o1"
;;
+ tilepro*-*-*)
+ conftest_s='
+ .section ".tdata","awT",@progbits
+foo: .long 25
+ .text
+ addli r0, zero, tls_gd(foo)
+ auli r0, zero, tls_gd_ha16(foo)
+ addli r0, r0, tls_gd_lo16(foo)
+ jal __tls_get_addr
+ addli r0, zero, tls_ie(foo)
+ auli r0, r0, tls_ie_ha16(foo)
+ addli r0, r0, tls_ie_lo16(foo)'
+ tls_first_major=2
+ tls_first_minor=22
+ tls_as_opt="--fatal-warnings"
+ ;;
+ tilegx*-*-*)
+ conftest_s='
+ .section ".tdata","awT",@progbits
+foo: .long 25
+ .text
+ shl16insli r0, zero, hw0_last_tls_gd(foo)
+ shl16insli r0, zero, hw1_last_tls_gd(foo)
+ shl16insli r0, r0, hw0_tls_gd(foo)
+ jal __tls_get_addr
+ shl16insli r0, zero, hw1_last_tls_ie(foo)
+ shl16insli r0, r0, hw0_tls_ie(foo)'
+ tls_first_major=2
+ tls_first_minor=22
+ tls_as_opt="--fatal-warnings"
+ ;;
xtensa*-*-*)
conftest_s='
.section ".tdata","awT",@progbits
then gcc_cv_as_tls=yes
fi
elif test x$gcc_cv_as != x; then
- echo "$conftest_s" > conftest.s
+ $as_echo "$conftest_s" > conftest.s
if { ac_try='$gcc_cv_as $gcc_cv_as_flags $tls_as_opt -o conftest.o conftest.s >&5'
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
(eval $ac_try) 2>&5
if test $set_have_as_tls = no; then
LIBS=
fi
+ # Even without TLS support on Solaris 8, explicitly link with libthread
+ # to guarantee that the alternate thread library is used.
+ case "$target" in
+ *-*-solaris2.8)
+ LIBS=-lthread
+ ;;
+ esac
# Always define LIB_TLS_SPEC, even without TLS support.
cat >>confdefs.h <<_ACEOF
gcc_cv_ld_static_dynamic=yes
else
case "$target" in
+ # AIX ld uses -b flags
+ *-*-aix4.[23]* | *-*-aix[5-9]*)
+ gcc_cv_ld_static_dynamic=yes
+ gcc_cv_ld_static_option="-bstatic"
+ gcc_cv_ld_dynamic_option="-bdynamic"
+ ;;
# Tru64 UNIX support -noso/-so_archive instead of -Bstatic/-Bdynamic.
alpha*-dec-osf*)
gcc_cv_ld_static_dynamic=yes
gcc_cv_ld_static_option="-noso"
gcc_cv_ld_dynamic_option="-so_archive"
;;
+ # HP-UX ld uses -a flags to select between shared and archive.
+ *-*-hpux*)
+ if test x"$gnu_ld" = xno; then
+ gcc_cv_ld_static_dynamic=yes
+ gcc_cv_ld_static_option="-aarchive_shared"
+ gcc_cv_ld_dynamic_option="-adefault"
+ fi
+ ;;
# IRIX 6 ld supports -Bstatic/-Bdynamic.
mips-sgi-irix6*)
gcc_cv_ld_static_dynamic=yes
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking linker plugin support" >&5
$as_echo_n "checking linker plugin support... " >&6; }
-gcc_cv_lto_plugin=no
-if test -f ../lto-plugin/Makefile ; then
- if test $in_tree_ld = yes -a x"$ORIGINAL_PLUGIN_LD_FOR_TARGET=" = x"$gcc_cv_ld"; then
- if test x"$ld_is_gold" = xyes; then
- gcc_cv_lto_plugin=yes
- elif test "$gcc_cv_gld_major_version" -eq 2 -a "$gcc_cv_gld_minor_version" -ge 21 -o "$gcc_cv_gld_major_version" -gt 2; then \
- gcc_cv_lto_plugin=yes
+gcc_cv_lto_plugin=0
+if test -f liblto_plugin.la; then
+ save_ld_ver="$ld_ver"
+ save_ld_vers_major="$ld_vers_major"
+ save_ld_vers_minor="$ld_vers_minor"
+ save_ld_is_gold="$ld_is_gold"
+
+ ld_is_gold=no
+
+ if test $in_tree_ld = yes -a x"$ORIGINAL_PLUGIN_LD_FOR_TARGET" = x"$gcc_cv_ld"; then
+ ld_ver="GNU ld"
+ # FIXME: ld_is_gold?
+ ld_vers_major="$gcc_cv_gld_major_version"
+ ld_vers_minor="$gcc_cv_gld_minor_version"
+ else
+ # Determine plugin linker version.
+ # FIXME: Partial duplicate from above, generalize.
+ ld_ver=`$ORIGINAL_PLUGIN_LD_FOR_TARGET --version 2>/dev/null | sed 1q`
+ if echo "$ld_ver" | grep GNU > /dev/null; then
+ if echo "$ld_ver" | grep "GNU gold" > /dev/null; then
+ ld_is_gold=yes
+ ld_vers=`echo $ld_ver | sed -n \
+ -e 's,^[^)]*[ ]\([0-9][0-9]*\.[0-9][0-9]*[^)]*\)) .*$,\1,p'`
+ else
+ ld_vers=`echo $ld_ver | sed -n \
+ -e 's,^.*[ ]\([0-9][0-9]*\.[0-9][0-9]*.*\)$,\1,p'`
+ fi
+ ld_vers_major=`expr "$ld_vers" : '\([0-9]*\)'`
+ ld_vers_minor=`expr "$ld_vers" : '[0-9]*\.\([0-9]*\)'`
fi
- # Check if the linker supports --plugin-opt option
- elif $ORIGINAL_PLUGIN_LD_FOR_TARGET --help 2>/dev/null | grep plugin-opt > /dev/null; then
- gcc_cv_lto_plugin=yes
fi
-fi
-if test x"$gcc_cv_lto_plugin" = xyes; then
-$as_echo "#define HAVE_LTO_PLUGIN 1" >>confdefs.h
+ # Determine plugin support.
+ if echo "$ld_ver" | grep GNU > /dev/null; then
+ # Require GNU ld or gold 2.21+ for plugin support by default.
+ if test "$ld_vers_major" -eq 2 -a "$ld_vers_minor" -ge 21; then
+ gcc_cv_lto_plugin=2
+ # Allow -fuse-linker-plugin to enable plugin support in GNU gold 2.20.
+ elif test "$ld_is_gold" = yes -a "$ld_vers_major" -eq 2 -a "$ld_vers_minor" -eq 20; then
+ gcc_cv_lto_plugin=1
+ fi
+ fi
+ ld_ver="$save_ld_ver"
+ ld_vers_major="$save_ld_vers_major"
+ ld_vers_minor="$save_ld_vers_minor"
+ ld_is_gold="$save_ld_is_gold"
fi
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_LTO_PLUGIN $gcc_cv_lto_plugin
+_ACEOF
+
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_lto_plugin" >&5
$as_echo "$gcc_cv_lto_plugin" >&6; }
then gcc_cv_as_alpha_explicit_relocs=yes
fi
elif test x$gcc_cv_as != x; then
- echo ' .set nomacro
+ $as_echo ' .set nomacro
.text
extbl $3, $2, $3 !lituse_bytoff!1
ldq $2, a($29) !literal!1
then gcc_cv_as_alpha_jsrdirect_relocs=yes
fi
elif test x$gcc_cv_as != x; then
- echo ' .set nomacro
+ $as_echo ' .set nomacro
.text
ldq $27, a($29) !literal!1
jsr $26, ($27), a !lituse_jsrdirect!1' > conftest.s
then gcc_cv_as_cris_no_mul_bug=yes
fi
elif test x$gcc_cv_as != x; then
- echo '.text' > conftest.s
+ $as_echo '.text' > conftest.s
if { ac_try='$gcc_cv_as $gcc_cv_as_flags -no-mul-bug-abort -o conftest.o conftest.s >&5'
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
(eval $ac_try) 2>&5
else
gcc_cv_as_sparc_register_op=no
if test x$gcc_cv_as != x; then
- echo '.register %g2, #scratch' > conftest.s
+ $as_echo '.register %g2, #scratch' > 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
else
gcc_cv_as_sparc_relax=no
if test x$gcc_cv_as != x; then
- echo '.text' > conftest.s
+ $as_echo '.text' > conftest.s
if { ac_try='$gcc_cv_as $gcc_cv_as_flags -relax -o conftest.o conftest.s >&5'
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
(eval $ac_try) 2>&5
else
gcc_cv_as_sparc_gotdata_op=no
if test x$gcc_cv_as != x; then
- echo '.text
+ $as_echo '.text
+.align 4
foo:
nop
bar:
then
if test x$gcc_cv_ld != x \
&& $gcc_cv_ld -o conftest conftest.o -G > /dev/null 2>&1; then
- if $gcc_cv_ld -v | grep GNU >/dev/null 2>&1; then
- if test x$gcc_cv_objdump != x; then
- if $gcc_cv_objdump -s -j .text conftest 2> /dev/null \
- | grep ' 03000004 82186004 c405c001'> /dev/null 2>&1; then
+ if test x$gcc_cv_objdump != x; then
+ if $gcc_cv_objdump -s -j .text conftest 2> /dev/null \
+ | grep ' 03000004 82186004 c405c001'> /dev/null 2>&1; then
gcc_cv_as_sparc_gotdata_op=no
- else
+ else
gcc_cv_as_sparc_gotdata_op=yes
- fi
fi
- else
- gcc_cv_as_sparc_gotdata_op=yes
fi
fi
rm -f conftest
else
gcc_cv_as_sparc_ua_pcrel=no
if test x$gcc_cv_as != x; then
- echo '.text
+ $as_echo '.text
foo:
nop
.data
else
gcc_cv_as_sparc_ua_pcrel_hidden=no
if test x$gcc_cv_as != x; then
- echo '.data
+ $as_echo '.data
.align 4
.byte 0x31
.uaword %r_disp32(foo)
else
gcc_cv_as_sparc_offsetable_lo10=no
if test x$gcc_cv_as != x; then
- echo '.text
+ $as_echo '.text
or %g1, %lo(ab) + 12, %g1
or %g1, %lo(ab + 12), %g1' > conftest.s
if { ac_try='$gcc_cv_as $gcc_cv_as_flags -xarch=v9 -o conftest.o conftest.s >&5'
$as_echo "#define HAVE_AS_OFFSETABLE_LO10 1" >>confdefs.h
fi
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for FMAF, HPC, and VIS 3.0 instructions" >&5
+$as_echo_n "checking assembler for FMAF, HPC, and VIS 3.0 instructions... " >&6; }
+if test "${gcc_cv_as_sparc_fmaf+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ gcc_cv_as_sparc_fmaf=no
+ if test x$gcc_cv_as != x; then
+ $as_echo '.text
+ .register %g2, #scratch
+ .register %g3, #scratch
+ .align 4
+ fmaddd %f0, %f2, %f4, %f6
+ addxccc %g1, %g2, %g3
+ fsrl32 %f2, %f4, %f8
+ fnaddd %f10, %f12, %f14' > conftest.s
+ if { ac_try='$gcc_cv_as $gcc_cv_as_flags -xarch=v9d -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_sparc_fmaf=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_sparc_fmaf" >&5
+$as_echo "$gcc_cv_as_sparc_fmaf" >&6; }
+if test $gcc_cv_as_sparc_fmaf = yes; then
+
+$as_echo "#define HAVE_AS_FMAF_HPC_VIS3 1" >>confdefs.h
+
+fi
;;
i[34567]86-*-* | x86_64-*-*)
esac
case $target_os in
- cygwin* | pe | mingw32*)
+ cygwin* | pe | mingw32* | interix*)
# Recent binutils allows the three-operand form of ".comm" on PE. This
# definition is used unconditionally to initialise the default state of
# the target option variable that governs usage of the feature.
then gcc_cv_as_comm_has_align=yes
fi
elif test x$gcc_cv_as != x; then
- echo '.comm foo,1,32' > conftest.s
+ $as_echo '.comm foo,1,32' > 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
then gcc_cv_as_ix86_pe_secrel32=yes
fi
elif test x$gcc_cv_as != x; then
- echo '.text
+ $as_echo '.text
foo: nop
.data
.secrel32 foo' > conftest.s
then gcc_cv_as_section_has_align=yes
fi
elif test x$gcc_cv_as != x; then
- echo '.section lto_test,"dr0"' > conftest.s
+ $as_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
;;
esac
fi
+ # Test if the assembler supports the section flag 'e' for specifying
+ # an excluded section.
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for .section with e" >&5
+$as_echo_n "checking assembler for .section with e... " >&6; }
+if test "${gcc_cv_as_section_has_e+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ gcc_cv_as_section_has_e=no
+ if test $in_tree_gas = yes; then
+ if test $gcc_cv_gas_vers -ge `expr \( \( 2 \* 1000 \) + 22 \) \* 1000 + 51`
+ then gcc_cv_as_section_has_e=yes
+fi
+ elif test x$gcc_cv_as != x; then
+ $as_echo '.section foo1,"e"
+.byte 0,0,0,0' > 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_section_has_e=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_e" >&5
+$as_echo "$gcc_cv_as_section_has_e" >&6; }
+
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_GAS_SECTION_EXCLUDE `if test $gcc_cv_as_section_has_e = yes; then echo 1; else echo 0; fi`
+_ACEOF
+
;;
esac
else
gcc_cv_as_ix86_filds=no
if test x$gcc_cv_as != x; then
- echo 'filds mem; fists mem' > conftest.s
+ $as_echo 'filds mem; fists mem' > 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
else
gcc_cv_as_ix86_fildq=no
if test x$gcc_cv_as != x; then
- echo 'fildq mem; fistpq mem' > conftest.s
+ $as_echo 'fildq mem; fistpq mem' > 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
else
gcc_cv_as_ix86_cmov_sun_syntax=no
if test x$gcc_cv_as != x; then
- echo 'cmovl.l %edx, %eax' > conftest.s
+ $as_echo 'cmovl.l %edx, %eax' > 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
else
gcc_cv_as_ix86_ffreep=no
if test x$gcc_cv_as != x; then
- echo 'ffreep %st(1)' > conftest.s
+ $as_echo 'ffreep %st(1)' > 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
else
gcc_cv_as_ix86_quad=no
if test x$gcc_cv_as != x; then
- echo '.quad 0' > conftest.s
+ $as_echo '.quad 0' > 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
else
gcc_cv_as_ix86_sahf=no
if test x$gcc_cv_as != x; then
- echo '.code64
+ $as_echo '.code64
sahf' > 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
else
gcc_cv_as_ix86_swap=no
if test x$gcc_cv_as != x; then
- echo 'movl.s %esp, %ebp' > conftest.s
+ $as_echo 'movl.s %esp, %ebp' > 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
else
gcc_cv_as_ix86_diff_sect_delta=no
if test x$gcc_cv_as != x; then
- echo '.section .rodata
+ $as_echo '.section .rodata
.L1:
.long .L2-.L1
.long .L3-.L1
# These two are used unconditionally by i386.[ch]; it is to be defined
# to 1 if the feature is present, 0 otherwise.
+ as_ix86_gotoff_in_data_opt=
+ if test x$gas = xyes; then
+ as_ix86_gotoff_in_data_opt="--32"
+ fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for GOTOFF in data" >&5
$as_echo_n "checking assembler for GOTOFF in data... " >&6; }
if test "${gcc_cv_as_ix86_gotoff_in_data+set}" = set; then :
then gcc_cv_as_ix86_gotoff_in_data=yes
fi
elif test x$gcc_cv_as != x; then
- echo ' .text
+ $as_echo ' .text
.L0:
nop
.data
.long .L0@GOTOFF' > conftest.s
- if { ac_try='$gcc_cv_as $gcc_cv_as_flags -o conftest.o conftest.s >&5'
+ if { ac_try='$gcc_cv_as $gcc_cv_as_flags $as_ix86_gotoff_in_data_opt -o conftest.o conftest.s >&5'
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
(eval $ac_try) 2>&5
ac_status=$?
else
gcc_cv_as_ix86_rep_lock_prefix=no
if test x$gcc_cv_as != x; then
- echo 'rep movsl
+ $as_echo 'rep movsl
lock addl %edi, (%eax,%esi)
lock orl $0, (%esp)' > conftest.s
if { ac_try='$gcc_cv_as $gcc_cv_as_flags -o conftest.o conftest.s >&5'
fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for R_386_TLS_GD_PLT reloc" >&5
+$as_echo_n "checking assembler for R_386_TLS_GD_PLT reloc... " >&6; }
+if test "${gcc_cv_as_ix86_tlsgdplt+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ gcc_cv_as_ix86_tlsgdplt=no
+ if test x$gcc_cv_as != x; then
+ $as_echo 'call tls_gd@tlsgdplt' > 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
+ if test x$gcc_cv_ld != x \
+ && $gcc_cv_ld -o conftest conftest.o -G > /dev/null 2>&1; then
+ gcc_cv_as_ix86_tlsgdplt=yes
+ fi
+ rm -f conftest
+ 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_tlsgdplt" >&5
+$as_echo "$gcc_cv_as_ix86_tlsgdplt" >&6; }
+if test $gcc_cv_as_ix86_tlsgdplt = yes; then
+
+$as_echo "#define HAVE_AS_IX86_TLSGDPLT 1" >>confdefs.h
+
+fi
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for R_386_TLS_LDM_PLT reloc" >&5
+$as_echo_n "checking assembler for R_386_TLS_LDM_PLT reloc... " >&6; }
+if test "${gcc_cv_as_ix86_tlsldmplt+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ gcc_cv_as_ix86_tlsldmplt=no
+ if test x$gcc_cv_as != x; then
+ $as_echo 'tls_ld:
+ call tls_ld@tlsldmplt' > 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
+ if test x$gcc_cv_ld != x \
+ && $gcc_cv_ld -o conftest conftest.o -G > /dev/null 2>&1; then
+ gcc_cv_as_ix86_tlsldmplt=yes
+ fi
+ rm -f conftest
+ 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_tlsldmplt" >&5
+$as_echo "$gcc_cv_as_ix86_tlsldmplt" >&6; }
+if test $gcc_cv_as_ix86_tlsldmplt = yes; then
+
+$as_echo "#define HAVE_AS_IX86_TLSLDMPLT 1" >>confdefs.h
+
+fi
+
;;
ia64*-*-*)
then gcc_cv_as_ia64_ltoffx_ldxmov_relocs=yes
fi
elif test x$gcc_cv_as != x; then
- echo ' .text
+ $as_echo ' .text
addl r15 = @ltoffx(x#), gp
;;
ld8.mov r16 = [r15], x#' > conftest.s
else
gcc_cv_as_machine_directive=no
if test x$gcc_cv_as != x; then
- echo ' .machine ppc7400' > conftest.s
+ $as_echo ' .machine ppc7400' > 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
then gcc_cv_as_powerpc_mfcrf=yes
fi
elif test x$gcc_cv_as != x; then
- echo "$conftest_s" > conftest.s
+ $as_echo "$conftest_s" > 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
then gcc_cv_as_powerpc_popcntb=yes
fi
elif test x$gcc_cv_as != x; then
- echo "$conftest_s" > conftest.s
+ $as_echo "$conftest_s" > 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
then gcc_cv_as_powerpc_fprnd=yes
fi
elif test x$gcc_cv_as != x; then
- echo "$conftest_s" > conftest.s
+ $as_echo "$conftest_s" > 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
then gcc_cv_as_powerpc_mfpgpr=yes
fi
elif test x$gcc_cv_as != x; then
- echo "$conftest_s" > conftest.s
+ $as_echo "$conftest_s" > 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
then gcc_cv_as_powerpc_rel16=yes
fi
elif test x$gcc_cv_as != x; then
- echo "$conftest_s" > conftest.s
+ $as_echo "$conftest_s" > conftest.s
if { ac_try='$gcc_cv_as $gcc_cv_as_flags -a32 -o conftest.o conftest.s >&5'
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
(eval $ac_try) 2>&5
then gcc_cv_as_powerpc_cmpb=yes
fi
elif test x$gcc_cv_as != x; then
- echo "$conftest_s" > conftest.s
+ $as_echo "$conftest_s" > conftest.s
if { ac_try='$gcc_cv_as $gcc_cv_as_flags -a32 -o conftest.o conftest.s >&5'
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
(eval $ac_try) 2>&5
then gcc_cv_as_powerpc_dfp=yes
fi
elif test x$gcc_cv_as != x; then
- echo "$conftest_s" > conftest.s
+ $as_echo "$conftest_s" > conftest.s
if { ac_try='$gcc_cv_as $gcc_cv_as_flags -a32 -o conftest.o conftest.s >&5'
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
(eval $ac_try) 2>&5
then gcc_cv_as_powerpc_vsx=yes
fi
elif test x$gcc_cv_as != x; then
- echo "$conftest_s" > conftest.s
+ $as_echo "$conftest_s" > conftest.s
if { ac_try='$gcc_cv_as $gcc_cv_as_flags -a32 -o conftest.o conftest.s >&5'
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
(eval $ac_try) 2>&5
then gcc_cv_as_powerpc_popcntd=yes
fi
elif test x$gcc_cv_as != x; then
- echo "$conftest_s" > conftest.s
+ $as_echo "$conftest_s" > conftest.s
if { ac_try='$gcc_cv_as $gcc_cv_as_flags -a32 -o conftest.o conftest.s >&5'
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
(eval $ac_try) 2>&5
then gcc_cv_as_powerpc_lwsync=yes
fi
elif test x$gcc_cv_as != x; then
- echo "$conftest_s" > conftest.s
+ $as_echo "$conftest_s" > conftest.s
if { ac_try='$gcc_cv_as $gcc_cv_as_flags -a32 -o conftest.o conftest.s >&5'
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
(eval $ac_try) 2>&5
then gcc_cv_as_powerpc_dci=yes
fi
elif test x$gcc_cv_as != x; then
- echo "$conftest_s" > conftest.s
+ $as_echo "$conftest_s" > conftest.s
if { ac_try='$gcc_cv_as $gcc_cv_as_flags -a32 -o conftest.o conftest.s >&5'
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
(eval $ac_try) 2>&5
then gcc_cv_as_powerpc_gnu_attribute=yes
fi
elif test x$gcc_cv_as != x; then
- echo '.gnu_attribute 4,1' > conftest.s
+ $as_echo '.gnu_attribute 4,1' > 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
then gcc_cv_as_powerpc_tls_markers=yes
fi
elif test x$gcc_cv_as != x; then
- echo ' bl __tls_get_addr(x@tlsgd)' > conftest.s
+ $as_echo ' bl __tls_get_addr(x@tlsgd)' > 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
then :
fi
elif test x$gcc_cv_as != x; then
- echo ' .csect stuff[rw]
+ $as_echo ' .csect stuff[rw]
stuff:
.long 1
.extern sym
then gcc_cv_as_mips_explicit_relocs=yes
fi
elif test x$gcc_cv_as != x; then
- echo ' lw $4,%gp_rel(foo)($4)' > conftest.s
+ $as_echo ' lw $4,%gp_rel(foo)($4)' > 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
then gcc_cv_as_mips_no_shared=yes
fi
elif test x$gcc_cv_as != x; then
- echo 'nop' > conftest.s
+ $as_echo 'nop' > conftest.s
if { ac_try='$gcc_cv_as $gcc_cv_as_flags -mno-shared -o conftest.o conftest.s >&5'
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
(eval $ac_try) 2>&5
then gcc_cv_as_mips_gnu_attribute=yes
fi
elif test x$gcc_cv_as != x; then
- echo '.gnu_attribute 4,1' > conftest.s
+ $as_echo '.gnu_attribute 4,1' > 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
then gcc_cv_as_mips_dtprelword=yes
fi
elif test x$gcc_cv_as != x; then
- echo '.section .tdata,"awT",@progbits
+ $as_echo '.section .tdata,"awT",@progbits
x:
.word 2
.text
else
gcc_cv_as_mips_dspr1_mult=no
if test x$gcc_cv_as != x; then
- echo ' .set mips32r2
+ $as_echo ' .set mips32r2
.set nodspr2
.set dsp
madd $ac3,$4,$5
# version to the per-target configury.
case "$cpu_type" in
alpha | arm | avr | bfin | cris | i386 | m32c | m68k | microblaze | mips \
- | pa | rs6000 | score | sparc | spu | xstormy16 | xtensa)
+ | pa | rs6000 | score | sparc | spu | tilegx | tilepro | xstormy16 | xtensa)
insn="nop"
;;
ia64 | s390)
then gcc_cv_as_dwarf2_debug_line=yes
fi
elif test x$gcc_cv_as != x; then
- echo "$conftest_s" > conftest.s
+ $as_echo "$conftest_s" > 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
else
gcc_cv_as_dwarf2_file_buggy=no
if test x$gcc_cv_as != x; then
- echo ' .file 1 "foo.s"
+ $as_echo ' .file 1 "foo.s"
.file 1 "bar.s"' > 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
then gcc_cv_as_gdwarf2_flag=yes
fi
elif test x$gcc_cv_as != x; then
- echo "$insn" > conftest.s
+ $as_echo "$insn" > conftest.s
if { ac_try='$gcc_cv_as $gcc_cv_as_flags --gdwarf2 -o conftest.o conftest.s >&5'
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
(eval $ac_try) 2>&5
then gcc_cv_as_gstabs_flag=yes
fi
elif test x$gcc_cv_as != x; then
- echo "$insn" > conftest.s
+ $as_echo "$insn" > conftest.s
if { ac_try='$gcc_cv_as $gcc_cv_as_flags --gstabs -o conftest.o conftest.s >&5'
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
(eval $ac_try) 2>&5
then gcc_cv_as_debug_prefix_map_flag=yes
fi
elif test x$gcc_cv_as != x; then
- echo "$insn" > conftest.s
+ $as_echo "$insn" > conftest.s
if { ac_try='$gcc_cv_as $gcc_cv_as_flags --debug-prefix-map /a=/b -o conftest.o conftest.s >&5'
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
(eval $ac_try) 2>&5
else
gcc_cv_as_lcomm_with_alignment=no
if test x$gcc_cv_as != x; then
- echo '.lcomm bar,4,16' > conftest.s
+ $as_echo '.lcomm bar,4,16' > 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
then gcc_cv_as_gnu_unique_object=yes
fi
elif test x$gcc_cv_as != x; then
- echo '.type foo, @gnu_unique_object' > conftest.s
+ $as_echo '.type foo, '$target_type_format_char'gnu_unique_object' > 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
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_as_gnu_unique_object" >&5
$as_echo "$gcc_cv_as_gnu_unique_object" >&6; }
if test $gcc_cv_as_gnu_unique_object = yes; then
- # Also check for ld.so support, i.e. glibc 2.11 or higher.
+ # We need to unquote above to to use the definition from config.gcc.
+# Also check for ld.so support, i.e. glibc 2.11 or higher.
if test x$host = x$build -a x$host = x$target &&
ldd --version 2>/dev/null &&
glibcver=`ldd --version 2>/dev/null | sed 's/.* //;q'`; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_ld_eh_gc_sections" >&5
$as_echo "$gcc_cv_ld_eh_gc_sections" >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking linker EH garbage collection of sections bug" >&5
+$as_echo_n "checking linker EH garbage collection of sections bug... " >&6; }
+gcc_cv_ld_eh_gc_sections_bug=no
+if test $in_tree_ld = yes ; then
+ if test "$gcc_cv_gld_major_version" -eq 2 -a "$gcc_cv_gld_minor_version" -lt 19 -o "$gcc_cv_gld_major_version" -lt 2 \
+ && test $in_tree_ld_is_elf = yes; then
+ gcc_cv_ld_eh_gc_sections_bug=yes
+ fi
+elif test x$gcc_cv_as != x -a x$gcc_cv_ld != x -a x$gcc_cv_objdump != x -a x$gcc_cv_as_comdat_group = xyes; then
+ gcc_cv_ld_eh_gc_sections_bug=yes
+ cat > conftest.s <<EOF
+ .section .text
+.globl _start
+ .type _start, @function
+_start:
+ .long foo
+ .size _start, .-_start
+ .section .text.startup.foo,"ax",@progbits
+ .type foo, @function
+foo:
+ .long 0
+ .size foo, .-foo
+ .section .gcc_except_table.foo,"a",@progbits
+.L0:
+ .long 0
+ .section .eh_frame,"a",@progbits
+ .long .L0
+EOF
+ if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
+ if $gcc_cv_ld -o conftest conftest.o --entry=_start --gc-sections 2>&1 \
+ | grep "gc-sections option ignored" > /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_bug=no
+ fi
+ fi
+ rm -f conftest.s conftest.o conftest
+fi
+if test x$gcc_cv_ld_eh_gc_sections_bug = xyes; then
+
+$as_echo "#define HAVE_LD_EH_GC_SECTIONS_BUG 1" >>confdefs.h
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_ld_eh_gc_sections_bug" >&5
+$as_echo "$gcc_cv_ld_eh_gc_sections_bug" >&6; }
+
# --------
# UNSORTED
# --------
fi
case "$target:$tm_file" in
- powerpc64*-*-linux* | powerpc*-*-linux*rs6000/biarch64.h*)
+ powerpc64-*-freebsd* | powerpc64*-*-linux* | powerpc*-*-linux*rs6000/biarch64.h*)
+ case "$target" in
+ *-*-linux*)
+ emul_name="-melf64ppc"
+ ;;
+ *-*-freebsd*)
+ emul_name="-melf64ppc_fbsd"
+ ;;
+ esac
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking linker support for omitting dot symbols" >&5
$as_echo_n "checking linker support for omitting dot symbols... " >&6; }
if test "${gcc_cv_ld_no_dot_syms+set}" = set; then :
$as_echo_n "(cached) " >&6
else
gcc_cv_ld_no_dot_syms=no
- if test $in_tree_ld = yes ; then
+ if test x"$ld_is_gold" = xyes; then
+ gcc_cv_ld_no_dot_syms=yes
+ elif test $in_tree_ld = yes ; then
if test "$gcc_cv_gld_major_version" -eq 2 -a "$gcc_cv_gld_minor_version" -ge 16 -o "$gcc_cv_gld_major_version" -gt 2; then
gcc_cv_ld_no_dot_syms=yes
fi
EOF
if $gcc_cv_as -a64 -o conftest1.o conftest1.s > /dev/null 2>&1 \
&& $gcc_cv_as -a64 -o conftest2.o conftest2.s > /dev/null 2>&1 \
- && $gcc_cv_ld -melf64ppc -o conftest conftest1.o conftest2.o > /dev/null 2>&1; then
+ && $gcc_cv_ld $emul_name -o conftest conftest1.o conftest2.o > /dev/null 2>&1; then
gcc_cv_ld_no_dot_syms=yes
fi
rm -f conftest conftest1.o conftest2.o conftest1.s conftest2.s
$as_echo_n "(cached) " >&6
else
gcc_cv_ld_large_toc=no
- if test $in_tree_ld = yes ; then
+ if test x"$ld_is_gold" = xyes; then
+ gcc_cv_ld_large_toc=yes
+ elif test $in_tree_ld = yes ; then
if test "$gcc_cv_gld_major_version" -eq 2 -a "$gcc_cv_gld_minor_version" -ge 21 -o "$gcc_cv_gld_major_version" -gt 2; then
gcc_cv_ld_large_toc=yes
fi
ld 9,ie0@got@tprel@l(9)
EOF
if $gcc_cv_as -a64 -o conftest.o conftest.s > /dev/null 2>&1 \
- && $gcc_cv_ld -melf64ppc --no-toc-sort -o conftest conftest.o > /dev/null 2>&1; then
+ && $gcc_cv_ld $emul_name --no-toc-sort -o conftest conftest.o > /dev/null 2>&1; then
gcc_cv_ld_large_toc=yes
fi
rm -f conftest conftest.o conftest.s
elif test "x$with_sysroot" = x; then
target_header_dir="${exec_prefix}/${target_noncanonical}/sys-include"
elif test "x$with_build_sysroot" != "x"; then
- target_header_dir="${with_build_sysroot}/usr/include"
+ target_header_dir="${with_build_sysroot}${native_system_header_dir}"
elif test "x$with_sysroot" = xyes; then
- target_header_dir="${exec_prefix}/${target_noncanonical}/sys-root/usr/include"
+ target_header_dir="${exec_prefix}/${target_noncanonical}/sys-root${native_system_header_dir}"
else
- target_header_dir="${with_sysroot}/usr/include"
+ target_header_dir="${with_sysroot}${native_system_header_dir}"
fi
else
- target_header_dir=/usr/include
+ target_header_dir=${native_system_header_dir}
fi
# Test for stack protector support in target C library.
$target_header_dir/bits/uClibc_config.h > /dev/null; then
gcc_cv_libc_provides_ssp=yes
fi
+ # all versions of Bionic support stack protector
+ elif test -f $target_header_dir/sys/cdefs.h \
+ && $EGREP '^[ ]*#[ ]*define[ ]+__BIONIC__[ ]+1' \
+ $target_header_dir/sys/cdefs.h > /dev/null; then
+ gcc_cv_libc_provides_ssp=yes
fi
;;
*-*-gnu*)
fi
+# Test for <sys/sdt.h> on the target.
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking sys/sdt.h in the target C library" >&5
+$as_echo_n "checking sys/sdt.h in the target C library... " >&6; }
+have_sys_sdt_h=no
+if test -f $target_header_dir/sys/sdt.h; then
+ have_sys_sdt_h=yes
+
+$as_echo "#define HAVE_SYS_SDT_H 1" >>confdefs.h
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $have_sys_sdt_h" >&5
+$as_echo "$have_sys_sdt_h" >&6; }
+
# Check if TFmode long double should be used by default or not.
# Some glibc targets used DFmode long double, but with glibc 2.4
# and later they can use TFmode.
case "$target" in
powerpc*-*-linux* | \
- powerpc*-*-gnu* | \
sparc*-*-linux* | \
s390*-*-linux* | \
alpha*-*-linux*)
$as_echo_n "checking dl_iterate_phdr in target C library... " >&6; }
gcc_cv_target_dl_iterate_phdr=unknown
case "$target" in
- *-*-solaris2*)
+ # Restrict to Solaris 11+. While most of the Solaris 11 linker changes
+ # were backported to Solaris 10 Update 10, dl_iterate_phdr only lives in
+ # libdl there, both complicating its use and breaking compatibility
+ # between Solaris 10 updates.
+ *-*-solaris2.1[1-9]*)
# <link.h> needs both a dl_iterate_phdr declaration and support for
# compilation with largefile support.
if grep dl_iterate_phdr $target_header_dir/link.h > /dev/null 2>&1 \
fi
-
-# Check whether --with-slibdir was given.
-if test "${with_slibdir+set}" = set; then :
- withval=$with_slibdir; slibdir="$with_slibdir"
-else
- if test "${enable_version_specific_runtime_libs+set}" = set; then
- slibdir='$(libsubdir)'
-elif test "$host" != "$target"; then
- slibdir='$(build_tooldir)/lib'
-else
- slibdir='$(libdir)'
-fi
-fi
-
-
-
# Substitute configuration variables
+
# Echo link setup.
if test x${build} = x${host} ; then
if test x${host} = x${target} ; then
$as_echo_n "checking for exported symbols... " >&6; }
if test "x$export_sym_check" != x; then
echo "int main() {return 0;} int foobar() {return 0;}" > conftest.c
- ${CC} ${CFLAGS} ${LDFLAGS} conftest.c -o conftest > /dev/null 2>&1
- if $export_sym_check conftest | grep foobar > /dev/null; then
+ ${CC} ${CFLAGS} ${LDFLAGS} conftest.c -o conftest$ac_exeext > /dev/null 2>&1
+ if $export_sym_check conftest$ac_exeext | grep -q foobar > /dev/null; then
: # No need to use a flag
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
$as_echo "yes" >&6; }
{ $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 $export_sym_check conftest | grep foobar > /dev/null; then
+ ${CC} ${CFLAGS} ${LDFLAGS} -rdynamic conftest.c -o conftest$ac_exeext > /dev/null 2>&1
+ if $export_sym_check conftest$ac_exeext | grep -q foobar > /dev/null; then
plugin_rdynamic=yes
pluginlibs="-rdynamic"
else
fi
+# Specify what hash style to use by default.
+
+# Check whether --with-linker-hash-style was given.
+if test "${with_linker_hash_style+set}" = set; then :
+ withval=$with_linker_hash_style; case x"$withval" in
+ xsysv)
+ LINKER_HASH_STYLE=sysv
+ ;;
+ xgnu)
+ LINKER_HASH_STYLE=gnu
+ ;;
+ xboth)
+ LINKER_HASH_STYLE=both
+ ;;
+ *)
+ as_fn_error "$withval is an invalid option to --with-linker-hash-style" "$LINENO" 5
+ ;;
+ esac
+else
+ LINKER_HASH_STYLE=''
+fi
+
+if test x"${LINKER_HASH_STYLE}" != x; then
+
+cat >>confdefs.h <<_ACEOF
+#define LINKER_HASH_STYLE "$LINKER_HASH_STYLE"
+_ACEOF
+
+fi
+
# Configure the subdirectories
# AC_CONFIG_SUBDIRS($subdirs)
echo > cstamp-h ;;
esac
# Make sure all the subdirs exist.
-for d in $subdirs doc build c-family
+for d in $subdirs doc build common c-family
do
test -d $d || mkdir $d
done