aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorMatthias Klose <doko@ubuntu.com>2010-09-09 18:22:48 +0000
committerMatthias Klose <doko@gcc.gnu.org>2010-09-09 18:22:48 +0000
commit709e26f09ba8af665b0bc2b1fb2cc690b5381dd8 (patch)
treeb8fb449695248198a678ee918230c6583deb529f /gcc
parent99da3840a2f4aa9fbda8bce8837fb65b6182d1a2 (diff)
downloadgcc-709e26f09ba8af665b0bc2b1fb2cc690b5381dd8.zip
gcc-709e26f09ba8af665b0bc2b1fb2cc690b5381dd8.tar.gz
gcc-709e26f09ba8af665b0bc2b1fb2cc690b5381dd8.tar.bz2
re PR bootstrap/43847 (test for plugin is using wrong objdump for host != target)
2010-09-09 Matthias Klose <doko@ubuntu.com> PR bootstrap/43847 * configure.ac (--enable-plugin): Enhance for cross builds. * configure: Regenerate. From-SVN: r164113
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rwxr-xr-xgcc/configure65
-rw-r--r--gcc/configure.ac58
3 files changed, 89 insertions, 40 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 3b1225a..5e2b585 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2010-09-09 Matthias Klose <doko@ubuntu.com>
+
+ PR bootstrap/43847
+ * configure.ac (--enable-plugin): Enhance for cross builds.
+ * configure: Regenerate.
+
2010-09-09 Jan Hubicka <jh@suse.cz>
PR tree-optimization/45598
diff --git a/gcc/configure b/gcc/configure
index ebbead2..e2c22a7 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -25712,35 +25712,58 @@ fi
pluginlibs=
-if test x"$enable_plugin" = x"yes"; then
- case "${host}" in
- *-*-darwin*)
+case "${host}" in
+ *-*-darwin*)
+ if test x$build = x$host; then
+ export_sym_check="nm${exeext} -g"
+ elif x$host = x$target; then
export_sym_check="$gcc_cv_nm -g"
- ;;
- *)
+ else
+ export_sym_check=
+ fi
+ ;;
+ *)
+ if test x$build = x$host; then
+ export_sym_check="objdump${exeext} -T"
+ elif x$host = x$target; then
export_sym_check="$gcc_cv_objdump -T"
- ;;
- esac
+ else
+ export_sym_check=
+ fi
+ ;;
+esac
+
+if test x"$enable_plugin" = x"yes"; then
+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for exported symbols" >&5
$as_echo_n "checking for exported symbols... " >&6; }
- 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
- : # No need to use a flag
- else
- { $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 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
- plugin_rdynamic=yes
- pluginlibs="-rdynamic"
+ : # No need to use a flag
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
else
- plugin_rdynamic=no
- enable_plugin=no
- fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $plugin_rdynamic" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$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
+ plugin_rdynamic=yes
+ pluginlibs="-rdynamic"
+ else
+ plugin_rdynamic=no
+ enable_plugin=no
+ fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $plugin_rdynamic" >&5
$as_echo "$plugin_rdynamic" >&6; }
+ fi
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: unable to check" >&5
+$as_echo "unable to check" >&6; }
fi
# Check -ldl
diff --git a/gcc/configure.ac b/gcc/configure.ac
index e39ab87..e02dac9 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -4639,32 +4639,52 @@ enable_plugin=$enableval,
enable_plugin=yes; default_plugin=yes)
pluginlibs=
-if test x"$enable_plugin" = x"yes"; then
- case "${host}" in
- *-*-darwin*)
+case "${host}" in
+ *-*-darwin*)
+ if test x$build = x$host; then
+ export_sym_check="nm${exeext} -g"
+ elif x$host = x$target; then
export_sym_check="$gcc_cv_nm -g"
- ;;
- *)
+ else
+ export_sym_check=
+ fi
+ ;;
+ *)
+ if test x$build = x$host; then
+ export_sym_check="objdump${exeext} -T"
+ elif x$host = x$target; then
export_sym_check="$gcc_cv_objdump -T"
- ;;
- esac
+ else
+ export_sym_check=
+ fi
+ ;;
+esac
+
+if test x"$enable_plugin" = x"yes"; then
+
AC_MSG_CHECKING([for exported symbols])
- 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
- : # No need to use a flag
- else
- AC_MSG_CHECKING([for -rdynamic])
- ${CC} ${CFLAGS} ${LDFLAGS} -rdynamic conftest.c -o conftest > /dev/null 2>&1
+ 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
- plugin_rdynamic=yes
- pluginlibs="-rdynamic"
+ : # No need to use a flag
+ AC_MSG_RESULT([yes])
else
- plugin_rdynamic=no
- enable_plugin=no
+ AC_MSG_RESULT([yes])
+ AC_MSG_CHECKING([for -rdynamic])
+ ${CC} ${CFLAGS} ${LDFLAGS} -rdynamic conftest.c -o conftest > /dev/null 2>&1
+ if $export_sym_check conftest | grep foobar > /dev/null; then
+ plugin_rdynamic=yes
+ pluginlibs="-rdynamic"
+ else
+ plugin_rdynamic=no
+ enable_plugin=no
+ fi
+ AC_MSG_RESULT([$plugin_rdynamic])
fi
- AC_MSG_RESULT([$plugin_rdynamic])
+ else
+ AC_MSG_RESULT([unable to check])
fi
# Check -ldl