afbb13e1a4
This adds compiler symbol deprecation declarations for old Cogl APIs so that users can easily see via compiler warning when they are using these symbols, and also see a hint for what the apis should be replaced with. So that users of Cogl can manage when to show these warnings this introduces a scheme borrowed from glib whereby you can declare what version of the Cogl api you are using: COGL_VERSION_MIN_REQUIRED can be defined to indicate the oldest Cogl api that the application wants to use. Cogl will only warn about deprecations for symbols that were deprecated earlier than this required version. If this is left undefined then by default Cogl will warn about all deprecations. COGL_VERSION_MAX_ALLOWED can be defined to indicate the newest api that the application uses. If the application uses symbols newer than this then Cogl will give a warning about that. This patch removes the need to maintain the COGL_DISABLE_DEPRECATED guards around deprecated symbols. This patch fixes a few uses of deprecated symbols in the examples/ Reviewed-by: Neil Roberts <neil@linux.intel.com>
104 lines
2.8 KiB
Plaintext
104 lines
2.8 KiB
Plaintext
RELEASING
|
|
=========
|
|
|
|
When making a new release;
|
|
|
|
- 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
|
|
|
|
- Verify that you don't have uncommitted changes; both:
|
|
|
|
$ git diff HEAD
|
|
|
|
and:
|
|
|
|
$ git diff --stat master origin/master
|
|
|
|
should be empty.
|
|
|
|
- Clean your work directory:
|
|
|
|
$ git clean -xdf
|
|
|
|
This ensures that you don't have stale files lying around.
|
|
|
|
- Run:
|
|
|
|
$ ./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
|
|
$ make all
|
|
$ make install
|
|
|
|
And verify that the code builds and installs from a clean Git snapshot.
|
|
|
|
- Run checks including running the conformance tests:
|
|
|
|
$ make check
|
|
|
|
- Test with Clutter:
|
|
|
|
Since we haven't migrated all the Cogl unit tests from Clutter yet, you
|
|
should now build Clutter against Cogl and run the conformance tests:
|
|
|
|
$ ./autogen.sh
|
|
$ make all
|
|
$ make test
|
|
|
|
- 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.
|
|
|
|
- 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:
|
|
- Grep the source code for "XXX: ONGOING BUG" and add a
|
|
section about workarounds for un-resolved upstream bugs.
|
|
|
|
|
|
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
|
|
- Update the libtool versioning
|
|
- 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`.
|