Remove the 'macosx' arch
authorBradley T. Hughes <bradley.hughes@nokia.com>
Wed, 25 Jan 2012 15:12:53 +0000 (16:12 +0100)
committerQt by Nokia <qt-info@nokia.com>
Thu, 26 Jan 2012 12:24:11 +0000 (13:24 +0100)
The new atomic implementation chooses which header to include based
on what #define's are set by the compiler (i.e. __x86_64__ or
__i386__). Because of this, the qatomic_macosx.h header isn't used
anymore. This also means that the configure script does not need to
use or look for this file anymore, it should just use the normal
uname -m detection.

Change-Id: Ibf275488735483268286196952299c0e496dfd1f
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
configure
src/corelib/arch/arch.pri
src/corelib/arch/macosx/arch.pri [deleted file]
src/corelib/arch/macosx/qatomic32_ppc.s [deleted file]
src/corelib/arch/qatomic_macosx.h [deleted file]

index bb997b1..fe07f8c 100755 (executable)
--- a/configure
+++ b/configure
@@ -191,6 +191,7 @@ BUILD_ON_MAC=no
 PLATFORM_MAC=no
 if [ -d /System/Library/Frameworks/Carbon.framework ]; then
     BUILD_ON_MAC=yes
+    PLATFORM_MAC=maybe
 fi
 
 #-----------------------------------------------------------------------------
@@ -2941,21 +2942,6 @@ if [ -z "${CFG_HOST_ARCH}" ]; then
             esac
         esac
         ;;
-    Darwin:*:*)
-        case "$UNAME_MACHINE" in
-            Power?Macintosh)
-                if [ "$OPT_VERBOSE" = "yes" ]; then
-                    echo "    32-bit Apple PowerPC (powerpc)"
-                fi
-                ;;
-            x86)
-                if [ "$OPT_VERBOSE" = "yes" ]; then
-                    echo "    32-bit Intel 80x86 (i386)"
-                fi
-                ;;
-        esac
-        CFG_HOST_ARCH=macosx
-        ;;
     AIX:*:00????????00)
         if [ "$OPT_VERBOSE" = "yes" ]; then
         echo "    64-bit IBM PowerPC (powerpc)"
@@ -3119,7 +3105,7 @@ fi
 
 # detect build style
 if [ "$CFG_DEBUG" = "auto" ]; then
-    if [ "$CFG_ARCH" = "macosx" -o "$XPLATFORM_MINGW" = "yes" ]; then
+    if [ "$PLATFORM_MAC" = "yes" -o "$XPLATFORM_MINGW" = "yes" ]; then
         CFG_DEBUG_RELEASE=yes
         CFG_DEBUG=yes
     elif [ "$CFG_DEV" = "yes" ]; then
@@ -3184,7 +3170,7 @@ if [ '!' -z "$CFG_SDK" ]; then
 fi
 
 # find the default framework value
-if [ "$CFG_ARCH" = "macosx" ]; then
+if [ "$PLATFORM_MAC" = "yes" ]; then
     if [ "$CFG_FRAMEWORK" = "auto" ]; then
         CFG_FRAMEWORK="$CFG_SHARED"
     elif [ "$CFG_FRAMEWORK" = "yes" ] && [ "$CFG_SHARED" = "no" ]; then
@@ -3306,7 +3292,7 @@ if [ "$PLATFORM_MAC" = "yes" ]; then
 fi
 
 # find the default framework value
-if [ "$CFG_ARCH" = "macosx" ]; then
+if [ "$PLATFORM_MAC" = "yes" ]; then
     if [ "$CFG_FRAMEWORK" = "auto" ]; then
         CFG_FRAMEWORK="$CFG_SHARED"
     elif [ "$CFG_FRAMEWORK" = "yes" ] && [ "$CFG_SHARED" = "no" ]; then
@@ -5828,7 +5814,7 @@ fi
 
 if [ "$PLATFORM_QPA" = "yes" ]; then
     # auto-detect OpenGL support (es2 = OpenGL ES 2.x)
-    if [ "$CFG_ARCH" = "macosx" ]; then
+    if [ "$PLATFORM_MAC" = "yes" ]; then
         CFG_OPENGL=desktop
     elif [ "$CFG_OPENGL" = "auto" ] || [ "$CFG_OPENGL" = "yes" ]; then
         if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/opengldesktop "OpenGL" $L_FLAGS $I_FLAGS $l_FLAGS $X11TESTS_FLAGS; then
@@ -6549,7 +6535,7 @@ if [ "$CFG_MAC_DWARF2" = "yes" ]; then
 fi
 
 # Set the default arch if there are no "-arch" arguments on the configure line
-if [ "$CFG_ARCH" = "macosx" ]  && [ "$CFG_MAC_ARCHS" = "" ]; then
+if [ "$PLATFORM_MAC" = "yes" ]  && [ "$CFG_MAC_ARCHS" = "" ]; then
     source "$mactests/defaultarch.test" "$TEST_COMPILER" "$OPT_VERBOSE" "$mactests"
     CFG_MAC_ARCHS=" $QT_MAC_DEFAULT_ARCH"
     [ "$OPT_VERBOSE" = "yes" ] && echo "Setting Mac architechture to$CFG_MAC_ARCHS."
@@ -6701,7 +6687,7 @@ fi
 [ "$CFG_AVX" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG avx"
 [ "$CFG_IWMMXT" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG iwmmxt"
 [ "$CFG_NEON" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG neon"
-[ "$CFG_ARCH" = "macosx" ] && QMAKE_CONFIG="$QMAKE_CONFIG $CFG_MAC_ARCHS"
+[ "$PLATFORM_MAC" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG $CFG_MAC_ARCHS"
 if [ "$CFG_CLOCK_GETTIME" = "yes" ]; then
     QT_CONFIG="$QT_CONFIG clock-gettime"
 fi
@@ -6864,7 +6850,7 @@ fi
 [ '!' -z "$L_FLAGS" ] && QMakeVar add QMAKE_LIBDIR_FLAGS "$L_FLAGS"
 [ '!' -z "$l_FLAGS" ] && QMakeVar add LIBS "$l_FLAGS"
 
-if [ "$CFG_ARCH" = "macosx" ]; then
+if [ "$PLATFORM_MAC" = "yes" ]; then
     if [ "$CFG_RPATH" = "yes" ]; then
        QMAKE_CONFIG="$QMAKE_CONFIG absolute_library_soname"
     fi
@@ -7172,7 +7158,7 @@ fi
 
 
 case "$CFG_ARCH" in
-i386|x86_64|arm|mips|macosx) ;;
+i386|x86_64|arm|mips) ;;
 *) canBuildV8="no";;
 esac
 
index 2921f8e..e8699a2 100644 (file)
@@ -4,7 +4,8 @@ win32:HEADERS += arch/qatomic_windows.h \
 win32-g++*:HEADERS += arch/qatomic_i386.h \
                       arch/qatomic_x86_64.h
 
-mac:HEADERS += arch/qatomic_macosx.h \
+mac:HEADERS += arch/qatomic_i386.h \
+               arch/qatomic_x86_64.h \
                arch/qatomic_generic.h
 
 vxworks:HEADERS += arch/qatomic_vxworks.h
diff --git a/src/corelib/arch/macosx/arch.pri b/src/corelib/arch/macosx/arch.pri
deleted file mode 100644 (file)
index a2b1bf7..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-#
-# Mac OS X architecture
-#
-
-# Left blank intentionally since all the current compilers that we support can
-# handle in-line assembly.
diff --git a/src/corelib/arch/macosx/qatomic32_ppc.s b/src/corelib/arch/macosx/qatomic32_ppc.s
deleted file mode 100644 (file)
index 72b0228..0000000
+++ /dev/null
@@ -1,169 +0,0 @@
-;/****************************************************************************
-;**
-;** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).
-;** All rights reserved.
-;** Contact: http://www.qt-project.org/
-;**
-;** This file is part of the QtGui module of the Qt Toolkit.
-;**
-;** $QT_BEGIN_LICENSE:LGPL$
-;** GNU Lesser General Public License Usage
-;** This file may be used under the terms of the GNU Lesser General Public
-;** License version 2.1 as published by the Free Software Foundation and
-;** appearing in the file LICENSE.LGPL included in the packaging of this
-;** file. Please review the following information to ensure the GNU Lesser
-;** General Public License version 2.1 requirements will be met:
-;** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-;**
-;** In addition, as a special exception, Nokia gives you certain additional
-;** rights. These rights are described in the Nokia Qt LGPL Exception
-;** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-;**
-;** GNU General Public License Usage
-;** Alternatively, this file may be used under the terms of the GNU General
-;** Public License version 3.0 as published by the Free Software Foundation
-;** and appearing in the file LICENSE.GPL included in the packaging of this
-;** file. Please review the following information to ensure the GNU General
-;** Public License version 3.0 requirements will be met:
-;** http://www.gnu.org/copyleft/gpl.html.
-;**
-;** Other Usage
-;** Alternatively, this file may be used in accordance with the terms and
-;** conditions contained in a signed written agreement between you and Nokia.
-;**
-;**
-;**
-;**
-;**
-;** $QT_END_LICENSE$
-;**
-;****************************************************************************/
-       .section __TEXT,__text,regular,pure_instructions
-       .section __TEXT,__picsymbolstub1,symbol_stubs,pure_instructions,32
-        .section __TEXT,__text,regular,pure_instructions
-       .align 2
-       .align 2
-       .globl _q_atomic_test_and_set_int
-        .section __TEXT,__text,regular,pure_instructions
-       .align 2
-_q_atomic_test_and_set_int:
-       lwarx  r6,0,r3
-        cmpw   r6,r4
-        bne-   $+20
-        stwcx. r5,0,r3
-        bne-   $-16
-        addi   r3,0,1
-        blr
-        addi   r3,0,0
-       blr
-
-       .align 2
-       .globl _q_atomic_test_and_set_acquire_int
-        .section __TEXT,__text,regular,pure_instructions
-       .align 2
-_q_atomic_test_and_set_acquire_int:
-       lwarx  r6,0,r3
-        cmpw   r6,r4
-        bne-   $+20
-        stwcx. r5,0,r3
-        bne-   $-16
-        addi   r3,0,1
-        b      $+8
-        addi   r3,0,0
-        eieio
-       blr
-
-       .align 2
-       .globl _q_atomic_test_and_set_release_int
-        .section __TEXT,__text,regular,pure_instructions
-       .align 2
-_q_atomic_test_and_set_release_int:
-        eieio
-       lwarx  r6,0,r3
-        cmpw   r6,r4
-        bne-   $+20
-        stwcx. r5,0,r3
-        bne-   $-16
-        addi   r3,0,1
-        blr
-        addi   r3,0,0
-       blr
-
-       .align 2
-       .globl _q_atomic_test_and_set_ptr
-        .section __TEXT,__text,regular,pure_instructions
-       .align 2
-_q_atomic_test_and_set_ptr:
-       lwarx  r6,0,r3
-        cmpw   r6,r4
-        bne-   $+20
-        stwcx. r5,0,r3
-        bne-   $-16
-        addi   r3,0,1
-        blr
-        addi   r3,0,0
-       blr
-
-       .align 2
-       .globl _q_atomic_increment
-        .section __TEXT,__text,regular,pure_instructions
-       .align 2
-_q_atomic_increment:
-       lwarx  r4,0,r3
-        addi   r4,r4,1
-        stwcx. r4,0,r3
-        bne-   $-12
-       mr     r3,r4
-       blr
-
-       .align 2
-       .globl _q_atomic_decrement
-        .section __TEXT,__text,regular,pure_instructions
-       .align 2
-_q_atomic_decrement:
-       lwarx  r4,0,r3
-        subi   r4,r4,1
-        stwcx. r4,0,r3
-        bne-   $-12
-       mr     r3,r4
-       blr
-
-       .align 2
-       .globl _q_atomic_set_int
-        .section __TEXT,__text,regular,pure_instructions
-       .align 2
-_q_atomic_set_int:
-       lwarx  r5,0,r3
-        stwcx. r4,0,r3
-        bne-   $-8
-       mr     r3,r5
-       blr
-
-       .align 2
-       .globl _q_atomic_set_ptr
-        .section __TEXT,__text,regular,pure_instructions
-       .align 2
-_q_atomic_set_ptr:
-       lwarx  r5,0,r3
-        stwcx. r4,0,r3
-        bne-   $-8
-       mr     r3,r5
-       blr
-
-.globl q_atomic_test_and_set_int.eh
-       q_atomic_test_and_set_int.eh = 0
-.globl q_atomic_test_and_set_ptr.eh
-       q_atomic_test_and_set_ptr.eh = 0
-.globl q_atomic_increment.eh
-       q_atomic_increment.eh = 0
-.globl q_atomic_decrement.eh
-       q_atomic_decrement.eh = 0
-.globl q_atomic_set_int.eh
-       q_atomic_set_int.eh = 0
-.globl q_atomic_set_ptr.eh
-       q_atomic_set_ptr.eh = 0
-.data
-.constructor
-.data
-.destructor
-.align 1
diff --git a/src/corelib/arch/qatomic_macosx.h b/src/corelib/arch/qatomic_macosx.h
deleted file mode 100644 (file)
index a839aed..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).
-** All rights reserved.
-** Contact: http://www.qt-project.org/
-**
-** This file is part of the QtCore module of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:LGPL$
-** GNU Lesser General Public License Usage
-** This file may be used under the terms of the GNU Lesser General Public
-** License version 2.1 as published by the Free Software Foundation and
-** appearing in the file LICENSE.LGPL included in the packaging of this
-** file. Please review the following information to ensure the GNU Lesser
-** General Public License version 2.1 requirements will be met:
-** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License version 3.0 as published by the Free Software Foundation
-** and appearing in the file LICENSE.GPL included in the packaging of this
-** file. Please review the following information to ensure the GNU General
-** Public License version 3.0 requirements will be met:
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** Other Usage
-** Alternatively, this file may be used in accordance with the terms and
-** conditions contained in a signed written agreement between you and Nokia.
-**
-**
-**
-**
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-#ifndef QATOMIC_MACOSX_H
-#define QATOMIC_MACOSX_H
-
-QT_BEGIN_HEADER
-
-#if defined(__x86_64__)
-#  include <QtCore/qatomic_x86_64.h>
-#elif defined(__i386__)
-#  include <QtCore/qatomic_i386.h>
-#else // !__x86_64 && !__i386__
-#  include <QtCore/qatomic_powerpc.h>
-#endif // !__x86_64__ && !__i386__
-
-QT_END_HEADER
-
-#endif // QATOMIC_MACOSX_H