svn commit: r318239 - in head: graphics/qt4-imageformats/files www/qt4-webkit/files x11-toolkits/qt4-gui/files x11/qt4-graphicssystems-opengl/files x11/qt4-opengl/files

Martin Wilke miwi at bsdhash.org
Wed May 15 12:33:12 UTC 2013


Big Thanks to all where have help to get this to work!



On May 15, 2013, at 7:40 PM, Raphael Kubo da Costa <rakuco at FreeBSD.org> wrote:

> Author: rakuco
> Date: Wed May 15 11:40:38 2013
> New Revision: 318239
> URL: http://svnweb.freebsd.org/changeset/ports/318239
> 
> Log:
>  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.
> 
> Added:
>  head/graphics/qt4-imageformats/files/
>  head/graphics/qt4-imageformats/files/patch-git_ccd1b2ee
>     - copied unchanged from r318237, head/devel/qt4-corelib/files/patch-git_ccd1b2ee
>  head/www/qt4-webkit/files/patch-git_ccd1b2ee
>     - copied unchanged from r318237, head/devel/qt4-corelib/files/patch-git_ccd1b2ee
>  head/x11-toolkits/qt4-gui/files/
>  head/x11-toolkits/qt4-gui/files/patch-git_ccd1b2ee
>     - copied unchanged from r318237, head/devel/qt4-corelib/files/patch-git_ccd1b2ee
>  head/x11/qt4-graphicssystems-opengl/files/
>  head/x11/qt4-graphicssystems-opengl/files/patch-git_ccd1b2ee
>     - copied unchanged from r318237, head/devel/qt4-corelib/files/patch-git_ccd1b2ee
>  head/x11/qt4-opengl/files/
>  head/x11/qt4-opengl/files/patch-git_ccd1b2ee
>     - copied unchanged from r318237, head/devel/qt4-corelib/files/patch-git_ccd1b2ee
> 
> Copied: head/graphics/qt4-imageformats/files/patch-git_ccd1b2ee (from r318237, head/devel/qt4-corelib/files/patch-git_ccd1b2ee)
> ==============================================================================
> --- /dev/null	00:00:00 1970	(empty, because file is newly added)
> +++ head/graphics/qt4-imageformats/files/patch-git_ccd1b2ee	Wed May 15 11:40:38 2013	(r318239, copy of r318237, head/devel/qt4-corelib/files/patch-git_ccd1b2ee)
> @@ -0,0 +1,35 @@
> +commit ccd1b2ee01c193cd157978c1f9f08f87d0f9c94b
> +Author: Raphael Kubo da Costa <rakuco at 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 at 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
> + 
> 
> Copied: head/www/qt4-webkit/files/patch-git_ccd1b2ee (from r318237, head/devel/qt4-corelib/files/patch-git_ccd1b2ee)
> ==============================================================================
> --- /dev/null	00:00:00 1970	(empty, because file is newly added)
> +++ head/www/qt4-webkit/files/patch-git_ccd1b2ee	Wed May 15 11:40:38 2013	(r318239, copy of r318237, head/devel/qt4-corelib/files/patch-git_ccd1b2ee)
> @@ -0,0 +1,35 @@
> +commit ccd1b2ee01c193cd157978c1f9f08f87d0f9c94b
> +Author: Raphael Kubo da Costa <rakuco at 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 at 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
> + 
> 
> Copied: head/x11-toolkits/qt4-gui/files/patch-git_ccd1b2ee (from r318237, head/devel/qt4-corelib/files/patch-git_ccd1b2ee)
> ==============================================================================
> --- /dev/null	00:00:00 1970	(empty, because file is newly added)
> +++ head/x11-toolkits/qt4-gui/files/patch-git_ccd1b2ee	Wed May 15 11:40:38 2013	(r318239, copy of r318237, head/devel/qt4-corelib/files/patch-git_ccd1b2ee)
> @@ -0,0 +1,35 @@
> +commit ccd1b2ee01c193cd157978c1f9f08f87d0f9c94b
> +Author: Raphael Kubo da Costa <rakuco at 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 at 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
> + 
> 
> Copied: head/x11/qt4-graphicssystems-opengl/files/patch-git_ccd1b2ee (from r318237, head/devel/qt4-corelib/files/patch-git_ccd1b2ee)
> ==============================================================================
> --- /dev/null	00:00:00 1970	(empty, because file is newly added)
> +++ head/x11/qt4-graphicssystems-opengl/files/patch-git_ccd1b2ee	Wed May 15 11:40:38 2013	(r318239, copy of r318237, head/devel/qt4-corelib/files/patch-git_ccd1b2ee)
> @@ -0,0 +1,35 @@
> +commit ccd1b2ee01c193cd157978c1f9f08f87d0f9c94b
> +Author: Raphael Kubo da Costa <rakuco at 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 at 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
> + 
> 
> Copied: head/x11/qt4-opengl/files/patch-git_ccd1b2ee (from r318237, head/devel/qt4-corelib/files/patch-git_ccd1b2ee)
> ==============================================================================
> --- /dev/null	00:00:00 1970	(empty, because file is newly added)
> +++ head/x11/qt4-opengl/files/patch-git_ccd1b2ee	Wed May 15 11:40:38 2013	(r318239, copy of r318237, head/devel/qt4-corelib/files/patch-git_ccd1b2ee)
> @@ -0,0 +1,35 @@
> +commit ccd1b2ee01c193cd157978c1f9f08f87d0f9c94b
> +Author: Raphael Kubo da Costa <rakuco at 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 at 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
> + 
> 


+-----------------oOO--(_)--OOo-------------------------+
With best Regards,
       Martin Wilke (miwi_(at)_FreeBSD.org)

Mess with the Best, Die like the Rest



More information about the svn-ports-all mailing list