Follow these steps to release a new version of libdrm:
- 1) Ensure that there are no local, uncommitted/unpushed
- modifications. You're probably in a good state if both "git diff
- HEAD" and "git log master..origin/master" give no output.
+ 1) Bump the version number in meson.build. We seem to have settled for
+ 2.4.x as the versioning scheme for libdrm, so just bump the micro
+ version.
- 3) Bump the version number in configure.ac. We seem to have settled
- for 2.4.x as the versioning scheme for libdrm, so just bump the
- micro version.
+ 2) Run `ninja -C builddir/ dist` to generate the tarballs.
+ Make sure that the version number of the tarball name in
+ builddir/meson-dist/ matches the number you bumped to. Move that
+ tarball to the libdrm repo root for the release script to pick up.
- 4) Run autoconf and then re-run ./configure so the build system
- picks up the new version number.
+ 3) Push the updated master branch with the bumped version number:
- 5) (optional step, release.sh will make distcheck for you, but it can be
- heart warming to verify that make distcheck passes)
-
- Verify that the code passes "make distcheck". Running "make
- distcheck" should result in no warnings or errors and end with a
- message of the form:
-
- =============================================
- libdrm-X.Y.Z archives ready for distribution:
- libdrm-X.Y.Z.tar.gz
- libdrm-X.Y.Z.tar.bz2
- =============================================
-
- Make sure that the version number reported by distcheck and in
- the tarball names matches the number you bumped to in configure.ac.
-
- 6) Commit the configure.ac change and make an annotated tag for that
- commit with the version number of the release as the name and a
- message of "libdrm X.Y.Z". For example, for the 2.4.16 release
- the command is:
-
- git tag -a 2.4.16 -m "libdrm 2.4.16"
-
- 7) Push the commit and tag by saying
-
- git push --tags origin master
+ git push origin master
assuming the remote for the upstream libdrm repo is called origin.
- 6) Use the release.sh script from the xorg/util/modular repo to
+ 4) Use the release.sh script from the xorg/util/modular repo to
upload the tarballs to the freedesktop.org download area and
- create an annouce email template. The script takes one argument:
+ create an announce email template. The script takes one argument:
the path to the libdrm checkout. So, if a checkout of modular is
at the same level than the libdrm repo: