Hash :
23be3ccc
Author :
Date :
2022-09-05T11:25:10
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
DYLIB_CURRENT_VERSION
to
(100 minor*) + 1 DYLIB_CURRENT_VERSION
to 0 DYLIB_COMPATIBILITY_VERSION
to the same value
Regenerate configure
Run test/versioning.sh to verify that everything is consistent
Do the release
Check that no new API/ABI was added
Bump version number from 2.Y.Z to 2.Y.(Z+1) (Y is even)
Bump ABI version information
Xcode/SDL/SDL.xcodeproj/project.pbxproj
:
DYLIB_CURRENT_VERSION
, DYLIB_COMPATIBILITY_VERSION
DYLIB_CURRENT_VERSION
to patchlevel DYLIB_COMPATIBILITY_VERSION
unchanged
Regenerate configure
Run test/versioning.sh to verify that everything is consistent
Do the release
Create a branch like release-2.24.x
Bump version number to 2.ODD.0 for next development branch
Bump ABI version information
Run test/versioning.sh to verify that everything is consistent
Bump version number from 2.Y.Z to 2.Y.(Z+1) (Y is odd)
Bump ABI version information
Xcode/SDL/SDL.xcodeproj/project.pbxproj
:
DYLIB_CURRENT_VERSION
, DYLIB_COMPATIBILITY_VERSION
DYLIB_CURRENT_VERSION
to
(100 minor) + patchlevel* + 1 DYLIB_CURRENT_VERSION
to 0 DYLIB_COMPATIBILITY_VERSION
to the same value
Regenerate configure
Run test/versioning.sh to verify that everything is consistent
Do the release
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90
# 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