diff options
author | Ian Lance Taylor <ian@airs.com> | 2009-12-29 22:49:13 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@airs.com> | 2009-12-29 22:49:13 +0000 |
commit | 084e2665e2f76ce0106595e62bd31bd33d9c6190 (patch) | |
tree | 10d6dc3117e59974bfb0d89189b86452f4cc3483 | |
parent | 250acde31a8008cfcbd969d25fb5b91ad9eaff34 (diff) | |
download | gdb-084e2665e2f76ce0106595e62bd31bd33d9c6190.zip gdb-084e2665e2f76ce0106595e62bd31bd33d9c6190.tar.gz gdb-084e2665e2f76ce0106595e62bd31bd33d9c6190.tar.bz2 |
* configure.ac: Set the MCMODEL_MEDIUM conditional to false if
using a version of gcc before 4.1.
* configure: Rebuild.
-rw-r--r-- | gold/ChangeLog | 6 | ||||
-rwxr-xr-x | gold/configure | 27 | ||||
-rw-r--r-- | gold/configure.ac | 14 |
3 files changed, 45 insertions, 2 deletions
diff --git a/gold/ChangeLog b/gold/ChangeLog index 345ec62..4e39648 100644 --- a/gold/ChangeLog +++ b/gold/ChangeLog @@ -1,3 +1,9 @@ +2009-12-29 Ian Lance Taylor <iant@google.com> + + * configure.ac: Set the MCMODEL_MEDIUM conditional to false if + using a version of gcc before 4.1. + * configure: Rebuild. + 2009-12-28 Chris Demetriou <cgd@google.com> * attributes.cc (Output_attributes_section_data::do_write): Use diff --git a/gold/configure b/gold/configure index 1bb2d3d..4817e44 100755 --- a/gold/configure +++ b/gold/configure @@ -6045,7 +6045,32 @@ 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; } + + if test "$target_cpu" = "x86_64" -a "$gold_cv_prog_gcc41" = "yes"; then MCMODEL_MEDIUM_TRUE= MCMODEL_MEDIUM_FALSE='#' else diff --git a/gold/configure.ac b/gold/configure.ac index f279b45..7102670 100644 --- a/gold/configure.ac +++ b/gold/configure.ac @@ -227,8 +227,20 @@ AM_CONDITIONAL(FN_PTRS_IN_SO_WITHOUT_PIC, [ *) true;; esac]) +dnl Test for gcc 4.1 or later. Full support for -mcmodel=medium is +dnl only available in gcc 4.1. +AC_CACHE_CHECK([for gcc >= 4.1], [gold_cv_prog_gcc41], +[AC_COMPILE_IFELSE([ +#if !defined __GNUC__ +error +#elif __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 1) +error +#endif +], [gold_cv_prog_gcc41=yes], [gold_cv_prog_gcc41=no])]) + dnl Whether we can test -mcmodel=medium. -AM_CONDITIONAL(MCMODEL_MEDIUM, [test "$target_cpu" = "x86_64"]) +AM_CONDITIONAL(MCMODEL_MEDIUM, +[test "$target_cpu" = "x86_64" -a "$gold_cv_prog_gcc41" = "yes"]) dnl Test for __thread support. AC_CACHE_CHECK([for thread support], [gold_cv_c_thread], |