From 35d0e9b66f1c961ec82d1e4ff975d45a2dd2af4b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tor=20Arne=20Vestb=C3=B8?= Date: Thu, 11 Apr 2013 14:40:58 +0200 Subject: iOS: Don't mangle QT_ARCH when being more specific about what arch to build MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit On iOS the compiler expects archs like armv6, armv7, armv7s when passed the -arch flag, or when the ARCHS Xcode variable is set. Instead of mangling QT_ARCH, which is used other places and assumed to match the values provided by the arch.test, we use our own variable. Change-Id: I05e10be8d69dd4d7cbcef04640fef99f1efb253d Reviewed-by: Morten Johan Sørvig --- mkspecs/features/ios/default_post.prf | 33 ++++++++++++++++++--------------- 1 file changed, 18 insertions(+), 15 deletions(-) (limited to 'mkspecs') diff --git a/mkspecs/features/ios/default_post.prf b/mkspecs/features/ios/default_post.prf index 06e06e34cb..e55228ed4a 100644 --- a/mkspecs/features/ios/default_post.prf +++ b/mkspecs/features/ios/default_post.prf @@ -46,24 +46,27 @@ isEmpty(QT_ARCH) { # but we fail to pick up the architecture since we're not passing -arch # yet. Xcode does not seem to have a way to run the shared toolchain # in a way that will automatically do this (for example xcrun -sdk). - contains(QMAKE_MAC_SDK, iphoneos.*): QT_ARCH = armv7 + contains(QMAKE_MAC_SDK, iphoneos.*): QT_ARCH = arm else: QT_ARCH = i386 # Simulator -} else { - # Fix up the QT_ARCH to be more specific - equals(QT_ARCH, arm) { - # Samsung S5PC100, Apple A4, A5, A5X - QT_ARCH = armv7 - - # FIXME: How do we support armv7s when Qt can't do universal builds? - } } -!equals(MAKEFILE_GENERATOR, XCODE) { - arch_flag = -arch $$QT_ARCH - QMAKE_CFLAGS += $$arch_flag - QMAKE_CXXFLAGS += $$arch_flag - QMAKE_OBJECTIVE_CFLAGS += $$arch_flag - QMAKE_LFLAGS += $$arch_flag +# Be more specific about which architecture we're targeting +equals(QT_ARCH, arm): \ + actual_archs = armv7 +else: \ + actual_archs = $$QT_ARCH + +equals(MAKEFILE_GENERATOR, XCODE) { + QMAKE_XCODE_ARCHS = $$actual_archs +} else { + for(arch, actual_archs): \ + arch_flags += -arch $$arch + + QMAKE_CFLAGS += $$arch_flags + QMAKE_CXXFLAGS += $$arch_flags + QMAKE_OBJECTIVE_CFLAGS += $$arch_flags + QMAKE_LFLAGS += $$arch_flags } +unset(actual_archs) load(default_post) -- cgit v1.2.3