summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorGordonGR2015-06-08 14:07:20 +0300
committerGordonGR2015-06-08 14:07:20 +0300
commit5a3c035e6236d9d47815448590543f0cba93dee7 (patch)
treef8f395b5261b273b4922567ca92d765282d5ab0e
downloadaur-5a3c035e6236d9d47815448590543f0cba93dee7.tar.gz
Initial commit
-rw-r--r--.SRCINFO21
-rw-r--r--PKGBUILD48
-rw-r--r--libmpeg2-0.5.1-gcc4.6.patch128
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__)