Junio C Hamano  committed 8c51242

Make sure 'make install' does not have to rebuild templates.

The dependency rule in templates directory forced 'make install'
that immediately followed 'make all' to rebuild boilerplates.
This was problematic for a workflow that built first as yourself
and then installed as root, from a working tree that is on an
NFS mounted filesystem that is unwritable by root.

Signed-off-by: Junio C Hamano <>

  • Participants
  • Parent commits e1e9c25

Comments (0)

Files changed (1)

File templates/Makefile

 template_dir ?= $(prefix)/share/git-core/templates/
-all: boilerplates custom
+all: boilerplates.made custom
 	find blt
 # Put templates that can be copied straight from the source
 # in a file direc--tory--file in the source.  They will be
 # just copied to the destination.
+bpsrc = $(filter-out %~,$(wildcard *--*))
+boilerplates.made : $(bpsrc)
 	ls *--* 2>/dev/null | \
 	while read boilerplate; \
 	do \
 		*) cp $$boilerplate blt/$$dst ;; \
 		esac || exit; \
 	done || exit
+	date >$@
 # If you need build-tailored templates, build them into blt/
 # directory yourself here.
 	: no custom templates yet
-	rm -rf blt
+	rm -rf blt boilerplates.made
 install: all
 	$(INSTALL) -d -m755 $(DESTDIR)$(template_dir)