From: Junio C Hamano Date: Wed, 08 Aug 2012 21:35:38 GMT Subject: Re: [PATCH 8/4] check-docs: get documented command list from Makefile Message-ID: <7vwr19qd79.fsf@alter.siamese.dyndns.org> In-Reply-To: <20120808205752.GD12838@sigill.intra.peff.net> Jeff King writes: > The current code tries to get a list of documented commands > by doing "ls Documentation/git*txt" and culling a bunch of > special cases from the result. Looking for "git-*.txt" would > be more accurate, but would miss a few commands like > "gitweb" and "gitk". > > Fortunately, Documentation/Makefile already knows what this > list is, so we can just ask it. Annoyingly, we still have to > post-process its output a little, since make will print > extra cruft like "GIT-VERSION-FILE is up to date" to stdout. Yeah, traditional way to do this is to give special markers around what you want your Makefile to tell you, e.g. sayit: echo "@@@ $(FOO) ###" useit: $(MAKE) sayit | \ sed -ne 's/^@@@ \(.*\) ###$/\1/p' | \ ... use it ... but in this case we know we want "*.txt", so the way you filtered the output is sufficient. > Now that our list is accurate, we can remove all of the ugly > special-cases. > > Signed-off-by: Jeff King > --- > Documentation/Makefile | 3 +++ > Makefile | 26 ++------------------------ Yay, maintainability comes with a large line reduction bonus ;-) Thanks.