diff options
Diffstat (limited to 'mkspecs/macx-ios-clang')
-rw-r--r-- | mkspecs/macx-ios-clang/features/default_post.prf | 10 | ||||
-rw-r--r-- | mkspecs/macx-ios-clang/features/default_pre.prf | 8 | ||||
-rw-r--r-- | mkspecs/macx-ios-clang/features/qt_config.prf | 2 | ||||
-rw-r--r-- | mkspecs/macx-ios-clang/features/resolve_config.prf | 39 | ||||
-rw-r--r-- | mkspecs/macx-ios-clang/features/sdk.prf | 33 | ||||
-rwxr-xr-x | mkspecs/macx-ios-clang/ios_destinations.sh | 34 | ||||
-rw-r--r-- | mkspecs/macx-ios-clang/qplatformdefs.h | 34 |
7 files changed, 87 insertions, 73 deletions
diff --git a/mkspecs/macx-ios-clang/features/default_post.prf b/mkspecs/macx-ios-clang/features/default_post.prf index 93e9e10ec3..ec2e2d509c 100644 --- a/mkspecs/macx-ios-clang/features/default_post.prf +++ b/mkspecs/macx-ios-clang/features/default_post.prf @@ -48,12 +48,12 @@ macx-xcode { } macx-xcode { - arch_iphoneos.name = "ARCHS[sdk=iphoneos*]" - arch_iphoneos.value = $$QMAKE_IOS_DEVICE_ARCHS - arch_iphonesimulator.name = "ARCHS[sdk=iphonesimulator*]" - arch_iphonesimulator.value = $$QMAKE_IOS_SIMULATOR_ARCHS + arch_device.name = "ARCHS[sdk=$${device.sdk}*]" + arch_device.value = $$QMAKE_IOS_DEVICE_ARCHS + arch_simulator.name = "ARCHS[sdk=$${simulator.sdk}*]" + arch_simulator.value = $$QMAKE_IOS_SIMULATOR_ARCHS - QMAKE_MAC_XCODE_SETTINGS += arch_iphoneos arch_iphonesimulator + QMAKE_MAC_XCODE_SETTINGS += arch_device arch_simulator QMAKE_XCODE_ARCHS = $$QMAKE_IOS_DEVICE_ARCHS $$QMAKE_IOS_SIMULATOR_ARCHS only_active_arch.name = ONLY_ACTIVE_ARCH diff --git a/mkspecs/macx-ios-clang/features/default_pre.prf b/mkspecs/macx-ios-clang/features/default_pre.prf index b5c41cf43e..977ac9acb2 100644 --- a/mkspecs/macx-ios-clang/features/default_pre.prf +++ b/mkspecs/macx-ios-clang/features/default_pre.prf @@ -2,15 +2,15 @@ load(default_pre) # In case Qt was built for a specific SDK -!contains(QT_CONFIG, simulator_and_device):contains(QMAKE_MAC_SDK, ^iphonesimulator.*): \ - CONFIG += iphonesimulator +!contains(QT_CONFIG, simulator_and_device):contains(QMAKE_MAC_SDK, ^$${simulator.sdk}.*): \ + CONFIG += simulator $${simulator.sdk} # Check for supported Xcode versions lessThan(QMAKE_XCODE_VERSION, "4.3"): \ error("This mkspec requires Xcode 4.3 or later") -build_pass:iphonesimulator { - # For a iphonesimulator_and_iphoneos build all the config tests +build_pass:simulator { + # For a simulator_and_device build all the config tests # are based on the iPhoneOS ARM SDK, but we know that the simulator # is i386 and that we support SSE/SSE2. QT_ARCH = i386 diff --git a/mkspecs/macx-ios-clang/features/qt_config.prf b/mkspecs/macx-ios-clang/features/qt_config.prf index d1a1a36933..d746cba9d9 100644 --- a/mkspecs/macx-ios-clang/features/qt_config.prf +++ b/mkspecs/macx-ios-clang/features/qt_config.prf @@ -5,7 +5,7 @@ isEmpty(QT_ARCH) { # means we fail to pass -arch to the compiler, resulting in broke tests. # As the Xcode toolchain doesn't seem to have a way to auto-detect the # arch based on the SDK, we have to hard-code the arch for configure. - contains(QMAKE_MAC_SDK, iphoneos.*): \ + contains(QMAKE_MAC_SDK, $${device.sdk}.*): \ QT_ARCH = arm else: \ # Simulator QT_ARCH = i386 diff --git a/mkspecs/macx-ios-clang/features/resolve_config.prf b/mkspecs/macx-ios-clang/features/resolve_config.prf index 904296aea6..22d962af38 100644 --- a/mkspecs/macx-ios-clang/features/resolve_config.prf +++ b/mkspecs/macx-ios-clang/features/resolve_config.prf @@ -3,42 +3,45 @@ xcodebuild { # Xcode project files always support both Debug and Release configurations # and iOS device and simulator targets, so we make sure the wrapper-makefile # also does. - CONFIG += debug_and_release iphonesimulator_and_iphoneos + CONFIG += debug_and_release simulator_and_device } load(resolve_config) -CONFIG(iphonesimulator, iphonesimulator|iphoneos): \ - CONFIG -= iphoneos +# Legacy exclusive build configurations for backwards compatibility +CONFIG($${device.CONFIG}, $${device.CONFIG}|$${simulator.CONFIG}): \ + CONFIG += device +else: CONFIG($${simulator.CONFIG}, $${device.CONFIG}|$${simulator.CONFIG}): \ + CONFIG += simulator + +CONFIG(simulator, simulator|device): \ + CONFIG -= device $${device.CONFIG} else: \ - CONFIG -= iphonesimulator + CONFIG -= simulator $${simulator.CONFIG} macx-xcode { # There is no way to genereate Xcode projects that are limited to either - # simulator or device builds, so iphonesimulator_and_iphoneos is always + # simulator or device builds, so simulator_and_device is always # effectivly active, even if the user disabled it explicitly. # The Xcode generator doesn't support multiple BUILDS though (exclusive # builds), so we have to manually set up the simulator suffix. - library_suffix_iphonesimulator.name = "$${QMAKE_XCODE_LIBRARY_SUFFIX_SETTING}[sdk=iphonesimulator*]" - library_suffix_iphonesimulator.value = "_iphonesimulator$($${QMAKE_XCODE_LIBRARY_SUFFIX_SETTING})" - QMAKE_MAC_XCODE_SETTINGS += library_suffix_iphonesimulator + library_suffix_simulator.name = "$${QMAKE_XCODE_LIBRARY_SUFFIX_SETTING}[sdk=$${simulator.sdk}*]" + library_suffix_simulator.value = "_$${simulator.sdk}$($${QMAKE_XCODE_LIBRARY_SUFFIX_SETTING})" + QMAKE_MAC_XCODE_SETTINGS += library_suffix_simulator CONFIG *= xcode_dynamic_library_suffix } else { - iphonesimulator.name = Simulator - iphoneos.name = Device - # Switch the order to make sure that the first Makefile target is the right one - !contains(QT_CONFIG, simulator_and_device):contains(QMAKE_MAC_SDK, ^iphonesimulator.*): \ - addExclusiveBuildsProper(iphonesimulator_and_iphoneos, iphonesimulator iphoneos) + !contains(QT_CONFIG, simulator_and_device):contains(QMAKE_MAC_SDK, ^$${simulator.sdk}.*): \ + addExclusiveBuildsProper(simulator_and_device, simulator device) else: \ - addExclusiveBuildsProper(iphonesimulator_and_iphoneos, iphoneos iphonesimulator) + addExclusiveBuildsProper(simulator_and_device, device simulator) } equals(TEMPLATE, subdirs) { # Prevent recursion into host_builds for(subdir, SUBDIRS) { contains($${subdir}.CONFIG, host_build) { - $${subdir}.CONFIG += no_iphoneos_target no_iphonesimulator_target + $${subdir}.CONFIG += no_$${simulator.target}_target no_$${device.target}_target # Other targets which we do want to recurse into may depend on this target, # for example corelib depends on moc, rcc, bootstrap, etc, and other libs @@ -61,9 +64,9 @@ equals(TEMPLATE, subdirs) { target ~= s,[^a-zA-Z0-9_],-, - $${target}-iphonesimulator.depends = $$target - $${target}-iphoneos.depends = $$target - QMAKE_EXTRA_TARGETS += $${target}-iphonesimulator $${target}-iphoneos + $${target}-$${simulator.target}.depends = $$target + $${target}-$${device.target}.depends = $$target + QMAKE_EXTRA_TARGETS += $${target}-$${simulator.target} $${target}-$${device.target} } } } diff --git a/mkspecs/macx-ios-clang/features/sdk.prf b/mkspecs/macx-ios-clang/features/sdk.prf index 37181ed299..f091723774 100644 --- a/mkspecs/macx-ios-clang/features/sdk.prf +++ b/mkspecs/macx-ios-clang/features/sdk.prf @@ -1,30 +1,29 @@ + # In case the user sets the SDK manually -contains(QMAKE_MAC_SDK, ^iphonesimulator.*) { +contains(QMAKE_MAC_SDK, ^$${simulator.sdk}.*) { contains(QT_CONFIG, simulator_and_device): \ - error("iOS simulator is handled automatically for iphonesimulator_and_iphoneos") + error("iOS simulator is handled automatically for simulator_and_device") - CONFIG += iphonesimulator + CONFIG += simulator $${simulator.sdk} } -build_pass:iphonesimulator: \ - QMAKE_MAC_SDK ~= s,^iphoneos,iphonesimulator, +build_pass:simulator: \ + QMAKE_MAC_SDK ~= s,^$${device.sdk},$${simulator.sdk}, load(sdk) macx-xcode { - sdk_path_iphoneos.name = "QMAKE_MAC_SDK_PATH[sdk=iphoneos*]" - sdk_path_iphoneos.value = $$QMAKE_MAC_SDK_PATH - QMAKE_MAC_SDK_PATH ~= s,iPhoneOS,iPhoneSimulator, - sdk_path_iphonesimulator.name = "QMAKE_MAC_SDK_PATH[sdk=iphonesimulator*]" - sdk_path_iphonesimulator.value = $$QMAKE_MAC_SDK_PATH - QMAKE_MAC_XCODE_SETTINGS += sdk_path_iphoneos sdk_path_iphonesimulator + sdk_path_device.name = "QMAKE_MAC_SDK_PATH[sdk=$${device.sdk}*]" + sdk_path_device.value = $$xcodeSDKInfo(Path, $${device.sdk}) + sdk_path_simulator.name = "QMAKE_MAC_SDK_PATH[sdk=$${simulator.sdk}*]" + sdk_path_simulator.value = $$xcodeSDKInfo(Path, $${simulator.sdk}) + QMAKE_MAC_XCODE_SETTINGS += sdk_path_device sdk_path_simulator QMAKE_MAC_SDK_PATH = "$(QMAKE_MAC_SDK_PATH)" - sdk_platform_path_iphoneos.name = "QMAKE_MAC_SDK_PLATFORM_PATH[sdk=iphoneos*]" - sdk_platform_path_iphoneos.value = $$QMAKE_MAC_SDK_PLATFORM_PATH - QMAKE_MAC_SDK_PLATFORM_PATH ~= s,iPhoneOS,iPhoneSimulator, - sdk_platform_path_iphonesimulator.name = "QMAKE_MAC_SDK_PLATFORM_PATH[sdk=iphonesimulator*]" - sdk_platform_path_iphonesimulator.value = $$QMAKE_MAC_SDK_PLATFORM_PATH - QMAKE_MAC_XCODE_SETTINGS += sdk_platform_path_iphoneos sdk_platform_path_iphonesimulator + sdk_platform_path_device.name = "QMAKE_MAC_SDK_PLATFORM_PATH[sdk=$${device.sdk}*]" + sdk_platform_path_device.value = $$xcodeSDKInfo(PlatformPath, $${device.sdk}) + sdk_platform_path_simulator.name = "QMAKE_MAC_SDK_PLATFORM_PATH[sdk=$${simulator.sdk}*]" + sdk_platform_path_simulator.value = $$xcodeSDKInfo(PlatformPath, $${simulator.sdk}) + QMAKE_MAC_XCODE_SETTINGS += sdk_platform_path_device sdk_platform_path_simulator QMAKE_MAC_SDK_PLATFORM_PATH = "$(QMAKE_MAC_SDK_PLATFORM_PATH)" } diff --git a/mkspecs/macx-ios-clang/ios_destinations.sh b/mkspecs/macx-ios-clang/ios_destinations.sh index b85f59ca30..d80a5cecf4 100755 --- a/mkspecs/macx-ios-clang/ios_destinations.sh +++ b/mkspecs/macx-ios-clang/ios_destinations.sh @@ -2,32 +2,38 @@ ############################################################################# ## -## Copyright (C) 2015 The Qt Company Ltd. -## Contact: http://www.qt.io/licensing/ +## Copyright (C) 2016 The Qt Company Ltd. +## Contact: https://www.qt.io/licensing/ ## ## This file is the build configuration utility of the Qt Toolkit. ## -## $QT_BEGIN_LICENSE:LGPL21$ +## $QT_BEGIN_LICENSE:LGPL$ ## Commercial License Usage ## Licensees holding valid commercial Qt licenses may use this file in ## accordance with the commercial license agreement provided with the ## Software or, alternatively, in accordance with the terms contained in ## a written agreement between you and The Qt Company. For licensing terms -## and conditions see http://www.qt.io/terms-conditions. For further -## information use the contact form at http://www.qt.io/contact-us. +## and conditions see https://www.qt.io/terms-conditions. For further +## information use the contact form at https://www.qt.io/contact-us. ## ## GNU Lesser General Public License Usage ## Alternatively, this file may be used under the terms of the GNU Lesser -## General Public License version 2.1 or version 3 as published by the Free -## Software Foundation and appearing in the file LICENSE.LGPLv21 and -## LICENSE.LGPLv3 included in the packaging of this file. Please review the -## following information to ensure the GNU Lesser General Public License -## requirements will be met: https://www.gnu.org/licenses/lgpl.html and -## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## General Public License version 3 as published by the Free Software +## Foundation and appearing in the file LICENSE.LGPL3 included in the +## packaging of this file. Please review the following information to +## ensure the GNU Lesser General Public License version 3 requirements +## will be met: https://www.gnu.org/licenses/lgpl-3.0.html. ## -## As a special exception, The Qt Company gives you certain additional -## rights. These rights are described in The Qt Company 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 2.0 or (at your option) the GNU General +## Public license version 3 or any later version approved by the KDE Free +## Qt Foundation. The licenses are as published by the Free Software +## Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +## included in the packaging of this file. Please review the following +## information to ensure the GNU General Public License requirements will +## be met: https://www.gnu.org/licenses/gpl-2.0.html and +## https://www.gnu.org/licenses/gpl-3.0.html. ## ## $QT_END_LICENSE$ ## diff --git a/mkspecs/macx-ios-clang/qplatformdefs.h b/mkspecs/macx-ios-clang/qplatformdefs.h index 68020de6d5..4b085095a8 100644 --- a/mkspecs/macx-ios-clang/qplatformdefs.h +++ b/mkspecs/macx-ios-clang/qplatformdefs.h @@ -1,31 +1,37 @@ /**************************************************************************** ** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ ** ** This file is part of the qmake spec of the Qt Toolkit. ** -** $QT_BEGIN_LICENSE:LGPL21$ +** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and The Qt Company. For licensing terms -** and conditions see http://www.qt.io/terms-conditions. For further -** information use the contact form at http://www.qt.io/contact-us. +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 2.1 or version 3 as published by the Free -** Software Foundation and appearing in the file LICENSE.LGPLv21 and -** LICENSE.LGPLv3 included in the packaging of this file. Please review the -** following information to ensure the GNU Lesser General Public License -** requirements will be met: https://www.gnu.org/licenses/lgpl.html and -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. ** -** As a special exception, The Qt Company gives you certain additional -** rights. These rights are described in The Qt Company 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 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. ** ** $QT_END_LICENSE$ ** |