aboutsummaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
| * Fix bug causing --wait-lock to fail if more than 10 tries are attemptedJake Petroules2016-09-061-1/+1
| | | | | | | | | | | | | | This follows up 65cb4cba999b47a643e820a102b3185f861b97c1. Change-Id: I65d7dcf92f7bddc96ea71ed53d909b4dc9a675fe Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
| * Handle ALL include path lists in the cpp dependency scannerJake Petroules2016-09-051-4/+14
| | | | | | | | | | | | | | | | | | This will ensure that source files depending on header files within the search paths listed in systemIncludePaths and compilerIncludePaths will be recompiled when those headers change, as well. Change-Id: I6995fcd533b065505e3eec219294540579a73407 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Don't install static library productsJake Petroules2016-09-082-0/+2
| | | | | | | | | | Change-Id: I09e87843b5df2d7f1f1a7f8fc0558f40ec97fe9a Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Make the project structure of generators consistentJake Petroules2016-09-0880-45/+51
| | | | | | | | | | Change-Id: I4cd8ffc3e0aded0b962b9f12682ec8db08902ced Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Actually fix build with Qt < 5.6Jake Petroules2016-09-062-1/+2
| | | | | | | | | | Change-Id: I275007c4af6fc5c528a620190bf64e4813160944 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Fix build with Qt < 5.6Jake Petroules2016-09-061-2/+9
| | | | | | | | | | Change-Id: I284e8a0a6b517e9bdc365384aa9773f8df17e5fc Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Implement Visual Studio generatorJake Petroules2016-09-0675-1/+5844
| | | | | | | | | | | | | | | | Supports versions 2010 and above. Task-number: QBS-31 Change-Id: I191efa274729060c8e2f392abac2e9f7cd027e39 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Merge 1.6 into masterChristian Kandeler2016-09-054-14/+9
|\| | | | | | | Change-Id: Ica9e01e8dc03fe0d36568a270bbad9b85919c952
| * Remove assertions from command line parserChristian Kandeler2016-09-022-7/+0
| | | | | | | | | | | | | | | | They serve no useful purpose. Task-number: QBS-1015 Change-Id: I6e333250486e76033fe630d1d8cd0aad0aac74a0 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
| * setup-qt: Fix toolchain profile look-upChristian Kandeler2016-09-011-3/+1
| | | | | | | | | | | | | | | | Since commit 87a1478921, we no longer set qbs.architecture in the toolchain profile, but setup-qt still expected it. Change-Id: Id52c087cd91fa08768bf62a4f9d4850d676fe41a Reviewed-by: Kai Koehne <kai.koehne@qt.io>
| * Do not use compiler include paths with moc from Qt 4.8Christian Kandeler2016-08-291-4/+9
| | | | | | | | | | | | | | | | | | This moc is too old to parse certain header files correctly. Task-number: QBS-1004 Task-number: QTCREATORBUG-16798 Change-Id: Ic0c7787112d9ab5d334b62ea5c56014d6cd5892f Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Tests: Fix the type of some values assigned to propertiesChristian Kandeler2016-09-011-2/+2
| | | | | | | | | | | | | | We don't want to rely on implicit conversions. Change-Id: Id4681fb088c05742488cd6b3d937cddfb82ff35c Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Recover from errors in referenced files when in relaxed modeChristian Kandeler2016-08-302-39/+74
| | | | | | | | | | | | | | | | An error in anything but the top-level file should still load the project. This improves the experience of IDE users. Change-Id: I607d2c96c6f51ead840b7f50701c167796af7d42 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Remove invalid assertionChristian Kandeler2016-08-291-3/+1
| | | | | | | | | | | | | | A product's build dir can be empty if the product was force-disabled. Change-Id: Ib999c87ac0586a6de0cd9169f2b75c5270937d45 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Merge "Merge 1.6 into master"Christian Kandeler2016-08-298-21/+21
|\ \
| * | Merge 1.6 into masterChristian Kandeler2016-08-298-21/+21
| |\| | | | | | | | | | Change-Id: If4ec894bc327311eeb41609a5d340a884161fda7
| | * Make sure a product's module properties are never nullChristian Kandeler2016-08-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | That could happen when the product was force-disabled due to module loader errors (in IDE mode), leading to crashes later on. Change-Id: I7b3967cc238bb9e393af48a5ca599fcd410ed0b5 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
| | * Fix file scope for Properties conditionsChristian Kandeler2016-08-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | The file scope must correspond to the file where the Properties item is instantiated, because that's where the imports need to be looked up. Change-Id: Icfc0fd30bd43ee069ec7a4d2ea1a1e9b88560b2d Reviewed-by: Jake Petroules <jake.petroules@qt.io>
| | * More sensible fallback values for "base" & friendsChristian Kandeler2016-08-291-6/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When setting up the values of special properties like "base", "outer" and "original", we replaced invalid and undefined values with an empty array. This is all nice and well for array properties (so that people can write "base.concat()" without checking base first), but quite absurd for scalar properties. So for the latter, the only thing we do now is replace invalid values with undefined ones. The behavior for arrays stays the same. Change-Id: Icb3c74927c84025a07e3ef6c9c67b89d95320632 Reviewed-by: Jake Petroules <jake.petroules@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| | * Do not allow "static" JS extension classes to be instantiatedChristian Kandeler2016-08-264-12/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | Apart from it being weird that people can instantiate them, it also makes us crash. Task-number: QBS-1009 Change-Id: Ic10ab530484df973b569aa5a185c06274ad2fef1 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
| | * Make sure project.minimumQbsVersion is inherited to sub-projectsChristian Kandeler2016-08-261-1/+2
| | | | | | | | | | | | | | | Change-Id: I497df78263c970ef8f33557358cc65b7749eef09 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
| | * Fix ProductData's equality operatorChristian Kandeler2016-08-231-0/+1
| | | | | | | | | | | | | | | Change-Id: Id73f8eaf285f030fb5164b72cf73dacdaccee437 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | | Update license headersIikka Eklund2016-08-294-87/+141
|/ / | | | | | | | | | | | | | | | | | | Patch-set 3 includes rest of the files. Every source file needs to have up-to-date license headers in order to pass ci. Change-Id: I55ed96910b5cb13513f80eb118feafcdaa32e8b0 Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
* | ModuleLoader: Remove redundant data typeChristian Kandeler2016-08-291-12/+6
| | | | | | | | | | Change-Id: I5241e5363a26938f52cc4e9cd2d2c6a8d8fb965a Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Update license headersIikka Eklund2016-08-29177-2463/+4089
| | | | | | | | | | | | | | | | | | | | Patch-set 2 includes *.cpp *.c Every source file needs to have up-to-date license headers in order to pass ci. Change-Id: Ie6e493097af6f7dd6a8adff170eb856f496e689e Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Update license headersIikka Eklund2016-08-29201-2815/+4627
| | | | | | | | | | | | | | | | | | | | Patch-set 1 includes *.h Every source file needs to have up-to-date license headers in order to pass ci. Change-Id: Ib6cf3ac47dfba6dff262fded44bc952aef3bda8b Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Clean up generator codeChristian Kandeler2016-08-234-33/+34
| | | | | | | | | | | | | | | | - Remove unnecessary namespace qualifications. - Add virtual destructor to base class. Change-Id: Ie6ae45c1fb8ef8756b1ddffb58de452e38de1e15 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Fix buildChristian Kandeler2016-08-231-3/+3
| | | | | | | | | | | | | | | | The construct might actually be legal, but older GCC versions do not accept it. Change-Id: Ifaf68f8f550fb0bcc2da8ac420c0858198c5cbbc Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Fix build with MSVCChristian Kandeler2016-08-231-8/+8
| | | | | | | | | | Change-Id: Ice4e529cd79bdd21c91179e7ad0e2036a1a40974 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Introduce FileSaverJake Petroules2016-08-224-0/+152
| | | | | | | | | | | | | | | | | | | | | | This utility class is a wrapper around QSaveFile which *only* writes its output to disk if the written file contents would differ from the existing file contents. This is intended for use by IDE generators which will "write out" generated project files on every build without causing unnecessary reloads due to externally changed project files. Change-Id: Id7abe6d2d98a9199047d090496c359c40c0319cf Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Flesh out generators APIJake Petroules2016-08-2212-73/+700
| | | | | | | | | | | | | | | | This puts in place some of the infrastructure needed by subsequent commits that will introduce the Visual Studio and Xcode generators. Change-Id: Ic8f127acef5c26e26edb7083ebd423848d81a6ff Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | API: Take rescuable artifact data into account for project dataChristian Kandeler2016-08-224-0/+24
| | | | | | | | | | | | | | | | | | Otherwise, information about generated artifacts will temporarily disappear when product build data has been invalidated after project re- resolving, which is annoying for IDE users. Change-Id: Idea2d03fba5a823256e95ce554a2f2f413e3d977 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | API: Fix ProductData's equality operatorChristian Kandeler2016-08-221-1/+1
| | | | | | | | | | Change-Id: I2bf9996c1615961f5158d7efbbc47062e839f6a2 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Add a CommandLine helper class to create quoted command linesJake Petroules2016-08-222-0/+77
| | | | | | | | | | | | | | This will be used by the IDE generators. Change-Id: If8aeca8acfd1872d3ecf63a60279c3a4f6012adf Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Introduce new PathUtils class with a helper functionJake Petroules2016-08-194-0/+63
| | | | | | | | | | Change-Id: I827289f79dc29f71b86ea0f027b6fc1704a207df Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Merge "Merge 1.6 into master"Christian Kandeler2016-08-1910-5/+87
|\ \
| * | Merge 1.6 into masterChristian Kandeler2016-08-1910-5/+87
| |\| | | | | | | | | | Change-Id: Id711e244f207d6c4f08e240ef4c033f344b530fc
| | * Qt.core: Default to C++11 for version 5.7 and abovev1.6.0Christian Kandeler2016-08-191-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | C++11 is required from Qt 5.7 on. Users shouldn't have to enable this manually in all their Qt-based products. Change-Id: I2cdbe393f62c9930cd74f129d0c14c109203425e Reviewed-by: Jake Petroules <jake.petroules@qt.io>
| | * Fix scoping issue for list propertiesChristian Kandeler2016-08-171-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | In the original fix for this issue (e34d268ba9), we forgot to take the "next" values into account. Task-number: QBS-955 Change-Id: Ie955af1b09250d6a3460aeb3ad45bc8b3292c90c Reviewed-by: Jake Petroules <jake.petroules@qt.io>
| | * Improve error message for installing multiple files to the same pathJake Petroules2016-08-171-1/+3
| | | | | | | | | | | | | | | | | | | | | This is frequently a result of omitting a qbs.installSourceBase binding. Change-Id: Ibd723f759967abac80914267ec8876a72997ea31 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
| | * Fix warnings with custom properties in Export itemsChristian Kandeler2016-08-104-0/+27
| | | | | | | | | | | | | | | Change-Id: I6c6497827981868e6b2781ea4fe23309763aacb5 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
| | * Add XFAILing autotest for newly discovered bugChristian Kandeler2016-08-104-0/+47
| | | | | | | | | | | | | | | | | | Task-number: QBS-1005 Change-Id: Id875b2c4656b9e264da77bb6e6b69168dc9493e4 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | | Fix qmake buildChristian Kandeler2016-08-191-0/+5
|/ / | | | | | | | | | | | | Forgot to add .pri file. Change-Id: I2fc5af3e88a3e380e3fb359a4daf42c3d0ab7353 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Check file for existence before creating a SourceArtifact objectChristian Kandeler2016-08-193-28/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - Rather than blindly creating source artifacts and checking afterwards whether the files actually exist, do the check in advance and create the artifact only if the file exists. - Do this also for disabled groups, but print a debug-level message in that case rather than an actual diagnostic. - We no longer disable groups where such non-existing files appear; that was only necessary because the artifacts were created. Task-number: QTCREATORBUG-16733 Change-Id: I57aa09f72ef4839e7428d18c13e3cfe527d58026 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Add generator for Clang compilation databaseChristian Gagneraud2016-08-195-0/+222
| | | | | | | | | | Change-Id: Ia82e2f7bcd93afbca88e7034aeadb0ba8c336458 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Refactor ProjectResolver::createSourceArtifact()Christian Kandeler2016-08-173-20/+15
| | | | | | | | | | | | | | Pass the group, rather than a lot of its members. Change-Id: Idff47282c2704456ef01d7b30bab587e902ec3c3 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Allow to provide deprecation info for module propertiesChristian Kandeler2016-08-164-3/+66
| | | | | | | | | | | | | | | | We already had that for built-in items and their properties, but it's useful for modules too. Change-Id: I227b128ca6ce4471fbf5fdb45dbbd492e2b7f707 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Fix generated artifact listChristian Kandeler2016-08-161-0/+2
| | | | | | | | | | | | | | We used to put all artifacts in there by mistake. Change-Id: Ide8bb46a0f07a549db3eb53055bf3e8acf440360 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Merge 1.6 into masterChristian Kandeler2016-08-097-7/+113
|\| | | | | | | Change-Id: Ic2903bf480a73ff8644ea6f6af2aadb419af40e4
| * Fix Probe cachingChristian Kandeler2016-08-052-6/+8
| | | | | | | | | | | | | | | | | | We have to store a *list* of probe objects per code location. Otherwise, probes with different input properties will overwrite each other. Change-Id: Idde7f3f85b6b515bdbcc4b7cff985127cca508a2 Reviewed-by: Jake Petroules <jake.petroules@qt.io>