This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[RFA] gdbserver 1/3 - top level config


This is the first of three interdependent patches to revamp gdbserver. 
This first patch:
  - always builds gdbserver if it is configured
  - configures gdbserver only for Linux/{ARM,ia64,i386,m68k,mips,ppc,sh}.

Those seven targets will hereafter be referred to as "The Seven",
since I'm really tired of typing that list over and over :)

This disables all the non-Linux targets, which I'm reasonably certain
do not work.  At least the NetBSD targets should be very easily
reconstitutable.  It also disables s390 and x86-64.  That's just
because I didn't have the necessary information handy for either, or a
way to test either.  I'll try to get those two fixed soon, as well as
Sparc/Sparc64 which did not work at all.

Actually, reading over this list, I believe that SH support is actually
being contributed by this patch.  I did it six or eight months ago, but
in this new framework, so it couldn't be contributed before this.

This patch contains only changes to top-level configury.  OK to commit?

-- 
Daniel Jacobowitz                           Carnegie Mellon University
MontaVista Software                         Debian GNU/Linux Developer

2002-02-05  Daniel Jacobowitz  <drow@mvista.com>

	* configure.tgt: Configure gdbserver only for known working
	targets.  Set ${build_gdbserver} instead of modifying ${configdirs}.
	* configure.in: Check ${build_gdbserver}.  Put gdbserver/ into
	SUBDIRS if it is configured.
	* configure: Regenerated.

Index: configure.tgt
===================================================================
RCS file: /cvs/src/src/gdb/configure.tgt,v
retrieving revision 1.51
diff -u -r1.51 configure.tgt
--- configure.tgt	2002/01/24 02:48:04	1.51
+++ configure.tgt	2002/02/04 23:12:18
@@ -52,8 +52,8 @@
 arc-*-*)		gdb_target=arc ;;
 
 arm*-wince-pe)		gdb_target=wince ;;
-arm*-*-linux*)		gdb_target=linux 
-			configdirs="$configdirs gdbserver"
+arm*-*-linux*)		gdb_target=linux
+			build_gdbserver=yes
 			;;
 arm*-*-netbsd*)		gdb_target=nbsd ;;
 arm*-*-* | thumb*-*-* | strongarm*-*-*)
@@ -76,14 +76,12 @@
 fr30-*-elf*)		gdb_target=fr30 ;;
 
 
-hppa*-*-bsd*)		gdb_target=hppabsd
-		configdirs="${configdirs} gdbserver" ;;
+hppa*-*-bsd*)		gdb_target=hppabsd ;;
 hppa*-*-pro*)		gdb_target=hppapro ;;
 hppa*64*-*-hpux11*)	gdb_target=hppa64 ;;
 hppa*-*-hpux*)		gdb_target=hppahpux ;;
 hppa*-*-hiux*)		gdb_target=hppahpux ;;
-hppa*-*-osf*)		gdb_target=hppaosf
-		configdirs="${configdirs} gdbserver" ;;
+hppa*-*-osf*)		gdb_target=hppaosf ;;
 
 i[3456]86-sequent-bsd*)	gdb_target=symmetry ;;
 i[3456]86-sequent-sysv4*) gdb_target=ptx4 ;;
@@ -95,15 +93,12 @@
 i[3456]86-*-aix*)	gdb_target=i386aix ;;
 i[3456]86-*-bsd*)	gdb_target=i386bsd ;;
 i[3456]86-*-freebsd*)	gdb_target=fbsd ;;
-i[3456]86-*-netbsdelf*)	gdb_target=nbsdelf
-		configdirs="${configdirs} gdbserver" ;;
-i[3456]86-*-netbsd*)	gdb_target=nbsd 
-		configdirs="${configdirs} gdbserver" ;;
+i[3456]86-*-netbsdelf*)	gdb_target=nbsdelf ;;
+i[3456]86-*-netbsd*)	gdb_target=nbsd ;;
 i[3456]86-*-os9k)	gdb_target=i386os9k ;;
 i[3456]86-*-go32*)	gdb_target=i386aout ;;
 i[3456]86-*-msdosdjgpp*) gdb_target=go32 ;;
-i[3456]86-*-lynxos*)	gdb_target=i386lynx
-		configdirs="${configdirs} gdbserver" ;;
+i[3456]86-*-lynxos*)	gdb_target=i386lynx ;;
 i[3456]86-*-openbsd*)	gdb_target=obsd ;;
 i[3456]86-*-solaris*)	gdb_target=i386sol2 ;;
 i[3456]86-*-sysv4.2*)	gdb_target=i386v42mp ;;
@@ -116,9 +111,8 @@
 i[3456]86-*-sco*)	gdb_target=i386v ;;
 i[3456]86-*-sysv*)	gdb_target=i386v ;;
 i[3456]86-*-linux*)	gdb_target=linux
-		configdirs="${configdirs} gdbserver" ;;
-i[3456]86-pc-linux-gnu)	gdb_target=linux
-		configdirs="${configdirs} gdbserver" ;;
+			build_gdbserver=yes
+			;;
 i[3456]86-*-isc*)	gdb_target=i386v ;;
 i[3456]86-*-mach3*)	gdb_target=i386m3 ;;
 i[3456]86-*-gnu*)	gdb_target=i386gnu ;;
@@ -138,7 +132,9 @@
 i960-*-vxworks*)	gdb_target=vxworks960 ;;
 
 ia64-*-aix*)		gdb_target=aix ;;
-ia64-*-linux*)		gdb_target=linux ;;
+ia64-*-linux*)		gdb_target=linux
+			build_gdbserver=yes
+			;;
 
 m32r-*-elf*)		gdb_target=m32r ;;
 
@@ -161,15 +157,13 @@
 m68*-*-coff*)		gdb_target=monitor ;;
 m68*-*-elf*)		gdb_target=monitor ;;
 m68*-*-linux*)		gdb_target=linux
-		configdirs="${configdirs} gdbserver" ;;
-m68*-*-lynxos*)		gdb_target=m68klynx
-		configdirs="${configdirs} gdbserver" ;;
-m68*-*-netbsd*)		gdb_target=nbsd
-		configdirs="${configdirs} gdbserver" ;;
+			build_gdbserver=yes
+			;;
+m68*-*-lynxos*)		gdb_target=m68klynx ;;
+m68*-*-netbsd*)		gdb_target=nbsd ;;
 m68*-*-os68k*)		gdb_target=os68k ;;
 m68*-*-sunos3*)		gdb_target=sun3os3 ;;
-m68*-*-sunos4*)		gdb_target=sun3os4
-		configdirs="${configdirs} gdbserver" ;;
+m68*-*-sunos4*)		gdb_target=sun3os4 ;;
 m68*-*-sysv4*)		gdb_target=m68kv4 ;;
 m68*-*-vxworks*)	gdb_target=vxworks68 ;;
 
@@ -192,8 +186,7 @@
 mips64*vr4100*el-*-elf*)	gdb_target=vr4300el ;;
 mips64*vr4100*-*-elf*)	gdb_target=vr4100 ;;
 mips64*vr5000*el-*-elf*)	gdb_target=vr5000el ;;
-mips64*vr5000*-*-elf*)	gdb_target=vr5000
-		configdirs="${configdirs} gdbserver" ;;
+mips64*vr5000*-*-elf*)	gdb_target=vr5000 ;;
 mips*tx39*el*-elf*)	gdb_target=tx39l ;;
 mips*tx39*-elf*)	gdb_target=tx39 ;;
 mips64*el-*-elf*)	gdb_target=embedl64 ;;
@@ -208,7 +201,9 @@
 mips*-sgi-irix6*)	gdb_target=irix6 ;;
 mips*-sgi-*)		gdb_target=irix3 ;;
 mips*-sony-*)		gdb_target=bigmips ;;
-mips*-*-linux*)		gdb_target=linux ;;
+mips*-*-linux*)		gdb_target=linux
+			build_gdbserver=yes
+			;;
 mips*-*-mach3*)		gdb_target=mipsm3 ;;
 mips*-*-sysv4*)		gdb_target=mipsv4 ;;
 mips*-*-sysv*)		gdb_target=bigmips ;;
@@ -220,11 +215,9 @@
 
 none-*-*)		gdb_target=none ;;
 
-ns32k-*-netbsd*)	gdb_target=nbsd
-		configdirs="${configdirs} gdbserver" ;;
+ns32k-*-netbsd*)	gdb_target=nbsd ;;
 
-powerpc-*-netbsd*)	gdb_target=nbsd
-		configdirs="${configdirs} gdbserver" ;;
+powerpc-*-netbsd*)	gdb_target=nbsd ;;
 powerpc-*-aix*)		gdb_target=aix ;;
 powerpc-*-eabi* | powerpc-*-sysv* | powerpc-*-elf*)
 			if test -f ../sim/ppc/Makefile; then
@@ -238,11 +231,12 @@
 			else
 			  gdb_target=ppcle-eabi
 			fi ;;
-powerpc-*-linux*)	gdb_target=linux ;;
+powerpc-*-linux*)	gdb_target=linux
+			build_gdbserver=yes
+			;;
 powerpc-*-vxworks*)	gdb_target=vxworks ;;
 
-rs6000-*-lynxos*)	gdb_target=rs6000lynx
-		configdirs="${configdirs} gdbserver" ;;
+rs6000-*-lynxos*)	gdb_target=rs6000lynx ;;
 rs6000-*-aix4*)		gdb_target=aix4 ;;
 rs6000-*-*)		gdb_target=rs6000 ;;
 
@@ -253,18 +247,18 @@
 sh-*-hms)		gdb_target=embed ;;
 sh-*-coff*)		gdb_target=embed ;;
 sh-*-elf*)		gdb_target=embed ;;
-sh-*-linux*)		gdb_target=linux ;;
+sh-*-linux*)		gdb_target=linux
+			build_gdbserver=yes
+			;;
 
 sparc-*-aout*)		gdb_target=sparc-em ;;
 sparc-*-coff*)		gdb_target=sparc-em ;;
 sparc-*-elf*)		gdb_target=sparc-em ;;
 sparc-*-linux*)		gdb_target=linux ;;
-sparc-*-lynxos*)	gdb_target=sparclynx
-		configdirs="${configdirs} gdbserver" ;;
+sparc-*-lynxos*)	gdb_target=sparclynx ;;
 sparc-*-netbsd*)	gdb_target=nbsd ;;
 sparc-*-solaris2*)	gdb_target=sun4sol2 ;;
-sparc-*-sunos4*)	gdb_target=sun4os4
-		configdirs="${configdirs} gdbserver" ;;
+sparc-*-sunos4*)	gdb_target=sun4os4 ;;
 sparc-*-sunos5*)	gdb_target=sun4sol2 ;;
 sparc-*-vxworks*)	gdb_target=vxsparc ;;
 sparc-*-*)		gdb_target=sun4os4 ;;
@@ -295,8 +289,7 @@
 			esac
 			;;
 
-x86_64-*-linux*)	gdb_target=x86-64linux
-			configdirs="${configdirs} gdbserver" ;;
+x86_64-*-linux*)	gdb_target=x86-64linux ;;
 
 
 z8k-*-coff*)		gdb_target=z8k ;;
Index: configure.in
===================================================================
RCS file: /cvs/src/src/gdb/configure.in,v
retrieving revision 1.79
diff -u -r1.79 configure.in
--- configure.in	2002/01/20 18:19:30	1.79
+++ configure.in	2002/02/04 23:12:18
@@ -1237,16 +1237,10 @@
 s/GDB_MULTI_ARCH[ 	]*=[ 	]*\([^ 	]*\)[ 	]*/\1/p
 ' ${target_makefile_frag}`
 
-# these really aren't orthogonal true/false values of the same condition,
-# but shells are slow enough that I like to reuse the test conditions
-# whenever possible
 if test "${target}" = "${host}"; then
 nativefile=`sed -n '
 s/NAT_FILE[ 	]*=[ 	]*\([^ 	]*\)/\1/p
 ' ${host_makefile_frag}`
-# else
-# GDBserver is only useful in a "native" environment
-# configdirs=`echo $configdirs | sed 's/gdbserver//'`
 fi
 changequote([,])
 
@@ -1277,10 +1271,16 @@
     *)  AC_MSG_ERROR("GDB: Unknown GDB_MULTI_ARCH value ${GDB_MULTI_ARCH}");;
 esac
 
-
 SUBDIRS="doc testsuite nlm"
 if test "${enable_multi_ice}" = "yes"; then
   SUBDIRS="${SUBDIRS} multi-ice"
+fi
+
+if test x"${target}" = x"${host}"; then
+    if test x"${build_gdbserver}" = xyes ; then
+	configdirs="${configdirs} gdbserver"
+	SUBDIRS="${SUBDIRS} gdbserver"
+    fi
 fi
 
 AC_SUBST(SUBDIRS)


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]