summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2013-12-31 19:19:37 +0000
committerMike Frysinger <vapier@gentoo.org>2013-12-31 19:19:37 +0000
commit216b8e4bd9a2353e05ae3186d1a6ed81e766bbef (patch)
treeafcb5b297a39afe4a8e83fe9a08c420ddbdc57c0 /media-tv/xbmc
parentVersion bump #496594 by Ulenrich. (diff)
downloadhistorical-216b8e4bd9a2353e05ae3186d1a6ed81e766bbef.tar.gz
historical-216b8e4bd9a2353e05ae3186d1a6ed81e766bbef.tar.bz2
historical-216b8e4bd9a2353e05ae3186d1a6ed81e766bbef.zip
Add patch from upstream for building on cpus w/out sse2 #475266 by Jose Quinteiro.
Package-Manager: portage-2.2.7/cvs/Linux x86_64 Manifest-Sign-Key: 0xD2E96200
Diffstat (limited to 'media-tv/xbmc')
-rw-r--r--media-tv/xbmc/ChangeLog7
-rw-r--r--media-tv/xbmc/Manifest5
-rw-r--r--media-tv/xbmc/files/xbmc-12.3-no-sse2.patch185
-rw-r--r--media-tv/xbmc/xbmc-12.3.ebuild3
4 files changed, 196 insertions, 4 deletions
diff --git a/media-tv/xbmc/ChangeLog b/media-tv/xbmc/ChangeLog
index f6ddfc1f0dff..88f9dfaa7a74 100644
--- a/media-tv/xbmc/ChangeLog
+++ b/media-tv/xbmc/ChangeLog
@@ -1,6 +1,11 @@
# ChangeLog for media-tv/xbmc
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-tv/xbmc/ChangeLog,v 1.199 2013/12/31 00:31:38 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-tv/xbmc/ChangeLog,v 1.200 2013/12/31 19:18:32 vapier Exp $
+
+ 31 Dec 2013; Mike Frysinger <vapier@gentoo.org>
+ +files/xbmc-12.3-no-sse2.patch, xbmc-12.3.ebuild:
+ Add patch from upstream for building on cpus w/out sse2 #475266 by Jose
+ Quinteiro.
*xbmc-12.3 (31 Dec 2013)
diff --git a/media-tv/xbmc/Manifest b/media-tv/xbmc/Manifest
index 930cf20e67d2..b44a62cf6ea5 100644
--- a/media-tv/xbmc/Manifest
+++ b/media-tv/xbmc/Manifest
@@ -7,6 +7,7 @@ AUX xbmc-11.0-no-arm-flags.patch 542 SHA256 72164a8b91f3209cff06ea1a103580f82713
AUX xbmc-11.0-no-exec-stack.patch 807 SHA256 e36c83746838dd362512a046dc066c0f3fdc1252289b2761be381f84262cab78 SHA512 d0d4c2d4bb257c722ec40470fb6c8da59033009152598e69133b6184b25da36debf42f86859389c878a072603f3d583e28a52519e8dca47d9bdf7edd5f9e44c5 WHIRLPOOL d18dd387fe55b18be78fdad08b0a4319c2a5ccd161f1dfc0d5ab8015d88c5842780415c903a098a4683524658fc31c07e285e61fcff04ad6e4777c77e5691f38
AUX xbmc-11.0-nomythtv.patch 6190 SHA256 ffb1eb49f94b4ae41e5d79172499671915122a58af248b0585ee276e4aa2c87e SHA512 4a9ff4b4f5cb56c92932f05b5b812bee0fdce37ed9f568a6e0dc0cd62335e2131361a63d8026b64f9c7078fa9c4ef0e439b52234c722b1b854aeeed1cc2764c7 WHIRLPOOL ce457b509c6fd222ae6002420db7cc438e1352114f38790b623f04e6834eb5508d4609a1bf71628bfafde3bcef830e84b42448619c19227d5729d6d8a824a13c
AUX xbmc-12.1-nomythtv.patch 1680 SHA256 fe0289d1361b0dde3c261bc082bcad123c9cc9a2b7398e4eb48773f976be93a2 SHA512 403389bb1bf1442be1a8d23106bd78dc672c66fcf588b6076e6105023a69a92ca58cdaa91c9e2664123f244c3d5f42a9de6f72845c702339e3f8a0e976330ca1 WHIRLPOOL dcf13b59133f2b7288bc734803ad1317d6e943f7cd85b0428ec257b2ec9fb6a23311fbdd8574dbfb985a473dac7cf8ca30c2ac6d59b62797adb1f63d8bcc0b12
+AUX xbmc-12.3-no-sse2.patch 6067 SHA256 83ce5004e4fb14dee9785330d791013b383bef3404d6825b9339af4d7cdee3bc SHA512 a91628fff7ba6e6cdddd59d39587a555597d90b50ec536baeb8c0c2979b34dde2854d018821f17a3f7b4fe24fef4271698385ea15644e8f3da074376717ffcd1 WHIRLPOOL 0698c081d2808f234ee45e12146813b8a776a40d804cfcd7b12154a621cc6be1d0d504f2c6d3a30772507840f7ada11cbcaaa47140e0010f91c557eca74a86ca
AUX xbmc-9999-no-arm-flags.patch 478 SHA256 075db2562d31914d86b4394500d4b3168ea77114b63d1a7929ddae96111017a2 SHA512 b958cf3ab4877dbae4e5bd1376e8b9bd82f0dab43b1695c1d85e0e8ff366ef278ff686fe6394a04b3d79e19f11d8c92689fc049d2874e3fc12c907e36e993064 WHIRLPOOL f322fa4db24ff6f3372bdadd3dba8fbd4aed5849dc676f8c63d654f2c83de2165e60b26af821647a46cfa5ff129e7e0cb7c39c5cddbc2e5d9ec675bb148b2d63
AUX xbmc-9999-nomythtv.patch 1689 SHA256 b54e52be122890affca5eb726873817bfbaa1b5da0d58231bd0c098681ce6b35 SHA512 ebd3deef88fdef0b54bb5936f9a479523297c1224595ea021af0674b9cb422f3a3bdc03c3cdf9e96f475b23e68983a62241d91cb74fd4f69b2635e6f7d4a80e4 WHIRLPOOL 0d2ad77fee3a4cce535cb25c07c481d9133c867f6de1fba5cd1dcc6f79d480f496673c223e464d90cab9602651e226792679eaa499959d7cae01b94f64a2f345
DIST xbmc-11.0.tar.gz 63012044 SHA256 1fe5d310c16138f26e2b13bc545604e95f48ace6c8636f23e77da402cd7b0b19 SHA512 ba738129f70dd171b3fae385ab44317f62c9041a116bfe809d6d07c99ea69c663ad5d598552a17be0b942251ce12a68f34d0be21b303b256055849a6dde90043 WHIRLPOOL 4dd068749c86542e39b8fc42b45bbb56e885813b17876d3583cb4d91c902ff075e1f16f1c19720e3430dc149c40e52e7d1ab3323f666263fb353a59e2ef94a8e
@@ -19,7 +20,7 @@ DIST xbmc_backports-12-1.tar.bz2 5010 SHA256 a222c32f5a4a0a8690b1544674cfbfeddf8
EBUILD xbmc-11.0.ebuild 6299 SHA256 9766e13599ba897a01e1ac279db544fa69c32f79fac20fddbaa42bb0e76f2199 SHA512 2a46985734e6284be47049482e0bc16a49fdaacd20d1fc822870f7b6a22ceaee4a9b176e242be948fd24b155db8854240660fb340a7b724f593345adee5c06d5 WHIRLPOOL 3483f3db0e1803407454dc04513e3be8a30d337a0a68555601b5d63ff7dfbaacaec829ab84156536cc4047eb7f4fc8630e6e24ab3594bbbc5a560feda27c0d43
EBUILD xbmc-12.1-r1.ebuild 7115 SHA256 47046f45870a9e0e21ee35438ff49c93305235769a1d7ccb689a50ef7d64a11b SHA512 ad7bf1e5febb5fb3a0576622d4b29b37ff0a42843eafc3afe1bf6d04452bdffcb039bdfdb60ab5edcc2f26d15f4de626664268bb8aa8cd78c692c5d860e4022e WHIRLPOOL e9cf6c3758b9568634ad3ddff4ff55b662be6e77e0c3b292be422f252053786fa23147efdbaee37aae8296f40324dedabce4f02522a037524d51b453d2986414
EBUILD xbmc-12.2-r1.ebuild 7076 SHA256 6118ad038ea8c0232a7c1d6309cafdab8fd61137c56a7a845c03b5df3d64c48c SHA512 9afacd0a3fe260b0cebba05617299bcfb293863e37834a3637072312bb678be76f3e717cfd18beb31c6ded90eec088dfad1fa41d4f92f9bcb050379d5e9b65fa WHIRLPOOL 5dd1213fb8bc6eb064abf3fc5ad155e6edc9f484f272064593587d959592354db680cdf0edcb87f0629e601eaabd0d442e6e7372919563effa2426b0acd7fdcd
-EBUILD xbmc-12.3.ebuild 7121 SHA256 ec00287e08cd12c7f26676042699cb5cf8218b025de8a8085013623259ea6364 SHA512 4ddbc9cae4c6c78e70bfa86e88a9f87a67904ba4a805f20d0d158abc1ccee7acf11260de960891c3b5b0367d9d8188c90a7439c38344aaec8a09c2a74393eb99 WHIRLPOOL 9a918febbf4d2f511f204ab16e5b25e870058365d47e6421863516f7a9cb07f40d41c56f0698396e091ebdec6f5dc3661f7da4e2288f80f2b69fe81dc931369b
+EBUILD xbmc-12.3.ebuild 7176 SHA256 69dacbdfb96fd3618025e041b7c85a0120360d122effb847c232e74493fb86a3 SHA512 4f2dbe184c5c3d7b3db67064ad2fd05a2649ebeef231f411d639d9ff0e7201c94b118ec5700952b4211a0c4b8db751b077f75801294823daf2e5575861b13d70 WHIRLPOOL 759f1813c9d7740f47b7d57db0345865ca353d3932521d4137121923acb7927aaf60c950ae2a3f4bdbfb0b78e4d7cb982a38e25260cceb5749bff8e7b200ce4c
EBUILD xbmc-9999.ebuild 8899 SHA256 592e2feb06ecd18d3aa49bc0f7d49db7c75ea6dc73fe6f710a4df089e345b0b0 SHA512 2ef6537249d288597ea2bdb04feb111124bc8202072a9dec8a54941fcf46fe77763091365af72a365d3a1e10bf8a0310104ac7b95cf9e1b1fc6c185d7ac04b98 WHIRLPOOL 4c57b1456d07f4b395765ad8115e22cb08e38cb4735473b8a873d4c8e59e76bcb45ccf7ac822e0634035ff075b2b96b5fdede55c7d2324c05ddbe04631ccf6b0
-MISC ChangeLog 33178 SHA256 9ff66e59c176ca27c71eb201c431a4b6033311a77b3485655962fbc275ed97f2 SHA512 c37426f016e071b052064500b92cf4ad4a3c77e63dada5d224081f99a7135673b3426bd61060e854a60b2548b8d1cbe9f0f67427877113d315976864b2c1f28f WHIRLPOOL 0a33c9d72a31dad3745d7106d10392fa1cb81d78807524c76497729a5f71ffaf095fe2086c5df3b822dfe2b497440504d812e6a7c36d62fbe0a1d92ee49ccd3b
+MISC ChangeLog 33368 SHA256 76fb58b7aa61745779cf7eba71253092034228907866e309e04bab47488c7c8f SHA512 d93428e6c5b054a2b346a5fb585257db7fdc5fd68c2b5769ea1bb7bb7085afa854c32e81ba8c0495a0f0e712b71b51079e045e38b404b30b5b311cf215c471f8 WHIRLPOOL e6865ea1d0335240390bd8a1d5ac12e030e0640cb3e586f297367821d795ff6d802d48eb6ce0adbd381850719dbd79e64dfb3f183fe05b3a72838e277befd4f8
MISC metadata.xml 1140 SHA256 00929104e646c293b0ee5dc8a42701b940a0e908f7293c15a277ce138a56999a SHA512 e6a4b148543b613ffad57925310bc7562629e18f726cc958bf2de64020b0ec3d72cf82eb2e506a194c1c3610361d96ff41245d1e7a411be08f87719abbb80410 WHIRLPOOL 92f8748f2fedb7fe0bd34ed29e4e4ff25cb55b7ceacc15a9a4c561c3544530d216d5494de1862591156f3290e641a38aa91000c2b33e850d8a923e1818eb5ac1
diff --git a/media-tv/xbmc/files/xbmc-12.3-no-sse2.patch b/media-tv/xbmc/files/xbmc-12.3-no-sse2.patch
new file mode 100644
index 000000000000..a0f787c03864
--- /dev/null
+++ b/media-tv/xbmc/files/xbmc-12.3-no-sse2.patch
@@ -0,0 +1,185 @@
+https://bugs.gentoo.org/475266
+
+From 07ccc514dc688f0dd53f603d206894023e65ab20 Mon Sep 17 00:00:00 2001
+From: Jose Quinteiro <gentoo@quinteiro.org>
+Date: Sat, 27 Apr 2013 11:29:51 -0700
+Subject: [PATCH] Detect SSE2 support
+
+Compilation on an older 32-bit Athlon XP chip fails with the error
+"./Utils/AEUtil.h:50:12: error: '__m128i' does not name a type"
+This is because the __m128i type is only available on SSE2 platforms.
+Modify the preprocessor logic to detect SSE and SSE2 support separately.
+
+The "emmintrin.h" header should only be included on SSE2 platforms as
+well.
+---
+ xbmc/cores/AudioEngine/Utils/AEConvert.cpp | 25 ++++++++++---------------
+ xbmc/cores/AudioEngine/Utils/AEUtil.cpp | 4 ++--
+ xbmc/cores/AudioEngine/Utils/AEUtil.h | 9 ++++++++-
+ 3 files changed, 20 insertions(+), 18 deletions(-)
+
+diff --git a/xbmc/cores/AudioEngine/Utils/AEConvert.cpp b/xbmc/cores/AudioEngine/Utils/AEConvert.cpp
+index 0b0b646..7cfde5e 100644
+--- a/xbmc/cores/AudioEngine/Utils/AEConvert.cpp
++++ b/xbmc/cores/AudioEngine/Utils/AEConvert.cpp
+@@ -33,11 +33,6 @@
+ #include <math.h>
+ #include <string.h>
+
+-#ifdef __SSE__
+-#include <xmmintrin.h>
+-#include <emmintrin.h>
+-#endif
+-
+ #ifdef __ARM_NEON__
+ #include <arm_neon.h>
+ #endif
+@@ -517,7 +512,7 @@ unsigned int CAEConvert::Float_S8(float *data, const unsigned int samples, uint8
+ unsigned int CAEConvert::Float_S16LE(float *data, const unsigned int samples, uint8_t *dest)
+ {
+ int16_t *dst = (int16_t*)dest;
+- #ifdef __SSE__
++ #ifdef __SSE2__
+
+ unsigned int count = samples;
+ unsigned int unaligned = (0x10 - ((uintptr_t)data & 0xF)) >> 2;
+@@ -623,7 +618,7 @@ unsigned int CAEConvert::Float_S16LE(float *data, const unsigned int samples, ui
+ /* cleanup */
+ _mm_empty();
+
+- #else /* no SSE */
++ #else /* no SSE2 */
+
+ uint32_t i = 0;
+ uint32_t even = samples & ~0x3;
+@@ -651,7 +646,7 @@ unsigned int CAEConvert::Float_S16LE(float *data, const unsigned int samples, ui
+ unsigned int CAEConvert::Float_S16BE(float *data, const unsigned int samples, uint8_t *dest)
+ {
+ int16_t *dst = (int16_t*)dest;
+- #ifdef __SSE__
++ #ifdef __SSE2__
+
+ unsigned int count = samples;
+ unsigned int unaligned = (0x10 - ((uintptr_t)data & 0xF)) >> 2;
+@@ -757,7 +752,7 @@ unsigned int CAEConvert::Float_S16BE(float *data, const unsigned int samples, ui
+ /* cleanup */
+ _mm_empty();
+
+- #else /* no SSE */
++ #else /* no SSE2 */
+
+ uint32_t i = 0;
+ uint32_t even = samples & ~0x3;
+@@ -785,7 +780,7 @@ unsigned int CAEConvert::Float_S16BE(float *data, const unsigned int samples, ui
+ unsigned int CAEConvert::Float_S24NE4(float *data, const unsigned int samples, uint8_t *dest)
+ {
+ int32_t *dst = (int32_t*)dest;
+- #ifdef __SSE__
++ #ifdef __SSE2__
+
+ const __m128 mul = _mm_set_ps1((float)INT24_MAX+.5f);
+ unsigned int count = samples;
+@@ -835,7 +830,7 @@ unsigned int CAEConvert::Float_S24NE4(float *data, const unsigned int samples, u
+ }
+ }
+ _mm_empty();
+- #else /* no SSE */
++ #else /* no SSE2 */
+ for (uint32_t i = 0; i < samples; ++i)
+ *dst++ = (safeRound(*data++ * ((float)INT24_MAX+.5f)) & 0xFFFFFF) << 8;
+ #endif
+@@ -929,7 +924,7 @@ unsigned int CAEConvert::Float_S24NE3(float *data, const unsigned int samples, u
+ unsigned int CAEConvert::Float_S32LE(float *data, const unsigned int samples, uint8_t *dest)
+ {
+ int32_t *dst = (int32_t*)dest;
+- #ifdef __SSE__
++ #ifdef __SSE2__
+ const __m128 mul = _mm_set_ps1(MUL32);
+ unsigned int count = samples;
+
+@@ -989,7 +984,7 @@ unsigned int CAEConvert::Float_S32LE(float *data, const unsigned int samples, ui
+ _mm_empty();
+ #else
+
+- /* no SIMD */
++ /* no SSE2 */
+ for (uint32_t i = 0; i < samples; ++i, ++data, ++dst)
+ {
+ dst[0] = safeRound(data[0] * MUL32);
+@@ -1038,7 +1033,7 @@ unsigned int CAEConvert::Float_S32LE_Neon(float *data, const unsigned int sample
+ unsigned int CAEConvert::Float_S32BE(float *data, const unsigned int samples, uint8_t *dest)
+ {
+ int32_t *dst = (int32_t*)dest;
+- #ifdef __SSE__
++ #ifdef __SSE2__
+ const __m128 mul = _mm_set_ps1(MUL32);
+ unsigned int count = samples;
+
+@@ -1097,7 +1092,7 @@ unsigned int CAEConvert::Float_S32BE(float *data, const unsigned int samples, ui
+ }
+ _mm_empty();
+ #else
+- /* no SIMD */
++ /* no SSE2 */
+ for (uint32_t i = 0; i < samples; ++i, ++data, ++dst)
+ {
+ dst[0] = safeRound(data[0] * MUL32);
+diff --git a/xbmc/cores/AudioEngine/Utils/AEUtil.cpp b/xbmc/cores/AudioEngine/Utils/AEUtil.cpp
+index 6de84dc..2b6e0cd 100644
+--- a/xbmc/cores/AudioEngine/Utils/AEUtil.cpp
++++ b/xbmc/cores/AudioEngine/Utils/AEUtil.cpp
+@@ -30,7 +30,7 @@ using namespace std;
+
+ /* declare the rng seed and initialize it */
+ unsigned int CAEUtil::m_seed = (unsigned int)(CurrentHostCounter() / 1000.0f);
+-#ifdef __SSE__
++#ifdef __SSE2__
+ /* declare the SSE seed and initialize it */
+ MEMALIGN(16, __m128i CAEUtil::m_sseSeed) = _mm_set_epi32(CAEUtil::m_seed, CAEUtil::m_seed+1, CAEUtil::m_seed, CAEUtil::m_seed+1);
+ #endif
+@@ -386,7 +386,7 @@ float CAEUtil::FloatRand1(const float min, const float max)
+
+ void CAEUtil::FloatRand4(const float min, const float max, float result[4], __m128 *sseresult/* = NULL */)
+ {
+- #ifdef __SSE__
++ #ifdef __SSE2__
+ /*
+ this method may be called from other SSE code, we need
+ to calculate the delta & factor using SSE as the FPU
+diff --git a/xbmc/cores/AudioEngine/Utils/AEUtil.h b/xbmc/cores/AudioEngine/Utils/AEUtil.h
+index 48cbc3b..6fdb7f2 100644
+--- a/xbmc/cores/AudioEngine/Utils/AEUtil.h
++++ b/xbmc/cores/AudioEngine/Utils/AEUtil.h
+@@ -27,6 +27,9 @@
+ #ifdef TARGET_WINDOWS
+ #if _M_IX86_FP>0 && !defined(__SSE__)
+ #define __SSE__
++#if _M_IX86_FP>1 && !defined(__SSE2__)
++#define __SSE2__
++#endif
+ #endif
+ #endif
+
+@@ -36,6 +39,10 @@
+ #define __m128 void
+ #endif
+
++#ifdef __SSE2__
++#include <emmintrin.h>
++#endif
++
+ #ifdef __GNUC__
+ #define MEMALIGN(b, x) x __attribute__((aligned(b)))
+ #else
+@@ -63,7 +70,7 @@ class CAEUtil
+ {
+ private:
+ static unsigned int m_seed;
+- #ifdef __SSE__
++ #ifdef __SSE2__
+ static __m128i m_sseSeed;
+ #endif
+
+--
+1.8.4.3
+
diff --git a/media-tv/xbmc/xbmc-12.3.ebuild b/media-tv/xbmc/xbmc-12.3.ebuild
index 0bdb5ec70d1d..a486acffa4dc 100644
--- a/media-tv/xbmc/xbmc-12.3.ebuild
+++ b/media-tv/xbmc/xbmc-12.3.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-tv/xbmc/xbmc-12.3.ebuild,v 1.1 2013/12/31 00:31:38 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-tv/xbmc/xbmc-12.3.ebuild,v 1.2 2013/12/31 19:18:32 vapier Exp $
EAPI="5"
@@ -150,6 +150,7 @@ src_unpack() {
src_prepare() {
epatch "${FILESDIR}"/${PN}-12.1-nomythtv.patch
epatch "${FILESDIR}"/${PN}-9999-no-arm-flags.patch #400617
+ epatch "${FILESDIR}"/${PN}-12.3-no-sse2.patch #475266
# Backported fixes
EPATCH_MULTI_MSG="Applying patches backported from master..." \
EPATCH_SUFFIX="patch" \