aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Spencer <baildon.research@googlemail.com>2016-04-16 11:53:52 +0100
committerWilly Sudiarto Raharjo <willysr@slackbuilds.org>2016-04-19 22:47:49 +0700
commitd8957c2de20aa1b68e2c49d5992acb82cb31544f (patch)
treeb5f55af82be1da57cff945300668bb3b54c5db83
parentf7c33cde3a6b0d8c2172fbef9991bfa3db577a15 (diff)
multimedia/HandBrake: Fixed build on i686.
-rw-r--r--multimedia/HandBrake/A00-lame-xmmintrin.patch28
-rw-r--r--multimedia/HandBrake/A00-mpeg2dec-xmmintrin.patch19
-rw-r--r--multimedia/HandBrake/HandBrake.SlackBuild5
3 files changed, 52 insertions, 0 deletions
diff --git a/multimedia/HandBrake/A00-lame-xmmintrin.patch b/multimedia/HandBrake/A00-lame-xmmintrin.patch
new file mode 100644
index 0000000000000..0b5237162f1ab
--- /dev/null
+++ b/multimedia/HandBrake/A00-lame-xmmintrin.patch
@@ -0,0 +1,28 @@
+diff -Naur lame.orig/configure lame/configure
+--- lame.orig/configure 2015-02-08 17:37:18.000000000 -0500
++++ lame/configure 2015-02-08 17:38:32.000000000 -0500
+@@ -21031,7 +21031,14 @@
+
+
+
+-
++case $host_cpu in
++powerpc*|i686*)
++ check_xmmintrin=
++ ;;
++*)
++ check_xmmintrin="xmmintrin.h"
++ ;;
++esac
+
+ for ac_header in \
+ errno.h \
+@@ -21042,7 +21049,7 @@
+ sys/soundcard.h \
+ sys/time.h \
+ unistd.h \
+- xmmintrin.h \
++ $check_xmmintrin \
+ linux/soundcard.h
+ do
+ as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
diff --git a/multimedia/HandBrake/A00-mpeg2dec-xmmintrin.patch b/multimedia/HandBrake/A00-mpeg2dec-xmmintrin.patch
new file mode 100644
index 0000000000000..9765d3f63bfbe
--- /dev/null
+++ b/multimedia/HandBrake/A00-mpeg2dec-xmmintrin.patch
@@ -0,0 +1,19 @@
+diff -Naur mpeg2dec.orig/configure mpeg2dec/configure
+--- mpeg2dec.orig/configure 2015-02-08 17:37:18.000000000 -0500
++++ mpeg2dec/configure 2015-02-08 17:38:32.000000000 -0500
+@@ -21031,7 +21031,14 @@
+
+
+
+-
++case $host_cpu in
++powerpc*|i686*)
++ check_xmmintrin=
++ ;;
++*)
++ check_xmmintrin="xmmintrin.h"
++ ;;
++esac
+
+ for ac_header in \
+ errno.h \
diff --git a/multimedia/HandBrake/HandBrake.SlackBuild b/multimedia/HandBrake/HandBrake.SlackBuild
index a53dc90d03b02..5e50a7ae878d0 100644
--- a/multimedia/HandBrake/HandBrake.SlackBuild
+++ b/multimedia/HandBrake/HandBrake.SlackBuild
@@ -62,6 +62,11 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# fix i686 build: "inlining failed in call to always_inline '_mm_loadu_ps': target specific option mismatch"
+# https://github.com/HandBrake/HandBrake/blob/master/contrib/lame/A00-xmmintrin.patch
+cp $CWD/A00-lame-xmmintrin.patch contrib/lame/
+cp $CWD/A00-mpeg2dec-xmmintrin.patch contrib/mpeg2dec/
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \