mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-12-27 04:52:05 +08:00
8689682cc3
ARM can have multiple breakpoint types based on the instruction set it's currently in: arm, thumb or thumb2. GDBServer needs to know what breakpoint is to be inserted at location when inserting a breakpoint. This is handled by the breakpoint_kind_from_pc and sw_breakpoint_from_kind target ops introduced in a previous patch, this patch adds the arm_breakpoint_kind_from_pc and arm_sw_breakpoint_from_kind implementation so that the proper breakpoint type is returned based on the pc. Also in order to share some code with GDB a new file called arm.c have been introduced in arch/. While this file does not contain much yet future patches will add more to it thus the inclusion at this stage. No regressions on Ubuntu 14.04 on ARMv7 and x86. With gdbserver-{native,extended} / { -marm -mthumb } gdb/ChangeLog: * Makefile.in: Add arm.c/o. * arch/arm.c: New file. * arch/arm.h: (IS_THUMB_ADDR): Move macro from arm-tdep.c. (MAKE_THUMB_ADDR): Likewise. (UNMAKE_THUMB_ADDR): Likewise. * arm-tdep.c (int thumb_insn_size): Move to arm.c. (IS_THUMB_ADDR): Move to arm.h. (MAKE_THUMB_ADDR): Likewise. (UNMAKE_THUMB_ADDR): Likewise. * configure.tgt: Add arm.o to all ARM configs. gdb/gdbserver/ChangeLog: * Makefile.in: Add arm.c/o. * configure.srv: Likewise. * linux-arm-low.c (arm_breakpoint_kinds): New enum. (arm_breakpoint_kind_from_pc): New function. (arm_sw_breakpoint_from_kind): Return proper kind. (struct linux_target_ops) <breakpoint_kind_from_pc>: Initialize.
728 lines
20 KiB
Plaintext
728 lines
20 KiB
Plaintext
# Mappings from configurations to GDB target definitions. This is
|
|
# invoked from the autoconf generated configure script.
|
|
|
|
# This file sets the following shell variables:
|
|
# gdb_target_obs target-specific object files to use
|
|
# gdb_sim simulator library for target
|
|
# gdb_osabi default OS ABI to use with target
|
|
# build_gdbserver set to "yes" if gdbserver supports target
|
|
# gdb_have_gcore set to "true"/"false" if this target can run gcore
|
|
|
|
# NOTE: Every file added to a gdb_target_obs variable for any target here
|
|
# must also be added to either ALL_TARGET_OBS or ALL_64_TARGET_OBS
|
|
# in Makefile.in!
|
|
|
|
case $targ in
|
|
*-*-irix* | \
|
|
alpha*-*-osf* | \
|
|
d10v-*-* | \
|
|
hppa*-*-hiux* | \
|
|
i[34567]86-ncr-* | \
|
|
m68*-cisco*-* | \
|
|
m68*-tandem-* | \
|
|
m68*-*-os68k* | \
|
|
mips*-*-pe | \
|
|
rs6000-*-lynxos* | \
|
|
sh*-*-pe | \
|
|
hppa*-*-hpux* | \
|
|
ia64-*-hpux* | \
|
|
null)
|
|
echo "*** Configuration $targ is obsolete." >&2
|
|
echo "*** Support has been REMOVED." >&2
|
|
exit 1
|
|
;;
|
|
esac
|
|
|
|
# map target info into gdb names.
|
|
|
|
case "${targ}" in
|
|
aarch64*-*-elf)
|
|
# Target: AArch64 embedded system
|
|
gdb_target_obs="aarch64-tdep.o aarch64-newlib-tdep.o aarch64-insn.o"
|
|
;;
|
|
|
|
aarch64*-*-linux*)
|
|
# Target: AArch64 linux
|
|
gdb_target_obs="aarch64-tdep.o aarch64-linux-tdep.o aarch64-insn.o \
|
|
arm.o arm-tdep.o arm-linux-tdep.o \
|
|
glibc-tdep.o linux-tdep.o solib-svr4.o \
|
|
symfile-mem.o linux-record.o"
|
|
build_gdbserver=yes
|
|
;;
|
|
|
|
alpha*-*-linux*)
|
|
# Target: Little-endian Alpha running Linux
|
|
gdb_target_obs="alpha-tdep.o alpha-mdebug-tdep.o alpha-linux-tdep.o \
|
|
linux-tdep.o solib-svr4.o"
|
|
;;
|
|
alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu)
|
|
# Target: FreeBSD/alpha
|
|
gdb_target_obs="alpha-tdep.o alpha-mdebug-tdep.o alphabsd-tdep.o \
|
|
alphafbsd-tdep.o solib-svr4.o"
|
|
;;
|
|
alpha*-*-netbsd* | alpha*-*-knetbsd*-gnu)
|
|
# Target: NetBSD/alpha
|
|
gdb_target_obs="alpha-tdep.o alpha-mdebug-tdep.o alphabsd-tdep.o \
|
|
alphanbsd-tdep.o nbsd-tdep.o solib-svr4.o"
|
|
;;
|
|
alpha*-*-openbsd*)
|
|
# Target: OpenBSD/alpha
|
|
gdb_target_obs="alpha-tdep.o alpha-mdebug-tdep.o alphabsd-tdep.o \
|
|
alphanbsd-tdep.o alphaobsd-tdep.o nbsd-tdep.o \
|
|
obsd-tdep.o solib-svr4.o"
|
|
;;
|
|
alpha*-*-*)
|
|
# Target: Alpha
|
|
gdb_target_obs="alpha-tdep.o"
|
|
;;
|
|
|
|
am33_2.0*-*-linux*)
|
|
# Target: Matsushita mn10300 (AM33) running Linux
|
|
gdb_target_obs="mn10300-tdep.o mn10300-linux-tdep.o linux-tdep.o \
|
|
solib-svr4.o"
|
|
;;
|
|
|
|
arm*-wince-pe | arm*-*-mingw32ce*)
|
|
# Target: ARM based machine running Windows CE (win32)
|
|
gdb_target_obs="arm.o arm-tdep.o arm-wince-tdep.o windows-tdep.o"
|
|
build_gdbserver=yes
|
|
;;
|
|
arm*-*-linux*)
|
|
# Target: ARM based machine running GNU/Linux
|
|
gdb_target_obs="arm.o arm-tdep.o arm-linux-tdep.o glibc-tdep.o \
|
|
solib-svr4.o symfile-mem.o linux-tdep.o linux-record.o"
|
|
build_gdbserver=yes
|
|
;;
|
|
arm*-*-netbsd* | arm*-*-knetbsd*-gnu)
|
|
# Target: NetBSD/arm
|
|
gdb_target_obs="arm.o arm-tdep.o armnbsd-tdep.o solib-svr4.o"
|
|
;;
|
|
arm*-*-openbsd*)
|
|
# Target: OpenBSD/arm
|
|
gdb_target_obs="arm.o arm-tdep.o armbsd-tdep.o armobsd-tdep.o \
|
|
obsd-tdep.o solib-svr4.o"
|
|
;;
|
|
arm*-*-symbianelf*)
|
|
# Target: SymbianOS/arm
|
|
gdb_target_obs="arm.o arm-tdep.o arm-symbian-tdep.o"
|
|
;;
|
|
arm*-*-*)
|
|
# Target: ARM embedded system
|
|
gdb_target_obs="arm.o arm-tdep.o"
|
|
gdb_sim=../sim/arm/libsim.a
|
|
;;
|
|
|
|
avr-*-*)
|
|
# Target: AVR
|
|
gdb_target_obs="avr-tdep.o"
|
|
gdb_sim=../sim/avr/libsim.a
|
|
;;
|
|
|
|
bfin-*-*linux*)
|
|
# Target: Blackfin Linux
|
|
gdb_target_obs="bfin-tdep.o bfin-linux-tdep.o linux-tdep.o"
|
|
gdb_sim=../sim/bfin/libsim.a
|
|
build_gdbserver=yes
|
|
;;
|
|
bfin-*-*)
|
|
# Target: Blackfin processor
|
|
gdb_target_obs="bfin-tdep.o"
|
|
gdb_sim=../sim/bfin/libsim.a
|
|
;;
|
|
|
|
cris*)
|
|
# Target: CRIS
|
|
gdb_target_obs="cris-tdep.o cris-linux-tdep.o linux-tdep.o solib-svr4.o"
|
|
;;
|
|
|
|
frv-*-*)
|
|
# Target: Fujitsu FRV processor
|
|
gdb_target_obs="frv-tdep.o frv-linux-tdep.o linux-tdep.o solib-frv.o"
|
|
gdb_sim=../sim/frv/libsim.a
|
|
;;
|
|
|
|
moxie-*-elf | moxie-*-moxiebox | moxie-*-rtems*)
|
|
gdb_target_obs="moxie-tdep.o"
|
|
gdb_sim=../sim/moxie/libsim.a
|
|
;;
|
|
|
|
h8300-*-*)
|
|
# Target: H8300 processor
|
|
gdb_target_obs="h8300-tdep.o"
|
|
gdb_sim=../sim/h8300/libsim.a
|
|
;;
|
|
|
|
hppa*-*-linux*)
|
|
# Target: HP PA-RISC running Linux
|
|
gdb_target_obs="hppa-tdep.o hppa-linux-tdep.o glibc-tdep.o \
|
|
linux-tdep.o solib-svr4.o symfile-mem.o"
|
|
;;
|
|
hppa*-*-netbsd*)
|
|
# Target: NetBSD/hppa
|
|
gdb_target_obs="hppa-tdep.o hppabsd-tdep.o hppanbsd-tdep.o solib-svr4.o"
|
|
;;
|
|
hppa*-*-openbsd*)
|
|
# Target: OpenBSD/hppa
|
|
gdb_target_obs="hppa-tdep.o hppabsd-tdep.o hppaobsd-tdep.o solib-svr4.o"
|
|
;;
|
|
hppa*-*-*)
|
|
# Target: HP PA-RISC
|
|
gdb_target_obs="hppa-tdep.o"
|
|
;;
|
|
|
|
i[34567]86-*-darwin*)
|
|
# Target: Darwin/i386
|
|
gdb_target_obs="i386-tdep.o i387-tdep.o \
|
|
i386-darwin-tdep.o solib-darwin.o"
|
|
if test "x$enable_64_bit_bfd" = "xyes"; then
|
|
# Target: GNU/Linux x86-64
|
|
gdb_target_obs="amd64-tdep.o amd64-darwin-tdep.o ${gdb_target_obs}"
|
|
fi
|
|
;;
|
|
i[34567]86-*-dicos*)
|
|
# Target: DICOS/i386
|
|
gdb_target_obs="i386-tdep.o i387-tdep.o dicos-tdep.o i386-dicos-tdep.o"
|
|
;;
|
|
i[34567]86-*-freebsd* | i[34567]86-*-kfreebsd*-gnu)
|
|
# Target: FreeBSD/i386
|
|
gdb_target_obs="i386-tdep.o i387-tdep.o i386bsd-tdep.o i386fbsd-tdep.o \
|
|
bsd-uthread.o fbsd-tdep.o solib-svr4.o"
|
|
;;
|
|
i[34567]86-*-netbsd* | i[34567]86-*-knetbsd*-gnu)
|
|
# Target: NetBSD/i386
|
|
gdb_target_obs="i386-tdep.o i387-tdep.o i386bsd-tdep.o i386nbsd-tdep.o \
|
|
nbsd-tdep.o solib-svr4.o"
|
|
;;
|
|
i[34567]86-*-openbsd*)
|
|
# Target: OpenBSD/i386
|
|
gdb_target_obs="i386-tdep.o i387-tdep.o i386bsd-tdep.o i386obsd-tdep.o \
|
|
obsd-tdep.o bsd-uthread.o solib-svr4.o"
|
|
;;
|
|
i[34567]86-*-nto*)
|
|
# Target: Intel 386 running qnx6.
|
|
gdb_target_obs="i386-tdep.o i387-tdep.o solib-svr4.o \
|
|
i386-nto-tdep.o nto-tdep.o"
|
|
build_gdbserver=yes
|
|
;;
|
|
i[34567]86-*-solaris2.1[0-9]* | x86_64-*-solaris2.1[0-9]*)
|
|
# Target: Solaris x86_64
|
|
gdb_target_obs="i386-tdep.o i387-tdep.o amd64-tdep.o amd64-sol2-tdep.o \
|
|
i386-sol2-tdep.o sol2-tdep.o solib-svr4.o"
|
|
;;
|
|
i[34567]86-*-solaris*)
|
|
# Target: Solaris x86
|
|
gdb_target_obs="i386-tdep.o i387-tdep.o i386-sol2-tdep.o sol2-tdep.o \
|
|
solib-svr4.o"
|
|
;;
|
|
i[34567]86-*-linux*)
|
|
# Target: Intel 386 running GNU/Linux
|
|
gdb_target_obs="i386-tdep.o i386-linux-tdep.o glibc-tdep.o i387-tdep.o \
|
|
solib-svr4.o symfile-mem.o \
|
|
linux-tdep.o linux-record.o"
|
|
if test "x$enable_64_bit_bfd" = "xyes"; then
|
|
# Target: GNU/Linux x86-64
|
|
gdb_target_obs="amd64-tdep.o amd64-linux-tdep.o ${gdb_target_obs}"
|
|
fi
|
|
build_gdbserver=yes
|
|
;;
|
|
i[34567]86-*-gnu*)
|
|
# Target: Intel 386 running the GNU Hurd
|
|
gdb_target_obs="i386-tdep.o i387-tdep.o i386gnu-tdep.o solib-svr4.o"
|
|
;;
|
|
i[34567]86-*-cygwin*)
|
|
# Target: Intel 386 running win32
|
|
gdb_target_obs="i386-tdep.o i386-cygwin-tdep.o i387-tdep.o \
|
|
windows-tdep.o"
|
|
build_gdbserver=yes
|
|
;;
|
|
i[34567]86-*-mingw32*)
|
|
# Target: Intel 386 running win32
|
|
gdb_target_obs="i386-tdep.o i386-cygwin-tdep.o i387-tdep.o \
|
|
windows-tdep.o"
|
|
build_gdbserver=yes
|
|
;;
|
|
i[34567]86-*-*)
|
|
# Target: i386
|
|
gdb_target_obs="i386-tdep.o i387-tdep.o"
|
|
;;
|
|
|
|
ia64-*-linux*)
|
|
# Target: Intel IA-64 running GNU/Linux
|
|
gdb_target_obs="ia64-tdep.o ia64-linux-tdep.o linux-tdep.o \
|
|
solib-svr4.o symfile-mem.o"
|
|
build_gdbserver=yes
|
|
;;
|
|
ia64-*-*vms*)
|
|
# Target: Intel IA-64 running OpenVMS
|
|
gdb_target_obs="ia64-tdep.o ia64-vms-tdep.o"
|
|
;;
|
|
ia64*-*-*)
|
|
# Target: Intel IA-64
|
|
gdb_target_obs="ia64-tdep.o"
|
|
;;
|
|
|
|
iq2000-*-*)
|
|
gdb_target_obs="iq2000-tdep.o"
|
|
gdb_sim=../sim/iq2000/libsim.a
|
|
;;
|
|
|
|
lm32-*-*)
|
|
gdb_target_obs="lm32-tdep.o"
|
|
gdb_sim=../sim/lm32/libsim.a
|
|
;;
|
|
|
|
m32c-*-*)
|
|
# Target: Renesas M32C family
|
|
gdb_target_obs="m32c-tdep.o"
|
|
# There may also be a SID / CGEN simulator for this,
|
|
# but we do have DJ Delorie's mini-sim.
|
|
gdb_sim=../sim/m32c/libsim.a
|
|
;;
|
|
|
|
m32r*-*-linux*)
|
|
# Target: Renesas M32R running GNU/Linux
|
|
gdb_target_obs="m32r-tdep.o m32r-linux-tdep.o remote-m32r-sdi.o \
|
|
glibc-tdep.o solib-svr4.o symfile-mem.o \
|
|
linux-tdep.o"
|
|
gdb_sim=../sim/m32r/libsim.a
|
|
build_gdbserver=yes
|
|
;;
|
|
m32r*-*-*)
|
|
# Target: Renesas m32r processor
|
|
gdb_target_obs="m32r-tdep.o remote-m32r-sdi.o"
|
|
gdb_sim=../sim/m32r/libsim.a
|
|
;;
|
|
|
|
m68hc11*-*-*|m6811*-*-*)
|
|
# Target: Motorola 68HC11 processor
|
|
gdb_target_obs="m68hc11-tdep.o"
|
|
gdb_sim=../sim/m68hc11/libsim.a
|
|
;;
|
|
|
|
m68*-*-aout* | m68*-*-coff* | m68*-*-elf* | m68*-*-rtems* | m68*-*-uclinux* | \
|
|
fido-*-elf*)
|
|
# Target: Motorola m68k embedded
|
|
gdb_target_obs="m68k-tdep.o"
|
|
;;
|
|
m68*-*-linux*)
|
|
# Target: Motorola m68k with a.out and ELF
|
|
gdb_target_obs="m68k-tdep.o m68klinux-tdep.o solib-svr4.o \
|
|
linux-tdep.o glibc-tdep.o symfile-mem.o"
|
|
build_gdbserver=yes
|
|
;;
|
|
m68*-*-netbsd* | m68*-*-knetbsd*-gnu)
|
|
# Target: NetBSD/m68k
|
|
gdb_target_obs="m68k-tdep.o m68kbsd-tdep.o solib-svr4.o"
|
|
;;
|
|
m68*-*-openbsd*)
|
|
# Target: OpenBSD/m68k
|
|
gdb_target_obs="m68k-tdep.o m68kbsd-tdep.o solib-svr4.o"
|
|
;;
|
|
|
|
m88*-*-openbsd*)
|
|
# Target: OpenBSD/m88k
|
|
gdb_target_obs="m88k-tdep.o"
|
|
;;
|
|
|
|
mep-*-*)
|
|
# Target: Toshiba Media Processor (MEP)
|
|
gdb_target_obs="mep-tdep.o"
|
|
# No sim needed. Target uses SID.
|
|
;;
|
|
|
|
microblaze*-linux-*|microblaze*-*-linux*)
|
|
# Target: Xilinx MicroBlaze running Linux
|
|
gdb_target_obs="microblaze-tdep.o microblaze-linux-tdep.o solib-svr4.o \
|
|
symfile-mem.o linux-tdep.o"
|
|
gdb_sim=../sim/microblaze/libsim.a
|
|
;;
|
|
microblaze*-*-*)
|
|
# Target: Xilinx MicroBlaze running standalone
|
|
gdb_target_obs="microblaze-tdep.o"
|
|
gdb_sim=../sim/microblaze/libsim.a
|
|
;;
|
|
|
|
mips*-*-linux*)
|
|
# Target: Linux/MIPS
|
|
gdb_target_obs="mips-tdep.o mips-linux-tdep.o glibc-tdep.o \
|
|
solib-svr4.o symfile-mem.o linux-tdep.o"
|
|
gdb_sim=../sim/mips/libsim.a
|
|
build_gdbserver=yes
|
|
;;
|
|
mips*-*-netbsd* | mips*-*-knetbsd*-gnu)
|
|
# Target: MIPS running NetBSD
|
|
gdb_target_obs="mips-tdep.o mipsnbsd-tdep.o solib-svr4.o nbsd-tdep.o"
|
|
gdb_sim=../sim/mips/libsim.a
|
|
;;
|
|
mips64*-*-openbsd*)
|
|
# Target: OpenBSD/mips64
|
|
gdb_target_obs="mips-tdep.o mips64obsd-tdep.o obsd-tdep.o solib-svr4.o"
|
|
;;
|
|
mips*-sde*-elf*)
|
|
# Target: MIPS SDE
|
|
gdb_target_obs="mips-tdep.o mips-sde-tdep.o remote-mips.o"
|
|
gdb_sim=../sim/mips/libsim.a
|
|
;;
|
|
mips*-*-elf)
|
|
# Target: MIPS ELF
|
|
gdb_target_obs="mips-tdep.o remote-mips.o"
|
|
gdb_sim=../sim/mips/libsim.a
|
|
;;
|
|
mips*-*-*)
|
|
# Target: MIPS
|
|
gdb_target_obs="mips-tdep.o"
|
|
gdb_sim=../sim/mips/libsim.a
|
|
;;
|
|
|
|
mn10300-*-*)
|
|
# Target: Matsushita mn10300
|
|
gdb_target_obs="mn10300-tdep.o"
|
|
gdb_sim=../sim/mn10300/libsim.a
|
|
;;
|
|
|
|
msp430*-*-elf)
|
|
gdb_target_obs="msp430-tdep.o"
|
|
gdb_sim=../sim/msp430/libsim.a
|
|
;;
|
|
|
|
mt-*-*)
|
|
# Target: Morpho Technologies ms1 processor
|
|
gdb_target_obs="mt-tdep.o"
|
|
;;
|
|
|
|
nios2*-*-linux*)
|
|
# Target: Altera Nios II running Linux
|
|
gdb_target_obs="nios2-tdep.o nios2-linux-tdep.o solib-svr4.o \
|
|
symfile-mem.o glibc-tdep.o linux-tdep.o"
|
|
;;
|
|
|
|
nios2*-*-*)
|
|
# Target: Altera Nios II bare-metal
|
|
gdb_target_obs="nios2-tdep.o"
|
|
;;
|
|
|
|
powerpc*-*-freebsd*)
|
|
# Target: FreeBSD/powerpc
|
|
gdb_target_obs="rs6000-tdep.o ppc-sysv-tdep.o ppc64-tdep.o \
|
|
ppcfbsd-tdep.o fbsd-tdep.o solib-svr4.o \
|
|
ravenscar-thread.o ppc-ravenscar-thread.o"
|
|
;;
|
|
|
|
powerpc-*-netbsd* | powerpc-*-knetbsd*-gnu)
|
|
# Target: NetBSD/powerpc
|
|
gdb_target_obs="rs6000-tdep.o ppc-sysv-tdep.o ppcnbsd-tdep.o \
|
|
solib-svr4.o \
|
|
ravenscar-thread.o ppc-ravenscar-thread.o"
|
|
gdb_sim=../sim/ppc/libsim.a
|
|
;;
|
|
powerpc-*-openbsd*)
|
|
# Target: OpenBSD/powerpc
|
|
gdb_target_obs="rs6000-tdep.o ppc-sysv-tdep.o ppcobsd-tdep.o \
|
|
solib-svr4.o \
|
|
ravenscar-thread.o ppc-ravenscar-thread.o"
|
|
;;
|
|
powerpc-*-aix* | rs6000-*-* | powerpc64-*-aix*)
|
|
# Target: PowerPC running AIX
|
|
gdb_target_obs="rs6000-tdep.o rs6000-aix-tdep.o xcoffread.o \
|
|
ppc-sysv-tdep.o solib-aix.o \
|
|
ravenscar-thread.o ppc-ravenscar-thread.o"
|
|
;;
|
|
powerpc*-*-linux*)
|
|
# Target: PowerPC running Linux
|
|
gdb_target_obs="rs6000-tdep.o ppc-linux-tdep.o ppc-sysv-tdep.o \
|
|
ppc64-tdep.o solib-svr4.o solib-spu.o \
|
|
spu-multiarch.o \
|
|
glibc-tdep.o symfile-mem.o linux-tdep.o \
|
|
ravenscar-thread.o ppc-ravenscar-thread.o \
|
|
linux-record.o "
|
|
gdb_sim=../sim/ppc/libsim.a
|
|
build_gdbserver=yes
|
|
;;
|
|
powerpc-*-lynx*178)
|
|
# Target: PowerPC running Lynx178.
|
|
gdb_target_obs="rs6000-tdep.o rs6000-lynx178-tdep.o \
|
|
xcoffread.o ppc-sysv-tdep.o \
|
|
ravenscar-thread.o ppc-ravenscar-thread.o"
|
|
;;
|
|
powerpc*-*-*)
|
|
# Target: PowerPC running eabi
|
|
gdb_target_obs="rs6000-tdep.o ppc-sysv-tdep.o solib-svr4.o \
|
|
ravenscar-thread.o ppc-ravenscar-thread.o"
|
|
if test -f ../sim/ppc/Makefile; then
|
|
gdb_sim=../sim/ppc/libsim.a
|
|
fi
|
|
;;
|
|
|
|
s390*-*-linux*)
|
|
# Target: S390 running Linux
|
|
gdb_target_obs="s390-linux-tdep.o solib-svr4.o linux-tdep.o"
|
|
build_gdbserver=yes
|
|
;;
|
|
|
|
rl78-*-elf)
|
|
# Target: Renesas rl78
|
|
gdb_target_obs="rl78-tdep.o"
|
|
gdb_sim=../sim/rl78/libsim.a
|
|
;;
|
|
|
|
rx-*-elf)
|
|
# Target: Renesas RX
|
|
gdb_target_obs="rx-tdep.o"
|
|
gdb_sim=../sim/rx/libsim.a
|
|
;;
|
|
|
|
score-*-*)
|
|
# Target: S+core embedded system
|
|
gdb_target_obs="score-tdep.o"
|
|
if test -f ../sim/score/Makefile; then
|
|
gdb_sim=../sim/score/libsim.a
|
|
fi
|
|
build_gdbserver=yes
|
|
;;
|
|
|
|
sh*-*-linux*)
|
|
# Target: GNU/Linux Super-H
|
|
gdb_target_obs="sh-tdep.o sh64-tdep.o sh-linux-tdep.o \
|
|
solib-svr4.o symfile-mem.o \
|
|
glibc-tdep.o linux-tdep.o"
|
|
gdb_sim=../sim/sh/libsim.a
|
|
build_gdbserver=yes
|
|
;;
|
|
sh*-*-netbsdelf* | sh*-*-knetbsd*-gnu)
|
|
# Target: NetBSD/sh
|
|
gdb_target_obs="sh-tdep.o shnbsd-tdep.o solib-svr4.o"
|
|
gdb_sim=../sim/sh/libsim.a
|
|
;;
|
|
sh*-*-openbsd*)
|
|
# Target: OpenBSD/sh
|
|
gdb_target_obs="sh-tdep.o sh64-tdep.o shnbsd-tdep.o solib-svr4.o"
|
|
;;
|
|
sh64-*-elf*)
|
|
# Target: Renesas/Super-H 64 bit with simulator
|
|
gdb_target_obs="sh-tdep.o sh64-tdep.o"
|
|
gdb_sim=../sim/sh64/libsim.a
|
|
;;
|
|
sh*)
|
|
# Target: Embedded Renesas Super-H processor
|
|
gdb_target_obs="sh-tdep.o sh64-tdep.o"
|
|
gdb_sim=../sim/sh/libsim.a
|
|
;;
|
|
|
|
sparc-*-linux*)
|
|
# Target: GNU/Linux SPARC
|
|
gdb_target_obs="sparc-tdep.o sparc-sol2-tdep.o sol2-tdep.o \
|
|
sparc-linux-tdep.o solib-svr4.o symfile-mem.o \
|
|
linux-tdep.o \
|
|
ravenscar-thread.o sparc-ravenscar-thread.o"
|
|
if test "x$enable_64_bit_bfd" = "xyes"; then
|
|
# Target: GNU/Linux UltraSPARC
|
|
gdb_target_obs="sparc64-tdep.o sparc64-sol2-tdep.o \
|
|
sparc64-linux-tdep.o ${gdb_target_obs}"
|
|
fi
|
|
build_gdbserver=yes
|
|
;;
|
|
sparc64-*-linux*)
|
|
# Target: GNU/Linux UltraSPARC
|
|
gdb_target_obs="sparc64-tdep.o sparc64-sol2-tdep.o sol2-tdep.o \
|
|
sparc64-linux-tdep.o sparc-tdep.o sparc-sol2-tdep.o \
|
|
sparc-linux-tdep.o solib-svr4.o linux-tdep.o \
|
|
ravenscar-thread.o sparc-ravenscar-thread.o"
|
|
build_gdbserver=yes
|
|
;;
|
|
sparc*-*-freebsd* | sparc*-*-kfreebsd*-gnu)
|
|
# Target: FreeBSD/sparc64
|
|
gdb_target_obs="sparc-tdep.o sparc64-tdep.o sparc64fbsd-tdep.o \
|
|
fbsd-tdep.o solib-svr4.o \
|
|
ravenscar-thread.o sparc-ravenscar-thread.o"
|
|
;;
|
|
sparc-*-netbsd* | sparc-*-knetbsd*-gnu)
|
|
# Target: NetBSD/sparc
|
|
gdb_target_obs="sparc-tdep.o sparcnbsd-tdep.o nbsd-tdep.o \
|
|
solib-svr4.o \
|
|
ravenscar-thread.o sparc-ravenscar-thread.o"
|
|
;;
|
|
sparc64-*-netbsd* | sparc64-*-knetbsd*-gnu)
|
|
# Target: NetBSD/sparc64
|
|
gdb_target_obs="sparc64-tdep.o sparc64nbsd-tdep.o sparc-tdep.o \
|
|
sparcnbsd-tdep.o nbsd-tdep.o solib-svr4.o \
|
|
ravenscar-thread.o sparc-ravenscar-thread.o"
|
|
;;
|
|
sparc-*-openbsd*)
|
|
# Target: OpenBSD/sparc
|
|
gdb_target_obs="sparc-tdep.o sparcnbsd-tdep.o sparcobsd-tdep.o \
|
|
nbsd-tdep.o obsd-tdep.o bsd-uthread.o solib-svr4.o \
|
|
ravenscar-thread.o sparc-ravenscar-thread.o"
|
|
;;
|
|
sparc64-*-openbsd*)
|
|
# Target: OpenBSD/sparc64
|
|
gdb_target_obs="sparc64-tdep.o sparc64nbsd-tdep.o sparc64obsd-tdep.o \
|
|
sparc-tdep.o sparcnbsd-tdep.o sparcobsd-tdep.o \
|
|
nbsd-tdep.o obsd-tdep.o bsd-uthread.o solib-svr4.o \
|
|
ravenscar-thread.o sparc-ravenscar-thread.o"
|
|
;;
|
|
sparc-*-solaris2.[0-6] | sparc-*-solaris2.[0-6].*)
|
|
# Target: Solaris SPARC
|
|
gdb_target_obs="sparc-tdep.o sparc-sol2-tdep.o sol2-tdep.o \
|
|
solib-svr4.o \
|
|
ravenscar-thread.o sparc-ravenscar-thread.o"
|
|
;;
|
|
sparc-*-solaris2* | sparcv9-*-solaris2* | sparc64-*-solaris2*)
|
|
# Target: Solaris UltraSPARC
|
|
gdb_target_obs="sparc64-tdep.o sparc64-sol2-tdep.o sparc-tdep.o \
|
|
sparc-sol2-tdep.o sol2-tdep.o solib-svr4.o \
|
|
ravenscar-thread.o sparc-ravenscar-thread.o"
|
|
;;
|
|
sparc-*-*)
|
|
# Target: SPARC
|
|
gdb_target_obs="sparc-tdep.o \
|
|
ravenscar-thread.o sparc-ravenscar-thread.o"
|
|
gdb_sim=../sim/erc32/libsim.a
|
|
;;
|
|
sparc64-*-*)
|
|
# Target: UltraSPARC
|
|
gdb_target_obs="sparc-tdep.o sparc64-tdep.o \
|
|
ravenscar-thread.o sparc-ravenscar-thread.o"
|
|
;;
|
|
|
|
spu*-*-*)
|
|
# Target: Cell BE SPU
|
|
gdb_target_obs="spu-tdep.o"
|
|
build_gdbserver=yes
|
|
;;
|
|
|
|
tic6x-*-*linux)
|
|
# Target: GNU/Linux TI C6x
|
|
gdb_target_obs="tic6x-tdep.o tic6x-linux-tdep.o solib-dsbt.o \
|
|
glibc-tdep.o linux-tdep.o"
|
|
;;
|
|
|
|
tic6x-*-*)
|
|
# Target: TI C6X
|
|
gdb_target_obs="tic6x-tdep.o"
|
|
;;
|
|
|
|
tilegx-*-linux*)
|
|
# Target: TILE-Gx
|
|
gdb_target_obs="tilegx-tdep.o tilegx-linux-tdep.o solib-svr4.o \
|
|
symfile-mem.o glibc-tdep.o linux-tdep.o"
|
|
build_gdbserver=yes
|
|
;;
|
|
|
|
xstormy16-*-*)
|
|
# Target: Sanyo Xstormy16a processor
|
|
gdb_target_obs="xstormy16-tdep.o"
|
|
# No simulator libraries are needed -- target uses SID.
|
|
;;
|
|
|
|
ft32-*-elf)
|
|
gdb_target_obs="ft32-tdep.o"
|
|
gdb_sim=../sim/ft32/libsim.a
|
|
;;
|
|
|
|
v850*-*-elf | v850*-*-rtems*)
|
|
# Target: NEC V850 processor
|
|
gdb_target_obs="v850-tdep.o"
|
|
gdb_sim=../sim/v850/libsim.a
|
|
;;
|
|
|
|
vax-*-netbsd* | vax-*-knetbsd*-gnu)
|
|
# Target: NetBSD/vax
|
|
gdb_target_obs="vax-tdep.o vaxnbsd-tdep.o solib-svr4.o"
|
|
;;
|
|
vax-*-openbsd*)
|
|
# Target: OpenBSD/vax
|
|
gdb_target_obs="vax-tdep.o vaxobsd-tdep.o"
|
|
;;
|
|
vax-*-*)
|
|
# Target: VAX
|
|
gdb_target_obs="vax-tdep.o"
|
|
;;
|
|
|
|
x86_64-*-darwin*)
|
|
# Target: Darwin/x86-64
|
|
gdb_target_obs="amd64-tdep.o i386-tdep.o i387-tdep.o \
|
|
i386-darwin-tdep.o amd64-darwin-tdep.o \
|
|
solib-darwin.o"
|
|
;;
|
|
|
|
x86_64-*-dicos*)
|
|
# Target: DICOS/x86-64
|
|
gdb_target_obs="amd64-tdep.o i386-tdep.o i387-tdep.o \
|
|
dicos-tdep.o i386-dicos-tdep.o amd64-dicos-tdep.o"
|
|
;;
|
|
x86_64-*-linux*)
|
|
# Target: GNU/Linux x86-64
|
|
gdb_target_obs="amd64-tdep.o amd64-linux-tdep.o i386-tdep.o \
|
|
i387-tdep.o i386-linux-tdep.o glibc-tdep.o \
|
|
solib-svr4.o symfile-mem.o linux-tdep.o linux-record.o"
|
|
build_gdbserver=yes
|
|
;;
|
|
x86_64-*-freebsd* | x86_64-*-kfreebsd*-gnu)
|
|
# Target: FreeBSD/amd64
|
|
gdb_target_obs="amd64-tdep.o amd64fbsd-tdep.o i386-tdep.o \
|
|
i387-tdep.o i386bsd-tdep.o i386fbsd-tdep.o \
|
|
bsd-uthread.o fbsd-tdep.o solib-svr4.o"
|
|
;;
|
|
x86_64-*-mingw* | x86_64-*-cygwin*)
|
|
# Target: MingW/amd64
|
|
gdb_target_obs="amd64-tdep.o amd64-windows-tdep.o \
|
|
i386-tdep.o i386-cygwin-tdep.o i387-tdep.o \
|
|
windows-tdep.o"
|
|
build_gdbserver=yes
|
|
;;
|
|
x86_64-*-netbsd* | x86_64-*-knetbsd*-gnu)
|
|
# Target: NetBSD/amd64
|
|
gdb_target_obs="amd64-tdep.o amd64nbsd-tdep.o i386-tdep.o i387-tdep.o \
|
|
nbsd-tdep.o solib-svr4.o"
|
|
;;
|
|
x86_64-*-openbsd*)
|
|
# Target: OpenBSD/amd64
|
|
gdb_target_obs="amd64-tdep.o amd64obsd-tdep.o i386-tdep.o \
|
|
i387-tdep.o i386bsd-tdep.o i386obsd-tdep.o \
|
|
obsd-tdep.o bsd-uthread.o solib-svr4.o"
|
|
;;
|
|
xtensa*-*-linux*) gdb_target=linux
|
|
# Target: GNU/Linux Xtensa
|
|
gdb_target_obs="xtensa-tdep.o xtensa-config.o xtensa-linux-tdep.o \
|
|
solib-svr4.o symfile-mem.o linux-tdep.o"
|
|
build_gdbserver=yes
|
|
;;
|
|
xtensa*)
|
|
# Target: Tensilica Xtensa processors
|
|
gdb_target_obs="xtensa-tdep.o xtensa-config.o solib-svr4.o"
|
|
;;
|
|
|
|
esac
|
|
|
|
# map target onto default OS ABI
|
|
|
|
case "${targ}" in
|
|
*-*-freebsd* | *-*-kfreebsd*-gnu)
|
|
gdb_osabi=GDB_OSABI_FREEBSD_ELF ;;
|
|
*-*-linux* | *-*-uclinux*)
|
|
gdb_osabi=GDB_OSABI_LINUX ;;
|
|
*-*-nto*) gdb_osabi=GDB_OSABI_QNXNTO ;;
|
|
m68*-*-openbsd* | m88*-*-openbsd* | vax-*-openbsd*) ;;
|
|
*-*-openbsd*) gdb_osabi=GDB_OSABI_OPENBSD_ELF ;;
|
|
*-*-solaris*) gdb_osabi=GDB_OSABI_SOLARIS ;;
|
|
*-*-*-gnu*) ;; # prevent non-GNU kernels to match the Hurd rule below
|
|
*-*-gnu*) gdb_osabi=GDB_OSABI_HURD ;;
|
|
*-*-mingw32ce*) gdb_osabi=GDB_OSABI_WINCE ;;
|
|
*-*-mingw* | *-*-cygwin*)
|
|
gdb_osabi=GDB_OSABI_CYGWIN ;;
|
|
*-*-dicos*) gdb_osabi=GDB_OSABI_DICOS ;;
|
|
*-*-symbianelf*)
|
|
gdb_osabi=GDB_OSABI_SYMBIAN ;;
|
|
powerpc-*-aix* | rs6000-*-* | powerpc64-*-aix*)
|
|
gdb_osabi=GDB_OSABI_AIX ;;
|
|
esac
|
|
|
|
# Check whether this target supports gcore.
|
|
# Such target has to call set_gdbarch_find_memory_regions.
|
|
gdb_have_gcore=false
|
|
for t in x ${gdb_target_obs}; do
|
|
if test "$t" = linux-tdep.o; then
|
|
gdb_have_gcore=true
|
|
fi
|
|
done
|