From 02fe7437413eaaf7cee46e5a1862c1fc7ac0dbba Mon Sep 17 00:00:00 2001 From: claude-bot Date: Mon, 13 Jul 2026 12:40:01 +0000 Subject: Import xiph/opusfile @ 4174c26e0aaab19d01afdea0a46f7f95fdc6b3e6 Snapshot for re3/reVC vendoring, per @lzcnt. Source: https://github.com/xiph/opusfile (4174c26e0aaab19d01afdea0a46f7f95fdc6b3e6). --- doc/Doxyfile.in | 22 ++++++++ doc/Makefile | 35 ++++++++++++ doc/opus_logo.svg | 157 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ doc/release.md | 58 ++++++++++++++++++++ 4 files changed, 272 insertions(+) create mode 100644 doc/Doxyfile.in create mode 100644 doc/Makefile create mode 100644 doc/opus_logo.svg create mode 100644 doc/release.md (limited to 'doc') diff --git a/doc/Doxyfile.in b/doc/Doxyfile.in new file mode 100644 index 0000000..d0b229c --- /dev/null +++ b/doc/Doxyfile.in @@ -0,0 +1,22 @@ +# Process with doxygen to generate API documentation + +PROJECT_NAME = @PACKAGE_NAME@ +PROJECT_NUMBER = @PACKAGE_VERSION@ +PROJECT_BRIEF = "Stand-alone decoder library for .opus files." +INPUT = @top_srcdir@/include/opusfile.h +OPTIMIZE_OUTPUT_FOR_C = YES + +QUIET = YES +WARNINGS = YES +WARN_IF_UNDOCUMENTED = YES +WARN_IF_DOC_ERROR = YES +WARN_NO_PARAMDOC = YES + +JAVADOC_AUTOBRIEF = YES +SORT_MEMBER_DOCS = NO + +HAVE_DOT = @HAVE_DOT@ + +PROJECT_LOGO = @top_srcdir@/doc/opus_logo.svg + +FULL_PATH_NAMES = NO diff --git a/doc/Makefile b/doc/Makefile new file mode 100644 index 0000000..1ae1adc --- /dev/null +++ b/doc/Makefile @@ -0,0 +1,35 @@ +## GNU makefile for opusfile documentation. + +-include ../package_version + +all: doxygen + +doxygen: Doxyfile ../include/opusfile.h + doxygen + +pdf: doxygen + make -C latex + +clean: + $(RM) -r html + $(RM) -r latex + +distclean: clean + $(RM) Doxyfile + +.PHONY: all clean distclean doxygen pdf + +../package_version: + @if [ -x ../update_version ]; then \ + ../update_version || true; \ + elif [ ! -e $@ ]; then \ + echo 'PACKAGE_VERSION="unknown"' > $@; \ + fi + +# run autoconf-like replacements to finalize our config +Doxyfile: Doxyfile.in Makefile ../package_version + sed -e 's/@PACKAGE_NAME@/opusfile/' \ + -e 's/@PACKAGE_VERSION@/$(PACKAGE_VERSION)/' \ + -e 's/@HAVE_DOT@/yes/' \ + -e 's/@top_srcdir@/../' \ + < $< > $@ diff --git a/doc/opus_logo.svg b/doc/opus_logo.svg new file mode 100644 index 0000000..794dd1d --- /dev/null +++ b/doc/opus_logo.svg @@ -0,0 +1,157 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/doc/release.md b/doc/release.md new file mode 100644 index 0000000..9d95428 --- /dev/null +++ b/doc/release.md @@ -0,0 +1,58 @@ +# Release checklist + +## Source release + +- Update OP_LT_* API versioning in configure.ac. +- Check for uncommitted changes to master. +- Prepare win32 binaries + - Do this before tagging the release, as it may require changes which should + be committed +- 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 . +- Add a copy of the documentation to + and update the links. + - 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 + +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 notes and package links should be added to the corresponding +tag at https://gitlab.xiph.org/xiph/opusfile so they show on the +releases page. + +Release packages should also be manually attached to the corresponding +tag on the github mirror https://github.com/xiph/opusfile/releases + +## Win32 binaries + +- Install cross-i686-w64-mingw32-gcc and associated binutils. + - If you skip this step, libopus will still try to build with the system gcc + and then fail to link. +- Edit mingw/Makefile to point to the latest versions of libogg. opus, openssl + (see , checksums in SHA256SUMS.txt) +- run `make -C mingw` + - Downloads versions of libogg, opus, openssl. + - Compiles them. + - Compiles static opusfile and examples against the built deps. +- run `make -C mingw package` + - Creates an opusfile-${version}-win32.zip binary package. +- 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. +- 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 . + +Binary releases are copied manually to s3 to appear at +https://archive.mozilla.org/pub/mozilla.org/opus/win32/ -- cgit v1.2.3