| # Release checklist |
| |
| ## New feature release |
| |
| * Update `WhatsNew.txt` |
| |
| * Bump version number to 2.EVEN.0 in all these locations: |
| |
| * `configure.ac`, `CMakeLists.txt`: `SDL_*_VERSION` |
| * `Xcode/SDL/Info-Framework.plist`: `CFBundleShortVersionString`, |
| `CFBundleVersion` |
| * `Makefile.os2`: `VERSION` |
| * `Makefile.w32`: `*_VERSION` |
| * `include/SDL_version.h`: `SDL_*_VERSION`, `SDL_PATCHLEVEL` |
| * `src/main/windows/version.rc`: `FILEVERSION`, `PRODUCTVERSION`, |
| `FileVersion`, `ProductVersion` |
| |
| * Bump ABI version information |
| |
| * `Xcode/SDL/SDL.xcodeproj/project.pbxproj`: |
| `DYLIB_CURRENT_VERSION`, `DYLIB_COMPATIBILITY_VERSION` |
| * set first number in `DYLIB_CURRENT_VERSION` to |
| (100 * *minor*) + 1 |
| * set second number in `DYLIB_CURRENT_VERSION` to 0 |
| * set `DYLIB_COMPATIBILITY_VERSION` to the same value |
| |
| * Regenerate `configure` |
| |
| * Run test/versioning.sh to verify that everything is consistent |
| |
| * Do the release |
| |
| ## New bugfix release |
| |
| * Check that no new API/ABI was added |
| |
| * If it was, do a new feature release (see above) instead |
| |
| * Bump version number from 2.Y.Z to 2.Y.(Z+1) (Y is even) |
| |
| * Same places as listed above |
| |
| * Bump ABI version information |
| |
| * `Xcode/SDL/SDL.xcodeproj/project.pbxproj`: |
| `DYLIB_CURRENT_VERSION`, `DYLIB_COMPATIBILITY_VERSION` |
| * set second number in `DYLIB_CURRENT_VERSION` to *patchlevel* |
| * Leave `DYLIB_COMPATIBILITY_VERSION` unchanged |
| |
| * Regenerate `configure` |
| |
| * Run test/versioning.sh to verify that everything is consistent |
| |
| * Do the release |
| |
| ## After a feature release |
| |
| * Create a branch like `release-2.24.x` |
| |
| * Bump version number to 2.ODD.0 for next development branch |
| |
| * Same places as listed above |
| |
| * Bump ABI version information |
| |
| * Same places as listed above |
| * Assume that the next feature release will contain new API/ABI |
| |
| * Run test/versioning.sh to verify that everything is consistent |
| |
| ## New development prerelease |
| |
| * Bump version number from 2.Y.Z to 2.Y.(Z+1) (Y is odd) |
| |
| * Same places as listed above |
| |
| * Bump ABI version information |
| |
| * `Xcode/SDL/SDL.xcodeproj/project.pbxproj`: |
| `DYLIB_CURRENT_VERSION`, `DYLIB_COMPATIBILITY_VERSION` |
| * set first number in `DYLIB_CURRENT_VERSION` to |
| (100 * *minor*) + *patchlevel* + 1 |
| * set second number in `DYLIB_CURRENT_VERSION` to 0 |
| * set `DYLIB_COMPATIBILITY_VERSION` to the same value |
| |
| * Regenerate `configure` |
| |
| * Run test/versioning.sh to verify that everything is consistent |
| |
| * Do the release |