From: Andrew Burgess Date: Thu, 6 Jun 2024 17:29:23 +0000 (+0100) Subject: gdb/doc: merge rules for building .1 and .5 man pages X-Git-Tag: binutils-2_43~316 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6c715062f4a0b2295e7c6e2af832ef03d9393028;p=thirdparty%2Fbinutils-gdb.git gdb/doc: merge rules for building .1 and .5 man pages 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. Approved-By: Tom Tromey --- 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: