diff options
author | GordonGR | 2015-06-08 14:07:20 +0300 |
---|---|---|
committer | GordonGR | 2015-06-08 14:07:20 +0300 |
commit | 5a3c035e6236d9d47815448590543f0cba93dee7 (patch) | |
tree | f8f395b5261b273b4922567ca92d765282d5ab0e | |
download | aur-5a3c035e6236d9d47815448590543f0cba93dee7.tar.gz |
Initial commit
-rw-r--r-- | .SRCINFO | 21 | ||||
-rw-r--r-- | PKGBUILD | 48 | ||||
-rw-r--r-- | libmpeg2-0.5.1-gcc4.6.patch | 128 |
3 files changed, 197 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..03f1d5798a34 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,21 @@ +pkgbase = lib32-libmpeg2 + pkgdesc = Library for decoding MPEG-1 and MPEG-2 video streams, lib32. + pkgver = 0.5.1 + pkgrel = 2 + url = http://libmpeg2.sourceforge.net/ + arch = x86_64 + license = GPL2 + makedepends = lib32-sdl + makedepends = lib32-libxv + depends = glibc + depends = libmpeg2 + optdepends = lib32-sdl: required for mpeg2dec + optdepends = lib32-libxv: required for mpeg2dec + options = !libtool + source = http://libmpeg2.sourceforge.net/files/libmpeg2-0.5.1.tar.gz + source = libmpeg2-0.5.1-gcc4.6.patch + md5sums = 0f92c7454e58379b4a5a378485bbd8ef + md5sums = 8b36660297e6ffde6aa9733136bff405 + +pkgname = lib32-libmpeg2 + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..d0f73622e7df --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,48 @@ +# $Id: PKGBUILD 177015 2013-02-04 08:35:17Z jgc $ +# Contributor: Sarah Hay <sarah@archlinux.org> +# Contributor: Andreas Radke <andyrtr@archlinux.org> +# Maintainer: GordonGR <gordongr@freemail.gr> + +pkgname=lib32-libmpeg2 +_pkgname=libmpeg2 +pkgver=0.5.1 +pkgrel=2 +pkgdesc="Library for decoding MPEG-1 and MPEG-2 video streams, lib32." +arch=('x86_64') +url="http://libmpeg2.sourceforge.net/" +depends=('glibc' 'libmpeg2') +makedepends=('lib32-sdl' 'lib32-libxv') +optdepends=('lib32-sdl: required for mpeg2dec' + 'lib32-libxv: required for mpeg2dec') +source=("http://libmpeg2.sourceforge.net/files/${_pkgname}-${pkgver}.tar.gz" + "libmpeg2-0.5.1-gcc4.6.patch") +license=('GPL2') +options=(!libtool) + +md5sums=('0f92c7454e58379b4a5a378485bbd8ef' + '8b36660297e6ffde6aa9733136bff405') + +prepare() { + cd "${srcdir}/${_pkgname}-${pkgver}" + patch -Np1 -i "${srcdir}/libmpeg2-0.5.1-gcc4.6.patch" + + sed '/AC_PATH_XTRA/d' -i configure.ac + autoreconf --force --install +} + +build(){ + cd "${srcdir}/${_pkgname}-${pkgver}" + export CC="gcc -m32" + export CXX="g++ -m32" + export PKG_CONFIG_PATH="/usr/lib32/pkgconfig" + + ./configure --prefix=/usr --enable-shared --disable-static --libdir=/usr/lib32 --libexecdir=/usr/lib32 + make OPT_CFLAGS="${CFLAGS}" MPEG2DEC_CFLAGS="${CFLAGS}" LIBMPEG2_CFLAGS="" +} + +package() { + cd "${srcdir}/${_pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + cd "$pkgdir/usr" + rm -rf {bin,include,share}/ +} diff --git a/libmpeg2-0.5.1-gcc4.6.patch b/libmpeg2-0.5.1-gcc4.6.patch new file mode 100644 index 000000000000..9c0e185be686 --- /dev/null +++ b/libmpeg2-0.5.1-gcc4.6.patch @@ -0,0 +1,128 @@ +--- 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__) |