From b17289e199da24ca08752553e94837456b6c5df5 Mon Sep 17 00:00:00 2001 From: Matthias Klose Date: Thu, 15 Mar 2012 19:51:34 +0100 Subject: [PATCH] - Issue #14324: Fix configure tests for cross builds. when configured --with(out)-computed-gotos for a cross, use this value instead of defaulting to no. --- configure | 89 +++++++++++++++++++++++++++------------------------- configure.ac | 51 ++++++++++++++++-------------- 2 files changed, 73 insertions(+), 67 deletions(-) diff --git a/configure b/configure index 8f5845dbfcb..ee518ccbaa1 100755 --- a/configure +++ b/configure @@ -14022,49 +14022,6 @@ $as_echo "#define HAVE_BROKEN_MBSTOWCS 1" >>confdefs.h fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports computed gotos" >&5 -$as_echo_n "checking whether $CC supports computed gotos... " >&6; } -if ${ac_cv_computed_gotos+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test "$cross_compiling" = yes; then : - ac_cv_computed_gotos=no -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int main(int argc, char **argv) -{ - static void *targets[1] = { &&LABEL1 }; - goto LABEL2; -LABEL1: - return 0; -LABEL2: - goto *targets[0]; - return 1; -} - -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - ac_cv_computed_gotos=yes -else - ac_cv_computed_gotos=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - -fi - -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_computed_gotos" >&5 -$as_echo "$ac_cv_computed_gotos" >&6; } -if test "$ac_cv_computed_gotos" = yes -then - -$as_echo "#define HAVE_COMPUTED_GOTOS 1" >>confdefs.h - -fi - # Check for --with-computed-gotos { $as_echo "$as_me:${as_lineno-$LINENO}: checking for --with-computed-gotos" >&5 $as_echo_n "checking for --with-computed-gotos... " >&6; } @@ -14095,6 +14052,52 @@ $as_echo "no value specified" >&6; } fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports computed gotos" >&5 +$as_echo_n "checking whether $CC supports computed gotos... " >&6; } +if ${ac_cv_computed_gotos+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + if test "${with_computed_gotos+set}" = set; then + ac_cv_computed_gotos="$with_computed_gotos -- configured --with(out)-computed-gotos" + else + ac_cv_computed_gotos=no + fi +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int main(int argc, char **argv) +{ + static void *targets[1] = { &&LABEL1 }; + goto LABEL2; +LABEL1: + return 0; +LABEL2: + goto *targets[0]; + return 1; +} + +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + ac_cv_computed_gotos=yes +else + ac_cv_computed_gotos=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + +fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_computed_gotos" >&5 +$as_echo "$ac_cv_computed_gotos" >&6; } +case "$ac_cv_computed_gotos" in yes*) + +$as_echo "#define HAVE_COMPUTED_GOTOS 1" >>confdefs.h + +esac + case $ac_sys_system in AIX*) diff --git a/configure.ac b/configure.ac index 2bcbedfec6e..1ae79cc5e0a 100644 --- a/configure.ac +++ b/configure.ac @@ -4239,30 +4239,6 @@ then wide chars that would be converted.]) fi -AC_MSG_CHECKING(whether $CC supports computed gotos) -AC_CACHE_VAL(ac_cv_computed_gotos, -AC_RUN_IFELSE([AC_LANG_SOURCE([[[ -int main(int argc, char **argv) -{ - static void *targets[1] = { &&LABEL1 }; - goto LABEL2; -LABEL1: - return 0; -LABEL2: - goto *targets[0]; - return 1; -} -]]])], -[ac_cv_computed_gotos=yes], -[ac_cv_computed_gotos=no], -[ac_cv_computed_gotos=no])) -AC_MSG_RESULT($ac_cv_computed_gotos) -if test "$ac_cv_computed_gotos" = yes -then - AC_DEFINE(HAVE_COMPUTED_GOTOS, 1, - [Define if the C compiler supports computed gotos.]) -fi - # Check for --with-computed-gotos AC_MSG_CHECKING(for --with-computed-gotos) AC_ARG_WITH(computed-gotos, @@ -4284,6 +4260,33 @@ fi ], [AC_MSG_RESULT(no value specified)]) +AC_MSG_CHECKING(whether $CC supports computed gotos) +AC_CACHE_VAL(ac_cv_computed_gotos, +AC_RUN_IFELSE([AC_LANG_SOURCE([[[ +int main(int argc, char **argv) +{ + static void *targets[1] = { &&LABEL1 }; + goto LABEL2; +LABEL1: + return 0; +LABEL2: + goto *targets[0]; + return 1; +} +]]])], +[ac_cv_computed_gotos=yes], +[ac_cv_computed_gotos=no], +[if test "${with_computed_gotos+set}" = set; then + ac_cv_computed_gotos="$with_computed_gotos -- configured --with(out)-computed-gotos" + else + ac_cv_computed_gotos=no + fi])) +AC_MSG_RESULT($ac_cv_computed_gotos) +case "$ac_cv_computed_gotos" in yes*) + AC_DEFINE(HAVE_COMPUTED_GOTOS, 1, + [Define if the C compiler supports computed gotos.]) +esac + case $ac_sys_system in AIX*) AC_DEFINE(HAVE_BROKEN_PIPE_BUF, 1, [Define if the system reports an invalid PIPE_BUF value.]) ;;