| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
| |
... related to wrong compilers base names for the Renesas RL78 and RX
architectures.
Change-Id: I7600a2a36559082c2b32d280796a86d7a5cae1fa
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
| |
Change-Id: Ifbf58bb93210808eeb35c9529765a9c464128f76
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
| |
This commit adds a basic support of the IAR Embedded Workbench
toolchain for the Renesas RX processors family:
* https://www.renesas.com/us/en/products/microcontrollers-microprocessors/rx.html
Change-Id: I68d43eed4d89a5921eb55b56fdd3380b59c56054
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
|
|
| |
This property can be useful when some parts of the project (e.g. helper
tools) should be compiled for the host platform/architecture
disregarding what targetPlatform/architecture the rest of the project is
being built for
Change-Id: I8c76ef65470130df59826603157083fd20809592
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
It was broken for e.g. mingw. Prevent future failures by simply
forwarding qbs.toolchainType from the profile.
Also forward the toolchain install path for non-MSVC profiles if it's
not in the PATH.
Change-Id: I73a799387af2e746ebdd634171129f9d201478db
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
| |
There is no need for a temporary settings dir: We have the special
"none" value for profiles.
Change-Id: I4a07053e81e94d999f3a6827c51b04d32725ffcb
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
This implements the Qt 5.15 type registration approach via
the qmltyperegistrar tool.
Fixes: QBS-1531
Change-Id: Id77572a521513dc1759b02a7f7299377c2bcaabb
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
| |
Change-Id: I21f0626a093db358f8f5dfa6248672c44edc82e2
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
Beginning with Qt 5.14 [0] the d suffix for MinGW builds is only added
to debug builds when configured with debug_and_release. Pure debug
builds now have the same library names as release builds.
[0] QTBUG-80792
Change-Id: I260ffb262a807569985413496897ce4c63135ea7
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
| |
We cannot use wildcards in this context, the example is misleading
Change-Id: I125128908652e196c3e33813275fe88597f56481
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
| |
Also known as "release-with-debug-info"
Change-Id: Ieed358810ea423ea7a9a1a52a36fa35cf165dfac
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
| |
Change-Id: I8ae6f90da242b47ecbae7f9aeb11cebdf227ca73
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
| |
Change-Id: I59a4655776d58ac1bb9ff19261cfdac94693e639
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
| |
Even when PathProbe.found is false
Change-Id: I52ee359d498076d017865c739a9ceb1d575aa2a1
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
| |
Change-Id: I4521ac3de8822a9b7fecb33f6aa27cb380f01ed9
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
From Qt 5.15 on, moc can generate metatype information in JSON format.
Task-number: QBS-1531
Change-Id: Ie6969f70bac51cc80f11057841ba8d4b7947c646
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
| |
Change-Id: I5efbb14d73f90665f8ff015075b681238d9c5244
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Dependency scanning can generate inverse dependencies. For instance, a
Qt C++ file "myobject.cpp" containing the Q_OBJECT macro will typically
include a file "myobject.moc", which is generated from the cpp file.
When scanning the inputs of "myobject.moc", the artifact will encounter
itself as a scan dependency. There is code that prevents a dependency
cycle in this case.
Let's now consider the case where such a rule has a second output
artifact: When scanning the inputs of that artifact, we will encounter
the first artifact as a scan dependency. This case was not handled,
leading to an infinite loop in rule execution. We fix this by rejecting
scan dependencies that have the same transformer as the artifact whose
inputs are being scanned.
Change-Id: I767ceaad387c2e315738070e01ef9322764afb65
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
| |
Otherwise, we potentially access undefined objects.
Fixes: QBS-1385
Change-Id: I98aa99b51c80e5f60ebb335917552529b340a8e8
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If scanning finds an artifact in more than one product, we so far
randomly used one of them. We now prefer artifacts from product
dependencies, because the other ones might get lost during change
tracking, as we don't keep an "is scan result of" type of information in
our RescuableArtifactData.
This should fix the linked bug in the vast majority of actual projects.
It's also conceptually the right thing to do, because the artifact in
the product dependency is much more likely to be the one that was
intended to be found.
Task-number: QBS-1532
Change-Id: Idd8662bb00570bc57f5861ce83517f0adb845b49
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
| |
Change-Id: Idaaed904006e421a015eefab6daf2b1b392b2ad4
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
|
|
|
|
|
| |
Change-Id: Ic48a8ddba1fd4d461a7ecc2e6d2c256323d9375c
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
| |
Change-Id: I2f45445bab160997ea2724a58b45189d624158d3
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The algorithm is more natural now:
- first, we try to find module files in the current searchPaths
- second, if nothing was found, we try to extend the search paths by
using Providers
- third, we try to load module Items from the found files
- finally, choose a candidate or give up if nothing was loaded
This allows to get rid of the recursive call which was needed to execute
the logic from step 3 with newly added search paths as step 3 was done
in the same loop as step 1
Change-Id: Ie6c244c5f649bcb1b96eb2c5edca503439f3f7a7
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
This allows to get rid of the matchingDirectoryFound variable to reduce
possible states in the function
Change-Id: I2a86ba7e4e9a35d5c15ae48756c84136c855bcfa
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
PropertyDeclaration() allocates Private class which can be easily
avoided by using iterator API
Change-Id: I8240fe845b8a4d8f3ad8f8372f5bca178982ab29
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Previously, if the last module candidate was not a module item, the
value of triedToLoadModule was set to 'false'. However, we could try to
load the one of the previous candidates which means that
triedToLoadModule should be set to 'true'
Change-Id: I03278d51804568ebbd4dee93313c16517fd774e9
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
| |
end() should be re-calculated after erase()
This amends e5f115d25
Change-Id: I6ce59cf8d475f561390ccab0ee41dbf67aeeafe5
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch introduces QBS_TEST_SOURCE_ROOT environment variable that can be used
to customize the source location of test data. Previously, the original testdata
location was compiled into the test binaries. Thus it was impossible to run the
test suites on a different host than the build host.
In order to improve test coverage, we want to build the test suites once (for
instance in a Docker environment) and then run them multiple times in different
environments which might have a different file layout. In that case, the
testdata location must be configurable.
Change-Id: I7673826e6ea6f2e3aa893e657351a84c49a1033e
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
| |
To reduce the complexity of this function and make it more readable
Also, avoid triple lookup in the m_moduleDirListCache map
Change-Id: Ia838148593b9781092314fce24844e4db3e257da
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
'qbs resolve qtcreator.qbs' results:
macOs: 0m31.510s -> 0m26.417s
Change-Id: Ibd69ba87f5515e99776e6af2f87587e711213b41
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
When building in the root directory (e.g. Q:/) make-release-archives.bat
failed to create archive with the error "share\qbs\xamples: no such file
or directory". This happened because artifactInstalledFilePath expected
no trailing / in installSourceBase. Luckily, FileInfo.joinPaths handles
leading / correctly: FileInfo.joinPaths("Q:/foo/", "/bar") results in
"Q:/foo/bar"
Change-Id: I895288e6bf4c56c2b2972931c3fa1d98e8419aa0
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
| |
Task-number: QBS-1532
Change-Id: I54480b044610fc5018938866700e6ba53ce05f15
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
| |
This is needed to run Qbs binaries created with
qbsbuildconfig.enableProjectFileUpdates:true.
Change-Id: I9a5f5065df46e90d54bd47d8559fc36cf58fa590
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
| |
Change-Id: I2f0d72abdf12a4e64b79bf9a3c02b32cf4cbeed6
Reviewed-by: Richard Weickelt <richard@weickelt.de>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
| |
Change-Id: I76b711aa16827e44eabea44113853ac3ee4e67e2
Reviewed-by: Richard Weickelt <richard@weickelt.de>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
This allows to build projects without calling "qbs setup-toolchains"
first by simply calling "qbs build qbs.toolchainType:clang-cl"
Change-Id: I86d135ddf2cb588f322709e4e7a265cb6fd7772f
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
| |
Change-Id: Ia26b49324377c00d9c897932f4df7624436ef96b
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
| |
Change-Id: I10aa20a8d621030b3d0bea1a465cdbdb9ba6193c
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Conan is a popular C/C++ package manager. Conan packages including their
configuration and dependencies are usually described as conanfile.txt/.py.
ConanfileProbe runs 'conan install -g json' and parses the resulting
conanbuildinfo.json. The resulting JS object tree contains relevant information
about the dependencies and can be used to set module properties in Product,
Profile or even Module items.
Change-Id: Ied6b917f061dac67fb2260eab099bcce4037750d
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
This allows to build projects without calling "qbs setup-toolchains"
first by simply calling "qbs build".
Change-Id: Iba4af8bf77d0ee5d209564ea371328d3c6cf2aa2
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Previously, clang.exe was used to dump macro as clang-cl does not
support the MSVC way. Also, architecture was not detected correctly
because of the wrong assumption that clang-cl respects arch variables
set by the vcvarsall.bat
Change-Id: Ic6464c2bd90f1a2fceb2f8aa884721872179ff49
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
xcode.qbs:
- Change the contents of xcode._actualSigningIdentity as expected by the actualSigningIdentity and
actualSigningIdentityDisplayName properties
- Use Utilities.signingIdentities() to get rid of warning ’Suspicious use of Process during property evaluation...’
- Throw error if specified identity was not found
BundleModule.qbs:
- Add ‘_CodeSignature/CodeResources’ to outputArtifacts with the tag ‘bundle.code-signature’ and ‘bundle.content’
- Remove local var ‘bundles’ which was always undefined
- Fix ‘ModUtils.moduleProperty("qbs", "pathSeparator")’ resulting in ‘TypeError: Result of expression 'obj.moduleProperty' [undefined] is not a function.’
Change-Id: I1a529efb6164906d21203ff3f3be6e570137e8ab
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
| |
The job fails quite often. Build it only on master instead.
Change-Id: Ice52cb0eff51870ef49e97d961549ad92e46df44
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
| |
Change-Id: I21691196660a6f5650f6328abe43ec2269a09dbc
Reviewed-by: Richard Weickelt <richard@weickelt.de>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
Otherwise, it's quite hard to understand why the test is skipped in CI
without looking into the code
Change-Id: I5e4450c22c6b0474dac291d488e8f49d0607e290
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
| |
Change-Id: I90865ba6908df1550c2646a57d348dcb82e244ab
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
| |
Some GCC tests were skipped on Mac because of the empty qbs.toolchain
value
Change-Id: I977eecad416ffd074f6e997c71da12c0a4ee8ace
Reviewed-by: Richard Weickelt <richard@weickelt.de>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
| |
Change-Id: Ie5ac3de1b6f1505ddf79a775dcfdedc9afaedae8
Reviewed-by: Richard Weickelt <richard@weickelt.de>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
This code is copy&paste but different variable names make it easy to
make a mistake doing changes
Change-Id: Iab5b923ac010e1aa1fb158ee1d66986f41a0fa2a
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|