aboutsummaryrefslogtreecommitdiffstats
path: root/graphics/qt4-imageformats
diff options
context:
space:
mode:
authorrakuco <rakuco@FreeBSD.org>2013-05-15 19:40:38 +0800
committerrakuco <rakuco@FreeBSD.org>2013-05-15 19:40:38 +0800
commitcbe09c6dcf7740cba355311664219689fd37b718 (patch)
treede0f79158e9e7a3d65ec487d27e912c22beb22a3 /graphics/qt4-imageformats
parent4a07f4a50cac07c8719859f9f8b9d4a0dfd76611 (diff)
downloadfreebsd-ports-gnome-cbe09c6dcf7740cba355311664219689fd37b718.tar.gz
freebsd-ports-gnome-cbe09c6dcf7740cba355311664219689fd37b718.tar.zst
freebsd-ports-gnome-cbe09c6dcf7740cba355311664219689fd37b718.zip
Add the patch I added to qt4-corelib in r317896 to some other Qt ports.
These ports which previously failed to build with clang-i386 use their private copies of the qsimd_p.h header, since this private header is not installed at all (which, in turns, makes the PORTREVISION bump in qt4-corelib quite useless). We thus need to add a copy of the same patch to all these ports to make sure the qsim_p.h they use when being built is actually the one we want. Hopefully this gets miwi happy and people on clang-i386 can build these ports again.
Diffstat (limited to 'graphics/qt4-imageformats')
-rw-r--r--graphics/qt4-imageformats/files/patch-git_ccd1b2ee35
1 files changed, 35 insertions, 0 deletions
diff --git a/graphics/qt4-imageformats/files/patch-git_ccd1b2ee b/graphics/qt4-imageformats/files/patch-git_ccd1b2ee
new file mode 100644
index 000000000000..a545ee951984
--- /dev/null
+++ b/graphics/qt4-imageformats/files/patch-git_ccd1b2ee
@@ -0,0 +1,35 @@
+commit ccd1b2ee01c193cd157978c1f9f08f87d0f9c94b
+Author: Raphael Kubo da Costa <rakuco@FreeBSD.org>
+Date: Fri May 10 01:40:23 2013 +0300
+
+ Check that 3DNow! instructions are supported before including mm3dnow.h.
+
+ Include mm3dnow.h the way we already include the (S)SSE{3,4} and AVX
+ instruction headers: by checking that the compiler is set to support those
+ instructions besides verifying that QT_HAVE_3DNOW evalues to true (which
+ only means the compiler supported them when the build was being configured).
+
+ This has not caused a problem in most cases so far because GCC protects its
+ mm3dnow.h header with an #ifdef __3dNOW__ (contrary to what it does on, say,
+ pmmintrin.h). clang's mm3dnow.h, on the other hand, does not have that check
+ and can fail if -march is set to, for example, i386 or i486.
+
+ Not backported from qt5 because qtbase because qsimd_p.h does not include
+ the 3DNow! headers after commit a1b30b49ef09bef2e97b9a0622bf7ad622678fee.
+
+ Change-Id: I15ab5e936c71c55f89c3f25777ab27fbd262e9cd
+ Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
+
+diff --git a/src/corelib/tools/qsimd_p.h b/src/corelib/tools/qsimd_p.h
+index 87e26e1..6a32e8f 100644
+--- ./src/corelib/tools/qsimd_p.h
++++ ./src/corelib/tools/qsimd_p.h
+@@ -199,7 +199,7 @@ QT_BEGIN_HEADER
+ #endif
+
+ // 3D now intrinsics
+-#if defined(QT_HAVE_3DNOW)
++#if defined(QT_HAVE_3DNOW) && (defined(__3dNOW__) || defined(Q_CC_MSVC))
+ #include <mm3dnow.h>
+ #endif
+