From c35d2a3a36ce9dc107dfb8ad39b923f413b813ba Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Wed, 21 Nov 2012 12:39:21 -0800 Subject: Use LIBC_LINKER_FEATURE to check -z global support --- configure | 35 ++++++++++++++++++++--------------- configure.in | 17 ++--------------- 2 files changed, 22 insertions(+), 30 deletions(-) diff --git a/configure b/configure index 4b23722b56..e5b1e162b7 100755 --- a/configure +++ b/configure @@ -6560,32 +6560,37 @@ fi $as_echo "$libc_linker_feature" >&6; } -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for -z global" >&5 -$as_echo_n "checking for -z global... " >&6; } -if ${libc_cv_z_global+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat > conftest.c <&5 +$as_echo_n "checking for linker that supports -z global... " >&6; } +libc_linker_feature=no +if test x"$gnu_ld" = x"yes"; then + libc_linker_check=`$LD -v --help 2>/dev/null | grep "\-z global"` + if test -n "$libc_linker_check"; then + cat > conftest.c <&5 (eval $ac_try) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; } -then + then + libc_linker_feature=yes + fi + rm -f conftest* + fi +fi +if test $libc_linker_feature = yes; then libc_cv_z_global=yes else libc_cv_z_global=no fi -rm -f conftest* -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_z_global" >&5 -$as_echo "$libc_cv_z_global" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_linker_feature" >&5 +$as_echo "$libc_linker_feature" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -fpie" >&5 diff --git a/configure.in b/configure.in index 2ec07b1e43..55c46ade92 100644 --- a/configure.in +++ b/configure.in @@ -1561,21 +1561,8 @@ LIBC_LINKER_FEATURE([-z execstack], [-Wl,-z,execstack], [libc_cv_z_execstack=yes], [libc_cv_z_execstack=no]) AC_SUBST(libc_cv_z_execstack) -AC_CACHE_CHECK(for -z global, - libc_cv_z_global, [dnl -cat > conftest.c <&AS_MESSAGE_LOG_FD]) -then - libc_cv_z_global=yes -else - libc_cv_z_global=no -fi -rm -f conftest*]) +LIBC_LINKER_FEATURE([-z global], [-Wl,-z,global], + [libc_cv_z_global=yes], [libc_cv_z_global=no]) AC_SUBST(libc_cv_z_global) AC_CACHE_CHECK(for -fpie, libc_cv_fpie, [dnl -- cgit v1.2.3