diff options
author | Pedro F. Giffuni <pfg@FreeBSD.org> | 2017-05-23 16:38:10 +0000 |
---|---|---|
committer | Pedro F. Giffuni <pfg@FreeBSD.org> | 2017-05-23 16:38:10 +0000 |
commit | 3a17f73727e2716b1b2031055bbafc331f513248 (patch) | |
tree | bc07671665ece0218663888d5c899907d17e2aa3 /contrib/binutils | |
parent | 5a6d7b723f590eec8b13ff40c53facea67983230 (diff) | |
download | src-3a17f73727e2716b1b2031055bbafc331f513248.tar.gz src-3a17f73727e2716b1b2031055bbafc331f513248.zip |
Bring some rough support for FreeBSD S/390 to the GNU toolchain.
This is no-op and only for reference: the S/390 port seems to be elusive
in the BSDs so it is convenient to keep some trace from past efforts.
It is likely newer attempts will focus on a newer toolchain using clang
instead.
Obtained from: Perforce depot/projects/s390
Notes
Notes:
svn path=/head/; revision=318750
Diffstat (limited to 'contrib/binutils')
-rwxr-xr-x | contrib/binutils/bfd/config.bfd | 4 | ||||
-rw-r--r-- | contrib/binutils/ld/configure.tgt | 9 | ||||
-rwxr-xr-x | contrib/binutils/ld/emulparams/elf64_s390_fbsd.sh | 2 | ||||
-rwxr-xr-x | contrib/binutils/ld/emulparams/elf_s390_fbsd.sh | 2 |
4 files changed, 15 insertions, 2 deletions
diff --git a/contrib/binutils/bfd/config.bfd b/contrib/binutils/bfd/config.bfd index 1365ac12f8a5..879c3a32ce13 100755 --- a/contrib/binutils/bfd/config.bfd +++ b/contrib/binutils/bfd/config.bfd @@ -1156,13 +1156,13 @@ case "${targ}" in targ_selvecs="bfd_powerpcle_pei_vec bfd_powerpc_pei_vec bfd_powerpcle_pe_vec bfd_powerpc_pe_vec" ;; - s390-*-linux*) + s390-*-freebsd* | s390-*-linux*) targ_defvec=bfd_elf32_s390_vec targ64_selvecs=bfd_elf64_s390_vec want64=true ;; #ifdef BFD64 - s390x-*-linux*) + s390x-*-freebsd* | s390x-*-linux*) targ_defvec=bfd_elf64_s390_vec targ_selvecs=bfd_elf32_s390_vec want64=true diff --git a/contrib/binutils/ld/configure.tgt b/contrib/binutils/ld/configure.tgt index 46e05d33a8ab..2ed7d4a19702 100644 --- a/contrib/binutils/ld/configure.tgt +++ b/contrib/binutils/ld/configure.tgt @@ -480,12 +480,21 @@ powerpc-*-lynxos*) targ_emul=ppclynx ;; rs6000-*-aix5*) targ_emul=aix5rs6 ;; rs6000-*-aix*) targ_emul=aixrs6 ;; +s390x-*-freebsd*) targ_emul=elf64_s390 + targ_extra_emuls=elf_s390 + targ_extra_libpath=$targ_extra_emuls + tdir_elf_s390=`echo ${targ_alias} | sed -e 's/s390x/s390/'` ;; s390x-*-linux*) targ_emul=elf64_s390 targ_extra_emuls=elf_s390 targ_extra_libpath=$targ_extra_emuls tdir_elf_s390=`echo ${targ_alias} | sed -e 's/s390x/s390/'` ;; s390x-*-tpf*) targ_emul=elf64_s390 tdir_elf_s390=`echo ${targ_alias} | sed -e 's/s390x/s390/'` ;; +s390-*-freebsd*) targ_emul=elf_s390 + targ64_extra_emuls=elf64_s390 + targ64_extra_libpath=elf64_s390 + tdir_elf64_s390=`echo ${targ_alias} | sed -e 's/s390/s390x/'` + ;; s390-*-linux*) targ_emul=elf_s390 targ64_extra_emuls=elf64_s390 targ64_extra_libpath=elf64_s390 diff --git a/contrib/binutils/ld/emulparams/elf64_s390_fbsd.sh b/contrib/binutils/ld/emulparams/elf64_s390_fbsd.sh new file mode 100755 index 000000000000..c0191ebc9eba --- /dev/null +++ b/contrib/binutils/ld/emulparams/elf64_s390_fbsd.sh @@ -0,0 +1,2 @@ +. ${srcdir}/emulparams/elf64_s390.sh +. ${srcdir}/emulparams/elf_fbsd.sh diff --git a/contrib/binutils/ld/emulparams/elf_s390_fbsd.sh b/contrib/binutils/ld/emulparams/elf_s390_fbsd.sh new file mode 100755 index 000000000000..89662a0c7515 --- /dev/null +++ b/contrib/binutils/ld/emulparams/elf_s390_fbsd.sh @@ -0,0 +1,2 @@ +. ${srcdir}/emulparams/elf_s390.sh +. ${srcdir}/emulparams/elf_fbsd.sh |