summaryrefslogtreecommitdiffstats
path: root/mkspecs/features/uikit
Commit message (Collapse)AuthorAgeFilesLines
* Remove codepaths and checks for unsupported Apple platformsTor Arne Vestbø2018-08-311-2/+0
| | | | | | | We no longer support macOS 10.11, iOS/tvOS 10, or watchOS 3. Change-Id: Ide03d8fac06185ef4162ba75ee54a0adf6916905 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* Make the use of -fdata-sections and --gc-sections more generic in QtMikhail Svetkin2018-04-271-0/+2
| | | | | | | | | | Add qmake feature and configure option, which optimze the size of static exectuable. Use for static build. Enabled via configure --gc-binaries, or CONFIG += gc-binaries in 3rd party projects. Change-Id: I3c25b02caaef6a4afc6019afc9c67122dd11696d Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* Merge remote-tracking branch 'origin/5.9' into 5.10Lars Knoll2017-12-301-1/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf mkspecs/win32-g++/qmake.conf src/corelib/global/qglobal_p.h src/corelib/global/qoperatingsystemversion_p.h src/corelib/io/qfilesystemengine_win.cpp src/network/bearer/qbearerengine.cpp src/platformsupport/input/libinput/qlibinputpointer.cpp src/sql/doc/snippets/code/doc_src_sql-driver.cpp src/widgets/kernel/qwidget_p.h src/widgets/kernel/qwidgetwindow.cpp src/widgets/styles/qfusionstyle.cpp tests/auto/corelib/io/qfileinfo/tst_qfileinfo.cpp Change-Id: I80e2722f481b12fff5d967c28f89208c0e9a1dd8
| * Fix an issue causing asset catalogs to be miscompiled with iOS simulatorJake Petroules2017-12-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This works around the inability to build iOS apps for a "generic" simulator by explicitly setting the Xcode build setting ENABLE_ONLY_ACTIVE_RESOURCES to NO in order to ensure that all variants of assets in an asset catalog are built when targeting iOS simulator devices. Otherwise, we will simply build for whatever the first simulator in the list happens to be. If the application is then deployed to a different simulator, some of the assets needed for that device variant may be missing. This "helps" QTCREATORBUG-19447 but is not a workaround since this fix is necessary for command line builds anyways, even though it's unlikely to crop up in practice there, since one would have to manually deploy the built application bundle to the simulator using simctl rather than going through Xcode (which would rebuild for the appropriate device). Change-Id: Ia41c48dcc715fe79a2c50db66a0ca7a1fea159c2 Reviewed-by: Vikas Pachdha <vikas.pachdha@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | qmake: properly filter simulator devices by minimum deployment targetJake Petroules2017-11-154-23/+51
| | | | | | | | | | | | | | | | | | | | | | This fixes an issue where a build error may be introduced by a simulator being selected whose OS version is lower than the application's minimum deployment target. Task-number: QTBUG-64456 Change-Id: Ic7c834a1473c183ebb910bc01a416fe1e23a5a14 Reviewed-by: Eike Ziller <eike.ziller@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* | Compare versions in qmake files with versionAtLeastAlexander Volkov2017-08-023-4/+4
| | | | | | | | | | Change-Id: Iba5686131d9f3e22e9a4d6da473a61a845b0418e Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | Merge remote-tracking branch 'origin/5.9' into devLiang Qi2017-07-041-1/+1
|\| | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/io/qprocess_unix.cpp src/plugins/platforms/xcb/qxcbconnection.cpp src/plugins/platforms/xcb/qxcbwindow.cpp src/widgets/util/util.pri tests/auto/corelib/thread/qthread/qthread.pro tests/auto/corelib/thread/qthread/tst_qthread.cpp Change-Id: I5c45ab54d46d3c75a5c6c116777ebf5bc47a871b
| * Fix handling of deprecated QMAKE_IOS_TARGETED_DEVICE_FAMILYJake Petroules2017-06-291-1/+1
| | | | | | | | | | | | | | | | | | | | Since the mkspecs always set QMAKE_APPLE_TARGETED_DEVICE_FAMILY, it will never be empty, and the warning message and automatic fallback to QMAKE_IOS_TARGETED_DEVICE_FAMILY will never be used. Task-number: QTBUG-60430 Change-Id: I79e36d355dae3f8a4429d73e753fed3c090a5d24 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | Fix CoreText font database build on watchOSJake Petroules2017-03-301-0/+15
|/ | | | | | | | | The font database uses UIKit symbols on all UIKit platforms and thus it must be linked to. Also, limit the missing CoreText.h workaround so that it is not applied for versions of Xcode where the bug is fixed. Change-Id: Ia2a94baba6b0df618604a0bc3092fbd2a48d5aea Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* Merge remote-tracking branch 'origin/5.8' into 5.9Liang Qi2017-03-131-2/+8
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: examples/network/network.pro mkspecs/features/mac/default_post.prf src/corelib/io/qfilesystemengine_win.cpp src/corelib/io/qprocess.cpp src/corelib/io/qprocess.h src/corelib/io/qprocess_p.h src/corelib/io/qprocess_unix.cpp src/corelib/io/qprocess_win.cpp src/corelib/thread/qmutex.cpp src/platformsupport/fontdatabases/windows/windows.pri src/plugins/platforms/eglfs/eglfsdeviceintegration.pro tests/auto/corelib/io/io.pro Change-Id: I8a27e0e141454818bba9c433200a4e84a88d147e
| * Fix Bitcode handling for both makefile and Xcode generatorsJake Petroules2017-03-031-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | This fixes an issue which caused certain iOS projects to fail to link when building with Xcode, and also fixes an issue where projects were only ever built with -fembed-bitcode instead of -fembed-bitcode-marker for debug builds with the makefile generator. Task-number: QTBUG-58754 Change-Id: Icf0c9f0d64dbc0b38d6c48bf635c5383a78bd6d5 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
| * de-duplicate {mac,uikit}/default_post.prf re valid architecturesOswald Buddenhagen2016-12-301-9/+0
| | | | | | | | | | Change-Id: Ie9d5a35a7f8578a2588ec004aab086d74986b0eb Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | mkspecs: Replace LGPL21 with LGPL license headerKai Koehne2017-03-031-14/+20
| | | | | | | | | | | | | | Also use canonical contact url. Change-Id: I04c403f81bb8a8d6d6222573030d1e6d09ec4c3d Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
* | Merge remote-tracking branch 'origin/5.8' into devLiang Qi2016-11-171-1/+1
|\| | | | | | | | | | | | | | | Conflicts: mkspecs/features/mac/default_post.prf mkspecs/features/uikit/default_post.prf Change-Id: I2a6f783451f2ac9eb4c1a050f605435d2dacf218
| * Introduce QMAKE_CD to enable us to cd from one Windows drive to anotherHannah von Reth2016-11-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | On Windows cd does not change the drive. So when you are on drive C: and type "cd D:\data" it will change the directory on drive D: but not affect your current working directory. To also change your drive you have to provide the parameter /d on Windows, so "cd /d D:\data" will also change the drive. Task-number: QTBUG-57080 Change-Id: Ib629879534523982eec693cef725f20a535a1a74 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| * iOS, mkspec: only link in qiosnsphotolibrarysupport for iOSRichard Moe Gustavsen2016-11-071-8/+0
| | | | | | | | | | | | | | | | The plugin depends on AssetLibrary.framework, which is only available for iOS. Change-Id: I798c87b57881210ced8e4a7399c1e45d130ee357 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Merge remote-tracking branch 'origin/5.8' into devLiang Qi2016-11-024-29/+28
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Blacklist tst_QMenuBar::taskQTBUG46812_doNotLeaveMenubarHighlighted() on macOS. Conflicts: mkspecs/features/mac/default_post.prf mkspecs/features/mac/sdk.prf mkspecs/features/uikit/default_post.prf mkspecs/features/uikit/sdk.prf src/angle/src/libEGL/libEGL.pro src/platformsupport/fontdatabases/fontdatabases.pro src/platformsupport/platformsupport.pro src/plugins/platforms/cocoa/qnswindowdelegate.mm src/plugins/platforms/direct2d/qwindowsdirect2dintegration.cpp src/plugins/platforms/ios/ios.pro src/plugins/platforms/ios/kernel.pro tests/auto/widgets/widgets/qmenubar/BLACKLIST tests/auto/widgets/widgets/qmenubar/tst_qmenubar.cpp Task-number: QTBUG-56853 Change-Id: If58785210feee3550892fc7768cce90e75a2416c
| * Merge remote-tracking branch 'origin/5.7' into 5.8Liang Qi2016-11-012-2/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: config.tests/win/msvc_version.cpp configure.pri mkspecs/macx-ios-clang/features/default_post.prf mkspecs/macx-ios-clang/features/resolve_config.prf mkspecs/features/uikit/default_post.prf mkspecs/features/uikit/resolve_config.prf src/corelib/io/qsettings_mac.cpp src/corelib/json/qjsondocument.cpp src/plugins/platforms/cocoa/qcocoawindow.h src/plugins/platforms/cocoa/qcocoawindow.mm src/plugins/platforms/cocoa/qnswindowdelegate.h src/plugins/platforms/cocoa/qnswindowdelegate.mm src/plugins/platforms/ios/ios.pro src/plugins/platforms/ios/kernel.pro src/plugins/platforms/ios/qiosintegration.h src/plugins/platforms/minimalegl/qminimaleglintegration.cpp tests/auto/gui/painting/qpainter/tst_qpainter.cpp tools/configure/environment.cpp Change-Id: I654845e54e40f5951fb78aab349ca667e9f27843
| * Be more robust about ensuring that device and simulator are setJake Petroules2016-10-281-13/+16
| | | | | | | | | | | | | | | | | | These CONFIG entries are also needed during configure, and preemptively fixes build errors uncovered by an upcoming forward merge, due to code restructuring. Change-Id: I39ae5e0f24bbd43dd3c04225d42cce4edd199094 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| * fix QMAKE_DEFAULT_*DIRS resolution with apple SDK, take 2Oswald Buddenhagen2016-10-161-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | the code got factored out to an own toolchain.prf file, which is load()ed from default_pre.prf, so no change at first. however, on mac, we shadow toolchain.prf, and make it load() sdk.prf first. a side effect, it has become harder to disable the use of an sdk altogether: putting CONFIG-=sdk into a project file or the qmake command line has no effect now. instead, it's possible to put it into .qmake.{conf,cache}. to make it simpler again, it's conceivable to finally add qmake -pre, which would allow setting variables before default_pre.prf is executed. take 2: there was nothing wrong with the original patch, but in 5.8, CONFIG+=simulator_and_device moved from qconfig.pri to various prf files that would do it according to the simulator_and_device configure feature, which would be way too late for the "pulled ahead" sdk.prf loading. as simulator_and_device is now gone entirely, it is safe to re-apply this patch (mostly) as-is. Task-number: QTBUG-56144 Change-Id: I6cf484982eaed8af39f7a539c60f5a087a299914 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
| * Get rid of simulator_and_device CONFIG option (mostly)Oswald Buddenhagen2016-10-162-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A separate flag is no longer needed now that simulator and device builds are not exclusive any more (*) - both 'simulator' and 'device' being set at the same time is a sufficient indication (uikit/default_pre.prf sets this up according to the simulator_and_device feature and the QMAKE_MAC_SDK variable). (*) xcodebuild mode actually still uses exclusive builds, but this is activated locally in uikit/default_post.prf, and uikit/xcodebuild.prf implements the actual build passes manually anyway, so this change does not affect it. Change-Id: Idf173a7bfeb984498d3a49ed6b8d1a16da6c2089 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
| * limit ability to override QMAKE_MAC_SDKOswald Buddenhagen2016-10-161-8/+0
| | | | | | | | | | | | | | | | | | | | | | project files may not override QMAKE_MAC_SDK any more, which seems to be no big loss. it is still possible to override the sdk on the configure command line (but note that this only ever worked for the target sdk). this simplification is preparation for subsequent changes. Change-Id: I3201629af132fa3938b13577854f3b19857a1b5a Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Merge remote-tracking branch 'origin/5.8' into devLiang Qi2016-10-133-19/+14
|\| | | | | | | | | | | | | | | | | | | | | Conflicts: qmake/library/qmakeevaluator.cpp (cherry picked from commit 1af6dc2c8fb4d91400fddc5050166f972ae57c9a in qttools) src/corelib/kernel/qcore_mac_objc.mm src/gui/painting/qcolor.h src/plugins/platforms/cocoa/qcocoawindow.mm Change-Id: I5b3ec468a5a9a73911b528d3d24ff8e19f339f31
| * Merge remote-tracking branch 'origin/5.7' into 5.8Liang Qi2016-10-062-16/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: mkspecs/features/mac/default_pre.prf mkspecs/features/qpa/genericunixfontdatabase.prf mkspecs/features/uikit/default_post.prf mkspecs/features/uikit/resolve_config.prf mkspecs/macx-ios-clang/features/default_post.prf mkspecs/macx-ios-clang/features/resolve_config.prf src/corelib/io/qiodevice.cpp Change-Id: I6f210f71f177a3c3278a4f380542195e14e4b491
| * Don't add -spec XXX more than once to system command in xcodebuild.prfJake Petroules2016-10-041-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | The "args" variable would contain the original -spec XXX flags in addition to the -spec macx-xcode passed in the system command invocation below. The last use of -spec takes effect, so this code was entirely ineffective. Consequently, uikit/default_post.prf in the nested qmake call thought it's still the top-level call and thus added xcodebuild again, which caused an infinite recursion. Change-Id: Ie98d8a7f3c1cd875f4a4146af9a66a66b48cc6cb Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
| * Reorder arguments to qmake self-invocation in xcodebuild.prfJake Petroules2016-09-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 26d44fce3dfb9dbd3b5be2a031fff8c1bb903960 added support for passing the configure options to qmake following a "--" argument. This interacted badly with xcodebuild.prf as the "args" variable would contain the standard qmake arguments AND the extra arguments following "--"... which were placed prior to -spec macx-xcode and the path of the .pro file, causing them to be ignored and thus qmake to print its usage when attempting to generate Xcode projects for Qt apps on UIKit platforms. Amends 6a9f38a11d56bb3ba6ec59955f3220627c0d30b6, which fixed the same issue inside qmake itself. Change-Id: I3056bd811c2ce958952fec8e05ddef7a063c0646 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | Allow Qt for UIKit to be built as shared libraries and default to itJake Petroules2016-10-071-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | Instead of forcing a static build, configure now respects the -shared flag and defaults to that. [ChangeLog][Important Behavior Changes] Qt for iOS now respects the -shared configure flag, and now defaults to this configuration as with all other platforms. Task-number: QTBUG-42937 Change-Id: I9e7b2de8f7f8ba031c2610ff5ac0858e357424bd Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | Share the multi-arch infrastructure between UIKit and macOSJake Petroules2016-09-293-55/+1
|/ | | | | | | | | | | | | | | | There's no reason for this to be separated, regardless of the support status of i386 macOS builds. Additional architectures may appear in the future (and currently there's actually 3 - i386, x86_64, and x86_64h for Haswell CPUs). So this feature could be used to get combined generic x86_64 and Haswell builds. Some system libraries appear to have an x86_64h slice in Sierra. [ChangeLog][Build System] Support for universal binaries on macOS has been re-introduced. Change-Id: I1c89904addf024431fdb3ad03ea8ab85da7240ad Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* Merge remote-tracking branch 'origin/5.7' into 5.8Liang Qi2016-09-291-1/+7
| | | | | | | | | | Conflicts: mkspecs/features/uikit/xcodebuild.mk tests/auto/other/lancelot/tst_lancelot.cpp tests/auto/widgets/widgets/qmdisubwindow/tst_qmdisubwindow.cpp tests/auto/widgets/widgets/qmenubar/tst_qmenubar.cpp Change-Id: Ia0ae2de86094120281abd445138877c2cc3e882c
* Make TARGETED_DEVICE_FAMILY variable platform independentJake Petroules2016-09-051-3/+6
| | | | | | | | | | | | This reduces unnecessary OS conditions in qmake since these platforms are mutually exclusive, and also opens up their potential for use on future devices (like carOS(?), which is device idiom '5'). This is also more similar to what Xcode does, as the TARGETED_DEVICE_FAMILY variable is not platform specific. Change-Id: I29d209cd8e0779f492bda829008264773e13c75c Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Make DEVICE_ARCHS and SIMULATOR_ARCHS variables platform independentJake Petroules2016-09-051-25/+6
| | | | | | | | | | | | | | | This reduces unnecessary OS conditions in qmake since these platforms are mutually exclusive, and also opens up their potential for use on macOS to transparently support multi-arch builds like UIKit platforms. This is also more similar to what Xcode does, as the DEPLOYMENT_TARGET variables are platform specific, while the ARCHS variable is not. DEPLOYMENT_TARGET has a use case for being OS specific in qmake (host tools vs targets), while ARCHS does not. Change-Id: Icee838a39e84259c2089faff08cc11d5f849758d Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Remove simulator_and_device handling for the Makefile generatorJake Petroules2016-09-033-58/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch moves towards a more sensible layout for UIKit platforms, where both the device and simulator architectures for binaries are combined into a single Mach-O file instead of separating out the simulator architecutures into separate _simulator.a files. This approach is both more common in the iOS ecosystem at large and significantly simplifies the implementation details for Qt, especially with the upcoming support for shared libraries on UIKit platforms. This patch takes advantage of the -Xarch compiler option to pass the appropriate -isysroot, -syslibroot, and -m*-version-min compiler and linker flags to the clang frontend, operating in exactly the same way as a normal multi-arch build for device or simulator did previously. Exclusive builds are still enabled for the xcodebuild wrapper Makefile, which builds all four configurations of a UIKit Xcode project as before, as expected. A particularly advantageous benefit of this change is that it flows very well with existing Xcode workflows, namely that: - Slicing out unused architectures is handled completely automatically for static builds, as an executable linking to a library with more architectures than it itself is linked as, the unused architectures will be ignored silently, resulting in the same behavior for users (and the App Store won't let you submit Intel architectures either). - Removing architectures from a fat binary using lipo does NOT invalidate the code signature of that file or its container if it is a bundle. This allows shared library and framework builds of Qt to work mostly automatically as well, since an Xcode shell script build phase can remove unused architectures from the embedded frameworks when that is implemented, and if Qt ever starts signing its SDK releases, it won't interfere with that either (though binaries are just resigned). Change-Id: I6c3578c78f75845a2fcc85f3a5b728ec997dbe90 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* Remove the ability to build simulator/device targets from SUBDIRS projectsJake Petroules2016-09-031-34/+0
| | | | | | | | | | | This is done because a followup patch will cause simulator_and_device builds to no longer use exclusive builds and so this feature could not work, but it is not strictly necessary anyways because users do not need to be able to do this. Done-with: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Change-Id: If869fbfea776751553c352c2d652edf745a3638d Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* Enable precompiled headers on iOS, tvOS, watchOSJake Petroules2016-09-021-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | The actual blocker for precompiled headers is not the iOS/tvOS/watchOS platforms, but the way qmake handled multiple-architecture builds on Apple platforms. This patch allows multi-arch builds to be performed while using precompiled headers. Since df91ef3d6c55692a0236f67b6c6b134a3bf84098 (April 2009), Clang has had support for PCH files in the driver, which allows to use the -include flag to automatically translate to -include-pch. We can then take advantage of the fact that the -include option is allowed to not be separate from its argument, which lets us take advantage of -Xarch to specify a per-architecture precompiled header file. This is done through some magic in the qmake Makefile generator which "multiplexes" the PCH creation rule across multiple architectures and replaces a series of tokens with the proper precompiled header paths and architecture flags at usage point. Change-Id: I76c8dc9cda7e218869c2919f023d9b04f311c6fd Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* Move ios_devices.pl into uikit folderMike Krus2016-08-303-4/+54
| | | | | | | Was left behind in previous merges Change-Id: Ic30cc2b234b904ad819c4e3e57804ac6e58ec1e9 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* fix build with configure -sdk iphonesimulatorOswald Buddenhagen2016-08-301-1/+1
| | | | | | | | | | we need to suppress another qtConfig(simulator_and_device) check during the configuration phase. amends 60985aa4. Change-Id: Iae279d282d47b4c254b7a6f9f33315abe126eff0 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* Merge remote-tracking branch 'origin/5.7' into 5.8Liang Qi2016-08-292-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | cf53aa21bf0f8fbd13c0ce2d33ddf7bc63d0d76a and 3aaa5d6b32130d3eeac872a59a5a44bfb20dfd4a were reverted because of reconstruction in 5.7. defineTest(qtConfTest_checkCompiler) in configure.pri is smart enough to cover the case in a9474d1260a8c8cc9eae14f2984098919d9684e5. DirectWrite: Fix advances being scaled to 0 Since 131eee5cd, the stretch of a font can be 0, meaning "whatever the font provides". In combination with ec7fee96, this would cause advances in the DirectWrite engine to be scaled to 0, causing the QRawFont test to fail. Conflicts: configure mkspecs/features/uikit/device_destinations.sh mkspecs/features/uikit/xcodebuild.mk src/corelib/global/qglobal.cpp src/corelib/global/qnamespace.qdoc src/plugins/platforms/cocoa/qcocoamenuitem.h src/plugins/platforms/windows/qwindowsservices.cpp src/plugins/platformthemes/gtk3/qgtk3dialoghelpers.cpp src/plugins/platforms/windows/qwindowsfontenginedirectwrite.cpp src/widgets/kernel/qapplication.cpp tests/auto/widgets/dialogs/qfiledialog/tst_qfiledialog.cpp tests/auto/widgets/dialogs/qfiledialog2/tst_qfiledialog2.cpp Change-Id: I4656d8133da7ee9fcc84ad3f1c7950f924432d1e
* qmake: Also add bitcode flags to linkerJake Petroules2016-08-201-0/+2
| | | | | | | | | | This fixes errors linking against Qt when built as shared libraries and with bitcode enabled (default on tvOS and watchOS). Change-Id: I3eb3bb0b9615e0bc41e43ffae8645248dbf803c6 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Mike Krus <mike.krus@kdab.com> Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* Add support for Apple watchOSJake Petroules2016-08-196-2/+19
| | | | | Change-Id: I3f9e00569458a463af2eaa5a3a16a6afd1e9c1ea Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
* Use qtConfig throughout in qtbaseLars Knoll2016-08-192-2/+2
| | | | | | | | | | | Use the new qtConfig macro in all pro/pri files. This required adding some feature entries, and adding {private,public}Feature to every referenced already existing entry. Change-Id: I164214dad1154df6ad84e86d99ed14994ef97cf4 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* xcodebuild.mk: forward INSTALL_ROOT from make to xcodebuildJake Petroules2016-08-161-1/+1
| | | | | | | | | This allows overriding the INSTALL_ROOT with the Xcode generator. Change-Id: Ifb894bdbf9764918f76428fb32d9af68914853f6 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io> Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* xcodebuild.mk: explicitly specify the Xcode project to buildJake Petroules2016-08-161-1/+1
| | | | | | | | | | | This fixes the examples build on UIKit platforms in examples/dbus/pingpong where there are two Xcode projects and the build therefore cannot disambiguate between the two. Change-Id: Ic8b808c1ddf3565bb9861a487eab6854ec177184 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io> Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* Merge remote-tracking branch 'origin/5.7' into devLiang Qi2016-08-162-3/+2
| | | | | | | | | | | | Conflicts: qmake/doc/src/qmake-manual.qdoc src/corelib/global/qglobal.cpp src/corelib/tools/qstring.cpp src/network/socket/qabstractsocket.cpp src/network/socket/qnativesocketengine_unix.cpp src/plugins/platforms/eglfs/api/qeglfsglobal.h Change-Id: Id5dfdbd30fa996f9b4b66a0b030b7d3b8c0ef288
* Merge remote-tracking branch 'origin/5.7' into devLiang Qi2016-06-132-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: config_help.txt configure mkspecs/features/uikit/sdk.prf src/corelib/global/qhooks.cpp src/corelib/io/qfilesystemwatcher.cpp src/corelib/io/qlockfile_unix.cpp src/corelib/tools/qalgorithms.h src/gui/kernel/qwindowsysteminterface.h src/gui/text/qtextdocument_p.cpp src/network/access/access.pri src/network/access/qnetworkaccessmanager.cpp src/network/access/qnetworkreplynsurlconnectionimpl.mm src/src.pro src/testlib/qtestcase.cpp src/widgets/kernel/qwidgetbackingstore_p.h src/widgets/styles/qwindowscestyle.cpp src/widgets/styles/qwindowsmobilestyle.cpp tests/auto/corelib/io/qdiriterator/qdiriterator.pro tests/auto/corelib/io/qfileinfo/qfileinfo.pro tests/auto/gui/kernel/qwindow/BLACKLIST tests/auto/widgets/dialogs/qfilesystemmodel/tst_qfilesystemmodel.cpp tools/configure/configureapp.cpp Change-Id: Ibf7fb9c8cf263a810ade82f821345d0725c57c67
* Add support for Apple tvOSMike Krus2016-05-177-9/+51
| | | | | | | | | | | | | | | | | | | | | | | | | Pass -xplatform macx-tvos-clang to configure to build. Builds device and simulator by default. Added ‘uikit’ platform with the common setup. Also added QT_PLATFORM_UIKIT define (undocumented). qmake config defines tvos (but not ios). tvOS is 64bits only (QT_ARCH is arm64) and requires bitcode to be embedded in the binary. A new ‘bitcode’ configuration was added. For ReleaseDevice builds (which get archived and push to the store), bitcode is actually embedded (-fembed-bitcode passed to clang). For all other configurations, only using bitcode markers to keep file size down (-fembed-bitcode-marker). Build disables Widgets in qtbase, and qtscript (unsupported, would require fixes to JavaScriptCore source code). Qpa same as on iOS but disables device orientation, status bar, clipboard, menus, dialogs which are not supported on tvOS. Change-Id: I645804fd933be0befddeeb43095a74d2c178b2ba Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
* Merge remote-tracking branch 'origin/5.7' into devLiang Qi2016-05-121-0/+6
| | | | | | | | | | | | | | Conflicts: config_help.txt configure src/corelib/io/qprocess_wince.cpp src/plugins/platforms/windows/qwindowstheme.cpp src/plugins/platforms/xcb/qxcbbackingstore.cpp tests/auto/corelib/tools/qtimezone/BLACKLIST tests/auto/network/socket/qudpsocket/tst_qudpsocket.cpp tests/auto/widgets/kernel/qwidget/tst_qwidget.cpp Change-Id: I26644d1cb3b78412c8ff285e2a55bea1bd641c01
* Refactor iOS builds to facilitate tvOS portMike Krus2016-05-0513-0/+511
- moved prf files to shared location (uikit, added to QMAKE_PLATFORM) - prepare some formatting (unconditional blocks mostly) to add conditions later - make device detection script more generic, passing filter strings as a parameter and returning non-os specific variables Change-Id: I61f2b77093304ff985bec9da04fda57ff296b16b Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>