From: Andrew Burgess <aburgess@redhat.com>
To: gdb-patches@sourceware.org
Cc: Andrew Burgess <aburgess@redhat.com>
Subject: [PATCHv3 2/6] gdb/doc: merge rules for building .1 and .5 man pages
Date: Thu, 6 Jun 2024 18:49:54 +0100 [thread overview]
Message-ID: <ab79ce1251a921155229ef0bd21db8f978602d4b.1717696065.git.aburgess@redhat.com> (raw)
In-Reply-To: <cover.1717696065.git.aburgess@redhat.com>
We have two rules, one each for building the .1 and .5 man pages. The
only actual difference is that one rule passes --section=1 and the
other passes --section=5 (see the definitions of POD2MAN1 and POD2MAN5
respectively.
I figure by using the suffix from the target of the rule we can
combine these two rules into one.
I use:
$(subst .,,$(suffix $@))
This gets the suffix from the target, either '.1' or '.5', and the
'subst' removes the '.' leaving '1' or '5'.
Now that I'm not using a static pattern rule for building the man
pages, the advice in the 'make' documentation is to not use $*, so
I've moved away from that to instead use $(basename $@), e.g. for
'gdbinit.5' this gives 'gdbinit', which is what we want.
There should be no difference in what is created after this change.
---
gdb/doc/Makefile.in | 23 +++++++++--------------
1 file changed, 9 insertions(+), 14 deletions(-)
diff --git a/gdb/doc/Makefile.in b/gdb/doc/Makefile.in
index 1a0791d518f..70d65d58ed0 100644
--- a/gdb/doc/Makefile.in
+++ b/gdb/doc/Makefile.in
@@ -178,10 +178,8 @@ MANCONF = -Dman
TEXI2POD = perl $(srcdir)/../../etc/texi2pod.pl \
$(MAKEINFOFLAGS) $(MAKEINFO_EXTRA_FLAGS)
-POD2MAN1 = pod2man --center="GNU Development Tools" \
- --release="gdb-`sed q version.subst`" --section=1
-POD2MAN5 = pod2man --center="GNU Development Tools" \
- --release="gdb-`sed q version.subst`" --section=5
+POD2MAN = pod2man --center="GNU Development Tools" \
+ --release="gdb-`sed q version.subst`"
# List of man pages generated from gdb.texi
MAN1S = gdb.1 gdbserver.1 gcore.1 gdb-add-index.1
@@ -654,17 +652,14 @@ annotate/index.html: $(ANNOTATE_DOC_FILES)
# pages, then the .pod files must become a dependency, this will
# trigger an attempt to rebuild these files while building and
# installing a release of GDB, which is something we don't want.
-$(MAN1S) : %.1 : $(GDB_DOC_FILES)
- $(ECHO_TEXI2POD) $(TEXI2POD) $(MANCONF) -D$* < $(srcdir)/gdb.texinfo > $*.pod
- $(ECHO_TEXI2MAN) ($(POD2MAN1) $*.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
+$(MAN1S) $(MAN5S) : version.subst $(GDB_DOC_FILES)
+ $(ECHO_TEXI2POD) $(TEXI2POD) $(MANCONF) -D$(basename $@) \
+ < $(srcdir)/gdb.texinfo > $(basename $@).pod
+ $(ECHO_TEXI2MAN) ($(POD2MAN) --section=$(subst .,,$(suffix $@)) \
+ $(basename $@).pod | \
+ sed -e '/^.if n .na/d' > $@.T$$$$ && \
mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
- $(SILENCE) rm -f $*.pod
-
-$(MAN5S) : %.5 : $(GDB_DOC_FILES)
- $(ECHO_TEXI2POD) $(TEXI2POD) $(MANCONF) -D$* < $(srcdir)/gdb.texinfo > $*.pod
- $(ECHO_TEXI2MAN) ($(POD2MAN5) $*.pod | sed -e '/^.if n .na/d' > $@.T$$$$ && \
- mv -f $@.T$$$$ $@) || (rm -f $@.T$$$$ && exit 1)
- $(SILENCE) rm -f $*.pod
+ $(SILENCE) rm -f $(basename $@).pod
force:
--
2.25.4
next prev parent reply other threads:[~2024-06-06 17:50 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-05-11 9:37 [PATCH 0/4] gdb/doc: build fixes and improvements Andrew Burgess
2024-05-11 9:37 ` [PATCH 1/4] gdb/doc: don't delete *.pod files too early Andrew Burgess
2024-05-13 16:13 ` Tom Tromey
2024-05-14 15:53 ` Andrew Burgess
2024-05-11 9:37 ` [PATCH 2/4] gdb/doc: don't try to copy GDBvn.texi from the source tree Andrew Burgess
2024-05-13 16:12 ` Tom Tromey
2024-05-13 17:33 ` Eli Zaretskii
2024-05-14 13:32 ` Andrew Burgess
2024-06-14 19:06 ` Pedro Alves
2024-05-11 9:37 ` [PATCH 3/4] gdb/doc: fix parallel build of refcard related targets Andrew Burgess
2024-05-13 16:13 ` Tom Tromey
2024-05-11 9:37 ` [PATCH 4/4] gdb/doc: fix parallel build of pdf and dvi files Andrew Burgess
2024-05-13 16:18 ` Tom Tromey
2024-05-14 13:40 ` Andrew Burgess
2024-05-31 8:18 ` [PATCHv2 0/5] gdb/doc: parallel build fixes and improvements Andrew Burgess
2024-05-31 8:18 ` [PATCHv2 1/5] gdb/doc: don't try to copy GDBvn.texi from the source tree Andrew Burgess
2024-05-31 8:18 ` [PATCHv2 2/5] gdb/doc: allow for version.subst in " Andrew Burgess
2024-05-31 10:40 ` Eli Zaretskii
2024-06-03 14:22 ` Andrew Burgess
2024-06-06 11:59 ` Eli Zaretskii
2024-06-06 17:52 ` Andrew Burgess
2024-05-31 8:18 ` [PATCHv2 3/5] gdb/doc: also look in srcdir when running TEXI2POD Andrew Burgess
2024-05-31 8:18 ` [PATCHv2 4/5] gdb/doc: fix parallel build of refcard related targets Andrew Burgess
2024-05-31 8:18 ` [PATCHv2 5/5] gdb/doc: fix parallel build of pdf and dvi files Andrew Burgess
2024-06-06 17:49 ` [PATCHv3 0/6] gdb/doc: parallel build fixes and improvements Andrew Burgess
2024-06-06 17:49 ` [PATCHv3 1/6] gdb/doc: don't try to copy GDBvn.texi from the source tree Andrew Burgess
2024-06-14 18:45 ` Pedro Alves
2024-06-06 17:49 ` Andrew Burgess [this message]
2024-06-06 17:49 ` [PATCHv3 3/6] gdb/doc: allow for version.subst in " Andrew Burgess
2024-06-14 18:44 ` Pedro Alves
2024-06-06 17:49 ` [PATCHv3 4/6] gdb/doc: also look in srcdir when running TEXI2POD Andrew Burgess
2024-06-06 17:49 ` [PATCHv3 5/6] gdb/doc: fix parallel build of refcard related targets Andrew Burgess
2024-06-06 17:49 ` [PATCHv3 6/6] gdb/doc: fix parallel build of pdf and dvi files Andrew Burgess
2024-06-14 19:00 ` Pedro Alves
2024-06-15 9:44 ` Andrew Burgess
2024-06-15 12:40 ` Eli Zaretskii
2024-06-15 14:59 ` Andrew Burgess
2024-06-15 15:04 ` Andrew Burgess
2024-06-21 15:35 ` Pedro Alves
2024-06-24 11:16 ` Andrew Burgess
2024-06-25 13:39 ` Andrew Burgess
2024-06-14 18:14 ` [PATCHv3 0/6] gdb/doc: parallel build fixes and improvements Tom Tromey
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ab79ce1251a921155229ef0bd21db8f978602d4b.1717696065.git.aburgess@redhat.com \
--to=aburgess@redhat.com \
--cc=gdb-patches@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).