diff options
author | Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com> | 2015-06-17 14:39:02 +0200 |
---|---|---|
committer | Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com> | 2015-06-29 12:39:50 +0000 |
commit | c937bbb4fe708f7f873ca630c6ff225f9a3f9ace (patch) | |
tree | 99b4e9191a887458b92de08f2ff72903ec89cd70 /mkspecs/macx-ios-clang/qmake.conf | |
parent | 7b0cb2ffa3e4a1fec6ac716f7c82c42e2bacbb2a (diff) |
iOS: Use LC_MAIN to wrap user main() instead of mangling object files
With iOS 6.0 and above the LC_MAIN load command is available, which allows
dyld to call the application entrypoint directly instead of going through
_start in crt.o. By passing -e to the linker we can change this entrypoint
to our wrapper that sets up the separate stack before entering the native
iOS runloop through UIApplicationMain. As before, we call the user's main()
from applicationDidFinishLaunching.
By using LC_MAIN instead of messing with the object files we open up the
possibility of generating Bitcode instead of object code, which can be
useful for link-time optimizations, either locally or by Apple.
Change-Id: If2153bc919581cd93dfa10fb6ff1c305b3e39a52
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@theqtcompany.com>
Diffstat (limited to 'mkspecs/macx-ios-clang/qmake.conf')
-rw-r--r-- | mkspecs/macx-ios-clang/qmake.conf | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/mkspecs/macx-ios-clang/qmake.conf b/mkspecs/macx-ios-clang/qmake.conf index 0dd761760c..d5e5840902 100644 --- a/mkspecs/macx-ios-clang/qmake.conf +++ b/mkspecs/macx-ios-clang/qmake.conf @@ -7,7 +7,7 @@ CONFIG += app_bundle reduce_exports incremental global_init_link QMAKE_INCREMENTAL_STYLE = sublib QMAKE_MACOSX_DEPLOYMENT_TARGET = -QMAKE_IOS_DEPLOYMENT_TARGET = 5.1.1 +QMAKE_IOS_DEPLOYMENT_TARGET = 6.0 INCLUDEPATH += $$PWD/ios DEFINES += DARWIN_NO_CARBON QT_NO_PRINTER QT_NO_PRINTDIALOG |