Here is an update to libtheora 1.2.0.
libtheora 1.2.0 (2025 March 29) * Bumped minor SONAME versions as oc_comment_unpack() implementation changed. * Added example wrapper script encoder_example_ffmpeg (#1601 #2336). * Improve comment handling on platforms where malloc(0) return NULL (#2304). * Added pragma in example code to quiet clang op precedenca warnings. * Adjusted encoder_example help text. * Adjusted README, CHANGES, pkg-config and spec files to better reflect current release (#2331 #2328). * Corrected english typos in source and build system. * Switched http links to https in doc and comments where relevant. Did not touch RFC drafts. libtheora 1.2.0beta1 (2025 March 15) * Bumped minor SONAME versions as <codec.h> methods changed constness of arguments. * Updated libogg dependency to version 1.3.4 for ogg_uint64_t. * Updated doxygen setup. * Updated autotools setup and support scripts (#1467 #1800 #1987 #2318 #2320). * Added support for RISC OS. * Fixed mingw build (#2141). * Improved ARM support. * Converted SCons setup to work with Python 3. * Introduced new configure options --enable-mem-constraint and --enable-gcc-sanitizers. * Fixed all known compiler warnings and errors from gcc and clang. * Improved examples for stability and correctness. * Various speed, bug fixes and code quality improvements. - Fixed build problem with Visual Studio (#2317). - Avoids undefined bit shift of signed numbers (#2321, #2322). - Avoids example encoder crash on bogus audio input (#2305). - Fixed musl linking issue with asm enabled (#2287). - Fixed some broken clamping in rate control (#2229). - Added NULL check _tc and _setup even for data packets (#2279). - Fixed mismatched oc_mb_fill_cmapping11 signature (#2068). - Updated the documentation for theora_encode_comment() (#726). - Adjusted build to only link libcompat with dump_video (#1587). - Corrected an operator precedence error in the visualization code (#1751). - Fixed two spelling errors in the comments (#1804). - Avoid negative bit shift operation in huffdec.c (CVE-2024-56431). * Improved library documentation and specification text. * Adjusted library dependencies so libtheoraenc do not depend on libtheoradec. * Handle fallout from CVE-2017-14633 in libvorbis, check return value in encoder_example and transcoder_example. Index: Makefile =================================================================== RCS file: /cvs/ports/multimedia/libtheora/Makefile,v retrieving revision 1.28 diff -u -p -u -p -r1.28 Makefile --- Makefile 27 Sep 2023 10:10:21 -0000 1.28 +++ Makefile 30 Mar 2025 20:58:38 -0000 @@ -1,15 +1,15 @@ COMMENT= open video codec -# e5d205b from github, plus generated configure scripts -DISTNAME= libtheora-1.2.20190601 -REVISION= 0 +VER= 1.2.0 +GH_ACCOUNT= xiph +GH_PROJECT= theora +GH_TAGNAME= v${VER} +PKGNAME= libtheora-${VER} CATEGORIES= multimedia -SITES= https://comstyle.com/source/ -EXTRACT_SUFX= .tar.xz SHARED_LIBS= theora 4.0 \ theoradec 2.0 \ - theoraenc 2.0 + theoraenc 2.1 HOMEPAGE= https://www.theora.org/ @@ -24,10 +24,13 @@ COMPILER_LANGS= c # uses Ogg headers LIB_DEPENDS= audio/libogg +AUTOCONF_VERSION= 2.71 +AUTOMAKE_VERSION= 1.16 + SEPARATE_BUILD= Yes -CONFIGURE_STYLE= autoconf -AUTOCONF_VERSION= 2.63 -CONFIGURE_ARGS= --disable-examples --disable-spec +CONFIGURE_STYLE= autoreconf +CONFIGURE_ARGS= --disable-examples \ + --disable-spec CONFIGURE_ENV= ac_cv_prog_HAVE_DOXYGEN=false .if ${MACHINE_ARCH} == "arm" Index: distinfo =================================================================== RCS file: /cvs/ports/multimedia/libtheora/distinfo,v retrieving revision 1.9 diff -u -p -u -p -r1.9 distinfo --- distinfo 13 Jun 2019 21:58:12 -0000 1.9 +++ distinfo 30 Mar 2025 20:58:38 -0000 @@ -1,2 +1,2 @@ -SHA256 (libtheora-1.2.20190601.tar.xz) = 20AS4cDMKmaZX6spyApRoVxz5t2JZBJrXow6OamXi9A= -SIZE (libtheora-1.2.20190601.tar.xz) = 1010328 +SHA256 (theora-1.2.0.tar.gz) = 4MNXcbQlwyoFL/s1iirtFCGTQKuFC0jchbAZOcBROjE= +SIZE (theora-1.2.0.tar.gz) = 1220808 Index: patches/patch-configure_ac =================================================================== RCS file: /cvs/ports/multimedia/libtheora/patches/patch-configure_ac,v retrieving revision 1.3 diff -u -p -u -p -r1.3 patch-configure_ac --- patches/patch-configure_ac 11 Mar 2022 19:39:22 -0000 1.3 +++ patches/patch-configure_ac 30 Mar 2025 20:58:38 -0000 @@ -1,14 +1,14 @@ Index: configure.ac --- configure.ac.orig +++ configure.ac -@@ -188,8 +188,8 @@ else +@@ -202,8 +202,8 @@ else case $host in *) - DEBUG="-g -Wall -Wno-parentheses -DDEBUG -D__NO_MATH_INLINES" -- CFLAGS="-Wall -Wno-parentheses -O3 -fomit-frame-pointer -finline-functions -funroll-loops" -- PROFILE="-Wall -Wno-parentheses -pg -g -O3 -fno-inline-functions -DDEBUG";; -+ CFLAGS="-Wall -Wno-parentheses -fomit-frame-pointer -finline-functions -funroll-loops" -+ PROFILE="-Wall -Wno-parentheses -pg -g -fno-inline-functions -DDEBUG";; + DEBUG="-g -Wall -Werror=uninitialized -Winit-self -Wno-parentheses -DDEBUG -D__NO_MATH_INLINES" +- CFLAGS="-Wall -Werror=uninitialized -Winit-self -Wno-parentheses -O3 -fomit-frame-pointer -finline-functions -funroll-loops" +- PROFILE="-Wall -Werror=uninitialized -Winit-self -Wno-parentheses -pg -g -O3 -fno-inline-functions -DDEBUG";; ++ CFLAGS="-Wall -Werror=uninitialized -Winit-self -Wno-parentheses -fomit-frame-pointer -finline-functions -funroll-loops" ++ PROFILE="-Wall -Werror=uninitialized -Winit-self -Wno-parentheses -pg -g -fno-inline-functions -DDEBUG";; esac fi CFLAGS="$CFLAGS $cflags_save" Index: patches/patch-theora_pc_in =================================================================== RCS file: /cvs/ports/multimedia/libtheora/patches/patch-theora_pc_in,v retrieving revision 1.3 diff -u -p -u -p -r1.3 patch-theora_pc_in --- patches/patch-theora_pc_in 11 Mar 2022 19:39:22 -0000 1.3 +++ patches/patch-theora_pc_in 30 Mar 2025 20:58:38 -0000 @@ -7,8 +7,8 @@ Index: theora.pc.in Name: theora Description: Theora video codec Version: @VERSION@ --Requires: ogg >= 1.1 -+Requires.private: ogg >= 1.1 +-Requires: ogg >= @THEORA_LIBOGG_REQ_VERSION@ ++Requires.private: ogg >= @THEORA_LIBOGG_REQ_VERSION@ Conflicts: Libs: -L${libdir} -ltheora Cflags: -I${includedir} Index: patches/patch-theoradec_pc_in =================================================================== RCS file: /cvs/ports/multimedia/libtheora/patches/patch-theoradec_pc_in,v retrieving revision 1.3 diff -u -p -u -p -r1.3 patch-theoradec_pc_in --- patches/patch-theoradec_pc_in 11 Mar 2022 19:39:22 -0000 1.3 +++ patches/patch-theoradec_pc_in 30 Mar 2025 20:58:38 -0000 @@ -7,7 +7,7 @@ Index: theoradec.pc.in Name: theora Description: Theora video codec (decoder) Version: @VERSION@ --Requires: ogg >= 1.1 +-Requires: ogg >= @THEORA_LIBOGG_REQ_VERSION@ Conflicts: Libs: -L${libdir} -ltheoradec Cflags: -I${includedir} Index: patches/patch-theoraenc_pc_in =================================================================== RCS file: /cvs/ports/multimedia/libtheora/patches/patch-theoraenc_pc_in,v retrieving revision 1.3 diff -u -p -u -p -r1.3 patch-theoraenc_pc_in --- patches/patch-theoraenc_pc_in 11 Mar 2022 19:39:22 -0000 1.3 +++ patches/patch-theoraenc_pc_in 30 Mar 2025 20:58:38 -0000 @@ -7,8 +7,8 @@ Index: theoraenc.pc.in Name: theora Description: Theora video codec (encoder) Version: @VERSION@ --Requires: theoradec, ogg >= 1.1 -+Requires.private: theoradec, ogg >= 1.1 +-Requires: theoradec, ogg >= @THEORA_LIBOGG_REQ_VERSION@ ++Requires.private: theoradec, ogg >= @THEORA_LIBOGG_REQ_VERSION@ Conflicts: Libs: -L${libdir} -ltheoraenc Cflags: -I${includedir} Index: pkg/PLIST =================================================================== RCS file: /cvs/ports/multimedia/libtheora/pkg/PLIST,v retrieving revision 1.6 diff -u -p -u -p -r1.6 PLIST --- pkg/PLIST 11 Mar 2022 19:39:22 -0000 1.6 +++ pkg/PLIST 30 Mar 2025 20:58:38 -0000 @@ -3,13 +3,13 @@ include/theora/codec.h include/theora/theora.h include/theora/theoradec.h include/theora/theoraenc.h -lib/libtheora.a +@static-lib lib/libtheora.a lib/libtheora.la @lib lib/libtheora.so.${LIBtheora_VERSION} -lib/libtheoradec.a +@static-lib lib/libtheoradec.a lib/libtheoradec.la @lib lib/libtheoradec.so.${LIBtheoradec_VERSION} -lib/libtheoraenc.a +@static-lib lib/libtheoraenc.a lib/libtheoraenc.la @lib lib/libtheoraenc.so.${LIBtheoraenc_VERSION} lib/pkgconfig/theora.pc