aboutsummaryrefslogtreecommitdiff
path: root/bfd/config.bfd
diff options
context:
space:
mode:
Diffstat (limited to 'bfd/config.bfd')
-rw-r--r--bfd/config.bfd18
1 files changed, 16 insertions, 2 deletions
diff --git a/bfd/config.bfd b/bfd/config.bfd
index 39b09ff..c76157f 100644
--- a/bfd/config.bfd
+++ b/bfd/config.bfd
@@ -71,7 +71,16 @@ esac
case "${targ}" in
# START OF targmatch.h
#ifdef BFD64
- alpha*-*-netbsd* | alpha*-*-freebsd* | alpha*-*-openbsd*)
+ alpha*-*-freebsd*)
+ targ_defvec=bfd_elf64_alpha_freebsd_vec
+ targ_selvecs=ecoffalpha_little_vec
+ # FreeBSD <= 4.0 supports only the old nonstandard way of ABI labelling.
+ case "${targ}" in
+ alpha*-*-freebsd3* | alpha*-*-freebsd4 | alpha*-*-freebsd4.0*)
+ targ_cflags=-DOLD_FREEBSD_ABI_LABEL ;;
+ esac
+ ;;
+ alpha*-*-netbsd* | alpha*-*-openbsd*)
targ_defvec=bfd_elf64_alpha_vec
targ_selvecs=ecoffalpha_little_vec
;;
@@ -399,8 +408,13 @@ case "${targ}" in
targ_underscore=yes
;;
i[3456]86-*-freebsd*)
- targ_defvec=bfd_elf32_i386_vec
+ targ_defvec=bfd_elf32_i386_freebsd_vec
targ_selvecs=i386coff_vec
+ # FreeBSD <= 4.0 supports only the old nonstandard way of ABI labelling.
+ case "${targ}" in
+ i[3456]86-*-freebsd3* | i[3456]86-*-freebsd4 | i[3456]86-*-freebsd4.0*)
+ targ_cflags=-DOLD_FREEBSD_ABI_LABEL ;;
+ esac
;;
i[3456]86-*-netbsdelf*)
targ_defvec=bfd_elf32_i386_vec