From 110e68e5f9d7d87cfc0a9f6e6eeb1ad866949894 Mon Sep 17 00:00:00 2001 From: hubicka Date: Mon, 18 Mar 2002 16:42:35 +0000 Subject: [PATCH] * cpu-i386.c (bfd_x86_64_arch): Rename to "i386:x86-64" * configure.tgt (x86_64-*-linux-gnu*): Configure i386 as native. * elf_x86_64.sh (ARCH): Set to i386:x86-64 set libraries to default to lib64 paths. --- bfd/ChangeLog | 4 ++++ bfd/cpu-i386.c | 8 ++++---- ld/ChangeLog | 8 ++++++++ ld/configure.tgt | 4 +++- ld/emulparams/elf_x86_64.sh | 33 ++++++++++++++++++++++++++++++++- 5 files changed, 51 insertions(+), 6 deletions(-) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index ab7b7d07d0..01a13ffe63 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,7 @@ +Mon Mar 18 17:38:03 CET 2002 Jan Hubicka + + * cpu-i386.c (bfd_x86_64_arch): Rename to "i386:x86-64" + 2002-03-18 Tom Rix * aix5ppc.core.c : New file for AIX 5 64 bit core support. diff --git a/bfd/cpu-i386.c b/bfd/cpu-i386.c index 5110e959ef..f492827572 100644 --- a/bfd/cpu-i386.c +++ b/bfd/cpu-i386.c @@ -44,8 +44,8 @@ const bfd_arch_info_type bfd_x86_64_arch_intel_syntax = 8, /* 8 bits in a byte */ bfd_arch_i386, bfd_mach_x86_64_intel_syntax, - "x86-64:intel", - "x86-64:intel", + "i386:intel", + "i386:x86-64:intel", 3, true, bfd_default_compatible, @@ -75,8 +75,8 @@ const bfd_arch_info_type bfd_x86_64_arch = 8, /* 8 bits in a byte */ bfd_arch_i386, bfd_mach_x86_64, - "x86-64", - "x86-64", + "i386", + "i386:x86-64", 3, true, bfd_default_compatible, diff --git a/ld/ChangeLog b/ld/ChangeLog index b68b47e780..378c00db55 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,11 @@ +Mon Mar 18 17:38:39 CET 2002 Jan Hubicka + Andreas Jaeger + Andreas Schwab + + * configure.tgt (x86_64-*-linux-gnu*): Configure i386 as native. + * elf_x86_64.sh (ARCH): Set to i386:x86-64 + set libraries to default to lib64 paths. + 2002-03-18 Tom Rix * Makefile.am : Add eaix5ppc and eaix5rs6, AIX 5 support. diff --git a/ld/configure.tgt b/ld/configure.tgt index 504c26fb20..4f75a128c1 100644 --- a/ld/configure.tgt +++ b/ld/configure.tgt @@ -145,7 +145,9 @@ i[3456]86-*-linux-gnu*) targ_emul=elf_i386 ;; x86_64-*-linux-gnu*) targ_emul=elf_x86_64 targ_extra_emuls="elf_i386 i386linux" - tdir_i386linux=${targ_alias}aout + targ_extra_libpath=elf_i386 + tdir_i386linux=`echo ${targ_alias}aout | sed -e 's/x86_64/i386/'` + tdir_elf_i386=`echo ${targ_alias} | sed -e 's/x86_64/i386/'` ;; i[3456]86-*-sysv[45]*) targ_emul=elf_i386 ;; i[3456]86-*-solaris2*) targ_emul=elf_i386_ldso diff --git a/ld/emulparams/elf_x86_64.sh b/ld/emulparams/elf_x86_64.sh index 27931c76b2..4f7433e541 100644 --- a/ld/emulparams/elf_x86_64.sh +++ b/ld/emulparams/elf_x86_64.sh @@ -4,9 +4,40 @@ OUTPUT_FORMAT="elf64-x86-64" TEXT_START_ADDR=0x400000 MAXPAGESIZE=0x100000 NONPAGED_TEXT_START_ADDR=0x400000 -ARCH=i386 +ARCH="i386:x86-64" MACHINE= NOP=0x90909090 TEMPLATE_NAME=elf32 GENERATE_SHLIB_SCRIPT=yes NO_SMALL_DATA=yes + +if [ "x${host}" = "x${target}" ]; then + case " $EMULATION_LIBPATH " in + *" ${EMULATION_NAME} "*) + # Native, and default or emulation requesting LIB_PATH. + + # Linux modify the default library search path to first include + # a 64-bit specific directory. + case "$target" in + x86_64*-linux*) + suffix=64 ;; + esac + + if [ -n "${suffix}" ]; then + + LIB_PATH=/lib${suffix}:/lib + LIB_PATH=${LIB_PATH}:/usr/lib${suffix}:/usr/lib + if [ -n "${NATIVE_LIB_DIRS}" ]; then + LIB_PATH=${LIB_PATH}:`echo ${NATIVE_LIB_DIRS} | sed s_:_${suffix}:_g`${suffix}:${NATIVE_LIB_DIRS} + fi + if [ "${libdir}" != /usr/lib ]; then + LIB_PATH=${LIB_PATH}:${libdir}${suffix}:${libdir} + fi + if [ "${libdir}" != /usr/local/lib ]; then + LIB_PATH=${LIB_PATH}:/usr/local/lib${suffix}:/usr/local/lib + fi + + fi + ;; + esac +fi -- 2.11.0