This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
PATCH: ld/1485: --enable-targets=all doesn't work for 64bit target
- From: "H. J. Lu" <hjl at lucon dot org>
- To: binutils at sources dot redhat dot com
- Date: Wed, 24 May 2006 10:23:25 -0700
- Subject: PATCH: ld/1485: --enable-targets=all doesn't work for 64bit target
This patch checks 64bit bfd properly so that --enable-targets=all will
work for 64bit target and host.
H.J.
----
2006-05-24 H.J. Lu <hongjiu.lu@intel.com>
PR ld/1485
* configure.in: Use ${srcdir}/../bfd/config.bfd to check 64bit
bfd. Support 64bit host for --enable-targets=all.
* configure: Regenerated.
--- ld/configure.in.64 2006-04-14 14:44:46.000000000 -0700
+++ ld/configure.in 2006-05-24 10:16:18.000000000 -0700
@@ -169,6 +169,11 @@ do
EMUL=$targ_emul
fi
+ . ${srcdir}/../bfd/config.bfd
+ case "${targ_defvec}-${targ_selvecs}" in
+ *elf64*) want64=true;;
+ esac
+
for i in $targ_emul $targ_extra_emuls $targ_extra_libpath; do
case " $all_emuls " in
*" e${i}.o "*) ;;
@@ -210,10 +215,13 @@ AC_SUBST(EMUL)
TDIRS=tdirs
AC_SUBST_FILE(TDIRS)
-dnl FIXME: We will build a 64 bit BFD for a 64 bit host or a 64 bit
-dnl target, and in those cases we should also build the 64 bit
-dnl emulations.
if test x${all_targets} = xtrue; then
+ if test x${want64} = xfalse; then
+ AC_CHECK_SIZEOF(long)
+ if test "x${ac_cv_sizeof_long}" = "x8"; then
+ want64=true
+ fi
+ fi
if test x${want64} = xtrue; then
EMULATION_OFILES='$(ALL_EMULATIONS) $(ALL_64_EMULATIONS)'
else