From 16c005fe6ad5e41b58911c2aef0831a60f197c06 Mon Sep 17 00:00:00 2001 From: Jim Meyering Date: Thu, 7 Feb 2008 23:30:07 +0100 Subject: [PATCH] We *do* need two different version files. One for tarball-only, the other to be updated any time we get a new value of $(VERSION). * Makefile.am (dist-hook): Create .tarball-version in dist tarball. * GNUmakefile (_curr-ver): Make git-version-gen use it. * .gitignore: Ignore it. --- .gitignore | 1 + ChangeLog | 7 +++++++ GNUmakefile | 9 +++++++-- Makefile.am | 3 +++ 4 files changed, 18 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 5983d4c..a3d4190 100644 --- a/.gitignore +++ b/.gitignore @@ -5,6 +5,7 @@ */.deps *~ .gdb-history +.tarball-version ABOUT-NLS INSTALL Makefile diff --git a/ChangeLog b/ChangeLog index 0cc95ce..c0b9743 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,12 @@ 2008-02-07 Jim Meyering + We *do* need two different version files. + One for tarball-only, the other to be updated any time we + get a new value of $(VERSION). + * Makefile.am (dist-hook): Create .tarball-version in dist tarball. + * GNUmakefile (_curr-ver): Make git-version-gen use it. + * .gitignore: Ignore it. + Fix a typo in description of size suffixes: s/GB/G/. * doc/coreutils.texi (od invocation, head invocation, tail invocation): Spotted by Bert Wesarg. diff --git a/GNUmakefile b/GNUmakefile index af73b7e..5f17049 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -40,21 +40,26 @@ export TAR_OPTIONS = --owner=0 --group=0 --numeric-owner include Makefile +_curr-ver := $(VERSION) + # Ensure that $(VERSION) is up to date for dist-related targets, but not # for others: running autoreconf and recompiling everything isn't cheap. ifeq (0,$(MAKELEVEL)) _is-dist-target = $(filter dist% alpha beta major,$(MAKECMDGOALS)) ifneq (,$(_is-dist-target)) - _curr-ver := $(shell build-aux/git-version-gen .version) + _curr-ver := $(shell build-aux/git-version-gen .tarball-version) ifneq ($(_curr-ver),$(VERSION)) $(info INFO: running autoreconf for new version string: $(_curr-ver)) dummy := $(shell rm -rf autom4te.cache; autoreconf) - dummy := $(shell echo $(_curr-ver) > .version) _created_version_file = 1 endif endif endif +ifneq ($(_curr-ver),$(VERSION)) + dummy := $(shell echo $(_curr-ver) > .version) +endif + ifneq ($(_created_version_file),1) dummy := $(shell test -f .version || echo $(VERSION) > .version) endif diff --git a/Makefile.am b/Makefile.am index 79b5089..8205875 100644 --- a/Makefile.am +++ b/Makefile.am @@ -70,9 +70,12 @@ BUILT_SOURCES = .version .version: echo $(VERSION) > $@-t && mv $@-t $@ +# Arrange so that .tarball-version appears only in the distribution +# tarball, and never in a checked-out repository. # The perl substitution is to change some key uses of "rm" to "/bin/rm". # See the rm_subst comment for details. dist-hook: + echo $(VERSION) > $(distdir)/.tarball-version perl -pi -e '$(rm_subst)' $(distdir)/src/Makefile.in distcheck-hook: -- 2.7.4