X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=gold%2Fconfigure;h=6cae26196a0bccd3e92d2394d6f590d5e1bf93a7;hb=ebc404af09b9e864808f2bb373580ecd61d5459b;hp=793af0dc8dc20f2c2e1ddbc8035c3d39db08e20b;hpb=5d329b7db9afec533616070131d7bde5fe4b71fa;p=platform%2Fupstream%2Fbinutils.git diff --git a/gold/configure b/gold/configure index 793af0d..6cae261 100755 --- a/gold/configure +++ b/gold/configure @@ -594,17 +594,26 @@ LTLIBOBJS MAINT MAINTAINER_MODE_FALSE MAINTAINER_MODE_TRUE +DLOPEN_LIBS CXXCPP +HAVE_NO_USE_LINKER_PLUGIN_FALSE +HAVE_NO_USE_LINKER_PLUGIN_TRUE +HAVE_PUBNAMES_FALSE +HAVE_PUBNAMES_TRUE HAVE_ZLIB_FALSE HAVE_ZLIB_TRUE LIBOBJS LFS_CFLAGS +GOLD_LDADD +GOLD_LDFLAGS WARN_CXXFLAGS NO_WERROR WARN_CFLAGS +IFUNC_STATIC_FALSE +IFUNC_STATIC_TRUE +IFUNC_FALSE +IFUNC_TRUE RANDOM_SEED_CFLAGS -CONSTRUCTOR_PRIORITY_FALSE -CONSTRUCTOR_PRIORITY_TRUE TLS_DESCRIPTORS_FALSE TLS_DESCRIPTORS_TRUE TLS_GNU2_DIALECT_FALSE @@ -615,10 +624,15 @@ STATIC_TLS_FALSE STATIC_TLS_TRUE TLS_FALSE TLS_TRUE +MERGE_CONSTANTS_FLAG MCMODEL_MEDIUM_FALSE MCMODEL_MEDIUM_TRUE FN_PTRS_IN_SO_WITHOUT_PIC_FALSE FN_PTRS_IN_SO_WITHOUT_PIC_TRUE +HAVE_STATIC_FALSE +HAVE_STATIC_TRUE +NATIVE_OR_CROSS_LINKER_FALSE +NATIVE_OR_CROSS_LINKER_TRUE GCC_FALSE GCC_TRUE NATIVE_LINKER_FALSE @@ -667,7 +681,13 @@ CPPFLAGS LDFLAGS CFLAGS CC +NM TARGETOBJS +DEFAULT_TARGET +DEFAULT_TARGET_MIPS_FALSE +DEFAULT_TARGET_MIPS_TRUE +DEFAULT_TARGET_TILEGX_FALSE +DEFAULT_TARGET_TILEGX_TRUE DEFAULT_TARGET_X86_64_FALSE DEFAULT_TARGET_X86_64_TRUE DEFAULT_TARGET_SPARC_FALSE @@ -678,10 +698,14 @@ DEFAULT_TARGET_I386_FALSE DEFAULT_TARGET_I386_TRUE DEFAULT_TARGET_ARM_FALSE DEFAULT_TARGET_ARM_TRUE +DEFAULT_TARGET_AARCH64_FALSE +DEFAULT_TARGET_AARCH64_TRUE PLUGINS_FALSE PLUGINS_TRUE THREADS_FALSE THREADS_TRUE +installed_linker +install_as_default am__untar am__tar AMTAR @@ -759,13 +783,18 @@ ac_subst_files='' ac_user_opts=' enable_option_checking with_sysroot +enable_gold enable_threads enable_plugins enable_targets +with_lib_path enable_dependency_tracking enable_nls enable_werror enable_build_warnings +with_gold_ldflags +with_gold_ldadd +with_zlib enable_maintainer_mode ' ac_precious_vars='build_alias @@ -1403,6 +1432,7 @@ Optional Features: --disable-option-checking ignore unrecognized --enable/--with options --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) --enable-FEATURE[=ARG] include FEATURE [ARG=yes] + --enable-gold[=ARG] build gold [ARG={default,yes,no}] --enable-threads multi-threaded linking --enable-plugins linker plugins --enable-targets alternative target configurations @@ -1418,6 +1448,10 @@ Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) --with-sysroot=DIR search for usr/lib et al within DIR + --with-lib-path=dir1:dir2... set default LIB_PATH + --with-gold-ldflags=FLAGS additional link flags for gold + --with-gold-ldadd=LIBS additional libraries for gold + --with-zlib include zlib support (auto/yes/no) default=auto Some influential environment variables: CC C compiler command @@ -1909,8 +1943,10 @@ $as_echo "$ac_res" >&6; } ac_fn_c_check_decl () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $2 is declared" >&5 -$as_echo_n "checking whether $2 is declared... " >&6; } + as_decl_name=`echo $2|sed 's/ *(.*//'` + as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'` + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5 +$as_echo_n "checking whether $as_decl_name is declared... " >&6; } if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : $as_echo_n "(cached) " >&6 else @@ -1920,8 +1956,12 @@ $4 int main () { -#ifndef $2 - (void) $2; +#ifndef $as_decl_name +#ifdef __cplusplus + (void) $as_decl_use; +#else + (void) $as_decl_name; +#endif #endif ; @@ -2185,8 +2225,10 @@ $as_echo "$ac_res" >&6; } ac_fn_cxx_check_decl () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $2 is declared" >&5 -$as_echo_n "checking whether $2 is declared... " >&6; } + as_decl_name=`echo $2|sed 's/ *(.*//'` + as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'` + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5 +$as_echo_n "checking whether $as_decl_name is declared... " >&6; } if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : $as_echo_n "(cached) " >&6 else @@ -2196,8 +2238,12 @@ $4 int main () { -#ifndef $2 - (void) $2; +#ifndef $as_decl_name +#ifdef __cplusplus + (void) $as_decl_use; +#else + (void) $as_decl_name; +#endif #endif ; @@ -3189,6 +3235,9 @@ am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -' ac_config_headers="$ac_config_headers config.h:config.in" +# PR 14072 + + # Check whether --with-sysroot was given. if test "${with_sysroot+set}" = set; then : @@ -3227,6 +3276,27 @@ cat >>confdefs.h <<_ACEOF _ACEOF + +installed_linker=ld.gold +# Check whether --enable-gold was given. +if test "${enable_gold+set}" = set; then : + enableval=$enable_gold; case "${enableval}" in + default) + install_as_default=yes + ;; + yes) + if test x${enable_ld} = xno; then + install_as_default=yes + fi + ;; + esac +else + install_as_default=no +fi + + + + # Check whether --enable-threads was given. if test "${enable_threads+set}" = set; then : enableval=$enable_threads; case "${enableval}" in @@ -3332,7 +3402,8 @@ for targ in $target $canon_targets; do . ${srcdir}/configure.tgt if test "$targ_obj" = "UNKNOWN"; then - as_fn_error "\"unsupported target $targ\"" "$LINENO" 5 + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \"unsupported target $targ\"" >&5 +$as_echo "$as_me: WARNING: \"unsupported target $targ\"" >&2;} else targetobjs="$targetobjs ${targ_obj}.\$(OBJEXT)" if test "$targ_extra_obj" != ""; then @@ -3365,6 +3436,14 @@ for targ in $target $canon_targets; do default_big_endian=$targ_big_endian default_osabi=$targ_osabi + if test "$targ_obj" = "aarch64"; then + DEFAULT_TARGET_AARCH64_TRUE= + DEFAULT_TARGET_AARCH64_FALSE='#' +else + DEFAULT_TARGET_AARCH64_TRUE='#' + DEFAULT_TARGET_AARCH64_FALSE= +fi + if test "$targ_obj" = "arm"; then DEFAULT_TARGET_ARM_TRUE= DEFAULT_TARGET_ARM_FALSE='#' @@ -3405,11 +3484,39 @@ else DEFAULT_TARGET_X86_64_FALSE= fi + if test "$targ_obj" = "tilegx"; then + DEFAULT_TARGET_TILEGX_TRUE= + DEFAULT_TARGET_TILEGX_FALSE='#' +else + DEFAULT_TARGET_TILEGX_TRUE='#' + DEFAULT_TARGET_TILEGX_FALSE= +fi + + if test "$targ_obj" = "mips"; then + DEFAULT_TARGET_MIPS_TRUE= + DEFAULT_TARGET_MIPS_FALSE='#' +else + DEFAULT_TARGET_MIPS_TRUE='#' + DEFAULT_TARGET_MIPS_FALSE= +fi + + DEFAULT_TARGET=${targ_obj} + fi fi fi done +# Remove any duplicates. +to="" +for t in $targetobjs; do + case " $to " in + *" $t "*) ;; + *) to="$to $t" ;; + esac +done +targetobjs=$to + if test -n "$targ_32_little"; then $as_echo "#define HAVE_TARGET_32_LITTLE 1" >>confdefs.h @@ -3459,6 +3566,122 @@ cat >>confdefs.h <<_ACEOF _ACEOF + +# Check whether --with-lib-path was given. +if test "${with_lib_path+set}" = set; then : + withval=$with_lib_path; case "$withval" in + yes) LIB_PATH='"/lib:/usr/lib"' ;; + no) LIB_PATH='""' ;; + *) LIB_PATH='"'"$withval"'"' ;; + esac +else + LIB_PATH='"::DEFAULT::"' +fi + + +cat >>confdefs.h <<_ACEOF +#define LIB_PATH $LIB_PATH +_ACEOF + +if test "x$target_alias" = "x" -o "x$host_alias" = "x$target_alias"; then + +$as_echo "#define NATIVE_LINKER 1" >>confdefs.h + +fi + +if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}nm", so it can be a program name with args. +set dummy ${ac_tool_prefix}nm; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_prog_NM+set}" = set; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$NM"; then + ac_cv_prog_NM="$NM" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_NM="${ac_tool_prefix}nm" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +NM=$ac_cv_prog_NM +if test -n "$NM"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NM" >&5 +$as_echo "$NM" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_NM"; then + ac_ct_NM=$NM + # Extract the first word of "nm", so it can be a program name with args. +set dummy nm; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_prog_ac_ct_NM+set}" = set; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_NM"; then + ac_cv_prog_ac_ct_NM="$ac_ct_NM" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_ac_ct_NM="nm" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_NM=$ac_cv_prog_ac_ct_NM +if test -n "$ac_ct_NM"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NM" >&5 +$as_echo "$ac_ct_NM" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_NM" = x; then + NM="" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + NM=$ac_ct_NM + fi +else + NM="$ac_cv_prog_NM" +fi + + ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' @@ -6030,9 +6253,57 @@ else fi + if test "x$target_alias" = "x" -o "x$host_alias" = "x$target_alias" -o "x$host_alias" = "x$build_alias"; then + NATIVE_OR_CROSS_LINKER_TRUE= + NATIVE_OR_CROSS_LINKER_FALSE='#' +else + NATIVE_OR_CROSS_LINKER_TRUE='#' + NATIVE_OR_CROSS_LINKER_FALSE= +fi + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether static linking works" >&5 +$as_echo_n "checking whether static linking works... " >&6; } +if test "${gold_cv_lib_static+set}" = set; then : + $as_echo_n "(cached) " >&6 +else + LDFLAGS_hold=$LDFLAGS +LDFLAGS="$LDFLAGS -static" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +void f() { } +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + gold_cv_lib_static=yes +else + gold_cv_lib_static=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LDFLAGS=$LDFLAGS_hold +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gold_cv_lib_static" >&5 +$as_echo "$gold_cv_lib_static" >&6; } + if test "$gold_cv_lib_static" = "yes"; then + HAVE_STATIC_TRUE= + HAVE_STATIC_FALSE='#' +else + HAVE_STATIC_TRUE='#' + HAVE_STATIC_FALSE= +fi + + if case $target_cpu in - i?86) true;; + powerpc*) false;; x86_64) false;; sparc64) false;; *) true;; @@ -6045,7 +6316,45 @@ else fi - if test "$target_cpu" = "x86_64"; then +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for gcc >= 4.1" >&5 +$as_echo_n "checking for gcc >= 4.1... " >&6; } +if test "${gold_cv_prog_gcc41+set}" = set; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#if !defined __GNUC__ +error +#elif __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 1) +error +#endif + +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gold_cv_prog_gcc41=yes +else + gold_cv_prog_gcc41=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gold_cv_prog_gcc41" >&5 +$as_echo "$gold_cv_prog_gcc41" >&6; } + +save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS -mcmodel=medium" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +int i; +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + have_mcmodel_medium=yes +else + have_mcmodel_medium=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +CFLAGS="$save_CFLAGS" + if test "$target_cpu" = "x86_64" -a "$have_mcmodel_medium" = "yes" -a "$gold_cv_prog_gcc41" = "yes"; then MCMODEL_MEDIUM_TRUE= MCMODEL_MEDIUM_FALSE='#' else @@ -6054,6 +6363,35 @@ else fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports -fmerge-constants" >&5 +$as_echo_n "checking whether $CC supports -fmerge-constants... " >&6; } +if test "${gold_cv_merge_constants+set}" = set; then : + $as_echo_n "(cached) " >&6 +else + +save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS -fmerge-constants" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +const char *s = "foo"; +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gold_cv_merge_constants=yes +else + gold_cv_merge_constants=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: $gold_cv_merge_constants" >&5 +$as_echo "$gold_cv_merge_constants" >&6; } + +if test "$gold_cv_merge_constants" = yes; then : + MERGE_CONSTANTS_FLAG=-fmerge-constants +else + MERGE_CONSTANTS_FLAG= +fi + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for thread support" >&5 $as_echo_n "checking for thread support... " >&6; } if test "${gold_cv_c_thread+set}" = set; then : @@ -6157,10 +6495,16 @@ fi save_CFLAGS="$CFLAGS" -CFLAGS="$CFLAGS -mtls-dialect=gnu2" +CFLAGS="$CFLAGS -Werror -fpic -mtls-dialect=gnu2" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -int i; + +__thread int i; +void foo (void) +{ + i = 10; +} + _ACEOF if ac_fn_c_try_compile "$LINENO"; then : have_tls_gnu2=yes @@ -6213,34 +6557,6 @@ else fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for constructor priorities" >&5 -$as_echo_n "checking for constructor priorities... " >&6; } -if test "${gold_cv_c_conprio+set}" = set; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -void f() __attribute__ ((constructor (1))); -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - gold_cv_c_conprio=yes -else - gold_cv_c_conprio=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gold_cv_c_conprio" >&5 -$as_echo "$gold_cv_c_conprio" >&6; } - - if test "$gold_cv_c_conprio" = "yes"; then - CONSTRUCTOR_PRIORITY_TRUE= - CONSTRUCTOR_PRIORITY_FALSE='#' -else - CONSTRUCTOR_PRIORITY_TRUE='#' - CONSTRUCTOR_PRIORITY_FALSE= -fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -frandom-seed support" >&5 $as_echo_n "checking for -frandom-seed support... " >&6; } if test "${gold_cv_c_random_seed+set}" = set; then : @@ -6269,8 +6585,88 @@ if test "$gold_cv_c_random_seed" = "yes"; then fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for glibc ifunc support" >&5 +$as_echo_n "checking for glibc ifunc support... " >&6; } +if test "${gold_cv_lib_glibc_ifunc+set}" = set; then : + $as_echo_n "(cached) " >&6 +else + save_LDFLAGS="$LDFLAGS" +LDFLAGS="$LDFLAGS -static" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#if !defined __GLIBC__ +error +#elif __GLIBC__ < 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ < 11) +error +#endif +void func (void) { } +void invoke (void); +__asm__(".type invoke, %gnu_indirect_function"); +typedef void (*funcptr) (void); +funcptr dispatch (void) __asm__ ("invoke"); +funcptr dispatch (void) { return &func; } +int +main () +{ +invoke(); + ; + return 0; +} + +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + +if ${NM} conftest$EXEEXT | grep "__rela\?_iplt_start" >/dev/null 2>&1; then + gold_cv_lib_glibc_ifunc=both +else + gold_cv_lib_glibc_ifunc=dyn +fi +else + gold_cv_lib_glibc_ifunc=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LDFLAGS="$save_LDFLAGS" +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gold_cv_lib_glibc_ifunc" >&5 +$as_echo "$gold_cv_lib_glibc_ifunc" >&6; } + + if test "$gold_cv_lib_glibc_ifunc" != "no"; then + IFUNC_TRUE= + IFUNC_FALSE='#' +else + IFUNC_TRUE='#' + IFUNC_FALSE= +fi + + if test "$gold_cv_lib_glibc_ifunc" = "both"; then + IFUNC_STATIC_TRUE= + IFUNC_STATIC_FALSE='#' +else + IFUNC_STATIC_TRUE='#' + IFUNC_STATIC_FALSE= +fi + + + +# Set the 'development' global. +. $srcdir/../bfd/development.sh GCC_WARN_CFLAGS="-W -Wall -Wstrict-prototypes -Wmissing-prototypes" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +__GNUC__ +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "^[0-3]$" >/dev/null 2>&1; then : + +else + GCC_WARN_CFLAGS="$GCC_WARN_CFLAGS -Wshadow" +fi +rm -f conftest* + # Check whether --enable-werror was given. if test "${enable_werror+set}" = set; then : @@ -6282,7 +6678,7 @@ if test "${enable_werror+set}" = set; then : fi -# Enable -Wno-format by default when using gcc on mingw +# Disable -Wformat by default when using gcc on mingw case "${host}" in *-*-mingw32*) if test "${GCC}" = yes -a -z "${ERROR_ON_WARNING}" ; then @@ -6292,8 +6688,8 @@ case "${host}" in *) ;; esac -# Enable -Werror by default when using gcc -if test "${GCC}" = yes -a -z "${ERROR_ON_WARNING}" ; then +# Enable -Werror by default when using gcc. Turn it off for releases. +if test "${GCC}" = yes -a -z "${ERROR_ON_WARNING}" -a "$development" = true ; then ERROR_ON_WARNING=yes fi @@ -6331,24 +6727,66 @@ fi -WARN_CXXFLAGS=`echo ${WARN_CFLAGS} | sed -e 's/-Wstrict-prototypes//' -e 's/-Wmissing-prototypes//'` +WARN_CXXFLAGS=`echo ${WARN_CFLAGS} | sed -e 's/-Wstrict-prototypes//' -e 's/-Wmissing-prototypes//' -e 's/-Wshadow//'` + + + +# Check whether --with-gold-ldflags was given. +if test "${with_gold_ldflags+set}" = set; then : + withval=$with_gold_ldflags; if test "$withval" = "no" -o "$withval" = "yes"; then + GOLD_LDFLAGS= + else + GOLD_LDFLAGS=$withval + fi +else + GOLD_LDFLAGS= +fi + + + + +# Check whether --with-gold-ldadd was given. +if test "${with_gold_ldadd+set}" = set; then : + withval=$with_gold_ldadd; if test "$withval" = "no" -o "$withval" = "yes"; then + GOLD_LDADD= + else + GOLD_LDADD=$withval + fi +else + GOLD_LDADD= +fi + LFS_CFLAGS="-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" -for ac_func in chsize +for ac_header in sys/mman.h do : - ac_fn_c_check_func "$LINENO" "chsize" "ac_cv_func_chsize" -if test "x$ac_cv_func_chsize" = x""yes; then : + ac_fn_c_check_header_mongrel "$LINENO" "sys/mman.h" "ac_cv_header_sys_mman_h" "$ac_includes_default" +if test "x$ac_cv_header_sys_mman_h" = x""yes; then : cat >>confdefs.h <<_ACEOF -#define HAVE_CHSIZE 1 +#define HAVE_SYS_MMAN_H 1 _ACEOF fi + done -for ac_func in pread ftruncate mremap ffsll +for ac_func in chsize mmap +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" +eval as_val=\$$as_ac_var + if test "x$as_val" = x""yes; then : + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF + +fi +done + +for ac_func in pread ftruncate ffsll 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" @@ -6370,8 +6808,63 @@ done +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking mremap with MREMAP_MAYMOVE" >&5 +$as_echo_n "checking mremap with MREMAP_MAYMOVE... " >&6; } +if test "${gold_cv_lib_mremap_maymove+set}" = set; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + +#include +void f() { mremap (0, 0, 0, MREMAP_MAYMOVE); } + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + gold_cv_lib_mremap_maymove=yes +else + gold_cv_lib_mremap_maymove=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: $gold_cv_lib_mremap_maymove" >&5 +$as_echo "$gold_cv_lib_mremap_maymove" >&6; } +if test "$gold_cv_lib_mremap_maymove" = "yes"; then + +$as_echo "#define HAVE_MREMAP 1" >>confdefs.h + +else + case " $LIBOBJS " in + *" mremap.$ac_objext "* ) ;; + *) LIBOBJS="$LIBOBJS mremap.$ac_objext" + ;; +esac + +fi + # Link in zlib if we can. This allows us to write compressed sections. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing zlibVersion" >&5 + + # See if the user specified whether he wants zlib support or not. + +# Check whether --with-zlib was given. +if test "${with_zlib+set}" = set; then : + withval=$with_zlib; +else + with_zlib=auto +fi + + + if test "$with_zlib" != "no"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing zlibVersion" >&5 $as_echo_n "checking for library containing zlibVersion... " >&6; } if test "${ac_cv_search_zlibVersion+set}" = set; then : $as_echo_n "(cached) " >&6 @@ -6438,7 +6931,12 @@ done fi - if test "$ac_cv_search_zlibVersion" != "no"; then + if test "$with_zlib" = "yes" -a "$ac_cv_header_zlib_h" != "yes"; then + as_fn_error "zlib (libz) library was explicitly requested but not found" "$LINENO" 5 + fi + fi + + if test "$ac_cv_header_zlib_h" = "yes"; then HAVE_ZLIB_TRUE= HAVE_ZLIB_FALSE='#' else @@ -6519,6 +7017,50 @@ cat >>confdefs.h <<_ACEOF _ACEOF +save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS -Werror -gpubnames" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +int i; +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + have_pubnames=yes +else + have_pubnames=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +CFLAGS="$save_CFLAGS" + if test "$have_pubnames" = "yes"; then + HAVE_PUBNAMES_TRUE= + HAVE_PUBNAMES_FALSE='#' +else + HAVE_PUBNAMES_TRUE='#' + HAVE_PUBNAMES_FALSE= +fi + + +save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS -Werror -fno-use-linker-plugin" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +int i; +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + have_no_use_linker_plugin=yes +else + have_no_use_linker_plugin=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +CFLAGS="$save_CFLAGS" + if test "$have_no_use_linker_plugin" = "yes"; then + HAVE_NO_USE_LINKER_PLUGIN_TRUE= + HAVE_NO_USE_LINKER_PLUGIN_FALSE='#' +else + HAVE_NO_USE_LINKER_PLUGIN_TRUE='#' + HAVE_NO_USE_LINKER_PLUGIN_FALSE= +fi + + ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' @@ -6661,6 +7203,20 @@ ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ex ac_compiler_gnu=$ac_cv_cxx_compiler_gnu +for ac_header in unordered_set unordered_map +do : + as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +ac_fn_cxx_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" +eval as_val=\$$as_ac_Header + if test "x$as_val" = x""yes; then : + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF + +fi + +done + for ac_header in tr1/unordered_set tr1/unordered_map do : as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` @@ -6701,7 +7257,94 @@ fi done -for ac_func in mallinfo posix_fallocate readv + +for ac_header in windows.h +do : + ac_fn_cxx_check_header_mongrel "$LINENO" "windows.h" "ac_cv_header_windows_h" "$ac_includes_default" +if test "x$ac_cv_header_windows_h" = x""yes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_WINDOWS_H 1 +_ACEOF + +fi + +done + +for ac_header in dlfcn.h +do : + ac_fn_cxx_check_header_mongrel "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default" +if test "x$ac_cv_header_dlfcn_h" = x""yes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_DLFCN_H 1 +_ACEOF + +fi + +done + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing dlopen" >&5 +$as_echo_n "checking for library containing dlopen... " >&6; } +if test "${ac_cv_search_dlopen+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 dlopen (); +int +main () +{ +return dlopen (); + ; + return 0; +} +_ACEOF +for ac_lib in '' dl dld; 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_cxx_try_link "$LINENO"; then : + ac_cv_search_dlopen=$ac_res +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext + if test "${ac_cv_search_dlopen+set}" = set; then : + break +fi +done +if test "${ac_cv_search_dlopen+set}" = set; then : + +else + ac_cv_search_dlopen=no +fi +rm conftest.$ac_ext +LIBS=$ac_func_search_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_dlopen" >&5 +$as_echo "$ac_cv_search_dlopen" >&6; } +ac_res=$ac_cv_search_dlopen +if test "$ac_res" != no; then : + test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" + +fi + +case "$ac_cv_search_dlopen" in + no*) DLOPEN_LIBS="";; + *) DLOPEN_LIBS="$ac_cv_search_dlopen";; +esac + + +for ac_func in mallinfo posix_fallocate fallocate readv sysconf times do : as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` ac_fn_cxx_check_func "$LINENO" "$ac_func" "$as_ac_var" @@ -6843,6 +7486,39 @@ $as_echo "#define HAVE_TR1_UNORDERED_MAP_REHASH 1" >>confdefs.h fi +# Use of tr1/unordered_map with off_t as a key is not supported on GCC +# 4.1.xx when compiling in 32-bit mode with a 64-bit off_t type. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether std::tr1::hash is defined" >&5 +$as_echo_n "checking whether std::tr1::hash is defined... " >&6; } +if test "${gold_cv_hash_off_t+set}" = set; then : + $as_echo_n "(cached) " >&6 +else + CXXFLAGS_hold=$CXXFLAGS +CXXFLAGS="$CXXFLAGS $LFS_CFLAGS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#include +std::tr1::hash h; + +_ACEOF +if ac_fn_cxx_try_compile "$LINENO"; then : + gold_cv_hash_off_t=yes +else + gold_cv_hash_off_t=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +CXXFLAGS=$CXXFLAGS_hold +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gold_cv_hash_off_t" >&5 +$as_echo "$gold_cv_hash_off_t" >&6; } +if test "$gold_cv_hash_off_t" = "yes"; then + +$as_echo "#define HAVE_TR1_HASH_OFF_T 1" >>confdefs.h + +fi + # gcc 4.3.0 doesn't recognize the printf attribute on a template # function. Check for that. This is gcc bug 35546. This test can # probably be removed after the bug has been fixed for a while. @@ -6916,6 +7592,63 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $ ac_compiler_gnu=$ac_cv_c_compiler_gnu +for ac_header in locale.h +do : + ac_fn_c_check_header_mongrel "$LINENO" "locale.h" "ac_cv_header_locale_h" "$ac_includes_default" +if test "x$ac_cv_header_locale_h" = x""yes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_LOCALE_H 1 +_ACEOF + +fi + +done + +for ac_func in setlocale +do : + ac_fn_c_check_func "$LINENO" "setlocale" "ac_cv_func_setlocale" +if test "x$ac_cv_func_setlocale" = x""yes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_SETLOCALE 1 +_ACEOF + +fi +done + + + { $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 +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 whether to enable maintainer-specific portions of Makefiles" >&5 $as_echo_n "checking whether to enable maintainer-specific portions of Makefiles... " >&6; } @@ -7055,6 +7788,10 @@ if test -z "${PLUGINS_TRUE}" && test -z "${PLUGINS_FALSE}"; then as_fn_error "conditional \"PLUGINS\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${DEFAULT_TARGET_AARCH64_TRUE}" && test -z "${DEFAULT_TARGET_AARCH64_FALSE}"; then + as_fn_error "conditional \"DEFAULT_TARGET_AARCH64\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${DEFAULT_TARGET_ARM_TRUE}" && test -z "${DEFAULT_TARGET_ARM_FALSE}"; then as_fn_error "conditional \"DEFAULT_TARGET_ARM\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -7075,6 +7812,14 @@ if test -z "${DEFAULT_TARGET_X86_64_TRUE}" && test -z "${DEFAULT_TARGET_X86_64_F as_fn_error "conditional \"DEFAULT_TARGET_X86_64\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${DEFAULT_TARGET_TILEGX_TRUE}" && test -z "${DEFAULT_TARGET_TILEGX_FALSE}"; then + as_fn_error "conditional \"DEFAULT_TARGET_TILEGX\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${DEFAULT_TARGET_MIPS_TRUE}" && test -z "${DEFAULT_TARGET_MIPS_FALSE}"; then + as_fn_error "conditional \"DEFAULT_TARGET_MIPS\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then as_fn_error "conditional \"AMDEP\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -7096,6 +7841,14 @@ if test -z "${GCC_TRUE}" && test -z "${GCC_FALSE}"; then as_fn_error "conditional \"GCC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${NATIVE_OR_CROSS_LINKER_TRUE}" && test -z "${NATIVE_OR_CROSS_LINKER_FALSE}"; then + as_fn_error "conditional \"NATIVE_OR_CROSS_LINKER\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${HAVE_STATIC_TRUE}" && test -z "${HAVE_STATIC_FALSE}"; then + as_fn_error "conditional \"HAVE_STATIC\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${FN_PTRS_IN_SO_WITHOUT_PIC_TRUE}" && test -z "${FN_PTRS_IN_SO_WITHOUT_PIC_FALSE}"; then as_fn_error "conditional \"FN_PTRS_IN_SO_WITHOUT_PIC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -7124,14 +7877,26 @@ if test -z "${TLS_DESCRIPTORS_TRUE}" && test -z "${TLS_DESCRIPTORS_FALSE}"; then as_fn_error "conditional \"TLS_DESCRIPTORS\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -if test -z "${CONSTRUCTOR_PRIORITY_TRUE}" && test -z "${CONSTRUCTOR_PRIORITY_FALSE}"; then - as_fn_error "conditional \"CONSTRUCTOR_PRIORITY\" was never defined. +if test -z "${IFUNC_TRUE}" && test -z "${IFUNC_FALSE}"; then + as_fn_error "conditional \"IFUNC\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${IFUNC_STATIC_TRUE}" && test -z "${IFUNC_STATIC_FALSE}"; then + as_fn_error "conditional \"IFUNC_STATIC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${HAVE_ZLIB_TRUE}" && test -z "${HAVE_ZLIB_FALSE}"; then as_fn_error "conditional \"HAVE_ZLIB\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${HAVE_PUBNAMES_TRUE}" && test -z "${HAVE_PUBNAMES_FALSE}"; then + as_fn_error "conditional \"HAVE_PUBNAMES\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${HAVE_NO_USE_LINKER_PLUGIN_TRUE}" && test -z "${HAVE_NO_USE_LINKER_PLUGIN_FALSE}"; then + as_fn_error "conditional \"HAVE_NO_USE_LINKER_PLUGIN\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then as_fn_error "conditional \"MAINTAINER_MODE\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -8431,7 +9196,7 @@ $as_echo X"$file" | case "$ac_file" in */Makefile.in) # Adjust a relative srcdir. ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'` - ac_dir_suffix="/`echo "$ac_dir"|sed 's%^\./%%'`" + ac_dir_suffix=/`echo "$ac_dir"|sed 's%^\./%%'` ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'` # In autoconf-2.13 it is called $ac_given_srcdir. # In autoconf-2.50 it is called $srcdir.