summaryrefslogtreecommitdiff
path: root/libtool.m4
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2012-08-26 14:09:07 +0000
committerH.J. Lu <hjl.tools@gmail.com>2012-08-26 14:09:07 +0000
commit827a8f987c5a7652a9edd0838787bc520f221c38 (patch)
treef36bd7898707d2cf484be0d81d8bc0664fe32828 /libtool.m4
parent98283e0158a4be3552e3f93683dd33d8230ceda7 (diff)
downloadbinutils-redhat-827a8f987c5a7652a9edd0838787bc520f221c38.tar.gz
Sync libtool.m4 with GCC tree
2012-05-15 H.J. Lu <hongjiu.lu@intel.com> Merge upstream change * libtool.m4 (_LT_ENABLE_LOCK): Support x32. 2011-11-21 Andreas Tobler <andreast@fgznet.ch> * libtool.m4: Additional FreeBSD 10 fixes.
Diffstat (limited to 'libtool.m4')
-rw-r--r--libtool.m417
1 files changed, 12 insertions, 5 deletions
diff --git a/libtool.m4 b/libtool.m4
index 71bcee83c8..a7f99ac7db 100644
--- a/libtool.m4
+++ b/libtool.m4
@@ -1232,7 +1232,14 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
LD="${LD-ld} -m elf_i386_fbsd"
;;
x86_64-*linux*)
- LD="${LD-ld} -m elf_i386"
+ case `/usr/bin/file conftest.o` in
+ *x86-64*)
+ LD="${LD-ld} -m elf32_x86_64"
+ ;;
+ *)
+ LD="${LD-ld} -m elf_i386"
+ ;;
+ esac
;;
ppc64-*linux*|powerpc64-*linux*)
LD="${LD-ld} -m elf32ppclinux"
@@ -2273,7 +2280,7 @@ freebsd* | dragonfly*)
objformat=`/usr/bin/objformat`
else
case $host_os in
- freebsd[[123]]*) objformat=aout ;;
+ freebsd[[23]].*) objformat=aout ;;
*) objformat=elf ;;
esac
fi
@@ -2291,7 +2298,7 @@ freebsd* | dragonfly*)
esac
shlibpath_var=LD_LIBRARY_PATH
case $host_os in
- freebsd2*)
+ freebsd2.*)
shlibpath_overrides_runpath=yes
;;
freebsd3.[[01]]* | freebsdelf3.[[01]]*)
@@ -4804,7 +4811,7 @@ _LT_EOF
;;
# Unfortunately, older versions of FreeBSD 2 do not have this feature.
- freebsd2*)
+ freebsd2.*)
_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
_LT_TAGVAR(hardcode_direct, $1)=yes
_LT_TAGVAR(hardcode_minus_L, $1)=yes
@@ -5751,7 +5758,7 @@ if test "$_lt_caught_CXX_error" != yes; then
esac
;;
- freebsd[[12]]*)
+ freebsd2.*)
# C++ shared libraries reported to be fairly broken before
# switch to ELF
_LT_TAGVAR(ld_shlibs, $1)=no