mirror of
https://review.haiku-os.org/buildtools
synced 2024-11-23 07:18:49 +01:00
binutils: Apply Haiku patches to 2.36.1
* a82c1c - Base Haiku patches * d113c7 - Fix powerpc gas target for Haiku * e97614 - arm64 target support * f91439 - don't require coff, we don't need it anyway * c3903e - enable PE support for ARM * f4963f - Add missing __exidx_* to fix arm bootstrap Change-Id: I27d810fa49c38ed6e1548fc1f880bebb62ee0d64 Reviewed-on: https://review.haiku-os.org/c/buildtools/+/4374 Reviewed-by: Fredrik Holmqvist <fredrik.holmqvist@gmail.com> Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
This commit is contained in:
parent
46e1ce6913
commit
7c3988da64
@ -256,6 +256,11 @@ case "${targ}" in
|
||||
targ_selvecs=aarch64_elf64_be_cloudabi_vec
|
||||
want64=true
|
||||
;;
|
||||
aarch64-*-haiku*)
|
||||
targ_defvec=aarch64_elf64_le_vec
|
||||
targ_selvecs="aarch64_elf64_be_vec aarch64_elf32_le_vec aarch64_elf32_be_vec arm_elf32_le_vec arm_elf32_be_vec"
|
||||
want64=true
|
||||
;;
|
||||
aarch64-*-linux* | aarch64-*-netbsd*)
|
||||
targ_defvec=aarch64_elf64_le_vec
|
||||
targ_selvecs="aarch64_elf64_be_vec aarch64_elf32_le_vec aarch64_elf32_be_vec arm_elf32_le_vec arm_elf32_be_vec"
|
||||
@ -340,6 +345,10 @@ case "${targ}" in
|
||||
targ_defvec=arm_elf32_le_vec
|
||||
targ_selvecs="arm_elf32_be_vec"
|
||||
;;
|
||||
arm*-*-haiku*)
|
||||
targ_defvec=arm_elf32_le_vec
|
||||
targ_selvecs="arm_elf32_fdpic_le_vec arm_elf32_be_vec arm_elf32_fdpic_be_vec arm_pe_le_vec arm_pe_be_vec arm_pei_le_vec arm_pei_be_vec"
|
||||
;;
|
||||
arm-*-nacl*)
|
||||
targ_defvec=arm_elf32_nacl_le_vec
|
||||
targ_selvecs="arm_elf32_nacl_be_vec"
|
||||
@ -674,6 +683,11 @@ case "${targ}" in
|
||||
targ_selvecs="i386_elf32_fbsd_vec iamcu_elf32_vec i386_coff_vec i386_pei_vec x86_64_pe_vec x86_64_pei_vec i386_elf32_vec x86_64_elf64_vec l1om_elf64_vec l1om_elf64_fbsd_vec k1om_elf64_vec k1om_elf64_fbsd_vec"
|
||||
want64=true
|
||||
;;
|
||||
x86_64-*-haiku*)
|
||||
targ_defvec=x86_64_elf64_vec
|
||||
targ_selvecs="i386_elf32_vec"
|
||||
want64=true
|
||||
;;
|
||||
x86_64-*-netbsd* | x86_64-*-openbsd*)
|
||||
targ_defvec=x86_64_elf64_vec
|
||||
targ_selvecs="i386_elf32_vec iamcu_elf32_vec i386_coff_vec i386_pei_vec x86_64_pe_vec x86_64_pei_vec l1om_elf64_vec k1om_elf64_vec"
|
||||
@ -724,6 +738,9 @@ case "${targ}" in
|
||||
targ_defvec=i386_elf32_vec
|
||||
targ_selvecs="iamcu_elf32_vec i386_pe_vec i386_pei_vec"
|
||||
;;
|
||||
i[3-7]86-*-haiku*)
|
||||
targ_defvec=i386_elf32_vec
|
||||
;;
|
||||
i[3-7]86-*-interix*)
|
||||
targ_defvec=i386_pei_vec
|
||||
targ_selvecs="i386_pe_vec"
|
||||
@ -789,6 +806,9 @@ case "${targ}" in
|
||||
targ_defvec=m32r_elf32_vec
|
||||
;;
|
||||
|
||||
m68*-*-haiku*)
|
||||
targ_defvec=m68k_elf32_vec
|
||||
;;
|
||||
m68hc11-*-* | m6811-*-*)
|
||||
targ_defvec=m68hc11_elf32_vec
|
||||
targ_selvecs="m68hc11_elf32_vec m68hc12_elf32_vec"
|
||||
@ -843,6 +863,10 @@ case "${targ}" in
|
||||
targ_defvec=mips_elf32_trad_be_vec
|
||||
targ_selvecs="mips_elf32_trad_le_vec mips_elf64_trad_be_vec mips_elf64_trad_le_vec mips_ecoff_be_vec mips_ecoff_le_vec"
|
||||
;;
|
||||
mips*el-*-haiku*)
|
||||
targ_defvec=mips_elf32_le_vec
|
||||
targ_selvecs="mips_elf32_be_vec mips_elf64_be_vec mips_elf64_le_vec mips_ecoff_le_vec mips_ecoff_be_vec"
|
||||
;;
|
||||
mips*-*-irix6*)
|
||||
targ_defvec=mips_elf32_n_be_vec
|
||||
targ_selvecs="mips_elf32_n_le_vec mips_elf32_be_vec mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec"
|
||||
@ -1042,6 +1066,11 @@ case "${targ}" in
|
||||
targ_selvecs="rs6000_xcoff64_aix_vec"
|
||||
want64=true
|
||||
;;
|
||||
powerpc-*-haiku*)
|
||||
targ_defvec=powerpc_elf32_vec
|
||||
targ_selvecs="rs6000_xcoff_vec powerpc_elf32_le_vec pef_vec pef_xlib_vec powerpc_xcoff_vec powerpc_boot_vec"
|
||||
targ_cflags=-D__HAIKU_TARGET__
|
||||
;;
|
||||
#ifdef BFD64
|
||||
powerpc64-*-aix5.[01])
|
||||
targ_defvec=rs6000_xcoff64_aix_vec
|
||||
@ -1293,6 +1322,11 @@ case "${targ}" in
|
||||
targ_selvecs="sparc_elf64_sol2_vec sparc_elf32_vec sparc_elf64_vec"
|
||||
want64=true
|
||||
;;
|
||||
sparc64-*-haiku*)
|
||||
targ_defvec=sparc_elf64_vec
|
||||
targ_selvecs="sparc_elf64_vec sparc_elf32_vec"
|
||||
want64=true
|
||||
;;
|
||||
sparc64-*-freebsd* | sparc64-*-kfreebsd*-gnu)
|
||||
targ_defvec=sparc_elf64_fbsd_vec
|
||||
targ_selvecs="sparc_elf64_vec sparc_elf32_vec"
|
||||
|
2
binutils/bfd/configure
vendored
2
binutils/bfd/configure
vendored
@ -10923,7 +10923,7 @@ haiku*)
|
||||
soname_spec='${libname}${release}${shared_ext}$major'
|
||||
shlibpath_var=LIBRARY_PATH
|
||||
shlibpath_overrides_runpath=yes
|
||||
sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/beos/system/lib'
|
||||
sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
|
||||
hardcode_into_libs=yes
|
||||
;;
|
||||
|
||||
|
2
binutils/binutils/configure
vendored
2
binutils/binutils/configure
vendored
@ -10750,7 +10750,7 @@ haiku*)
|
||||
soname_spec='${libname}${release}${shared_ext}$major'
|
||||
shlibpath_var=LIBRARY_PATH
|
||||
shlibpath_overrides_runpath=yes
|
||||
sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/beos/system/lib'
|
||||
sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
|
||||
hardcode_into_libs=yes
|
||||
;;
|
||||
|
||||
|
2
binutils/configure
vendored
2
binutils/configure
vendored
@ -3005,7 +3005,7 @@ case "${ENABLE_GOLD}" in
|
||||
*-*-elf* | *-*-sysv4* | *-*-unixware* | *-*-eabi* | hppa*64*-*-hpux* \
|
||||
| *-*-linux* | *-*-gnu* | frv-*-uclinux* | *-*-irix5* | *-*-irix6* \
|
||||
| *-*-netbsd* | *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* \
|
||||
| *-*-solaris2* | *-*-nto* | *-*-nacl*)
|
||||
| *-*-solaris2* | *-*-nto* | *-*-nacl* | *-*-haiku*)
|
||||
case "${target}" in
|
||||
*-*-linux*aout* | *-*-linux*oldld*)
|
||||
;;
|
||||
|
@ -335,7 +335,7 @@ case "${ENABLE_GOLD}" in
|
||||
*-*-elf* | *-*-sysv4* | *-*-unixware* | *-*-eabi* | hppa*64*-*-hpux* \
|
||||
| *-*-linux* | *-*-gnu* | frv-*-uclinux* | *-*-irix5* | *-*-irix6* \
|
||||
| *-*-netbsd* | *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* \
|
||||
| *-*-solaris2* | *-*-nto* | *-*-nacl*)
|
||||
| *-*-solaris2* | *-*-nto* | *-*-nacl* | *-*-haiku*)
|
||||
case "${target}" in
|
||||
*-*-linux*aout* | *-*-linux*oldld*)
|
||||
;;
|
||||
|
@ -486,6 +486,7 @@ const char extra_symbol_chars[] = "*%-([{}"
|
||||
#if ((defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF)) \
|
||||
&& !defined (TE_GNU) \
|
||||
&& !defined (TE_LINUX) \
|
||||
&& !defined (TE_Haiku) \
|
||||
&& !defined (TE_FreeBSD) \
|
||||
&& !defined (TE_DragonFly) \
|
||||
&& !defined (TE_NetBSD))
|
||||
|
30
binutils/gas/config/te-haiku.h
Normal file
30
binutils/gas/config/te-haiku.h
Normal file
@ -0,0 +1,30 @@
|
||||
/* te-haiku.h -- Haiku target environment declarations.
|
||||
Copyright 2013 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GAS, the GNU Assembler.
|
||||
|
||||
GAS is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 3, or (at your option)
|
||||
any later version.
|
||||
|
||||
GAS is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with GAS; see the file COPYING. If not, write to
|
||||
the Free Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA
|
||||
02110-1301, USA. */
|
||||
|
||||
/* Target environment for BeOS/Haiku. It is the same as the generic
|
||||
target, except that it arranges via the TE_BeOS define to
|
||||
suppress the use of "/" as a comment character. Some code in the
|
||||
haiku kernel uses "/" to mean division. (What a concept!) */
|
||||
#define TE_Haiku 1
|
||||
|
||||
#define LOCAL_LABELS_DOLLAR 1
|
||||
#define LOCAL_LABELS_FB 1
|
||||
|
||||
#include "obj-format.h"
|
2
binutils/gas/configure
vendored
2
binutils/gas/configure
vendored
@ -10538,7 +10538,7 @@ haiku*)
|
||||
soname_spec='${libname}${release}${shared_ext}$major'
|
||||
shlibpath_var=LIBRARY_PATH
|
||||
shlibpath_overrides_runpath=yes
|
||||
sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/beos/system/lib'
|
||||
sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
|
||||
hardcode_into_libs=yes
|
||||
;;
|
||||
|
||||
|
@ -125,6 +125,7 @@ generic_target=${cpu_type}-$vendor-$os
|
||||
case ${generic_target} in
|
||||
aarch64*-*-elf*) fmt=elf;;
|
||||
aarch64*-*-fuchsia*) fmt=elf;;
|
||||
aarch64*-*-haiku*) fmt=elf em=haiku ;;
|
||||
aarch64*-*-linux*) fmt=elf em=linux
|
||||
case ${cpu}-${os} in
|
||||
aarch64*-linux-gnu_ilp32) arch=aarch64:32 ;;
|
||||
@ -161,6 +162,7 @@ case ${generic_target} in
|
||||
fmt=coff em=wince-pe ;;
|
||||
arm-*-pe) fmt=coff em=pe ;;
|
||||
arm-*-fuchsia*) fmt=elf ;;
|
||||
arm-*-haiku*) fmt=elf em=haiku ;;
|
||||
|
||||
avr-*-*) fmt=elf bfd_gas=yes ;;
|
||||
|
||||
@ -222,6 +224,7 @@ case ${generic_target} in
|
||||
i386-*-elfiamcu) fmt=elf arch=iamcu ;;
|
||||
i386-*-elf*) fmt=elf ;;
|
||||
i386-*-fuchsia*) fmt=elf ;;
|
||||
i386-*-haiku*) fmt=elf em=haiku ;;
|
||||
i386-*-bsd*) fmt=aout em=386bsd ;;
|
||||
i386-*-netbsdpe*) fmt=coff em=pe ;;
|
||||
i386-*-netbsd*-gnu* | \
|
||||
@ -288,6 +291,7 @@ case ${generic_target} in
|
||||
m68k-*-uclinux*) fmt=elf em=uclinux ;;
|
||||
m68k-*-gnu*) fmt=elf ;;
|
||||
m68k-*-netbsdelf*) fmt=elf em=nbsd ;;
|
||||
m68k-*-haiku*) fmt=elf em=haiku ;;
|
||||
|
||||
s12z-*-*) fmt=elf ;;
|
||||
|
||||
@ -309,6 +313,7 @@ case ${generic_target} in
|
||||
mips-*-sysv4* | mips-*-gnu*) fmt=elf em=tmips ;;
|
||||
mips*-sde-elf* | mips*-mti-elf* | mips*-img-elf*)
|
||||
fmt=elf em=tmips ;;
|
||||
mips-*-haiku*) fmt=elf em=haiku ;;
|
||||
mips-*-elf*) fmt=elf ;;
|
||||
mips-*-netbsd*) fmt=elf em=tmips ;;
|
||||
mips-*-openbsd*) fmt=elf em=tmips ;;
|
||||
@ -351,6 +356,7 @@ case ${generic_target} in
|
||||
ppc-*-beos*) fmt=coff ;;
|
||||
ppc-*-*n*bsd* | ppc-*-elf*) fmt=elf ;;
|
||||
ppc-*-eabi* | ppc-*-sysv4*) fmt=elf ;;
|
||||
ppc-*-haiku*) fmt=elf em=haiku ;;
|
||||
ppc-*-linux-*) fmt=elf em=linux ;;
|
||||
ppc-*-solaris*) fmt=elf em=solaris ;;
|
||||
ppc-*-macos*) fmt=coff em=macos ;;
|
||||
@ -359,6 +365,7 @@ case ${generic_target} in
|
||||
|
||||
pru-*-*) fmt=elf ;;
|
||||
|
||||
riscv*-*-haiku*) fmt=elf endian=little em=haiku ;;
|
||||
riscv*-*-*) fmt=elf ;;
|
||||
|
||||
rx-*-linux*) fmt=elf em=linux ;;
|
||||
@ -386,6 +393,7 @@ case ${generic_target} in
|
||||
sh-*-kaos*) fmt=elf ;;
|
||||
shle*-*-kaos*) fmt=elf ;;
|
||||
|
||||
sparc-*-haiku*) fmt=elf em=haiku ;;
|
||||
sparc-*-linux-*) fmt=elf em=linux ;;
|
||||
sparc-*-solaris*) fmt=elf em=solaris ;;
|
||||
sparc-*-freebsd*) fmt=elf em=freebsd ;;
|
||||
|
2
binutils/gprof/configure
vendored
2
binutils/gprof/configure
vendored
@ -10385,7 +10385,7 @@ haiku*)
|
||||
soname_spec='${libname}${release}${shared_ext}$major'
|
||||
shlibpath_var=LIBRARY_PATH
|
||||
shlibpath_overrides_runpath=yes
|
||||
sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/beos/system/lib'
|
||||
sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
|
||||
hardcode_into_libs=yes
|
||||
;;
|
||||
|
||||
|
@ -167,6 +167,7 @@ ALL_EMULATION_SOURCES = \
|
||||
earmelf.c \
|
||||
earmelf_fbsd.c \
|
||||
earmelf_fuchsia.c \
|
||||
earmelf_haiku.c \
|
||||
earmelf_linux.c \
|
||||
earmelf_linux_eabi.c \
|
||||
earmelf_linux_fdpiceabi.c \
|
||||
@ -259,6 +260,7 @@ ALL_EMULATION_SOURCES = \
|
||||
eelf32ppc.c \
|
||||
eelf32ppc_fbsd.c \
|
||||
eelf32ppclinux.c \
|
||||
eelf32ppchaiku.c \
|
||||
eelf32ppcnto.c \
|
||||
eelf32ppcsim.c \
|
||||
eelf32ppcvxworks.c \
|
||||
@ -286,9 +288,11 @@ ALL_EMULATION_SOURCES = \
|
||||
eelf_i386.c \
|
||||
eelf_i386_be.c \
|
||||
eelf_i386_fbsd.c \
|
||||
eelf_i386_haiku.c \
|
||||
eelf_i386_ldso.c \
|
||||
eelf_i386_sol2.c \
|
||||
eelf_i386_vxworks.c \
|
||||
eelf_mipsel_haiku.c \
|
||||
eelf_iamcu.c \
|
||||
eelf_s390.c \
|
||||
eh8300elf.c \
|
||||
@ -390,6 +394,7 @@ ALL_64_EMULATION_SOURCES = \
|
||||
eaarch64cloudabib.c \
|
||||
eaarch64fbsd.c \
|
||||
eaarch64fbsdb.c \
|
||||
eaarch64haiku.c \
|
||||
eaarch64linux.c \
|
||||
eaarch64linuxb.c \
|
||||
eaarch64linux32.c \
|
||||
@ -455,6 +460,7 @@ ALL_64_EMULATION_SOURCES = \
|
||||
eelf_k1om_fbsd.c \
|
||||
eelf_x86_64.c \
|
||||
eelf_x86_64_cloudabi.c \
|
||||
eelf_x86_64_haiku.c \
|
||||
eelf_x86_64_fbsd.c \
|
||||
eelf_x86_64_sol2.c \
|
||||
ehppa64linux.c \
|
||||
|
@ -656,6 +656,7 @@ ALL_EMULATION_SOURCES = \
|
||||
earmelf.c \
|
||||
earmelf_fbsd.c \
|
||||
earmelf_fuchsia.c \
|
||||
earmelf_haiku.c \
|
||||
earmelf_linux.c \
|
||||
earmelf_linux_eabi.c \
|
||||
earmelf_linux_fdpiceabi.c \
|
||||
@ -747,6 +748,7 @@ ALL_EMULATION_SOURCES = \
|
||||
eelf32or1k_linux.c \
|
||||
eelf32ppc.c \
|
||||
eelf32ppc_fbsd.c \
|
||||
eelf32ppchaiku.c \
|
||||
eelf32ppclinux.c \
|
||||
eelf32ppcnto.c \
|
||||
eelf32ppcsim.c \
|
||||
@ -775,10 +777,12 @@ ALL_EMULATION_SOURCES = \
|
||||
eelf_i386.c \
|
||||
eelf_i386_be.c \
|
||||
eelf_i386_fbsd.c \
|
||||
eelf_i386_haiku.c \
|
||||
eelf_i386_ldso.c \
|
||||
eelf_i386_sol2.c \
|
||||
eelf_i386_vxworks.c \
|
||||
eelf_iamcu.c \
|
||||
eelf_mipsel_haiku.c \
|
||||
eelf_s390.c \
|
||||
eh8300elf.c \
|
||||
eh8300elf_linux.c \
|
||||
@ -878,6 +882,7 @@ ALL_64_EMULATION_SOURCES = \
|
||||
eaarch64cloudabib.c \
|
||||
eaarch64fbsd.c \
|
||||
eaarch64fbsdb.c \
|
||||
eaarch64haiku.c \
|
||||
eaarch64linux.c \
|
||||
eaarch64linuxb.c \
|
||||
eaarch64linux32.c \
|
||||
@ -943,6 +948,7 @@ ALL_64_EMULATION_SOURCES = \
|
||||
eelf_k1om_fbsd.c \
|
||||
eelf_x86_64.c \
|
||||
eelf_x86_64_cloudabi.c \
|
||||
eelf_x86_64_haiku.c \
|
||||
eelf_x86_64_fbsd.c \
|
||||
eelf_x86_64_sol2.c \
|
||||
ehppa64linux.c \
|
||||
@ -1242,6 +1248,7 @@ distclean-compile:
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eaarch64elfb.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eaarch64fbsd.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eaarch64fbsdb.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eaarch64haiku.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eaarch64linux.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eaarch64linux32.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eaarch64linux32b.Po@am__quote@
|
||||
@ -1261,6 +1268,7 @@ distclean-compile:
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmelf.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmelf_fbsd.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmelf_fuchsia.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmelf_haiku.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmelf_linux.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmelf_linux_eabi.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmelf_linux_fdpiceabi.Po@am__quote@
|
||||
@ -1380,6 +1388,7 @@ distclean-compile:
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32or1k_linux.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32ppc.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32ppc_fbsd.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32ppchaiku.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32ppclinux.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32ppcnto.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32ppcsim.Po@am__quote@
|
||||
@ -1434,6 +1443,7 @@ distclean-compile:
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_i386.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_i386_be.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_i386_fbsd.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_i386_haiku.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_i386_ldso.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_i386_sol2.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_i386_vxworks.Po@am__quote@
|
||||
@ -2439,6 +2449,7 @@ $(ALL_EMULATION_SOURCES) $(ALL_64_EMULATION_SOURCES): $(GEN_DEPENDS)
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_i386_sol2.Pc@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_i386_vxworks.Pc@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_iamcu.Pc@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_mipsel_haiku.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_s390.Pc@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eh8300elf.Pc@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eh8300elf_linux.Pc@am__quote@
|
||||
@ -2600,6 +2611,7 @@ $(ALL_EMULATION_SOURCES) $(ALL_64_EMULATION_SOURCES): $(GEN_DEPENDS)
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_k1om_fbsd.Pc@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_x86_64.Pc@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_x86_64_cloudabi.Pc@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_x86_64_haiku.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_x86_64_fbsd.Pc@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_x86_64_sol2.Pc@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ehppa64linux.Pc@am__quote@
|
||||
|
4
binutils/ld/configure
vendored
4
binutils/ld/configure
vendored
@ -11237,7 +11237,7 @@ haiku*)
|
||||
soname_spec='${libname}${release}${shared_ext}$major'
|
||||
shlibpath_var=LIBRARY_PATH
|
||||
shlibpath_overrides_runpath=yes
|
||||
sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/beos/system/lib'
|
||||
sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
|
||||
hardcode_into_libs=yes
|
||||
;;
|
||||
|
||||
@ -14887,7 +14887,7 @@ haiku*)
|
||||
soname_spec='${libname}${release}${shared_ext}$major'
|
||||
shlibpath_var=LIBRARY_PATH
|
||||
shlibpath_overrides_runpath=yes
|
||||
sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/beos/system/lib'
|
||||
sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
|
||||
hardcode_into_libs=yes
|
||||
;;
|
||||
|
||||
|
@ -77,6 +77,9 @@ aarch64-*-linux*) targ_emul=aarch64linux
|
||||
targ_extra_libpath="aarch64linuxb aarch64linux32 aarch64linux32b armelfb_linux_eabi armelf_linux_eabi"
|
||||
targ_extra_emuls="aarch64elf aarch64elf32 aarch64elf32b aarch64elfb armelf armelfb $targ_extra_libpath"
|
||||
;;
|
||||
aarch64-*-haiku*) targ_emul=aarch64haiku
|
||||
targ_extra_emuls="aarch64elf aarch64elf32 aarch64elf32b aarch64elfb armelf armelfb armelf_haiku $targ_extra_libpath"
|
||||
;;
|
||||
alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu)
|
||||
targ_emul=elf64alpha_fbsd
|
||||
targ_extra_emuls="elf64alpha alpha"
|
||||
@ -200,6 +203,9 @@ arm*-*-conix*) targ_emul=armelf
|
||||
arm*-*-fuchsia*) targ_emul=armelf_fuchsia
|
||||
targ_extra_emuls="armelfb_fuchsia armelf armelfb"
|
||||
;;
|
||||
arm*-*-haiku*) arg_emul=armelf_haiku
|
||||
targ_extra_emuls=armelf
|
||||
;;
|
||||
avr-*-*) targ_emul=avr2
|
||||
targ_extra_emuls="avr1 avr25 avr3 avr31 avr35 avr4 avr5 avr51 avr6 avrxmega1 avrxmega2 avrxmega3 avrxmega4 avrxmega5 avrxmega6 avrxmega7 avrtiny"
|
||||
;;
|
||||
@ -396,6 +402,8 @@ i[3-7]86-*-beospe*) targ_emul=i386beos
|
||||
;;
|
||||
i[3-7]86-*-beos*) targ_emul=elf_i386_be
|
||||
;;
|
||||
i[3-7]86-*-haiku*) targ_emul=elf_i386_haiku
|
||||
;;
|
||||
i[3-7]86-*-vxworks*) targ_emul=elf_i386_vxworks
|
||||
;;
|
||||
i[3-7]86-*-chaos) targ_emul=elf_i386_chaos
|
||||
@ -449,6 +457,8 @@ m68hc12-*-*|m6812-*-*) targ_emul=m68hc12elf
|
||||
;;
|
||||
m68*-*-netbsdelf*) targ_emul=m68kelfnbsd
|
||||
;;
|
||||
m68*-*-haiku*) targ_emul=m68kelf
|
||||
;;
|
||||
m68*-*-*) targ_emul=m68kelf
|
||||
;;
|
||||
mcore-*-pe) targ_emul=mcorepe ;
|
||||
@ -478,6 +488,9 @@ mips*-sgi-irix6*) targ_emul=elf32bmipn32
|
||||
targ_extra_emuls="elf32bsmip elf64bmip"
|
||||
targ_extra_libpath=$targ_extra_emuls
|
||||
;;
|
||||
mips*el-*-haiku*) targ_emul=elf_mipsel_haiku
|
||||
targ_extra_emuls="elf32ltsmip elf32btsmip elf32ltsmipn32 elf64ltsmip elf32btsmipn32 elf64btsmip"
|
||||
;;
|
||||
mips*el-*-netbsd*) targ_emul=elf32ltsmip
|
||||
targ_extra_emuls="elf32btsmip elf64ltsmip elf64btsmip"
|
||||
;;
|
||||
@ -734,6 +747,8 @@ powerpc-*-aix*) targ_emul=aixppc
|
||||
powerpc-*-beos*) targ_emul=aixppc
|
||||
targ_extra_ofiles=
|
||||
;;
|
||||
powerpc-*-haiku*) targ_emul=elf32ppchaiku
|
||||
;;
|
||||
powerpc-*-windiss*) targ_emul=elf32ppcwindiss
|
||||
;;
|
||||
pru*-*-*) targ_emul=pruelf
|
||||
@ -864,6 +879,8 @@ sparc64-*-solaris2* | sparcv9-*-solaris2*)
|
||||
targ_extra_libpath=$targ_extra_emuls
|
||||
tdir_elf32_sparc=`echo ${targ_alias} | sed -e 's/64//'`
|
||||
;;
|
||||
sparc64-*-haiku*) targ_emul=elf64_sparc
|
||||
;;
|
||||
sparc64-*-*) targ_emul=elf64_sparc
|
||||
;;
|
||||
sparc*-*-linux-*) targ_emul=elf32_sparc
|
||||
@ -932,6 +949,9 @@ x86_64-*-rdos*) targ_emul=elf64rdos
|
||||
;;
|
||||
x86_64-*-cloudabi*) targ_emul=elf_x86_64_cloudabi
|
||||
;;
|
||||
x86_64-*-haiku*) targ_emul=elf_x86_64_haiku
|
||||
targ_extra_emuls="elf_x86_64 elf_i386_haiku"
|
||||
;;
|
||||
x86_64-*-linux-gnux32) targ_emul=elf32_x86_64
|
||||
targ_extra_emuls="elf_x86_64 elf_i386 elf_iamcu elf_l1om elf_k1om"
|
||||
targ_extra_libpath="elf_i386 elf_iamcu elf_x86_64 elf_l1om elf_k1om"
|
||||
|
39
binutils/ld/emulparams/aarch64haiku.sh
Normal file
39
binutils/ld/emulparams/aarch64haiku.sh
Normal file
@ -0,0 +1,39 @@
|
||||
ARCH=aarch64
|
||||
MACHINE=
|
||||
NOP=0x1f2003d5
|
||||
|
||||
SCRIPT_NAME=elf
|
||||
ELFSIZE=64
|
||||
OUTPUT_FORMAT="elf64-littleaarch64"
|
||||
BIG_OUTPUT_FORMAT="elf64-bigaarch64"
|
||||
LITTLE_OUTPUT_FORMAT="elf64-littleaarch64"
|
||||
NO_REL_RELOCS=yes
|
||||
|
||||
TEMPLATE_NAME=elf
|
||||
EXTRA_EM_FILE=aarch64elf
|
||||
|
||||
GENERATE_SHLIB_SCRIPT=yes
|
||||
GENERATE_PIE_SCRIPT=yes
|
||||
|
||||
MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
|
||||
COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)"
|
||||
SEPARATE_GOTPLT=24
|
||||
IREL_IN_PLT=
|
||||
|
||||
TEXT_START_ADDR=0x400000
|
||||
|
||||
DATA_START_SYMBOLS='PROVIDE (__data_start = .);';
|
||||
|
||||
# AArch64 does not support .s* sections.
|
||||
NO_SMALL_DATA=yes
|
||||
|
||||
OTHER_BSS_SYMBOLS="${CREATE_SHLIB+PROVIDE (}__bss_start__ = .${CREATE_SHLIB+)};"
|
||||
OTHER_BSS_END_SYMBOLS="${CREATE_SHLIB+PROVIDE (}_bss_end__ = .${CREATE_SHLIB+)}; ${CREATE_SHLIB+PROVIDE (}__bss_end__ = .${CREATE_SHLIB+)};"
|
||||
OTHER_END_SYMBOLS="${CREATE_SHLIB+PROVIDE (}__end__ = .${CREATE_SHLIB+)};"
|
||||
|
||||
OTHER_SECTIONS='.note.gnu.arm.ident 0 : { KEEP (*(.note.gnu.arm.ident)) }'
|
||||
ATTRS_SECTIONS='.ARM.attributes 0 : { KEEP (*(.ARM.attributes)) KEEP (*(.gnu.attributes)) }'
|
||||
# Ensure each PLT entry is aligned to a cache line.
|
||||
PLT=".plt ${RELOCATING-0} : ALIGN(16) { *(.plt)${RELOCATING+${IREL_IN_PLT+ *(.iplt)}} }"
|
||||
|
||||
. ${srcdir}/emulparams/elf_haiku.sh
|
33
binutils/ld/emulparams/armelf_haiku.sh
Normal file
33
binutils/ld/emulparams/armelf_haiku.sh
Normal file
@ -0,0 +1,33 @@
|
||||
ARCH=arm
|
||||
SCRIPT_NAME=elf
|
||||
OUTPUT_FORMAT="elf32-littlearm"
|
||||
BIG_OUTPUT_FORMAT="elf32-bigarm"
|
||||
LITTLE_OUTPUT_FORMAT="elf32-littlearm"
|
||||
MAXPAGESIZE=0x8000
|
||||
COMMONPAGESIZE=0x1000
|
||||
TEMPLATE_NAME=elf
|
||||
EXTRA_EM_FILE=armelf
|
||||
GENERATE_SHLIB_SCRIPT=yes
|
||||
GENERATE_PIE_SCRIPT=yes
|
||||
|
||||
DATA_START_SYMBOLS='__data_start = . ;';
|
||||
OTHER_TEXT_SECTIONS='*(.glue_7t) *(.glue_7)'
|
||||
OTHER_BSS_SYMBOLS='__bss_start__ = .;'
|
||||
OTHER_BSS_END_SYMBOLS='_bss_end__ = . ; __bss_end__ = . ;'
|
||||
OTHER_END_SYMBOLS='__end__ = . ;'
|
||||
OTHER_SECTIONS='.note.gnu.arm.ident 0 : { KEEP (*(.note.gnu.arm.ident)) }'
|
||||
|
||||
# Use the ARM ABI-compliant exception-handling sections.
|
||||
OTHER_READONLY_SECTIONS="
|
||||
.ARM.extab ${RELOCATING-0} : { *(.ARM.extab${RELOCATING+* .gnu.linkonce.armextab.*}) }
|
||||
${RELOCATING+ PROVIDE_HIDDEN (__exidx_start = .); }
|
||||
.ARM.exidx ${RELOCATING-0} : { *(.ARM.exidx${RELOCATING+* .gnu.linkonce.armexidx.*}) }
|
||||
${RELOCATING+ PROVIDE_HIDDEN (__exidx_end = .); }"
|
||||
|
||||
TEXT_START_ADDR=0x00008000
|
||||
TARGET2_TYPE=got-rel
|
||||
|
||||
# ARM does not support .s* sections.
|
||||
NO_SMALL_DATA=yes
|
||||
|
||||
. ${srcdir}/emulparams/elf_haiku.sh
|
7
binutils/ld/emulparams/elf32ppchaiku.sh
Normal file
7
binutils/ld/emulparams/elf32ppchaiku.sh
Normal file
@ -0,0 +1,7 @@
|
||||
. ${srcdir}/emulparams/elf32ppc.sh
|
||||
. ${srcdir}/emulparams/elf_haiku.sh
|
||||
TEXT_START_ADDR=0x200000
|
||||
MAXPAGESIZE=0x1000
|
||||
GENERATE_SHLIB_SCRIPT=yes
|
||||
BSS_PLT=
|
||||
LIBPATH_SUFFIX=
|
1
binutils/ld/emulparams/elf_haiku.sh
Normal file
1
binutils/ld/emulparams/elf_haiku.sh
Normal file
@ -0,0 +1 @@
|
||||
ELF_INTERPRETER_NAME=\"/system/runtime_loader\"
|
12
binutils/ld/emulparams/elf_i386_haiku.sh
Normal file
12
binutils/ld/emulparams/elf_i386_haiku.sh
Normal file
@ -0,0 +1,12 @@
|
||||
SCRIPT_NAME=elf
|
||||
OUTPUT_FORMAT="elf32-i386"
|
||||
TEXT_START_ADDR=0x200000
|
||||
NONPAGED_TEXT_START_ADDR=0x200000
|
||||
MAXPAGESIZE=0x1000
|
||||
ARCH=i386
|
||||
MACHINE=
|
||||
NOP=0x90909090
|
||||
TEMPLATE_NAME=elf
|
||||
GENERATE_SHLIB_SCRIPT=yes
|
||||
NO_SMALL_DATA=yes
|
||||
. ${srcdir}/emulparams/elf_haiku.sh
|
3
binutils/ld/emulparams/elf_mipsel_haiku.sh
Normal file
3
binutils/ld/emulparams/elf_mipsel_haiku.sh
Normal file
@ -0,0 +1,3 @@
|
||||
. ${srcdir}/emulparams/elf32lmip.sh
|
||||
. ${srcdir}/emulparams/elf_haiku.sh
|
||||
|
2
binutils/ld/emulparams/elf_x86_64_haiku.sh
Normal file
2
binutils/ld/emulparams/elf_x86_64_haiku.sh
Normal file
@ -0,0 +1,2 @@
|
||||
. ${srcdir}/emulparams/elf_x86_64.sh
|
||||
. ${srcdir}/emulparams/elf_haiku.sh
|
2
binutils/libtool.m4
vendored
2
binutils/libtool.m4
vendored
@ -2332,7 +2332,7 @@ haiku*)
|
||||
soname_spec='${libname}${release}${shared_ext}$major'
|
||||
shlibpath_var=LIBRARY_PATH
|
||||
shlibpath_overrides_runpath=yes
|
||||
sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/beos/system/lib'
|
||||
sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
|
||||
hardcode_into_libs=yes
|
||||
;;
|
||||
|
||||
|
2
binutils/opcodes/configure
vendored
2
binutils/opcodes/configure
vendored
@ -10633,7 +10633,7 @@ haiku*)
|
||||
soname_spec='${libname}${release}${shared_ext}$major'
|
||||
shlibpath_var=LIBRARY_PATH
|
||||
shlibpath_overrides_runpath=yes
|
||||
sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/beos/system/lib'
|
||||
sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
|
||||
hardcode_into_libs=yes
|
||||
;;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user