From 68e5fd9ebc8a3f510e3144e981a0cb358945fb9c Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Wed, 25 Jan 2012 16:12:53 +0100 Subject: [PATCH] Remove the 'macosx' arch MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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 Reviewed-by: Oswald Buddenhagen --- configure | 32 ++--- src/corelib/arch/arch.pri | 3 +- src/corelib/arch/macosx/arch.pri | 6 - src/corelib/arch/macosx/qatomic32_ppc.s | 169 ------------------------ src/corelib/arch/qatomic_macosx.h | 57 -------- 5 files changed, 11 insertions(+), 256 deletions(-) delete mode 100644 src/corelib/arch/macosx/arch.pri delete mode 100644 src/corelib/arch/macosx/qatomic32_ppc.s delete mode 100644 src/corelib/arch/qatomic_macosx.h diff --git a/configure b/configure index bb997b1504..fe07f8cc70 100755 --- 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 diff --git a/src/corelib/arch/arch.pri b/src/corelib/arch/arch.pri index 2921f8edc5..e8699a27c6 100644 --- a/src/corelib/arch/arch.pri +++ b/src/corelib/arch/arch.pri @@ -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 index a2b1bf759a..0000000000 --- a/src/corelib/arch/macosx/arch.pri +++ /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 index 72b02280dd..0000000000 --- a/src/corelib/arch/macosx/qatomic32_ppc.s +++ /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 index a839aed4bf..0000000000 --- a/src/corelib/arch/qatomic_macosx.h +++ /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 -#elif defined(__i386__) -# include -#else // !__x86_64 && !__i386__ -# include -#endif // !__x86_64__ && !__i386__ - -QT_END_HEADER - -#endif // QATOMIC_MACOSX_H