| The release criteria for libdrm is essentially "if you need a release, |
| make one". There is no designated release engineer or maintainer. |
| Anybody is free to make a release if there's a certain feature or bug |
| fix they need in a released version of libdrm. |
| |
| When new ioctl definitions are merged into drm-next, we will add |
| support to libdrm, at which point we typically create a new release. |
| However, this is up to whoever is driving the feature in question. |
| |
| Follow these steps to release a new version of libdrm: |
| |
| 1) Bump the version number in configure.ac and meson.build. We seem |
| to have settled for 2.4.x as the versioning scheme for libdrm, so |
| just bump the micro version. |
| |
| 2) Run autoconf and then re-run ./configure so the build system |
| picks up the new version number. |
| |
| 3) 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. |
| |
| 4) Push the updated master branch with the bumped version number: |
| |
| git push origin master |
| |
| assuming the remote for the upstream libdrm repo is called origin. |
| |
| 5) Use the release.sh script from the xorg/util/modular repo to |
| upload the tarballs to the freedesktop.org download area and |
| 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: |
| |
| ./modular/release.sh libdrm |
| |
| This copies the two tarballs to freedesktop.org and creates |
| libdrm-2.4.16.announce which has a detailed summary of the |
| changes, links to the tarballs, MD5 and SHA1 sums and pre-filled |
| out email headers. Fill out the blank between the email headers |
| and the list of changes with a brief message of what changed or |
| what prompted this release. Send out the email and you're done! |