tools: release process updates
This commit is contained in:
parent
5c3740d354
commit
b8a144e093
60
Makefile
60
Makefile
@ -45,6 +45,22 @@ DEFINEFLAGS:=-DMAKE -DPATCHLEVEL=$(PATCHLEVEL) $(OPTFLAGS)
|
|||||||
BUILDFLAGS:=$(DEFINEFLAGS) $(WARNINGS) -ihledger-lib
|
BUILDFLAGS:=$(DEFINEFLAGS) $(WARNINGS) -ihledger-lib
|
||||||
TIME:=$(shell date +"%Y%m%d%H%M")
|
TIME:=$(shell date +"%Y%m%d%H%M")
|
||||||
|
|
||||||
|
# file defining the current release version
|
||||||
|
VERSIONFILE=VERSION
|
||||||
|
# two or three-part version string
|
||||||
|
VERSION:=$(shell grep -v '^--' $(VERSIONFILE))
|
||||||
|
# three-part version string
|
||||||
|
ifeq ($(shell ghc -e "length (filter (=='.') \"$(VERSION)\")"), 1)
|
||||||
|
VERSION3:=$(VERSION).0
|
||||||
|
else
|
||||||
|
VERSION3:=$(VERSION)
|
||||||
|
endif
|
||||||
|
# files which should be updated when the version changes
|
||||||
|
VERSIONSENSITIVEFILES=\
|
||||||
|
hledger.cabal \
|
||||||
|
Hledger/Cli/Version.hs \
|
||||||
|
hledger-lib/hledger-lib.cabal \
|
||||||
|
|
||||||
default: tag hledger
|
default: tag hledger
|
||||||
|
|
||||||
######################################################################
|
######################################################################
|
||||||
@ -197,14 +213,22 @@ quickcabaltest: setversion
|
|||||||
|
|
||||||
# make sure cabal is happy in all possible ways
|
# make sure cabal is happy in all possible ways
|
||||||
fullcabaltest: setversion
|
fullcabaltest: setversion
|
||||||
@(cabal clean \
|
(cd hledger-lib \
|
||||||
&& cabal check \
|
&& cabal clean \
|
||||||
&& cabal configure -fvty -fweb \
|
&& cabal check \
|
||||||
&& cabal build \
|
&& cabal install \
|
||||||
&& dist/build/hledger/hledger test 2>&1 | tail -1 | grep -q 'Errors: 0 Failures: 0' \
|
&& cabal sdist \
|
||||||
&& cabal sdist \
|
&& cabal upload dist/hledger-lib-$(VERSION).tar.gz --check -v3 \
|
||||||
&& cabal upload dist/hledger-$(VERSION).tar.gz --check -v3 \
|
&& cd .. \
|
||||||
&& echo $@ passed) || echo $@ FAILED
|
&& cabal clean \
|
||||||
|
&& cabal check \
|
||||||
|
&& cabal configure -fvty -fweb \
|
||||||
|
&& cabal build \
|
||||||
|
&& dist/build/hledger/hledger test 2>&1 | tail -1 | grep -q 'Errors: 0 Failures: 0' \
|
||||||
|
&& cabal sdist \
|
||||||
|
&& cabal upload dist/hledger-$(VERSION).tar.gz --check -v3 \
|
||||||
|
&& echo $@ passed \
|
||||||
|
) || echo $@ FAILED
|
||||||
|
|
||||||
# run performance benchmarks without saving results.
|
# run performance benchmarks without saving results.
|
||||||
# Requires some commands defined in bench.tests and some BENCHEXES defined above.
|
# Requires some commands defined in bench.tests and some BENCHEXES defined above.
|
||||||
@ -469,26 +493,10 @@ hoogleindex:
|
|||||||
release: releasetest setandrecordversion tagrelease sdist
|
release: releasetest setandrecordversion tagrelease sdist
|
||||||
|
|
||||||
# Upload the latest cabal package and update hledger.org
|
# Upload the latest cabal package and update hledger.org
|
||||||
upload: hackageupload updatesite
|
upload: hackageupload pushdocs
|
||||||
|
|
||||||
releaseandupload: release upload
|
releaseandupload: release upload
|
||||||
|
|
||||||
# file defining the current release version
|
|
||||||
VERSIONFILE=VERSION
|
|
||||||
# two or three-part version string
|
|
||||||
VERSION:=`grep -v '^--' $(VERSIONFILE)`
|
|
||||||
# three-part version string
|
|
||||||
ifeq ($(shell ghc -e "length (filter (=='.') \"$(VERSION)\")"), 1)
|
|
||||||
VERSION3:=$(VERSION).0
|
|
||||||
else
|
|
||||||
VERSION3:=$(VERSION)
|
|
||||||
endif
|
|
||||||
# files which should be updated when the version changes
|
|
||||||
VERSIONSENSITIVEFILES=\
|
|
||||||
hledger.cabal \
|
|
||||||
Hledger/Cli/Version.hs \
|
|
||||||
hledger-lib/hledger-lib.cabal \
|
|
||||||
|
|
||||||
Version.hs: $(VERSIONFILE)
|
Version.hs: $(VERSIONFILE)
|
||||||
perl -p -e "s/(^version *= *)\".*?\"/\1\"$(VERSION3)\"/" -i $@
|
perl -p -e "s/(^version *= *)\".*?\"/\1\"$(VERSION3)\"/" -i $@
|
||||||
|
|
||||||
@ -511,10 +519,12 @@ tagrelease:
|
|||||||
darcs tag $(VERSION3)
|
darcs tag $(VERSION3)
|
||||||
|
|
||||||
sdist:
|
sdist:
|
||||||
|
cd hledger-lib; cabal sdist
|
||||||
cabal sdist
|
cabal sdist
|
||||||
|
|
||||||
# display a hackage upload command reminder
|
# display a hackage upload command reminder
|
||||||
hackageupload:
|
hackageupload:
|
||||||
|
cabal upload hledger-lib/dist/hledger-lib-$(VERSION).tar.gz -v3
|
||||||
cabal upload dist/hledger-$(VERSION).tar.gz -v3
|
cabal upload dist/hledger-$(VERSION).tar.gz -v3
|
||||||
|
|
||||||
# send unpushed patches to the mail list
|
# send unpushed patches to the mail list
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user