new blfs: media-libs/libvorbis-1.3.7
This commit is contained in:
73
media-libs/libvorbis-1.3.7.PKGBUILD
Normal file
73
media-libs/libvorbis-1.3.7.PKGBUILD
Normal file
@@ -0,0 +1,73 @@
|
||||
pkgname=libvorbis
|
||||
pkgver=1.3.7
|
||||
pkgdesc='Reference implementation of the Ogg Vorbis audio format'
|
||||
arch=(x86_64)
|
||||
homepage=https://www.xiph.org/vorbis/
|
||||
license=(BSD-3-Clause)
|
||||
depends=(
|
||||
glibc
|
||||
libogg
|
||||
)
|
||||
_patches=("libvorbis-1.3.7-macro-wstrict-prototypes.patch"
|
||||
"libvorbis-1.3.7-mismatched-free.patch"
|
||||
"libvorbis-1.3.7-psy-bounds.patch"
|
||||
"libvorbis-1.3.7-ubsan-shift.patch"
|
||||
)
|
||||
_patch_sums=("a13d1c323b811ba62b96f10232d1332e3ef5d90e7f4e02ff28de74a264c00bc660475c712fd3f90e1234d60fe13bcf3879442b5bac26cde8ff31bc09854c1ff7"
|
||||
"ddf29b10a081ce13f3e430565437cc96b306c8d2231fa3996e27657e992ad302768044847beeb39d13a207b35d82abf8fb1fa13e38371fda8ded927c536e9920"
|
||||
"6238266c296c647df282c2767b09512a572e8e0a1a2bb001aeaea66617f742f867b91c930b202345e0a27c294f0b06fc345d2d360ef2bec7a12907414c264a03"
|
||||
"b008d3cf8509ea8fbb0a2bed306da6310ff58561c98d33633ccba28628e40f371b8e2e73f59ec6736af1ef5f4480e58157f8b6a8d303b86ff3f2b4dd67ca43c2"
|
||||
)
|
||||
sources=("${pkgname}-${pkgver}.tar.xz"
|
||||
${_patches[@]}
|
||||
)
|
||||
urls=("https://downloads.xiph.org/releases/vorbis/${sources[0]}"
|
||||
${_patches[@]}
|
||||
)
|
||||
sha512sums=("bbf5f11f623d959b3ba98d6b52806521b0b918b59b867f0658c153ea1013293364eead4987e9e71f8798021379310860a2e548fcf89d10caf23d45e41aba45cd"
|
||||
${_patch_sums[@]}
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
tar -xf ${distdir}/${sources[0]} --strip-components=1
|
||||
|
||||
for _patch in ${_patches[@]}; do
|
||||
patch -p1 -i ${filedir}/${_patch}
|
||||
done
|
||||
|
||||
sed -i \
|
||||
-e '/CFLAGS/s:-O20::' \
|
||||
-e '/CFLAGS/s:-mcpu=750::' \
|
||||
-e '/CFLAGS/s:-mno-ieee-fp::' \
|
||||
configure.ac
|
||||
|
||||
find -name 'Makefile.am' \
|
||||
-exec sed -i \
|
||||
-e 's:$(datadir)/doc/$(PACKAGE)-$(VERSION):@docdir@/html:' \
|
||||
{} +
|
||||
|
||||
autoreconf -fi
|
||||
}
|
||||
|
||||
src_build() {
|
||||
local config_args=(
|
||||
--prefix=/usr
|
||||
--docdir=/usr/share/doc/${pkgname}-${pkgver}
|
||||
--enable-shared
|
||||
--disable-static
|
||||
--enable-oggtest
|
||||
)
|
||||
./configure "${config_args[@]}"
|
||||
make
|
||||
}
|
||||
|
||||
src_check() {
|
||||
make -j1 check
|
||||
}
|
||||
|
||||
src_install() {
|
||||
make DESTDIR="${pkgdir}" install
|
||||
install -Dm 644 COPYING -t "${pkgdir}/usr/share/licenses/${pkgname}"
|
||||
}
|
||||
|
||||
# vim:ft=sh syn=sh et sw=2:
|
||||
@@ -0,0 +1,20 @@
|
||||
https://gitlab.xiph.org/xiph/vorbis/-/merge_requests/25
|
||||
|
||||
From 63132c52ee4694171f663ecf536ab1236b6c46ba Mon Sep 17 00:00:00 2001
|
||||
From: Sam James <sam@gentoo.org>
|
||||
Date: Wed, 23 Nov 2022 03:27:44 +0000
|
||||
Subject: [PATCH] vorbis.m4: fix -Wstrict-prototypes
|
||||
|
||||
Signed-off-by: Sam James <sam@gentoo.org>
|
||||
--- a/vorbis.m4
|
||||
+++ b/vorbis.m4
|
||||
@@ -67,7 +67,7 @@ dnl
|
||||
#include <vorbis/codec.h>
|
||||
#include <vorbis/vorbisenc.h>
|
||||
|
||||
-int main ()
|
||||
+int main (void)
|
||||
{
|
||||
vorbis_block vb;
|
||||
vorbis_dsp_state vd;
|
||||
GitLab
|
||||
@@ -0,0 +1,29 @@
|
||||
https://gitlab.xiph.org/xiph/vorbis/-/commit/4e1155cc77a2c672f3dd18f9a32dbf1404693289
|
||||
|
||||
From 4e1155cc77a2c672f3dd18f9a32dbf1404693289 Mon Sep 17 00:00:00 2001
|
||||
From: Robert Kausch <robert.kausch@freac.org>
|
||||
Date: Sat, 20 Feb 2021 16:22:02 +0100
|
||||
Subject: [PATCH] Fix tests run with make check when using alternative
|
||||
allocators.
|
||||
|
||||
The call to free in line 584 of sharedbook.c mismatches
|
||||
the _ogg_calloc call used to allocated that data in line 216.
|
||||
|
||||
This causes make check to fail when alternative allocators
|
||||
are used, e.g. the xmm_malloc family of allocators used with
|
||||
the Lancer optimizations.
|
||||
|
||||
Signed-off-by: Ralph Giles <giles@thaumas.net>
|
||||
--- a/lib/sharedbook.c
|
||||
+++ b/lib/sharedbook.c
|
||||
@@ -581,7 +581,7 @@ void run_test(static_codebook *b,float *comp){
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
- free(out);
|
||||
+ _ogg_free(out);
|
||||
}
|
||||
|
||||
int main(){
|
||||
--
|
||||
GitLab
|
||||
35
media-libs/libvorbis-1.3.7/libvorbis-1.3.7-psy-bounds.patch
Normal file
35
media-libs/libvorbis-1.3.7/libvorbis-1.3.7-psy-bounds.patch
Normal file
@@ -0,0 +1,35 @@
|
||||
https://gitlab.xiph.org/xiph/vorbis/-/commit/315da9cc9d30484c802b2e2ea150df39e060e2b9
|
||||
|
||||
From 315da9cc9d30484c802b2e2ea150df39e060e2b9 Mon Sep 17 00:00:00 2001
|
||||
From: "Timothy B. Terriberry" <tterribe@xiph.org>
|
||||
Date: Wed, 5 Feb 2025 08:11:19 -0800
|
||||
Subject: [PATCH] Fix the half-octave bounds check in _vp_psy_init
|
||||
|
||||
The existing code ensured that halfoc would not exceed P_BANDS-1,
|
||||
but the interpolation used index P_BANDS (albeit with a weight
|
||||
of 0) when this bound was actually hit.
|
||||
Add an extra clamp on the integer index to avoid this.
|
||||
Thanks to Paul Adenot for the report.
|
||||
|
||||
Fixes #2353
|
||||
---
|
||||
lib/psy.c | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/lib/psy.c b/lib/psy.c
|
||||
index 036b094a..96213c42 100644
|
||||
--- a/lib/psy.c
|
||||
+++ b/lib/psy.c
|
||||
@@ -339,6 +339,10 @@ void _vp_psy_init(vorbis_look_psy *p,vorbis_info_psy *vi,
|
||||
if(halfoc<0)halfoc=0;
|
||||
if(halfoc>=P_BANDS-1)halfoc=P_BANDS-1;
|
||||
inthalfoc=(int)halfoc;
|
||||
+ /*If we hit the P_BANDS-1 clamp above, inthalfoc+1 will be out of bounds,
|
||||
+ even though it will have an interpolation weight of 0.
|
||||
+ Shift the interval so we don't read past the end of the array.*/
|
||||
+ if(inthalfoc>=P_BANDS-2)inthalfoc=P_BANDS-2;
|
||||
del=halfoc-inthalfoc;
|
||||
|
||||
for(j=0;j<P_NOISECURVES;j++)
|
||||
--
|
||||
GitLab
|
||||
27
media-libs/libvorbis-1.3.7/libvorbis-1.3.7-ubsan-shift.patch
Normal file
27
media-libs/libvorbis-1.3.7/libvorbis-1.3.7-ubsan-shift.patch
Normal file
@@ -0,0 +1,27 @@
|
||||
https://gitlab.xiph.org/xiph/vorbis/-/commit/bb4047de4c05712bf1fd49b9584c360b8e4e0adf
|
||||
|
||||
From bb4047de4c05712bf1fd49b9584c360b8e4e0adf Mon Sep 17 00:00:00 2001
|
||||
From: Tristan Matthews <tmatth@videolan.org>
|
||||
Date: Fri, 14 Jun 2024 11:39:26 -0400
|
||||
Subject: [PATCH] sharedbook: cast to unsigned to avoid undefined shift
|
||||
|
||||
Fixes #2351
|
||||
---
|
||||
lib/sharedbook.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/lib/sharedbook.c b/lib/sharedbook.c
|
||||
index 444f42b5..7a98b479 100644
|
||||
--- a/lib/sharedbook.c
|
||||
+++ b/lib/sharedbook.c
|
||||
@@ -422,7 +422,7 @@ int vorbis_book_init_decode(codebook *c,const static_codebook *s){
|
||||
long lo=0,hi=0;
|
||||
|
||||
for(i=0;i<tabn;i++){
|
||||
- ogg_uint32_t word=i<<(32-c->dec_firsttablen);
|
||||
+ ogg_uint32_t word=((ogg_uint32_t)i<<(32-c->dec_firsttablen));
|
||||
if(c->dec_firsttable[bitreverse(word)]==0){
|
||||
while((lo+1)<n && c->codelist[lo+1]<=word)lo++;
|
||||
while( hi<n && word>=(c->codelist[hi]&mask))hi++;
|
||||
--
|
||||
GitLab
|
||||
Reference in New Issue
Block a user