diff options
author | Carsten Dominik <carsten.dominik@gmail.com> | 2010-07-20 16:16:13 +0200 |
---|---|---|
committer | Carsten Dominik <carsten.dominik@gmail.com> | 2010-07-20 16:16:13 +0200 |
commit | 8d0735b89e4391a23c5525b6eaa84ddc073eef57 (patch) | |
tree | 2ee7d3cfae2476112aa9d720c19ba17785e6f3dc | |
parent | bdad4a1affd8b41b9b0064ecdadbf53a9626b0e8 (diff) | |
download | org-mode-8d0735b89e4391a23c5525b6eaa84ddc073eef57.tar.gz |
Reorder Makefile
OK, we finally have a make file where I can do a complete release,
including all the git updates on master and maint branches, with a
single command:
make release TAG=N.NN
It is important that the working directory is clean when calling this
command.
Since this command can fail and then leave the git repo in an
uncertain state, it is best to first run this:
make testrelease
This will create a throw-away branch "testrelease" and try alll the
commands there, to make sure everything is fine.
-rw-r--r-- | Makefile | 93 |
1 files changed, 43 insertions, 50 deletions
@@ -272,6 +272,41 @@ pdf: doc/org.pdf doc/orgguide.pdf card: doc/orgcard.pdf doc/orgcard_letter.pdf doc/orgcard.txt +testrelease: + git checkout -b testrelease maint + git merge -s recursive -X theirs master + UTILITIES/set-version.pl testing + git commit -a -m "Release testing" + make distfile TAG=testversion + make cleanrel + rm -rf org-testversion* + git reset --hard + git checkout master + git branch -D testrelease + +release: + git checkout maint + git merge -s recursive -X theirs master + UTILITIES/set-version.pl $(TAG) + git commit -a -m "Release $(TAG)" + make relup TAG=$(TAG) + make cleanrel + rm -rf org-$(TAG) + rm org-$(TAG)*.zip + rm org-$(TAG)*.tar.gz + make pushreleasetag TAG=$(TAG) + git push origin maint + git checkout master + UTILITIES/set-version.pl -o $(TAG) + git commit -a -m "Update website to show $(TAG) as current release" + git push + make updateweb + +relup: + ${MAKE} makerelease + ${MAKE} upload_release + ${MAKE} upload_manual + distfile: @if [ "X$(TAG)" = "X" ]; then echo "*** No tag ***"; exit 1; fi touch doc/org.texi doc/orgcard.tex # force update @@ -315,44 +350,15 @@ upload_manual: rsync -avuz --delete doc/manual/ cdominik@orgmode.org:orgmode.org/manual/ rsync -avuz --delete doc/guide/ cdominik@orgmode.org:orgmode.org/guide/ -relup0: - ${MAKE} makerelease - ${MAKE} upload_release - -relup: - ${MAKE} makerelease - ${MAKE} upload_release - ${MAKE} upload_manual - -testrelease: - git checkout -b testrelease maint - git merge -s recursive -X theirs master - UTILITIES/set-version.pl testing - git commit -a -m "Release testing" - make distfile TAG=testversion - make cleanrel - rm -rf org-testversion* - git reset --hard - git checkout master - git branch -D testrelease +cleanall: + ${MAKE} clean + rm -f lisp/org-install.el -release: - git checkout maint - git merge -s recursive -X theirs master - UTILITIES/set-version.pl $(TAG) - git commit -a -m "Release $(TAG)" - make relup TAG=$(TAG) - make cleanrel - rm -rf org-$(TAG) - rm org-$(TAG)*.zip - rm org-$(TAG)*.tar.gz - make pushreleasetag TAG=$(TAG) - git push origin maint - git checkout master - UTILITIES/set-version.pl -o $(TAG) - git commit -a -m "Update website to show $(TAG) as current release" - git push - make updateweb +clean: + ${MAKE} cleanelc + ${MAKE} cleandoc + ${MAKE} cleanrel + rm -f *~ */*~ */*/*~ cleancontrib: find contrib -name \*~ -exec rm {} \; @@ -371,16 +377,6 @@ cleanrel: rm -rf org-6.* rm -rf org-6*zip org-6*tar.gz -clean: - ${MAKE} cleanelc - ${MAKE} cleandoc - ${MAKE} cleanrel - rm -f *~ */*~ */*/*~ - -cleanall: - ${MAKE} clean - rm -f lisp/org-install.el - .el.elc: $(ELC) $< @@ -396,9 +392,6 @@ pushreleasetag: git-tag -m "Adding release tag" -a release_$(TAG) git-push git+ssh://repo.or.cz/srv/git/org-mode.git release_$(TAG) -dummy: - echo ${prefix} - # Dependencies lisp/org.elc: lisp/org-macs.el lisp/org-compat.el lisp/org-faces.el |