Re: [RFC/PATCH 4/3] Simplify naming (versioning) of non-release tig tarball and rpm file
- From
Jonas Fonseca <fonseca@diku.dk>
- Date
- Jun 3, 2007, 09:11 UTC
- Message-ID
- <20070603091126.GA1419@diku.dk>
- In-Reply-To
- <200706021952.28426.jnareb@gmail.com>
Jakub Narebski <jnareb@gmail.com> wrote Sat, Jun 02, 2007:
Show 9 quoted lines
> This is proposal to simplify naming of non-release tarballs and rpm file, > both for tig and also for git itself. Instead of using whole git-describe > output as version number in tarball/rpm name (BTW. it would be nice to > have command line switch to git-describe which would return old output, > without number of commits since given tag) use tag part as version number, > and number of commits since (plus optional marking dirty) as release > number. > > What do you think about this?
I like the simpler and less confusing names. How about the simpler version below?
BTW, I also added `make dist DIST_VERSION=X.Y` to make it easy to force a version. I used it when building the documentation in the release branch.
Show 19 quoted lines
> diff --git a/Makefile b/Makefile > index b49d7f8..1e67586 100644 > --- a/Makefile > +++ b/Makefile > @@ -17,7 +17,13 @@ ifdef DIST_VERSION > VERSION = $(DIST_VERSION) > endif > > -RPM_VERSION = $(subst -,.,$(VERSION)) > +# $(GITDESC) looks like either x.y, or like x.y-z-g<sha1> > +SPLIT_VERSION := $(shell echo $(GITDESC) | \ > + sed -e 's/^\(.*\)-\([0-9]\+\)-\(g[0-9a-f]\+\)$$/\1 \2 \3/g') > +RPM_VERSION = $(subst -,.,$(word 1,$(SPLIT_VERSION))) > +RPM_RELEASE = $(strip \ > + $(subst -,.,$(if $(word 2,$(SPLIT_VERSION)),\ > + $(word 2,$(SPLIT_VERSION)),0)$(WTDIRTY))) > > LDLIBS = -lcurses > CFLAGS = -Wall -O2 '-DVERSION="$(VERSION)"'
diff --git a/Makefile b/Makefile index 91cb097..622a916 100644 --- a/Makefile +++ b/Makefile @@ -17,7 +17,11 @@ ifdef DIST_VERSION VERSION = $(DIST_VERSION) endif -RPM_VERSION = $(subst -,.,$(VERSION)) +# Split the version "TAG-OFFSET-gSHA1-DIRTY" into "TAG OFFSET" +# and append 0 as a fallback offset for "exact" tagged versions. +RPM_VERLIST = $(filter-out g% dirty,$(subst -, ,$(VERSION))) 0 +RPM_VERSION = $(word 1,$(RPM_VERLIST)) +RPM_RELEASE = $(word 2,$(RPM_VERLIST))$(if $(WTDIRTY),.dirty) LDLIBS = -lcurses CFLAGS = -Wall -O2
-- Jonas Fonseca