Discussion:
[RFC] Make "all" depend on "info"
Tom Tromey
2018-10-20 18:34:29 UTC
Permalink
I've broken "make info" a couple of times now, because I sometimes
forget to run "make info" after modifying a Texinfo file.

I don't know why gdb's "make all" doesn't build the info pages. I
suspect this was some Cygnus-local oddity back in the day.

This patch changes doc/Makefile.in so that the info pages are built by
"make all". As a point of reference, Automake has essentially always
worked this way. According to the Automake manual (I didn't
double-check) this is required by the GNU coding standards.

gdb/doc/ChangeLog
2018-10-20 Tom Tromey <***@tromey.com>

* Makefile.in (all): Depend on "info".
---
gdb/doc/ChangeLog | 4 ++++
gdb/doc/Makefile.in | 2 +-
2 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/gdb/doc/Makefile.in b/gdb/doc/Makefile.in
index 0323bc4ecb..4e167d59cf 100644
--- a/gdb/doc/Makefile.in
+++ b/gdb/doc/Makefile.in
@@ -182,7 +182,7 @@ HAVE_NATIVE_GCORE_TARGET = @HAVE_NATIVE_GCORE_TARGET@

###

-all:
+all: info

info: $(INFO_DEPS)
dvi: gdb.dvi stabs.dvi refcard.dvi annotate.dvi
--
2.17.1
Simon Marchi
2018-10-20 21:19:50 UTC
Permalink
Post by Tom Tromey
I've broken "make info" a couple of times now, because I sometimes
forget to run "make info" after modifying a Texinfo file.
I don't know why gdb's "make all" doesn't build the info pages. I
suspect this was some Cygnus-local oddity back in the day.
This patch changes doc/Makefile.in so that the info pages are built by
"make all". As a point of reference, Automake has essentially always
worked this way. According to the Automake manual (I didn't
double-check) this is required by the GNU coding standards.
IIRC, another weird consequence of the current situation is that if you
do ./configure && make && sudo make install, the doc artifacts will be
generated during make install, so owned by root. I believe everything
should be generated by "make", and make install should only install the
files in the prefix.

Simon
Kevin Buettner
2018-10-20 21:44:48 UTC
Permalink
On Sat, 20 Oct 2018 12:34:29 -0600
Post by Tom Tromey
I've broken "make info" a couple of times now, because I sometimes
forget to run "make info" after modifying a Texinfo file.
I don't know why gdb's "make all" doesn't build the info pages. I
suspect this was some Cygnus-local oddity back in the day.
This patch changes doc/Makefile.in so that the info pages are built by
"make all". As a point of reference, Automake has essentially always
worked this way. According to the Automake manual (I didn't
double-check) this is required by the GNU coding standards.
gdb/doc/ChangeLog
* Makefile.in (all): Depend on "info".
I'm in favor of this change.

Kevin
Sergio Durigan Junior
2018-10-20 22:13:31 UTC
Permalink
Post by Tom Tromey
I've broken "make info" a couple of times now, because I sometimes
forget to run "make info" after modifying a Texinfo file.
I don't know why gdb's "make all" doesn't build the info pages. I
suspect this was some Cygnus-local oddity back in the day.
This patch changes doc/Makefile.in so that the info pages are built by
"make all". As a point of reference, Automake has essentially always
worked this way. According to the Automake manual (I didn't
double-check) this is required by the GNU coding standards.
I think it makes sense, especially because "info" the default
documentation format for GNU.

I was wondering if it would also make sense to build the documentation
on the BuildBot.
Post by Tom Tromey
gdb/doc/ChangeLog
* Makefile.in (all): Depend on "info".
---
gdb/doc/ChangeLog | 4 ++++
gdb/doc/Makefile.in | 2 +-
2 files changed, 5 insertions(+), 1 deletion(-)
diff --git a/gdb/doc/Makefile.in b/gdb/doc/Makefile.in
index 0323bc4ecb..4e167d59cf 100644
--- a/gdb/doc/Makefile.in
+++ b/gdb/doc/Makefile.in
@@ -182,7 +182,7 @@ HAVE_NATIVE_GCORE_TARGET = @HAVE_NATIVE_GCORE_TARGET@
###
+all: info
info: $(INFO_DEPS)
dvi: gdb.dvi stabs.dvi refcard.dvi annotate.dvi
--
2.17.1
--
Sergio
GPG key ID: 237A 54B1 0287 28BF 00EF 31F4 D0EB 7628 65FC 5E36
Please send encrypted e-mail if possible
http://sergiodj.net/
Tom Tromey
2018-11-29 19:23:05 UTC
Permalink
Tom> This patch changes doc/Makefile.in so that the info pages are built by
Tom> "make all". As a point of reference, Automake has essentially always
Tom> worked this way. According to the Automake manual (I didn't
Tom> double-check) this is required by the GNU coding standards.

I haven't checked this in yet, because I remembered there are a number
of bugs in bugzilla from users who don't have (and maybe also don't
want) makeinfo installed. So, I thought I'd hold off on this until I
find the time to come up with a solution for them.

Tom

Loading...