Move common aarch64 HW breakpoint/watchpoint code to nat/
[deliverable/binutils-gdb.git] / gdb / gdbserver / configure.srv
1 # Mappings from configuration triplets to gdbserver build options.
2 # This is invoked from the autoconf-generated configure script, to
3 # produce the appropriate Makefile substitutions.
4
5 # This file sets the following shell variables:
6 # srv_regobj The register protocol appropriate for this target.
7 # srv_tgtobj Any other target-specific modules appropriate
8 # for this target.
9 # srv_hostio_err The object implementing the hostio_last_error
10 # target method.
11 # srv_xmlfiles All XML files which should be available for
12 # gdbserver in this configuration.
13 # ipa_obj Any other target-specific modules appropriate
14 # for this target's in-process agent.
15 #
16 # In addition, on GNU/Linux the following shell variables will be set:
17 # srv_linux_regsets Set to "yes" if ptrace(PTRACE_GETREGS) and friends
18 # may be available on this platform; unset otherwise.
19 # They will only be used if <sys/ptrace.h> defines
20 # PTRACE_GETREGS.
21 # srv_linux_usrregs Set to "yes" if we can get at registers via
22 # PTRACE_PEEKUSR / PTRACE_POKEUSR.
23
24 # Default hostio_last_error implementation
25 srv_hostio_err_objs="hostio-errno.o"
26
27 srv_i386_regobj="i386.o i386-avx.o i386-avx512.o i386-mpx.o i386-mmx.o"
28 srv_i386_linux_regobj="i386-linux.o i386-avx-linux.o i386-avx512-linux.o i386-mpx-linux.o i386-mmx-linux.o"
29 srv_amd64_regobj="amd64.o amd64-avx.o amd64-avx512.o amd64-mpx.o x32.o x32-avx.o x32-avx512.o"
30 srv_amd64_linux_regobj="amd64-linux.o amd64-avx-linux.o amd64-avx512-linux.o amd64-mpx-linux.o x32-linux.o x32-avx-linux.o x32-avx512-linux.o"
31
32 ipa_i386_linux_regobj=i386-linux-ipa.o
33 ipa_amd64_linux_regobj=amd64-linux-ipa.o
34
35 srv_i386_32bit_xmlfiles="i386/32bit-core.xml i386/32bit-sse.xml i386/32bit-avx.xml i386/32bit-avx512.xml i386/32bit-mpx.xml"
36 srv_i386_64bit_xmlfiles="i386/64bit-core.xml i386/64bit-sse.xml i386/64bit-avx.xml i386/64bit-avx512.xml i386/x32-core.xml i386/64bit-mpx.xml"
37 srv_i386_xmlfiles="i386/i386.xml i386/i386-avx.xml i386/i386-avx512.xml i386/i386-mpx.xml i386/i386-mmx.xml $srv_i386_32bit_xmlfiles"
38 srv_amd64_xmlfiles="i386/amd64.xml i386/amd64-avx.xml i386/amd64-avx512.xml i386/x32.xml i386/x32-avx.xml i386/x32-avx512.xml i386/amd64-mpx.xml $srv_i386_64bit_xmlfiles"
39 srv_i386_linux_xmlfiles="i386/i386-linux.xml i386/i386-avx-linux.xml i386/i386-avx512-linux.xml i386/i386-mmx-linux.xml i386/32bit-linux.xml i386/i386-mpx-linux.xml $srv_i386_32bit_xmlfiles"
40 srv_amd64_linux_xmlfiles="i386/amd64-linux.xml i386/amd64-avx-linux.xml i386/amd64-avx512-linux.xml i386/64bit-linux.xml i386/amd64-mpx-linux.xml i386/x32-linux.xml i386/x32-avx-linux.xml i386/x32-avx512-linux.xml $srv_i386_64bit_xmlfiles"
41
42
43 # Linux object files. This is so we don't have to repeat
44 # these files over and over again.
45 srv_linux_obj="linux-low.o linux-osdata.o linux-procfs.o linux-ptrace.o linux-waitpid.o linux-personality.o linux-namespaces.o"
46
47 # Input is taken from the "${target}" variable.
48
49 case "${target}" in
50 aarch64*-*-linux*)
51 srv_regobj="aarch64.o"
52 srv_tgtobj="linux-aarch64-low.o aarch64-linux-hw-point.o"
53 srv_tgtobj="${srv_tgtobj} $srv_linux_obj"
54 srv_xmlfiles="aarch64.xml"
55 srv_xmlfiles="${srv_xmlfiles} aarch64-core.xml"
56 srv_xmlfiles="${srv_xmlfiles} aarch64-fpu.xml"
57 srv_linux_usrregs=yes
58 srv_linux_regsets=yes
59 srv_linux_thread_db=yes
60 ;;
61 arm*-*-linux*) srv_regobj="reg-arm.o arm-with-iwmmxt.o"
62 srv_regobj="${srv_regobj} arm-with-vfpv2.o"
63 srv_regobj="${srv_regobj} arm-with-vfpv3.o"
64 srv_regobj="${srv_regobj} arm-with-neon.o"
65 srv_tgtobj="$srv_linux_obj linux-arm-low.o"
66 srv_xmlfiles="arm-with-iwmmxt.xml"
67 srv_xmlfiles="${srv_xmlfiles} arm-with-vfpv2.xml"
68 srv_xmlfiles="${srv_xmlfiles} arm-with-vfpv3.xml"
69 srv_xmlfiles="${srv_xmlfiles} arm-with-neon.xml"
70 srv_xmlfiles="${srv_xmlfiles} arm-core.xml"
71 srv_xmlfiles="${srv_xmlfiles} xscale-iwmmxt.xml"
72 srv_xmlfiles="${srv_xmlfiles} arm-vfpv2.xml"
73 srv_xmlfiles="${srv_xmlfiles} arm-vfpv3.xml"
74 srv_linux_usrregs=yes
75 srv_linux_regsets=yes
76 srv_linux_thread_db=yes
77 ;;
78 arm*-*-mingw32ce*) srv_regobj=reg-arm.o
79 srv_tgtobj="win32-low.o win32-arm-low.o"
80 srv_tgtobj="${srv_tgtobj} wincecompat.o"
81 # hostio_last_error implementation is in win32-low.c
82 srv_hostio_err_objs=""
83 srv_mingw=yes
84 srv_mingwce=yes
85 ;;
86 bfin-*-*linux*) srv_regobj=reg-bfin.o
87 srv_tgtobj="$srv_linux_obj linux-bfin-low.o"
88 srv_linux_usrregs=yes
89 srv_linux_thread_db=yes
90 ;;
91 crisv32-*-linux*) srv_regobj=reg-crisv32.o
92 srv_tgtobj="$srv_linux_obj linux-crisv32-low.o"
93 srv_linux_regsets=yes
94 srv_linux_thread_db=yes
95 ;;
96 cris-*-linux*) srv_regobj=reg-cris.o
97 srv_tgtobj="$srv_linux_obj linux-cris-low.o"
98 srv_linux_usrregs=yes
99 srv_linux_thread_db=yes
100 ;;
101 i[34567]86-*-cygwin*) srv_regobj="$srv_i386_regobj"
102 srv_tgtobj="x86-low.o x86-dregs.o win32-low.o win32-i386-low.o"
103 srv_xmlfiles="$srv_i386_xmlfiles"
104 ;;
105 i[34567]86-*-linux*) srv_regobj="$srv_i386_linux_regobj"
106 srv_xmlfiles="$srv_i386_linux_xmlfiles"
107 if test "$gdb_cv_i386_is_x86_64" = yes ; then
108 srv_regobj="$srv_regobj $srv_amd64_linux_regobj"
109 srv_xmlfiles="${srv_xmlfiles} $srv_amd64_linux_xmlfiles"
110 fi
111 srv_tgtobj="$srv_linux_obj linux-x86-low.o x86-low.o x86-dregs.o i387-fp.o"
112 srv_tgtobj="${srv_tgtobj} linux-btrace.o x86-linux.o"
113 srv_tgtobj="${srv_tgtobj} x86-linux-dregs.o"
114 srv_linux_usrregs=yes
115 srv_linux_regsets=yes
116 srv_linux_thread_db=yes
117 srv_linux_btrace=yes
118 ipa_obj="${ipa_i386_linux_regobj} linux-i386-ipa.o"
119 ;;
120 i[34567]86-*-lynxos*) srv_regobj="i386.o"
121 srv_tgtobj="lynx-low.o lynx-i386-low.o"
122 srv_xmlfiles="i386/i386.xml"
123 srv_xmlfiles="${srv_xmlfiles} i386/32bit-core.xml"
124 srv_xmlfiles="${srv_xmlfiles} i386/32bit-sse.xml"
125 srv_lynxos=yes
126 ;;
127 i[34567]86-*-mingw32ce*)
128 srv_regobj="$srv_i386_regobj"
129 srv_tgtobj="x86-low.o x86-dregs.o win32-low.o win32-i386-low.o"
130 srv_tgtobj="${srv_tgtobj} wincecompat.o"
131 srv_xmlfiles="$srv_i386_xmlfiles"
132 # hostio_last_error implementation is in win32-low.c
133 srv_hostio_err_objs=""
134 srv_mingw=yes
135 srv_mingwce=yes
136 ;;
137 i[34567]86-*-mingw*) srv_regobj="$srv_i386_regobj"
138 srv_tgtobj="x86-low.o x86-dregs.o win32-low.o win32-i386-low.o"
139 srv_xmlfiles="$srv_i386_xmlfiles"
140 srv_mingw=yes
141 ;;
142 i[34567]86-*-nto*) srv_regobj="$srv_i386_regobj"
143 srv_tgtobj="nto-low.o nto-x86-low.o"
144 srv_xmlfiles="$srv_i386_xmlfiles"
145 srv_qnx="yes"
146 ;;
147 ia64-*-linux*) srv_regobj=reg-ia64.o
148 srv_tgtobj="$srv_linux_obj linux-ia64-low.o"
149 srv_linux_usrregs=yes
150 ;;
151 m32r*-*-linux*) srv_regobj=reg-m32r.o
152 srv_tgtobj="$srv_linux_obj linux-m32r-low.o"
153 srv_linux_usrregs=yes
154 srv_linux_thread_db=yes
155 ;;
156 m68*-*-linux*) if test "$gdb_cv_m68k_is_coldfire" = yes; then
157 srv_regobj=reg-cf.o
158 else
159 srv_regobj=reg-m68k.o
160 fi
161 srv_tgtobj="$srv_linux_obj linux-m68k-low.o"
162 srv_linux_usrregs=yes
163 srv_linux_regsets=yes
164 srv_linux_thread_db=yes
165 ;;
166 m68*-*-uclinux*) if test "$gdb_cv_m68k_is_coldfire" = yes; then
167 srv_regobj=reg-cf.o
168 else
169 srv_regobj=reg-m68k.o
170 fi
171 srv_tgtobj="$srv_linux_obj linux-m68k-low.o"
172 srv_linux_usrregs=yes
173 srv_linux_regsets=yes
174 srv_linux_thread_db=yes
175 ;;
176 mips*-*-linux*) srv_regobj="mips-linux.o"
177 srv_regobj="${srv_regobj} mips-dsp-linux.o"
178 srv_regobj="${srv_regobj} mips64-linux.o"
179 srv_regobj="${srv_regobj} mips64-dsp-linux.o"
180 srv_tgtobj="$srv_linux_obj linux-mips-low.o"
181 srv_tgtobj="${srv_tgtobj} mips-linux-watch.o"
182 srv_xmlfiles="mips-linux.xml"
183 srv_xmlfiles="${srv_xmlfiles} mips-dsp-linux.xml"
184 srv_xmlfiles="${srv_xmlfiles} mips-cpu.xml"
185 srv_xmlfiles="${srv_xmlfiles} mips-cp0.xml"
186 srv_xmlfiles="${srv_xmlfiles} mips-fpu.xml"
187 srv_xmlfiles="${srv_xmlfiles} mips-dsp.xml"
188 srv_xmlfiles="${srv_xmlfiles} mips64-linux.xml"
189 srv_xmlfiles="${srv_xmlfiles} mips64-dsp-linux.xml"
190 srv_xmlfiles="${srv_xmlfiles} mips64-cpu.xml"
191 srv_xmlfiles="${srv_xmlfiles} mips64-cp0.xml"
192 srv_xmlfiles="${srv_xmlfiles} mips64-fpu.xml"
193 srv_xmlfiles="${srv_xmlfiles} mips64-dsp.xml"
194 srv_linux_regsets=yes
195 srv_linux_usrregs=yes
196 srv_linux_thread_db=yes
197 ;;
198 nios2*-*-linux*) srv_regobj="nios2-linux.o"
199 srv_tgtobj="$srv_linux_obj linux-nios2-low.o"
200 srv_xmlfiles="nios2-linux.xml"
201 srv_xmlfiles="${srv_xmlfiles} nios2-cpu.xml"
202 srv_linux_regsets=yes
203 srv_linux_usrregs=yes
204 srv_linux_thread_db=yes
205 ;;
206 powerpc*-*-linux*) srv_regobj="powerpc-32l.o"
207 srv_regobj="${srv_regobj} powerpc-altivec32l.o"
208 srv_regobj="${srv_regobj} powerpc-cell32l.o"
209 srv_regobj="${srv_regobj} powerpc-vsx32l.o"
210 srv_regobj="${srv_regobj} powerpc-isa205-32l.o"
211 srv_regobj="${srv_regobj} powerpc-isa205-altivec32l.o"
212 srv_regobj="${srv_regobj} powerpc-isa205-vsx32l.o"
213 srv_regobj="${srv_regobj} powerpc-e500l.o"
214 srv_regobj="${srv_regobj} powerpc-64l.o"
215 srv_regobj="${srv_regobj} powerpc-altivec64l.o"
216 srv_regobj="${srv_regobj} powerpc-cell64l.o"
217 srv_regobj="${srv_regobj} powerpc-vsx64l.o"
218 srv_regobj="${srv_regobj} powerpc-isa205-64l.o"
219 srv_regobj="${srv_regobj} powerpc-isa205-altivec64l.o"
220 srv_regobj="${srv_regobj} powerpc-isa205-vsx64l.o"
221 srv_tgtobj="$srv_linux_obj linux-ppc-low.o ppc-linux.o"
222 srv_xmlfiles="rs6000/powerpc-32l.xml"
223 srv_xmlfiles="${srv_xmlfiles} rs6000/powerpc-altivec32l.xml"
224 srv_xmlfiles="${srv_xmlfiles} rs6000/powerpc-cell32l.xml"
225 srv_xmlfiles="${srv_xmlfiles} rs6000/powerpc-vsx32l.xml"
226 srv_xmlfiles="${srv_xmlfiles} rs6000/powerpc-isa205-32l.xml"
227 srv_xmlfiles="${srv_xmlfiles} rs6000/powerpc-isa205-altivec32l.xml"
228 srv_xmlfiles="${srv_xmlfiles} rs6000/powerpc-isa205-vsx32l.xml"
229 srv_xmlfiles="${srv_xmlfiles} rs6000/power-altivec.xml"
230 srv_xmlfiles="${srv_xmlfiles} rs6000/power-vsx.xml"
231 srv_xmlfiles="${srv_xmlfiles} rs6000/power-core.xml"
232 srv_xmlfiles="${srv_xmlfiles} rs6000/power-linux.xml"
233 srv_xmlfiles="${srv_xmlfiles} rs6000/power-fpu.xml"
234 srv_xmlfiles="${srv_xmlfiles} rs6000/power-fpu-isa205.xml"
235 srv_xmlfiles="${srv_xmlfiles} rs6000/powerpc-e500l.xml"
236 srv_xmlfiles="${srv_xmlfiles} rs6000/power-spe.xml"
237 srv_xmlfiles="${srv_xmlfiles} rs6000/powerpc-64l.xml"
238 srv_xmlfiles="${srv_xmlfiles} rs6000/powerpc-altivec64l.xml"
239 srv_xmlfiles="${srv_xmlfiles} rs6000/powerpc-cell64l.xml"
240 srv_xmlfiles="${srv_xmlfiles} rs6000/powerpc-vsx64l.xml"
241 srv_xmlfiles="${srv_xmlfiles} rs6000/powerpc-isa205-64l.xml"
242 srv_xmlfiles="${srv_xmlfiles} rs6000/powerpc-isa205-altivec64l.xml"
243 srv_xmlfiles="${srv_xmlfiles} rs6000/powerpc-isa205-vsx64l.xml"
244 srv_xmlfiles="${srv_xmlfiles} rs6000/power64-core.xml"
245 srv_xmlfiles="${srv_xmlfiles} rs6000/power64-linux.xml"
246 srv_linux_usrregs=yes
247 srv_linux_regsets=yes
248 srv_linux_thread_db=yes
249 ;;
250 powerpc-*-lynxos*) srv_regobj="powerpc-32.o"
251 srv_tgtobj="lynx-low.o lynx-ppc-low.o"
252 srv_xmlfiles="rs6000/powerpc-32.xml"
253 srv_xmlfiles="${srv_xmlfiles} rs6000/power-core.xml"
254 srv_xmlfiles="${srv_xmlfiles} rs6000/power-fpu.xml"
255 srv_lynxos=yes
256 ;;
257 s390*-*-linux*) srv_regobj="s390-linux32.o"
258 srv_regobj="${srv_regobj} s390-linux32v1.o"
259 srv_regobj="${srv_regobj} s390-linux32v2.o"
260 srv_regobj="${srv_regobj} s390-linux64.o"
261 srv_regobj="${srv_regobj} s390-linux64v1.o"
262 srv_regobj="${srv_regobj} s390-linux64v2.o"
263 srv_regobj="${srv_regobj} s390-te-linux64.o"
264 srv_regobj="${srv_regobj} s390-vx-linux64.o"
265 srv_regobj="${srv_regobj} s390-tevx-linux64.o"
266 srv_regobj="${srv_regobj} s390x-linux64.o"
267 srv_regobj="${srv_regobj} s390x-linux64v1.o"
268 srv_regobj="${srv_regobj} s390x-linux64v2.o"
269 srv_regobj="${srv_regobj} s390x-te-linux64.o"
270 srv_regobj="${srv_regobj} s390x-vx-linux64.o"
271 srv_regobj="${srv_regobj} s390x-tevx-linux64.o"
272 srv_tgtobj="$srv_linux_obj linux-s390-low.o"
273 srv_xmlfiles="s390-linux32.xml"
274 srv_xmlfiles="${srv_xmlfiles} s390-linux32v1.xml"
275 srv_xmlfiles="${srv_xmlfiles} s390-linux32v2.xml"
276 srv_xmlfiles="${srv_xmlfiles} s390-linux64.xml"
277 srv_xmlfiles="${srv_xmlfiles} s390-linux64v1.xml"
278 srv_xmlfiles="${srv_xmlfiles} s390-linux64v2.xml"
279 srv_xmlfiles="${srv_xmlfiles} s390-te-linux64.xml"
280 srv_xmlfiles="${srv_xmlfiles} s390-vx-linux64.xml"
281 srv_xmlfiles="${srv_xmlfiles} s390-tevx-linux64.xml"
282 srv_xmlfiles="${srv_xmlfiles} s390x-linux64.xml"
283 srv_xmlfiles="${srv_xmlfiles} s390x-linux64v1.xml"
284 srv_xmlfiles="${srv_xmlfiles} s390x-linux64v2.xml"
285 srv_xmlfiles="${srv_xmlfiles} s390x-te-linux64.xml"
286 srv_xmlfiles="${srv_xmlfiles} s390x-vx-linux64.xml"
287 srv_xmlfiles="${srv_xmlfiles} s390x-tevx-linux64.xml"
288 srv_xmlfiles="${srv_xmlfiles} s390-core32.xml"
289 srv_xmlfiles="${srv_xmlfiles} s390-core64.xml"
290 srv_xmlfiles="${srv_xmlfiles} s390x-core64.xml"
291 srv_xmlfiles="${srv_xmlfiles} s390-acr.xml"
292 srv_xmlfiles="${srv_xmlfiles} s390-fpr.xml"
293 srv_xmlfiles="${srv_xmlfiles} s390-tdb.xml"
294 srv_xmlfiles="${srv_xmlfiles} s390-vx.xml"
295 srv_linux_usrregs=yes
296 srv_linux_regsets=yes
297 srv_linux_thread_db=yes
298 ;;
299 sh*-*-linux*) srv_regobj=reg-sh.o
300 srv_tgtobj="$srv_linux_obj linux-sh-low.o"
301 srv_linux_usrregs=yes
302 srv_linux_regsets=yes
303 srv_linux_thread_db=yes
304 ;;
305 sparc*-*-linux*) srv_regobj=reg-sparc64.o
306 srv_tgtobj="$srv_linux_obj linux-sparc-low.o"
307 srv_linux_regsets=yes
308 srv_linux_thread_db=yes
309 ;;
310 spu*-*-*) srv_regobj=reg-spu.o
311 srv_tgtobj="spu-low.o"
312 ;;
313 tic6x-*-uclinux) srv_regobj="tic6x-c64xp-linux.o"
314 srv_regobj="${srv_regobj} tic6x-c64x-linux.o"
315 srv_regobj="${srv_regobj} tic6x-c62x-linux.o"
316 srv_xmlfiles="tic6x-c64xp-linux.xml"
317 srv_xmlfiles="${srv_xmlfiles} tic6x-c64x-linux.xml"
318 srv_xmlfiles="${srv_xmlfiles} tic6x-c62x-linux.xml"
319 srv_xmlfiles="${srv_xmlfiles} tic6x-core.xml"
320 srv_xmlfiles="${srv_xmlfiles} tic6x-gp.xml"
321 srv_xmlfiles="${srv_xmlfiles} tic6x-c6xp.xml"
322 srv_tgtobj="$srv_linux_obj linux-tic6x-low.o"
323 srv_linux_regsets=yes
324 srv_linux_usrregs=yes
325 srv_linux_thread_db=yes
326 ;;
327 x86_64-*-linux*) srv_regobj="$srv_amd64_linux_regobj $srv_i386_linux_regobj"
328 srv_tgtobj="$srv_linux_obj linux-x86-low.o x86-low.o x86-dregs.o i387-fp.o"
329 srv_tgtobj="${srv_tgtobj} linux-btrace.o x86-linux.o"
330 srv_tgtobj="${srv_tgtobj} x86-linux-dregs.o"
331 srv_xmlfiles="$srv_i386_linux_xmlfiles $srv_amd64_linux_xmlfiles"
332 srv_linux_usrregs=yes # This is for i386 progs.
333 srv_linux_regsets=yes
334 srv_linux_thread_db=yes
335 srv_linux_btrace=yes
336 ipa_obj="${ipa_amd64_linux_regobj} linux-amd64-ipa.o"
337 ;;
338 x86_64-*-mingw*) srv_regobj="$srv_amd64_regobj"
339 srv_tgtobj="x86-low.o x86-dregs.o i387-fp.o win32-low.o win32-i386-low.o"
340 srv_xmlfiles="$srv_i386_xmlfiles $srv_amd64_xmlfiles"
341 srv_mingw=yes
342 ;;
343 x86_64-*-cygwin*) srv_regobj="$srv_amd64_regobj"
344 srv_tgtobj="x86-low.o x86-dregs.o i387-fp.o win32-low.o win32-i386-low.o"
345 srv_xmlfiles="$srv_i386_xmlfiles"
346 ;;
347
348 xtensa*-*-linux*) srv_regobj=reg-xtensa.o
349 srv_tgtobj="$srv_linux_obj linux-xtensa-low.o"
350 srv_linux_regsets=yes
351 ;;
352 tilegx-*-linux*) srv_regobj=reg-tilegx.o
353 srv_regobj="${srv_regobj} reg-tilegx32.o"
354 srv_tgtobj="$srv_linux_obj linux-tile-low.o"
355 srv_linux_regsets=yes
356 srv_linux_thread_db=yes
357 ;;
358 *) echo "Error: target not supported by gdbserver."
359 exit 1
360 ;;
361 esac
This page took 0.069123 seconds and 4 git commands to generate.