71 lines
3 KiB
Text
71 lines
3 KiB
Text
![]() |
= Release checklist =
|
||
|
|
||
|
Source release:
|
||
|
|
||
|
- Update OP_LT_* API versioning in configure.ac.
|
||
|
- Check for uncommitted changes to master.
|
||
|
- Tag the release commit with 'git tag -s vN.M'.
|
||
|
- Include release notes in the tag annotation.
|
||
|
- Verify 'make distcheck' produces a tarball with
|
||
|
the desired name.
|
||
|
- Push tag to public repo.
|
||
|
- Upload source package 'opusfile-${version}.tar.gz'
|
||
|
to website and verify file permissions.
|
||
|
- Update checksum files on website.
|
||
|
- Update links on <https://www.opus-codec.org/downloads/>.
|
||
|
- Add a copy of the documentation to <https://www.opus-codec.org/docs/>
|
||
|
and update the links.
|
||
|
|
||
|
Releases are commited to https://svn.xiph.org/releases/opus/
|
||
|
which propagates to downloads.xiph.org, and copied manually
|
||
|
to https://archive.mozilla.org/pub/opus/
|
||
|
|
||
|
Release packages should also be manually attached to the corresponding
|
||
|
tag on the github mirror https://github.com/xiph/opusfile/releases
|
||
|
|
||
|
Win32 binaries:
|
||
|
|
||
|
- Assuming the mingw cross toolchain:
|
||
|
- run `make -C mingw`
|
||
|
- Downloads versions of libogg, opus, openssl.
|
||
|
- Compiles them.
|
||
|
- Compiles static opusfile and examples against the built deps.
|
||
|
- Compile dynamic opusfile with:
|
||
|
- ./configure --host=i686-w64-mingw32 --prefix=/path/to/builddir/mingw \
|
||
|
PKG_CONFIG_PATH=/path/to/builddir/mingw/lib/pkgconfig
|
||
|
- make && make check && make -C doc/latex
|
||
|
- Add api docs to opus-codec.org.
|
||
|
- mkdir opusfile-${version}-win32
|
||
|
- Copy AUTHORS COPYING README.md include/opusfile.h to the release dir.
|
||
|
- Merge changes between README.md and the version in the last
|
||
|
binary release. E.g. it's good to include versions of the dependencies,
|
||
|
release notes, etc.
|
||
|
- Convert README.md to DOS line endings.
|
||
|
- Copy .libs/libopusfile-0.dll to the release dir.
|
||
|
- Copy .libs/libopusfile.a to the release dir.
|
||
|
- Copy .libs/libopusfile.dll.a to the release dir. (May not be needed?)
|
||
|
- Copy ./lib/libopusurl-0.dll, etc. to the release dir.
|
||
|
- Copy ./bin/*.dll to the release dir for dependencies.
|
||
|
- Copy any other dependent dlls, e.g. on Fedora 23 I needed to copy
|
||
|
/usr/i686-w64-mingw32/sys-root/mingw/bin/libgcc_s_sjlj-1.dll
|
||
|
/usr/i686-w64-mingw32/sys-root/mingw/bin/libwinpthread-1.dll
|
||
|
- Copy doc/latex/refman.pdf to opusfile-${version}-win32/opusfile-${version}.pdf
|
||
|
- Copy examples/.libs/*.exe to the release dir.
|
||
|
- Strip *.dll *.a *.exe in the release dir.
|
||
|
- In the release dir, run:
|
||
|
sha256sum * > SHA256SUMS.txt
|
||
|
gpg --detach-sign --armor SHA256SUMS.txt
|
||
|
- In the parent directory, create the archive:
|
||
|
zip -r opusfile-${version}-win32.zip opusfile-${version}-win32/*
|
||
|
- Copy the archive to a clean system and verify the examples work
|
||
|
to make sure you've included all the necessary libraries.
|
||
|
- Upload the archive zipfile to websites.
|
||
|
- Verify file permissions and that it's available at the expected
|
||
|
URL.
|
||
|
- Update links on <http://www.opus-codec.org/downloads/>.
|
||
|
- Add doc/latex/refman as docs/opusfile_api-${version}.pdf on opus-codec.org
|
||
|
- Add doc/html as docs/opusfile_api-${version} on opus-codec.org
|
||
|
|
||
|
Binary releases are copied manually to s3 to appear at
|
||
|
https://archive.mozilla.org/pub/mozilla.org/opus/win32/
|