summaryrefslogtreecommitdiffstats
path: root/qmake/generators
Commit message (Collapse)AuthorAgeFilesLines
...
* | fix conditional nesting botch-up in RES_FILE constructionOswald Buddenhagen2015-02-051-6/+6
| | | | | | | | | | | | | | | | it makes no sense to test for OBJECTS_DIR emptiness when we are going to use DESTDIR instead. Change-Id: I0f7115fc8a9fe2a996417d5f50bd0165773129fa Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | don't resolve DESTDIR against source dir in RES_FILE constructionOswald Buddenhagen2015-02-051-1/+1
| | | | | | | | | | | | | | that makes no sense at all. and OBJECTS_DIR is not resolved, either. Change-Id: Ie76b9de6bb11ae42945255f2e168943066d2f60d Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | don't fail to normalize RES_FILE for no apparent reasonOswald Buddenhagen2015-02-051-1/+1
| | | | | | | | | | Change-Id: I43d2e45a2743cd8d78229b5ae2bd5f63d92d74f8 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | prune pointless INCLUDEPATH fixingOswald Buddenhagen2015-02-041-5/+0
| | | | | | | | | | | | | | | | MakefileGenerator::init() fixifies the variable, so there is no point in the windows generator adjusting path separators as well. Change-Id: I9331631125ee16ce4d64e38153f3c67f2f78b16b Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | fix versioned lib lookup with normalized full pathsOswald Buddenhagen2015-02-041-1/+1
| | | | | | | | | | | | | | | | this is admittedly a rather improbable use case, so unlikely to have any real world effect. Change-Id: If98f0de90043525f0555f8ddf98f8b4352e5a0a7 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | don't re-implement QDir::mkpath()Oswald Buddenhagen2015-02-041-35/+1
| | | | | | | | | | Change-Id: Ic5cd5d3048c19047f22641698acbf678301d366e Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | rename fileVarGlue() => fixFileVarGlue()Oswald Buddenhagen2015-02-042-4/+4
| | | | | | | | | | | | | | ... because it also fixes the path, and we'll need the "plain" name later. Change-Id: I86da8f53e44a68005c413c4b78b1b1682746e22e Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | xcode: remove special treatment of YACCSOURCES and LEXSOURCESOswald Buddenhagen2015-02-041-23/+2
| | | | | | | | | | | | | | | | | | | | we (supposedly) fully support QMAKE_EXTRA_COMPILERS, so there is no need for any special casing here. Change-Id: I4e9d389320a3e5ad0acbf73823ff1e6f7b9c370f Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | inline initOld()Oswald Buddenhagen2015-02-022-40/+35
| | | | | | | | | | | | | | the separation serves no purpose except confusing. Change-Id: I6a0d04b2162a4eee7a200345e94baa272120ea5b Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | inline outputVariables()Oswald Buddenhagen2015-02-022-13/+7
| | | | | | | | | | | | | | it's debugging code which is used only once (if even uncommented). Change-Id: Ie57347017dd24f4acecff2a7132f82898dea3122 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | prune dead fixFilename() functionOswald Buddenhagen2015-02-022-17/+0
| | | | | | | | | | Change-Id: I84bafecccec286094701874b2780b45d08797524 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | prune dead fixifySpecdir() functionOswald Buddenhagen2015-02-022-8/+0
| | | | | | | | | | Change-Id: I3bc7f8de86213b1e1d99bdb2749589dbe3851eee Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | prune pointless assignments of QString::replace() and remove() resultsOswald Buddenhagen2015-02-026-31/+27
| | | | | | | | | | | | | | they operate in-place. Change-Id: Iab6f2f6a9f6f67b9d70feb77ec719e424909022d Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | optimize filePrefixRoot()Oswald Buddenhagen2015-02-021-4/+6
| | | | | | | | | | | | | | more efficient use of string functions. Change-Id: I3d95d6379eaab025b18449b706f93631a2132aad Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | remove dead variablesOswald Buddenhagen2015-02-023-6/+1
| | | | | | | | | | Change-Id: I6c48a2e64027c432a87767782669c30a8876b0d6 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | remove pointless fixForOutput() callOswald Buddenhagen2015-02-021-1/+0
| | | | | | | | | | | | | | | | | | | | the path is processed, and afterwards fixForOutput()ed again. the first call makes no sense (even if it registered some variables that are gone in the second call, that would be pointless exactly because they are gone). Change-Id: I251f1e4858bec36f3a7a9427c2ba78031b35a2d3 Reviewed-by: Andy Shaw <andy.shaw@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | remove bogus path fixingOswald Buddenhagen2015-02-022-6/+6
| | | | | | | | | | | | | | commands come already fully expanded and quoted from the project. Change-Id: I239d5c305f5f65d32c832bc09bfd1c322051e149 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | prune vestiges of IMAGES and QMAKE_IMAGE_COLLECTIONOswald Buddenhagen2015-02-026-19/+2
| | | | | | | | | | | | | | | | this stuff apparently pre-dates rcc. Change-Id: Iaa58419476c3d20e2801e91dc1881880c741fdc6 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | remove QMAKE_FAILED_REQUIREMENTS optimization from unix generatorOswald Buddenhagen2015-02-021-3/+0
| | | | | | | | | | | | | | | | no other generator does it. if it actually buys anything, it should be re-instantiated differently. Change-Id: I8431702ac7d558d65fd28a7f9e36bb49db2eb253 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | make fallback handling for QMAKE_BUNDLE_EXTENSION saneOswald Buddenhagen2015-02-021-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | the logic was such that if the bundle name already had the specified extension which was not the default extension, the default extension would be appended, too. i don't think that was the intention ... now we simply put the default into QMAKE_BUNDLE_EXTENSION if its empty - the variable is not used anywhere else where it would be expected to preserve its emptiness, so this is safe. Change-Id: Ied34d10f9fe60756bddc0037dcb2f1d3bbfd3e12 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | values(foo).first() => first(foo)Oswald Buddenhagen2015-02-025-35/+31
| | | | | | | | | | Change-Id: Ic5bb8ae3166c76299881970f83d20206bec704bc Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | remove weird qt_dll hackOswald Buddenhagen2015-02-021-4/+0
| | | | | | | | | | | | | | there is no reference to it anywhere. Change-Id: I72403be6c8294d9b2e64075ebd428eba24d97097 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | don't verify compilers twiceOswald Buddenhagen2015-02-021-2/+1
| | | | | | | | | | Change-Id: Iad214f8a14c29b633752935e31125a6f4b512f4b Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | remove pointless double initialization guardsOswald Buddenhagen2015-02-0213-36/+7
| | | | | | | | | | | | | | this isn't some fuzzy logic, the call sequence is well determined. Change-Id: I1696b49ed687da83d2969efcfe23ac6565630020 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | nuke gbuild generatorOswald Buddenhagen2015-02-023-498/+0
| | | | | | | | | | | | | | | | | | it never left the rudimentary stage. should it ever be re-added, it needs to be done basically from scratch anyway. Change-Id: I76858c8a2c90235f228f7a6e5a178a10a2669d37 Reviewed-by: Rolland Dudemaine <rolland@ghs.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | avoid direct use of QLibraryInfo as much as possibleOswald Buddenhagen2015-02-023-6/+4
| | | | | | | | | | Change-Id: Ic1f5f5167181b15bc67bf4c6a1001532d0058b45 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | turn off nmake inference rule generation on detected conflictsJoerg Bornemann2015-01-282-6/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When there are source files with the same file name in different directories of the project, then nmake's inference rules might pick up the wrong source file. Note that this even happens when only one of those files is in SOURCES. The existence of conflicting file names is enough to cause hard-to-find build failures. The usual work-around for this situation is CONFIG+=no_batch. This is now done automatically when a conflict situation is detected and a warning message is printed. Task-number: QTBUG-13496 Change-Id: Icd81027407d3d489dbc50231e5ed8bcb91f8d2bc Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.4' into devFrederik Gladhorn2015-01-216-43/+31
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/global/global.pri src/corelib/global/qcompilerdetection.h src/corelib/global/qglobal.h src/corelib/tools/qdatetime.cpp src/plugins/platforms/xcb/qxcbscreen.h src/plugins/platforms/xcb/qxcbwindow.h src/widgets/dialogs/qcolordialog.cpp src/widgets/dialogs/qcolordialog_p.h tools/configure/configureapp.cpp Change-Id: Ie9d6e9df13e570da0a90a67745a0d05f46c532af
| * centralize/unify/sanitize INCLUDEPATH "enrichment"Oswald Buddenhagen2015-01-116-30/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | instead of having each generator do its own magic (little surprisingly, with different outcomes), add "stuff" to the search path in one place used by all generators. this has several consequences: - (unless disabled via CONFIG+=no_include_pwd) $$PWD is now consistently prepended by all generators. most notably, this was entirely missing from the MSVC generators (both nmake and VS) - despite them needing it most. this also affects Xcode projects. - $$OUT_PWD (if different from $$PWD) is now added right after $$PWD, not at the end. this precedence clarification only makes sense, given that qmake tries to make shadow builds as transparent as possible. - the qmakespec's dir is now consistently appended. the UNIX and PBX generators prepended it, while the rest already appended. few files actually include qplatformdefs.h, so having it late in the search path seems reasonable. - the effect of CONFIG+=depend_includepath is now fully consistent with the actual include path. Change-Id: I5f7570183351ade29342ea74fef706a0738842bf Reviewed-by: Simon Hausmann <simon.hausmann@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * remove pointless pwd fallbacksOswald Buddenhagen2015-01-114-8/+0
| | | | | | | | | | | | | | | | neither qmake_getpwd()'s return value nor a fileFixify()'d version of it can be empty. Change-Id: Ic3b7d20becc57209b9dbe71ad9dc8e7547d435b1 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * fix file separators in 'clean' targetsOswald Buddenhagen2015-01-091-2/+3
| | | | | | | | | | | | Task-number: QTBUG-39690 Change-Id: Ibbed847258a3a7e21d6d10b9400af0001d10c6f8 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
| * fix distclean for dynamic libraries againOswald Buddenhagen2015-01-091-3/+4
| | | | | | | | | | | | Task-number: QTBUG-40264 Change-Id: I1d28d2ef96c5c53274ca21c0ea3f416f0d9628dd Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | remove dead codeJoerg Bornemann2015-01-131-17/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In ancient times, the existence of QMAKE_RUN_CXX_IMP determined the use of implicit rules. The code path for implicit rules was turned off in 2006 (0287fe3c), which probably was a refactoring artifact. Later, implicit rules were enabled again using a different approach. These days, the non-existence of QMAKE_RUN_CXX determines the use of implicit rules. We remove the dead code path now and rely on the latter condition. One part of the dead code is a feature that turns off inference rules if the OBJECTS_DIR is set or source file names do not match expectations. If somebody ever missed this, it has been reimplemented otherwise. Or not. Change-Id: If3ce9904d9c1df6e4048c58c2452854cce7fa206 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | use QSet<T> instead of QHash<T, void*>Joerg Bornemann2015-01-131-10/+10
| | | | | | | | | | Change-Id: Ifdc4d7c8e5fcb86834b2ee2c9db73decfffb4ff6 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | remove unsupported winrt mkspecsAndrew Knight2014-12-166-109/+10
| | | | | | | | | | | | | | | | | | These mkspecs are not supported and no longer compile. Related support in qmake has also been removed. Change-Id: I7706dcfa5471e55e2ae3d580d65e9371e2c652d5 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com> Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.4' into devSimon Hausmann2014-12-102-1/+17
|\| | | | | | | | | | | | | | | Conflicts: doc/global/template/style/online.css mkspecs/android-g++/qmake.conf Change-Id: Ib39ea7bd42f5ae12e82a3bc59a66787a16bdfc61
| * qmake: Add .qmake.stash/super to QMAKE_DISTCLEAN when owned by projectTor Arne Vestbø2014-12-031-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | Running 'make distclean' should remove all files generated by qmake, including .qmake.stash/super. These files are considered owned by a particular project (and hence a candidate for distclean), if it lives in the same directory as the output dir of the project. Task-number: QTBUG-42678 Change-Id: I224e9bac039eeacb6561e18acc7f8e867da5dab8 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
| * fix rc compilation in vcxproj filesJoerg Bornemann2014-12-021-1/+1
| | | | | | | | | | | | | | | | | | | | We don't need to modify ResourceOutputFileName. The default is fine, and $(InputName) evaluates to nothing in VS >= 2010. Change-Id: Ib203d36261e1b5449c5a139b1950bd0d66197297 Task-number: QTBUG-43026 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Andy Shaw <andy.shaw@digia.com>
* | Handling of qmake variable defining the manifest file on MinGWEric Lemanissier2014-12-094-2/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Windows, the application manifest file can be linked with the executable, to specify for example the requested privileges of the application. On MSVC nmake, the manifest is already handled in NmakeMakefileGenerator::writeBuildRulesPart, but it is not compatible with MinGW. On MinGW, this manifest file has to be referenced in the Rc File. This patch simply handles the existing variable "QMAKE_MANIFEST" which defines the appropriate line RT_MANIFEST in the RC file. Task-number: QTBUG-42454 Change-Id: I921606e002ffe3801c537f30ac2365891f97d5c9 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.4' into devFrederik Gladhorn2014-11-243-33/+64
|\| | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/io/qiodevice.cpp src/plugins/bearer/linux_common/qofonoservice_linux.cpp src/plugins/bearer/linux_common/qofonoservice_linux_p.h src/plugins/platforms/android/qandroidplatformtheme.cpp src/tools/bootstrap/bootstrap.pro src/widgets/styles/qmacstyle_mac.mm Change-Id: Ia02aab6c4598ce74e9c30bb4666d5e2ef000f99b
| * Add the custom build step for PCH generated through sourceAndy Shaw2014-11-131-2/+2
| | | | | | | | | | | | | | | | | | | | This fixes a regression introduced by 04d3a89e20d49a3b5015b071bfdedc81973b090c as it left out the custom build step for the source code file generated for PCH. Task-number: QTBUG-42596 Change-Id: I53d5a36b842dcffbde2657910e6a96dca0e99c7b Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
| * Xcode: Make sure QMAKE_PRE_LINK dependencies are complete for multi-arch buildsTor Arne Vestbø2014-11-121-2/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With multi-architecture builds and ONLY_ACTIVE_ARCH set to NO, Xcode will build the final target for multiple architectures at the same time, but CURRENT_ARCH will only match one of them, so we failed to set up the right dependencies for our pre-link step, causing the step to happen after linking in some cases. We now build an exhaustive dependency list based on QMAKE_XCODE_ARCHS, so that ONLY_ACTIVE_ARCH=NO can be used for release builds targeted at the App Store. Change-Id: I6702f020a6970807adc624779f6dde09be62beb9 Reviewed-by: Andy Shaw <andy.shaw@digia.com>
| * Add CFBundleIdentifier to the bundle Info.plist'sMorten Johan Sørvig2014-11-101-9/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Refactor the current app CFBundleIdentifier support: handle frameworks as well. Add @BUNDLEIDENTIFIER@ placeholder to the OS X info.plist.lib templates. This means the Qt frameworks will now get a valid CFBundleIdentifier entry the same way as app bundles: by extracting the identifier prefix from Xcode settings and appending framework name. Task-number: QTBUG-32896 Change-Id: Ica8f28332a88e37a823c46fca7a2c373157af020 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
| * 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>
| * 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>
* | | Merge remote-tracking branch 'origin/5.4' into devFrederik Gladhorn2014-10-275-8/+37
|\| | | | | | | | | | | | | | | | | | | | Conflicts: src/gui/text/qfontdatabase.cpp Change-Id: I6ac1f55faa22b8e7b591386fb67f0333d0ea443d
| * | 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>
* | | fix PRECOMPILED_SOURCE regression in vc(x)projsJoerg Bornemann2014-10-172-4/+7
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit af760349 in Qt4 broke the possibility of having a PRECOMPILED_SOURCE in a different directory than the PRECOMPILED_HEADER. Do not write the PrecompiledHeaderThrough value for the PRECOMPILED_SOURCE, but use the project default. The msbuild code path needed adjustments to write the UsePrecompiledHeader value, even if PrecompiledHeaderThrough is empty. Task-number: QTBUG-41917 Change-Id: I74e621f6618cf056e3967c99a2215f76c346b9ee Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>