Re: [PATCH] Makefile: add missing dependencies of 'config-list.h'
- From
SZEDER Gábor <szeder.dev@gmail.com>
- Date
- Apr 9, 2021, 21:20 UTC
- Message-ID
- <20210409212044.GD2947267@szeder.dev>
- In-Reply-To
- <YG+UeQRwdBsVeRNV@coredump.intra.peff.net>
On Thu, Apr 08, 2021 at 07:40:41PM -0400, Jeff King wrote:
Show 20 quoted lines
> On Fri, Apr 09, 2021 at 12:08:23AM +0200, Ævar Arnfjörð Bjarmason wrote: > > > > -config-list.h: > > > +config-list.h: Documentation/*config.txt Documentation/config/*.txt > > > $(QUIET_GEN)$(SHELL_PATH) ./generate-configlist.sh \ > > > >$@+ && mv $@+ $@ > > > > > > command-list.h: generate-cmdlist.sh command-list.txt > > > > > > -command-list.h: $(wildcard Documentation/git*.txt) Documentation/*config.txt Documentation/config/*.txt > > > +command-list.h: $(wildcard Documentation/git*.txt) > > > $(QUIET_GEN)$(SHELL_PATH) ./generate-cmdlist.sh \ > > > $(patsubst %,--exclude-program %,$(EXCLUDED_PROGRAMS)) \ > > > command-list.txt >$@+ && mv $@+ $@ > > > > This change makes sense. > > I agree it looks like it's moving in the right direction, but I am > slightly puzzled by the existing code. Why do we need to use $(wildcard) > for git*.txt, but not for the others?
We don't need $(wildcard) for git*.txt either, because 'make' expands wildcards in prerequisites, see e.g.:
https://www.gnu.org/software/make/manual/html_node/Wildcard-Examples.html
On a related note: all config variables are now listed in Documentation/config/*.txt; Documentation/*config.txt doesn't contain any, so that could be removed.