gdb/gdbserver/
[external/binutils.git] / gdb / gdbserver / configure.srv
index f0e4dd3..99187a5 100644 (file)
@@ -6,6 +6,12 @@
 #   srv_regobj         The register protocol appropriate for this target.
 #   srv_tgtobj         Any other target-specific modules appropriate
 #                      for this target.
+#   srv_hostio_err     The object implementing the hostio_last_error
+#                      target method.
+#   srv_xmlfiles       All XML files which should be available for
+#                      gdbserver in this configuration.
+#   ipa_obj            Any other target-specific modules appropriate
+#                      for this target's in-process agent.
 #
 # In addition, on GNU/Linux the following shell variables will be set:
 #   srv_linux_regsets  Set to "yes" if ptrace(PTRACE_GETREGS) and friends
 #   srv_linux_usrregs  Set to "yes" if we can get at registers via
 #                      PTRACE_PEEKUSR / PTRACE_POKEUSR.
 
+# Default hostio_last_error implementation
+srv_hostio_err_objs="hostio-errno.o"
+
+srv_i386_regobj="i386.o i386-avx.o i386-mmx.o"
+srv_i386_linux_regobj="i386-linux.o i386-avx-linux.o i386-mmx-linux.o"
+srv_amd64_regobj="amd64.o amd64-avx.o"
+srv_amd64_linux_regobj="amd64-linux.o amd64-avx-linux.o"
+
+ipa_i386_linux_regobj=i386-linux-ipa.o
+ipa_amd64_linux_regobj=amd64-linux-ipa.o
+
+srv_i386_32bit_xmlfiles="i386/32bit-core.xml i386/32bit-sse.xml i386/32bit-avx.xml"
+srv_i386_64bit_xmlfiles="i386/64bit-core.xml i386/64bit-sse.xml i386/64bit-avx.xml"
+srv_i386_xmlfiles="i386/i386.xml i386/i386-avx.xml i386/i386-mmx.xml $srv_i386_32bit_xmlfiles"
+srv_amd64_xmlfiles="i386/amd64.xml i386/amd64-avx.xml $srv_i386_64bit_xmlfiles"
+srv_i386_linux_xmlfiles="i386/i386-linux.xml i386/i386-avx-linux.xml i386/i386-mmx-linux.xml i386/32bit-linux.xml $srv_i386_32bit_xmlfiles"
+srv_amd64_linux_xmlfiles="i386/amd64-linux.xml i386/amd64-avx-linux.xml i386/64bit-linux.xml $srv_i386_64bit_xmlfiles"
+
 # Input is taken from the "${target}" variable.
 
 case "${target}" in
-  arm*-*-linux*)       srv_regobj=reg-arm.o
+  arm*-*-linux*)       srv_regobj="reg-arm.o arm-with-iwmmxt.o"
+                       srv_regobj="${srv_regobj} arm-with-vfpv2.o"
+                       srv_regobj="${srv_regobj} arm-with-vfpv3.o"
+                       srv_regobj="${srv_regobj} arm-with-neon.o"
                        srv_tgtobj="linux-low.o linux-arm-low.o"
+                       srv_xmlfiles="arm-with-iwmmxt.xml"
+                       srv_xmlfiles="${srv_xmlfiles} arm-with-vfpv2.xml"
+                       srv_xmlfiles="${srv_xmlfiles} arm-with-vfpv3.xml"
+                       srv_xmlfiles="${srv_xmlfiles} arm-with-neon.xml"
+                       srv_xmlfiles="${srv_xmlfiles} arm-core.xml"
+                       srv_xmlfiles="${srv_xmlfiles} xscale-iwmmxt.xml"
+                       srv_xmlfiles="${srv_xmlfiles} arm-vfpv2.xml"
+                       srv_xmlfiles="${srv_xmlfiles} arm-vfpv3.xml"
                        srv_linux_usrregs=yes
+                       srv_linux_regsets=yes
                        srv_linux_thread_db=yes
                        ;;
+  arm*-*-mingw32ce*)   srv_regobj=reg-arm.o
+                       srv_tgtobj="win32-low.o win32-arm-low.o"
+                       srv_tgtobj="${srv_tgtobj} wincecompat.o"
+                       # hostio_last_error implementation is in win32-low.c
+                       srv_hostio_err_objs=""
+                       srv_mingw=yes
+                       srv_mingwce=yes
+                       ;;
   crisv32-*-linux*)    srv_regobj=reg-crisv32.o
                        srv_tgtobj="linux-low.o linux-crisv32-low.o"
                        srv_linux_regsets=yes
@@ -33,11 +77,41 @@ case "${target}" in
                        srv_linux_usrregs=yes
                        srv_linux_thread_db=yes
                        ;;
-  i[34567]86-*-linux*) srv_regobj=reg-i386-linux.o
-                       srv_tgtobj="linux-low.o linux-i386-low.o i387-fp.o"
+  i[34567]86-*-cygwin*)        srv_regobj="$srv_i386_regobj"
+                       srv_tgtobj="i386-low.o win32-low.o win32-i386-low.o"
+                       srv_xmlfiles="$srv_i386_xmlfiles"
+                       ;;
+  i[34567]86-*-linux*) srv_regobj="$srv_i386_linux_regobj"
+                       srv_xmlfiles="$srv_i386_linux_xmlfiles"
+                       if test "$gdb_cv_i386_is_x86_64" = yes ; then
+                           srv_regobj="$srv_regobj $srv_amd64_linux_regobj"
+                           srv_xmlfiles="${srv_xmlfiles} $srv_amd64_linux_xmlfiles"
+                       fi
+                       srv_tgtobj="linux-low.o linux-x86-low.o i386-low.o i387-fp.o"
                        srv_linux_usrregs=yes
                        srv_linux_regsets=yes
                        srv_linux_thread_db=yes
+                       ipa_obj="${ipa_i386_linux_regobj} linux-i386-ipa.o"
+                       ;;
+  i[34567]86-*-mingw32ce*)
+                       srv_regobj="$srv_i386_regobj"
+                       srv_tgtobj="i386-low.o win32-low.o win32-i386-low.o"
+                       srv_tgtobj="${srv_tgtobj} wincecompat.o"
+                       srv_xmlfiles="$srv_i386_xmlfiles"
+                       # hostio_last_error implementation is in win32-low.c
+                       srv_hostio_err_objs=""
+                       srv_mingw=yes
+                       srv_mingwce=yes
+                       ;;
+  i[34567]86-*-mingw*) srv_regobj="$srv_i386_regobj"
+                       srv_tgtobj="i386-low.o win32-low.o win32-i386-low.o"
+                       srv_xmlfiles="$srv_i386_xmlfiles"
+                       srv_mingw=yes
+                       ;;
+  i[34567]86-*-nto*)   srv_regobj="$srv_i386_regobj"
+                       srv_tgtobj="nto-low.o nto-x86-low.o"
+                       srv_xmlfiles="$srv_i386_xmlfiles"
+                       srv_qnx="yes"
                        ;;
   ia64-*-linux*)       srv_regobj=reg-ia64.o
                        srv_tgtobj="linux-low.o linux-ia64-low.o"
@@ -48,51 +122,137 @@ case "${target}" in
                        srv_linux_usrregs=yes
                        srv_linux_thread_db=yes
                        ;;
-  m68*-*-linux*)       srv_regobj=reg-m68k.o
+  m68*-*-linux*)       if test "$gdb_cv_m68k_is_coldfire" = yes; then
+                          srv_regobj=reg-cf.o
+                        else
+                          srv_regobj=reg-m68k.o
+                        fi
                        srv_tgtobj="linux-low.o linux-m68k-low.o"
                        srv_linux_usrregs=yes
                        srv_linux_regsets=yes
                        srv_linux_thread_db=yes
                        ;;
-  mips*-*-linux*)      srv_regobj=reg-mips.o
-                       srv_tgtobj="linux-low.o linux-mips-low.o"
+  m68*-*-uclinux*)     if test "$gdb_cv_m68k_is_coldfire" = yes; then
+                          srv_regobj=reg-cf.o
+                        else
+                          srv_regobj=reg-m68k.o
+                        fi
+                       srv_tgtobj="linux-low.o linux-m68k-low.o"
                        srv_linux_usrregs=yes
+                       srv_linux_regsets=yes
                        srv_linux_thread_db=yes
                        ;;
-  powerpc64-*-linux*)  srv_regobj=reg-ppc64.o
-                       srv_tgtobj="linux-low.o linux-ppc64-low.o"
-                       srv_linux_usrregs=yes
+  mips*-*-linux*)      srv_regobj="mips-linux.o mips64-linux.o"
+                       srv_tgtobj="linux-low.o linux-mips-low.o"
+                       srv_xmlfiles="mips-linux.xml"
+                       srv_xmlfiles="${srv_xmlfiles} mips-cpu.xml"
+                       srv_xmlfiles="${srv_xmlfiles} mips-cp0.xml"
+                       srv_xmlfiles="${srv_xmlfiles} mips-fpu.xml"
+                       srv_xmlfiles="${srv_xmlfiles} mips64-linux.xml"
+                       srv_xmlfiles="${srv_xmlfiles} mips64-cpu.xml"
+                       srv_xmlfiles="${srv_xmlfiles} mips64-cp0.xml"
+                       srv_xmlfiles="${srv_xmlfiles} mips64-fpu.xml"
                        srv_linux_regsets=yes
+                       srv_linux_usrregs=yes
                        srv_linux_thread_db=yes
                        ;;
-  powerpc-*-linux*)    srv_regobj=reg-ppc.o
+  powerpc*-*-linux*)   srv_regobj="powerpc-32l.o"
+                       srv_regobj="${srv_regobj} powerpc-altivec32l.o"
+                       srv_regobj="${srv_regobj} powerpc-cell32l.o"
+                       srv_regobj="${srv_regobj} powerpc-vsx32l.o"
+                       srv_regobj="${srv_regobj} powerpc-isa205-32l.o"
+                       srv_regobj="${srv_regobj} powerpc-isa205-altivec32l.o"
+                       srv_regobj="${srv_regobj} powerpc-isa205-vsx32l.o"
+                       srv_regobj="${srv_regobj} powerpc-e500l.o"
+                       srv_regobj="${srv_regobj} powerpc-64l.o"
+                       srv_regobj="${srv_regobj} powerpc-altivec64l.o"
+                       srv_regobj="${srv_regobj} powerpc-cell64l.o"
+                       srv_regobj="${srv_regobj} powerpc-vsx64l.o"
+                       srv_regobj="${srv_regobj} powerpc-isa205-64l.o"
+                       srv_regobj="${srv_regobj} powerpc-isa205-altivec64l.o"
+                       srv_regobj="${srv_regobj} powerpc-isa205-vsx64l.o"
                        srv_tgtobj="linux-low.o linux-ppc-low.o"
+                       srv_xmlfiles="rs6000/powerpc-32l.xml"
+                       srv_xmlfiles="${srv_xmlfiles} rs6000/powerpc-altivec32l.xml"
+                       srv_xmlfiles="${srv_xmlfiles} rs6000/powerpc-cell32l.xml"
+                       srv_xmlfiles="${srv_xmlfiles} rs6000/powerpc-vsx32l.xml"
+                       srv_xmlfiles="${srv_xmlfiles} rs6000/powerpc-isa205-32l.xml"
+                       srv_xmlfiles="${srv_xmlfiles} rs6000/powerpc-isa205-altivec32l.xml"
+                       srv_xmlfiles="${srv_xmlfiles} rs6000/powerpc-isa205-vsx32l.xml"
+                       srv_xmlfiles="${srv_xmlfiles} rs6000/power-altivec.xml"
+                       srv_xmlfiles="${srv_xmlfiles} rs6000/power-vsx.xml"
+                       srv_xmlfiles="${srv_xmlfiles} rs6000/power-core.xml"
+                       srv_xmlfiles="${srv_xmlfiles} rs6000/power-linux.xml"
+                       srv_xmlfiles="${srv_xmlfiles} rs6000/power-fpu.xml"
+                       srv_xmlfiles="${srv_xmlfiles} rs6000/power-fpu-isa205.xml"
+                       srv_xmlfiles="${srv_xmlfiles} rs6000/powerpc-e500l.xml"
+                       srv_xmlfiles="${srv_xmlfiles} rs6000/power-spe.xml"
+                       srv_xmlfiles="${srv_xmlfiles} rs6000/powerpc-64l.xml"
+                       srv_xmlfiles="${srv_xmlfiles} rs6000/powerpc-altivec64l.xml"
+                       srv_xmlfiles="${srv_xmlfiles} rs6000/powerpc-cell64l.xml"
+                       srv_xmlfiles="${srv_xmlfiles} rs6000/powerpc-vsx64l.xml"
+                       srv_xmlfiles="${srv_xmlfiles} rs6000/powerpc-isa205-64l.xml"
+                       srv_xmlfiles="${srv_xmlfiles} rs6000/powerpc-isa205-altivec64l.xml"
+                       srv_xmlfiles="${srv_xmlfiles} rs6000/powerpc-isa205-vsx64l.xml"
+                       srv_xmlfiles="${srv_xmlfiles} rs6000/power64-core.xml"
+                       srv_xmlfiles="${srv_xmlfiles} rs6000/power64-linux.xml"
                        srv_linux_usrregs=yes
                        srv_linux_regsets=yes
                        srv_linux_thread_db=yes
                        ;;
-  s390-*-linux*)       srv_regobj=reg-s390.o
-                       srv_tgtobj="linux-low.o linux-s390-low.o"
-                       srv_linux_usrregs=yes
-                       ;;
-  s390x-*-linux*)      srv_regobj=reg-s390x.o
+  s390*-*-linux*)      srv_regobj="s390-linux32.o"
+                       srv_regobj="${srv_regobj} s390-linux64.o"
+                       srv_regobj="${srv_regobj} s390x-linux64.o"
                        srv_tgtobj="linux-low.o linux-s390-low.o"
+                       srv_xmlfiles="s390-linux32.xml"
+                       srv_xmlfiles="${srv_xmlfiles} s390-linux64.xml"
+                       srv_xmlfiles="${srv_xmlfiles} s390x-linux64.xml"
+                       srv_xmlfiles="${srv_xmlfiles} s390-core32.xml"
+                       srv_xmlfiles="${srv_xmlfiles} s390-core64.xml"
+                       srv_xmlfiles="${srv_xmlfiles} s390x-core64.xml"
+                       srv_xmlfiles="${srv_xmlfiles} s390-acr.xml"
+                       srv_xmlfiles="${srv_xmlfiles} s390-fpr.xml"
                        srv_linux_usrregs=yes
+                       srv_linux_regsets=yes
+                       srv_linux_thread_db=yes
                        ;;
   sh*-*-linux*)                srv_regobj=reg-sh.o
                        srv_tgtobj="linux-low.o linux-sh-low.o"
                        srv_linux_usrregs=yes
+                       srv_linux_regsets=yes
                        srv_linux_thread_db=yes
                        ;;
-  x86_64-*-linux*)     srv_regobj=reg-x86-64.o
-                       srv_tgtobj="linux-low.o linux-x86-64-low.o i387-fp.o"
+  sparc*-*-linux*)     srv_regobj=reg-sparc64.o
+                       srv_tgtobj="linux-low.o linux-sparc-low.o"
                        srv_linux_regsets=yes
+                       srv_linux_thread_db=yes
+                       ;;
+  spu*-*-*)            srv_regobj=reg-spu.o
+                       srv_tgtobj="spu-low.o"
                        ;;
+  x86_64-*-linux*)     srv_regobj="$srv_amd64_linux_regobj $srv_i386_linux_regobj"
+                       srv_tgtobj="linux-low.o linux-x86-low.o i386-low.o i387-fp.o"
+                       srv_xmlfiles="$srv_i386_linux_xmlfiles $srv_amd64_linux_xmlfiles"
+                       srv_linux_usrregs=yes # This is for i386 progs.
+                       srv_linux_regsets=yes
+                       srv_linux_thread_db=yes
+                       ipa_obj="${ipa_amd64_linux_regobj} linux-amd64-ipa.o"
+                       ;;
+  x86_64-*-mingw*)     srv_regobj="$srv_amd64_regobj"
+                       srv_tgtobj="i386-low.o i387-fp.o win32-low.o win32-i386-low.o"
+                       srv_xmlfiles="$srv_i386_xmlfiles $srv_amd64_xmlfiles"
+                       srv_mingw=yes
+                       ;;
+
   xscale*-*-linux*)    srv_regobj=reg-arm.o
                        srv_tgtobj="linux-low.o linux-arm-low.o"
                        srv_linux_usrregs=yes
                        srv_linux_thread_db=yes
                        ;;
+  xtensa*-*-linux*)    srv_regobj=reg-xtensa.o
+                       srv_tgtobj="linux-low.o linux-xtensa-low.o"
+                       srv_linux_regsets=yes
+                       ;;
   *)                   echo "Error: target not supported by gdbserver."
                        exit 1
                        ;;