aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Fix qbsTargetPlatformFromQtMkspec for mkspecs in subdirectoriesv1.11.0Joerg Bornemann2018-03-271-0/+3
| | | | | | | | | | | | The function qbsTargetPlatformFromQtMkspec failed for mkspecs like "devices/linux-oe-generic-g++". Now we only inspect the part after the last slash. Task-number: QBS-1328 Task-number: QTCREATORBUG-20136 Change-Id: I41cf686bd8eff4235ce86de30afa8730d3696abc Reviewed-by: Eike Ziller <eike.ziller@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Adjust Visual Studio project generator to CLI changesJoerg Bornemann2018-03-221-3/+5
| | | | | | | | Configuration names must be prefixed by "config:". Task-number: QBS-1303 Change-Id: I63636141acdab7cc325378a1696e15842815d003 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* Doc: Add a section about licensingLeena Miettinen2018-03-212-2/+52
| | | | | | | Task-number: QBS-1314 Change-Id: I2cfdf2d826a31523823cec195585725851acd2be Reviewed-by: Kai Koehne <kai.koehne@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Remove top level include path from use_installed_corelib.priKai Koehne2018-03-141-1/+1
| | | | | | | | | | This can confuse e.g. gcc when the top-level include is actually a system directory (/usr/include). Anyway, it is unneeded in the first place: The Qt Creator qbsprojectmanager plugin compiles fine without. Change-Id: I700ae6bad16544726b5a450a6f7a29b67f013219 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* De-duplicate documentation for the use*PrecompiledHeader propertiesChristian Kandeler2018-03-131-25/+4
| | | | | | Change-Id: I91a0fb6d2c203adf39c8c469d96c3b832854f9ca Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
* Make Qt Concurrent dependency optionalKai Koehne2018-03-132-2/+8
| | | | | Change-Id: Ifd7cac3f646ecef2e8b12079771c01af410691bb Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Fix symbolLinkMode autotest on macOSChristian Kandeler2018-03-131-12/+7
| | | | | | | | An expected failure was inadvertantly "fixed" by a5f2a7820f. Disable the run environment setup for this autotest. Change-Id: I34032ae0bdf51e6bc80ac1902df1ab8e31ed1464 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* cpp.setupRunEnvironment: Ignore rpathsChristian Kandeler2018-03-121-7/+0
| | | | | | | | | We did not set any environment *PATH variables if any rpaths were present, which breaks the functionality if some libraries are found via rpaths and others are not. So let's ignore the presence of rpaths. Change-Id: I41d690159a51bb8e38acd83667bff53ad86c3714 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Update changelog fileChristian Kandeler2018-03-121-0/+19
| | | | | | | | Add information about relevant bugfixes and other things that were missing. Change-Id: I6e7177d38b8442ce59f46f7f080575e9781bdabe Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Add LICENSE.GPL3-EXCEPTKai Koehne2018-03-122-0/+705
| | | | | | | This is used in the tests. Change-Id: I9c88c5cc47e4ea9dde88e726fe8dda997656a81f Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Update changelog entryChristian Kandeler2018-03-121-3/+1
| | | | | | | One feature that was mentioned turned out to be broken and got removed. Change-Id: I6e23e1cc16245372efe671580e8e8c894d8e5d07 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* vcs module: Make sure the git meta data directory is absoluteChristian Kandeler2018-03-124-4/+12
| | | | | | | | | | git rev-parse --git-dir prints a relative or an absolute path, depending on whether you call it from the repository base directory or not. Our code now accounts for that. Change-Id: Iac5eeb0fc55fe83d6c588efbcf97cab6786a4f89 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Ola Røer Thorsen <ola@silentwings.no>
* Fix license header in qbs_processlauncherKai Koehne2018-03-091-4/+15
| | | | | | | Use the same LGPL header as in the other files for tools. Change-Id: Iade8d4852685532cea70906c63c1ecfd5da8dbbe Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Fix exports from multiplexed productsChristian Kandeler2018-03-095-32/+117
| | | | | | | | | | While we did set up the dependencies between multiplexed products correctly, the *module* (i.e. Export item) that we pulled in was always the same one and corresponded to the wrong product variant in most cases. Change-Id: If42cf7e946689259c7433d81fd35d8798919eb15 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Remove unused SRCDIR defineKai Koehne2018-03-071-2/+0
| | | | | Change-Id: Ie7387d03a4106bbf40e717941ae0b53f8b554311 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Fix compilation with gcc 4.8Kai Koehne2018-03-071-1/+1
| | | | | Change-Id: Iacfc62b1c5933692f578e2bb365839b69c45f6b0 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Fix qtquickcompiler support for Qt >= 5.11Joerg Bornemann2018-03-062-14/+28
| | | | | | | The functionality of qtquickcompiler is now in qmlcachegen. Change-Id: I70c45f9db72895e2146cbf4bb7902b8db294626c Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Qt templates: Fix detection of QtQuick compilerChristian Kandeler2018-03-055-18/+28
| | | | | | | | | In Qt 5.11, the features/qtquickcompiler.prf file is always present, even if the QtQuick compiler is not. Task-number: QBS-1299 Change-Id: Ibc7f925f1b1753d870ddad939fd510637c3b7642 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Fix exit code for failed multi-config buildsChristian Kandeler2018-03-021-1/+1
| | | | | | | | | If one of the configurations failed and another one succeeded, then we would return with exit code zero if the successful configuration finished after the failed one. Change-Id: If46798d3d145eff45e9e22652fda8e16993794e6 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Fix race condition in MSVC detection codeChristian Kandeler2018-03-011-1/+6
| | | | | | | | Two or more threads could simultaneously call qputenv() when building for several configurations. Change-Id: Ia2edce48d5088018a0ebe650c93c3faabc9d91cd Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Qt modules: Do not disable the arch check for modules with no libraryChristian Kandeler2018-02-281-1/+1
| | | | | | | | | | Otherwise dependencies on private Qt modules will be ambiguous for e.g. Qt Android profiles with more than one architecture. The architecture property is always set, so this change does not erroneously turn conditions to false. Change-Id: I30de95493943c8d90a76f7b22b65d4d69a19c29b Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Fix Qt.core templateChristian Kandeler2018-02-281-1/+1
| | | | | | | This module does not have a "hasLibrary" property. Change-Id: I1840f1bb0564009176a31321aa11411449c97043 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Guard QScriptEngine's creation/destruction with a mutexJoerg Bornemann2018-02-2813-4/+78
| | | | | | | | | | | | | | | | | | When building multiple configurations in one go we create one QScriptEngine per configuration, each in its own thread, but nearly at the same time. It turns out that QScriptEngine's creation/destruction is not thread-safe, which leads to all kinds of interesting effects in the multiple configurations case. We fix this by guarding creation/destruction of QScriptEngine with a mutex. Task-number: QBS-1308 Change-Id: Ie01733d5943f1fb89e1d25344c4ffa998095e394 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Make the Id class thread-safeChristian Kandeler2018-02-282-22/+13
| | | | | | | | When copying it over from Qt Creator, we forgot to adapt it to a non- threadsafe environment. Change-Id: I83c3dd47627fe01a67042d71b897427f5a7adf2b Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Examples: explicitly set the target platform for the Apple onesJake Petroules2018-02-232-2/+4
| | | | | Change-Id: I8b31fc682a04f4d577eb2713f6e2af8519148800 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Add a location to errors in conditions of Properties itemsChristian Kandeler2018-02-234-13/+33
| | | | | | | These can be exceedingly difficult to debug otherwise. Change-Id: Ie3bc42fbd60e11be105fc23624c77a623dc5f1aa Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* NativeBinary: Do not evaluate qbs properties unnecessarilyChristian Kandeler2018-02-221-5/+13
| | | | | | | | | ... when setting the "aggregate" property. This property is evaluated internally very early in the product setup process, and thus its RHS should be as unintrusive as possible. Change-Id: Iba8313566aac37dcff028e8fb313c6dfe7a0b777 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* Make autotests mingw-friendlierChristian Kandeler2018-02-226-62/+33
| | | | | | | | | | Some autotests need to execute processes built earlier in the same test. With mingw, these need to find libgcc at runtime. Make sure it is available, either by using "qbs run" or by adding a dependency on the cpp module in the product that runs the application. Change-Id: I7f000c3d604a3412049a271b53b5fed4cc7fc54e Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* Darwin: Fix lipo rulesChristian Kandeler2018-02-223-4/+39
| | | | | | | | | | - We must activate these rules only on the product that is the actual aggregator. - The lipo command must only consider artifacts of the multiplexed variants of the same product. Change-Id: I25dc42cb53d84d85786b2d7ff96297b7fd58a90d Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* mingw: Use a lower response file thresholdChristian Kandeler2018-02-221-0/+8
| | | | | | | | | Both compiler and linker of this toolchain can considerably lengthen the command line when forwarding it to internal helper tools. Adapt the response file threshold accordingly. Change-Id: Iac071163375f276203a83d9ec503f4a3345f6b40 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* Only use fallback values for the -std= command line option when neededJake Petroules2018-02-214-17/+141
| | | | | | | | | | | | | | | Instead of always using the fallback value, we instead always use the standard value unless we know we're running an older toolchain which does not support it. This alleviates the potential for differing behavior in newer versions of compilers which may attempt to remain compatible with earlier drafts of corresponding standards. [ChangeLog] Always use standard values for -std= when possible Change-Id: I61ff3ecd863caa24cb8fb54500e62dc310a2af02 Reviewed-by: Jake Petroules <jake.petroules@qt.io> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* RunEnvironment: Add safety check for API mis-useChristian Kandeler2018-02-215-2/+49
| | | | | | | | | It makes no sense to try to run a disabled product. Task-number: QBS-1306 Change-Id: I07e36bc8f787d702ed9caa21972537e588db57e8 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* Make ItemDeclaration::properties return an actual objectChristian Kandeler2018-02-191-1/+1
| | | | | | | | | ... rather than a const ref. We often call this function on temporary values, in which case using the returned reference triggers undefined behavior. Change-Id: Iac9d6097c20438084640d9f8e425d2a59a9878ce Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Do not apply file tags filter to target artifacts of modulesChristian Kandeler2018-02-194-1/+13
| | | | | | | These do not conceptually belong to the product. Change-Id: Ic55cf246fe38ba7ad03563b5f67a8622810dad7d Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Pull in the latest Xcode build specs from Xcode 9.2Jake Petroules2018-02-191-3/+5
| | | | | Change-Id: Ie5283adaaa8c55fad57276651a6312f0cfb93dbc Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Pull in the latest dmgbuild patch releasesJake Petroules2018-02-194-43/+147
| | | | | Change-Id: I8b12ce1752a3a470257523255ada26650a33852d Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Android autotest: Get the jar file path from qbsChristian Kandeler2018-02-162-1/+4
| | | | | | | There is no guarantee that we find it in the environment. Change-Id: I58281b5936e0ddad51cbdbe0833f62c4dbb42c1d Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* Autotests: Fix function that figures out the object file extensionChristian Kandeler2018-02-161-3/+5
| | | | | | | It did not know about qbs.toolchainType. Change-Id: I00bcd5518f81a65fa49153b75f1fd2fb69d37fd3 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Fix race conditions in innosetup, wix and nsis modulesChristian Kandeler2018-02-1611-78/+17
| | | | | | | As first attempted in 7f6ec1cc27. Change-Id: Ib76dbdfc0a60b27d38d93a22c9556d54f07a3dac Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Check product and project names in command-line property overridesChristian Kandeler2018-02-156-10/+166
| | | | | | | | Users should get feedback if they mistyped a product name, for instance. Task-number: QBS-1288 Change-Id: Icb57490d896d21c5ff9ed3940b53d9b18fe00a30 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Doc: Add information about disabling precompiled headersLeena Miettinen2018-02-151-0/+16
| | | | | | | | | ...for a group of source files by setting the cpp.useCPrecompiledHeader property (or its variants) to false. Change-Id: Ie35039825a881c07d11e5c74c03959ac0be3c200 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Doc: Add a how-to for using precompiled headersLeena Miettinen2018-02-151-0/+26
| | | | | | Task-number: QBS-1184 Change-Id: Icb72672b36da8a4ccea7edc84bc3c71a4355f2d5 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Fix connection to rules of dependenciesChristian Kandeler2018-02-154-1/+89
| | | | | | | | | | | ... for the case that auxiliaryInputs or explicitlyDependsOn contains "installable". They must be considered in addition to inputsFromDependencies, because they also match target artifacts of dependencies. Change-Id: Ib960001a8e67034d6d1382bacc385bdcd9ddfb99 Reviewed-by: Jake Petroules <jake.petroules@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Fix ProjectData::isExecutable()Christian Kandeler2018-02-141-4/+3
| | | | | | | | | | When using bundles, the executable has the tag "bundle.application- executable". Task-number: QTCREATORBUG-19794 Change-Id: I5fd635e4105f1b290cf3d5e8f5a96523693e6128 Reviewed-by: Jake Petroules <jake.petroules@qt.io> Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* Doc: Increase copyright year to 2018Leena Miettinen2018-02-141-1/+1
| | | | | Change-Id: I0a3bf8f6312f0c47eb6eea47e3e8779e2f78504b Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Doc: Add docs for the DomXml JavaScript extensionLeena Miettinen2018-02-131-0/+342
| | | | | | Task-number: QBS-1281 Change-Id: I56f2fb8e75dd0eb8e1da7a8478dcacc53cbbda5a Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Qt.scxml: Add support for the --statemethods optionChristian Kandeler2018-02-124-0/+25
| | | | | | | | | | | | | Also add an undocumented property to add arbitrary options. This one acts as an emergency fallback in case we miss a new option in the future. Task-number: QBS-1295 Change-Id: I0ba81325d6975d8bb25cbd397c9daaaa12f685c2 Reviewed-by: Andy Shaw <andy.shaw@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> Reviewed-by: Andreas Bacher <andreas.bacher@meon-medical.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Remove defaultValue argument from Evaluator::boolValue()Christian Kandeler2018-02-124-10/+6
| | | | | | | | | | The few usages either made no difference or were plain wrong. In particular, it makes no sense to return a default value if the RHS of the property assignment evaluates to undefined, as "undefined" usually implies "false" for bool properties. Change-Id: I46d563712b2778ef82fa88f49a3229e451782a50 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Add documentation for FileInfo.{to,from}NativeSeparatorsChristian Kandeler2018-02-121-0/+14
| | | | | | | Task-number: QBS-1279 Change-Id: I9465777e9fa70394ed0ae6721f6fd368d2e49dfe Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
* Fix FileInfo.{to,from}NativeSeparators()Christian Kandeler2018-02-091-2/+2
| | | | | | | We mapped them to the wrong C++ backend functions. Change-Id: Idb0ed8a74fc8ec2f8489e77d33e76a329af0b276 Reviewed-by: Jake Petroules <jake.petroules@qt.io>