* [2/2] RFA: --with-system-readline -vs- gdb.texinfo
@ 2010-11-19 20:55 Tom Tromey
2010-11-19 22:14 ` Eli Zaretskii
0 siblings, 1 reply; 4+ messages in thread
From: Tom Tromey @ 2010-11-19 20:55 UTC (permalink / raw)
To: gdb-patches
This is a new version of a patch we've been carrying in Fedora.
Currently if you configure with --with-system-readline, the resulting
gdb.info will still have its own copy of the readline manual. This is
the wrong thing to do -- the gdb readline might be a different version,
so the documentation might be misleading.
This patch fixes the problem by making the uses of the included manual
conditional on whether --with-system-readline was given.
This particular patch relies on removing gdb/doc/configure.
If that patch does not go in, I can change this one to suit.
Tested by building both ways and looking at the appropriate nodes in the
resulting .info file.
Please review.
Tom
b/gdb/ChangeLog:
2010-11-19 Tom Tromey <tromey@redhat.com>
* configure: Rebuild.
* configure.ac (READLINE_TEXI_INCFLAG): New subst.
b/gdb/doc/ChangeLog:
2010-11-19 Tom Tromey <tromey@redhat.com>
* gdb.texinfo (Top): Check SYSTEM_READLINE.
(Editing): Likewise.
(Command History): Likewise.
(TUI Keys): Likewise.
(Bug Reporting): Conditionally include rluser.texi and
inc-history.texinfo.
* Makefile.in (READLINE_TEXI_INCFLAG): New variable.
(GDB_DOC_SOURCE_INCLUDES): Add comment.
(GDBvn.texi): Set SYSTEM_READLINE when appropriate.
(gdb.dvi): Use READLINE_TEXI_INCFLAG.
(gdb.pdf): Likewise.
(gdb.info): Likewise.
(gdb/index.html): Likewise.
From 6cd39e25c715dea6d09c0bc293b3fe3be011c5fd Mon Sep 17 00:00:00 2001
From: Tom Tromey <tromey@redhat.com>
Date: Fri, 19 Nov 2010 13:46:38 -0700
Subject: [PATCH 2/2] the patch
---
gdb/ChangeLog | 5 +++++
gdb/configure | 4 ++++
gdb/configure.ac | 3 +++
gdb/doc/ChangeLog | 16 ++++++++++++++++
gdb/doc/Makefile.in | 15 +++++++++++----
gdb/doc/gdb.texinfo | 44 ++++++++++++++++++++++++++++++++++++++------
6 files changed, 77 insertions(+), 10 deletions(-)
diff --git a/gdb/configure.ac b/gdb/configure.ac
index 230b128..cc750dc 100644
--- a/gdb/configure.ac
+++ b/gdb/configure.ac
@@ -538,6 +538,7 @@ if test "$with_system_readline" = yes; then
READLINE=-lreadline
READLINE_DEPS=
READLINE_CFLAGS=
+ READLINE_TEXI_INCFLAG=
# readline-6.0 started to use the name `_rl_echoing_p'.
# `$(READLINE_DIR)/' of bundled readline would not resolve in configure.
@@ -557,10 +558,12 @@ else
READLINE='$(READLINE_DIR)/libreadline.a'
READLINE_DEPS='$(READLINE)'
READLINE_CFLAGS='-I$(READLINE_SRC)/..'
+ READLINE_TEXI_INCFLAG='-I $(READLINE_DIR)'
fi
AC_SUBST(READLINE)
AC_SUBST(READLINE_DEPS)
AC_SUBST(READLINE_CFLAGS)
+AC_SUBST(READLINE_TEXI_INCFLAG)
AC_ARG_WITH(expat,
AS_HELP_STRING([--with-expat], [include expat support (auto/yes/no)]),
diff --git a/gdb/doc/Makefile.in b/gdb/doc/Makefile.in
index a572f90..615af63 100644
--- a/gdb/doc/Makefile.in
+++ b/gdb/doc/Makefile.in
@@ -63,6 +63,7 @@ BUGURL_TEXI = @REPORT_BUGS_TEXI@
# Where is the source dir for the READLINE library doc?
# Traditionally readline is in .. or .
READLINE_DIR = ${gdbdir}/../readline/doc
+READLINE_TEXI_INCFLAG = @READLINE_TEXI_INCFLAG@
# The GDB/MI docs come from a sibling directory ../mi
GDBMI_DIR = ${gdbdir}/mi
@@ -108,6 +109,9 @@ PDFTEX = pdftex
DVIPS = dvips
# Main GDB manual
+# Note that this unconditionally includes the readline texi files,
+# even when --with-system-readline is used. This is harmless because
+# these are only used as dependencies.
GDB_DOC_SOURCE_INCLUDES = \
$(srcdir)/fdl.texi \
$(srcdir)/gpl.texi \
@@ -303,6 +307,9 @@ GDBvn.texi : ${gdbdir}/version.in
if [ "$(BUGURL_TEXI)" = "@uref{http://www.gnu.org/software/gdb/bugs/}" ]; then \
echo "@set BUGURL_DEFAULT" >> ./GDBvn.new; \
fi
+ if test -z "$(READLINE_TEXI_INCFLAG)"; then \
+ echo "@set SYSTEM_READLINE" >> ./GDBvn.new; \
+ fi
mv GDBvn.new GDBvn.texi
# Updated atomically
@@ -340,7 +347,7 @@ gdb.dvi: ${GDB_DOC_FILES}
ln $(srcdir)/GDBvn.texi . || \
cp $(srcdir)/GDBvn.texi . ; else true; fi
rm -f $(GDB_TEX_TMPS)
- $(TEXI2DVI) -I ${READLINE_DIR} -I ${GDBMI_DIR} -I $(srcdir) \
+ $(TEXI2DVI) $(READLINE_TEXI_INCFLAG) -I ${GDBMI_DIR} -I $(srcdir) \
$(srcdir)/gdb.texinfo
gdb.ps: gdb.dvi
@@ -352,12 +359,12 @@ gdb.pdf: ${GDB_DOC_FILES}
ln $(srcdir)/GDBvn.texi . || \
cp $(srcdir)/GDBvn.texi . ; else true; fi
rm -f $(GDB_TEX_TMPS)
- $(TEXI2DVI) --pdf -I ${READLINE_DIR} -I ${GDBMI_DIR} -I $(srcdir) \
+ $(TEXI2DVI) --pdf $(READLINE_TEXI_INCFLAG) -I ${GDBMI_DIR} -I $(srcdir) \
$(srcdir)/gdb.texinfo
# GDB MANUAL: info file
gdb.info: ${GDB_DOC_FILES}
- $(MAKEINFO) -I ${READLINE_DIR} -I ${GDBMI_DIR} -I $(srcdir) \
+ $(MAKEINFO) $(READLINE_TEXI_INCFLAG) -I ${GDBMI_DIR} -I $(srcdir) \
-o gdb.info $(srcdir)/gdb.texinfo
# GDB MANUAL: roff translations
@@ -433,7 +440,7 @@ gdb.mm: $(GDB_DOC_FILES) links2roff
# GDB MANUAL: HTML file
gdb/index.html: ${GDB_DOC_FILES}
- $(MAKEHTML) $(MAKEHTMLFLAGS) -I ${READLINE_DIR} -I ${GDBMI_DIR} -I $(srcdir) $(srcdir)/gdb.texinfo
+ $(MAKEHTML) $(MAKEHTMLFLAGS) $(READLINE_TEXI_INCFLAG) -I ${GDBMI_DIR} -I $(srcdir) $(srcdir)/gdb.texinfo
# Clean these up before each run. Avoids a catch 22 with not being
# able to re-generate these files (to fix a corruption) because these
diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo
index ddc711b..18aa224 100644
--- a/gdb/doc/gdb.texinfo
+++ b/gdb/doc/gdb.texinfo
@@ -163,8 +163,14 @@ software in general. We will miss him.
* GDB Bugs:: Reporting bugs in @value{GDBN}
+@ifset SYSTEM_READLINE
+* Command Line Editing: (rluserman). Command Line Editing
+* Using History Interactively: (history). Using History Interactively
+@end ifset
+@ifclear SYSTEM_READLINE
* Command Line Editing:: Command Line Editing
* Using History Interactively:: Using History Interactively
+@end ifclear
* Formatting Documentation:: How to format and print @value{GDBN} documentation
* Installing GDB:: Installing GDB
* Maintenance Commands:: Maintenance Commands
@@ -19414,7 +19420,13 @@ Disable command line editing.
Show whether command line editing is enabled.
@end table
-@xref{Command Line Editing}, for more details about the Readline
+@ifset SYSTEM_READLINE
+@xref{Command Line Editing, , , rluserman, GNU Readline Library},
+@end ifset
+@ifclear SYSTEM_READLINE
+@xref{Command Line Editing},
+@end ifclear
+for more details about the Readline
interface. Users unfamiliar with @sc{gnu} Emacs or @code{vi} are
encouraged to read that chapter.
@@ -19428,8 +19440,14 @@ happened. Use these commands to manage the @value{GDBN} command
history facility.
@value{GDBN} uses the @sc{gnu} History library, a part of the Readline
-package, to provide the history facility. @xref{Using History
-Interactively}, for the detailed description of the History library.
+package, to provide the history facility.
+@ifset SYSTEM_READLINE
+@xref{Using History Interactively, , , history, GNU History Library},
+@end ifset
+@ifclear SYSTEM_READLINE
+@xref{Using History Interactively},
+@end ifclear
+for the detailed description of the History library.
To issue a command to @value{GDBN} without affecting certain aspects of
the state which is seen by users, prefix it with @samp{server }
@@ -19481,7 +19499,13 @@ This defaults to the value of the environment variable
@end table
History expansion assigns special meaning to the character @kbd{!}.
-@xref{Event Designators}, for more details.
+@ifset SYSTEM_READLINE
+@xref{Using History Interactively, , , history, GNU History Library},
+@end ifset
+@ifclear SYSTEM_READLINE
+@xref{Using History Interactively},
+@end ifclear
+for more details.
@cindex history expansion, turn on/off
Since @kbd{!} is also the logical not operator in C, history expansion
@@ -23482,8 +23506,14 @@ Indicates the current program counter address.
@cindex TUI key bindings
The TUI installs several key bindings in the readline keymaps
-(@pxref{Command Line Editing}). The following key bindings
-are installed for both TUI mode and the @value{GDBN} standard mode.
+@ifset SYSTEM_READLINE
+(@pxref{Command Line Editing, , , rluserman, GNU Readline Library}).
+@end ifset
+@ifclear SYSTEM_READLINE
+(@pxref{Command Line Editing}).
+@end ifclear
+The following key bindings are installed for both TUI mode and the
+@value{GDBN} standard mode.
@table @kbd
@kindex C-x C-a
@@ -30459,8 +30489,10 @@ things without first using the debugger to find the facts.
@c inc-hist.texinfo
@c Use -I with makeinfo to point to the appropriate directory,
@c environment var TEXINPUTS with TeX.
+@ifclear SYSTEM_READLINE
@include rluser.texi
@include inc-hist.texinfo
+@end ifclear
@node Formatting Documentation
--
1.7.2.3
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [2/2] RFA: --with-system-readline -vs- gdb.texinfo
2010-11-19 20:55 [2/2] RFA: --with-system-readline -vs- gdb.texinfo Tom Tromey
@ 2010-11-19 22:14 ` Eli Zaretskii
2010-11-22 21:53 ` Tom Tromey
0 siblings, 1 reply; 4+ messages in thread
From: Eli Zaretskii @ 2010-11-19 22:14 UTC (permalink / raw)
To: Tom Tromey; +Cc: gdb-patches
> From: Tom Tromey <tromey@redhat.com>
> Date: Fri, 19 Nov 2010 13:55:11 -0700
>
> Currently if you configure with --with-system-readline, the resulting
> gdb.info will still have its own copy of the readline manual. This is
> the wrong thing to do -- the gdb readline might be a different version,
> so the documentation might be misleading.
>
> This patch fixes the problem by making the uses of the included manual
> conditional on whether --with-system-readline was given.
>
> This particular patch relies on removing gdb/doc/configure.
> If that patch does not go in, I can change this one to suit.
>
> Tested by building both ways and looking at the appropriate nodes in the
> resulting .info file.
>
> Please review.
OK, thanks.
> History expansion assigns special meaning to the character @kbd{!}.
> -@xref{Event Designators}, for more details.
> +@ifset SYSTEM_READLINE
> +@xref{Using History Interactively, , , history, GNU History Library},
> +@end ifset
> +@ifclear SYSTEM_READLINE
> +@xref{Using History Interactively},
> +@end ifclear
> +for more details.
A copy/paste error?
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [2/2] RFA: --with-system-readline -vs- gdb.texinfo
2010-11-19 22:14 ` Eli Zaretskii
@ 2010-11-22 21:53 ` Tom Tromey
2010-11-23 3:51 ` Eli Zaretskii
0 siblings, 1 reply; 4+ messages in thread
From: Tom Tromey @ 2010-11-22 21:53 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: gdb-patches
>>>>> "Eli" == Eli Zaretskii <eliz@gnu.org> writes:
Eli> A copy/paste error?
Yes. Here is a revised patch.
Tom
b/gdb/ChangeLog:
2010-11-19 Tom Tromey <tromey@redhat.com>
* configure: Rebuild.
* configure.ac (READLINE_TEXI_INCFLAG): New subst.
b/gdb/doc/ChangeLog:
2010-11-19 Tom Tromey <tromey@redhat.com>
* gdb.texinfo (Top): Check SYSTEM_READLINE.
(Editing): Likewise.
(Command History): Likewise.
(TUI Keys): Likewise.
(Bug Reporting): Conditionally include rluser.texi and
inc-history.texinfo.
* Makefile.in (READLINE_TEXI_INCFLAG): New variable.
(GDB_DOC_SOURCE_INCLUDES): Add comment.
(GDBvn.texi): Set SYSTEM_READLINE when appropriate.
(gdb.dvi): Use READLINE_TEXI_INCFLAG.
(gdb.pdf): Likewise.
(gdb.info): Likewise.
(gdb/index.html): Likewise.
diff --git a/gdb/configure.ac b/gdb/configure.ac
index 230b128..cc750dc 100644
--- a/gdb/configure.ac
+++ b/gdb/configure.ac
@@ -538,6 +538,7 @@ if test "$with_system_readline" = yes; then
READLINE=-lreadline
READLINE_DEPS=
READLINE_CFLAGS=
+ READLINE_TEXI_INCFLAG=
# readline-6.0 started to use the name `_rl_echoing_p'.
# `$(READLINE_DIR)/' of bundled readline would not resolve in configure.
@@ -557,10 +558,12 @@ else
READLINE='$(READLINE_DIR)/libreadline.a'
READLINE_DEPS='$(READLINE)'
READLINE_CFLAGS='-I$(READLINE_SRC)/..'
+ READLINE_TEXI_INCFLAG='-I $(READLINE_DIR)'
fi
AC_SUBST(READLINE)
AC_SUBST(READLINE_DEPS)
AC_SUBST(READLINE_CFLAGS)
+AC_SUBST(READLINE_TEXI_INCFLAG)
AC_ARG_WITH(expat,
AS_HELP_STRING([--with-expat], [include expat support (auto/yes/no)]),
diff --git a/gdb/doc/Makefile.in b/gdb/doc/Makefile.in
index a572f90..615af63 100644
--- a/gdb/doc/Makefile.in
+++ b/gdb/doc/Makefile.in
@@ -63,6 +63,7 @@ BUGURL_TEXI = @REPORT_BUGS_TEXI@
# Where is the source dir for the READLINE library doc?
# Traditionally readline is in .. or .
READLINE_DIR = ${gdbdir}/../readline/doc
+READLINE_TEXI_INCFLAG = @READLINE_TEXI_INCFLAG@
# The GDB/MI docs come from a sibling directory ../mi
GDBMI_DIR = ${gdbdir}/mi
@@ -108,6 +109,9 @@ PDFTEX = pdftex
DVIPS = dvips
# Main GDB manual
+# Note that this unconditionally includes the readline texi files,
+# even when --with-system-readline is used. This is harmless because
+# these are only used as dependencies.
GDB_DOC_SOURCE_INCLUDES = \
$(srcdir)/fdl.texi \
$(srcdir)/gpl.texi \
@@ -303,6 +307,9 @@ GDBvn.texi : ${gdbdir}/version.in
if [ "$(BUGURL_TEXI)" = "@uref{http://www.gnu.org/software/gdb/bugs/}" ]; then \
echo "@set BUGURL_DEFAULT" >> ./GDBvn.new; \
fi
+ if test -z "$(READLINE_TEXI_INCFLAG)"; then \
+ echo "@set SYSTEM_READLINE" >> ./GDBvn.new; \
+ fi
mv GDBvn.new GDBvn.texi
# Updated atomically
@@ -340,7 +347,7 @@ gdb.dvi: ${GDB_DOC_FILES}
ln $(srcdir)/GDBvn.texi . || \
cp $(srcdir)/GDBvn.texi . ; else true; fi
rm -f $(GDB_TEX_TMPS)
- $(TEXI2DVI) -I ${READLINE_DIR} -I ${GDBMI_DIR} -I $(srcdir) \
+ $(TEXI2DVI) $(READLINE_TEXI_INCFLAG) -I ${GDBMI_DIR} -I $(srcdir) \
$(srcdir)/gdb.texinfo
gdb.ps: gdb.dvi
@@ -352,12 +359,12 @@ gdb.pdf: ${GDB_DOC_FILES}
ln $(srcdir)/GDBvn.texi . || \
cp $(srcdir)/GDBvn.texi . ; else true; fi
rm -f $(GDB_TEX_TMPS)
- $(TEXI2DVI) --pdf -I ${READLINE_DIR} -I ${GDBMI_DIR} -I $(srcdir) \
+ $(TEXI2DVI) --pdf $(READLINE_TEXI_INCFLAG) -I ${GDBMI_DIR} -I $(srcdir) \
$(srcdir)/gdb.texinfo
# GDB MANUAL: info file
gdb.info: ${GDB_DOC_FILES}
- $(MAKEINFO) -I ${READLINE_DIR} -I ${GDBMI_DIR} -I $(srcdir) \
+ $(MAKEINFO) $(READLINE_TEXI_INCFLAG) -I ${GDBMI_DIR} -I $(srcdir) \
-o gdb.info $(srcdir)/gdb.texinfo
# GDB MANUAL: roff translations
@@ -433,7 +440,7 @@ gdb.mm: $(GDB_DOC_FILES) links2roff
# GDB MANUAL: HTML file
gdb/index.html: ${GDB_DOC_FILES}
- $(MAKEHTML) $(MAKEHTMLFLAGS) -I ${READLINE_DIR} -I ${GDBMI_DIR} -I $(srcdir) $(srcdir)/gdb.texinfo
+ $(MAKEHTML) $(MAKEHTMLFLAGS) $(READLINE_TEXI_INCFLAG) -I ${GDBMI_DIR} -I $(srcdir) $(srcdir)/gdb.texinfo
# Clean these up before each run. Avoids a catch 22 with not being
# able to re-generate these files (to fix a corruption) because these
diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo
index ddc711b..5550f51 100644
--- a/gdb/doc/gdb.texinfo
+++ b/gdb/doc/gdb.texinfo
@@ -163,8 +163,14 @@ software in general. We will miss him.
* GDB Bugs:: Reporting bugs in @value{GDBN}
+@ifset SYSTEM_READLINE
+* Command Line Editing: (rluserman). Command Line Editing
+* Using History Interactively: (history). Using History Interactively
+@end ifset
+@ifclear SYSTEM_READLINE
* Command Line Editing:: Command Line Editing
* Using History Interactively:: Using History Interactively
+@end ifclear
* Formatting Documentation:: How to format and print @value{GDBN} documentation
* Installing GDB:: Installing GDB
* Maintenance Commands:: Maintenance Commands
@@ -19414,7 +19420,13 @@ Disable command line editing.
Show whether command line editing is enabled.
@end table
-@xref{Command Line Editing}, for more details about the Readline
+@ifset SYSTEM_READLINE
+@xref{Command Line Editing, , , rluserman, GNU Readline Library},
+@end ifset
+@ifclear SYSTEM_READLINE
+@xref{Command Line Editing},
+@end ifclear
+for more details about the Readline
interface. Users unfamiliar with @sc{gnu} Emacs or @code{vi} are
encouraged to read that chapter.
@@ -19428,8 +19440,14 @@ happened. Use these commands to manage the @value{GDBN} command
history facility.
@value{GDBN} uses the @sc{gnu} History library, a part of the Readline
-package, to provide the history facility. @xref{Using History
-Interactively}, for the detailed description of the History library.
+package, to provide the history facility.
+@ifset SYSTEM_READLINE
+@xref{Using History Interactively, , , history, GNU History Library},
+@end ifset
+@ifclear SYSTEM_READLINE
+@xref{Using History Interactively},
+@end ifclear
+for the detailed description of the History library.
To issue a command to @value{GDBN} without affecting certain aspects of
the state which is seen by users, prefix it with @samp{server }
@@ -19481,7 +19499,13 @@ This defaults to the value of the environment variable
@end table
History expansion assigns special meaning to the character @kbd{!}.
-@xref{Event Designators}, for more details.
+@ifset SYSTEM_READLINE
+@xref{Event Designators, , , history, GNU History Library},
+@end ifset
+@ifclear SYSTEM_READLINE
+@xref{Event Designators},
+@end ifclear
+for more details.
@cindex history expansion, turn on/off
Since @kbd{!} is also the logical not operator in C, history expansion
@@ -23482,8 +23506,14 @@ Indicates the current program counter address.
@cindex TUI key bindings
The TUI installs several key bindings in the readline keymaps
-(@pxref{Command Line Editing}). The following key bindings
-are installed for both TUI mode and the @value{GDBN} standard mode.
+@ifset SYSTEM_READLINE
+(@pxref{Command Line Editing, , , rluserman, GNU Readline Library}).
+@end ifset
+@ifclear SYSTEM_READLINE
+(@pxref{Command Line Editing}).
+@end ifclear
+The following key bindings are installed for both TUI mode and the
+@value{GDBN} standard mode.
@table @kbd
@kindex C-x C-a
@@ -30459,8 +30489,10 @@ things without first using the debugger to find the facts.
@c inc-hist.texinfo
@c Use -I with makeinfo to point to the appropriate directory,
@c environment var TEXINPUTS with TeX.
+@ifclear SYSTEM_READLINE
@include rluser.texi
@include inc-hist.texinfo
+@end ifclear
@node Formatting Documentation
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [2/2] RFA: --with-system-readline -vs- gdb.texinfo
2010-11-22 21:53 ` Tom Tromey
@ 2010-11-23 3:51 ` Eli Zaretskii
0 siblings, 0 replies; 4+ messages in thread
From: Eli Zaretskii @ 2010-11-23 3:51 UTC (permalink / raw)
To: Tom Tromey; +Cc: gdb-patches
> From: Tom Tromey <tromey@redhat.com>
> Cc: gdb-patches@sourceware.org
> Date: Mon, 22 Nov 2010 14:53:38 -0700
>
> >>>>> "Eli" == Eli Zaretskii <eliz@gnu.org> writes:
>
> Eli> A copy/paste error?
>
> Yes. Here is a revised patch.
OK for the doco part. Thanks.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2010-11-23 3:51 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-11-19 20:55 [2/2] RFA: --with-system-readline -vs- gdb.texinfo Tom Tromey
2010-11-19 22:14 ` Eli Zaretskii
2010-11-22 21:53 ` Tom Tromey
2010-11-23 3:51 ` Eli Zaretskii
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).