* update libmpeg2 to 0.5.1-10
This commit is contained in:
parent
d46ea61893
commit
c48a439318
@ -1,43 +1,36 @@
|
||||
# POWER Maintainer: Alexander Baldeck <alex.bldck@gmail.com>
|
||||
# Maintainer: Balló György <ballogyor+arch at gmail dot com>
|
||||
# Contributor: Andreas Radke <andyrtr@archlinux.org>
|
||||
# Contributor: Sarah Hay <sarah@archlinux.org>
|
||||
# Maintainer: Andreas Radke <andyrtr@archlinux.org>
|
||||
|
||||
pkgname=libmpeg2
|
||||
pkgver=0.5.1
|
||||
pkgrel=8
|
||||
pkgdesc="Library for decoding MPEG-1 and MPEG-2 video streams."
|
||||
pkgrel=10
|
||||
pkgdesc='Library for decoding MPEG-1 and MPEG-2 video streams'
|
||||
arch=(x86_64 powerpc64le powerpc64 powerpc riscv64)
|
||||
url="http://libmpeg2.sourceforge.net/"
|
||||
url='https://libmpeg2.sourceforge.io/'
|
||||
license=('GPL-2.0-or-later')
|
||||
depends=('glibc')
|
||||
makedepends=('sdl12-compat' 'libxv')
|
||||
optdepends=('sdl: required for mpeg2dec'
|
||||
'libxv: required for mpeg2dec')
|
||||
source=(http://libmpeg2.sourceforge.net/files/${pkgname}-${pkgver}.tar.gz
|
||||
libmpeg2-0.5.1-gcc4.6.patch
|
||||
source=("https://libmpeg2.sourceforge.io/files/$pkgname-$pkgver.tar.gz"
|
||||
altivec.patch)
|
||||
license=('GPL2')
|
||||
provides=('mpeg2dec')
|
||||
sha256sums=('dee22e893cb5fc2b2b6ebd60b88478ab8556cb3b93f9a0d7ce8f3b61851871d4'
|
||||
'763e188eea36ee3cdfb31e7877bbead00676b5766c25175ec6a7eb20884926d1'
|
||||
'a83d5652cad9ff93c814bf28cfe01ae2c2f59c6051dc1094f1cd538f71716143')
|
||||
|
||||
prepare() {
|
||||
cd "${srcdir}/${pkgname}-${pkgver}"
|
||||
patch -Np1 -i "${srcdir}/libmpeg2-0.5.1-gcc4.6.patch"
|
||||
cd $pkgname-$pkgver
|
||||
|
||||
patch -Np1 -i "${srcdir}/altivec.patch"
|
||||
|
||||
sed '/AC_PATH_XTRA/d' -i configure.ac
|
||||
autoreconf --force --install
|
||||
autoreconf -fi
|
||||
}
|
||||
|
||||
build() {
|
||||
cd "${srcdir}/${pkgname}-${pkgver}"
|
||||
./configure --prefix=/usr --enable-shared --disable-static
|
||||
make OPT_CFLAGS="${CFLAGS}" \
|
||||
MPEG2DEC_CFLAGS="${CFLAGS}" \
|
||||
LIBMPEG2_CFLAGS=""
|
||||
cd $pkgname-$pkgver
|
||||
./configure --prefix=/usr
|
||||
make
|
||||
}
|
||||
|
||||
package() {
|
||||
cd "${srcdir}/${pkgname}-${pkgver}"
|
||||
make DESTDIR="${pkgdir}" install
|
||||
cd $pkgname-$pkgver
|
||||
make DESTDIR="$pkgdir" install
|
||||
}
|
||||
|
@ -1,128 +0,0 @@
|
||||
--- libmpeg2-0.5.1/libmpeg2/idct_mmx.c.orig 2011-05-13 09:23:02.557758717 -0300
|
||||
+++ libmpeg2-0.5.1/libmpeg2/idct_mmx.c 2011-05-13 09:23:06.346778580 -0300
|
||||
@@ -39,7 +39,6 @@
|
||||
#define rounder(bias) {round (bias), round (bias)}
|
||||
#define rounder_sse2(bias) {round (bias), round (bias), round (bias), round (bias)}
|
||||
|
||||
-
|
||||
#if 0
|
||||
/* C row IDCT - it is just here to document the MMXEXT and MMX versions */
|
||||
static inline void idct_row (int16_t * row, int offset,
|
||||
@@ -464,10 +463,10 @@ static inline void sse2_idct_col (int16_
|
||||
/* Almost identical to mmxext version: */
|
||||
/* just do both 4x8 columns in paraller */
|
||||
|
||||
- static const short t1_vector[] ATTR_ALIGN(16) = {T1,T1,T1,T1,T1,T1,T1,T1};
|
||||
- static const short t2_vector[] ATTR_ALIGN(16) = {T2,T2,T2,T2,T2,T2,T2,T2};
|
||||
- static const short t3_vector[] ATTR_ALIGN(16) = {T3,T3,T3,T3,T3,T3,T3,T3};
|
||||
- static const short c4_vector[] ATTR_ALIGN(16) = {C4,C4,C4,C4,C4,C4,C4,C4};
|
||||
+ static/* const*/ short t1_vector[] ATTR_ALIGN(16) = {T1,T1,T1,T1,T1,T1,T1,T1};
|
||||
+ static/* const*/ short t2_vector[] ATTR_ALIGN(16) = {T2,T2,T2,T2,T2,T2,T2,T2};
|
||||
+ static/* const*/ short t3_vector[] ATTR_ALIGN(16) = {T3,T3,T3,T3,T3,T3,T3,T3};
|
||||
+ static/* const*/ short c4_vector[] ATTR_ALIGN(16) = {C4,C4,C4,C4,C4,C4,C4,C4};
|
||||
|
||||
#if defined(__x86_64__)
|
||||
|
||||
@@ -710,10 +709,10 @@ static inline void sse2_idct_col (int16_
|
||||
/* MMX column IDCT */
|
||||
static inline void idct_col (int16_t * const col, const int offset)
|
||||
{
|
||||
- static const short t1_vector[] ATTR_ALIGN(8) = {T1,T1,T1,T1};
|
||||
- static const short t2_vector[] ATTR_ALIGN(8) = {T2,T2,T2,T2};
|
||||
- static const short t3_vector[] ATTR_ALIGN(8) = {T3,T3,T3,T3};
|
||||
- static const short c4_vector[] ATTR_ALIGN(8) = {C4,C4,C4,C4};
|
||||
+ static/* const*/ short t1_vector[] ATTR_ALIGN(8) = {T1,T1,T1,T1};
|
||||
+ static/* const*/ short t2_vector[] ATTR_ALIGN(8) = {T2,T2,T2,T2};
|
||||
+ static/* const*/ short t3_vector[] ATTR_ALIGN(8) = {T3,T3,T3,T3};
|
||||
+ static/* const*/ short c4_vector[] ATTR_ALIGN(8) = {C4,C4,C4,C4};
|
||||
|
||||
/* column code adapted from peter gubanov */
|
||||
/* http://www.elecard.com/peter/idct.shtml */
|
||||
@@ -847,33 +846,33 @@ static inline void idct_col (int16_t * c
|
||||
}
|
||||
|
||||
|
||||
-static const int32_t rounder0[] ATTR_ALIGN(8) =
|
||||
+static/* const*/ int32_t rounder0[] ATTR_ALIGN(8) =
|
||||
rounder ((1 << (COL_SHIFT - 1)) - 0.5);
|
||||
-static const int32_t rounder4[] ATTR_ALIGN(8) = rounder (0);
|
||||
-static const int32_t rounder1[] ATTR_ALIGN(8) =
|
||||
+static/* const*/ int32_t rounder4[] ATTR_ALIGN(8) = rounder (0);
|
||||
+static/* const*/ int32_t rounder1[] ATTR_ALIGN(8) =
|
||||
rounder (1.25683487303); /* C1*(C1/C4+C1+C7)/2 */
|
||||
-static const int32_t rounder7[] ATTR_ALIGN(8) =
|
||||
+static/* const*/ int32_t rounder7[] ATTR_ALIGN(8) =
|
||||
rounder (-0.25); /* C1*(C7/C4+C7-C1)/2 */
|
||||
-static const int32_t rounder2[] ATTR_ALIGN(8) =
|
||||
+static/* const*/ int32_t rounder2[] ATTR_ALIGN(8) =
|
||||
rounder (0.60355339059); /* C2 * (C6+C2)/2 */
|
||||
-static const int32_t rounder6[] ATTR_ALIGN(8) =
|
||||
+static/* const*/ int32_t rounder6[] ATTR_ALIGN(8) =
|
||||
rounder (-0.25); /* C2 * (C6-C2)/2 */
|
||||
-static const int32_t rounder3[] ATTR_ALIGN(8) =
|
||||
+static/* const*/ int32_t rounder3[] ATTR_ALIGN(8) =
|
||||
rounder (0.087788325588); /* C3*(-C3/C4+C3+C5)/2 */
|
||||
-static const int32_t rounder5[] ATTR_ALIGN(8) =
|
||||
+static/* const*/ int32_t rounder5[] ATTR_ALIGN(8) =
|
||||
rounder (-0.441341716183); /* C3*(-C5/C4+C5-C3)/2 */
|
||||
|
||||
|
||||
#define declare_idct(idct,table,idct_row_head,idct_row,idct_row_tail,idct_row_mid) \
|
||||
static inline void idct (int16_t * const block) \
|
||||
{ \
|
||||
- static const int16_t table04[] ATTR_ALIGN(16) = \
|
||||
+ static/* const*/ int16_t table04[] ATTR_ALIGN(16) = \
|
||||
table (22725, 21407, 19266, 16384, 12873, 8867, 4520); \
|
||||
- static const int16_t table17[] ATTR_ALIGN(16) = \
|
||||
+ static/* const*/ int16_t table17[] ATTR_ALIGN(16) = \
|
||||
table (31521, 29692, 26722, 22725, 17855, 12299, 6270); \
|
||||
- static const int16_t table26[] ATTR_ALIGN(16) = \
|
||||
+ static/* const*/ int16_t table26[] ATTR_ALIGN(16) = \
|
||||
table (29692, 27969, 25172, 21407, 16819, 11585, 5906); \
|
||||
- static const int16_t table35[] ATTR_ALIGN(16) = \
|
||||
+ static/* const*/ int16_t table35[] ATTR_ALIGN(16) = \
|
||||
table (26722, 25172, 22654, 19266, 15137, 10426, 5315); \
|
||||
\
|
||||
idct_row_head (block, 0*8, table04); \
|
||||
@@ -900,29 +899,29 @@ static inline void idct (int16_t * const
|
||||
|
||||
static inline void sse2_idct (int16_t * const block)
|
||||
{
|
||||
- static const int16_t table04[] ATTR_ALIGN(16) =
|
||||
+ static/* const*/ int16_t table04[] ATTR_ALIGN(16) =
|
||||
sse2_table (22725, 21407, 19266, 16384, 12873, 8867, 4520);
|
||||
- static const int16_t table17[] ATTR_ALIGN(16) =
|
||||
+ static/* const*/ int16_t table17[] ATTR_ALIGN(16) =
|
||||
sse2_table (31521, 29692, 26722, 22725, 17855, 12299, 6270);
|
||||
- static const int16_t table26[] ATTR_ALIGN(16) =
|
||||
+ static/* const*/ int16_t table26[] ATTR_ALIGN(16) =
|
||||
sse2_table (29692, 27969, 25172, 21407, 16819, 11585, 5906);
|
||||
- static const int16_t table35[] ATTR_ALIGN(16) =
|
||||
+ static/* const*/ int16_t table35[] ATTR_ALIGN(16) =
|
||||
sse2_table (26722, 25172, 22654, 19266, 15137, 10426, 5315);
|
||||
|
||||
- static const int32_t rounder0_128[] ATTR_ALIGN(16) =
|
||||
+ static/* const*/ int32_t rounder0_128[] ATTR_ALIGN(16) =
|
||||
rounder_sse2 ((1 << (COL_SHIFT - 1)) - 0.5);
|
||||
- static const int32_t rounder4_128[] ATTR_ALIGN(16) = rounder_sse2 (0);
|
||||
- static const int32_t rounder1_128[] ATTR_ALIGN(16) =
|
||||
+ static/* const*/ int32_t rounder4_128[] ATTR_ALIGN(16) = rounder_sse2 (0);
|
||||
+ static/* const*/ int32_t rounder1_128[] ATTR_ALIGN(16) =
|
||||
rounder_sse2 (1.25683487303); /* C1*(C1/C4+C1+C7)/2 */
|
||||
- static const int32_t rounder7_128[] ATTR_ALIGN(16) =
|
||||
+ static/* const*/ int32_t rounder7_128[] ATTR_ALIGN(16) =
|
||||
rounder_sse2 (-0.25); /* C1*(C7/C4+C7-C1)/2 */
|
||||
- static const int32_t rounder2_128[] ATTR_ALIGN(16) =
|
||||
+ static/* const*/ int32_t rounder2_128[] ATTR_ALIGN(16) =
|
||||
rounder_sse2 (0.60355339059); /* C2 * (C6+C2)/2 */
|
||||
- static const int32_t rounder6_128[] ATTR_ALIGN(16) =
|
||||
+ static/* const*/ int32_t rounder6_128[] ATTR_ALIGN(16) =
|
||||
rounder_sse2 (-0.25); /* C2 * (C6-C2)/2 */
|
||||
- static const int32_t rounder3_128[] ATTR_ALIGN(16) =
|
||||
+ static/* const*/ int32_t rounder3_128[] ATTR_ALIGN(16) =
|
||||
rounder_sse2 (0.087788325588); /* C3*(-C3/C4+C3+C5)/2 */
|
||||
- static const int32_t rounder5_128[] ATTR_ALIGN(16) =
|
||||
+ static/* const*/ int32_t rounder5_128[] ATTR_ALIGN(16) =
|
||||
rounder_sse2 (-0.441341716183); /* C3*(-C5/C4+C5-C3)/2 */
|
||||
|
||||
#if defined(__x86_64__)
|
Loading…
x
Reference in New Issue
Block a user