main/lame: fix build on x86

This commit is contained in:
Timo Teräs 2015-05-01 12:38:05 +00:00
parent 285e7baff4
commit 7ec426d94f
2 changed files with 39 additions and 1 deletions

View File

@ -2,7 +2,7 @@
pkgname=lame
pkgver=3.99.5
_ver=${pkgver%.*}
pkgrel=1
pkgrel=2
pkgdesc="An MP3 encoder and graphical frame analyzer"
url="http://lame.sourceforge.net/"
arch="all"
@ -11,6 +11,7 @@ subpackages="$pkgname-dev $pkgname-doc"
depends=
makedepends="nasm ncurses-dev autoconf automake libtool"
source="http://downloads.sourceforge.net/project/lame/lame/$_ver/lame-$pkgver.tar.gz
sse.patch
lame-automake-1.12.patch"
_builddir="$srcdir"/$pkgname-$pkgver
@ -64,4 +65,11 @@ package() {
}
md5sums="84835b313d4a8b68f5349816d33e07ce lame-3.99.5.tar.gz
ca77f3259ed398ae1c55073dacdd752f sse.patch
54814745b84480da3b643582f2e5b485 lame-automake-1.12.patch"
sha256sums="24346b4158e4af3bd9f2e194bb23eb473c75fb7377011523353196b19b9a23ff lame-3.99.5.tar.gz
1c8e1798391f45ee37632287ceaff7bcb9cd0221b6e5cf1d40a989b9541e341f sse.patch
52ba7c70db1223775b3f1f84f1895f27c1c01f73c58ea381ec97ec8e5236e0d7 lame-automake-1.12.patch"
sha512sums="ce62d7eb9fc8c53c343374ded30f11153a296910f0be7e649197bca7412c6660aad1aa6143d56b750f866229eb492cf7bb4f682535c383fb4aa57d7077d8b4d8 lame-3.99.5.tar.gz
89c1a3b52c6469c78ab1fcb52e7dbb3a62dac20953905027301f659ebcb166d0fc4ef78b8459feec0c26e458f3e1415bb88209b9c43a5af1e0643764ffb6fe83 sse.patch
fa789f706e5efffaac9d7a6cf001b5a0fef7e04845ee2c02d5af4e735629b5f225e355673890892f028d6c35d3969124b3ef4a28c980050f1635c2a58b8f25ed lame-automake-1.12.patch"

30
main/lame/sse.patch Normal file
View File

@ -0,0 +1,30 @@
xmm_quantize_sub.c: In function 'init_xrpow_core_sse':
xmm_quantize_sub.c:65:18: warning: SSE vector return without SSE enabled changes the ABI [-W
psabi]
const __m128 vec_fabs_mask = _mm_loadu_ps(&fabs_mask._float[0]);
^
In file included from xmm_quantize_sub.c:37:0:
/usr/lib/gcc/i686-w64-mingw32/4.9.0/include/xmmintrin.h:933:1: error: inlining failed in call to always_inline '_mm_loadu_ps': target specific option mismatch
_mm_loadu_ps (float const *__P)
^
xmm_quantize_sub.c:65:18: error: called from here
const __m128 vec_fabs_mask = _mm_loadu_ps(&fabs_mask._float[0]);
^
--- lame/libmp3lame/vector/xmm_quantize_sub.c.orig 2014-06-08 12:16:19.455468042 -0700
+++ lame/libmp3lame/vector/xmm_quantize_sub.c 2014-06-08 12:16:09.592356980 -0700
@@ -35,6 +35,7 @@
#ifdef HAVE_XMMINTRIN_H
#include <xmmintrin.h>
+#pragma GCC target("sse")
typedef union {
int32_t _i_32[4]; /* unions are initialized by its first member */
@@ -124,6 +125,7 @@
}
+#pragma GCC target("sse2")
void
fht_SSE2(FLOAT * fz, int n)
{