]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - gdb/configure.nat
Fix gdb 8.1 Solaris compilation
[thirdparty/binutils-gdb.git] / gdb / configure.nat
CommitLineData
21ea5acd
SDJ
1# ; -*- mode: sh ; -*-
2# Copyright (C) 2013-2017 Free Software Foundation, Inc.
3#
4# This file is part of GDB.
5#
6# This program is free software; you can redistribute it and/or modify
7# it under the terms of the GNU General Public License as published by
8# the Free Software Foundation; either version 3 of the License, or
9# (at your option) any later version.
10#
11# This program is distributed in the hope that it will be useful,
12# but WITHOUT ANY WARRANTY; without even the implied warranty of
13# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14# GNU General Public License for more details.
15#
16# You should have received a copy of the GNU General Public License
17# along with this program. If not, see <http://www.gnu.org/licenses/>.
18
19# Variables defined here:
20#
21# NAT_FILE - The header file with definitions for this native target.
22#
23# NATDEPFILES - Source files required for native debugging on this
24# native target.
25#
26# NAT_CDEPS - Dynamic symbols to be exported for libthread_db.
27#
28# LOADLIBES - Libraries against which GDB will be linked for this
29# native target.
30#
31# MH_CFLAGS - Additional CFLAGS for this host.
32#
33# XM_CLIBS - Host-dependent libraries against which GDB will be linked
34# for this native target.
35#
36# HAVE_NATIVE_GCORE_HOST - Whether gcore should be installed on this
37# native target.
38#
2b351b19
PA
39# nat_makefile_frag - Name of the (optional) Makefile fragment file
40# required to build the native target. The
41# fragment is incorporated into the Makefile that
42# configure constructs from Makefile.in.
21ea5acd
SDJ
43#
44# Notes:
45#
46# - To avoid shell expansion of variables, declare them with single
47# quotes.
48#
2b351b19 49# - nat_makefile_frag must contain the full path of the file.
21ea5acd
SDJ
50
51
e50f25ec
SDJ
52# This first case is useful for filling default values for each
53# gdb_host.
54case ${gdb_host} in
55 *linux*)
21ea5acd 56 NAT_FILE='config/nm-linux.h'
2090129c 57 NATDEPFILES='inf-ptrace.o fork-child.o fork-inferior.o proc-service.o \
e50f25ec
SDJ
58 linux-thread-db.o linux-nat.o linux-osdata.o linux-fork.o \
59 linux-procfs.o linux-ptrace.o linux-waitpid.o \
60 linux-personality.o linux-namespaces.o'
21ea5acd 61 NAT_CDEPS='$(srcdir)/proc-service.list'
21ea5acd 62 LOADLIBES='-ldl $(RDYNAMIC)'
21ea5acd 63 ;;
e50f25ec 64 fbsd*)
2090129c 65 NATDEPFILES='fork-child.o fork-inferior.o inf-ptrace.o fbsd-nat.o'
e50f25ec 66 HAVE_NATIVE_GCORE_HOST=1
21ea5acd
SDJ
67 LOADLIBES='-lkvm'
68 ;;
e50f25ec 69 nbsd*)
2090129c 70 NATDEPFILES='fork-child.o fork-inferior.o inf-ptrace.o'
28ad437d 71 HAVE_NATIVE_GCORE_HOST=1
21ea5acd 72 ;;
e50f25ec 73 obsd*)
2090129c 74 NATDEPFILES='fork-child.o fork-inferior.o inf-ptrace.o'
21ea5acd 75 ;;
e50f25ec
SDJ
76 cygwin*)
77 NATDEPFILES='x86-nat.o x86-dregs.o windows-nat.o'
21ea5acd 78 ;;
e50f25ec
SDJ
79 mingw*)
80 NATDEPFILES='x86-nat.o x86-dregs.o windows-nat.o'
21ea5acd 81 ;;
3b912944
SM
82 aix)
83 NATDEPFILES='fork-inferior.o fork-child.o inf-ptrace.o'
84 ;;
848d9074
SM
85 darwin)
86 NATDEPFILES='fork-child.o fork-inferior.o darwin-nat.o \
87 darwin-nat-info.o'
88 ;;
e50f25ec 89esac
21ea5acd 90
e50f25ec
SDJ
91# This is where we actually filter by host and host CPU.
92case ${gdb_host} in
93 aix)
94 case ${gdb_host_cpu} in
95 powerpc)
96 # Host: IBM PowerPC running AIX aix-thread.o is not
97 # listed in NATDEPFILES as it is pulled in by
98 # configure.
3b912944 99 NATDEPFILES="${NATDEPFILES} rs6000-nat.o"
e50f25ec
SDJ
100
101 # When compiled with cc, for debugging, this argument
102 # should be passed. We have no idea who our current
103 # compiler is though, so we skip it.
104 # MH_CFLAGS='-bnodelcsect'
105 ;;
106 esac
107 ;;
108 alpha-linux)
109 case ${gdb_host_cpu} in
110 alpha)
111 # Host: Little-endian Alpha running Linux
112 NATDEPFILES="${NATDEPFILES} alpha-linux-nat.o"
113 # doublest.c currently assumes some properties of FP arithmetic
114 # on the host which require this.
115 MH_CFLAGS='-mieee'
116 ;;
117 esac
118 ;;
119 cygwin)
120 case ${gdb_host_cpu} in
121 i386)
122 # Native config information for GDB on i386
123 # systems running Cygwin.
124 NATDEPFILES="${NATDEPFILES} i386-windows-nat.o"
125 ;;
126 esac
127 ;;
128 cygwin64)
129 case ${gdb_host_cpu} in
130 i386)
131 # Native config information for GDB on amd64
132 # systems running Cygwin.
133 NATDEPFILES="${NATDEPFILES} amd64-windows-nat.o"
134 ;;
135 esac
136 ;;
137 darwin)
138 case ${gdb_host_cpu} in
139 i386)
140 # Host: IA86 running Darwin
848d9074
SM
141 NATDEPFILES="${NATDEPFILES} i386-darwin-nat.o x86-nat.o \
142 x86-dregs.o amd64-nat.o"
e50f25ec
SDJ
143 ;;
144 esac
145 ;;
146 fbsd)
147 case ${gdb_host_cpu} in
351787dd
JB
148 aarch64)
149 # Host: FreeBSD/aarch64
150 NATDEPFILES="${NATDEPFILES} aarch64-fbsd-nat.o"
151 LOADLIBES=
152 ;;
e50f25ec
SDJ
153 i386)
154 # Host: FreeBSD/i386
155 NATDEPFILES="${NATDEPFILES} x86-nat.o x86-dregs.o \
156 x86-bsd-nat.o i386-bsd-nat.o i386-fbsd-nat.o bsd-kvm.o"
157 NAT_FILE='nm-fbsd.h'
158 ;;
159 mips)
160 # Host: FreeBSD/mips
161 NATDEPFILES="${NATDEPFILES} mips-fbsd-nat.o"
162 LOADLIBES=
163 ;;
164 powerpc)
165 # Native config information for GDB on PowerPC
166 # systems running FreeBSD.
167 NATDEPFILES="${NATDEPFILES} ppc-fbsd-nat.o bsd-kvm.o"
168 ;;
169 sparc)
170 # Host: FreeBSD/sparc64
171 NATDEPFILES="${NATDEPFILES} sparc-nat.o sparc64-nat.o \
172 sparc64-fbsd-nat.o bsd-kvm.o"
173 ;;
174 esac
175 ;;
176 fbsd64)
177 case ${gdb_host_cpu} in
178 i386)
179 # Host: FreeBSD/amd64
180 NATDEPFILES="${NATDEPFILES} amd64-nat.o amd64-bsd-nat.o \
181 amd64-fbsd-nat.o bsd-kvm.o x86-nat.o x86-dregs.o x86-bsd-nat.o"
182 ;;
183 esac
184 ;;
185 go32)
186 case ${gdb_host_cpu} in
187 i386)
188 # Host: Intel x86 running DJGPP
189 # We include several header files from config/djgpp
190 MH_CFLAGS='-I$(srcdir)/config/djgpp'
191 NATDEPFILES='go32-nat.o x86-nat.o x86-dregs.o'
192 XM_CLIBS='-ldbg'
193 ;;
194 esac
195 ;;
196 i386gnu)
197 case ${gdb_host_cpu} in
198 i386)
199 # Host: Intel 386 running the GNU Hurd
200 NATDEPFILES='i386-gnu-nat.o gnu-nat.o \
21ea5acd
SDJ
201 x86-nat.o x86-dregs.o fork-child.o \
202 notify_S.o process_reply_S.o msg_reply_S.o \
203 msg_U.o exc_request_U.o exc_request_S.o'
e50f25ec 204 HAVE_NATIVE_GCORE_HOST=1
21ea5acd 205
e50f25ec
SDJ
206 NAT_FILE='nm-i386gnu.h'
207 MH_CFLAGS='-D_GNU_SOURCE'
21ea5acd 208
e50f25ec 209 XM_CLIBS='-lshouldbeinlibc'
21ea5acd 210
2b351b19 211 nat_makefile_frag="${srcdir}/config/${gdb_host_cpu}/i386gnu.mn"
e50f25ec
SDJ
212 ;;
213 esac
21ea5acd 214 ;;
e50f25ec
SDJ
215 i386sol2)
216 case ${gdb_host_cpu} in
217 i386)
218 # Host: Solaris x86
4fa7574e
RO
219 NATDEPFILES='fork-child.o fork-inferior.o \
220 i386-v4-nat.o i386-sol2-nat.o \
21ea5acd 221 procfs.o proc-api.o proc-events.o proc-flags.o proc-why.o'
e50f25ec
SDJ
222 HAVE_NATIVE_GCORE_HOST=1
223 ;;
224 esac
225 ;;
226 linux)
227 case ${gdb_host_cpu} in
228 aarch64)
229 # Host: AArch64 based machine running GNU/Linux
230 NATDEPFILES="${NATDEPFILES} aarch64-linux-nat.o \
231 aarch32-linux-nat.o aarch64-linux-hw-point.o aarch64-linux.o"
232 ;;
233 arm)
234 # Host: ARM based machine running GNU/Linux
235 NATDEPFILES="${NATDEPFILES} arm-linux-nat.o \
236 aarch32-linux-nat.o"
237 ;;
238 i386)
239 # Host: Intel 386 running GNU/Linux.
240 NATDEPFILES="${NATDEPFILES} x86-nat.o x86-dregs.o \
241 i386-linux-nat.o x86-linux-nat.o linux-btrace.o \
242 x86-linux.o x86-linux-dregs.o"
243 ;;
244 ia64)
245 # Host: Intel IA-64 running GNU/Linux
246 NATDEPFILES="${NATDEPFILES} ia64-linux-nat.o"
247 ;;
248 m32r)
249 # Host: M32R based machine running GNU/Linux
250 NATDEPFILES="${NATDEPFILES} m32r-linux-nat.o"
251 ;;
252 m68k)
253 # Host: Motorola m68k running GNU/Linux.
254 NATDEPFILES="${NATDEPFILES} m68k-linux-nat.o"
255 ;;
256 mips)
257 # Host: Linux/MIPS
258 NATDEPFILES="${NATDEPFILES} mips-linux-nat.o \
259 mips-linux-watch.o"
260 ;;
261 pa)
262 # Host: Hewlett-Packard PA-RISC machine, running Linux
263 NATDEPFILES="${NATDEPFILES} hppa-linux-nat.o"
264 ;;
265 powerpc)
266 # Host: PowerPC, running Linux
267 NATDEPFILES="${NATDEPFILES} ppc-linux-nat.o"
268 ;;
269 s390)
270 # Host: S390, running Linux
271 NATDEPFILES="${NATDEPFILES} s390-linux-nat.o"
272 ;;
273 sparc)
274 # Host: GNU/Linux SPARC
275 NATDEPFILES="${NATDEPFILES} sparc-nat.o sparc-linux-nat.o"
276 ;;
277 tilegx)
278 # Host: Tilera TILE-Gx running GNU/Linux.
279 NATDEPFILES="${NATDEPFILES} tilegx-linux-nat.o"
280 NAT_CDEPS=
281 ;;
282 xtensa)
283 # Host: Xtensa, running GNU/Linux.
284 NATDEPFILES="${NATDEPFILES} xtensa-linux-nat.o"
285 ;;
286 esac
287 ;;
288 linux64)
289 case ${gdb_host_cpu} in
290 i386)
291 # Host: GNU/Linux x86-64
292 NATDEPFILES="${NATDEPFILES} x86-nat.o x86-dregs.o \
293 amd64-nat.o amd64-linux-nat.o x86-linux-nat.o linux-btrace.o \
294 x86-linux.o x86-linux-dregs.o amd64-linux-siginfo.o"
295 ;;
296 sparc)
297 # Host: GNU/Linux UltraSPARC
298 NATDEPFILES="${NATDEPFILES} sparc-nat.o sparc64-nat.o \
299 sparc64-linux-nat.o"
300 ;;
301 esac
302 ;;
303 mingw)
304 case ${gdb_host_cpu} in
305 i386)
306 NATDEPFILES="${NATDEPFILES} i386-windows-nat.o"
307 ;;
308 esac
309 ;;
310 mingw64)
311 case ${gdb_host_cpu} in
312 i386)
313 NATDEPFILES="${NATDEPFILES} amd64-windows-nat.o"
314 ;;
315 esac
316 ;;
317 nbsd)
318 case ${gdb_host_cpu} in
319 alpha)
320 # Host: NetBSD/alpha
321 NATDEPFILES="${NATDEPFILES} alpha-bsd-nat.o bsd-kvm.o"
322 LOADLIBES='-lkvm'
323 ;;
324 mips)
325 # Host: NetBSD/mips
326 NATDEPFILES="${NATDEPFILES} mips-nbsd-nat.o"
327 ;;
328 pa)
329 # Host: NetBSD/hppa
330 NATDEPFILES="${NATDEPFILES} nbsd-nat.o hppa-nbsd-nat.o"
331 ;;
332 powerpc)
333 # Host: NetBSD/powerpc
334 NATDEPFILES="${NATDEPFILES} ppc-nbsd-nat.o bsd-kvm.o"
335 LOADLIBES='-lkvm'
336 ;;
337 sh)
338 # Host: NetBSD/sh
339 NATDEPFILES="${NATDEPFILES} sh-nbsd-nat.o"
340 ;;
341
342 esac
343 ;;
344 nbsd64)
345 case ${gdb_host_cpu} in
346 i386)
347 # Host: NetBSD/amd64
a379bfd0
JB
348 NATDEPFILES="${NATDEPFILES} nbsd-nat.o amd64-nat.o x86-nat.o \
349 x86-dregs.o x86-bsd-nat.o amd64-bsd-nat.o amd64-nbsd-nat.o"
e50f25ec
SDJ
350 ;;
351 sparc)
352 # Host: NetBSD/sparc64
353 NATDEPFILES="${NATDEPFILES} sparc64-nbsd-nat.o sparc-nat.o \
354 bsd-kvm.o"
b9c0e1b4 355 LOADLIBES='-lkvm'
e50f25ec
SDJ
356 ;;
357
358 esac
359 ;;
b9c0e1b4 360 nbsdelf)
e50f25ec
SDJ
361 case ${gdb_host_cpu} in
362 arm)
363 # Host: NetBSD/arm
364 NATDEPFILES="${NATDEPFILES} arm-nbsd-nat.o"
365 ;;
366 i386)
367 # Host: NetBSD/i386 ELF
a379bfd0
JB
368 NATDEPFILES="${NATDEPFILES} nbsd-nat.o x86-nat.o x86-dregs.o \
369 x86-bsd-nat.o i386-bsd-nat.o i386-nbsd-nat.o bsd-kvm.o"
e50f25ec
SDJ
370 LOADLIBES='-lkvm'
371 ;;
372 m68k)
373 # Host: NetBSD/m68k ELF
374 NATDEPFILES="${NATDEPFILES} m68k-bsd-nat.o bsd-kvm.o"
375 LOADLIBES='-lkvm'
376 ;;
377 sparc)
378 # Host: NetBSD/sparc ELF
379 NATDEPFILES="${NATDEPFILES} sparc-nat.o sparc-nbsd-nat.o \
380 bsd-kvm.o"
381 LOADLIBES='-lkvm'
382 ;;
383 vax)
384 # Host: NetBSD/vax ELF
385 NATDEPFILES="${NATDEPFILES} vax-bsd-nat.o bsd-kvm.o"
386 LOADLIBES='-lkvm'
387 ;;
388
389 esac
390 ;;
391 nto)
392 case ${gdb_host_cpu} in
393 i386)
394 # Host: Intel 386 running QNX.
395 NATDEPFILES='nto-procfs.o'
396 NAT_FILE='config/nm-nto.h'
397 ;;
398 esac
399 ;;
400 obsd)
401 case ${gdb_host_cpu} in
402 i386)
403 # Host: OpenBSD/i386 ELF
404 NATDEPFILES="${NATDEPFILES} obsd-nat.o x86-bsd-nat.o \
405 i386-bsd-nat.o i386-obsd-nat.o bsd-kvm.o"
406 LOADLIBES='-lkvm'
407 ;;
408 m68k)
409 # Host: OpenBSD/m68k
410 NATDEPFILES="${NATDEPFILES} m68k-bsd-nat.o bsd-kvm.o"
411 LOADLIBES='-lkvm'
412 ;;
413 m88k)
414 # Host: OpenBSD/m88k
415 NATDEPFILES="${NATDEPFILES} m88k-bsd-nat.o"
416 ;;
417 pa)
418 # Host: OpenBSD/hppa
419 NATDEPFILES="${NATDEPFILES} obsd-nat.o hppa-obsd-nat.o"
420 ;;
421 powerpc)
422 # Host: OpenBSD/powerpc
423 NATDEPFILES="${NATDEPFILES} obsd-nat.o ppc-obsd-nat.o bsd-kvm.o"
424 LOADLIBES='-lkvm'
425 ;;
426 vax)
427 # Host: OpenBSD/vax
428 NATDEPFILES="${NATDEPFILES} vax-bsd-nat.o bsd-kvm.o"
429 LOADLIBES='-lkvm'
430 ;;
431 esac
432 ;;
433 obsd64)
434 case ${gdb_host_cpu} in
435 i386)
436 # Host: OpenBSD/amd64
437 NATDEPFILES="${NATDEPFILES} obsd-nat.o amd64-nat.o \
438 x86-bsd-nat.o amd64-bsd-nat.o amd64-obsd-nat.o bsd-kvm.o"
439 LOADLIBES='-lkvm'
440 ;;
441 mips)
442 # Host: OpenBSD/mips64
443 NATDEPFILES="${NATDEPFILES} obsd-nat.o mips64-obsd-nat.o"
444 ;;
445 sparc)
446 # Host: OpenBSD/sparc64
447 NATDEPFILES="${NATDEPFILES} obsd-nat.o sparc64-obsd-nat.o \
448 sparc-nat.o bsd-kvm.o"
449 LOADLIBES='-lkvm'
450 ;;
451 esac
452 ;;
453 ppc64-linux)
454 case ${gdb_host_cpu} in
455 powerpc)
456 # Host: PowerPC64, running Linux
457 XM_CLIBS=
458 NATDEPFILES="${NATDEPFILES} ppc-linux-nat.o ppc-linux.o"
459 ;;
460 esac
461 ;;
462 sol2)
463 case ${gdb_host_cpu} in
464 sparc)
465 # Host: Solaris SPARC & UltraSPARC
466 NAT_FILE='nm-sol2.h'
467 NATDEPFILES='sparc-sol2-nat.o \
4fa7574e 468 fork-child.o fork-inferior.o \
21ea5acd 469 procfs.o proc-api.o proc-events.o proc-flags.o proc-why.o'
e50f25ec
SDJ
470 HAVE_NATIVE_GCORE_HOST=1
471 ;;
472 esac
473 ;;
474 sol2-64)
475 case ${gdb_host_cpu} in
476 i386)
477 # Host: Solaris x86_64
4fa7574e
RO
478 NATDEPFILES='fork-child.o fork-inferior.o \
479 amd64-nat.o i386-v4-nat.o i386-sol2-nat.o \
e50f25ec
SDJ
480 procfs.o proc-api.o proc-events.o proc-flags.o proc-why.o'
481 HAVE_NATIVE_GCORE_HOST=1
482 ;;
483 esac
484 ;;
485 spu-linux)
486 case ${gdb_host_cpu} in
487 powerpc)
488 # Target: Cell BE (PowerPC64 + SPU)
489 # This implements a 'pseudo-native' GDB running on the
490 # PPU side of the Cell BE and debugging the SPU side.
491 NAT_FILE=
492 NAT_CDEPS=
493 LOADLIBES=
494 NATDEPFILES='spu-linux-nat.o fork-child.o inf-ptrace.o \
21ea5acd
SDJ
495 linux-procfs.o linux-ptrace.o linux-waitpid.o \
496 linux-personality.o linux-namespaces.o'
e50f25ec
SDJ
497 ;;
498 esac
21ea5acd 499 ;;
21ea5acd 500esac