From 7fa2210be82679231faa15c25827d212ab5de60e Mon Sep 17 00:00:00 2001 From: Daniel Jacobowitz Date: Tue, 8 Aug 2006 20:26:23 +0000 Subject: [PATCH] gdb/ * configure.ac: Check for expat. * acinclude.m4: Include AC_LIB_HAVE_LINKFLAGS dependencies. * Makefile.in (LIBEXPAT): New. (CLIBS): Include $(LIBEXPAT). * README: Mention expat. * configure, config.in: Regenerated. gdb/doc/ * gdb.texinfo (Installing GDB): Update menu. Move text to... (Running Configure): ...here. (Requirements): New node. Mention expat. --- gdb/ChangeLog | 9 +++++++++ gdb/Makefile.in | 5 ++++- gdb/README | 5 +++++ gdb/acinclude.m4 | 5 +++++ gdb/configure.ac | 6 ++++++ gdb/doc/ChangeLog | 6 ++++++ gdb/doc/gdb.texinfo | 49 +++++++++++++++++++++++++++++++++++++++++-------- 7 files changed, 76 insertions(+), 9 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 80297e0..74c8f36 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,12 @@ +2006-08-08 Daniel Jacobowitz + + * configure.ac: Check for expat. + * acinclude.m4: Include AC_LIB_HAVE_LINKFLAGS dependencies. + * Makefile.in (LIBEXPAT): New. + (CLIBS): Include $(LIBEXPAT). + * README: Mention expat. + * configure, config.in: Regenerated. + 2006-08-08 Joel Sherrill * config/sparc/embed.mt: New file. diff --git a/gdb/Makefile.in b/gdb/Makefile.in index 25713ef..21a6abc 100644 --- a/gdb/Makefile.in +++ b/gdb/Makefile.in @@ -128,6 +128,9 @@ READLINE = $(READLINE_DIR)/libreadline.a READLINE_SRC = $(srcdir)/$(READLINE_DIR) READLINE_CFLAGS = -I$(READLINE_SRC)/.. +# Where is expat? This will be empty if expat was not available. +LIBEXPAT = @LIBEXPAT@ + WARN_CFLAGS = @WARN_CFLAGS@ WERROR_CFLAGS = @WERROR_CFLAGS@ GDB_WARN_CFLAGS = $(WARN_CFLAGS) @@ -376,7 +379,7 @@ INSTALLED_LIBS=-lbfd -lreadline -lopcodes -liberty \ -lintl -liberty CLIBS = $(SIM) $(READLINE) $(OPCODES) $(BFD) $(INTL) $(LIBIBERTY) \ $(XM_CLIBS) $(TM_CLIBS) $(NAT_CLIBS) $(GDBTKLIBS) @LIBS@ \ - $(LIBICONV) \ + $(LIBICONV) $(LIBEXPAT) \ $(LIBIBERTY) $(WIN32LIBS) CDEPS = $(XM_CDEPS) $(TM_CDEPS) $(NAT_CDEPS) $(SIM) $(BFD) $(READLINE) \ $(OPCODES) $(INTL_DEPS) $(LIBIBERTY) $(CONFIG_DEPS) diff --git a/gdb/README b/gdb/README index 96469da..88892ae 100644 --- a/gdb/README +++ b/gdb/README @@ -89,6 +89,11 @@ C compiler for your system, you may be able to download and install the GNU CC compiler. It is available via anonymous FTP from the directory `ftp://ftp.gnu.org/pub/gnu/gcc'. + GDB uses Expat, an XML parsing library, to implement some target-specific +features. Expat will be linked in if it is available at build time, or +those features will be disabled. The latest version of Expat should be +available from `http://expat.sourceforge.net'. + GDB can be used as a cross-debugger, running on a machine of one type while debugging a program running on a machine of another type. See below. diff --git a/gdb/acinclude.m4 b/gdb/acinclude.m4 index 71a6c9f..6d51234 100644 --- a/gdb/acinclude.m4 +++ b/gdb/acinclude.m4 @@ -12,6 +12,11 @@ sinclude(../config/stdint.m4) sinclude(../config/gettext-sister.m4) +dnl For AC_LIB_HAVE_LINKFLAGS. +sinclude(../config/lib-ld.m4) +sinclude(../config/lib-prefix.m4) +sinclude(../config/lib-link.m4) + dnl CYGNUS LOCAL: This gets the right posix flag for gcc AC_DEFUN([CY_AC_TCL_LYNX_POSIX], [AC_REQUIRE([AC_PROG_CC])AC_REQUIRE([AC_PROG_CPP]) diff --git a/gdb/configure.ac b/gdb/configure.ac index 906c916..9b09b94 100644 --- a/gdb/configure.ac +++ b/gdb/configure.ac @@ -315,6 +315,12 @@ if test "$ac_cv_search_tgetent" = no; then AC_MSG_ERROR([no termcap library found]) fi +AC_LIB_HAVE_LINKFLAGS([expat], [], [#include "expat.h"], + [XML_Parser p = XML_ParserCreate (0);]) +if test "$HAVE_LIBEXPAT" != yes; then + AC_MSG_WARN([expat is missing or unusable; some features may be disabled.]) +fi + # ------------------------- # # Checks for header files. # # ------------------------- # diff --git a/gdb/doc/ChangeLog b/gdb/doc/ChangeLog index 40f443d..3ce14cb 100644 --- a/gdb/doc/ChangeLog +++ b/gdb/doc/ChangeLog @@ -1,3 +1,9 @@ +2006-08-08 Daniel Jacobowitz + + * gdb.texinfo (Installing GDB): Update menu. Move text to... + (Running Configure): ...here. + (Requirements): New node. Mention expat. + 2006-08-08 Vladimir Prus * gdb.texinfo (Target Commands): Remove diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo index 07a3004..66c8d0f 100644 --- a/gdb/doc/gdb.texinfo +++ b/gdb/doc/gdb.texinfo @@ -21891,10 +21891,49 @@ Then give @file{gdb.dvi} to your @sc{dvi} printing program. @node Installing GDB @appendix Installing @value{GDBN} -@cindex configuring @value{GDBN} @cindex installation -@cindex configuring @value{GDBN}, and source tree subdirectories +@menu +* Requirements:: Requirements for building @value{GDBN} +* Running Configure:: Invoking the @value{GDBN} @code{configure} script +* Separate Objdir:: Compiling @value{GDBN} in another directory +* Config Names:: Specifying names for hosts and targets +* Configure Options:: Summary of options for configure +@end menu + +@node Requirements +@section Requirements for building @value{GDBN} +@cindex building @value{GDBN}, requirements for + +Building @value{GDBN} requires various tools and packages to be available. +Other packages will be used only if they are found. + +@heading Tools/packages necessary for building @value{GDBN} +@table @asis +@item ISO C90 compiler +@value{GDBN} is written in ISO C90. It should be buildable with any +working C90 compiler, e.g.@: GCC. + +@end table + +@heading Tools/packages optional for building @value{GDBN} +@table @asis +@item Expat +@value{GDBN} can use the Expat XML parsing library. This library may be +included with your operating system distribution; if it is not, you +can get the latest version from @url{http://expat.sourceforge.net}. +The @code{configure} script will search for this library in several +standard locations; if it is installed in an unusual path, you can +use the @option{--with-libexpat-prefix} option to specify its location. + +Expat is used currently only used to implement some remote-specific +features. + +@end table + +@node Running Configure +@section Invoking the @value{GDBN} @code{configure} script +@cindex configuring @value{GDBN} @value{GDBN} comes with a @code{configure} script that automates the process of preparing @value{GDBN} for installation; you can then use @code{make} to build the @code{gdb} program. @@ -22000,12 +22039,6 @@ the @samp{SHELL} environment variable) is publicly readable. Remember that @value{GDBN} uses the shell to start your program---some systems refuse to let @value{GDBN} debug child processes whose programs are not readable. -@menu -* Separate Objdir:: Compiling @value{GDBN} in another directory -* Config Names:: Specifying names for hosts and targets -* Configure Options:: Summary of options for configure -@end menu - @node Separate Objdir @section Compiling @value{GDBN} in another directory -- 2.7.4