Mercurial > hg > octave-nkf > gnulib-hg
changeset 10281:0f2747d199d0
Don't allow installation with stale devel version number.
* top/GNUmakefile (_is-install-target): New macro.
(_curr-ver): Forbid installation with stale version number.
Signed-off-by: Eric Blake <ebb9@byu.net>
author | Eric Blake <ebb9@byu.net> |
---|---|
date | Mon, 21 Jul 2008 09:13:38 -0600 |
parents | e99e36699b9a |
children | e5edd1a3cc28 |
files | ChangeLog top/GNUmakefile |
diffstat | 2 files changed, 17 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2008-07-21 Eric Blake <ebb9@byu.net> + + Don't allow installation with stale devel version number. + * top/GNUmakefile (_is-install-target): New macro. + (_curr-ver): Forbid installation with stale version number. + 2008-07-20 Bruno Haible <bruno@clisp.org> * modules/c-stack-tests (Makefile.am): Add LIBSIGSEGV to
--- a/top/GNUmakefile +++ b/top/GNUmakefile @@ -55,12 +55,22 @@ ifeq ($(_have-git-version-gen)0,yes$(MAKELEVEL)) _is-dist-target = $(filter-out %clean, \ $(filter maintainer-% dist% alpha beta major,$(MAKECMDGOALS))) - ifneq (,$(_is-dist-target)) + _is-install-target = $(filter-out %check, $(filter install%,$(MAKECMDGOALS))) + ifneq (,$(_is-dist-target)$(_is-install-target)) _curr-ver := $(shell cd $(srcdir) \ && $(_build-aux)/git-version-gen .tarball-version) ifneq ($(_curr-ver),$(VERSION)) ifeq ($(_curr-ver),UNKNOWN) $(info WARNING: unable to verify if $(VERSION) is correct version) + else ifneq (,$(_is-install-target)) + # GNU Coding Standards state that 'make install' should not cause + # recompilation after 'make all'. But as long as changing the version + # string alters config.h, the cost of having 'make all' always have an + # up-to-date version is prohibitive. So, as a compromise, we merely + # refuse to install if the version string is out of date; the user + # must run 'autoreconf' (or something like 'make distcheck') to + # fix the version, 'make all' to propagate it, then 'make install'. + $(error version string $(VERSION) is out of date; run autoreconf before installing) else $(info INFO: running autoreconf for new version string: $(_curr-ver)) _dummy := $(shell cd $(srcdir) && rm -rf autom4te.cache .version \