summaryrefslogtreecommitdiffstats
path: root/mkspecs/features/exclusive_builds.prf
Commit message (Collapse)AuthorAgeFilesLines
* Fix duplicates in QMAKE_DIR_REPLACEJoerg Bornemann2019-07-101-3/+6
| | | | | | | | | | | | | | | | | | | | When building Qt, qt_build_config.prf adds all directory variables but DESTDIR to QMAKE_DIR_REPLACE_SANE. We must not add the content of QMAKE_DIR_REPLACE_SANE unconditionally to QMAKE_DIR_REPLACE in order to avoid duplicate entries. Duplicate entries result in an interesting build folder structure like .obj ├───debug │ └───debug └───release └───release This commit amends 274882a5. Change-Id: Ifa8178410d82f58635babc46d43774bab522fbf8 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* Fix parallel lex/yacc invocation for debug_and_release buildsJoerg Bornemann2019-06-061-1/+1
| | | | | | | | | | | | | | | | [ChangeLog][qmake] Introduced the variables LEX_DIR and YACC_DIR which determine the location of lex/yacc output. Fixed parallel execution of lex/yacc for debug_and_release builds. Fixes: QTBUG-65730 Change-Id: I68c8260a95609e11bb5205a91aff2c098ed7009c Reviewed-by: Kai Koehne <kai.koehne@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* De-duplicate elements of QMAKE_DIR_REPLACE[_SANE]Joerg Bornemann2019-06-061-1/+1
| | | | | | | | | | | | | | Elements that appear in QMAKE_DIR_REPLACE_SANE must appear in QMAKE_DIR_REPLACE to be considered due to the algorithm used in exclusive_builds_post.prf. Change-Id: Ibce7e6c988b3e8a141075890a2f547eb34090b3a Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* qmake: Add support for running lreleaseKai Koehne2018-07-281-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CONFIG+=lrelease enables that all .ts files in TRANSLATIONS or EXTRA_TRANSLATIONS are compiled by lrelease. EXTRA_TRANSLATIONS is a new variable that is only processed by lrelease, but not lupdate - this is useful for translation files that are supposed to be empty, because they match the language of the original translation sources. If embed_translations is also set, the generated .qm files will be made available through the Qt resource system under :/i18n/. Alternatively, the user can specify an installation target by setting QM_FILES_INSTALL_PATH. Note that relative paths in TRANSLATIONS are not taken into account. That is, TRANSLATIONS = component1/de.ts component2/de.ts will cause a conflict. [ChangeLog][qmake] New CONFIG options lrelease and embed_translations were added. CONFIG+=lrelease does run lrelease on translation files listed in TRANSLATIONS and EXTRA_TRANSLATIONS. CONFIG+=embed_translations does include the generated .qm files as resources under :/i18n/. Change-Id: I94db5b8431d07b24f59b2c332ede91450f9c0c58 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* Fix debug_and_release builds with CONFIG += qtquickcompilerSimon Hausmann2018-03-291-2/+2
| | | | | | | | | | | | For correct debug/ and release/ suffix substitution and thus avoid concurrent access to generated files, we have to declare the output directory variable used by qtquickcompiler.prf in qtdeclarative here and enable it for substitution. Change-Id: Id8483daffdf1b9990396c55f7bc0d08a2f65cafd Task-number: QTBUG-66675 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* Support for LTTNG and ETW tracingRafael Roquetto2018-01-281-2/+2
| | | | | | | | | | This commit introduces minimal support for instrumentation within Qt. Currently, only LTTNG/Linux and ETW/Windows are supported. Change-Id: I59b48cf83acf5532a998bb493e6379e9177e14c8 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* fix xcodebuilds without -sdk iphonesimulatorOswald Buddenhagen2016-10-141-7/+11
| | | | | | | | | | | | | | | | the order of the arguments passed to addExclusiveBuilds() determines the name of the CONFIG flag which actually enables the mode. that is historically fixed to iphonesimulator_and_iphoneos and we cannot just change the order. to get around this, add a new "overload" of the function which allows specifying the flag independently from the order of the builds, and make use of it in ios' resolve_config.prf. amends d2b4a789c. Change-Id: Ia3fabea0c0c30beae680b57e75bdcdf35ef6503d Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* Add qgltf support to qmakeAndy Nichols2015-10-261-1/+2
| | | | | | | | | | | | qgltf is a tool provided by the Qt3D module that enables 3D assets to be defined in qmake project files, and have them converted to an efficient binary format at build time. The qmake feature will convert all 3D assets specified by the QT3D_MODELS variable to the qgltf format and add the new model asset to the project as a Qt resource file. Change-Id: If7250d6f23a06254b1ed0e408057723763aad8c8 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* Rewrite qmake's exclusive-build featureTor Arne Vestbø2013-10-251-82/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We used to compute the default exclusive build directory, eg 'debug', at configure time, and then set OBJECTS_DIR, MOC_DIR, etc to include this hard-coded default exclusive build directory. We then had to run a post- process step where we replaced the 'debug' part with the current actual exclusive build pass, eg 'release', resulting in long-standing bugs such as QTBUG-491 where we end up replacing parts of the build output dirs that were not part of the original exclusive build directory. We now set the OBJECTS_DIR, MOC_DIR, etc defaults in configure like before, but they do not include any exclusive-build information. The exclusive build directory is handled as a separate step in default_post where we adjust all entries in QMAKE_DIR_REPLACE to be exclusive directories. For backwards compatibility the new exclusive build behavior is only enabled for variables named by QMAKE_DIR_REPLACE_SANE, which for Qt itself applies globally to everything but DESTDIR, and for libs and tools also applies to DESTDIR. The reason for leaving out DESTDIR in the general case is because many tests and examples assume the old behavior for DESTDIR. A side effect of including all the other variables for Qt libs and tools is that the PCH output dir will be uniformly set, which has been an issue on Windows in the past. The addExclusiveBuilds function now takes two or more arguments, each argument being the key for an exclusive build, which can be customized eg. using $$key.{name,target,dir_affix}. Passing more than two arguments results in three/four/etc-way exclusive builds, eg debug/release/profile. Exclusive builds can also be combined, eg static/shared + debug/release by making two calls to the function. We also handle individual targets of combined exclusive builds, eg static/shared + debug/release, meaning it is possible to run 'make debug' to build both static-debug and shared-debug. Task-number: QTBUG-491 Change-Id: I02841dbbd065ac07d413dfb45cfcfe4c013674ac Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Include PRECOMPILED_DIR in dirs fixed by fixExclusiveOutputDirs()Tor Arne Vestbø2013-04-031-1/+1
| | | | | | | | | It's written to qmodule.pri by configure with a hard-coded path, and hence need fixing up or appending, depending on which exclusive builds are used. Change-Id: I069c04438dc303868a76349c9bdd385adc074c0a Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* Fix whitespace issues in *.prfAxel Waggershauser2013-03-221-18/+18
| | | | | | | | Replaced tabs with spaces to align with space-indented code and removed some trailing whitespace. Change-Id: I4930afc3df206ef8ee96de3e69f0d69fc4a1c77c Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* remove useless unset()sOswald Buddenhagen2013-02-131-8/+0
| | | | | | | | there is mightily little point in unsetting variables right before unconditionally assigning to them. Change-Id: I24c1814ce38bf9aab4496679b1a670f3cd55c536 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Initial import from the monolithic Qt.Qt by Nokia2011-04-271-0/+100
This is the beginning of revision history for this module. If you want to look at revision history older than this, please refer to the Qt Git wiki for how to use Git history grafting. At the time of writing, this wiki is located here: http://qt.gitorious.org/qt/pages/GitIntroductionWithQt If you have already performed the grafting and you don't see any history beyond this commit, try running "git log" with the "--follow" argument. Branched from the monolithic repo, Qt master branch, at commit 896db169ea224deb96c59ce8af800d019de63f12