Import my upstream commit to fix the detection of 3dNOW! support.
The patch was originally written by dim@ and fixes the way Qt includes the <mm3dnow.h> header. See the upstream commits' message for more information. Practically speaking, this should make the Qt ports build with clang on i386 again, and allows us to revert commits r316233, r316348 and r316341: miwi was very laconic in his commit messages, but the changes all point to the issue being fixed here. Submitted by: dim
This commit is contained in:
parent
47f7e0e39d
commit
760949cffa
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=317896
@ -3,7 +3,7 @@
|
||||
|
||||
PORTNAME= corelib
|
||||
DISTVERSION= ${QT4_VERSION}
|
||||
PORTREVISION= 1
|
||||
PORTREVISION= 2
|
||||
CATEGORIES?= devel
|
||||
PKGNAMEPREFIX= qt4-
|
||||
|
||||
@ -14,7 +14,6 @@ LIB_DEPENDS= icui18n:${PORTSDIR}/devel/icu
|
||||
|
||||
USES= pkgconfig
|
||||
USE_GNOME= _glib20
|
||||
USE_GCC= any
|
||||
USE_QT4= qmake_build moc_build
|
||||
QT_NONSTANDARD= yes
|
||||
QT_DIST= yes
|
||||
|
35
devel/qt4-corelib/files/patch-git_ccd1b2ee
Normal file
35
devel/qt4-corelib/files/patch-git_ccd1b2ee
Normal file
@ -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
|
||||
|
@ -14,7 +14,6 @@ LIB_DEPENDS= jpeg:${PORTSDIR}/graphics/jpeg \
|
||||
png15:${PORTSDIR}/graphics/png \
|
||||
tiff:${PORTSDIR}/graphics/tiff
|
||||
|
||||
USE_GCC= any
|
||||
USE_QT4= qmake_build moc_build rcc_build corelib gui svg xml
|
||||
QT_NONSTANDARD= yes
|
||||
QT_DIST= yes
|
||||
|
@ -10,7 +10,6 @@ PKGNAMEPREFIX= qt4-
|
||||
MAINTAINER= kde@FreeBSD.org
|
||||
COMMENT= Qt4 WebKit engine
|
||||
|
||||
USE_GCC= any
|
||||
USES= pkgconfig
|
||||
USE_QT4= corelib declarative gui network \
|
||||
qmake_build moc_build rcc_build
|
||||
|
@ -18,7 +18,6 @@ QT_NONSTANDARD= yes
|
||||
QT_DIST= yes
|
||||
MAKE_JOBS_SAFE= yes
|
||||
|
||||
USE_GCC= any
|
||||
HAS_CONFIGURE= yes
|
||||
USES= pkgconfig
|
||||
USE_LDCONFIG= ${PREFIX}/lib/qt4
|
||||
|
@ -17,7 +17,6 @@ MAKE_JOBS_SAFE= yes
|
||||
HAS_CONFIGURE= yes
|
||||
USE_GL= glu
|
||||
|
||||
USE_GCC= any
|
||||
ALL_TARGET= first
|
||||
CONFIGURE_ENV?= QTDIR=${WRKSRC} PATH=${WRKSRC}/bin:$$PATH
|
||||
MAKE_ENV?= QTDIR=${WRKSRC} LD_LIBRARY_PATH=${WRKSRC}/lib:$$LD_LIBRARY_PATH \
|
||||
|
@ -14,7 +14,6 @@ QT_NONSTANDARD= yes
|
||||
QT_DIST= yes
|
||||
MAKE_JOBS_SAFE= yes
|
||||
|
||||
USE_GCC= any
|
||||
HAS_CONFIGURE= yes
|
||||
USE_LDCONFIG= ${PREFIX}/lib/qt4
|
||||
USE_GL= gl
|
||||
|
Loading…
Reference in New Issue
Block a user