s390: Fix build when using EXEEXT_FOR_BUILD
[binutils-gdb.git] / gdb / configure.tgt
blob47a674201f914765fb90846b6bfc853f91a96ce9
1 # Mappings from configurations to GDB target definitions.  This is
2 # invoked from the autoconf generated configure script.
4 # This file sets the following shell variables:
5 #  gdb_target_obs         target-specific object files to use
6 #  gdb_sim                simulator library for target
7 #  gdb_osabi              default OS ABI to use with target
8 #  gdb_have_gcore         set to "true"/"false" if this target can run gcore
9 #  gdb_require_amd_dbgapi set to "true" if this target requires the amd-dbgapi
10 #                         target
12 # NOTE: Every file added to a gdb_target_obs variable for any target here
13 #       must also be added to either:
15 #         - ALL_TARGET_OBS
16 #         - ALL_64_TARGET_OBS
17 #         - ALL_AMD_DBGAPI_TARGET_OBS
19 #       in Makefile.in!
21 case $targ in
22  *-*-irix* | \
23  *-*-solaris2.[01] | *-*-solaris2.[2-9]* | *-*-solaris2.10* | \
24  *-*-netbsdpe* | \
25  alpha*-*-osf* | \
26  alpha*-*-freebsd* | \
27  alpha*-*-kfreebsd*-gnu | \
28  d10v-*-* | \
29  hppa*-*-hiux* | \
30  i[34567]86-ncr-* | \
31  m68*-cisco*-* | \
32  m68*-tandem-* | \
33  m68*-*-os68k* | \
34  mips*-*-pe | \
35  rs6000-*-lynxos* | \
36  score-*-* | \
37  sh*-*-pe | \
38  hppa*-*-hpux* | \
39  ia64-*-hpux* | \
40  *-*-vxworks* | \
41  mt-*-* | \
42  null)
43     echo "*** Configuration $targ is obsolete." >&2
44     echo "*** Support has been REMOVED." >&2
45     exit 1
46     ;;
47 esac
49 x86_tobjs="x86-tdep.o"
50 i386_tobjs="i386-tdep.o arch/i386.o i387-tdep.o ${x86_tobjs}"
51 amd64_tobjs="ravenscar-thread.o amd64-ravenscar-thread.o \
52     amd64-tdep.o arch/amd64.o ${x86_tobjs}"
54 # Here are three sections to get a list of target specific object
55 # files according to target triplet $TARG.
57 # 1. Get the objects per cpu in $TARG.
59 case "${targ}" in
60 aarch64*-*-*)
61         cpu_obs="aarch32-tdep.o aarch64-tdep.o arch/aarch32.o \
62                  arch/aarch64-insn.o arch/aarch64.o  ravenscar-thread.o \
63                  aarch64-ravenscar-thread.o";;
65 alpha*-*-*)
66         # Target: Alpha
67         cpu_obs="alpha-tdep.o"
68         ;;
70 arc*-*-*)
71         # Target: Unidentified ARC target
72         cpu_obs="arc-tdep.o arch/arc.o"
73         ;;
75 arm*-*-*)
76         cpu_obs="aarch32-tdep.o arch/aarch32.o arch/arm.o \
77                  arch/arm-get-next-pcs.o arm-tdep.o arm-none-tdep.o"
78         ;;
80 hppa*-*-*)
81         # Target: HP PA-RISC
82         cpu_obs="hppa-tdep.o"
83         ;;
85 i[34567]86-*-*)
86         cpu_obs="${i386_tobjs}"
87         if test "x$enable_64_bit_bfd" = "xyes"; then
88            cpu_obs="${amd64_tobjs} ${cpu_obs}"
89         fi
90         ;;
92 ia16*-*-*)
93         # Target: Intel IA-16
94         cpu_obs="${i386_tobjs}"
95         ;;
97 ia64*-*-*)
98         # Target: Intel IA-64
99         cpu_obs="ia64-tdep.o"
100         ;;
102 loongarch*-*-*)
103         # Target: LoongArch baremetal
104         cpu_obs="loongarch-tdep.o arch/loongarch.o"
105         ;;
107 riscv*-*-*)
108         cpu_obs="riscv-tdep.o riscv-none-tdep.o arch/riscv.o \
109                  ravenscar-thread.o riscv-ravenscar-thread.o";;
111 x86_64-*-*)
112         cpu_obs="${i386_tobjs} ${amd64_tobjs}";;
114 xtensa*)
115         # Target: Tensilica Xtensa processors
116         cpu_obs="xtensa-tdep.o xtensa-config.o solib-svr4.o"
117         ;;
119 esac
121 # 2. Get the objects per os in $TARG.
123 case "${targ}" in
124 *-*-freebsd* | *-*-kfreebsd*-gnu)
125         os_obs="fbsd-tdep.o solib-svr4.o";;
126 *-*-netbsd* | *-*-knetbsd*-gnu)
127         os_obs="netbsd-tdep.o solib-svr4.o";;
128 *-*-openbsd*)
129         os_obs="obsd-tdep.o solib-svr4.o";;
130 esac
132 # 3. Get the rest of objects.
134 case "${targ}" in
135 aarch64*-*-elf | aarch64*-*-rtems*)
136         # Target: AArch64 embedded system
137         gdb_target_obs="aarch64-newlib-tdep.o"
138         ;;
140 aarch64*-*-freebsd*)
141         # Target: FreeBSD/aarch64
142         gdb_target_obs="aarch64-fbsd-tdep.o"
143         ;;
145 aarch64*-*-linux*)
146         # Target: AArch64 linux
147         gdb_target_obs="aarch64-linux-tdep.o arch/aarch64.o\
148                         arch/aarch64-mte-linux.o \
149                         arch/aarch64-scalable-linux.o \
150                         arch/arm.o arch/arm-linux.o arch/arm-get-next-pcs.o \
151                         arm-tdep.o arm-linux-tdep.o \
152                         glibc-tdep.o linux-tdep.o solib-svr4.o \
153                         symfile-mem.o linux-record.o"
154         ;;
156 alpha*-*-linux*)
157         # Target: Little-endian Alpha running Linux
158         gdb_target_obs="alpha-mdebug-tdep.o alpha-linux-tdep.o \
159                         linux-tdep.o solib-svr4.o"
160         ;;
161 alpha*-*-netbsd* | alpha*-*-knetbsd*-gnu)
162         # Target: NetBSD/alpha
163         gdb_target_obs="alpha-mdebug-tdep.o alpha-bsd-tdep.o \
164                         alpha-netbsd-tdep.o"
165         ;;
166 alpha*-*-openbsd*)
167         # Target: OpenBSD/alpha
168         gdb_target_obs="alpha-mdebug-tdep.o alpha-bsd-tdep.o \
169                         alpha-netbsd-tdep.o alpha-obsd-tdep.o netbsd-tdep.o"
170         ;;
172 amdgcn*-*-*)
173         # Target: AMDGPU
174         gdb_require_amd_dbgapi=true
175         gdb_target_obs="amdgpu-tdep.o solib-rocm.o"
176         ;;
178 am33_2.0*-*-linux*)
179         # Target: Matsushita mn10300 (AM33) running Linux
180         gdb_target_obs="mn10300-tdep.o mn10300-linux-tdep.o linux-tdep.o \
181                         solib-svr4.o"
182         ;;
184 arc*-*-elf32)
185         # Target: baremetal ARC elf32 (newlib) target
186         gdb_target_obs="arc-newlib-tdep.o"
187         ;;
189 arc*-*-linux*)
190         # Target: ARC machine running Linux
191         gdb_target_obs="arc-linux-tdep.o linux-tdep.o solib-svr4.o"
192         ;;
194 arm*-wince-pe | arm*-*-mingw32ce*)
195         # Target: ARM based machine running Windows CE (win32)
196         gdb_target_obs="arm-wince-tdep.o windows-tdep.o"
197         ;;
198 arm*-*-linux*)
199         # Target: ARM based machine running GNU/Linux
200         gdb_target_obs="arch/arm-linux.o arm-linux-tdep.o glibc-tdep.o \
201                         solib-svr4.o symfile-mem.o linux-tdep.o linux-record.o"
202         ;;
203 arm*-*-freebsd*)
204         # Target: FreeBSD/arm
205         gdb_target_obs="arm-fbsd-tdep.o"
206         ;;
207 arm*-*-netbsd* | arm*-*-knetbsd*-gnu)
208         # Target: NetBSD/arm
209         gdb_target_obs="arm-netbsd-tdep.o"
210         ;;
211 arm*-*-openbsd*)
212         # Target: OpenBSD/arm
213         gdb_target_obs="arm-bsd-tdep.o arm-obsd-tdep.o"
214         ;;
215 arm*-*-*)
216         # Target: ARM embedded system
217         gdb_target_obs="arm-pikeos-tdep.o"
218         ;;
220 avr-*-*)
221         # Target: AVR
222         gdb_target_obs="avr-tdep.o"
223         ;;
225 bfin-*-*linux*)
226         # Target: Blackfin Linux
227         gdb_target_obs="bfin-tdep.o bfin-linux-tdep.o linux-tdep.o"
228         ;;
229 bfin-*-*)
230         # Target: Blackfin processor
231         gdb_target_obs="bfin-tdep.o"
232         ;;
234 bpf-*-*)
235         # Target: eBPF
236         gdb_target_obs="bpf-tdep.o"
237         ;;
239 cris*)
240         # Target: CRIS
241         gdb_target_obs="cris-tdep.o cris-linux-tdep.o linux-tdep.o solib-svr4.o"
242         ;;
244 csky*-*-linux*)
245         # Target: CSKY running GNU/Linux
246         gdb_target_obs="csky-tdep.o csky-linux-tdep.o glibc-tdep.o \
247                         linux-tdep.o solib-svr4.o"
248         ;;
250 csky*-*-*)
251         # Target: CSKY bare metal
252         gdb_target_obs="csky-tdep.o"
253         ;;
255 frv-*-*)
256         # Target: Fujitsu FRV processor
257         gdb_target_obs="frv-tdep.o frv-linux-tdep.o linux-tdep.o solib-frv.o"
258         ;;
260 moxie-*-elf | moxie-*-moxiebox | moxie-*-rtems*)
261         gdb_target_obs="moxie-tdep.o"
262         ;;
264 h8300-*-*)
265         # Target: H8300 processor
266         gdb_target_obs="h8300-tdep.o"
267         ;;
269 hppa*-*-linux*)
270         # Target: HP PA-RISC running Linux
271         gdb_target_obs="hppa-linux-tdep.o glibc-tdep.o \
272                         linux-tdep.o solib-svr4.o symfile-mem.o"
273         ;;
274 hppa*-*-netbsd*)
275         # Target: NetBSD/hppa
276         gdb_target_obs="hppa-bsd-tdep.o hppa-netbsd-tdep.o solib-svr4.o"
277         ;;
278 hppa*-*-openbsd*)
279         # Target: OpenBSD/hppa
280         gdb_target_obs="hppa-bsd-tdep.o hppa-obsd-tdep.o solib-svr4.o"
281         ;;
283 i[34567]86-*-darwin*)
284         # Target: Darwin/i386
285         gdb_target_obs="i386-darwin-tdep.o solib-darwin.o"
286         if test "x$enable_64_bit_bfd" = "xyes"; then
287             # Target: GNU/Linux x86-64
288             gdb_target_obs="amd64-darwin-tdep.o ${gdb_target_obs}"
289         fi
290         ;;
291 i[34567]86-*-dicos*)
292         # Target: DICOS/i386
293         gdb_target_obs="dicos-tdep.o i386-dicos-tdep.o"
294         ;;
295 i[34567]86-*-freebsd* | i[34567]86-*-kfreebsd*-gnu)
296         # Target: FreeBSD/i386
297         gdb_target_obs="i386-bsd-tdep.o i386-fbsd-tdep.o "
298         ;;
299 i[34567]86-*-netbsd* | i[34567]86-*-knetbsd*-gnu)
300         # Target: NetBSD/i386
301         gdb_target_obs="i386-bsd-tdep.o i386-netbsd-tdep.o "
302         ;;
303 i[34567]86-*-openbsd*)
304         # Target: OpenBSD/i386
305         gdb_target_obs="i386-bsd-tdep.o i386-obsd-tdep.o bsd-uthread.o"
306         ;;
307 i[34567]86-*-nto*)
308         # Target: Intel 386 running qnx6.
309         gdb_target_obs="solib-svr4.o \
310                         i386-nto-tdep.o nto-tdep.o"
311         ;;
312 i[34567]86-*-solaris2* | x86_64-*-solaris2*)
313         # Target: Solaris x86_64
314         gdb_target_obs="${i386_tobjs} ${amd64_tobjs} \
315                          amd64-sol2-tdep.o i386-sol2-tdep.o sol2-tdep.o \
316                          solib-svr4.o"
317         ;;
318 i[34567]86-*-linux*)
319         # Target: Intel 386 running GNU/Linux
320         gdb_target_obs="i386-linux-tdep.o \
321                         glibc-tdep.o \
322                         solib-svr4.o symfile-mem.o \
323                         linux-tdep.o linux-record.o"
324         if test "x$enable_64_bit_bfd" = "xyes"; then
325             # Target: GNU/Linux x86-64
326             gdb_target_obs="amd64-linux-tdep.o ${gdb_target_obs}"
327         fi
328         ;;
329 i[34567]86-*-gnu*)
330         # Target: Intel 386 running the GNU Hurd
331         gdb_target_obs="i386-gnu-tdep.o solib-svr4.o"
332         ;;
333 i[34567]86-*-cygwin*)
334         # Target: Intel 386 running win32
335         gdb_target_obs="i386-windows-tdep.o windows-tdep.o"
336         ;;
337 i[34567]86-*-mingw32*)
338         # Target: Intel 386 running win32
339         gdb_target_obs="i386-windows-tdep.o windows-tdep.o"
340         ;;
341 i[34567]86-*-go32* | i[34567]86-*-msdosdjgpp*)
342         # Target: i386 running DJGPP/go32.
343         gdb_target_obs="i386-go32-tdep.o"
344         ;;
346 ia64-*-linux*)
347         # Target: Intel IA-64 running GNU/Linux
348         gdb_target_obs="ia64-linux-tdep.o linux-tdep.o \
349                         solib-svr4.o symfile-mem.o"
350         ;;
351 ia64-*-*vms*)
352         # Target: Intel IA-64 running OpenVMS
353         gdb_target_obs="ia64-vms-tdep.o"
354         ;;
356 iq2000-*-*)
357         gdb_target_obs="iq2000-tdep.o"
358         ;;
360 lm32-*-*)               
361         gdb_target_obs="lm32-tdep.o" 
362         ;;
364 loongarch*-*-linux*)
365         # Target: LoongArch running Linux
366         gdb_target_obs="loongarch-linux-tdep.o glibc-tdep.o \
367                         linux-tdep.o solib-svr4.o"
368         ;;
370 m32c-*-*)
371         # Target: Renesas M32C family
372         gdb_target_obs="m32c-tdep.o"
373         ;;
375 m32r*-*-linux*)
376         # Target: Renesas M32R running GNU/Linux
377         gdb_target_obs="m32r-tdep.o m32r-linux-tdep.o \
378                         glibc-tdep.o solib-svr4.o symfile-mem.o \
379                         linux-tdep.o"
380         ;;
381 m32r*-*-*)
382         # Target: Renesas m32r processor
383         gdb_target_obs="m32r-tdep.o"
384         ;;
386 m68hc11*-*-*|m6811*-*-*)
387         # Target: Motorola 68HC11 processor
388         gdb_target_obs="m68hc11-tdep.o"
389         ;;
391 m68*-*-aout* | m68*-*-coff* | m68*-*-elf* | m68*-*-rtems* | m68*-*-uclinux* | \
392 fido-*-elf*)
393         # Target: Motorola m68k embedded
394         gdb_target_obs="m68k-tdep.o"
395         ;;
396 m68*-*-linux*)
397         # Target: Motorola m68k with a.out and ELF
398         gdb_target_obs="m68k-tdep.o m68k-linux-tdep.o solib-svr4.o \
399                         linux-tdep.o glibc-tdep.o symfile-mem.o"
400         ;;
401 m68*-*-netbsd* | m68*-*-knetbsd*-gnu)
402         # Target: NetBSD/m68k
403         gdb_target_obs="m68k-tdep.o m68k-bsd-tdep.o"
404         ;;
405 m68*-*-openbsd*)
406         # Target: OpenBSD/m68k
407         gdb_target_obs="m68k-tdep.o m68k-bsd-tdep.o"
408         ;;
410 mep-*-*)
411         # Target: Toshiba Media Processor (MEP)
412         gdb_target_obs="mep-tdep.o"
413         # No sim needed. Target uses SID.
414         ;;
416 microblaze*-linux-*|microblaze*-*-linux*)
417         # Target: Xilinx MicroBlaze running Linux
418         gdb_target_obs="microblaze-tdep.o microblaze-linux-tdep.o solib-svr4.o \
419                         symfile-mem.o linux-tdep.o"
420         ;;
421 microblaze*-*-*)
422         # Target: Xilinx MicroBlaze running standalone
423         gdb_target_obs="microblaze-tdep.o"
424         ;;
426 mips*-*-linux*)
427         # Target: Linux/MIPS
428         gdb_target_obs="mips-tdep.o mips-linux-tdep.o glibc-tdep.o \
429                         solib-svr4.o symfile-mem.o linux-tdep.o"
430         ;;
431 mips*-*-netbsd* | mips*-*-knetbsd*-gnu)
432         # Target: MIPS running NetBSD
433         gdb_target_obs="mips-tdep.o mips-netbsd-tdep.o"
434         ;;
435 mips*-*-freebsd*)
436         # Target: MIPS running FreeBSD
437         gdb_target_obs="mips-tdep.o mips-fbsd-tdep.o"
438         ;;
439 mips64*-*-openbsd*)
440         # Target: OpenBSD/mips64
441         gdb_target_obs="mips-tdep.o mips64-obsd-tdep.o"
442         ;;
443 mips*-sde*-elf*)
444         # Target: MIPS SDE
445         gdb_target_obs="mips-tdep.o mips-sde-tdep.o"
446         ;;
447 mips*-*-elf)
448         # Target: MIPS ELF
449         gdb_target_obs="mips-tdep.o"
450         ;;
451 mips*-*-*)
452         # Target: MIPS
453         gdb_target_obs="mips-tdep.o"
454         ;;
456 mn10300-*-*)
457         # Target: Matsushita mn10300
458         gdb_target_obs="mn10300-tdep.o"
459         ;;
461 msp430-*-elf*)
462         gdb_target_obs="msp430-tdep.o"
463         ;;
465 nds32*-*-elf)
466         # Target: AndesTech NDS32 core
467         gdb_target_obs="nds32-tdep.o"
468         ;;
470 nios2*-*-linux*)
471         # Target: Altera Nios II running Linux
472         gdb_target_obs="nios2-tdep.o nios2-linux-tdep.o solib-svr4.o \
473                         symfile-mem.o glibc-tdep.o linux-tdep.o"
474         ;;
476 nios2*-*-*)
477         # Target: Altera Nios II bare-metal
478         gdb_target_obs="nios2-tdep.o"
479         ;;
481 or1k*-*-linux*)
482         # Target: OpenCores OpenRISC 1000 32-bit running Linux
483         gdb_target_obs="or1k-tdep.o or1k-linux-tdep.o solib-svr4.o \
484                         symfile-mem.o glibc-tdep.o linux-tdep.o"
485         ;;
487 or1k-*-* | or1knd-*-*)
488         # Target: OpenCores OpenRISC 1000 32-bit implementation bare metal
489         gdb_target_obs="or1k-tdep.o"
490         ;;
492 powerpc*-*-freebsd*)
493         # Target: FreeBSD/powerpc
494         gdb_target_obs="rs6000-tdep.o ppc-sysv-tdep.o ppc64-tdep.o \
495                         ppc-fbsd-tdep.o \
496                         ravenscar-thread.o ppc-ravenscar-thread.o"
497         ;;
499 powerpc-*-netbsd* | powerpc-*-knetbsd*-gnu)
500         # Target: NetBSD/powerpc
501         gdb_target_obs="rs6000-tdep.o ppc-sysv-tdep.o ppc-netbsd-tdep.o \
502                         ravenscar-thread.o ppc-ravenscar-thread.o"
503         ;;
504 powerpc-*-openbsd*)
505         # Target: OpenBSD/powerpc
506         gdb_target_obs="rs6000-tdep.o ppc-sysv-tdep.o ppc-obsd-tdep.o \
507                         ravenscar-thread.o ppc-ravenscar-thread.o"
508         ;;
509 powerpc-*-aix* | rs6000-*-* | powerpc64-*-aix*)
510         # Target: PowerPC running AIX
511         gdb_target_obs="rs6000-tdep.o rs6000-aix-tdep.o xcoffread.o \
512                         ppc-sysv-tdep.o solib-aix.o \
513                         ravenscar-thread.o ppc-ravenscar-thread.o"
514         ;;
515 powerpc*-*-linux*)
516         # Target: PowerPC running Linux
517         gdb_target_obs="rs6000-tdep.o ppc-linux-tdep.o ppc-sysv-tdep.o \
518                         ppc64-tdep.o solib-svr4.o \
519                         glibc-tdep.o symfile-mem.o linux-tdep.o \
520                         ravenscar-thread.o ppc-ravenscar-thread.o \
521                         linux-record.o \
522                         arch/ppc-linux-common.o"
523         ;;
524 powerpc-*-lynx*178)
525         # Target: PowerPC running Lynx178.
526         gdb_target_obs="rs6000-tdep.o rs6000-lynx178-tdep.o \
527                         xcoffread.o ppc-sysv-tdep.o \
528                         ravenscar-thread.o ppc-ravenscar-thread.o"
529         ;;
530 powerpc*-*-*)
531         # Target: PowerPC running eabi
532         gdb_target_obs="rs6000-tdep.o ppc-sysv-tdep.o solib-svr4.o \
533                         ravenscar-thread.o ppc-ravenscar-thread.o"
534         ;;
536 s390*-*-linux*)
537         # Target: S390 running Linux
538         gdb_target_obs="s390-linux-tdep.o s390-tdep.o solib-svr4.o \
539                         linux-tdep.o linux-record.o symfile-mem.o"
540         ;;
542 riscv*-*-freebsd*)
543         # Target: FreeBSD/riscv
544         gdb_target_obs="riscv-fbsd-tdep.o"
545         ;;
547 riscv*-*-linux*)
548         # Target: Linux/RISC-V
549         gdb_target_obs="riscv-linux-tdep.o glibc-tdep.o \
550                         linux-tdep.o solib-svr4.o symfile-mem.o linux-record.o"
551         ;;
553 riscv*-*-*)
554         # Target: RISC-V architecture
555         gdb_target_obs=""
556         ;;
558 rl78-*-elf)
559         # Target: Renesas rl78
560         gdb_target_obs="rl78-tdep.o"
561         ;;
563 rx-*-*)
564         # Target: Renesas RX
565         gdb_target_obs="rx-tdep.o"
566         ;;
568 sh*-*-linux*)
569         # Target: GNU/Linux Super-H
570         gdb_target_obs="sh-tdep.o sh-linux-tdep.o \
571                         solib-svr4.o symfile-mem.o \
572                         glibc-tdep.o linux-tdep.o"
573         ;;
574 sh*-*-netbsd* | sh*-*-knetbsd*-gnu)
575         # Target: NetBSD/sh
576         gdb_target_obs="sh-tdep.o sh-netbsd-tdep.o"
577         ;;
578 sh*-*-openbsd*)
579         # Target: OpenBSD/sh
580         gdb_target_obs="sh-tdep.o sh-netbsd-tdep.o"
581         ;;
582 sh*)
583         # Target: Embedded Renesas Super-H processor
584         gdb_target_obs="sh-tdep.o"
585         ;;
587 sparc-*-linux*)
588         # Target: GNU/Linux SPARC
589         gdb_target_obs="sparc-tdep.o \
590                         sparc-linux-tdep.o solib-svr4.o symfile-mem.o \
591                         linux-tdep.o \
592                         ravenscar-thread.o sparc-ravenscar-thread.o"
593         if test "x$enable_64_bit_bfd" = "xyes"; then
594             # Target: GNU/Linux UltraSPARC
595             gdb_target_obs="sparc64-tdep.o \
596                             sparc64-linux-tdep.o ${gdb_target_obs}"
597         fi
598         ;;
599 sparc64-*-linux*)
600         # Target: GNU/Linux UltraSPARC
601         gdb_target_obs="sparc64-tdep.o \
602                         sparc64-linux-tdep.o sparc-tdep.o \
603                         sparc-linux-tdep.o solib-svr4.o linux-tdep.o \
604                         ravenscar-thread.o sparc-ravenscar-thread.o"
605         ;;
606 sparc*-*-freebsd* | sparc*-*-kfreebsd*-gnu)
607         # Target: FreeBSD/sparc64
608         gdb_target_obs="sparc-tdep.o sparc64-tdep.o sparc64-fbsd-tdep.o \
609                         ravenscar-thread.o sparc-ravenscar-thread.o"
610         ;;
611 sparc-*-netbsd* | sparc-*-knetbsd*-gnu)
612         # Target: NetBSD/sparc
613         gdb_target_obs="sparc-tdep.o sparc-netbsd-tdep.o \
614                         ravenscar-thread.o sparc-ravenscar-thread.o"
615         ;;
616 sparc64-*-netbsd* | sparc64-*-knetbsd*-gnu)
617         # Target: NetBSD/sparc64
618         gdb_target_obs="sparc64-tdep.o sparc64-netbsd-tdep.o sparc-tdep.o \
619                         sparc-netbsd-tdep.o \
620                         ravenscar-thread.o sparc-ravenscar-thread.o"
621         ;;
622 sparc-*-openbsd*)
623         # Target: OpenBSD/sparc
624         gdb_target_obs="sparc-tdep.o sparc-netbsd-tdep.o sparc-obsd-tdep.o \
625                         netbsd-tdep.o bsd-uthread.o \
626                         ravenscar-thread.o sparc-ravenscar-thread.o"
627         ;;
628 sparc64-*-openbsd*)
629         # Target: OpenBSD/sparc64
630         gdb_target_obs="sparc64-tdep.o sparc64-netbsd-tdep.o sparc64-obsd-tdep.o \
631                         sparc-tdep.o sparc-netbsd-tdep.o sparc-obsd-tdep.o \
632                         netbsd-tdep.o bsd-uthread.o \
633                         ravenscar-thread.o sparc-ravenscar-thread.o"
634         ;;
635 sparc-*-solaris2* | sparcv9-*-solaris2* | sparc64-*-solaris2*)
636         # Target: Solaris UltraSPARC
637         gdb_target_obs="sparc64-tdep.o sparc64-sol2-tdep.o sparc-tdep.o \
638                         sparc-sol2-tdep.o sol2-tdep.o solib-svr4.o \
639                         ravenscar-thread.o sparc-ravenscar-thread.o"
640         ;;
641 sparc-*-*)
642         # Target: SPARC
643         gdb_target_obs="sparc-tdep.o \
644                         ravenscar-thread.o sparc-ravenscar-thread.o"
645         ;;
646 sparc64-*-*)
647         # Target: UltraSPARC
648         gdb_target_obs="sparc-tdep.o sparc64-tdep.o \
649                         ravenscar-thread.o sparc-ravenscar-thread.o"
650         ;;
652 s12z-*-*)
653         # Target: Freescale S12z
654         gdb_target_obs="s12z-tdep.o"
655         ;;
657 tic6x-*-*linux)
658         # Target: GNU/Linux TI C6x
659         gdb_target_obs="tic6x-tdep.o tic6x-linux-tdep.o solib-dsbt.o \
660                         glibc-tdep.o linux-tdep.o"
661         ;;
663 tic6x-*-*)
664         # Target: TI C6X 
665         gdb_target_obs="tic6x-tdep.o"
666         ;;
668 tilegx-*-linux*)
669         # Target: TILE-Gx
670         gdb_target_obs="tilegx-tdep.o tilegx-linux-tdep.o solib-svr4.o \
671                         symfile-mem.o glibc-tdep.o linux-tdep.o"
672         ;;
674 xstormy16-*-*)
675         # Target: Sanyo Xstormy16a processor
676         gdb_target_obs="xstormy16-tdep.o"
677         # No simulator libraries are needed -- target uses SID.
678         ;;
680 ft32-*-elf)
681         gdb_target_obs="ft32-tdep.o"
682         ;;
684 v850*-*-elf | v850*-*-rtems*)
685         # Target: NEC V850 processor
686         gdb_target_obs="v850-tdep.o"
687         ;;
689 vax-*-netbsd* | vax-*-knetbsd*-gnu)
690         # Target: NetBSD/vax
691         gdb_target_obs="vax-tdep.o solib-svr4.o"
692         ;;
693 vax-*-openbsd*)
694         # Target: OpenBSD/vax
695         gdb_target_obs="vax-tdep.o"
696         ;;
697 vax-*-*)
698         # Target: VAX
699         gdb_target_obs="vax-tdep.o"
700         ;;
702 x86_64-*-darwin*)
703         # Target: Darwin/x86-64
704         gdb_target_obs="${i386_tobjs} \
705                         i386-darwin-tdep.o amd64-darwin-tdep.o \
706                         solib-darwin.o"
707         ;;
709 x86_64-*-dicos*)
710         # Target: DICOS/x86-64
711         gdb_target_obs="${i386_tobjs} \
712                         dicos-tdep.o i386-dicos-tdep.o amd64-dicos-tdep.o"
713         ;;
714 x86_64-*-elf*)
715         gdb_target_obs="${i386_tobjs}"
716         ;;
717 x86_64-*-linux*)
718         # Target: GNU/Linux x86-64
719         gdb_target_obs="amd64-linux-tdep.o ${i386_tobjs}  \
720                         i386-linux-tdep.o glibc-tdep.o \
721                         solib-svr4.o symfile-mem.o linux-tdep.o linux-record.o"
722         ;;
723 x86_64-*-freebsd* | x86_64-*-kfreebsd*-gnu)
724         # Target: FreeBSD/amd64
725         gdb_target_obs="amd64-fbsd-tdep.o ${i386_tobjs} \
726                         i386-bsd-tdep.o i386-fbsd-tdep.o"
727         ;;
728 x86_64-*-mingw* | x86_64-*-cygwin*)
729         # Target: MingW/amd64
730         gdb_target_obs="amd64-windows-tdep.o \
731                         ${i386_tobjs} i386-windows-tdep.o \
732                         windows-tdep.o"
733         ;;
734 x86_64-*-netbsd* | x86_64-*-knetbsd*-gnu)
735         # Target: NetBSD/amd64
736         gdb_target_obs="amd64-netbsd-tdep.o ${i386_tobjs}"
737         ;;
738 x86_64-*-openbsd*)
739         # Target: OpenBSD/amd64
740         gdb_target_obs="amd64-obsd-tdep.o ${i386_tobjs} \
741                         i386-bsd-tdep.o i386-obsd-tdep.o \
742                         bsd-uthread.o"
743         ;;
744 x86_64-*-rtems*)
745         gdb_target_obs="${amd64_tobjs} ${i386_tobjs} i386-bsd-tdep.o"
746         ;;
747 xtensa*-*-*linux*)
748         # Target: GNU/Linux Xtensa
749         gdb_target_obs="xtensa-linux-tdep.o symfile-mem.o linux-tdep.o"
750         ;;
751 z80*)
752         # Target: Z80
753         gdb_target_obs="z80-tdep.o"
754         ;;
756 esac
758 # Put them together.
760 gdb_target_obs="${cpu_obs} ${os_obs} ${gdb_target_obs}"
762 # Get the sim settings.
763 # NB: Target matching is aligned with sim/configure.ac.  Changes must be kept
764 # in sync with that file.
766 case "${targ}" in
767 aarch64*-*-*)           gdb_sim=aarch64 ;;
768 arm*-*-*)               gdb_sim=arm ;;
769 avr*-*-*)               gdb_sim=avr ;;
770 bfin-*-*)               gdb_sim=bfin ;;
771 bpf-*-*)                gdb_sim=bpf ;;
772 cris-*-*|cris32-*-*)    gdb_sim=cris ;;
773 frv-*-*)                gdb_sim=frv ;;
774 ft32-*-*)               gdb_sim=ft32 ;;
775 h8300*-*-*)             gdb_sim=h8300 ;;
776 iq2000-*-*)             gdb_sim=iq2000 ;;
777 lm32-*-*)               gdb_sim=lm32 ;;
778 m32c-*-*)               gdb_sim=m32c ;;
779 m32r-*-*)               gdb_sim=m32r ;;
780 m68hc11-*-*|m6811-*-*)  gdb_sim=m68hc11 ;;
781 microblaze*-*-*)        gdb_sim=microblaze ;;
782 mips*-*-*)              gdb_sim=mips ;;
783 mn10300*-*-*)           gdb_sim=mn10300 ;;
784 moxie-*-*)              gdb_sim=moxie ;;
785 msp430*-*-*)            gdb_sim=msp430 ;;
786 or1k*-*-*)              gdb_sim=or1k ;;
787 powerpc*-*-*)           gdb_sim=ppc ;;
788 riscv*-*-*)             gdb_sim=riscv ;;
789 rl78-*-*)               gdb_sim=rl78 ;;
790 rx-*-*)                 gdb_sim=rx ;;
791 sh*-*-*)                gdb_sim=sh ;;
792 sparc-*-*)              gdb_sim=erc32 ;;
793 v850*-*-*)              gdb_sim=v850 ;;
794 esac
795 if test "x$gdb_sim" != "x"; then
796   gdb_sim="../sim/${gdb_sim}/libsim.a"
799 # map target onto default OS ABI
801 case "${targ}" in
802 *-*-freebsd* | *-*-kfreebsd*-gnu)
803                 gdb_osabi=GDB_OSABI_FREEBSD ;;
804 *-*-linux* | *-*-uclinux*)
805                 gdb_osabi=GDB_OSABI_LINUX ;;
806 *-*-nto*)       gdb_osabi=GDB_OSABI_QNXNTO ;;
807 m68*-*-openbsd* | m88*-*-openbsd* | vax-*-openbsd*) ;;
808 *-*-openbsd*)   gdb_osabi=GDB_OSABI_OPENBSD ;;
809 *-*-solaris*)   gdb_osabi=GDB_OSABI_SOLARIS ;;
810 *-*-*-gnu*)     ;; # prevent non-GNU kernels to match the Hurd rule below
811 *-*-gnu*)       gdb_osabi=GDB_OSABI_HURD ;;
812 *-*-mingw32ce*) gdb_osabi=GDB_OSABI_WINCE ;;
813 *-*-mingw*)     gdb_osabi=GDB_OSABI_WINDOWS ;;
814 *-*-cygwin*)    gdb_osabi=GDB_OSABI_CYGWIN ;;
815 *-*-dicos*)     gdb_osabi=GDB_OSABI_DICOS ;;
816 powerpc-*-aix* | rs6000-*-* | powerpc64-*-aix*)
817                 gdb_osabi=GDB_OSABI_AIX ;;
818 esac
820 # Check whether this target supports gcore.
821 # Such target has to call set_gdbarch_find_memory_regions.
822 gdb_have_gcore=false
823 for t in x ${gdb_target_obs}; do
824   if test "$t" = linux-tdep.o; then
825     gdb_have_gcore=true
826   fi
827 done