[gstreamer1-plugins-base] Improve conditional SSE and SSE2 compilation
Wim Taymans
wtaymans at fedoraproject.org
Fri May 23 15:13:07 UTC 2014
commit 0dfec1089a2b4d0ec5a8b5695e9f82b20ab79625
Author: Wim Taymans <wtaymans at redhat.com>
Date: Fri May 23 17:12:26 2014 +0200
Improve conditional SSE and SSE2 compilation
...le-Fix-build-on-x86-if-emmintrin.h-is-ava.patch | 37 ++++++++++++++++++++
...le-It-s-HAVE_EMMINTRIN_H-not-HAVE_XMMINTR.patch | 26 ++++++++++++++
gstreamer1-plugins-base.spec | 9 ++++-
3 files changed, 71 insertions(+), 1 deletions(-)
---
diff --git a/0001-audioresample-Fix-build-on-x86-if-emmintrin.h-is-ava.patch b/0001-audioresample-Fix-build-on-x86-if-emmintrin.h-is-ava.patch
new file mode 100644
index 0000000..0364c2f
--- /dev/null
+++ b/0001-audioresample-Fix-build-on-x86-if-emmintrin.h-is-ava.patch
@@ -0,0 +1,37 @@
+From bde72c7bebaa9d10cd49ae5542d361bda7aa7bd0 Mon Sep 17 00:00:00 2001
+From: Antoine Jacoutot <ajacoutot at gnome.org>
+Date: Mon, 20 Jan 2014 15:44:09 +0100
+Subject: [PATCH 1/2] audioresample: Fix build on x86 if emmintrin.h is
+ available but can't be used
+
+On i386, EMMINTRIN is defined but not usable without SSE so check for
+__SSE__ and __SSE2__ as well.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=670690
+---
+ gst/audioresample/resample.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/gst/audioresample/resample.c b/gst/audioresample/resample.c
+index 98d006c..481fa01 100644
+--- a/gst/audioresample/resample.c
++++ b/gst/audioresample/resample.c
+@@ -77,13 +77,13 @@
+ #define EXPORT G_GNUC_INTERNAL
+
+ #ifdef _USE_SSE
+-#ifndef HAVE_XMMINTRIN_H
++#if !defined(__SSE__) || !defined(HAVE_XMMINTRIN_H)
+ #undef _USE_SSE
+ #endif
+ #endif
+
+ #ifdef _USE_SSE2
+-#ifndef HAVE_EMMINTRIN_H
++#if !defined(__SSE2__) || !defined(HAVE_XMMINTRIN_H)
+ #undef _USE_SSE2
+ #endif
+ #endif
+--
+1.9.0
+
diff --git a/0002-audioresample-It-s-HAVE_EMMINTRIN_H-not-HAVE_XMMINTR.patch b/0002-audioresample-It-s-HAVE_EMMINTRIN_H-not-HAVE_XMMINTR.patch
new file mode 100644
index 0000000..ee7e333
--- /dev/null
+++ b/0002-audioresample-It-s-HAVE_EMMINTRIN_H-not-HAVE_XMMINTR.patch
@@ -0,0 +1,26 @@
+From e9746600b409db9a5c63dc7a22b21f80c8c5328c Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= <sebastian at centricular.com>
+Date: Mon, 20 Jan 2014 16:11:04 +0100
+Subject: [PATCH 2/2] audioresample: It's HAVE_EMMINTRIN_H, not
+ HAVE_XMMINTRIN_H for SSE2
+
+---
+ gst/audioresample/resample.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/gst/audioresample/resample.c b/gst/audioresample/resample.c
+index 481fa01..4410bdd 100644
+--- a/gst/audioresample/resample.c
++++ b/gst/audioresample/resample.c
+@@ -83,7 +83,7 @@
+ #endif
+
+ #ifdef _USE_SSE2
+-#if !defined(__SSE2__) || !defined(HAVE_XMMINTRIN_H)
++#if !defined(__SSE2__) || !defined(HAVE_EMMINTRIN_H)
+ #undef _USE_SSE2
+ #endif
+ #endif
+--
+1.9.0
+
diff --git a/gstreamer1-plugins-base.spec b/gstreamer1-plugins-base.spec
index ac51312..2196133 100644
--- a/gstreamer1-plugins-base.spec
+++ b/gstreamer1-plugins-base.spec
@@ -2,13 +2,15 @@
Name: gstreamer1-plugins-base
Version: 1.2.4
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: GStreamer streaming media framework base plugins
License: LGPLv2+
URL: http://gstreamer.freedesktop.org/
Source0: http://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-%{version}.tar.xz
Patch0: 0001-missing-plugins-Remove-the-mpegaudioversion-field.patch
+Patch1: 0001-audioresample-Fix-build-on-x86-if-emmintrin.h-is-ava.patch
+Patch2: 0002-audioresample-It-s-HAVE_EMMINTRIN_H-not-HAVE_XMMINTR.patch
BuildRequires: gstreamer1-devel >= %{version}
BuildRequires: gobject-introspection-devel >= 1.31.1
@@ -87,6 +89,8 @@ for the GStreamer Base Plugins library.
%prep
%setup -q -n gst-plugins-base-%{version}
%patch0 -p1
+%patch1 -p1
+%patch2 -p1
%build
@@ -350,6 +354,9 @@ chrpath --delete $RPM_BUILD_ROOT%{_bindir}/gst-discoverer-1.0
%changelog
+* Fri May 23 2014 Wim Taymans <wtaymans at redhat.com> - 1.2.4-2
+- Improve conditional SSE and SSE2 compilation
+
* Sun Apr 20 2014 Brian Pepple <bpepple at fedoraproject.org> - 1.2.4-1
- Update to 1.2.4.
More information about the scm-commits
mailing list