From 3bd29d1f0af0c26189de7208582a23bfb9582e3c Mon Sep 17 00:00:00 2001 From: "Bradley T. Hughes" Date: Wed, 15 Feb 2012 13:49:55 +0100 Subject: [PATCH] Clean up default arch setting on Mac OS X MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Remove config.tests/mac/defaultarch.test, but do the same type of default arch detection, only using the qmake binary instead of compiling an empty file. Qt 5 will only support 10.6 and up, which means we only support i386 and x86_64 now. Change-Id: I24949ac803b965c523b1ee45cf769e266dcde134 Reviewed-by: Morten Johan Sørvig --- config.tests/mac/defaultarch.test | 33 -------------------------- configure | 39 +++++++++++++++++++------------ 2 files changed, 24 insertions(+), 48 deletions(-) delete mode 100755 config.tests/mac/defaultarch.test diff --git a/config.tests/mac/defaultarch.test b/config.tests/mac/defaultarch.test deleted file mode 100755 index 80f244a8bb2..00000000000 --- a/config.tests/mac/defaultarch.test +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/sh - -COMPILER=$1 -VERBOSE=$2 -WORKDIR=$3 -QT_MAC_DEFAULT_ARCH= - -touch defaultarch.c - -# compile something and run 'file' on it. -if "$COMPILER" -c defaultarch.c 2>/dev/null 1>&2; then - FIlE_OUTPUT=`file defaultarch.o` - [ "$VERBOSE" = "yes" ] && echo "'file' reports compiler ($COMPILER) default architechture as: $FIlE_OUTPUT" - -fi -rm -f defaultarch.c defaultarch.o - -# detect our known archs. -if echo "$FIlE_OUTPUT" | grep '\' > /dev/null 2>&1; then - QT_MAC_DEFAULT_ARCH=x86 # configure knows it as "x86" not "i386" -fi -if echo "$FIlE_OUTPUT" | grep '\' > /dev/null 2>&1; then - QT_MAC_DEFAULT_ARCH=x86_64 -fi -if echo "$FIlE_OUTPUT" | grep '\' > /dev/null 2>&1; then - QT_MAC_DEFAULT_ARCH=ppc -fi -if echo "$FIlE_OUTPUT" | grep '\' > /dev/null 2>&1; then - QT_MAC_DEFAULT_ARCH=ppc64 -fi - -[ "$VERBOSE" = "yes" ] && echo "setting QT_MAC_DEFAULT_ARCH to \"$QT_MAC_DEFAULT_ARCH\"" -export QT_MAC_DEFAULT_ARCH diff --git a/configure b/configure index 7e6aa9ef99e..1215f2f3e72 100755 --- a/configure +++ b/configure @@ -6315,11 +6315,30 @@ if [ "$CFG_MAC_DWARF2" = "yes" ]; then QT_CONFIG="$QT_CONFIG dwarf2" fi -# Set the default arch if there are no "-arch" arguments on the configure line -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." +# Set the default Mac OS X arch if there are no "-arch" arguments on the configure line +if [ "$BUILD_ON_MAC" = "yes" ]; then + DEFAULT_ARCH="$CFG_MAC_ARCHS" + if [ -z "$DEFAULT_ARCH" ]; then + case `file "${outpath}/bin/qmake"` in + *i?86) + DEFAULT_ARCH=x86 + ;; + *x86_64) + DEFAULT_ARCH=x86_64 + ;; + *ppc|*ppc64|*) + # unsupported/unknown + ;; + esac + fi + if [ -n "$DEFAULT_ARCH" ]; then + [ "$OPT_VERBOSE" = "yes" ] && echo "Setting default Mac OS X architechture to $DEFAULT_ARCH." + QT_CONFIG="$QT_CONFIG $DEFAULT_ARCH" + QMAKE_CONFIG="$QMAKE_CONFIG $DEFAULT_ARCH" + # Make the application arch follow the Qt arch for single arch builds. + # (for multiple-arch builds, set CONFIG manually in the application .pro file) + [ `echo "$DEFAULT_ARCH" | wc -w` -eq 1 ] && QTCONFIG_CONFIG="$QTCONFIG_CONFIG $DEFAULT_ARCH" + fi fi # ### Vestige @@ -6463,7 +6482,6 @@ 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" -[ "$PLATFORM_MAC" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG $CFG_MAC_ARCHS" if [ "$CFG_CLOCK_GETTIME" = "yes" ]; then QT_CONFIG="$QT_CONFIG clock-gettime" fi @@ -7279,19 +7297,10 @@ else QT_CONFIG="$QT_CONFIG qt_framework" QTCONFIG_CONFIG="$QTCONFIG_CONFIG qt_framework" fi -if [ "$BUILD_ON_MAC" = "yes" ]; then - QT_CONFIG="$QT_CONFIG $CFG_MAC_ARCHS" -fi if [ "$CFG_DEV" = "yes" ]; then QT_CONFIG="$QT_CONFIG private_tests" fi -# Make the application arch follow the Qt arch for single arch builds. -# (for multiple-arch builds, set CONFIG manually in the application .pro file) -if [ `echo "$CFG_MAC_ARCHS" | wc -w` -eq 1 ]; then - QTCONFIG_CONFIG="$QTCONFIG_CONFIG $CFG_MAC_ARCHS" -fi - cat >>"$QTCONFIG.tmp" <