about summary refs log tree commit homepage
diff options
context:
space:
mode:
authorEric Wong <normalperson@yhbt.net>2009-09-17 19:34:43 -0700
committerEric Wong <normalperson@yhbt.net>2009-09-17 19:34:43 -0700
commite46489991e6306ed5ebdbb3f8e72d21070f1317b (patch)
treec90b583ddb378b5e0b4ee9a2c9bd0aeb7328692e
parentbdbd96ab70a2702a7d26e6638e096b2f64346853 (diff)
downloadunicorn-e46489991e6306ed5ebdbb3f8e72d21070f1317b.tar.gz
Additionally, force ourselves to verify our working tree against
$(VERSION) when doing releases because we don't want to screw
that up.
-rw-r--r--GNUmakefile8
1 files changed, 5 insertions, 3 deletions
diff --git a/GNUmakefile b/GNUmakefile
index 52e3401..4cd7b97 100644
--- a/GNUmakefile
+++ b/GNUmakefile
@@ -191,6 +191,8 @@ $(release_changes):
 $(release_notes):
         GIT_URL=$(GIT_URL) $(rake) -s release_notes > $@+
         $(VISUAL) $@+ && test -s $@+ && mv $@+ $@
+
+# ensures we're actually on the tagged $(VERSION), only used for release
 verify:
         git rev-parse --verify refs/tags/v$(VERSION)^{}
         git diff-index --quiet HEAD^0
@@ -207,14 +209,14 @@ $(pkgtgz): HEAD = v$(VERSION)
 $(pkgtgz): .manifest
         @test -n "$(distdir)"
         $(RM) -r $(distdir)
-        git archive --format=tar --prefix=$(distdir)/ $(HEAD) | tar xv
-        install -m644 $^ $(distdir)/
+        mkdir -p $(distdir)
+        tar c `cat .manifest` | (cd $(distdir) && tar x)
         cd pkg && tar c $(basename $(@F)) | gzip -9 > $(@F)+
         mv $@+ $@
 
 package: $(pkgtgz) $(pkggem)
 
-release: package $(release_notes) $(release_changes)
+release: verify package $(release_notes) $(release_changes)
         rubyforge add_release -f -n $(release_notes) -a $(release_changes) \
           $(rfproject) $(rfpackage) $(VERSION) $(pkggem)
         rubyforge add_file \