summaryrefslogtreecommitdiffstats
path: root/qmake/generators/mac
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote-tracking branch 'origin/release' into stableFrederik Gladhorn2013-12-051-1/+1
|\ | | | | | | | | | | | | | | | | Conflicts: configure mkspecs/macx-ios-clang/features/default_post.prf tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp Change-Id: Iaba97eed2272bccf54289640b8197d40e22f7bf5
| * Add PBXCopyFilesBuildPhases to main target, not preprocessing stepTor Arne Vestbø2013-12-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Otherwise the 'Wrapper' destination of the PBXCopyFilesBuildPhase will be empty, and the files end up outside of the application bundle. Task-number: QTBUG-34457 Change-Id: I799db28185a6c5d3d940602914fd8ba14c538bf2 Reviewed-by: Caroline Chao <caroline.chao@digia.com> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
* | Show all of the internal included files in the Supporting Files groupAndy Shaw2013-11-221-2/+2
|/ | | | | | | | | | | In XCode only the pro file was shown in the Supporting Files group as it was the first one in the list. The others were not shown as it was recreating the temporary QStringList each time instead of appending to it. Change-Id: Ifbc40a25156cf639eaa34b410f534726c41b6232 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* fix warnings about unused variables & parametersOswald Buddenhagen2013-11-041-0/+1
| | | | | Change-Id: Ia5816671267ea21dae0d90560b239c4498f9156c Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* xcode generator: warn if QMAKE_INFO_PLIST is not validRichard Moe Gustavsen2013-11-011-0/+2
| | | | | | | | | | | Warn the user if QMAKE_INFO_PLIST is set, but file not found. An iOS application will not run or deploy without an Info.plist present, and the error message given by xcodebuild is not very informative. Change-Id: I54f0e06de320a43c9f3261fe88761c41e3ccd022 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* qmake: Pick up default bundle prefix from Xcode preferencesTor Arne Vestbø2013-10-311-1/+4
| | | | | | | | | But still fall back to 'com.yourcompany', just like Xcode does for the initial launch. Change-Id: I89afadefafc254a0014aca197741d42a0199943e Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* xcode generator: resolve QMAKE_INFO_PLIST from source dirRichard Moe Gustavsen2013-10-301-1/+1
| | | | | | | | | | If QMAKE_INFO_PLIST is set, check if the file it points to is located inside the project source dir rather than the build dir. Change-Id: I6fb176349dae8e841b5e2dfdb9f9cb87f51a1e76 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* xcode: Move Qt preprocessor steps to separate targetTor Arne Vestbø2013-10-251-2/+24
| | | | | | | | | | | | | | | Xcode resolves dependencies at the beginning of each target, so if a Qt preprocessor such as moc or rcc updates a cpp file Xcode will not rebuild the cpp file until the next build. We solve this by moving the Qt proceprocesor handling to a separate aggregate build tool target, which the main application target then depends on. Change-Id: I8f9225b9603dc5f279b1cb60976fe709bd97963e Reviewed-by: Andy Shaw <andy.shaw@digia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
* qmake: Add support for QMAKE_{PRE,POST}_LINK in the Xcode generatorTor Arne Vestbø2013-10-171-0/+39
| | | | | Change-Id: I038cf0aebb74d7ecfe6cb3ed868287042342eb7e Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
* Xcode: Dynamically choose release/debug libs based on current configurationTor Arne Vestbø2013-10-161-0/+14
| | | | | | | | | | | | | | Non-framework builds would automatically link to whatever Qt library matched the config at the time of running qmake, eg hard-coded to libQtCore_debug, while Xcode itself allowed the user to switch between release and debug configurations. We now append an Xcode settings variable to the library path, which gets resolved at build time depending on the current config in Xcode. Change-Id: I12873e38a28d9595ef3fd0ae0ad849e6744833a9 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Andy Shaw <andy.shaw@digia.com>
* qmake: Allow QMAKE_MAC_XCODE_SETTINGS to be limited to debug or releaseTor Arne Vestbø2013-10-111-8/+22
| | | | | | | | | | | | | | | The Xcode generator does not support exclusive builds, but still generates projects that contain both debug and release configurations, each with hard-coded differences such as whether or not to strip or to generate debug symbols. As a stop-gap solution we allow projects and mkspecs to add extra settings that are limited to a given build. Long term we want to rewrite the Xcode generator to support exclusive builds, but that is a much bigger task. Change-Id: I85056164bb1b3c8c6e0cf66410348cca7138eca5 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* Xcode: Quote variable names with invalid characters in themTor Arne Vestbø2013-09-241-1/+4
| | | | | | | | | | Allows us to have scoped variables such as eg FOO[arch=armv7]. We could quote all variables, but Xcode doesn't, and we try to stay close to the native behavior. Change-Id: Ia6634a33e42031fe7e69c4f680803fa347e5de4a Reviewed-by: Andy Shaw <andy.shaw@digia.com>
* Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-09-161-1/+1
|\ | | | | | | | | | | | | Conflicts: src/corelib/tools/qstring.cpp Change-Id: Ifc6cd3a0f1cf14cc0fe6cf30afb0c7f40cfdbc3e
| * Xcode: Resolve extra compiler (e.g qrc) dependenciesTor Arne Vestbø2013-09-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The Xcode generator relies on the generic makefile generator for extra compilers such as qrc and moc, by generating makefiles that are then executed as separate build steps in the Xcode build. These makefiles are generated by entering a special mode in the Xcode generator, in which case we _do_ want to resolve dependencies, so that e.g. the files referenced inside a qrc file are added as dependencies to the makefile rule that generates the qrc-cpp file. Change-Id: I96bdcb165e9774a6328ae1980986fa2c6b00c6d9 Reviewed-by: Andy Shaw <andy.shaw@digia.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-08-211-3/+3
|\| | | | | | | | | | | | | | | | | Conflicts: qmake/doc/src/qmake-manual.qdoc src/plugins/platforms/xcb/qxcbconnection_xi2.cpp src/src.pro Change-Id: I0a560826c420e46988da3776bd8f9160c365459a
| * Don't compile MD4, MD5, SHA-2 and SHA-3 into qmakeThiago Macieira2013-08-151-3/+3
| | | | | | | | | | | | | | | | We just need one digest algorithm, any algorithm, to generate a somewhat unique identifier. SHA-1 will suffice. Change-Id: I3cb26bf866d616df3ef32feace10934f19daa1a6 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-07-231-4/+3
|\| | | | | | | | | | | | | Conflicts: tests/auto/dbus/qdbusabstractinterface/tst_qdbusabstractinterface.cpp Change-Id: I18a9d83fc14f4a9afdb1e40523ec51e3fa1d7754
| * unbreak use of not-overquoted ICON entriesOswald Buddenhagen2013-07-221-3/+2
| | | | | | | | | | | | | | amends 0e548b5856. Change-Id: I88a5b8c681f7508aecf02b913e64816b712d97a2 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
| * undo accidental string mergeOswald Buddenhagen2013-07-151-1/+1
| | | | | | | | | | | | | | amends 51980595e1. Change-Id: Ie4fd4a6d762f4c87dabd7d3124f3397b0f853b77 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* | Merge branch 'stable' into devSergio Ahumada2013-07-111-343/+343
|\| | | | | | | | | | | | | | | | | | | Conflicts: qmake/generators/mac/pbuilder_pbx.cpp src/corelib/json/qjsonwriter.cpp src/corelib/kernel/qeventdispatcher_blackberry.cpp src/plugins/platforms/cocoa/qcocoacolordialoghelper.mm Change-Id: I24df576c4cbd18fa51b03122f71e32bb83b9028f
| * merge string literalsOswald Buddenhagen2013-07-041-343/+343
| | | | | | | | | | | | | | | | makes for less visual noise and a tiny bit more efficient code. Change-Id: I587707fa4e2dc9bead9435bf5caf3a98ab680725 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* | Xcode: Fix defines in OTHER_C/CPLUSPLUSFLAGS for project file outputTor Arne Vestbø2013-07-032-5/+11
| | | | | | | | | | | | | | We were only fixing QMAKE_C/CXXFLAGS, not the defines we then appended. Change-Id: Iaa4a394738658c45aae83941ebe54470d6d8e250 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* | Xcode: Fix string quoting to match ASCII plist formatTor Arne Vestbø2013-07-031-20/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The logic for quoting and unescaping strings was a bit random. We now leave the strings alone, until writing them out as values, where we quote and escape the characters that need escaping. See: http://www.gnustep.org/resources/documentation/Developer/Base/Reference/NSPropertyList.html https://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/PropertyLists/OldStylePlists/OldStylePLists.html https://code.google.com/p/plist/source/browse/trunk/src/main/java/com/dd/plist/NSString.java?r=107#230 Change-Id: I2096df531947abdce4f6b57428136f544d22c466 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-06-121-1/+1
|\| | | | | | | | | | | | | Conflicts: src/plugins/platforms/cocoa/qcocoamenubar.mm Change-Id: I4a699fc8a7f30b2af9de8e496c3d5f027b7495bb
| * Xcode: Don't set TARGET_BUILD_DIR; that's handled by a copy phaseTor Arne Vestbø2013-06-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | This reverts an earlier change that tried to fix the relationship between Qt's concept of output directories with what Xcode expects, but it broke DESTDIR. The relationship between Qt and Xcode is still a mess, but at least DESTDIR now works. Change-Id: I44f056d48c87359a609e0337da266120ba4eb155 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Andy Shaw <andy.shaw@digia.com>
* | iOS: Don't mangle QT_ARCH when being more specific about what arch to buildTor Arne Vestbø2013-04-161-1/+2
|/ | | | | | | | | | 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 <morten.sorvig@digia.com>
* Merge remote-tracking branch 'gerrit/release' into stableSamuel Rødal2013-03-211-2/+5
|\ | | | | | | | | | | | | | | | | | | | | | | Conflicts: configure mkspecs/features/qt_module_headers.prf mkspecs/features/qt_tool.prf src/angle/angle.pro src/tools/bootstrap/bootstrap.pro tests/auto/widgets/kernel/qwidget/tst_qwidget.cpp Change-Id: Ide5759fe419a50f1c944211a48f7c66f662684e0
| * fix setup of output directory for subprojects in IDE generator backendsOswald Buddenhagen2013-03-151-2/+5
| | | | | | | | | | | | | | | | | | | | | | unlike before, the output dir is now important already during the project evaluation phase, as finding .qmake.conf depends on it if .qmake.cache is also present. ChangeLog: fixed qmake -tp vc (and configure without -no-vcproj) Change-Id: Ifdb95f3b38a70c0d08e71238059292e761dcfa53 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com> Reviewed-by: Andy Shaw <andy.shaw@digia.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-03-051-2/+6
|\| | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: configure qmake/generators/mac/pbuilder_pbx.cpp src/corelib/kernel/qtimerinfo_unix.cpp src/plugins/platforms/cocoa/qcocoabackingstore.mm src/plugins/platforms/cocoa/qcocoawindow.mm src/plugins/platforms/windows/qwindowswindow.cpp src/plugins/platforms/xcb/qglxintegration.cpp Change-Id: I8d125fe498f5304874e6976b53f588d3e98a66ac
| * Fix generation of XCode projects for XCode 4.6Andy Shaw2013-02-271-3/+5
| | | | | | | | | | | | | | | | | | | | | | When a framework is referenced in the XCode project then it is known as a framework by the lastKnownFileType and not the reference type. This ensures it works in both XCode 3 and XCode 4. Task-number: QTBUG-29371 Change-Id: I434246a46d6c5bfd50ba7de1a7c710c0caf0bc0a Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* | iOS: Write default code signing identify for iOS in Xcode generatorTor Arne Vestbø2013-02-271-0/+3
| | | | | | | | | | | | | | Change-Id: Ic04da6063863585665c9133caba0279ba478fbb4 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Ian Dean <ian@mediator-software.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* | qmake: Fix file paths in Xcode projects when shadow-buildingTor Arne Vestbø2013-02-261-5/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Xcode generator seems to have been written with the assumption that writeMakeParts() would be called with the output directory as the current directory, but that's not the case when shadow-building. Perhaps this was changed in qmake at some point, and the Xcode generator was not updated to reflect that. Instead of replacing every occurance of fileFixify and other logic to deal with paths, we just chdir into the output_dir for the duration of the function (except when writing the 'make qmake' makefile, as the regular makefile generator works as expected with the current directory set to the input directory). Change-Id: I6ba492036d73f29f4adbd7cd554db9504050629e Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
* | qmake: Prevent Obj-C sources from building both as extra compiler and in XcodeTor Arne Vestbø2013-02-261-3/+13
| | | | | | | | | | | | | | | | | | We already assume that if a source is buildable and should end up in OBJECTS we can let Xcode build it, so we skip this input for the extra compiler. Change-Id: I17b2408925b8e6513f0fa0d2459ec539bf7381d3 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* | qmake: Use PBXResourcesBuildPhase for QMAKE_BUNDLE_DATA without a pathTor Arne Vestbø2013-02-261-43/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | The PBXResourcesBuildPhase will optimize resources, such as turning XIB files into NIB files, running pngcrush on images, turning string files into binary plists, etc, so we prefer that if possible. Unfortunatly this phase does not support custom paths, so whenever we encounter bundle data with a custom path we fall back to the regular PBXCopyFilesBuildPhase. Change-Id: I539db03dd7982fd37293123b6428cdb695f64d2b Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
* | qmake: Prevent duplicate libaries from being added to the link phaseTor Arne Vestbø2013-02-261-15/+17
| | | | | | | | | | Change-Id: I5ec7acb8f060e9d9bbd8cdb95d40ace03cffe9c7 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
* | qmake: Don't generate Xcode project bundle identifiers with spacesTor Arne Vestbø2013-02-261-0/+1
| | | | | | | | | | | | | | Replace them with dashes, like Xcode itself does. Change-Id: I302425363a2eef13394025cd4a9e414048ce55ce Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* | qmake: Update Xcode generator to produce project files similar to XcodeTor Arne Vestbø2013-02-261-255/+180
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There was quite a bit of cruft left over from older Xcode version. We now produce Xcode 3.2 compatible files, similar to what Xcode would do when asked to upgrade one of our generated files. In particular: - Removed refType - Set more lastKnownFileTypes - Renamed defaultConfigurationIsName to defaultConfigurationName - Add runOnlyForDeploymentPostprocessing = 0 to build phases - Don't put buildSettings directly into PBXNativeTarget - Don't write productSettingsXML - Don't write startupPath - Don't write name when path is the exact same - Write empty buildSetting lists as empty string - Don't write empty PBXBuildFile settings - Don't write generated/neede filenames for PBXShellScriptBuildPhase - Use PBXFileReference instad of PBXFrameworkReference - Prune deprecated buildSetting variables - Remove deprecated PBXBuildStyle sections - Resolve correct CC/CPLUSPLUS/LDPLUSPLUS - Write IPHONEOS_DEPLOYMENT_TARGET Change-Id: Ia2365c2623fe898878bd10636c3b85145c1cff04 Reviewed-by: Andy Shaw <andy.shaw@digia.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* | Xcode: Change groups/build phase wording to match Apple's templatesTor Arne Vestbø2013-02-221-3/+3
| | | | | | | | | | Change-Id: I286965a05750bc77b94ca4d3b76364b0130e32ed Reviewed-by: Andy Shaw <andy.shaw@digia.com>
* | Xcode: Merge various sources and extra-compilers into more managable groupsTor Arne Vestbø2013-02-221-18/+18
|/ | | | | | | | | | | Instead of letting each qmake variable have its own auto-generated name we try to group common variables into similar groups as used by the Xcode templates provided by Apple. We also prevent the same files from ending up multiple times in a group. Change-Id: I73b13d6071bb7b3cd1501c422a99c60743221485 Reviewed-by: Andy Shaw <andy.shaw@digia.com>
* Update copyright year in Digia's license headersSergio Ahumada2013-01-182-2/+2
| | | | | Change-Id: Ic804938fc352291d011800d21e549c10acac66fb Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Fix handling of precompiled header files in XCode projectsAndy Shaw2012-12-191-4/+4
| | | | | | Task-number: QTBUG-24589 Change-Id: If81e15aa038f418abea25d96a7b7ec773a87d2db Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* Respect the OBJECTS_DIR setting for XCode projectsAndy Shaw2012-12-191-2/+2
| | | | | | | | Task-number: QTBUG-28104 Change-Id: I0361cb979c40ce14ac163453d8229efc69527b6c Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Make sure the path is quoted in case it has spaces in itAndy Shaw2012-09-281-3/+5
| | | | | | | | | | This fixes a problem when the preprocessing scripts were called from a path with spaces in it. Task-number: QTBUG-15317 Change-Id: I92ea85e12e2f9abfc262a8dcaa4f414e471e468c Reviewed-by: João Abecasis <joao@abecasis.name> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Fix XCode generator for qmake in Qt 5 after recent changesAndy Shaw2012-09-272-30/+31
| | | | | | | | Due to all the changes recently it broke in some places, this now gets it working again. Change-Id: I879ca5684435289a61d8db248f2c3f64f6866a60 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Change copyrights from Nokia to DigiaIikka Eklund2012-09-222-48/+48
| | | | | | | | Change copyrights and license headers from Nokia to Digia Change-Id: If1cc974286d29fd01ec6c19dd4719a67f4c3f00e Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
* introduce qmake variable abstractionsOswald Buddenhagen2012-09-072-163/+180
| | | | | | | | this is preparation for adapting to a new evaluator. Change-Id: I6fc59f5525735754a00afa6629fbfe257e84db97 Reviewed-by: Daniel Teske <daniel.teske@nokia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* remove pretenses of supporting projects on stdinOswald Buddenhagen2012-09-051-4/+2
| | | | | | | | | | this may have worked a decade ago, but now it only produces funny Makefiles (and needs hacking main.cpp). the feature doesn't seem *too* important, so just clean it out. Change-Id: I50a60b0e30341f0b523e4a5731c770c9c1013f8b Reviewed-by: Daniel Teske <daniel.teske@nokia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* make QMakeMetaInfo a little less inefficient with libtool .la filesOswald Buddenhagen2012-09-051-1/+1
| | | | | | | | | don't read the spec from scratch for every library just to get QMAKE_LFLAGS_RPATH. we can perfectly use our current project for that purpose. Change-Id: I4e408b3fd5de81652181df032aa53cd8f2f8f806 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* beautify string operationsOswald Buddenhagen2012-08-281-4/+3
| | | | | Change-Id: I895a1ae26ee0c884c404bf585261d1a7e8a8242c Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
* micro-optimize: use POD-initializable lists of variable namesOswald Buddenhagen2012-08-281-2/+2
| | | | | Change-Id: I3732fef509b358949ef90002dbfc1960360afef8 Reviewed-by: Daniel Teske <daniel.teske@nokia.com>