xref: /aosp_15_r20/external/libdrm/RELEASING (revision 7688df22e49036ff52a766b7101da3a49edadb8c)
1*7688df22SAndroid Build Coastguard WorkerThe release criteria for libdrm is essentially "if you need a release,
2*7688df22SAndroid Build Coastguard Workermake one".  There is no designated release engineer or maintainer.
3*7688df22SAndroid Build Coastguard WorkerAnybody is free to make a release if there's a certain feature or bug
4*7688df22SAndroid Build Coastguard Workerfix they need in a released version of libdrm.
5*7688df22SAndroid Build Coastguard Worker
6*7688df22SAndroid Build Coastguard WorkerWhen new ioctl definitions are merged into drm-next, we will add
7*7688df22SAndroid Build Coastguard Workersupport to libdrm, at which point we typically create a new release.
8*7688df22SAndroid Build Coastguard WorkerHowever, this is up to whoever is driving the feature in question.
9*7688df22SAndroid Build Coastguard Worker
10*7688df22SAndroid Build Coastguard WorkerFollow these steps to release a new version of libdrm:
11*7688df22SAndroid Build Coastguard Worker
12*7688df22SAndroid Build Coastguard Worker  1) Bump the version number in meson.build. We seem to have settled for
13*7688df22SAndroid Build Coastguard Worker     2.4.x as the versioning scheme for libdrm, so just bump the micro
14*7688df22SAndroid Build Coastguard Worker     version.
15*7688df22SAndroid Build Coastguard Worker
16*7688df22SAndroid Build Coastguard Worker  2) Run `ninja -C builddir/ dist` to generate the tarballs.
17*7688df22SAndroid Build Coastguard Worker     Make sure that the version number of the tarball name in
18*7688df22SAndroid Build Coastguard Worker     builddir/meson-dist/ matches the number you bumped to. Move that
19*7688df22SAndroid Build Coastguard Worker     tarball to the libdrm repo root for the release script to pick up.
20*7688df22SAndroid Build Coastguard Worker
21*7688df22SAndroid Build Coastguard Worker  3) Push the updated main branch with the bumped version number:
22*7688df22SAndroid Build Coastguard Worker
23*7688df22SAndroid Build Coastguard Worker	git push origin main
24*7688df22SAndroid Build Coastguard Worker
25*7688df22SAndroid Build Coastguard Worker     assuming the remote for the upstream libdrm repo is called origin.
26*7688df22SAndroid Build Coastguard Worker
27*7688df22SAndroid Build Coastguard Worker  4) Use the release.sh script from the xorg/util/modular repo to
28*7688df22SAndroid Build Coastguard Worker     upload the tarballs to the freedesktop.org download area and
29*7688df22SAndroid Build Coastguard Worker     create an announce email template.  The script takes one argument:
30*7688df22SAndroid Build Coastguard Worker     the path to the libdrm checkout. So, if a checkout of modular is
31*7688df22SAndroid Build Coastguard Worker     at the same level than the libdrm repo:
32*7688df22SAndroid Build Coastguard Worker
33*7688df22SAndroid Build Coastguard Worker	./modular/release.sh libdrm
34*7688df22SAndroid Build Coastguard Worker
35*7688df22SAndroid Build Coastguard Worker     This copies the two tarballs to freedesktop.org and creates
36*7688df22SAndroid Build Coastguard Worker     libdrm-2.4.16.announce which has a detailed summary of the
37*7688df22SAndroid Build Coastguard Worker     changes, links to the tarballs, MD5 and SHA1 sums and pre-filled
38*7688df22SAndroid Build Coastguard Worker     out email headers.  Fill out the blank between the email headers
39*7688df22SAndroid Build Coastguard Worker     and the list of changes with a brief message of what changed or
40*7688df22SAndroid Build Coastguard Worker     what prompted this release.  Send out the email and you're done!
41