binutils-gdb/gdb/configure.host
Stafford Horne a45b1e66c5 gdb: or1k: add native linux support
This patch adds support for running gdb natively on OpenRISC linux.
Debugging support is provided via the linux PTRACE interface which is
mostly handled by GDB genric code.  This patch provides the logic of how
to read and write the ptrace registers between linux and GDB.

Single stepping is privided in a separate patch.
2021-10-29 05:22:12 +09:00

217 lines
5.8 KiB
Plaintext

# Mapping of configurations into GDB host definitions. This is
# invoked from the autoconf generated configure script.
# This file sets the following shell variables:
# gdb_host_cpu generic name of host's CPU
# gdb_host name of GDB host definition to use
# gdb_host_float_format host's float floatformat, or 0
# gdb_host_double_format host's double floatformat, or 0
# gdb_host_long_double_format host's long double floatformat, or 0
# gdb_host_obs host-specific .o files to include
# Map host cpu into the config cpu subdirectory name.
# The default is $host_cpu.
case $host in
*-*-irix* | \
*-*-solaris2.[01] | *-*-solaris2.[2-9]* | *-*-solaris2.10* | \
alpha*-*-osf* | \
alpha*-*-freebsd* | \
alpha*-*-kfreebsd*-gnu | \
arm*-*-netbsdaout* | \
hppa*-*-hiux* | \
i[34567]86-ncr-* | \
i[34567]86-*-dgux* | \
i[34567]86-*-lynxos* | \
i[34567]86-*-netbsdaout* | \
i[34567]86-*-openbsd[0-2].* | i[34567]86-*-openbsd3.[0-3] | \
i[34567]86-*-sco3.2v5* | \
i[34567]86-*-sco3.2v4* | \
i[34567]86-*-sco* | \
i[34567]86-*-sysv4.2* | \
i[34567]86-*-sysv4* | \
i[34567]86-*-sysv5* | \
i[34567]86-*-unixware2* | \
i[34567]86-*-unixware* | \
i[34567]86-*-sysv* | \
i[34567]86-*-isc* | \
m68*-*-netbsdaout* | \
sparc-*-netbsdaout* | \
rs6000-*-lynxos* | \
vax-*-bsd* | \
vax-*-netbsdaout* | \
vax-*-ultrix* | \
hppa*-*-hpux* | \
ia64-*-hpux* | \
null)
echo "*** Configuration $host is obsolete." >&2
echo "*** Support has been REMOVED." >&2
exit 1
;;
esac
case "${host_cpu}" in
aarch64*) gdb_host_cpu=aarch64 ;;
alpha*) gdb_host_cpu=alpha ;;
arc*) gdb_host_cpu=arc ;;
arm*) gdb_host_cpu=arm ;;
hppa*) gdb_host_cpu=pa ;;
i[34567]86*) gdb_host_cpu=i386 ;;
m68*) gdb_host_cpu=m68k ;;
mips*) gdb_host_cpu=mips ;;
powerpc* | rs6000) gdb_host_cpu=powerpc ;;
sparcv9 | sparc64) gdb_host_cpu=sparc ;;
s390*) gdb_host_cpu=s390 ;;
sh*) gdb_host_cpu=sh ;;
tilegx*) gdb_host_cpu=tilegx ;;
x86_64*) gdb_host_cpu=i386 ;;
m32r*) gdb_host_cpu=m32r ;;
xtensa*) gdb_host_cpu=xtensa ;;
*) gdb_host_cpu=$host_cpu ;;
esac
# map host info into gdb names.
case "${host}" in
*-*-darwin*) gdb_host=darwin ;;
aarch64*-*-linux*) gdb_host=linux ;;
aarch64*-*-freebsd*) gdb_host=fbsd ;;
alpha*-*-linux*) gdb_host=alpha-linux ;;
alpha*-*-netbsdaout* | alpha*-*-knetbsdaout*-gnu)
gdb_host=nbsd ;;
alpha*-*-openbsd*) gdb_host=nbsd ;;
arc*-*-linux*) gdb_host=linux ;;
arm*-*-freebsd*) gdb_host=fbsd ;;
arm*-*-linux*) gdb_host=linux ;;
arm*-*-netbsd* | arm*-*-knetbsd*-gnu)
gdb_host=nbsdelf ;;
arm*-*-openbsd*) gdb_host=nbsdelf ;;
hppa*-*-linux*) gdb_host=linux ;;
hppa*-*-netbsd*) gdb_host=nbsd ;;
hppa*-*-openbsd*) gdb_host=obsd ;;
i[34567]86-*-freebsd* | i[34567]86-*-kfreebsd*-gnu)
gdb_host=fbsd ;;
i[34567]86-*-netbsd* | i[34567]86-*-knetbsd*-gnu)
gdb_host=nbsdelf ;;
i[34567]86-*-go32*) gdb_host=go32 ;;
i[34567]86-*-mingw32*) gdb_host=mingw
gdb_host_obs=mingw-hdep.o
;;
i[34567]86-*-msdosdjgpp*) gdb_host=go32 ;;
i[34567]86-*-linux*) gdb_host=linux ;;
i[34567]86-*-gnu*) gdb_host=i386gnu ;;
i[3456]86-*-nto*) gdb_host=nto ;;
i[34567]86-*-openbsd*) gdb_host=obsd ;;
i[34567]86-*-solaris2* | x86_64-*-solaris2*)
gdb_host=sol2 ;;
i[34567]86-*-cygwin*) gdb_host=cygwin ;;
ia64-*-linux*) gdb_host=linux ;;
m68*-*-linux*) gdb_host=linux ;;
m68*-*-netbsd* | m68*-*-knetbsd*-gnu)
gdb_host=nbsdelf ;;
m68*-*-openbsd*) gdb_host=obsd ;;
m88*-*-openbsd*) gdb_host=obsd ;;
mips*-*-linux*) gdb_host=linux ;;
mips*-*-netbsdaout* | mips*-*-knetbsd*-gnu)
gdb_host=nbsd ;;
mips*-*-freebsd*) gdb_host=fbsd ;;
mips64*-*-openbsd*) gdb_host=obsd64 ;;
or1k-*-linux*) gdb_host=linux ;;
powerpc-*-aix* | rs6000-*-* | powerpc64-*-aix*)
gdb_host=aix ;;
powerpc*-*-freebsd*) gdb_host=fbsd ;;
powerpc-*-netbsdaout* | powerpc-*-knetbsd*-gnu)
gdb_host=nbsd ;;
powerpc-*-openbsd*) gdb_host=obsd ;;
powerpc64*-*-linux*) gdb_host=ppc64-linux ;;
powerpc*-*-linux*) gdb_host=linux ;;
riscv*-*-freebsd*) gdb_host=fbsd ;;
riscv*-*-linux*) gdb_host=linux ;;
s390*-*-linux*) gdb_host=linux ;;
sh*-*-netbsd* | sh*-*-knetbsd*-gnu)
gdb_host=nbsd ;;
sh*-*-openbsd*) gdb_host=nbsd ;;
sparc64-*-freebsd* | sparc64-*-kfreebsd*-gnu)
gdb_host=fbsd ;;
sparc-*-linux*) gdb_host=linux ;;
sparc64-*-linux*) gdb_host=linux64 ;;
sparc-*-netbsd* | sparc-*-knetbsd*-gnu)
gdb_host=nbsdelf ;;
sparc64-*-netbsd* | sparc64-*-knetbsd*-gnu)
gdb_host=nbsd64 ;;
sparc-*-openbsd*) gdb_host=nbsdelf ;;
sparc64-*-openbsd*) gdb_host=obsd64 ;;
sparc-*-solaris2* | sparcv9-*-solaris2* | sparc64-*-solaris2*)
gdb_host=sol2
;;
tilegx-*-linux*) gdb_host=linux ;;
vax-*-netbsd* | vax-*-knetbsd*-gnu)
gdb_host=nbsdelf ;;
vax-*-openbsd*) gdb_host=obsd ;;
x86_64-*-linux*) gdb_host=linux64 ;;
x86_64-*-freebsd* | x86_64-*-kfreebsd*-gnu)
gdb_host=fbsd64 ;;
x86_64-*-netbsd* | x86_64-*-knetbsd*-gnu)
gdb_host=nbsd64 ;;
x86_64-*-openbsd*) gdb_host=obsd64 ;;
x86_64-*-mingw*) gdb_host=mingw64
gdb_host_obs=mingw-hdep.o
;;
x86_64-*-cygwin*) gdb_host=cygwin64 ;;
m32r*-*-linux*) gdb_host=linux ;;
xtensa*-*-linux*) gdb_host=linux ;;
esac
# Map the host/cpu onto the floatformat correspondong to C's "float",
# "double" and "long double" types.
case "${host}" in
i[34567]86-*-*|x86_64-*-*)
gdb_host_float_format="&floatformat_ieee_single_little"
gdb_host_double_format="&floatformat_ieee_double_little"
gdb_host_long_double_format="&floatformat_i387_ext"
;;
hppa*-*-linux*)
gdb_host_float_format="&floatformat_ieee_single_big"
gdb_host_double_format="&floatformat_ieee_double_big"
gdb_host_long_double_format="&floatformat_ieee_double_big"
;;
m68*-*-*)
gdb_host_float_format="&floatformat_ieee_single_big"
gdb_host_double_format="&floatformat_ieee_double_big"
gdb_host_long_double_format="&floatformat_m68881_ext"
;;
*)
gdb_host_float_format=0
gdb_host_double_format=0
gdb_host_long_double_format=0
;;
esac