1: Increment CAPI_INTERFACE_X in configure.in - For a release with no interface changes just bump REVISION. [ Even if *nothing* changed in CAPI ] - Adding interfaces, bump CURRENT/AGE, set REVISION to 0. - Deleting interfaces / compatibility issues - bump CURRENT, others to zero [ THIS MUST BE CAREFULLY AVOIDED ] 2: Increment release version: - VERSION_PATCH for bugfixes/improvements (even breaking C++ API) - VERSION_MINOR for NEW interfaces in the C lib - VERSION_MAJOR for SUBSTANTIAL additions or C lib ABI break [ THIS MUST BE CAREFULLY AVOIDED ] 3: Release-mark the ChangeLog (search for '---' at start of a line to see how a release mark looks like). 4: Update the NEWS file (extract most important things from the ChangeLog) 5: make distcheck 6: check everything is ok ;) 7: Tag the release: $ base=http://svn.osgeo.org/geos/ $ svn copy -m "Tagged release MAJOR.MINOR.PATCH" \ $base/trunk $base/tags/MAJOR.MINOR.PATCH