Make git-version-gen optional. Add _build-aux variable.
[gnulib.git] / build-aux / GNUmakefile
index fac11d3..a9d6196 100644 (file)
@@ -40,6 +40,9 @@ export TAR_OPTIONS = --owner=0 --group=0 --numeric-owner
 
 include Makefile
 
+# Allow cfg.mk to override this.
+_build-aux ?= build-aux
+
 # Some projects override e.g., _autoreconf here.
 -include $(srcdir)/cfg.mk
 include $(srcdir)/maint.mk
@@ -48,11 +51,12 @@ _autoreconf ?= autoreconf
 
 # Ensure that $(VERSION) is up to date for dist-related targets, but not
 # for others: rerunning autoreconf and recompiling everything isn't cheap.
-ifeq (0,$(MAKELEVEL))
+_have-git-version-gen := $(shell test -f ./$(_build-aux)/git-version-gen && echo yes)
+ifeq ($(_have-git-version-gen)0,yes$(MAKELEVEL))
   _is-dist-target = $(filter-out %clean, \
     $(filter dist% alpha beta major,$(MAKECMDGOALS)))
   ifneq (,$(_is-dist-target))
-    _curr-ver := $(shell cd $(srcdir) && ./build-aux/git-version-gen \
+    _curr-ver := $(shell cd $(srcdir) && ./$(_build-aux)/git-version-gen \
                    $(srcdir)/.tarball-version)
     ifneq ($(_curr-ver),$(VERSION))
       $(info INFO: running autoreconf for new version string: $(_curr-ver))