This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
| Other format: | [Raw text] | |
this patch attempts to make the ARM configuration more orthogonal.
Index: bfd/config.bfd
===================================================================
RCS file: /cvs/src/src/bfd/config.bfd,v
retrieving revision 1.182
diff -u -r1.182 config.bfd
--- bfd/config.bfd 15 Mar 2005 14:14:08 -0000 1.182
+++ bfd/config.bfd 20 Mar 2005 19:20:20 -0000
@@ -92,6 +92,11 @@
*) targ_archs=bfd_${targ_cpu}_arch ;;
esac
+case "${targ_cpu}" in
+ *eb) endian=big ;;
+ *el) endian=little ;;
+ *) endian=default ;;
+esac
# WHEN ADDING ENTRIES TO THIS MATRIX:
# Make sure that the left side always has two dashes. Otherwise you
@@ -172,124 +177,133 @@
targ_selvecs=bfd_elf32_bigarc_vec
;;
- armeb-*-netbsdelf*)
- targ_defvec=bfd_elf32_bigarm_vec
- targ_selvecs="bfd_elf32_littlearm_vec armnetbsd_vec"
- ;;
- arm-*-netbsdelf*)
- targ_defvec=bfd_elf32_littlearm_vec
- targ_selvecs="bfd_elf32_bigarm_vec armnetbsd_vec"
- ;;
- arm-*-netbsd* | arm-*-openbsd*)
+ arm-*-netbsd* | thumb-*-netbsd* | strongarm-*-netbsd* | xscale-*-netbsd* | \
+ arm-*-openbsd* | thumb-*-openbsd* | strongarm-*-openbsd* | xscale-*-openbsd*)
targ_defvec=armnetbsd_vec
targ_selvecs="bfd_elf32_littlearm_vec bfd_elf32_bigarm_vec"
targ_underscore=yes
targ_cflags=-D__QNXTARGET__
;;
- arm-*-nto* | nto*arm*)
- targ_defvec=bfd_elf32_littlearm_vec
- targ_selvecs=bfd_elf32_bigarm_vec
+ arm*-*-netbsdelf* | thumb*-*-netbsdelf* | strongarm*-*-netbsdelf* | xscale*-*-netbsdelf* | \
+ arm*-*-netbsd-elf* | thumb*-*-netbsd-elf* | strongarm*-*-netbsd-elf* | xscale*-*-netbsd-elf*)
+ case "${endian}" in
+ big)
+ targ_defvec=bfd_elf32_bigarm_vec
+ targ_selvecs="bfd_elf32_littlearm_vec armnetbsd_vec"
+ ;;
+ little | default)
+ targ_defvec=bfd_elf32_littlearm_vec
+ targ_selvecs="bfd_elf32_bigarm_vec armnetbsd_vec"
+ ;;
+ esac
;;
arm-*-riscix*)
targ_defvec=riscix_vec
;;
- arm-epoc-pe*)
- targ_defvec=arm_epoc_pe_little_vec
- targ_selvecs="arm_epoc_pe_little_vec arm_epoc_pe_big_vec arm_epoc_pei_little_vec arm_epoc_pei_big_vec"
+ arm*-epoc-pe* | thumb*-epoc-pe* | strongarm*-epoc-pe* | xscale*-epoc-pe*)
+ case "${endian}" in
+ big)
+ targ_defvec=arm_epoc_pe_big_vec
+ targ_selvecs="arm_epoc_pe_little_vec arm_epoc_pei_big_vec arm_epoc_pei_little_vec"
+ ;;
+ little | default)
+ targ_defvec=arm_epoc_pe_little_vec
+ targ_selvecs="arm_epoc_pe_big_vec arm_epoc_pei_little_vec arm_epoc_pei_big_vec"
+ ;;
+ esac
targ_underscore=no
targ_cflags=-DARM_COFF_BUGFIX
;;
- arm-wince-pe | arm-*-wince)
- targ_defvec=armpe_little_vec
- targ_selvecs="armpe_little_vec armpe_big_vec armpei_little_vec armpei_big_vec"
- targ_underscore=no
+ arm*-wince-* | thumb*-wince-* | strongarm*-wince-* | xscale*-wince-* | \
+ arm*-*-wince | thumb*-*-wince | strongarm*-*-wince | xscale*-*-wince)
targ_cflags="-DARM_WINCE -DARM_COFF_BUGFIX"
- ;;
- arm-*-pe*)
- targ_defvec=armpe_little_vec
- targ_selvecs="armpe_little_vec armpe_big_vec armpei_little_vec armpei_big_vec"
- targ_underscore=yes
- ;;
- arm-*-aout | armel-*-aout)
- targ_defvec=aout_arm_little_vec
- targ_selvecs=aout_arm_big_vec
- ;;
- armeb-*-aout)
- targ_defvec=aout_arm_big_vec
- targ_selvecs=aout_arm_little_vec
- ;;
- arm-*-coff)
- targ_defvec=armcoff_little_vec
- targ_selvecs=armcoff_big_vec
- targ_underscore=yes
- ;;
- arm-*-rtems*)
- targ_defvec=bfd_elf32_littlearm_vec
- targ_selvecs=bfd_elf32_bigarm_vec
- ;;
- armeb-*-elf | arm*b-*-linux-gnu*)
- targ_defvec=bfd_elf32_bigarm_vec
- targ_selvecs=bfd_elf32_littlearm_vec
- ;;
- arm-*-kaos* | strongarm-*-kaos*)
- targ_defvec=bfd_elf32_littlearm_vec
- targ_selvecs=bfd_elf32_bigarm_vec
- ;;
- arm-*-elf | arm-*-freebsd* | arm*-*-linux-gnu* | arm*-*-conix* | \
- arm*-*-uclinux* | arm-*-kfreebsd*-gnu | \
- arm*-*-eabi* )
- targ_defvec=bfd_elf32_littlearm_vec
- targ_selvecs=bfd_elf32_bigarm_vec
- ;;
- arm*-*-vxworks | arm*-*-windiss)
- targ_defvec=bfd_elf32_littlearm_vxworks_vec
- targ_selvecs=bfd_elf32_bigarm_vxworks_vec
- ;;
- arm*-*-symbianelf*)
- targ_defvec=bfd_elf32_littlearm_symbian_vec
- targ_selvecs=bfd_elf32_bigarm_symbian_vec
- ;;
- arm9e-*-elf)
- targ_defvec=bfd_elf32_littlearm_vec
- targ_selvecs=bfd_elf32_bigarm_vec
- ;;
-
- thumb-*-coff)
- targ_defvec=armcoff_little_vec
- targ_selvecs=armcoff_big_vec
- targ_underscore=yes
- ;;
- thumb-*-elf)
- targ_defvec=bfd_elf32_littlearm_vec
- targ_selvecs=bfd_elf32_bigarm_vec
- ;;
- thumb-epoc-pe*)
- targ_defvec=arm_epoc_pe_little_vec
- targ_selvecs="arm_epoc_pe_little_vec arm_epoc_pe_big_vec arm_epoc_pei_little_vec arm_epoc_pei_big_vec"
+ ;&
+ arm*-*-pe | thumb*-*-pe | strongarm*-*-pe | xscale*-*-pe)
+ case "${endian}" in
+ big)
+ targ_defvec=armpe_little_vec
+ targ_selvecs="armpe_big_vec armpei_little_vec armpei_big_vec"
+ ;;
+ little | default)
+ targ_defvec=armpe_big_vec
+ targ_selvecs="armpe_little_ve armpei_big_vec armpei_little_vec"
+ ;;
+ esac
targ_underscore=no
;;
- thumb-*-pe*)
- targ_defvec=armpe_little_vec
- targ_selvecs="armpe_little_vec armpe_big_vec armpei_little_vec armpei_big_vec"
- targ_underscore=yes
- ;;
- strongarm-*-elf)
- targ_defvec=bfd_elf32_littlearm_vec
- targ_selvecs=bfd_elf32_bigarm_vec
+ arm*-*-aout | thumb*-*-aout | strongarm*-*-aout | xscale*-*-aout)
+ case "${endian}" in
+ big)
+ targ_defvec=aout_arm_big_vec
+ targ_selvecs=aout_arm_little_vec
+ ;;
+ little | default)
+ targ_defvec=aout_arm_little_vec
+ targ_selvecs=aout_arm_big_vec
+ ;;
+ esac
;;
- strongarm-*-coff)
- targ_defvec=armcoff_little_vec
- targ_selvecs=armcoff_big_vec
+ arm*-*-coff | thumb*-*-coff | strongarm*-*-coff | xscale*-*-coff)
+ case "${endian}" in
+ big)
+ targ_defvec=armcoff_little_vec
+ targ_selvecs=armcoff_big_vec
+ ;;
+ little | default)
+ targ_defvec=armcoff_little_vec
+ targ_selvecs=armcoff_big_vec
+ ;;
+ esac
targ_underscore=yes
;;
- xscale-*-elf)
- targ_defvec=bfd_elf32_littlearm_vec
- targ_selvecs=bfd_elf32_bigarm_vec
+ arm*-*-vxworks | thumb*-*-vxworks | strongarm*-*-vxworks | xscale*-*-vxworks | \
+ arm*-*-windiss | thumb*-*-windiss | strongarm*-*-windiss | xscale*-*-windiss)
+ case "${endian}" in
+ big)
+ targ_defvec=bfd_elf32_bigarm_vxworks_vec
+ targ_selvecs=bfd_elf32_littlearm_vxworks_vec
+ ;;
+ little | default)
+ targ_defvec=bfd_elf32_littlearm_vxworks_vec
+ targ_selvecs=bfd_elf32_bigarm_vxworks_vec
+ ;;
+ esac
+ ;;
+ arm*-*-symbianelf* | thumb*-*-symbianelf* | strongarm*-*-symbianelf* | xscale*-*-symbianelf*)
+ case "${endian}" in
+ big)
+ targ_defvec=bfd_elf32_bigarm_symbian_vec
+ targ_selvecs=bfd_elf32_littlearm_symbian_vec
+ ;;
+ little | default)
+ targ_defvec=bfd_elf32_littlearm_symbian_vec
+ targ_selvecs=bfd_elf32_bigarm_symbian_vec
+ ;;
+ esac
;;
- xscale-*-coff)
- targ_defvec=armcoff_little_vec
- targ_selvecs=armcoff_big_vec
- targ_underscore=yes
+ nto*arm*)
+ echo "Note: Please use a target matching arm*-*-nto*"
+ ;&
+ arm*-*-elf* | thumb*-*-elf* | strongarm*-*-elf* | xscale*-*-elf* |
+ arm*-*-eabi* | thumb*-*-eabi* | strongarm*-*-eabi* | xscale*-*-eabi* |
+ arm*-*-freebsd* | thumb*-*-freebsd* | strongarm*-*-freebsd* | xscale*-*-freebsd* |
+ arm*-*-kfreebsd*-gnu | thumb*-*-kfreebsd*-gnu | strongarm*-*-kfreebsd*-gnu | xscale*-*-kfreebsd*-gnu |
+ arm*-*-kaos* | thumb*-*-kaos* | strongarm*-*-kaos* | xscale*-*-kaos* |
+ arm*-*-linux* | thumb*-*-linux* | strongarm*-*-linux* | xscale*-*-linux* |
+ arm*-*-uclinux* | thumb*-*-uclinux* | strongarm*-*-uclinux* | xscale*-*-uclinux* |
+ arm*-*-conix* | thumb*-*-conix* | strongarm*-*-conix* | xscale*-*-conix* |
+ arm*-*-nto* | thumb*-*-nto* | strongarm*-*-nto* | xscale*-*-nto* |
+ arm*-*-rtems* | thumb*-*-rtems* | strongarm*-*-rtems* | xscale*-*-rtems* |
+ case "${endian}" in
+ big)
+ targ_defvec=bfd_elf32_bigarm_vec
+ targ_selvecs=bfd_elf32_littlearm_vec
+ ;;
+ little | default)
+ targ_defvec=bfd_elf32_littlearm_vec
+ targ_selvecs=bfd_elf32_bigarm_vec
+ ;;
+ esac
;;
a29k-*-ebmon* | a29k-*-udi* | a29k-*-coff* | a29k-*-sym1* | \
Attachment:
signature.asc
Description: OpenPGP digital signature
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |