2011-06-13 06:37:28 -04:00
|
|
|
RELEASING
|
|
|
|
=========
|
|
|
|
|
|
|
|
When making a new release;
|
|
|
|
|
2013-03-22 17:18:53 -04:00
|
|
|
- If it's a new stable release that increments the Cogl minor version
|
|
|
|
remember to add a new COGL_VERSION_1_X define to cogl/cogl-macros.h
|
|
|
|
|
2011-06-13 06:37:28 -04:00
|
|
|
- Verify that you don't have uncommitted changes; both:
|
|
|
|
|
|
|
|
$ git diff HEAD
|
|
|
|
|
|
|
|
and:
|
|
|
|
|
2011-06-29 08:50:11 -04:00
|
|
|
$ git diff --stat master origin/master
|
2011-06-13 06:37:28 -04:00
|
|
|
|
|
|
|
should be empty.
|
|
|
|
|
|
|
|
- Clean your work directory:
|
|
|
|
|
|
|
|
$ git clean -xdf
|
|
|
|
|
|
|
|
This ensures that you don't have stale files lying around.
|
|
|
|
|
|
|
|
- Run:
|
|
|
|
|
2012-03-05 18:31:04 -05:00
|
|
|
$ ./autogen.sh --enable-gtk-doc --enable-profile --enable-gles1 --enable-gles2 --enable-gl --enable-xlib-egl-platform --enable-wayland-egl-platform --enable-glx --enable-wayland-egl-server
|
2011-06-13 06:37:28 -04:00
|
|
|
$ make all
|
|
|
|
$ make install
|
|
|
|
|
|
|
|
And verify that the code builds and installs from a clean Git snapshot.
|
|
|
|
|
2011-09-19 11:51:36 -04:00
|
|
|
- Run checks including running the conformance tests:
|
|
|
|
|
|
|
|
$ make check
|
|
|
|
|
2011-06-13 06:37:28 -04:00
|
|
|
- Test with Clutter:
|
|
|
|
|
2011-09-19 11:51:36 -04:00
|
|
|
Since we haven't migrated all the Cogl unit tests from Clutter yet, you
|
2011-06-13 06:37:28 -04:00
|
|
|
should now build Clutter against Cogl and run the conformance tests:
|
|
|
|
|
|
|
|
$ ./autogen.sh
|
|
|
|
$ make all
|
|
|
|
$ make test
|
|
|
|
|
2011-10-17 09:59:35 -04:00
|
|
|
- Test cross-compiling for Windows:
|
|
|
|
|
|
|
|
Please use the build/mingw/mingw-fetch-dependencies.sh with a fresh
|
|
|
|
build directory to make sure that all of the download links still
|
|
|
|
work.
|
|
|
|
|
2011-06-13 06:37:28 -04:00
|
|
|
- Update the release documentation:
|
|
|
|
|
|
|
|
- NEWS: new feature details, bugs fixed, acknowledgements
|
|
|
|
- Use git shortlog -n -s to get the list of authors
|
|
|
|
- The following bash snippet may help with extracting the list of
|
|
|
|
bugs closed:
|
2012-05-14 10:02:52 -04:00
|
|
|
- Grep the source code for "XXX: ONGOING BUG" and add a
|
|
|
|
section about workarounds for un-resolved upstream bugs.
|
|
|
|
|
2011-06-13 06:37:28 -04:00
|
|
|
|
|
|
|
URLS=$(git log $1|grep bugzilla|sort|uniq)
|
|
|
|
for i in $URLS
|
|
|
|
do
|
|
|
|
ID=$(echo $i|cut -d'=' -f2)
|
|
|
|
TITLE=$(wget --quiet -O - $i|grep -e '<title>.*</title>'|sed -e 's/<title>Bug [0-9]\+ – \(.*\)<\/title>/\1/')
|
|
|
|
echo " #$ID - $TITLE"
|
|
|
|
done
|
|
|
|
|
|
|
|
- README: dependencies, any behavioural changes relevant to
|
|
|
|
developers;
|
|
|
|
|
|
|
|
then commit the changes.
|
|
|
|
|
|
|
|
- Read the release comments in configure.ac
|
|
|
|
- Bump cogl_1_minor_version to the next even number
|
|
|
|
- Don't change the 2.0 version number
|
2011-07-20 06:19:55 -04:00
|
|
|
- Update the libtool versioning
|
2011-06-13 06:37:28 -04:00
|
|
|
- Update the cogl_release_status status to "release" or "snapshot"
|
|
|
|
as appropriate.
|
|
|
|
- commit the changes.
|
|
|
|
|
|
|
|
- Run:
|
|
|
|
|
|
|
|
$ make release-publish
|
|
|
|
|
|
|
|
which will:
|
|
|
|
|
|
|
|
- do sanity checks on the build
|
|
|
|
- distcheck the release
|
|
|
|
- tag the repository with the version number
|
|
|
|
- upload the tarball to the remote server (needs SSH account)
|
|
|
|
|
|
|
|
- Bump cogl_1_micro_version to the next odd number
|
|
|
|
- Revert cogl_release_status to "git"
|
|
|
|
|
|
|
|
- Push the branch and then the tag, e.g.:
|
|
|
|
|
|
|
|
$ git push origin master
|
|
|
|
$ git push origin 1.7.0
|
|
|
|
|
|
|
|
- Announce release to the waiting world on the blog and mailing lists. Use
|
|
|
|
the template printed by `make release-publish`.
|