aeffff6722
2010-12-23 Robert Millan <rmh@gnu.org> * config.bfd: Recognize mips-freebsd and mips-kfreebsd-gnu. * configure.host: Likewise. * configure.in: Support for `bfd_elf32_ntradbigmips_freebsd_vec', `bfd_elf32_ntradlittlemips_freebsd_vec', `bfd_elf32_tradbigmips_freebsd_vec', `bfd_elf32_tradlittlemips_freebsd_vec', `bfd_elf64_tradbigmips_freebsd_vec' and `bfd_elf64_tradlittlemips_freebsd_vec'. * configure: Regenerate. * elf32-mips.c: New target for FreeBSD support (same as traditional MIPS but overrides ELF_OSABI with ELFOSABI_FREEBSD). * elf64-mips.c: Likewise. * elfn32-mips.c: Likewise. * targets.c (_bfd_target_vector): Add `bfd_elf32_ntradbigmips_freebsd_vec', `bfd_elf32_ntradlittlemips_freebsd_vec', `bfd_elf32_tradbigmips_freebsd_vec', `bfd_elf32_tradlittlemips_freebsd_vec', `bfd_elf64_tradbigmips_freebsd_vec' and `bfd_elf64_tradlittlemips_freebsd_vec'. ld/ 2010-12-14 Robert Millan <rmh@gnu.org> * configure.tgt: Recognize mips-freebsd and mips-kfreebsd-gnu. * emulparams/elf32btsmip_fbsd.sh: New file. * emulparams/elf32btsmipn32_fbsd.sh: Likewise. * emulparams/elf32ltsmip_fbsd.sh: Likewise. * emulparams/elf32ltsmipn32_fbsd.sh: Likewise. * emulparams/elf64btsmip_fbsd.sh: Likewise. * emulparams/elf64ltsmip_fbsd.sh: Likewise. * Makefile.am: Add build rules for `eelf32btsmip_fbsd.c', `eelf32btsmipn32_fbsd.c', `eelf32ltsmip_fbsd.c', `eelf32ltsmipn32_fbsd.c', `eelf64btsmip_fbsd.c' and `eelf64ltsmip_fbsd.c'. * Makefile.in: Regenerate. gas/ 2010-12-19 Robert Millan <rmh@gnu.org> Richard Sandiford <rdsandiford@googlemail.com> * config/tc-mips.c (ELF_TARGET): New macro. Generates target names accordingly to whether TE_FreeBSD and whether TE_TMIPS are defined. (mips_target_format): Refactor code using ELF_TARGET(). (support_64bit_objects): Likewise. * configure.in: Recognize mips-freebsd and mips-kfreebsd-gnu. * configure.tgt: Likewise. * configure: Regenerate. binutils/testsuite/ * binutils-all/readelf.exp: Handle MIPS FreeBSD targets. gas/testsuite/ * gas/mips/e32el-rel2.d: Accept any file format. * gas/mips/elf-rel.d: Likewise. * gas/mips/elf-rel2.d: Likewise. * gas/mips/elf-rel3.d: Likewise. * gas/mips/elfel-rel.d: Likewise. * gas/mips/elfel-rel2.d: Likewise. * gas/mips/elfel-rel3.d: Likewise. * gas/mips/ldstla-32-mips3-shared.d: Likewise. * gas/mips/ldstla-32-mips3.d: Likewise. * gas/mips/ldstla-32-shared.d: Likewise. * gas/mips/ldstla-32.d: Likewise. * gas/mips/ldstla-n64-shared.d: Likewise. * gas/mips/ldstla-n64.d: Likewise. * gas/mips/noat-1.d: Likewise. * gas/mips/set-arch.d: Likewise. * gas/mips/tls-o32.d: Likewise. ld/testsuite/ * ld-mips-elf/mips-elf-flags.exp: Handle FreeBSD targets. * ld-mips-elf/mips-elf.exp: Likewise. * ld-mips-elf/mips16-call-global.d: Accept any file format. * ld-mips-elf/mips16-intermix.d: Likewise.
86 lines
3.0 KiB
Plaintext
86 lines
3.0 KiB
Plaintext
# This file is a shell script that overrides some of the tools and
|
|
# flags used on a host specific basis.
|
|
|
|
# Since the "bfd/hosts" directory is shared by the bfd, opcodes, and
|
|
# binutils directories (at least), the index to it is also shared.
|
|
# This is that index. Each configure.in file should source this file
|
|
# in its per-host part.
|
|
|
|
# This sets the following shell variables:
|
|
# HDEFINES host specific compiler options
|
|
# host64 set to true if 64 bit types are as fast as 32 bit
|
|
# HOST_64BIT_TYPE host 64 bit type
|
|
# HOST_U_64BIT_TYPE unsigned 64 bit type (not needed if 64BIT_TYPE is long)
|
|
|
|
HDEFINES=
|
|
host64=false
|
|
HOST_64BIT_TYPE=
|
|
HOST_U_64BIT_TYPE=
|
|
|
|
case "${host}" in
|
|
|
|
hppa*64*-*-hpux*) # HP/UX's ftello64 et.al. declarations are only
|
|
# visible when _LARGEFILE64_SOURCE is defined.
|
|
# Without those declarations, real_ftell et.al.
|
|
# get mis-compiled.
|
|
HDEFINES="-DHOST_HPPAHPUX -D_LARGEFILE64_SOURCE"
|
|
host64=true;;
|
|
hppa*-*-hpux*) HDEFINES="-DHOST_HPPAHPUX -D_LARGEFILE64_SOURCE" ;;
|
|
hppa*-*-hiux*) HDEFINES=-DHOST_HPPAHPUX ;;
|
|
hppa*-*-mpeix*) HDEFINES=-DHOST_HPPAMPEIX ;;
|
|
hppa*-*-bsd*) HDEFINES=-DHOST_HPPABSD ;;
|
|
hppa*-*-osf*) HDEFINES=-DHOST_HPPAOSF ;;
|
|
|
|
ia64-*-hpux*) HDEFINES=-D_LARGEFILE64_SOURCE
|
|
host64=true;;
|
|
ia64-*-*) host64=true;;
|
|
|
|
# Workaround for limitations on win9x where file contents are
|
|
# not zero'd out if you seek past the end and then write.
|
|
i[3-7]86-*-mingw32*) HDEFINES=-D__USE_MINGW_FSEEK;;
|
|
|
|
i[3-7]86-sequent-bsd*) HDEFINES=-Dshared=genshared ;;
|
|
i[3-7]86-sequent-sysv4*) ;;
|
|
i[3-7]86-sequent-sysv*) HDEFINES=-Dshared=genshared ;;
|
|
|
|
mips*-*-netbsd*) ;;
|
|
mips*-*-openbsd*) ;;
|
|
mips*-dec-*) HDEFINES="-G 4" ;;
|
|
mips*-sgi-irix3*) HDEFINES="-G 4" ;;
|
|
mips*-sgi-irix4*) HDEFINES="-G 4" ;;
|
|
mips*-sgi-irix6*) host64=true;;
|
|
mips64*-*-linux*) host64=true;;
|
|
mips64*-*-freebsd* | mips64*-*-kfreebsd*-gnu) host64=true;;
|
|
mips*-*-sysv4*) ;;
|
|
mips*-*-sysv*) HDEFINES="-G 4" ;;
|
|
mips*-*-riscos*) HDEFINES="-G 4" ;;
|
|
|
|
m68*-hp-hpux*) HDEFINES=-DHOST_HP300HPUX ;;
|
|
|
|
# Some Solaris systems (osol0906 at least) have a libc that doesn't recognise
|
|
# the "MS-ANSI" code page name, so we define an override for CP_ACP (sets the
|
|
# default code page used by windres/windmc when not specified by a commandline
|
|
# option) to select the "WINDOWS-1252" name instead. See PR11280 for details.
|
|
*-*-solaris2.11) HDEFINES=-DCP_ACP=1 ;;
|
|
|
|
*-*-windows*)
|
|
HOST_64BIT_TYPE=__int64
|
|
HOST_U_64BIT_TYPE="unsigned __int64"
|
|
# The following krock is necessary because we can't run the build compiler
|
|
# (MSVC) on the configure host, so we have to explicitly set the values here.
|
|
# Note that this file is never run through autoconf, so we can't use any
|
|
# autoconf macros here. Because of this, we have to muck with autoconf
|
|
# variables explicitly.
|
|
ac_cv_func_mmap_fixed_mapped=no
|
|
ac_cv_header_time=no
|
|
ac_cv_func_getpagesize=no
|
|
ac_cv_func_madvise=no
|
|
ac_cv_func_mprotect=no
|
|
ac_cv_func_getuid=no
|
|
ac_cv_func_getgid=no
|
|
ac_cv_header_sys_file_h=no
|
|
ac_cv_header_sys_time_h=no
|
|
ac_cv_header_unistd_h=no
|
|
;;
|
|
esac
|