[cairo-commit] 6 commits - configure.in .gitignore INSTALL
Makefile.am RELEASING
Behdad Esfahbod
behdad at kemper.freedesktop.org
Wed Mar 15 12:31:27 PST 2006
.gitignore | 1 +
INSTALL | 2 +-
Makefile.am | 47 ++++++++++++++++++++++++++++++++++++++++++++---
RELEASING | 26 ++++++++++++++------------
configure.in | 2 +-
5 files changed, 61 insertions(+), 17 deletions(-)
New commits:
diff-tree 0623f8a7d1452c27892f938fe28e6e173e67e136 (from parents)
Merge: 26b06b3638ec768da01839cfa3c75e9807b14ee8 a7f58f886253f4ae66c9b0ed4472f575eaf2ec1d
Author: Behdad Esfahbod <behdad at home.(none)>
Date: Wed Mar 15 15:25:59 2006 -0500
Merge branch 'master' of git+ssh://git.cairographics.org/git/cairo
diff-tree 26b06b3638ec768da01839cfa3c75e9807b14ee8 (from f5013b6dc6442493ea38949fdcc137e5c44b6872)
Author: Behdad Esfahbod <behdad at home.(none)>
Date: Wed Mar 15 15:17:26 2006 -0500
Clarify that git tag -s does GPG signing.
(cherry picked from e94251861565ed154e15ca3a7198ffe3828536fe commit)
diff --git a/RELEASING b/RELEASING
index 8020404..49dd82c 100644
--- a/RELEASING
+++ b/RELEASING
@@ -68,8 +68,13 @@ Here are the steps to follow to create a
* scp the three files to appear on http://cairographics.org/releases
* Place local copies of the three files in the releases directory
* Create a LATEST-package-version file (after deleting any old one)
- * Tag the entire source tree with a tag of the form X.Y.Z
+ * Tag the entire source tree with a tag of the form X.Y.Z, and sign
+ the tag with your GPG key (asks for your GPG password, and you
+ may need to set GIT_COMMITTER_NAME and GIT_COMMITTER_EMAIL to match
+ your public-key's setting or this fails.)
* Provide some text for the release announcement (see below).
+ If for some reason you lost this message, "make release-publish-message"
+ prints it for you.
7) Increment cairo_version_micro to the next larger (odd) number in
configure, and commit.
diff-tree f5013b6dc6442493ea38949fdcc137e5c44b6872 (from 46e5ed66d3329f1608950d817e7248c91087893a)
Author: Behdad Esfahbod <behdad at home.(none)>
Date: Wed Mar 15 14:19:08 2006 -0500
Add a release-publish-message target to only get the message.
(cherry picked from 98facc6c2d0f57f05de7b98c2aaa592c895d1a09 commit)
diff --git a/Makefile.am b/Makefile.am
index 47bedef..165f9c3 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -145,7 +145,7 @@ release-upload: release-check $(tar_file
ssh $(RELEASE_UPLOAD_HOST) "rm -f $(RELEASE_UPLOAD_DIR)/LATEST-$(PACKAGE)-[0-9]* && ln -s $(tar_file) $(RELEASE_UPLOAD_DIR)/LATEST-$(PACKAGE)-$(VERSION)"
git tag -s $(CAIRO_VERSION_MAJOR).$(CAIRO_VERSION_MINOR).$(CAIRO_VERSION_MICRO)
-release-publish: release-upload releases/$(sha1_file)
+release-publish-message: releases/$(sha1_file)
@echo ""
@echo "Please send an announcement to $(RELEASE_ANNOUNCE_LIST)"
@echo "including the following:"
@@ -172,6 +172,8 @@ release-publish: release-upload releases
@echo "Last but not least, do not forget to bump up the micro"
@echo "version component to the next (odd) number and commit."
+release-publish: release-upload release-publish-message
+
# XXX: Depending on all here is rather overkill. We don't really need
# the library built in order to create the documentation.
docs-publish: all
diff-tree 46e5ed66d3329f1608950d817e7248c91087893a (from f00a1833341699135e792e3a77e19dca0d1dba86)
Author: Behdad Esfahbod <behdad at home.(none)>
Date: Wed Mar 15 11:25:02 2006 -0500
Note using "git diff" instead of "git status" as the latter is a bit tricky when it says nothing to commit...
(cherry picked from a1621eadb655806de8bb47c2e701de6eaa9d2090 commit)
diff --git a/RELEASING b/RELEASING
index bf7317b..8020404 100644
--- a/RELEASING
+++ b/RELEASING
@@ -1,7 +1,7 @@
Here are the steps to follow to create a new cairo release:
1) Ensure that there are no local, uncommitted modifications.
- It's probably good enough if "git status" says so.
+ It's probably good enough if "git diff" doesn't output anything.
2) Verify that the code passes "make distcheck"
diff-tree f00a1833341699135e792e3a77e19dca0d1dba86 (from 037732cac9ff402e51d80d6ed54cc32d669aa0d9)
Author: Behdad Esfahbod <behdad at home.(none)>
Date: Wed Mar 15 11:18:40 2006 -0500
Update release infra to reflect git transition.
(cherry picked from 508b0be5f2023dabe9561f4ca62481d6a4c8c5ae commit)
diff --git a/INSTALL b/INSTALL
index 4a49f00..ab82781 100644
--- a/INSTALL
+++ b/INSTALL
@@ -16,7 +16,7 @@ This final step may require temporary ro
you don't have write permission to the directory in which cairo will
be installed.
-NOTE: If you are working with source from CVS rather than from a tar
+NOTE: If you are working with source from git/cvs rather than from a tar
file, then you should use ./autogen.sh in place of ./configure
anywhere it is mentioned in these instructions.
diff --git a/Makefile.am b/Makefile.am
index 1b209da..47bedef 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -121,7 +121,7 @@ release-verify-newer:
@echo -n "Checking that no $(VERSION) release already exists..."
@ssh $(RELEASE_UPLOAD_HOST) test ! -e $(RELEASE_UPLOAD_DIR)/$(tar_file) \
|| (echo "Ouch." && echo "Found: $(RELEASE_UPLOAD_HOST):$(RELEASE_UPLOAD_DIR)/$(tar_file)" \
- && echo "Are you sure you have an updated CVS checkout?" \
+ && echo "Are you sure you have an updated checkout?" \
&& echo "This should never happen." \
&& false)
@echo "Good."
@@ -143,7 +143,7 @@ release-upload: release-check $(tar_file
scp $(tar_file) $(sha1_file) $(gpg_file) $(RELEASE_UPLOAD_HOST):$(RELEASE_UPLOAD_DIR)
mv $(tar_file) $(sha1_file) $(gpg_file) releases
ssh $(RELEASE_UPLOAD_HOST) "rm -f $(RELEASE_UPLOAD_DIR)/LATEST-$(PACKAGE)-[0-9]* && ln -s $(tar_file) $(RELEASE_UPLOAD_DIR)/LATEST-$(PACKAGE)-$(VERSION)"
- $(CVS) tag RELEASE_$(CAIRO_VERSION_MAJOR)_$(CAIRO_VERSION_MINOR)_$(CAIRO_VERSION_MICRO)
+ git tag -s $(CAIRO_VERSION_MAJOR).$(CAIRO_VERSION_MINOR).$(CAIRO_VERSION_MICRO)
release-publish: release-upload releases/$(sha1_file)
@echo ""
diff --git a/RELEASING b/RELEASING
index df87e38..bf7317b 100644
--- a/RELEASING
+++ b/RELEASING
@@ -1,12 +1,7 @@
Here are the steps to follow to create a new cairo release:
-1) Ensure that there are no local, uncommitted modifications. The best
- thing to do here may be to begin with a fresh checkout from CVS:
-
- cvs -d cairographics.org:/cvs/cairo co cairo
-
- But it's probably good enough if "cvs -q update -Ad" generates no
- output.
+1) Ensure that there are no local, uncommitted modifications.
+ It's probably good enough if "git status" says so.
2) Verify that the code passes "make distcheck"
@@ -32,7 +27,10 @@ Here are the steps to follow to create a
previous release tag:
find src/ -name '*.h' -not -name '*-private.h' -not -name 'cairoint.h' | \
- xargs cvs diff -r RELEASE_X_Y_Z
+ xargs git diff X.Y.Z --
+
+ Note that for older releases made under CVS, the tag name is
+ RELEASE_X_Y_Z instead.
4) Increment cairo_version_{minor|micro} and LT_{CURRENT|VERSION|AGE}
in configure.in:
@@ -55,9 +53,8 @@ Here are the steps to follow to create a
5) Commit the changes to NEWS and configure.in
- Don't forget to fill out the ChangeLog just like with any
- other commit. It's especially important to mention the new
- version number in the ChangeLog.
+ It's especially important to mention the new version number in your
+ commit log.
6) Run "make release-publish" which will perform the following steps
for you:
@@ -71,7 +68,7 @@ Here are the steps to follow to create a
* scp the three files to appear on http://cairographics.org/releases
* Place local copies of the three files in the releases directory
* Create a LATEST-package-version file (after deleting any old one)
- * Tag the entire source tree with a tag of the form RELEASE_X_Y_Z
+ * Tag the entire source tree with a tag of the form X.Y.Z
* Provide some text for the release announcement (see below).
7) Increment cairo_version_micro to the next larger (odd) number in
diff --git a/configure.in b/configure.in
index b957ada..44783bd 100644
--- a/configure.in
+++ b/configure.in
@@ -1,7 +1,7 @@
AC_PREREQ(2.54)
# cairo package version number, (as distinct from shared library version)
-# An odd micro number indicates in-progress development, (eg. from CVS)
+# An odd micro number indicates in-progress development, (eg. from git/cvs)
# An even micro number indicates a released version.
m4_define(cairo_version_major, 1)
m4_define(cairo_version_minor, 1)
diff-tree 037732cac9ff402e51d80d6ed54cc32d669aa0d9 (from 2af29f720faac0a9ee3961a81b81acae9a716220)
Author: Behdad Esfahbod <behdad at home.(none)>
Date: Wed Mar 15 10:59:59 2006 -0500
Add make bits to autogenerate ChangeLog
(cherry picked from 393000021c2e082d4b3c235939009a90035b0daf commit)
diff --git a/.gitignore b/.gitignore
index aaa9f03..ebcd093 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
+ChangeLog
Makefile
Makefile.in
aclocal.m4
diff --git a/Makefile.am b/Makefile.am
index ab5ca24..1b209da 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -11,6 +11,21 @@ EXTRA_DIST = \
COPYING-LGPL-2.1 \
COPYING-MPL-1.1 \
cairo.pc.in
+MAINTAINERCLEANFILES = \
+ $(srcdir)/INSTALL \
+ $(srcdir)/aclocal.m4 \
+ $(srcdir)/autoscan.log \
+ $(srcdir)/compile \
+ $(srcdir)/config.guess \
+ $(srcdir)/config.h.in \
+ $(srcdir)/config.sub \
+ $(srcdir)/configure.scan \
+ $(srcdir)/depcomp \
+ $(srcdir)/install-sh \
+ $(srcdir)/ltmain.sh \
+ $(srcdir)/missing \
+ $(srcdir)/mkinstalldirs \
+ `find "$(srcdir)" -type f -name Makefile.in -print`
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = cairo.pc
@@ -20,6 +35,30 @@ check-valgrind: all
DISTCHECK_CONFIGURE_FLAGS=--enable-gtk-doc
+# Creating ChangeLog from git log:
+
+MAINTAINERCLEANFILES += ChangeLog
+
+EXTRA_DIST += ChangeLog
+
+ChangeLog: $(srcdir)/ChangeLog
+
+$(srcdir)/ChangeLog:
+ @if test -d "$(srcdir)/.git"; then \
+ (cd "$(srcdir)" && \
+ ./missing --run git-log) | fmt --split-only > $@.tmp \
+ && mv -f $@.tmp $@ \
+ || ($(RM) $@.tmp; \
+ echo Failed to generate ChangeLog, your ChangeLog may be outdated >&2; \
+ (test -f $@ || echo git-log is required to generate this file >> $@)); \
+ else \
+ test -f $@ || \
+ (echo A git checkout and git-log is required to generate ChangeLog >&2 && \
+ echo A git checkout and git-log is required to generate this file >> $@); \
+ fi
+
+.PHONY: ChangeLog $(srcdir)/ChangeLog
+
# Some custom targets to make it easier to release things.
# Use either:
# make release-check
More information about the cairo-commit
mailing list