[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