summaryrefslogtreecommitdiffstats
path: root/mkspecs/features/resources.prf
Commit message (Collapse)AuthorAgeFilesLines
* features/resources.prf: fix use of unescaped backslashMikkel Krautz2017-01-231-1/+1
| | | | | | | | | | Without this, building a project with qmake -Wall will always produce the following warning: mkspecs/features/resources.prf:22: Unescaped backslashes are deprecated Change-Id: I0aeedbf470958ab458651a263e3f804ea2d1a0f0 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* make use of silent error() emissionOswald Buddenhagen2016-08-081-1/+1
| | | | | | | | get rid of the entirely superfluous stock "Aborting." messages - the event triggering the exit has already reported the problem. Change-Id: Ib9dfb9e4212f60eceb2ea432cdf56c5a8afe9d65 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Merge remote-tracking branch 'origin/5.6' into 5.7Edward Welbourne2016-07-151-1/+1
|\ | | | | | | | | | | | | | | | | | | | | Conflicts: qmake/library/qmakeevaluator.cpp One side changed the iterator to use ranged-for, the other changed its body; they only conflicted because the latter had to add braces around the body, intruding on the for-line. Trivial resolution. Change-Id: Ib487bc3bd6e3c5225db15f94b9a8f6caaa33456b
| * generalize references to exclusive buildsOswald Buddenhagen2016-07-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | exclusive_builds_post.prf (via default_post.prf) processes debug_and_release into BUILDS, so .prfs which can rely on being executed later (because they are loaded via CONFIG) can rely on BUILDS and related variables. Change-Id: I5677079ad5145bf493af17b4b60347208572fd21 Reviewed-by: Jake Petroules <jake.petroules@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
| * support specifying directories in RESOURCESOswald Buddenhagen2016-02-011-3/+9
| | | | | | | | | | | | | | Change-Id: Ie97b26dd8ccf33d7f2a72bc6a5aec478b196ebb6 Reviewed-by: Rainer Keller <rainer.keller@theqtcompany.com> Reviewed-by: hjk <hjk@theqtcompany.com> (cherry picked from commit 4b224816aa2902e10835a560d14e305cfdc32bac)
* | don't override user-provided dependencies for our extra compilersOswald Buddenhagen2016-06-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | while the names of the compilers are actually an undocumented internal, we don't provide an actually working proper way to sequence extra compiler execution with build-time generated inputs when they are indirectly listed (as via .qrc files). Task-number: QTBUG-54299 Change-Id: I269c26512897b72706dc8b769aa47e8157c2a5c5 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | make extra compiler targets depend on their respective compilerOswald Buddenhagen2016-04-181-0/+1
| | | | | | | | | | Change-Id: I6c04e0188137f6bbfeab243f00860b8ff079f69a Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | support specifying directories in RESOURCESOswald Buddenhagen2015-09-111-3/+9
|/ | | | | | Change-Id: Ie97b26dd8ccf33d7f2a72bc6a5aec478b196ebb6 Reviewed-by: Rainer Keller <rainer.keller@theqtcompany.com> Reviewed-by: hjk <hjk@theqtcompany.com>
* Allow RESOURCES to contain standalone files and collections of filesTor Arne Vestbø2015-05-181-0/+60
| | | | | | | | | | | Standalone files are added by using RESOURCES += file.txt, while collections of files are defined as collection.files = f1.txt f2.txt and then added using RESOURCES += collection. For collections a prefix can also be set using collection.prefix = /foo. The standalone files are not prefixed. Change-Id: I8236808238414da05e744f799a1bb15a72f4a46f Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
* rcc: Change two-pass feature from opt-out to opt-inhjk2014-11-151-1/+1
| | | | | | | | | | | | | | | | This makes the 'big-data' feature introduced and made mandatory with commit 5395180 opt-in trough CONFIG += resources_big. Since the feature has been introduced several setups have been found where the feature cannot be used, or not be used out-of-the-box. Using the traditional default behavior lowers the risk of further breakages. Change-Id: Ifd04204adadeec539e962d6a9a6955f63781bd36 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Fawzi Mohamed <fawzi.mohamed@theqtcompany.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com>
* turn off multi-pass RCC for Visual Studio projectsJoerg Bornemann2014-07-291-1/+1
| | | | | | | | | | | | For multi-pass RCC qmake generates broken VS project files, because the RCC extra compiler directly calls the C++ compiler on a generated source file. Adding this call to a VS project file will bypass any project settings. Also, the VS project generator is not prepared to add extra compilers that generate object files. Task-number: QTBUG-39685 Change-Id: I1bcaad8936be8371d596f29ed8952888ba95f7b2 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* resoureces.prf: use small resources (though cpp file) for xcodeFawzi Mohamed2014-07-211-1/+1
| | | | | | | | | | | currently there isn't a clean solution yet to support object files or architecture specific files during the preprocess step when using the xcode generator. This fixes ios resources (but will break with large resources). Task-number: QTBUG-39835 Change-Id: If620ab0c3b5c1f92db8f7b4740061c807730db57 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* "Beautify" the two-pass RCC executionThiago Macieira2014-07-201-0/+1
| | | | | | | Use newlines in the Makefile for multiple commands. Change-Id: If03617343ccf7e525ffdc27ad9df55718c63d77f Reviewed-by: hjk <hjk121@nokiamail.com>
* Disable the new multipass RCC when doing LTCG/LTOThiago Macieira2014-07-021-1/+1
| | | | | | | | | | | | | | | | | When LTCG/LTO is enabled, the link-time compilation will not use the data in the object file, but instead the precompiled data in a separate section, which is still blank and may not be recognizable by rcc's second pass. That would result in all resource data being nulls -- and the best case scenario out of that is that QResource concludes that there is no resource (it could be worse). That happens with GCC 4.8's GIMPLE intermediate format: a fat .o file containing GIMPLE would be modified by rcc but GCC would not use the modified data at the link stage, whereas a non-fat .o file would not be recognized at all by rcc and the compilation would abort. Change-Id: I78ccbfd77ceaa723f22a4f82b5b4d6536a80d65d Reviewed-by: hjk <hjk121@nokiamail.com>
* RCC: (Re-)introduce a way to build resources in one gohjk2014-06-291-4/+16
| | | | | | | | | | | | This is essentially an opt-out using CONFIG += resources_small for the 'big-data' feature introduced and made mandatory with commit 5395180. This is currently not active in any configuration, but can be used when the two-pass approach is neither needed nor wanted. Change-Id: I6d4f663843e629da6f39ac4da5e77d39c58b3ddf Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Make RCC handle bigger binarieshjk2014-06-061-5/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | Traditionally, RCC in "C mode" was meant to bundle small resources into a binary, like help texts or an occasional icon. RCC produces a .cpp file containing the actual data in a char array which is then passed to the compiler and linker as a normal source file. Larger resources should be compiled in RCC's binary mode and loaded at run time. Current Qt Quick use tries to deploy large hunks of data in "C mode", causing heavy compiler/system load. This patch works around the issue by splitting the process into three parts: 1. Create a C++ skeleton, as usual, but use a placeholder array with "easily compilable" (mostly NULs) data instead. 2. Compile the skeleton file. 3. Replace the placeholder data with the real binary data. time (qmake5 ; make clean ; make) takes 1.3 s real time for a 100 MB resource here, and there is still room for improving patching performance if really needed. Change-Id: I10a1645fd86a95a7d5663c89e19b05cb3b43ed1b Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* RCC: Remove support for CONFIG += resource_combinehjk2014-05-271-14/+3
| | | | | | | | We don't use it and it was never documented. Search engine hits only point to this occurrence in the Qt sources. Change-Id: I2dd7adc5438893560daf01ac85620d9f9c028982 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* fix rcc & uic .depend_commandsOswald Buddenhagen2013-06-151-2/+2
| | | | | | | | | | unlike the .command, the .depend_command is not executed by make via its chosen shell, but qmake itself via the system's native shell. consequently, it needs different path separators and no make-escaping. Task-number: QTBUG-31289 Change-Id: I480f815753632db6e8d4725f463f8a1fc59680a6 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* remove overquoting of extra compiler argumentsOswald Buddenhagen2013-06-121-3/+3
| | | | | | | qmake automatically escapes the ${expandos}. Change-Id: If74b6d2f2c68ff50785fdcbb66351122a273051f Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* remove overquoting of extra compiler commandsOswald Buddenhagen2013-06-121-2/+2
| | | | | | | the commands are already quoted appropriately for the shell. Change-Id: I746bb5fba2cd6548c5dc7ef81087c69a200ecbb8 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* remove another dead assignmentOswald Buddenhagen2012-12-071-1/+0
| | | | | Change-Id: I79ffdba571b48def4494b018b2a2abdee8aab0a8 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* move moc, rcc and uic CONFIG additions to the respective qt modulesOswald Buddenhagen2012-06-191-1/+0
| | | | | | | they don't belong into the global scope Change-Id: I27a3de5f706392b3c4a84035521bc3b4e4055740 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* qmake: Allow extra compilers to have the makefile depend on its inputsTor Arne Vestbø2011-11-281-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | And enable this configuration option for the resource compiler. This results in a re-run of qmake whenever you touch a qrc file, which is needed to keep the dependencies up to date. Otherwise you might end up in the situation where you add a file to a qrc, edit the file some time later, but a rebuild does not regenerate a cpp file and compile that, so the final binary is stale. Technically this dependency problem is present for all source files, and qrc files are no different than any cpp file that you add a new header #include to, or adding a Q_OBJECT macro to a header. To pick up these changes we have to re-run qmake, so that qmake can run its internal dependency checking, and any extra compiler dependency commands. The reason we're making this change for rcc files it that conceptually people treat them as a "project" files, and expect them to behave similarly to .pro or .pri files, in that editing the file will invalidate the makefile. In practice this is often what happens when adding new headers, as you touch the project file when changing the HEADERS variable. Task-number: QTBUG-13334 Change-Id: If69149678e7fba6d812d31dcc17877427f9a6122 Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com> Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
* Initial import from the monolithic Qt.Qt by Nokia2011-04-271-0/+29
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