diff options
Diffstat (limited to 'mkspecs/macx-ios-clang/features')
-rw-r--r-- | mkspecs/macx-ios-clang/features/default_post.prf | 97 | ||||
-rw-r--r-- | mkspecs/macx-ios-clang/features/default_pre.prf | 21 | ||||
-rw-r--r-- | mkspecs/macx-ios-clang/features/exclusive_builds_post.prf | 8 | ||||
-rw-r--r-- | mkspecs/macx-ios-clang/features/qt.prf | 31 | ||||
-rw-r--r-- | mkspecs/macx-ios-clang/features/qt_config.prf | 16 | ||||
-rw-r--r-- | mkspecs/macx-ios-clang/features/qt_parts.prf | 5 | ||||
-rw-r--r-- | mkspecs/macx-ios-clang/features/resolve_config.prf | 68 | ||||
-rw-r--r-- | mkspecs/macx-ios-clang/features/sdk.prf | 32 | ||||
-rw-r--r-- | mkspecs/macx-ios-clang/features/testcase.prf | 12 | ||||
-rw-r--r-- | mkspecs/macx-ios-clang/features/testcase_targets.prf | 3 | ||||
-rw-r--r-- | mkspecs/macx-ios-clang/features/xcodebuild.prf | 49 |
11 files changed, 0 insertions, 342 deletions
diff --git a/mkspecs/macx-ios-clang/features/default_post.prf b/mkspecs/macx-ios-clang/features/default_post.prf deleted file mode 100644 index e5c78a0ea4..0000000000 --- a/mkspecs/macx-ios-clang/features/default_post.prf +++ /dev/null @@ -1,97 +0,0 @@ - -equals(TEMPLATE, app):contains(CONFIG, qt) { - # If the application uses Qt, it needs to be an application bundle - # to be able to deploy and run on iOS. The only exception to this - # is if you're working with a jailbroken device and can run the - # resulting binary from the console/over SSH, but that's not a - # use-case we care about, so no need to complicate the logic. - CONFIG *= app_bundle - - # For Qt applications we want Xcode project files as the generated output, - # but since qmake doesn't handle the transition between makefiles and Xcode - # project files (which happens when using subdirs), we can't just override - # MAKEFILE_GENERATOR. Instead, we generate the Xcode project by spawning a - # child qmake process with -spec macx-xcode and let the top level qmake - # process generate a wrapper makefile that forwards everything to xcodebuild. - equals(MAKEFILE_GENERATOR, UNIX): \ - CONFIG = xcodebuild $$CONFIG -} - -load(default_post) - -macx-xcode { - ios_device_family.name = TARGETED_DEVICE_FAMILY - ios_device_family.value = $$QMAKE_IOS_TARGETED_DEVICE_FAMILY - QMAKE_MAC_XCODE_SETTINGS += ios_device_family - - # If QMAKE_BUNDLE_DATA contains an asset catalog that includes an - # AppIcon.appiconset, we configure Xcode to use it for app icons. - for(bundle_data, QMAKE_BUNDLE_DATA) { - for(bundle_file, $${bundle_data}.files) { - !contains(bundle_file, .*\.xcassets$): next() - !exists($$absolute_path($$bundle_file/AppIcon.appiconset, $$_PRO_FILE_PWD_)): next() - - asset_catalog_appicon.name = "ASSETCATALOG_COMPILER_APPICON_NAME" - asset_catalog_appicon.value = "AppIcon" - QMAKE_MAC_XCODE_SETTINGS += asset_catalog_appicon - break() - } - !isEmpty(asset_catalog_appicon.name): break() - } - - # Set up default 4-inch iPhone/iPod launch image so that our apps - # support the full screen resolution of those devices. - qmake_launch_image = Default-568h@2x.png - qmake_copy_image.input = $$QMAKESPEC/$$qmake_launch_image - qmake_copy_image.output = $$OUT_PWD/$${TARGET}.xcodeproj/$$qmake_launch_image - qmake_copy_image.CONFIG = verbatim - QMAKE_SUBSTITUTES += qmake_copy_image - qmake_launch_images.files = $$qmake_copy_image.output - QMAKE_BUNDLE_DATA += qmake_launch_images - - lessThan(QMAKE_XCODE_VERSION, "6.0") { - warning("You need to update Xcode to version 6 or newer to fully support iPhone6/6+") - } else { - # Set up default LaunchScreen to support iPhone6/6+ - qmake_launch_screen = LaunchScreen.xib - qmake_copy_launch_screen.input = $$QMAKESPEC/$$qmake_launch_screen - qmake_copy_launch_screen.output = $$OUT_PWD/$${TARGET}.xcodeproj/$$qmake_launch_screen - QMAKE_SUBSTITUTES += qmake_copy_launch_screen - qmake_launch_screens.files = $$qmake_copy_launch_screen.output - QMAKE_BUNDLE_DATA += qmake_launch_screens - } -} - -macx-xcode { - 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_device arch_simulator - QMAKE_XCODE_ARCHS = $$QMAKE_IOS_DEVICE_ARCHS $$QMAKE_IOS_SIMULATOR_ARCHS - - only_active_arch.name = ONLY_ACTIVE_ARCH - only_active_arch.value = YES - only_active_arch.build = debug - QMAKE_MAC_XCODE_SETTINGS += only_active_arch -} else { - # Be more specific about which architecture we're targeting - contains(QT_ARCH, arm.*): \ - VALID_ARCHS = $$QMAKE_IOS_DEVICE_ARCHS - else: \ - VALID_ARCHS = $$QMAKE_IOS_SIMULATOR_ARCHS - - single_arch: VALID_ARCHS = $$first(VALID_ARCHS) - - ACTIVE_ARCHS = $(filter $(EXPORT_VALID_ARCHS), $(ARCHS)) - ARCH_ARGS = $(foreach arch, $(if $(EXPORT_ACTIVE_ARCHS), $(EXPORT_ACTIVE_ARCHS), $(EXPORT_VALID_ARCHS)), -arch $(arch)) - - QMAKE_EXTRA_VARIABLES += VALID_ARCHS ACTIVE_ARCHS ARCH_ARGS - - arch_flags = $(EXPORT_ARCH_ARGS) - - QMAKE_CFLAGS += $$arch_flags - QMAKE_CXXFLAGS += $$arch_flags - QMAKE_LFLAGS += $$arch_flags -} diff --git a/mkspecs/macx-ios-clang/features/default_pre.prf b/mkspecs/macx-ios-clang/features/default_pre.prf deleted file mode 100644 index 977ac9acb2..0000000000 --- a/mkspecs/macx-ios-clang/features/default_pre.prf +++ /dev/null @@ -1,21 +0,0 @@ - -load(default_pre) - -# In case Qt was built for a specific SDK -!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: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 - QT_CPU_FEATURES.i386 = sse sse2 - DEFINES += QT_COMPILER_SUPPORTS_SSE2 - CONFIG -= neon - CONFIG += sse sse2 -} diff --git a/mkspecs/macx-ios-clang/features/exclusive_builds_post.prf b/mkspecs/macx-ios-clang/features/exclusive_builds_post.prf deleted file mode 100644 index 1fb0a55846..0000000000 --- a/mkspecs/macx-ios-clang/features/exclusive_builds_post.prf +++ /dev/null @@ -1,8 +0,0 @@ - -xcodebuild { - # Prevent qmake from generating empty output dirs for each exclusive build, - # as Xcode will do this by itself, and with a different name. - QMAKE_DIR_REPLACE = -} - -load(exclusive_builds_post) diff --git a/mkspecs/macx-ios-clang/features/qt.prf b/mkspecs/macx-ios-clang/features/qt.prf deleted file mode 100644 index 474a195e4b..0000000000 --- a/mkspecs/macx-ios-clang/features/qt.prf +++ /dev/null @@ -1,31 +0,0 @@ - -qt_depends = $$resolve_depends(QT, "QT.") -equals(TEMPLATE, app):contains(qt_depends, gui(-private)?) { - LIBS *= -L$$[QT_INSTALL_PLUGINS/get]/platforms - - lib_name = qios - lib_path_and_base = $$[QT_INSTALL_PLUGINS/get]/platforms/lib$${lib_name}$$qtPlatformTargetSuffix() - LIBS += -l$${lib_name}$$qtPlatformTargetSuffix() $$fromfile($${lib_path_and_base}.prl, QMAKE_PRL_LIBS) - - # By marking qt_registerPlatformPlugin as undefined, we ensure that - # the plugin.o translation unit is considered for inclusion in - # the final binary, which in turn ensures that the plugin's - # static initializer is included and run. - QMAKE_LFLAGS += -u _qt_registerPlatformPlugin - - # We do link and dependency resolution for the platform plugin - # manually, since we know we always need the plugin, so we don't - # need to generate an import for it. - QTPLUGIN.platforms = - - - !no_main_wrapper { - # The LC_MAIN load command available in iOS 6.0 and above allows dyld to - # directly call the entrypoint instead of going through _start in crt.o. - # Passing -e to the linker changes the entrypoint from _main to our custom - # wrapper that calls UIApplicationMain and dispatches back to main() once - # the application has started up and is ready to initialize QApplication. - QMAKE_LFLAGS += -Wl,-e,_qt_main_wrapper - } -} - -load(qt) diff --git a/mkspecs/macx-ios-clang/features/qt_config.prf b/mkspecs/macx-ios-clang/features/qt_config.prf deleted file mode 100644 index d746cba9d9..0000000000 --- a/mkspecs/macx-ios-clang/features/qt_config.prf +++ /dev/null @@ -1,16 +0,0 @@ -load(qt_config) - -isEmpty(QT_ARCH) { - # The configure tests are run without QT_ARCH being resolved yet, which - # 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, $${device.sdk}.*): \ - QT_ARCH = arm - else: \ # Simulator - QT_ARCH = i386 - - # Prevent the arch/config tests from building as multi-arch binaries, - # as we only want the lowest common denominator features. - CONFIG += single_arch -} diff --git a/mkspecs/macx-ios-clang/features/qt_parts.prf b/mkspecs/macx-ios-clang/features/qt_parts.prf deleted file mode 100644 index 81814a62b0..0000000000 --- a/mkspecs/macx-ios-clang/features/qt_parts.prf +++ /dev/null @@ -1,5 +0,0 @@ - -# Disable tests for anything but qtbase for now -!equals(TARGET, qtbase): QT_BUILD_PARTS -= tests - -load(qt_parts) diff --git a/mkspecs/macx-ios-clang/features/resolve_config.prf b/mkspecs/macx-ios-clang/features/resolve_config.prf deleted file mode 100644 index c3ab90f45e..0000000000 --- a/mkspecs/macx-ios-clang/features/resolve_config.prf +++ /dev/null @@ -1,68 +0,0 @@ - -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 simulator_and_device -} - -load(resolve_config) - -# 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 -= simulator $${simulator.CONFIG} - -macx-xcode { - # There is no way to genereate Xcode projects that are limited to either - # 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_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 { - addExclusiveBuilds(simulator, device) -} - -equals(TEMPLATE, subdirs) { - # Prevent recursion into host_builds - for(subdir, SUBDIRS) { - contains($${subdir}.CONFIG, host_build) { - $${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 - # may depend on host-tools that are needed to build the lib, so we resolve - # the final target name and redirect it to the base target, so that the - # dependency chain is not broken for the other targets. - - !isEmpty($${subdir}.target) { - target = $$eval($${subdir}.target) - } else { - !isEmpty($${subdir}.file): \ - file = $$eval($${subdir}.file) - else: !isEmpty($${subdir}.subdir): \ - file = $$eval($${subdir}.subdir) - else: \ - file = $$subdir - - target = sub-$$file - } - - target ~= s,[^a-zA-Z0-9_],-, - - $${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 deleted file mode 100644 index ce7ba61b47..0000000000 --- a/mkspecs/macx-ios-clang/features/sdk.prf +++ /dev/null @@ -1,32 +0,0 @@ - -# In case the user sets the SDK manually -contains(QMAKE_MAC_SDK, ^$${simulator.sdk}.*) { - contains(QT_CONFIG, simulator_and_device): \ - error("iOS simulator is handled automatically for simulator_and_device") - - CONFIG += simulator $${simulator.sdk} -} - -build_pass:simulator: \ - QMAKE_MAC_SDK ~= s,^$${device.sdk},$${simulator.sdk}, - -load(sdk) - -lessThan(QMAKE_MAC_SDK_VERSION, "8.0"): \ - error("Current $$QMAKE_MAC_SDK SDK version ($$QMAKE_MAC_SDK_VERSION) is too old. Please upgrade Xcode.") - -macx-xcode { - 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_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/features/testcase.prf b/mkspecs/macx-ios-clang/features/testcase.prf deleted file mode 100644 index e16c163ffa..0000000000 --- a/mkspecs/macx-ios-clang/features/testcase.prf +++ /dev/null @@ -1,12 +0,0 @@ -# Pretend we have a target, even though our template is aux -xcodebuild: \ - CONFIG += have_target - -load(testcase) - -# We provide our own check logic -xcodebuild { - check.depends = - check.commands = - QMAKE_EXTRA_TARGETS *= check -} diff --git a/mkspecs/macx-ios-clang/features/testcase_targets.prf b/mkspecs/macx-ios-clang/features/testcase_targets.prf deleted file mode 100644 index e0a2922c3f..0000000000 --- a/mkspecs/macx-ios-clang/features/testcase_targets.prf +++ /dev/null @@ -1,3 +0,0 @@ -# For the xcodebuild wrapper makefile we deal with test targets manually -!xcodebuild: \ - load(testcase_targets) diff --git a/mkspecs/macx-ios-clang/features/xcodebuild.prf b/mkspecs/macx-ios-clang/features/xcodebuild.prf deleted file mode 100644 index b897432a43..0000000000 --- a/mkspecs/macx-ios-clang/features/xcodebuild.prf +++ /dev/null @@ -1,49 +0,0 @@ - -# For Qt applications we want Xcode project files as the generated output, -# but since qmake doesn't handle the transition between makefiles and Xcode -# project files (which happens when using subdirs), we can't just override -# MAKEFILE_GENERATOR. Instead, we generate the Xcode project by spawing a -# child qmake process with -spec macx-xcode and let the top level qmake -# process generate a wrapper makefile that forwards everything to xcodebuild. - -TEMPLATE = aux - -SOURCES = -OBJECTIVE_SOURCES = -RESOURCES = -INSTALLS = -QMAKE_EXTRA_COMPILERS = - -!mkpath($$OUT_PWD): \ - error("Failed to create $$OUT_PWD") - -args = -for(arg, QMAKE_ARGS): \ - args += $$system_quote($$arg) - -cmd = "$$QMAKE_QMAKE $$args $$system_quote($$_PRO_FILE_) -spec macx-xcode" -debug(1, "Generating Xcode project in $$OUT_PWD using '$$cmd'") -system("cd $$system_quote($$OUT_PWD) && $$cmd") - -# Subtargets - -for(build, BUILDS): \ - SUBTARGETS += $$eval($${build}.target) -QMAKE_EXTRA_VARIABLES += SUBTARGETS - -CONFIG += no_default_goal_deps - -QMAKE_EXTRA_INCLUDES += $$shell_quote($$QMAKESPEC/xcodebuild.mk) - -# Distclean - -distfiles = $${TARGET}.xcodeproj -for(build, BUILDS): \ - distfiles += $$title($$eval($${build}.target)) -distclean_xcodebuild.commands = -$(DEL_FILE) -R $$distfiles - -distclean.depends += clean_all distclean_xcodebuild -QMAKE_EXTRA_TARGETS += distclean distclean_xcodebuild - -# Empty exclusive builds, we've set them up manually -BUILDS = |