summaryrefslogtreecommitdiffstats
path: root/qmake
Commit message (Collapse)AuthorAgeFilesLines
* xcodegenerator: use a copy resource phase if possibleFawzi Mohamed2014-10-301-16/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commmit 0127962e4772d6c758b954b2fe1d4b676d366b4c the PBXResourcesBuildPhase is used only for ICONS, because the old behavior of using it when target path is not given differed from the documentation and behavior of the makefile generator by using Contents/Resources as target directory when targeting osx. The PBXResouceBuildPhase optimizes png, compiles xib or asset catalogs and copies the rest. The advantage is that it makes it easy to add resources to the bundle, the only problem is that the target directory is always the resource directory. The copy operation currently used does not compile resources, which makes adding .xib (for the Launch File required to support iphone 6) and asset catalogs difficult. So we restore the old 5.3 behavior for ios, and use the build resources phase when possible on osx (target Contents/Resources). On osx this still implies a difference between the makefile generator and the xcode generator: only the latter compiles resources. Change-Id: Id1853693e88fc46562b044efdea2bf5f9da2c98c Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* work around MSVC2010 ICEOswald Buddenhagen2014-10-291-2/+2
| | | | | | Task-number: QTBUG-42064 Change-Id: Ifffcc0cf9109b76d79f603a13792d7fd9979761c Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* Merge remote-tracking branch 'origin/5.3' into 5.4Oswald Buddenhagen2014-10-281-4/+8
|\ | | | | | | Change-Id: I224e44a9df314b9a99d33148b6cf400fcbc9de8e
| * vcxproj: fix writing of librarian settingsJoerg Bornemann2014-10-281-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | The settings of the librarian were never written. Creation of static libraries only worked by accident. Adapted the code from the vcproj code path. Task-number: QTBUG-30712 Change-Id: I69917f44305eb458647392d222db477fe5a5b7c8 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com> Reviewed-by: Andy Shaw <andy.shaw@digia.com>
* | Run VS custom build step in new environment variable scope.David Schulz2014-10-231-0/+4
| | | | | | | | | | | | Task-number: QTBUG-32366 Change-Id: I99161b23e3d323fd88766ebe83c8bbfc1d50944e Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* | qmake vcxproj generator: write PrimaryOutputExtension valueJoerg Bornemann2014-10-224-8/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | Second attempt. MSVCPROJ_TARGET contains the resolved target name, including version number and target extension. We're splitting this value into PrimaryOutput and PrimaryOutputExtension. PrimaryOutputExtension is only written if it contains a non-default value. Task-number: QTBUG-26782 Change-Id: I4b828dc5dd47322f653585aee1a5767f0cf8bd48 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | Removing a few unneeded "? true : false"Alessandro Portale2014-10-091-1/+1
| | | | | | | | | | | | | | Change-Id: Ib13f0ddd65fe78f5559f343f2fc30756b1d3ef76 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Orgad Shaneh <orgads@gmail.com> Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* | fix VS 2008 project file generationJoerg Bornemann2014-10-091-18/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 4f21eb03 utterly broke the project file generation for VS 2008. The introduced filterByName convenience methods looks for filter names like "Generated Files", but the code path for VS <= 2008 used filter names like "GeneratedFiles". The generated projects were valid but empty. This commit ensures that both VS generators use the same filter names. Task-number: QTBUG-41821 Change-Id: I828fa911bae8d835b073a4c2260316127cc72cda Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* | fix vcxproj generation for CONFIG-=flatJoerg Bornemann2014-10-092-16/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 4f21eb03 broke the generation of non-flat vcxprojs. XTreeNode passes filter names to outputFileConfigs that have the source subdirectory suffixed (e.g. "Generated Files\subdir"). That's why the original code tested the filter names with QString::startsWith. I've changed the signature of outputFileConfigs to take a filterId parameter which contains the unaltered filter name (e.g. "Generated Files") that will determine the correct filter. Task-number: QTBUG-41746 Change-Id: If33428526a098f433cd6ceb8ab6608bd9f94ef17 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* | Merge remote-tracking branch 'origin/5.3' into 5.4Oswald Buddenhagen2014-10-062-132/+126
|\| | | | | | | Change-Id: I132bb6cce68e9f8413200f7ee75586bd1cada38c
| * wrap ALL_DEPS somewhat sanelyOswald Buddenhagen2014-10-011-1/+1
| | | | | | | | | | | | | | | | otherwise we'll produce lines with tens of thousands columns when dealing with QMAKE_BUNDLE_DATA. Change-Id: Ia2a70f25e4ee1d3fe976027a7c46d234809a3f70 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
| * fix Info.plist location in framework bundlesOswald Buddenhagen2014-10-011-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | According to Apple's documentation [1], framework bundles don't have a 'Contents' folder. Instead, each version folder gets a 'Resources' folder which contains the Info.plist file, and which is also symlinked at the top-level framework folder. [1]: https://developer.apple.com/library/mac/documentation/macosx/conceptual/BPFrameworks/Concepts/FrameworkAnatomy.html Task-number: QTBUG-32895 Change-Id: I5e55cc097b179012add0ceb7c567dace8e282895 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
| * don't try to create nested top-level bundle dir symlinksOswald Buddenhagen2014-10-011-2/+6
| | | | | | | | | | | | | | | | | | the target path may have multiple components, e.g. Headers/private. obviously, only the first component must be linked in such cases. Task-number: QTBUG-32895 Change-Id: If632b3b72c170a9fde36e62c165e06ded53deda3 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
| * de-duplicate top-level bundle symlink creationOswald Buddenhagen2014-10-011-7/+12
| | | | | | | | | | | | | | | | multiple QMAKE_BUNDLE_DATA entries can install into the same directory, but it obviously makes no sense to symlink that repeatedly. Change-Id: If65f7acdf4e158e33511917a027a380e642e2f28 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
| * redo bundle file dependency trackingOswald Buddenhagen2014-10-012-43/+16
| | | | | | | | | | | | | | | | | | instead of duplicating the plist/icon/bundled_files logic just to obtain the dependencies, create them as a side effect of the actual target creation. Change-Id: I6a0fe26c82c490b1040a7a06d5d0e7a4567ae1af Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
| * fix omission of QMAKE_PKGINFO from sliced bundlesOswald Buddenhagen2014-10-011-0/+1
| | | | | | | | | | Change-Id: Iff2c6686eae47e09fa6d046c60523aaf79aadfd5 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
| * Add CFBundleVersion to the Info.plist files.Morten Johan Sørvig2014-10-011-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | Add @FULL_VERSION@ -> Qt version substitution to unixmake2. This makes the Qt-generated Info.plist files compliant with the bundle signing/validation process. Task-number: QTBUG-32896 Change-Id: I1818f028c2f740d699629dd78cc0fe6ffaf94a1c Reviewed-by: Jake Petroules <jake.petroules@petroules.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
| * Don't make Info.plist for debug framework bundlesGabriel de Dietrich2014-10-011-55/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We do so by setting a 'no_plist' config property. Can be overridden with 'force_debug_plist'. The debug version of Info.plist would overwrite the release version, and it also happens to contain invalid data. In particular, CFBundleExecutable would contain the _debug suffixed libname, which it shouldn't. See the entry about CFBundleExecutable on https://developer.apple.com/library/ios/documentation/general/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html Task-number: QTBUG-32894 Change-Id: Ideb018e4768a7c4e276e1b07d77937451f6db6a2 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
| * centralize bundle_dir calculationOswald Buddenhagen2014-10-011-4/+4
| | | | | | | | | | Change-Id: I353fb4eafc014bccdec71af42f8625b33488ae0d Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
| * nest bundle-related conditionals for clarityOswald Buddenhagen2014-10-011-19/+20
| | | | | | | | | | Change-Id: I97f9d87cb5a114bf4764f13f0fd0d22e9b4da96f Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
| * make top-level symlinks in bundles point to Current, not the major versionOswald Buddenhagen2014-10-011-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | Current already points to the major version, and the other symlinks are supposed to take advantage of that (so a hypothetical change of major versions requires just one symlink to be adjusted). https://developer.apple.com/library/mac/documentation/MacOSX/Conceptual/BPFrameworks/Concepts/FrameworkAnatomy.html Task-number: QTBUG-32895 Change-Id: I3c3a38c72ba18de6e48b20f2662341672022a274 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
| * write 'all' target laterOswald Buddenhagen2014-10-011-13/+10
| | | | | | | | | | | | | | this allows us to extend its dependencies, which we will make use of later. Change-Id: I8809bdffb435455338e88e97049b10beeab0468a Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* | Doc: Use title case in section1 titlesNico Vertriest2014-09-301-1/+1
| | | | | | | | | | | | | | | | Using Python script title-cased.py Task-number: QTBUG-41250 Change-Id: I00d3d7a0b30db7304a7904efd6d63abd9a7b493b Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* | vcxproj: fix custom build steps in different build variantsJoerg Bornemann2014-09-292-28/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | There's a comment in VCXProjectWriter::outputFileConfigs that states: "We need to check if the file has any custom build step. If there is one then it has to be included with 'CustomBuild Include'". This patch adds the code to the comment... Task-number: QTBUG-30373 Change-Id: Ibfef3c80630e08c743bfadce299a8b6a0c58411f Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* | introduce VCFilter::findFileJoerg Bornemann2014-09-293-16/+18
| | | | | | | | | | | | | | | | Move common code into a function and exit early from simple search loop. Change-Id: I88d1227653e28badc213fbe4ebe1e2a19f6e5793 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* | remove unused member VCFilter::CustomBuildJoerg Bornemann2014-09-292-16/+0
| | | | | | | | | | Change-Id: I2b57f0ac020ad1b85ffeb76a214b9cf2f48cb6d3 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* | Add a way for qmake + configure to link dynamically to the CRTAndrew Knight2014-09-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | The static CRT, libcpmt.lib, is not shipped with Visual Studio Express for Windows (unlike VS Express for Windows Desktop or Professional versions), causing configure and qmake to fail linking if this is the only VS installed. By removing -MT (which is on by default) and adding $(CFLAGS_CRT) to the compiler line, -MD can be added to the compiler flags via the environment, providing a workaround for the issue. Change-Id: I5613346d60a3a1889c121f04d53b09fbb147fc02 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* | remove pointless initializationsJoerg Bornemann2014-09-252-11/+4
| | | | | | | | | | | | | | | | Those initializations are done by the constructors already. Change-Id: Ife58675e2ba4854ef66c813158cb4ed660f530d1 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* | simplify VCXProjectWriter::outputFileConfig a bitJoerg Bornemann2014-09-252-7/+5
| | | | | | | | | | | | | | | | The fileAdded variable is used to save state between iterations. There's no need for two variables. Change-Id: I8144cf7c7b394255459295b82a7ca808bc3951da Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* | simplify VCXProjectWriter::outputFileConfig a bitJoerg Bornemann2014-09-252-9/+11
| | | | | | | | | | | | | | We don't need the filtername parameter. Change-Id: I653db4a200c83d095520b47e1451dfe59b956d92 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* | remove special handling for the "Deployment Files" filterJoerg Bornemann2014-09-242-6/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Files in "Deployment Files" should be added as static content, which happens to be the fallback in the case where checkDeploymentFiles is false. Also, the calling code expects that an XML tag is added in all cases. This did not happen for the "Resource Files" filter when checkDeploymentFiles was false, which led to unmatched closing tags. This fixes the issue that files added to RESOURCES in different build variants produced invalid vcxproj files. Task-number: QTBUG-30373 Change-Id: Ibb27e67641ba63150938cf826ea1881d182fb841 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* | refactor VCXProjectWriter::outputFileConfigJoerg Bornemann2014-09-242-145/+62
| | | | | | | | | | | | | | | | | | Put common code into a function. Subsequent patches will become easier. Change-Id: I0d549886585d90e4701a2430503bc0d2d716e341 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* | uncopy & -pastify codeJoerg Bornemann2014-09-243-128/+32
| | | | | | | | | | | | | | | | Make use of the mythical C++ feature "function" to soothe the brain ache of anyone who looks into this part of the code. Change-Id: I740e29f1777d91d3b34a61fa62a5c23c222334b9 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* | Update license headers and add new license filesMatti Paaso2014-09-2459-1114/+642
| | | | | | | | | | | | | | | | | | - Renamed LICENSE.LGPL to LICENSE.LGPLv21 - Added LICENSE.LGPLv3 - Removed LICENSE.GPL Change-Id: Iec3406e3eb3f133be549092015cefe33d259a3f2 Reviewed-by: Iikka Eklund <iikka.eklund@digia.com>
* | Xcode generator: always create 'Copy Bundle Resources' phaseRichard Moe Gustavsen2014-09-201-11/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If creating an asset catalog from Xcode, Xcode will add it to the "Copy Bundle Reources" phase, if it exists. Since we don't always generate that phase, Xcode will silently fail with the result that the asset catalog will not take effect (no icon, launch images etc). This patch will ensure that we always create the phase (like native Xcode project does), which will fix the problem. Change-Id: Ief949d63543977f1021db992e0c41714d898e68b Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* | make it possible to suppress warnings of the vcxproj generatorJoerg Bornemann2014-09-173-2/+18
| | | | | | | | | | | | | | | | | | | | When the user adds a compiler option that qmake doesn't understand, a warning message is printed. One can suppress these warnings now by adding CONFIG+=suppress_vcproj_warnings to the project file. Task-number: QTBUG-37520 Change-Id: Ieb7ad2c900329e76636047dff85824ea0456f608 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* | add missing DefaultLanguage property for WinRT projectsJoerg Bornemann2014-09-151-1/+2
| | | | | | | | | | | | | | Task-number: QTBUG-37628 Change-Id: I7cce0641b8958fe1d97ace21cb5392e32a067649 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
* | Doc: Fixed broken links introduced by "OS X" doc change.Jerome Pasion2014-09-111-22/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | -qtdoc repo uses "OS X" instead of "Mac OS X" and this caused broken links. -more comprehensive change still needs to be done but the new name is used in the page to maintain consistency. At least within the page or class. Change-Id: I8a5650046fc0413cbb18359b743ecd30fd62e417 Task-number: QTBUG-40759 Reviewed-by: Martin Smith <martin.smith@digia.com> Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* | qmake: Add QMAKE_SONAME_PREFIX variableAdam Strzelecki2014-09-083-0/+52
| | | | | | | | | | | | | | | | | | | | | | If defined, the value of this variable is prepended to the built shared library's SONAME identifier. For more information, see: qmake/doc/src/qmake-manual.qdoc#qmake-soname-prefix Task-number: QTBUG-31814 Change-Id: I4bceaf0c93162e4fad6bb424af1b82e74d38acdc Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
* | qmake: Don't make rpaths starting with @ or $ absoluteAdam Strzelecki2014-08-091-4/+6
| | | | | | | | | | | | | | | | | | | | | | Defaults qmake behavior is to make all project RPATHDIR paths absolute prior passing them to linker. We need to make an exception for paths starting with @ such as @executable_path (Apple platforms) or $ such as $ORIGIN (Linux). Task-number: QTBUG-31814 Change-Id: Ie9887c0046c5030c4128dda945b491a5d389ba34 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
* | Fix compilation after qstringlist.h stopped including qdatastream.hThiago Macieira2014-08-081-0/+1
| | | | | | | | | | Change-Id: Ida09e794262dce78cd5169aac56b610fabc9082c Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* | Xcode: Reference files by absolute path, and name them by basename onlyTor Arne Vestbø2014-07-312-24/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Xcode uses project and group relative file paths, but to keep things simple for ourselves we use absolute paths everywhere. We now make an effort to actually make these paths absolute before telling Xcode they are. We also make the visual representation of the files inside Xcode be just the filename, not the full path, like Xcode itself does. This is among other things a prerequisite for Xcode to stop complaining about missing launch images for retina 4-inch screens. Change-Id: I5ff6bf07f61888e3c9fe2f64cbc2beb896b8442d Reviewed-by: Andy Shaw <andy.shaw@digia.com>
* | Merge "Merge remote-tracking branch 'origin/5.3' into dev" into refs/staging/devFrederik Gladhorn2014-07-301-0/+12
|\ \
| * | Merge remote-tracking branch 'origin/5.3' into devFrederik Gladhorn2014-07-291-0/+12
| |\| | | | | | | | | | | | | | | | | | | Conflicts: src/network/ssl/qsslsocket_openssl_symbols.cpp Change-Id: Ic62419fa1fee5f4de6c372459d72e6e16f9a810b
| | * qmake: Document the "aux" template type.Christian Kandeler2014-07-251-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | Better late than never. Change-Id: If3bbeb4dfe3a8d49ceb02d9c2d0f2eff71595105 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* | | Xcode: Don't show QMAKE_INTERNAL_INCLUDED_FILES from Qt (prf/pri)Tor Arne Vestbø2014-07-301-2/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We build "Supporting Files" out of QMAKE_INTERNAL_INCLUDED_FILES, which is really not supposed to be exposed to the user like that, but since the variable will hold user-included pri files eg., the Xcode generator piggy-backs on this variable to list the files. To make the project view in Xcode a bit cleaner we explicitly exclude any file living inside the Qt directory, meaning we won't show all the pri and prf files from Qt's mkspecs directory anymore. Change-Id: I828700aceac5fdf3ea2b27d9ba3885543c2ad137 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* | | Doc: remove old FORMS3 snippetJoerg Bornemann2014-07-301-8/+1
| | | | | | | | | | | | | | | Change-Id: Ibb39c85facfbe8604e4b8a47525eb2c6babd2716 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* | | remove FORMS3 support from VS project generatorJoerg Bornemann2014-07-301-4/+0
| | | | | | | | | | | | | | | Change-Id: I3b2ce386a66c9635e62d1a729c75284d223c3423 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* | | add priority sorting to $$resolve_depends()Oswald Buddenhagen2014-07-302-14/+21
| | | | | | | | | | | | | | | | | | | | | | | | all else being equal, items with a higher numerical priority will appear first in the result. Change-Id: I4ee37ff404a53c4152a1e4fc2fc3c23ef525234d Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* | | remove pointless 'group' parameterOswald Buddenhagen2014-07-301-4/+4
| | | | | | | | | | | | | | | | | | | | | the c'tor always determines the group itself anyway. Change-Id: Ia8f1e747aaefdab164beae34851aa99cec9b790a Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>